一楼的说的对,没有什么指令能直接实现你的要求。如果电磁阀不带中位保持的,你可以这样做,用0口控制电磁阀,得点气缸伸出,断电气缸回退,伸出时间和二次伸出间隔时间用T1和T2控制,计数器取2。计数器清零用第一次上电、急停和再次启动。大体如下。
CNTR其实也是一样用的,它除了和CNT一样有一个增量计数输入端和复位端了,就多了一个减量计数输入端,所以要完成上面的程序,直接将上面的CNT替换为CNTR,然后增量计数端还是接P_1s,减量计数端接一个常闭比如P_off,然后复位端接T000,就好啦。欧姆龙PLC里的计数器默认为是减计数。比如C0,设定初值为#5,接通一次会变为#4,总计5次之后C0的数值为0,这时C0触点接通。你若想知道计数器的当前值的话,直接写这个计数器的地址就可以了;
若是想知道计数器被执行了多少次的话,需要做一个小小的处理,就是BCD码减法运算,用计数器的初值减该计数器,将结果储存在一个地址内,这个结果是BCD码。
比如C0设定初值为#5,写法如下
-B #5 C0 D0
D0就是CO执行的次数。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)