本人在修改一个802D SL PLC程序,主要是采集AXIS_CTL子程序中的超程信号和已经回到零点的信号,然后输出到指示灯上。指示灯由Q0.4-Q1.5Q驱动,具体对应如下:
Q0.4 x轴回零指示
Q0.5 X+超程指示
Q0.6 X-超程指示
Q0.7 Y轴回零指示
Q1.0 Y+超程指示
Q1.1 Y-超程指示
1.2 Z轴回零指示
Q1.3 Z+超程指示
Q1.4 Z-超程指示
Q1.5 C轴回零指示
现在存在一个问题,在AXIS_CTL子程序中没有写进采集信号程序段的情况下,并且在没有任何超程和任何回零的情况下,指示灯Q0.5,Q0.6,Q1.2,Q1.3,Q1.5自动输出。检查硬件电路没有任何问题。PLC程序也检查了一遍,不存在双线圈输出的情况,折腾了两天也没有解决。现请大家帮忙解决一下!
又发现一个新问题,把AXIS_CTL子程序内容全部删掉,只调用AXIS_CTL子程序的空壳,还是会出现上述问题。这到底是怎么回事?我看资料说子程序的局部变量说64个字节,是不是超过64个字节就会出现这种问题吗?
问题解决了:
我把前天调试的一个程序写了进去,问题就解决了,但是不知道是啥原因,因为两个程序都是一样的。