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