一、系統概述:
柳鋼某車間一期控制系統主控制器使用松下FPXH系列PLC、主驅動器使用松下A5系列伺服控制器,二期項目立項開工,控制系統主控制器使用三菱FX5U系列PLC,該三菱FX5U系列PLC本體集成1路以太網通信口、1路RS485串行通信口。現今要求二期控制系統主控制器三菱FX5U系列PLC通過通信方式定時讀取一期主驅動器松下A5系列伺服絕對式數據(單圈數據和多圈數據),經查松下A5系列伺服通信協議為非Modbus協議,故而三菱FX5U只能通過RS2指令無協議編程實現和松下A5系列伺服串口通信。
二、通信參數約定:
1、三菱FX5U系列PLC通信參數:協議格式為無順序通信、數據位設置為8位、校驗方式設置為偶校驗、停止位設置為1位、通信物理層為RS485、通信波特率為9600bps、數據處理模式為16位模式、幀頭無添加、幀尾無添加、和校驗不添加、無添加回車和換行符、超時時間設置為1000ms,詳細設置如下圖所示:
2、松下A5系列伺服通信參數:數據位設置為8位、校驗方式設置為偶校驗、停止位設置為1位、通信物理層為RS485、通信波特率為9600bps、軸編號設置為1。
三、松下A5系列伺服通信協議:
三菱FX5U系列PLC要讀取松下A5系列伺服絕對式數據要經過4次通信發送和接收才能完成,其松下A5系列伺服通信協議流程圖和數據格式如下兩圖所示:
其中通信命令詳解如下:
(1)三菱FX5U發送:81 05
(2)松下A5返回:81 04
(3)三菱FX5U發送:00 01 D2 2D(2D為LRC校驗碼)
(4)松下A5返回:06 或 15
(5)松下A5返回:80 05
(6)三菱FX5U發送:80 04
(7)松下A5返回:0B 01 D2 03 11 00 00 D8 FF 01 00 00 00 00 36(36是LRC校驗碼)
(8)三菱FX5U返回:06 或 15
其中數據格式詳解如下所示:
以0B 01 D2 03 11 00 00 D8 FF 01 00 00 00 00 36為例說明:
0B:起始符
01:axis軸編號
D2:2為mode命令執行模式、D為command控制命令
03:編碼器ID低8位
11:編碼器ID高8位
00:編碼器狀態低8位
00:編碼器狀態高8位
D8:單圈數據低8位
FF:單圈數據中8位
01:單圈數據高8位
00:多圈數據低8位
00:多圈數據高8位
00:固定為0
00:錯誤碼,無錯時為00
36:前14個字節的LRC校驗碼
四、三菱FX5U系列PLC通信編程詳解:
1、初始化程序命令段:上電初始化時置位M0、復位其他所有標志位和寄存器,M0置位后開始延時,延時時間到達時置位M1、復位M0,M1置位后開始執行和松下A5伺服串口通信程序段,程序梯形圖如下圖所示:
2、通信命令程序段1:RS2指令發送緩沖區首地址為D10、發送字節計數為2、接收緩沖區首地址為D20、接收字節計數為2,標志位M1置位后開始延時,延時時間到達后,給發送緩沖區依次填寫數據81、05,將開始發送標志位SM8561手動置位,發送完成后進入到等待接收程序命令段。如果接收超時則進入到繼續定時發送數據H0581程序段;如果接收完成,接收完成標志位SM8562自動置位,判斷接收到的數據是否為81 04,如果接收到的數據為81 04則進入到下一個通信命令程序段;如果接收到的數據非81 04則繼續定時發送數據81 05,梯形圖程序如下圖所示:
3、通信命令程序段2:RS2指令發送緩沖區首地址為D40、發送字節計數為4、接收緩沖區首地址為D50、接收字節計數為1,標志位M4置位后開始延時,延時時間到達后依次給發送緩沖區填寫數據00 01 D2 2D,將開始發送標志位SM8561手動置位,發送完成后進入到等待接收程序命令段。如果接收完成,接收完成標志位SM8562自動置位,判斷接收到的數據是否為06,如果接收到的數據為06則進入到下一個通信命令程序段;如果接收到的數據非H06則進入繼續定時發送數據81 05程序命令段,梯形圖程序如下圖所示:
4、通信命令程序段3:RS2指令發送緩沖區首地址為D70、發送字節計數為2、接收緩沖區首地址為D80、接收字節計數為2,標志位M7置位后則進入到等待接收程序命令段,如果接收超時則進入到繼續定時發送數據81 05程序段;如果接收到的數據為80 05則開始給松下A5伺服發送80 04,發送完成進入到下一個程序命令段;如果接收到的數據非80 05則進入到繼續定時發送數據81 05程序命令段,程序梯形圖如下圖所示:
5、松下A5伺服絕對式數據的處理與保存:D130、D131、D132等3個寄存器中保存的是松下A5伺服單圈數據和多圈數據的原始值,經過數據處理,D200和D201組成的32位寄存器中保存的是單圈數據、D202保存的是多圈數據,程序梯形圖如下圖所示:
五、松下A5系列伺服通信測試:
使用USB轉RS485電纜連接電腦和松下A5系列伺服,串口調試助手通信測試命令如下所示:
串口調試助手發送:81 05、松下A5伺服返回81 04
串口調試助手發送:00 01 D2 2D、松下A5伺服返回06
松下A5伺服發送:80 05、串口調試助手返回80 04
松下A5伺服發送:0B 01 D2 03 11 00 00 D8 FF 01 00 00 00 00 36、串口調試助手返回06
以上說明,松下A5伺服通信測試無誤。
六、三菱FX5U系列PLC通信測試:
使用USB轉RS485電纜連接電腦和三菱FX5U系列PLC,串口調試助手通信測試命令如下所示:
三菱FX5U發送:81 05、串口調試助手返回81 04
三菱FX5U:00 01 D2 2D、串口調試助手返回06
串口調試助手發送:80 05、三菱FX5U返回80 04
串口調試助手發送:0B 01 D2 03 11 00 00 D8 FF 01 00 00 00 00 36、三菱FX5U返回06
以上說明,三菱FX5U通信測試無誤。
七、系統聯調:
將三菱FX5U系列PLC和松下A5系列伺服連接起來,通信測試后,發現PLC可以定時讀取到伺服絕對式數據,并可將讀取到的絕對式數據保存至指定的寄存器中,通信已然成功。
責任編輯:haq
-
控制器
+關注
關注
112文章
16379瀏覽量
178281 -
plc
+關注
關注
5012文章
13307瀏覽量
463667 -
松下
+關注
關注
14文章
26549瀏覽量
93486 -
三菱
+關注
關注
32文章
803瀏覽量
42822
發布評論請先 登錄
相關推薦
評論