S7-200 SMART Modbus TCP 服務器指令
STEP7-Micro/WIN SMART 從V2.4 版本開始,軟件中直接集成 Modbus TCP 庫指令,無需單獨安裝或者購買。安裝軟件后,Modbus TCP 指令位于 STEP7-Micro/WINSMART 項目樹中“指令”文件夾的“庫”文件夾中。如圖1.Modbus TCP庫指令所示。
指令分為客戶端和服務器兩種,目前指令版本為 V1.0。客戶端指令會占用開放式用戶通信資源主動連接,最多8個;服務器指令會占用開放式用戶通信資源的被動連接資源,最多也是8個。
圖1.Modbus TCP庫指令
實驗環境及通信任務
下面以兩臺S7-200 SMART 之間進行Modbus TCP 通信為例,詳細闡述客戶端與服務器側如何編程及通信的過程。具體的實驗環境見表1.;通信任務見表2:
表1.實驗環境
操作系統 | WIN7 SP1 專業版 64位 |
---|---|
編程軟件 | STEP7-Micro/WIN SMART V2.4版本 |
硬件 |
SR60:6ES7288-1SR60-0AA0 固件:V2.4 版本 ST20:6ES7288-1ST20-0AA0 固件:V2.4版本 交換機:CSM 127 6GK7 277-1AA10-0AA0 |
表2.通信任務
硬件 | 通信角色 | IP地址 | 端口號 | 讀/寫 | 數據區域 |
---|---|---|---|---|---|
SR60 | 客戶端 | 192.168.0.60 | 0 | 讀 | VB20-VB31 |
ST20 | 服務器 | 192.168.0.20 | 502 | 響應 | VB0-VB11 |
服務器側指令編程
1、系統塊中設置服務器的IP地址,以確保IP地址設置無誤。此步驟為可選,如果確定IP地址設置無誤,可忽略此步驟。設置方法如圖2.所示。
圖2.系統塊設置IP地址
2、鼠標點擊 MAIN 主程序的程序段1的編程區域,從庫文件夾下找到 Modbus TCP 服務器指令 MBUS_SERVER,鼠標雙擊,指令出現在程序段1中,操作如圖3.所示。
圖3.添加服務器指令
3、填寫服務器指令參數,如圖4.所示。
圖4.填寫服務器參數
參數及類型 | 數據類型 | 說明 | |
---|---|---|---|
Connect | IN | BOOL | =1:服務器接受來自客戶端的請求;=0:服務器可以斷開已經建立的連接 |
IP_Port | IN | WORD | 服務器本地端口號 |
MaxIQ | IN | WORD |
對應數字量輸入/輸出點(對應Modbus 地址參數0xxxx或者1xxxx) 可設置范圍:0-256, =0表示禁用對輸入和輸出的所有讀取和寫入。 建議將 MaxIQ 值設置為 256。 |
MaxAI | IN | WORD |
對應模擬量輸入參數(對應Modbus 地址參數 3xxxx) 可設置范圍:0-56。 = 0表示禁用對模擬量輸入的讀取。 要允許訪問所有 CPU 模擬量輸入,MaxAI 的建議值如下: 對于 CPU CR40 和 CR60,為 0 對于所有其它 CPU 型號,為 56 |
MaxHold | IN | WORD | 用于 Modbus 地址 4xxxx 或 4yyyyy 的 V 存儲器中的字保持寄存器數。 |
HoldStart | IN | Dword | 指向 V 存儲器中保持寄存器起始位置的指針 |
Done | OUT | BOOL |
TRUE:以下任一條件時為真:客戶端已與服務器建立連接;客戶端已與服務器斷開連接;客戶端已接收 Modbus 響應;發生錯誤 FALSE:客戶端正忙于建立連接或等待來自服務器的 Modbus 響應。 |
Error | OUT | BOOL | 出現錯誤,僅一個周期有效 |
4、鼠標選中程序塊文件夾,單擊右鍵,下拉菜單中選擇庫存儲器,如圖5.所示。
圖5.點擊庫存儲器
5、在庫存儲區分配對話框中手動輸入存儲區的起始地址。此實例為VB5000開始,以使指令庫可以正常工作。確保庫存儲區與程序中其他已使用的地址不沖突。使用建議地址無法確定是否有地址重疊,所以推薦手動輸入正確的庫存儲區首地址。如圖6.所示。
圖6.庫存儲區地址分配
6、編譯項目,下載程序。
通信測試結果
由于客戶端要讀取服務器的數據,在狀態圖表中修改當前值,如圖7.所示
圖7.狀態圖表賦值
審核編輯:湯梓紅
-
MODBUS
+關注
關注
28文章
1761瀏覽量
76836 -
服務器
+關注
關注
12文章
9021瀏覽量
85183 -
TCP
+關注
關注
8文章
1350瀏覽量
78986 -
S7-200
+關注
關注
13文章
407瀏覽量
50329
原文標題:S7-200 SMART Modbus TCP 服務器指令
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應用】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論