Modbus TCP 服務器指令使用示例:
MB_Server 指令庫安裝
1) 打開STEP 7-Micro/WIN SMART V2.2 版本軟件,鼠標右鍵項目樹的“庫”節點,并從快捷菜單中選擇“打開庫文件夾”,如圖 1. 所示。
2) 將MB_Server 指令庫添加到打開的 STEP 7-Micro/WIN SMART 庫文件夾中,如圖2. 所示。
備注:STEP 7-Micro/WIN SMART 庫文件夾一般存儲路徑為C:UsersPublicDocumentsSiemensSTEP 7-MicroWIN SMARTLib
3) 關閉STEP 7-Micro/WIN SMART 庫文件夾,然后鼠標右鍵項目樹的“庫”節點,并從快捷菜單中選擇“刷新庫”。刷新后,您可以看見“MB_Server_0”指令庫已經被添加到項目樹的庫節點下。
調用MB_Server 指令庫
MB_Server 指令庫包含MBS_Connect 和MBS_Slave 等2個指令。
MBS_Connect 指令用于建立或斷開 Modbus TCP 連接;MBS_Slave 指令用于處理來自Modbus TCP 客戶端的請求,并且該指令必須在每次掃描時執行,以便檢查和響應 Modbus 請求。
每個 MB_Server 指令庫只能創建一個 Mdobus TCP 連接,如果一個 S7-200 SMART 需要連接多個Modbus TCP 客戶端,則需要購買多個名稱不同的MB_Server 指令庫(例如 MB_Server_0,MB_Server_1,MB_Server_2)。
1) 在“MAIN”主程序中調用 MBS_Connect 和MBS_Slave 指令,如圖 3. 所示。
MBS_Connect 指令各個參數定義如下:
EN 使能:必須保證每一掃描周期都被使能。
Connect:啟動TCP 連接建立操作。
Disconnect: 斷開TCP連接操作。
ConnID: TCP 連接標識。
注意:Modbus TCP 屬于TCP通信,也是開放式用戶通信中的一種,所以ConnID 參數不能與其他 TCP、ISO-on-TCP 、UDP通信相同。
IPaddr1~IPaddr4: Modbus TCP 客戶端的IP 地址,IPaddr1 是 IP 地址的最高有效字節,IPaddr4 是 IP 地址的最低有效字節。如果不指定伙伴IP ,則可以設置為 0.0.0.0 。LocPort:本地設備上端口號
MaxHold: 用于設置 Modbus 地址 4xxxx 或 4yyyyy 可訪問的 V 存儲器中的字保持寄存器數。
HoldStart: 間接地址指針,指向 CPU 中 V 存儲器中保持寄存器的起始地址。本例中VW1000 即對于 Modbus 地址 40001 。
ConnectDone :Modbus TCP 連接已經成功建立。
Busy: 連接操作正在進行時。
Error: 建立或斷開連接時,發生錯誤。
Status:如果指令置位 “Error”輸出,Status 輸出會顯示錯誤代碼。
MBS_Slave 指令各個參數定義如下:
EN 使能:必須保證每一掃描周期都被使能。
Done:當 MB_Server 指令響應 Modbus 請求時,Done 完成位在當前掃描周期被設置為 1 ;如果未處理任何請求, Done 完成位為 0 。
Error:錯誤代碼,只有在 Done 位為1時錯誤代碼有效。
2) 為MB_Server 指令庫分配庫存儲器地址。
MB_Server 指令庫需要占用 300 個字節 V 存儲區用于庫存儲器地址分配。
該庫存儲器分配地址不能與 MBS_Connect 指令參數 HoadStart 指向的 V 存儲器地址重疊,也不能與其它程序使用的地址有重疊,庫存儲器地址分配過
程見圖4.所示。
審核編輯:湯梓紅
-
MODBUS
+關注
關注
28文章
1765瀏覽量
76850 -
服務器
+關注
關注
12文章
9029瀏覽量
85207 -
TCP
+關注
關注
8文章
1351瀏覽量
78997 -
S7-200
+關注
關注
13文章
407瀏覽量
50335 -
指令庫
+關注
關注
0文章
4瀏覽量
2311
原文標題:S7-200 SMART Modbus TCP 服務器指令庫
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應用】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論