你這個(gè)程序仍然是程序邏輯原因引起的,MSG報(bào)警6#主要原因是同一時(shí)刻有2條以上的指令有效觸發(fā)。
下面那個(gè)MSG指令的First管腳為什么u調(diào)用沿觸發(fā),該MSG指令的First管腳只允許沿觸發(fā)。
輪詢原則是上一條MSG指令的done位,復(fù)位本MSG指令的觸發(fā),并置位下一條MSG指令,指令完成done位,復(fù)位本指令的觸發(fā),置位下一條或第一條MSG指令,如此循環(huán)。
補(bǔ)充問題回復(fù):
你可能邏輯沒有理順。
第一條的MSG完成位done,復(fù)位自己的觸發(fā)條件,置位下一條MSG,這樣一直到最后一條MSG完成位done,復(fù)位自己的觸發(fā)條件后,置位第一條MSG。
你這么是第2條MSG指令的完成位置位第一條MSG指令?這樣除非你只有2條MSG指令。
輪詢就是一環(huán)扣一環(huán)的過程。
第二條讀指令增加上升沿觸發(fā)試一下。
從你報(bào)錯(cuò)代碼6來看,就是同一時(shí)間同時(shí)激活多條通訊指令。西門子modbus rtu通訊要求輪詢,同一時(shí)間只能激活一條指令。你網(wǎng)絡(luò)5里面M4.2后面要加一個(gè)上升沿。還有不知道你程序里面是否有M4.3接通復(fù)位M4.2的程序。如果沒有也要加上。modbus rtu通訊編程就是再同一時(shí)間只能有一條指令接通。
參考下面鏈接資料
Modbus RTU通信:
https://www.ad.siemens.com.cn/productportal/prods/s7-200-smart-portal/200smarttop/smartsms/020.html
通信例程及視頻:
Modbus RTU常見問題:
第五段程序MSG功能塊 first管腳要加一個(gè)上升沿,M4.3一直置1復(fù)位也沒用。
你的M4.0確定只是出發(fā)了一次嗎?或者你把復(fù)位M4.3放在最下面復(fù)位,自己復(fù)位自己。
電話:13818569113 15721373211
郵箱:fushidianji@139.com
網(wǎng)址:http://www.jiansujiabc.com
地址:上海青浦區(qū)北青公路7171號(hào)111-112室