电竞比分网-中国电竞赛事及体育赛事平台

分享

?三菱FX5U和西門子200 Smart實(shí)現(xiàn)Modbus TCP以太網(wǎng)通信

 睿心_悟?qū)W志 2023-03-19 發(fā)布于湖南

一、必備軟件和硬件:

1、三菱GX Works3編程軟件

2、西門子STEP 7-MicroWIN SMART編程軟件

3、Modbus Poll調(diào)試軟件

4、Modbus Slave調(diào)試軟件

5、以太網(wǎng)調(diào)試助手

6、三菱FX5U系列PLC

7、西門子200 Smart系列PLC

8、無線路由器

9、網(wǎng)線

二、通信實(shí)現(xiàn)目的:

1、三菱FX5U讀取西門子200 Smart數(shù)字量輸入I0.0~I0.7并映射到自己的數(shù)字量輸出Y0~Y7上,使用Modbus之02功能碼實(shí)現(xiàn);

2、三菱FX5U使用自己的數(shù)字量輸入X0~X7控制西門子200 Smart數(shù)字量輸出Q0.0~Q0.7,使用Modbus之15功能碼實(shí)現(xiàn);

3、三菱FX5U讀取西門子200 Smart保持寄存器VW0~VW6并保存到自己的保持寄存器D0~D3里,使用Modbus之03功能碼實(shí)現(xiàn);

4、三菱FX5U使用自己的保持寄存器D4~D7控制西門子200 Smart保持寄存器VW8~VW14,使用Modbus之16功能碼實(shí)現(xiàn)。

三、通信連接說明:

1、三菱FX5U本體自帶以太網(wǎng)口通過網(wǎng)線連接至無線路由器LAN接口;

2、西門子200 Smart本體自帶以太網(wǎng)口通過網(wǎng)線連接至無線路由器LAN接口。

四、Modbus TCP服務(wù)器通信參數(shù):

1、Modbus TCP服務(wù)器:西門子200 Smart

2、Modbus TCP服務(wù)器IP地址:192.168.1.150

3、Modbus TPC服務(wù)器子網(wǎng)掩碼:255.255.255.0

4、Modbus TCP服務(wù)器默認(rèn)網(wǎng)關(guān):192.168.1.1

5、Modbus TCP服務(wù)器端口號:502

五、Modbus TCP客戶端通信參數(shù):

1、Modbus TCP客戶端:三菱FX5U

2、Modbus TCP客戶端IP地址:192.168.1.140

3、Modbus TPC客戶端子網(wǎng)掩碼:255.255.255.0

4、Modbus TCP客戶端默認(rèn)網(wǎng)關(guān):192.168.1.1

5、Modbus TCP客戶端端口號:502

六、西門子200 Smart通信參數(shù)設(shè)置:

1、西門子200 Smart通信參數(shù)設(shè)置如下所示:

圖片

2、西門子200 Smart設(shè)備編號和Modbus寄存器編號、地址對應(yīng)表如下所示:

圖片

七、西門子200 Smart實(shí)現(xiàn)Modbus TCP服務(wù)器相關(guān)指令:

1、MBS_Connect指令:

圖片

MBS_Connect指令各個(gè)參數(shù)定義如下所示:

(1)、EN使能:必須保證每一掃描周期都被使能;

(2)、Connect:啟動(dòng)TCP 連接建立操作;

(3)、Disconnect: 斷開TCP連接操作;

(4)、ConnID: TCP 連接標(biāo)識;

(5)、IPaddr1~IPaddr4: Modbus TCP 客戶端的IP地址,IPaddr1 是 IP 地址的最高有效字節(jié),IPaddr4 是 IP 地址的最低有效字節(jié)。如果不指定客戶端IP地址,則可以設(shè)置為0.0.0.0;

(6)、LocPort: 本地設(shè)備上端口號;

(7)、MaxHold: 用于設(shè)置 Modbus 地址 4xxxx 或 4yyyyy 可訪問的 V 存儲器中的字保持寄存器數(shù);

(8)、HoldStart: 間接地址指針,指向CPU 中 V 存儲器中保持寄存器的起始地址;

(9)、ConnectDone:Modbus TCP連接已經(jīng)成功建立;

(10)、Busy: 連接操作正在進(jìn)行時(shí);

(11)、Error: 建立或斷開連接時(shí),發(fā)生錯(cuò)誤;

(12)、Status:如果指令置位“Error”輸出,Status輸出會(huì)顯示錯(cuò)誤代碼。

2、MBS_Slave指令:

MBS_Slave指令各個(gè)參數(shù)定義如下所示:

