S7 200 SMART modbus 轮询的问题

1.如图1所示,对于轮询中的某个MBUS_MSG指令,我加个LD M1.0,是不是如果我M1.0没有通,那这个MBUS_MSG指令就无法完成,后面的M0.5就没法通,这样导致后面的MBUS_MSG指令无法触发,轮询就会中断?
2.如图2所示,如果我在某个MBUS_MSG指令(M0.3触发,DONEM0.4)后添加了一段比较指令,2种结果分别置位M0.5/M0.6,靠这个来跳转MBUS_MSG指令是否可行?

图片说明:

S7 200 SMART modbus 轮询的问题    S7 200 SMART modbus 轮询的问题   

最佳答案

1)使能端没有使能,那么,这个msg指令是无法调用的,后面那些done位的讨论就没有意义了。
轮询肯定会中断。
2)这个可以。有条件轮询也是一般modbus通讯的一种做法。

提问者对于答案的评价:
经过试验,只要保证一个时期内只有一个指令是有效的就可以,感谢各位

最佳答案作者回复:
是的,不然MSG报警6#。
串口通讯是半双工通讯,一条通讯链路上只能允许一条指令有效。

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年10月30日 下午11:53
下一篇 2020年10月30日 下午11:53

相关推荐