寫在前面:
就目前而言,在中國的工控市場上,西門子仍然佔了很大的份額,因此對於上位機開發而言,經常會存在需要與西門子PLC進行通訊的情況。然後對於西門子PLC來說,通訊方式有很多,下面簡單列舉一下:
(1) S7通訊:PLC作為伺服器,上位機作為客戶端
(2) 開放式TCP通訊:PLC作為伺服器,上位機作為客戶端
(3) 開放式TCP通訊:PLC作為客戶端,上位機作為伺服器
(4) ModbusTCP通訊:PLC作為伺服器,上位機作為客戶端
(5) ModbusTCP通訊:PLC作為客戶端,上位機作為伺服器
(6) ModbusRTU通訊:PLC作為主站,上位機作為從站
(7) ModbusRTU通訊:PLC作為從站,上位機作為主站
(8) Simatic Net OPCDA通訊
(9) Simatic Net OPCUA通訊
(10) KepServer OPCDA通訊
(11) KepServer OPCUA通訊
由於篇幅有限,這次僅以西門子S7通訊為例,說明下如何基於S7通訊協議實現與西門子PLC之間的通訊。
1. PLC軟體安裝及配置
目前西門子PLC主要使用的軟體包括STEP7-MicroWIN SMART、SIMATIC STEP7以及TIA Portal。TIA Portal已經完全相容STEP 7,因此以後應該是STEP 7-MicroWIN SMART作為小型PLC的程式設計軟體,TIA作為中大型PLC的程式設計軟體,這裡主要以博途為例進行說明:
如果大家需要軟體的,可以關注左上方公眾號,或者搜尋微信公眾號:dotNet工控上位機,關注後傳送關鍵詞:200SMART程式設計軟體即可獲取STEP 7-MicroWIN SMART V2.5軟體,傳送關鍵詞:博圖V15即可獲取TIA V15.1程式設計軟體。
軟體安裝完成後,PLC的配置也很簡單,如果大家手頭沒有實際的PLC,也可以通過模擬的方式搭建PLC環境,具體可以參考文章:戳↓
基於S7-PLCSIM Advanced搭建S7通訊模擬環境
無論使用何種方式,以下兩個地方需要進行配置一下:
PLC配置一:需要將PLC的允許來自遠端物件的PUT/GET通訊訪問勾選。
PLC配置二:對於DB塊的訪問,需要取消勾選優化訪問。
2. 通訊平臺測試
(1)完成以上配置後,就可以通過自己開發的喜科堂通訊測試平臺軟體進行測試,導航欄中選擇西門子PLC,然後輸入正確的IP地址,在CPU型別中選擇自己的CPU型別:
圖表 1新閣通訊測試平臺
(1)輸入完成之後,點選建立連線,建立連線之後,日誌欄會有連線成功提示。
(2)在讀寫測試中,輸入相應的變數地址及變數型別,即可實現相關變數的通訊讀寫及測試。
圖表 2新閣通訊測試平臺測試
3. 專案級別應用
通訊測試平臺僅僅只是用於測試通訊是否正常,實現正常的單變數資料讀取和寫入。但是如果是專案級別開發,還需要有一套更完善的通訊架構,這裡我採用的是自主開發的上位機通訊配置一體化軟體(簡稱CMS配置軟體)。
(1)通過PLC裝置右擊選擇西門子PLC,在開啟的窗體中設定好相關引數:
裝置名稱:根據實際情況填寫(無特殊字元即可)
裝置備註:根據實際情況填寫(無特殊字元即可)
IP地址:根據實際PLC的IP地址填寫
機架號、插槽號:根據實際PLC的情況填寫
PLC型別:根據實際PLC的情況填寫
連線超時:PLC連線時的超時時間,預設是2000ms
容錯次數:判斷連線故障的容錯次數,預設為1,即表示某次讀取出錯,即判斷連線故障,根據實際情況可以適當放大
重連週期:通訊過程中,出現斷線時,重連的週期,預設是5000ms
圖表 3建立PLC
(2)在PLC裝置下,右擊新增通訊組,根據需要填寫相應的儲存區及起始地址及長度:
圖表 4新增通訊組
(3)通訊組下面,根據實際情況配置相應的變數,輸入開始地址及變數型別即可,變數地址會自動變換,這裡可以輸入比例係數及偏移量,用於做線性變換使用:
圖表 5新增變數
(4)對於變數配置,左下角會有一個報警歸檔配置,主要用於配置該變數的報警型別、歸檔方式及設定限制:
圖表 6報警歸檔配置
(5)完成上述配置後,可以點選儲存配置,再點選啟動執行,即可實現實時通訊:
圖表 7實時通訊
(6)同時可以通過另存為,儲存為一個配置檔案的形式,再基於配置dll,可以通過快速方式實現配置解析及通訊資料解析,這樣整個專案的通訊框架即可搭建完成。
4. 整體總結
本文主要針對西門子PLC的通訊配置、通訊配置及專案應用做了較為詳細的描述,希望可以給一些想要去開發西門子PLC專案的同學一些幫助。這樣的一套思路同樣適用於其他品牌的PLC,我們旨在節約大家開發專案中在通訊方面的時間,而將更多的精力投放在專案工藝開發中。
寫在後面:
很多小夥伴想要CMSPro軟體來進行學習,因此綜合考慮,現提供CMSPro軟體試用版供大家學習使用,試用版功能方面可能會存在部分刪減,但是可以滿足大部分小夥伴的學習需求,目前僅針對本公眾號粉絲,具體獲取方式,通過關注本公眾號:dotNet工控上位機,傳送關鍵詞:CMSPro試用,即可獲取。同時我們的通訊庫xktComm.dll也提供試用版,大家可以通過nuget搜尋xktComm,安裝使用,最後祝大家工作生活愉快。
更多精彩內容:
(點選即可閱讀)