在西门子s7-200 Micro 'n Power里,Modbus RTU主站这节有一个Modbus RTU 主站变址方式轮询访问应用例程,例程网络1里面有一条复位指令(复位了M4.0开始8个位),但是我没看明白为什么要使用这条复位指令,好像并不需要这样做呀?
问题补充:
为什么只复位MB4而不复位MB3、MB5呢
最佳答案
这个目的是当cpu意外停电或者断电后,重新启动时,让之前停留在任意位置通讯指令上的标志位重新开始,不然,有可能在重新上电后使通讯进入死循环,尤其是设置了断电保持型数据后。
这个方式如同我在做顺控指令时,也是用同样的方法,先初始化,再使用,这样的编程可靠性高于其它。
补充问题回复:
原因是MB4是状态字节,而MB3/MB5是故障状态值,故障状态值复位没有实际意义,如果故障存在复位将无意义,而状态位无论是通讯在什么状态复位均有效。
提问者对于答案的评价:
还是有点疑惑,你说的MB4是状态字节,而MB3/MB5是故障状态值,这个是怎么区分的?MB4是谁的状态?这3个字节不是MSG指令的故障代码吗?可以再详细说明下吗,谢谢!
最佳答案作者回复:
状态字节包含done应用的标志位,而故障状态值,是实际反映通讯指令的状态,如果有故障是无法通过复位这些字节解决的。
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc370383.html