我编写了一个子程序来记忆一天的时间,程序变量表如下
子程序如下:
SM0.4是分脉冲,L6.0定义为输入输出,是为了下面的上升沿有效。1440是分钟,也就是1天,LW2里存的是天数,当记忆的天数LW2大于设定的天数LW0时,会有一个L6.1的输出。后面的9999是为了计数不大于9999。
当我在主程序中调用时,如下图:
以上用到的VW都设置成了保持型数据。当程序下载到PLC中运行时,监控到只有第一个调用的VW96每分钟记一个数,下面的调用VW98和VW100一直是0没有变化,不计数。这是什么原因?
下面的子程序应该也是执行了,因为当我把设定的天数VW62、VW66和VW70都设置为0时,输出M21.0和M21.1、M21.2都是为1的。但为何下面的调用不计数呢?