用S7-200 PLC和编码器测量液压推杆的速度,采用定时中断0(100ms中断)检测编码器的当前值、前一值,为什么检测到的当前值与前一值总是相等?如何实现在100ms内检测到不同的当前值与前一值?请各位老师提供在一定的时间内检测到不同的当前值与前一值的程序,以供参考,急急!!,
问题补充:
测速程序如下:请各位老师指出看有哪些问题
主程序
网络1
LD SM0.1
MOVB 100, SMB34
ATCH INT_0:INT0, 10
ENI
网络2
LD SM0.1
MOVB 200, SMB35
ATCH INT_2:INT2, 11
ENI
中断程序0
LD SM0.0
MOVD VD1000, VD1100
//VD1100为前一值
中断程序1
LD SM0.0
MOVD VD1000, VD1200
MOVD VD1200, VD1300
-D VD1100, VD1300
//VD1200为当前值
//VD1300(当前值-前一值)
最佳答案
见图。
图片说明:
提问者对于答案的评价:
谢谢老师!另请教老师:有什么区别,不理解,为什么要这样做?
最佳答案作者回复:
VD1000是当前值,你把VD1000相当于同时传送给被减数和减数,结果肯定为零。应该是先做减法运算,再把当前值传送给前值。
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc196034.html