圖片

(1)、EN使能:必須保證每一掃描周期都被使能;

(2)、Done:當(dāng) MB_Server指令響應(yīng)Modbus請求時(shí),Done 完成位在當(dāng)前掃描周期被設(shè)置為 1;如果未處理任何請求,Done完成位為0;

(3)、Error:錯(cuò)誤代碼,只有在 Done 位為1時(shí)錯(cuò)誤代碼有效。

八、西門子200 Smart實(shí)現(xiàn)Modbus TCP服務(wù)器編程:

調(diào)用MB_Server0指令庫編制的程序如下所示:

圖片
圖片
圖片
圖片
圖片
圖片

九、以太網(wǎng)調(diào)試助手和西門子200 Smart通信連接:

1、下載程序,并打開程序狀態(tài)監(jiān)控、圖標(biāo)狀態(tài)監(jiān)控,如下所示:

圖片
圖片

表明暫未有Modbus TCP客戶端去連接。

2、使用以太網(wǎng)調(diào)試助手連接西門子200 Smart:

打開以太網(wǎng)調(diào)試助手,如下所示:

圖片

協(xié)議類型選擇“TCP Client”、服務(wù)器IP地址設(shè)置為192.168.1.150、服務(wù)器端口號設(shè)置為502,點(diǎn)擊連接,如下所示:

圖片

表明此時(shí)以太網(wǎng)調(diào)試助手已經(jīng)成功連接到西門子200 Smart。此時(shí)再去監(jiān)控西門子200 Smart程序,如下所示:

圖片
圖片

表明已經(jīng)成功連接。

十、使用以太網(wǎng)調(diào)試助手測試西門子200 Smart之Modbus TCP服務(wù)器程序:

1、Modbus之01功能碼測試,讀取西門子200 Smart之Q0.0~Q0.7狀態(tài):

以太網(wǎng)調(diào)試助手發(fā)送:12 34 00 00 00 06 01 01 00 00 00 08

西門子200 Smart返回:12 34 00 00 00 04 01 01 01 00

返回?cái)?shù)據(jù)為00,表明此時(shí)Q0.0~Q0.7狀態(tài)全為0

以太網(wǎng)調(diào)試收發(fā)數(shù)據(jù)、西門子200 Smart圖表監(jiān)控如下所示,Modbus之01功能碼測試完成:

圖片
圖片

2、Modbus之02功能碼測試,讀取西門子200 Smart之I0.0~I0.7狀態(tài):

以太網(wǎng)調(diào)試助手發(fā)送:22 55 00 00 00 06 01 02 00 00 00 08

西門子200 Smart返回:22 55 00 00 00 04 01 02 01 00

返回?cái)?shù)據(jù)為00,表明此時(shí)I0.0~I0.7狀態(tài)全為0

以太網(wǎng)調(diào)試收發(fā)數(shù)據(jù)、西門子200 Smart圖表監(jiān)控如下所示,Modbus之02功能碼測試完成:

圖片
圖片

3、Modbus之03功能碼測試,讀取西門子200 Smart之VW0~VW6狀態(tài):

以太網(wǎng)調(diào)試助手發(fā)送:33 88 00 00 00 06 01 03 00 00 00 04

西門子200 Smart返回:33 88 00 00 00 0B 01 03 08 00 3C 00 3D 00 3E 00 3F

返回?cái)?shù)據(jù)為依次為00 3A 00 3B 00 3C 00 3D,表明VW0、VW2、VW4、VW6的值依次為16進(jìn)制003C、003D、003E、003F

以太網(wǎng)調(diào)試收發(fā)數(shù)據(jù)、西門子200 Smart圖表監(jiān)控如下所示,Modbus之03功能碼測試完成:

圖片
圖片

4、Modbus之04功能碼測試,讀取西門子200 Smart之AIW0狀態(tài):

以太網(wǎng)調(diào)試助手發(fā)送:44 22 00 00 00 06 01 04 00 00 00 01

西門子200 Smart返回:44 22 00 00 00 05 01 04 02 00 00

返回?cái)?shù)據(jù)為依次為00 00,表明AIW0為16進(jìn)制0000

以太網(wǎng)調(diào)試收發(fā)數(shù)據(jù)、西門子200 Smart圖表監(jiān)控如下所示,Modbus之04功能碼測試完成:

圖片
圖片

5、Modbus之05功能碼測試,將西門子200 Smart之Q0.0置位

以太網(wǎng)調(diào)試助手發(fā)送:87 65 00 00 00 06 01 05 00 00 FF 00

西門子200 Smart返回:87 65 00 00 00 06 01 05 00 00 FF 00

