西门子plc s7-200smart modbus rtu 轮询
你这个程序仍然是程序逻辑原因引起的,MSG报警6#主要原因是同一时刻有2条以上的指令有效触发。
下面那个MSG指令的First管脚为什么u调用沿触发,该MSG指令的First管脚只允许沿触发。
轮询原则是上一条MSG指令的done位,复位本MSG指令的触发,并置位下一条MSG指令,指令完成done位,复位本指令的触发,置位下一条或第一条MSG指令,如此循环。
补充问题回复:
你可能逻辑没有理顺。
第一条的MSG完成位done,复位自己的触发条件,置位下一条MSG,这样一直到最后一条MSG完成位done,复位自己的触发条件后,置位第一条MSG。
你这么是第2条MSG指令的完成位置位第一条MSG指令?这样除非你只有2条MSG指令。
轮询就是一环扣一环的过程。
第二条读指令增加上升沿触发试一下。
从你报错代码6来看,就是同一时间同时激活多条通讯指令。使用Step7 软件时,西门子modbus rtu通讯要求轮询,同一时间只能激活一条指令。你网络5里面M4.2后面要加一个上升沿。还有不知道你程序里面是否有M4.3接通复位M4.2的程序。如果没有也要加上。modbus rtu通讯编程就是再同一时间只能有一条指令接通。
参考下面链接资料
Modbus RTU通信:
https://www.ad.siemens.com.cn/productportal/prods/s7-200-smart-portal/200smarttop/smartsms/020.html
通信例程及视频:
Modbus RTU常见问题:
第五段程序MSG功能块 first管脚要加一个上升沿,M4.3一直置1复位也没用。
补充:
把程序只留通讯这部分附上来帮你看看改改
你的M4.0确定只是出发了一次吗?或者你把复位M4.3放在最下面复位,自己复位自己。
主要原因是 网络5 的主站指令的管脚 FIRST 必须用上升沿,你没有使用沿引起的。
S7-200 SMART Modbus RTU通信常见问题
http://www.ad.siemens.com.cn/productportal/Prods/s7-200-smart-portal/200SmartTop/SmartSMS/020.html
补充:
网络6 保持原样,只在网络5 加上升沿