FX3系列三菱PLC的MODBUS通信編程注意事項
MODBUS通信網(wǎng)絡(luò )如果是RS-485通信,則可使用1臺主站控制32站從站,如果是RS-232C通信,則可使用1臺主站控制1站從站。
這里所講的“FX3系列三菱PLC”指的是FX3S、FX3G、FX3GC、FX3U、FX3UC,以下說(shuō)明MODBUS通信編程的注意事項。
1、MODBUS通信參數設定標志位(M8411)
通過(guò)通道1或通道2進(jìn)行MODBUS通信設定時(shí),請務(wù)必使用特殊輔助繼電器(M8411)。
2、使用ADPRW指令時(shí)
1) 在MODBUS主站中使用ADPRW指令時(shí),請將驅動(dòng)接點(diǎn)保持ON狀態(tài)直到ADPRW指令結束(M8029為ON)。
2) 在MODBUS主站中同時(shí)驅動(dòng)多個(gè)ADPRW指令時(shí),一次只執行1個(gè)指令。當前指令結束后,執行下一個(gè)ADPRW指令。
3) 在STL指令中編寫(xiě)ADPRW指令時(shí)
和其他站的通信結束前,請勿將狀態(tài)斷開(kāi)。通信過(guò)程中將狀態(tài)斷開(kāi)后,ADPRW指令會(huì )成為途中停止狀態(tài),不會(huì )轉移到其他的ADPRW指令。請按照下面的注意事項對順控進(jìn)行編程。
. 在狀態(tài)的轉移條件中,請加上M8029(指令執行結束標志位)的ON條件進(jìn)行互鎖,以確保在和其他站進(jìn)行通信的過(guò)程中,狀態(tài)不發(fā)生轉移。
此外,在通信過(guò)程中狀態(tài)斷開(kāi)的情況下,狀態(tài)再次為ON后,可以完成剩余的通信。
. 請在MODBUS通信過(guò)程中(M8401/M8421)的OFF條件成立的狀態(tài)下,使用ZRST(FNC 40)指令等執行狀態(tài)的成批復位。
4) 在程序流程中使用ADPRW指令時(shí)
ADPRW指令不能在以下的程序流程中使用。
. CJ-P指令之間 條件跳轉
. FOR-NEXT指令之間 循環(huán)
. P-SRET指令之間 子程序
. I-IRET指令之間 中斷子程序
5) 關(guān)于RUN中寫(xiě)入的注意事項
. 允許寫(xiě)入的場(chǎng)合
可編程控制器處于STOP狀態(tài)時(shí),允許RUN中寫(xiě)入的操作。
. 不允許寫(xiě)入的場(chǎng)合
ADPRW指令不支持RUN中寫(xiě)入。
在通信過(guò)程中執行RUN中寫(xiě)入時(shí),或是用RUN中寫(xiě)入方式刪除了指令時(shí),此后的通信有可能會(huì )停止。
3、線(xiàn)圈讀出
MODBUS主站中使用線(xiàn)圈讀出功能(功能代碼:0x01),在讀出對象軟元件中指定字軟元件(例:D或R)時(shí),僅通過(guò)ADPRW指令的訪(fǎng)問(wèn)點(diǎn)數指定的位會(huì )被改寫(xiě)。字軟元件的剩余位不會(huì )變化。
4、FX系列可編程控制器為從站時(shí)
請將主站側的播放延遲設定成與FX系列從站的掃描時(shí)間相同或比該掃描時(shí)間長(cháng)。
5、使用ASCII模式時(shí)(僅FX3U/FX3UC可編程控制器)
. FX可編程控制器為主站時(shí)
FX可編程控制器為主站時(shí),在可編程控制器側發(fā)送指令后,請將對象設備側回復響應前的時(shí)間空出至少100μs。
. FX可編程控制器為從站時(shí)
FX可編程控制器為從站的情況下,從對象設備側向可編程控制器側發(fā)送指令時(shí),請在可編程控制器響應超過(guò)100μs后,再發(fā)送下一個(gè)指令