西門子200 Smart原樣返回,Q0.0置位成功

以太網(wǎng)調(diào)試收發(fā)數(shù)據(jù)、西門子200 Smart圖表監(jiān)控如下所示,Modbus之05功能碼測試完成:

圖片
圖片

6、Modbus之06功能碼測試,將西門子200 Smart之VW8數(shù)據(jù)設(shè)置為8

以太網(wǎng)調(diào)試助手發(fā)送:66 23 00 00 00 06 01 06 00 04 00 08

西門子200 Smart返回:66 23 00 00 00 06 01 06 00 04 00 08

西門子200 Smart原樣返回,VW8數(shù)據(jù)設(shè)置成功

以太網(wǎng)調(diào)試收發(fā)數(shù)據(jù)、西門子200 Smart圖表監(jiān)控如下所示,Modbus之06功能碼測試完成:

圖片
圖片

7、Modbus之15功能碼測試,將西門子200 Smart之Q0.0~Q0.7全部置位

以太網(wǎng)調(diào)試助手發(fā)送:11 11 00 00 00 08 01 0F 00 00 00 08 01 FF

西門子200 Smart返回:11 11 00 00 00 06 01 0F 00 00 00 08

西門子200 Smart返回?cái)?shù)據(jù)表明Q0.0~Q0.7置位操作設(shè)置成功

以太網(wǎng)調(diào)試收發(fā)數(shù)據(jù)、西門子200 Smart圖表監(jiān)控如下所示,Modbus之15功能碼測試完成:

圖片
圖片

8、Modbus之16功能碼測試,將西門子200 Smart之VW8~VW14依次設(shè)置為1、2、3、4

以太網(wǎng)調(diào)試助手發(fā)送:EE EE 00 00 00 0F 01 10 00 04 00 04 08 00 01 00 02 00 03 00 04

西門子200 Smart返回:EE EE 00 00 00 06 01 10 00 04 00 04

西門子200 Smart返回?cái)?shù)據(jù)表明VW8~VW14數(shù)據(jù)設(shè)置成功

以太網(wǎng)調(diào)試收發(fā)數(shù)據(jù)、西門子200 Smart圖表監(jiān)控如下所示,Modbus之16功能碼測試完成:

圖片
圖片

9、測試總結(jié):

以上Modbus共計(jì)8個(gè)功能碼測試通過,亦表明西門子200 Smart之Modbus TCP服務(wù)器程序正確無誤。此時(shí)可以斷開以太網(wǎng)調(diào)試助手和西門子200 Smart的通信連接。

十一、三菱FX5U通信參數(shù)設(shè)置:

1、以太網(wǎng)端口自接點(diǎn)設(shè)置,需要設(shè)置IP地址、子網(wǎng)掩碼、默認(rèn)網(wǎng)關(guān)、通信數(shù)據(jù)代碼等諸多選型,如下所示:

圖片

2、對象設(shè)備連接配置設(shè)置,拖入一個(gè)Active連接設(shè)備,通信手段選擇“通信協(xié)議”、可編程控制的IP地址設(shè)置為192.168.1.140、可編程控制器端口號設(shè)置為502;傳感器設(shè)備IP地址暫時(shí)設(shè)置為192.168.1.106(此為電腦IP地址,方便測試時(shí)使用以太網(wǎng)調(diào)試助手測試三菱FX5U程序,待測試OK后再修改為西門子200 Smart的IP地址)、傳感器設(shè)備端口號設(shè)置為502,如下所示:

圖片

3、三菱FX5U以太網(wǎng)端口通信協(xié)議支持功能數(shù)據(jù)包建立:

協(xié)議號1,功能碼為02,用來讀取Modbus TCP服務(wù)器多路輸入

協(xié)議號2,功能碼為15,用來寫入Modbus TCP服務(wù)器多路線圈

協(xié)議號3,功能碼為03,用來讀取Modbus TCP服務(wù)器多路保持寄存器

協(xié)議號4,功能碼為16,用來寫入Modbus TCP服務(wù)器多路保持寄存器

圖片

(1)、協(xié)議號1詳細(xì)設(shè)置如下所示:

發(fā)送,占用寄存器D1000~D1003,如下所示:

圖片

正確返回,占用寄存器D1007~D1010,如下所示:

圖片

錯(cuò)誤返回,占用寄存器D1004~D1006,如下所示:

圖片

(2)、協(xié)議號2詳細(xì)設(shè)置如下所示:

發(fā)送,占用寄存器D1107~D1112,如下所示:

圖片

正確返回,占用寄存器D1100~D1103,如下所示:

