我写了一个脉冲产生的子程序,要求是,当按下按钮时,产生一个脉冲,如果长按这个按钮,要产生一个有间隔的连续脉冲。#IN_RESET:L4.0,变量类型是输入输出,复位启动继电器线圈,子程序的启动也是由该位启动的。#PH:脉冲高电平保持时间。#PL:脉冲低电平保持时间。#OUT_LAMP:L4.1,输出脉冲的标志位。
Network 1
LDN TEMP_P_1:V3040.0
= #OUT_LAMP:L4.1
TON T39, #PH:LW0
Network 2
LD T39
R #OUT_LAMP:L4.1, 1
S TEMP_P_1:V3040.0, 1
Network 3
LD TEMP_P_1:V3040.0
AN TEMP_P_2:V3040.1
TON T40, #PL:LW2
Network 4
LD T40
= TEMP_P_2:V3040.1
R TEMP_P_1:V3040.0, 1
R #IN_RESET:L4.0, 1
现在的问题是,脉冲产生的长短不是指定值,在线监控的时候,发现T39定时器跑动的时候会停顿,比如说,定时时间是10,它会从1跑到5,然后停在5,过一会儿又从5跑到10,而且每次停顿的时间不一样,当然不一定总是停在5的位置。有的时候又会正常跑下去,真的很奇怪,请各位大师帮忙解决。谢谢!