置頂/標星公衆號,不錯過最新消息
由於WINCC沒有與S7-200 SMART PLC通訊的驅動,大家現在做項目S7-200 SMART用的也比較多。所以這個問題比較典型,故專門寫篇文檔與君分享。
主要內容:
1、通訊方法
2、S7-200 SMART作爲modbus tcp 服務器
3、WINCC客戶端
4、多個WINCC同時連接
一、通訊方法
一些通訊方案包括:使用SIMATIC NET或S7-200 PC Access SMART,WINCC通過OPC讀寫PLC。
但SIMATIC NET需要花銀子,S7-200 PC Access SMART雖然免費但不穩定,且最多隻支持8個PLC(關於S7-200 PC Access SMART的FAQ)。如果WINCC OPC Client非本地訪問SIMATIC NET OPC/S7-200 PC Access SMART,還要配置DCOM。
本文分享一個方案:S7-200 SMART作爲modbus tcp server,WINCC通過“Modbus TCP/IP”驅動讀寫PLC數據。
二、S7-200 SMART作爲modbus tcp 服務器
STEP 7-MicroWIN SMART從2.4版本開始,提供免費的modbus tcp client/server庫。(STEP 7 Micro/WIN SMART 最新版本V2.4介紹)。
PLC程序只需調用MBUS_SERVER 指令,即可配置成modbus tcp 服務器。
MBUS_SERVER 指令如何使用,可查看STEP 7-Micro/WIN SMART 在線幫助。
三、WINCC客戶端
由於modbus屬於請求/應答協議,報文組織(會問)很重要,這直接影響通訊質量。就好比人與人之間交流,有什麼話坦誠的一口氣講出來,別一點一點像倒豆子似的,浪費大家時間,好像跑題了
關於這個問題,老鐵們應該知道以前分享過相關文章《WINCC MODBUS-TCP協議通道使用注意》。
WINCC讀取PLC各類型數據:
WINCC變量:
PLC變量:
四、多個WINCC同時連接
一個MBUS_SERVER 指令只能連接一個modbus tcp 客戶端。要想實現多個wincc同時連接,可以通過調用多個MBUS_SERVER 指令,並分配不同的端口號。
存在的問題:
WINCC對調了文本變量每個16bit保持寄存器的高低字節,所以字符串的讀寫需要額外的處理程序。
-END-
說明
CPU 型號 CPU CR20s、CPU CR30s、CPU CR40s 和 CPU CR60s 無以太網端口,不支持與使用以太網通信相關的所有功能。
開放式用戶通信 (OUC) 連接:八個主動(客戶端)連接和八個被動(服務器)連接
創建環境
WINCC V7.4 SP1,STEP 7-Micro/WIN SMART V2.4
更多內容,歡迎關注微信公衆號『自控技術FAQ』