一
案例簡介
本案例主要講解串口IO系列設備(本次作為從機設備)與西門子PLC S7-200smart(以下簡稱西門子PLC,本次作為主機設備)Modbus RTU參數(shù)配置連接例程,本案例串口IO系列以MA01-AACX2220為例。
二
硬件準備
? MA01-AACX2220串口IO設備一臺;
? 西門子PLC S7-200smart一臺;
? 24V電源兩個;
? 通訊電纜若干;
? 電腦一臺。
三
軟件準備
? STEP 7-MicroWIN SMART軟件,可自行在西門子官網(wǎng)下載;
? 億佰特IO模塊配置測試工具,可在億佰特官網(wǎng)相對應位置下載:https://www.ebyte.com
四
PLC程序準備
S7-200 Smart指令庫
西門子在STEP 7-Micro/WIN SMART中已經(jīng)集成了Modbus RTU主站協(xié)議庫(西門子標準庫指令)。使用Modbus RTU主站指令庫,可以讀寫Modbus RTU從站的數(shù)字量、模擬量I/O以及保持寄存器。
Modbus RTU主站指令庫可以同時應用于CPU集成的RS 485通訊口和CMO1信號板,此時集成的RS 485口使用Modbus RTU,Master(v2.0)中指令,CM01信號板使用Modbus RTU Master2(v2.0)中指令,如果只有一個主站則不做區(qū)分,所以我們這里先選擇MBUS_CTRL,如圖所示:
MBUS_CTRL各參數(shù)意義講解:
EN:使能開關;必須保證每一掃描周期都被使能(使用SM0.0)
Mode:模式;為1時,使能Modbus協(xié)議功能;為0時,恢復為系統(tǒng)PPI協(xié)議,使用Modbus協(xié)議時,此參數(shù)應配置為1。
Baud:波特率;支持的通訊波特率為1200,2400,4800,9600,19200,38400,57600,115200;此參數(shù)應該配置為與MA01-AACX2220的波特率配置為一致,此處我們配置的波特率9600。
Parity:校驗方式選擇;0=無校驗,1=奇較驗,2=偶較驗;此參數(shù)應該配置為與MA01-AACX2220的校驗方式配置為一致,此處我們配置的校驗方式為0(無校驗)。
Port:端口號選擇;0=CPU集成的RS 485通訊口,1=可選CM 01信號板;此處我們配置的為0,代表PLC集成的RS485通訊口。
Timeout:通訊超時設置;主站等待從站響應的時間,以毫秒為單位,典型的設置值為1000毫秒(1秒),允許設置的范圍為1-32767。需要注意的是:這個值必須設置足夠大以保證從站有時間響應。我們這里配置的為1000,一般建議200ms以上。
Done:完成位;初始化完成,此位會自動置1。
Error:錯誤代碼;初始化錯誤代碼(只有在Done位為1時有效):0=無錯誤;1=校驗選擇非法;2=波特率選擇非法;3=超時無效;4=模式選擇非法;9=端口無效;10=信號板端口1缺失或未組態(tài);
接著我們調(diào)用一個Modbus RTU主站讀寫子程序MBUS_MSG,如圖所示:
MBUS_MSG重要參數(shù)意義講解:
EN:使能開關;同一時刻只能有一個讀寫功能(即MBUS_MSG)使能注意:建議每一個讀寫功能(即MBUS_MSG)都用上一個MBUS_MSG指令的Done完成位來激活,以保證所有讀寫指令循環(huán)進行。
First:讀寫請求位;每一個新的讀寫請求必須使用脈沖觸發(fā)。
Slave:從站地址:可選擇的范圍1-247,此參數(shù)應該配置為與MA01-AACX2220的modbus地址配置為一致,此處我們配置的地址為1。
RW:讀寫請求;0=讀,1=寫。注意:1.數(shù)字量輸出和保持寄存器支持讀和寫功能2.數(shù)字量輸入和模擬量輸入只支持讀功能;
Addr:讀寫從站的數(shù)據(jù)地址;
選擇讀寫的數(shù)據(jù)類型:
00001至0xxxx-數(shù)字量輸出→對應MA01-AACX2220設備IO的DO點位
10001至1xxxx-數(shù)字量輸入→對應MA01-AACX2220設備IO的DI點位
30001至3xxxx-模擬量輸入→對應MA01-AACX2220設備IO的AI點位
40001至4xxxx-保持寄存器→一般對應,設備IO的AO點位,MA01-AACX2220無AO點位
Count:數(shù)據(jù)的個數(shù);通訊數(shù)據(jù)的個數(shù),如果這里設置為2,代表使用了2個寄存器
DI數(shù)字量輸入連接參數(shù):
查看串口IO產(chǎn)品手冊可知,DI數(shù)字量輸入寄存器如下:
程序Addr處填寫10001(轉(zhuǎn)換為10進制后,寄存器起始地址需要+1操作),Count處填寫2。
PLC程序:
配置與MA01-AACX2220數(shù)據(jù)通訊的2個DI。
AI模擬量輸入連接參數(shù):
程序Addr處填寫30101(轉(zhuǎn)換為10進制后,寄存器起始地址需要+1操作),Count處填寫2。
PLC程序:
配置與MA01-AACX2220數(shù)據(jù)通訊的2個AI。
DO數(shù)字量輸出連接參數(shù):
查看MA01-AACX2220產(chǎn)品手冊可知,DO數(shù)字量輸出寄存器如下:
程序Addr處填寫1(轉(zhuǎn)換為10進制后,寄存器起始地址需要+1操作),Count處填寫2。
PLC程序:
配置與MA01-AACX2220數(shù)據(jù)通訊的2個DO。
五
串口IO MA01-AACX2220參數(shù)配置準備
可使用億佰特IO模塊配置測試工具配置MA01-AACX2220的基本參數(shù)和網(wǎng)絡參數(shù),本次采用設備默認參數(shù):Modbus地址:1,波特率:9600,數(shù)據(jù)位:8,校驗位:無,停止位:1;(如需修改為其他參數(shù),可通過高級設置頁面進行操作,或者查看手冊中的寄存器地址,直接操作寄存器,發(fā)送Modbus指令進行操作),如圖所示:
至此,我們已經(jīng)成功地完成了對西門子PLC和串口IO MA01-AACX2220參數(shù)配置,為二者的Modbus RTU連接通訊做好了準備。
相關推薦
MA01-AACX2220是支持采集2路傳感器開關量輸入(DI)、2路傳感器模擬量輸入(AI),轉(zhuǎn)換為串口數(shù)據(jù)傳輸?shù)浇M態(tài)軟件或PLC。通過串口下發(fā)指令控制2路繼電器開關輸出(DO),實現(xiàn)遠程采集控制功能的串口I/O聯(lián)網(wǎng)模塊(又稱“遠程IO模塊”)。
-
plc
+關注
關注
5011文章
13297瀏覽量
463341 -
西門子
+關注
關注
94文章
3039瀏覽量
115874 -
MODBUS
+關注
關注
28文章
1805瀏覽量
76997 -
RTU
+關注
關注
0文章
413瀏覽量
28679
發(fā)布評論請先 登錄
相關推薦
評論