请教高手!S7200 M寄存器操作问题

为什么两段挨着的程序对同一个M寄存器(M13.0)进行操作时,其中一段程序中M13.0的值不变了而另一段的正常了?

问题补充:
那是不是必须在两段程序中使用不同的2个M寄存器了/

最佳答案

1、没有给出具体的程序,能够猜测到是双线圈输出的问题。
程序A对M13.0进行输出操作,程序B也对M13.0进行输出操作,这就是双线圈输出。如果程序A在前,程序B在后,则程序B对M13.0进行输出操作有效。实际上程序A对M13.0进行输出操作但被在其后的程序B对M13.0进行输出的·操作改变了。
2、一般编程要避免双线圈的输出,方法是对同一点的输出的各种逻辑都罗列齐全后再输出。例如:
A   I0.0
A   I1.1
A(
O   I 2.1
O   I2.3
)
=M13.0

提问者对于答案的评价:
谢谢!问题解决了!

专家置评

已阅,最佳答案正确。

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc210737.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年11月12日
下一篇 2017年11月12日

相关推荐