S7-200 高速计数器复位中断

我用的是西门子S7-200PLC,高速计数器0测的是增量型编码器的脉冲数,高速计数器0工作在模式10,我想用高速计数器的外部复位中断,这个中断我不想编码器每转一圈都去捕捉编码器的Z轴通过复位中断使高速计数器复位,而是想让编码器转过几圈后,才去捕捉编码器的Z轴,对高速计数器进行复位,请问哪位高手知道该怎么编程?谢谢了!
 

专家建议

mabh581您好,

 HSC0外部复位信号为高电平时, 会触发CPU200的28号中断,而并非直接清零HSC0的当前值。

 您如果要使用此中断,首先需要在初始化程序中做全局开中断和为28号中断事件分配中断程序,您

 需要使用到的指令是ENI和ATCH。(详细请参考《S7-200PLC系统手册》第六章指令集,中断指令部分)

 假设您使用ATCH为28号中断分配中断服务程序INIT_0,您需要在程序INIT_0编写程序才能完成清零功能。您需要向SMD38赋值0,向SMB37赋值16#C0, 并再次执行HSC指令。这些特殊寄存器的含义,您可以查看《S7-200PLC系统手册》附录部分。这三条指令每执行一次,即对HSC0当前值清零一次。

 关于实现多圈清零,您可以在INIT_0中使用计数器,INIT_0每次执行,计数器加一一次。当计数器等于某个数值时,才执行一次上一段文字描述的清零程序。

 《S7-200 系统手册》中文版(2007 年 09 月) 下载地址:
 http://support.automation.siemens.com/CN/view/zh/1109582

提问者对于答案的评价:

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc352381.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日
下一篇 2021年7月5日

相关推荐

发表回复

登录后才能评论