上位機C#通過OPCUA和西門子PLC通訊
寫在前面:
很多人在學習OPCUA的時候,有個非常苦惱的問題,就是沒有OPCUA伺服器的環境,這時候,有些人可能會想到通過類似於KepServer這樣的軟體來實現。那麼,有沒有一種方式,實現快速搭建OPCUA環境呢?答案是有的,今天繼續給大家分享S7-PLCSIM Advanced,S7-PLCSIM Advanced是SIEMENS推出的一款高功能模擬器,它的顯著特點是除了可以模擬一般的PLC邏輯控制程式外還可以模擬通訊,功能是非常強大的,今天主要講述如何基於S7-PLCSIM Advanced搭建OPCUA通訊模擬環境。
01.PLCSIM-Advanced安裝
對於該軟體的獲取,大家可以去西門子相關網站下載,也可以直接關注喜科堂上位機官方公眾號-dotNet工控上位機,然後發送關鍵詞PLCSIM-Advanced,即可下載使用。
PLCSIM-Advanced的安裝也比較簡單,基本上是一路NEXT即可,但是主要的是PLCSIM-Advanced會依賴WinPcap軟體,所以大家可以提前安裝好WinPcap,即使不提前安裝,安裝過程中也會提示你安裝的。
安裝完成後,電腦中會額外多出一個虛擬網卡,名稱為Siemens PLCSIM Virtual Ethernet Adapter,如下圖:
圖表 2網卡列表
02.PLCSIM-Advanced使用
安裝完成後,桌面上會多出一個圖標,即S7-PLCSIM Advanced V3.0,如下圖所示:
該軟體的使用可以按照下方的步驟執行和確定,一定要記住以下需要注意的地方,否則一個很小的問題,可能會讓你浪費半天的時間,這樣就得不償失了。
(1)軟體要以管理員許可權運行:可以直接每次右擊,以管理員許可權運行,如果想一勞永逸,可以點擊圖標,右擊屬性,在兼容性中,將以管理員身份運行此程式的選項勾選。
(2)將本地網卡及虛擬網卡的IP地址獲取設置為自動獲取。
(3)設置PG/PC介面:
通過控制面板,打開設置PG/PC介面介面,按照下圖所示設置應用程式訪問點:
(4)打開PLCSIM-Advanced,依次按照步驟進行設置:
(5)使用博圖創建一個簡單項目,一定要選擇1500PLC,PLCSIM-Advanced只支援1500PLC,但是對學習通訊來說,沒什麼影響。
(6)勾選允許Put/Get訪問:
(7)點擊項目,右擊屬性,將保護中的塊編譯時支援模擬選項勾選:
(8)下載PLC程式時,將PG/PC介面設置成Siemens PLCSIM Virtual Ethernet Adapter。
(9)選擇顯示所有兼容的設備,點擊開始搜索,搜索到之後,點擊下載即可。
03.OPCUA配置
上述過程和搭建S7通訊環境完全一樣,OPCUA其實就是在S7的基礎上,需要先增加一些DB存儲區,然後在DB塊中添加一些變數,這裡不需要去除優化訪問,如下圖所示:
增加完成之後,雙擊CPU,在OPCUA選項中,將激活OPCUA伺服器勾選,如下圖示所示:
激活OPCUA伺服器之後,選擇運行系統許可證選項,選擇一個OPCUA許可證:
以上操作完成之後,將PLC程式重新下載,下載步驟如上述一致。
04.UAExpert通訊測試
上述操作完成之後即完成了整個環境搭建的過程,下面先使用官方的UAExpert進行測試。
05.通訊測試平台測試
接著,我們使用新閣的通訊測試平台軟體進行通訊測試,設置伺服器節點為opc.tcp://192.168.1.20:4840(根據實際情況修改),點擊連接,連接成功後,點擊變數管理,即可看到OPCUA伺服器中的所有節點,通過選擇DataBlockGlobal下的KYJDB,找到了我們剛剛配置的變數,選擇想要讀取的變數,然後讀取即可。
寫在最後:
本文旨在結合SIEMENS推出的一款高功能模擬器PLCSIM-Advanced軟體實現快速搭建OPCUA通訊模擬環境,對於從事上位機開發,想要學習OPCUA通訊,手頭又沒有硬體的學員來說,無疑是一大利好,基於OPCUA與西門子PLC通訊,可以通過變數名稱訪問,而不需要去除DB的優化訪問,這一點非常方便。