圖片

錯(cuò)誤返回,占用寄存器D1104~D1106,如下所示:

圖片

(3)、協(xié)議號3詳細(xì)設(shè)置如下所示:

發(fā)送,占用寄存器D1200~D1203,如下所示:

圖片

正確返回,占用寄存器D1207~D1213,如下所示:

圖片

錯(cuò)誤返回,占用寄存器D1204~D1206,如下所示:

圖片

(4)、協(xié)議號4詳細(xì)設(shè)置如下所示:

發(fā)送,占用寄存器D1307~D1315,如下所示:

圖片

正確返回,占用寄存器D1300~D1303,如下所示:

圖片

錯(cuò)誤返回,占用寄存器D1304~D1306,如下所示:

圖片

十二、三菱FX5U實(shí)現(xiàn)Modbus TCP客戶端相關(guān)指令:

1、SP.SOCOPEN指令:

指令格式如下所示

圖片

指令參數(shù)說明如下所示

圖片

其中操作數(shù)S2含義如下所示

圖片
圖片

編程舉例如下所示:

圖片

2、SP.SOCCLOSE指令:

指令格式如下所示:

圖片

指令參數(shù)說明如下所示

圖片

其中操作數(shù)S2的含義如下所示

圖片

編程舉例如下所示:

圖片

3、SP.ECPRTCL指令:

指令格式如下所示

圖片

指令參數(shù)說明如下所示

圖片

其中操作數(shù)S3的含義如下所示

圖片
圖片
圖片

十三、三菱FX5U實(shí)現(xiàn)Modbus TCP客戶端編程:

1、初始化部分程序,D0~D3初始化清零、D4~D7初始化分別賦值0~3、每1分鐘給D4~D7做加1操作、當(dāng)D4~D7分別大于6000時(shí)清零,如下所示:

圖片
圖片

2、和Modbus TCP服務(wù)器建立連接部分程序,當(dāng)Modbus TCP服務(wù)器準(zhǔn)備就緒時(shí),置位M100即可和Modbus TCP服務(wù)器建立連接,程序隨即置位M0,即可開始執(zhí)行SP.ECPRTCL指令,如下所示:

圖片

3、和Modbus TCP服務(wù)器斷開連接部分程序,當(dāng)Modbus TCP服務(wù)器斷開連接或者置位M104時(shí),即可執(zhí)行斷開和Modbus TCP服務(wù)器連接的操作,程序隨即復(fù)位M0~M3,終止執(zhí)行SP.ECPRTCL指令,如下所示:

圖片

4、讀取Modbus TPC服務(wù)器8路輸入部分程序,功能碼02,對應(yīng)協(xié)議號1,M0置位后開始執(zhí)行該段程序,讀取的Modbus TCP服務(wù)器8路輸入映射到三菱FX5U的8路數(shù)字量輸出Y0~Y7里,該段程序中的SP.ECPRTCL指令執(zhí)行完成之后復(fù)位M0、置位M1,緊接著去執(zhí)行下一個(gè)SP.ECPRTCL指令,如下所示:

圖片
圖片

5、寫入Modbus TCP服務(wù)器8路線圈部分程序,功能碼15,對應(yīng)協(xié)議號2,M1置位后開始執(zhí)行該段程序,使用三菱FX5U的X0~X7去控制Modbus TCP服務(wù)器8路線圈,該段程序中的SP.ECPRTCL指令執(zhí)行完成之后復(fù)位M1、置位M2,緊接著去執(zhí)行下一個(gè)SP.ECPRTCL指令,如下所示:

圖片

6、讀取Modbus TCP服務(wù)器4路保持寄存器部分程序,功能碼03,對應(yīng)協(xié)議號3,M2置位后開始執(zhí)行該段程序,讀取Modbus TCP服務(wù)器4路保持寄存器后轉(zhuǎn)存到三菱FX5U的D0~D3寄存器中,該段程序中的SP.ECPRTCL指令執(zhí)行完成之后復(fù)位M2、置位M3,緊接著去執(zhí)行下一個(gè)SP.ECPRTCL指令,如下所示:

圖片

7、寫入Modbus TCP服務(wù)器4路保持寄存器部分程序,功能碼16,對應(yīng)協(xié)議號4,M3置位后開始執(zhí)行該段程序,使用三菱FX5U的D4~D7去控制Modbus TCP服務(wù)器4路保持寄存器,該段程序中的SP.ECPRTCL指令執(zhí)行完成之后復(fù)位M3、置位M0,緊接著又去執(zhí)行第一個(gè)SP.ECPRTCL指令,如下所示:

