上位機使用S7通信涉及諸多要點,稍不注意就容易踩坑。今天,我們就來詳細剖析那些最常見的‘雷區’。
一、連接類型設置
以C#上位機使用Sharp7通信庫為例,Sharp7默認使用的連接資源是PG,若不更改,可能會出現與STEP 7-Micro/WIN Smart編程軟件不能同時使用的情況。因為S7-200smart CPU只支持一個PG連接。
以下是其支持的最大通信連接資源的詳細解析:
1.與編程軟件的通信
STEP 7-Micro/WIN SMART軟件:支持1個連接,用于程序下載、調試和監控。
2.與HMI(人機界面)的通信
RS485接口(PPI協議):最多支持4個HMI設備連接。擴展接口:通過CM01信號板擴展RS485/RS232接口后,最多可連接16個HMI設備(8個通過串口,8個通過網口)。
3.與其他S7-200 SMART CPU的通信
GET/PUT主動連接:支持8個連接,用于主動向其他CPU發送數據。GET/PUT被動連接:支持8個連接,用于接收其他CPU的數據。
4.與第三方設備的通信
Open IE協議:
主動連接:8個連接。
被動連接:8個連接。
RS485接口:支持Modbus RTU、USS、自由口通信,最多連接4個設備。擴展信號板(CM01):RS485/RS232接口最多連接4個設備。
5.PROFINET通信
作為IO設備:最多支持8個PROFINET IO設備連接。作為IO控制器:支持1個PROFINET IO控制器連接。
6.其他協議支持
TCP/IP協議:通過以太網接口支持多種終端連接,最多4個設備。PC Access SMART:作為OPC服務器,支持上位機讀取數據,具體連接數受CPU性能限制。
為避免此問題,可將連接類型設置為GET/PUT或者HMI連接資源,它們都有8個連接資源,一般很難被全部占用。設置代碼如下:

需要注意的是,Sharp7默認使用的連接資源就是PG,所以此行代碼是必須的,否則就會出現和STEP 7-Micro/WIN SMART編程軟件不能同時使用的情況。
二、PDU讀取限制
S7協議一次性讀取有限制,不同型號的CPU,其PDU(協議數據單元)大小不同,如S7-200smart/S7-1200/S7-300一般是240,S7-400一般是480,S7-1500一般是960。實際讀取的字節數要在PDU的基礎上減去包頭的18個字節,即S7-200smart/S7-1200/S7-300一次可以讀取222個字節,S7-400一般是462個字節,S7-1500一般是942個字節。若要讀取大量數據,通信庫底層通常會做分包處理,但會增加通信耗時。
三、數據地址與類型匹配
在進行數據交互時,數據地址的指向必須準確,大小要匹配,數據類型也要一一對應。比如在兩PLC之間S7通訊時,交互數據的發送端和接收端的數據類型和長度不能錯位或不一致,否則會導致通信錯誤或數據讀取錯誤。
四、通信負載設置
如果上位機與PLC之間的通信頻繁,可能會導致PLC的通信負載過高,影響PLC的正常運行。需要根據實際情況,合理設置PLC的通信負載參數,以確保通信的穩定性和實時性。
五、PLC側配置
PLC側需要進行一些配置才能與上位機進行S7通信。例如,要勾選允許來自遠程對象的PUT/GET通信訪問;如果要與DB塊數據通信,需要去除DB的優化的塊訪問;務必保證通信地址是有效地址,讀取的必須是有效地址,其他存儲區也不能超過范圍。
六、無線通信測試
本方案以WinCC和2臺西門子S7-1200 PLC為例,在ModbusTCP/IP協議下實現無線以太網通信實現過程。

審核編輯 黃宇
-
plc
+關注
關注
5051文章
14592瀏覽量
486857 -
上位機
+關注
關注
1文章
8瀏覽量
2656
發布評論請先 登錄
西門子S7-1200/1500 PLC數據采集上云實戰指南
上位機如何采集plc數據?
鋇錸技術BL118 Node-Red邊緣計算網關西門子PLC S7協議使用方法
玩轉VBAT,電源設計常見陷阱99%都能輕松避開!
傳祺向往S7 Pro+系列將首批搭載Momenta R6飛輪大模型
西門子PLC(S7-1200/1500/300/400)的數據采集與監控方案
工程師崩潰瞬間:上位機與PLC通信失敗?3分鐘快速診斷攻略
S7-200Smart與S7-1200通過Modbus協議對接到上位機
MCGS觸摸屏與西門子S7系列PLC以太網通信
S7通信穩不穩?避開這些上位機開發常見雷區是關鍵!
評論