我想将200smart plc程序中子程序设置为可多次调用的,但是子程序中有沿指令及计数器,这个好像不支持封装多次调用,有什么办法解决,自己编程实现计数功能?求大神指点,最好有编程实例。
问题补充:
我需要的是如何通过其他方法实现这个倒计数器的功能,从而使整个子程序能够封装,而不是一些无关痛痒的话,还有一个说的自己做计数器是一个好的方向,倒计数器自己编程如何实现,回答中有一个网友说自己做了一个定时器,你那不是定时器,是时间累计计时。与本问题一点关系都没有!
图片说明:
钻石用户推荐最佳答案
我写一个计时器吧,计数器也是同理
你可以看一下
-----------------------------------------------
LD Always_On:SM0.0
LPS
A M0.0
A Clock_1s:SM0.5
+I 1, 秒:VW0
LRD
AW>= 秒:VW0, 60
+I 1, 分:VW2
MOVW 0, 秒:VW0
LRD
AW>= 分:VW2, 60
+I 1, 时:VW4
MOVW 0, 分:VW2
LPP
AN M0.0
MOVW 0, 秒:VW0
MOVW 0, 分:VW2
MOVW 0, 时:VW4
----------------------------------
使用方法,把上面语句复制到软件,视图,转换成LAD即可
提问者对于答案的评价:
最佳答案作者回复:
看到了题主的问题补充:
1.首先感觉其他答主并非无关痛痒;
2.我写了一个时间累计计时功能,原理不是一样的吗?你把SM0.5更换成你需要的脉冲信号,把需要设计的计数总数量,设计成IN类型,计数到达之后把M0.0换成清零功能,道理不是一样吗?
3.由于时间关系我没有写计数器的程序,题主可以灵活运用以下
4.这一条别的答主说过了,上升沿子程序用不了可以用在外部啊
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc345873.html