圖片

十四、三菱FX5U和以太網(wǎng)調(diào)試助手通信連接:

1、以太網(wǎng)調(diào)試助手做以太網(wǎng)服務(wù)器的設(shè)置

打開以太網(wǎng)調(diào)試助手,如下所示:

圖片

協(xié)議類型選擇TCP Server、本地IP地址按電腦實(shí)際IP地址設(shè)置為192.168.1.106、本地端口號設(shè)置為502,點(diǎn)擊開始監(jiān)聽,如下所示:

圖片

2、下載三菱FX5U以太網(wǎng)口通信協(xié)議支持功能數(shù)據(jù)包

圖片

3、下載三菱FX5U程序

圖片

4、監(jiān)視三菱FX5U程序,如下所示

建立連接程序段;斷開連接程序段:

圖片

以上可以看出連接1開放結(jié)束信號SD10680.0、連接1開發(fā)請求信號SD10681.0均為0,符合建立和Modbus TCP服務(wù)器連接條件,此時(shí)可置位M100建立和以太網(wǎng)調(diào)試助手的連接,如下所示:

圖片

5、以太網(wǎng)調(diào)試助手連接建立,如下所示:

圖片

十五、三菱FX5U之Modbus TCP客戶端程序的監(jiān)視:

三菱FX5U和以太網(wǎng)調(diào)試助手建立連接成功后,以太網(wǎng)調(diào)試助手即可觀察到來自三菱FX5U發(fā)出的Modbus TCP命令,如下所示:

圖片

十六、三菱FX5U和西門子200 Smart通信測試步驟:

1、使用網(wǎng)線將西門子200 Smart連接至無線路由器LAN口、使用網(wǎng)線將三菱FX5U連接至無線路由器LAN口,完成硬件連接,如下所示:

圖片

2、下載西門子200 Smart之Modbus TCP服務(wù)器程序,并打開監(jiān)控,如下所示:

圖片

3、將三菱對象設(shè)備連接配置設(shè)置中連接設(shè)備的IP地址修改為西門子200 Smart的IP地址,如下所示:

圖片

4、重新下載三菱FX5U之Modbus TCP客戶端程序,并打開監(jiān)控,如下所示:

圖片

5、在三菱編程軟件中置位M100,即可建立三菱FX5U和西門子200 Smart的TCP連接,連接建立成功后,三菱FX5U隨即會(huì)發(fā)送有關(guān)02、15、03、16功能碼命令,如下所示:

圖片
圖片

6、Modbus之02功能碼的測試,系統(tǒng)實(shí)現(xiàn)功能是西門子200 Smart的I0.0~I0.7控制三菱FX5U的Y0~Y7,在西門子編程軟件中強(qiáng)制I0.0為1,同時(shí)觀察三菱編程軟件中Y0的狀態(tài),如下所示:

圖片

7、Modbus之15功能碼的測試,系統(tǒng)實(shí)現(xiàn)功能是三菱FX5U的X0~X7控制西門子200 Smart的Q0.0~Q0.7,在三菱編程軟件中強(qiáng)制X1為1,同時(shí)觀察西門子編程軟件中Q0.1的狀態(tài),如下所示:

圖片

8、Modbus之03功能碼的測試,系統(tǒng)實(shí)現(xiàn)功能是三菱FX5U讀取西門子200 Smart的VW0`VW6保存到自己的D0~D3里,監(jiān)視西門子編程軟件中VW0~VW6的值,并監(jiān)視三菱編程軟件中D0~D3的值,如下所示:

圖片

9、Modbus之16功能碼的測試,系統(tǒng)實(shí)現(xiàn)功能是三菱FX5U的D4~D7去控制西門子200 Smart的VW8~VW14,監(jiān)視三菱編程軟件中D4~D7的值,并監(jiān)視西門子編程軟件VW8~VW14的值,如下所示:

圖片

十七、總結(jié):

至此,三菱FX5U(Modbus TCP客戶端)和西門子200 Smart(Modbus TCP服務(wù)器)完美實(shí)現(xiàn)了Modbus TCP以太網(wǎng)通信。

作者簡介:

guanyumou:關(guān)普,中華工控網(wǎng)串口通信板塊版主。就職于西安棋影工作室,專注各種組態(tài)軟件、觸摸屏、PLC、單片機(jī)、變頻器、伺服控制器、智能儀表等Modbus TCP以太網(wǎng)通信、Modbus RTU串口通信、Modbus ASCII串口通信和其他協(xié)議通信等!

來源/中華工控網(wǎng)

    本站是提供個(gè)人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多