1. 程式人生 > 其它 >三菱PLC MC協議的配置和使用簡析

三菱PLC MC協議的配置和使用簡析

1.三菱MC協議的目的
MC協議的目的是開放PLC內部暫存器給外部裝置,實現外部裝置和PLC的資料互動。簡單說就是允許外部裝置通過MC協議來讀/寫PLC裡面的暫存器

2. 通訊協議方式
通訊方式有485和TCP/IP兩種,本次只介紹TCP/IP下的配置和通訊方法,其實兩者一樣沒啥大區別。
採用一發一收模式,外部裝置主動發起通訊,傳送特定網路幀給PLC;PLC在接收後返回一幀,如果接收的幀格式錯誤,則返回幀中會提示錯誤型別,如果接收幀格式正確,則返回寫入成功幀或返回對應資料幀。

3. 通訊格式和內容
MC協議的通訊格式有很多種:3E、3C、4C、4E幀格式
先從3E幀開始分析然後說一下和其他三種的差別,具體可以參見《MELSEC通訊協議參考手冊》


通訊內容分為二進位制和ASCII文字,兩者傳輸內容一致,只是形式不同,因為二進位制相對於ASCII碼形式一幀的資料長度更短,且資料不需要轉換,所以通訊效率更高,推薦使用二進位制方式。
故本次介紹通訊格式:3E幀,二進位制。
傳送幀格式,頭部由TCP/IP協議自動新增 注意:兩個位元組的部分低位位元組在前高位位元組在後。

 響應幀格式

4. 在PLC中的設定
PLC中只需要簡單設定引數即可並不需要額外程式設計,步驟如下:1.在右側工程欄中雙擊PLC引數;2.在彈框中選擇內建乙太網埠設定,設定IP,設定通訊資料程式碼設定,勾選允許RUN中寫入;3.點選開啟設定,在彈框第一欄中選擇TCP協議,MC協議,埠號根據自己需求設定比如4999,然後設定結束,設定結束,把新的配置燒寫到PLC中即可。


如果PLC沒有自帶網絡卡模組則需要在網路引數中選擇對應裝置進行設定,設定過程類似

 

 

5. 舉例說明:指令為向軟元件D7000寫入值H000C
傳送幀內容為:50 00 00 FF FF 03 00 0E 00 10 00 01 14 00 00 58 1B 00 A8 01 00 0C 00
響應幀內容為:D0 00 00 FF FF 03 00 02 00 00 00
傳送幀內容解析:

 響應幀內容解析:

6. 舉例說明:讀取軟元件D7000開始的連續5個軟元件的值,其中0C是上一次寫入的數
傳送幀內容為:50 00 00 FF FF 03 00 0C 00 10 00 01 04 00 00 58 1B 00 A8 05 00
響應幀內容為:D0 00 00 FF FF 03 00 0C 00 00 00 0C 00 00 00 00 00 00 00 00 00

7. 軟元件型別對應軟元件程式碼
下圖是基本型QCPU中軟元件名稱和軟元件程式碼的對應關係,分為ASCII和二進位制兩種情況,其他型別可以查詢《MELSEC 通訊協議參考手冊》


8. 指令及子指令列表

9. 返回錯誤幀時的處理方法

在傳送格式不正確時,PLC會返回包含錯誤資訊的返回幀。其錯誤資訊需要在對應PLC手冊中查詢,比如三菱LCPU系列中對錯誤的描述如下圖,可對應檢視錯誤型別,以便解決問題。