1. 程式人生 > >C# 讀寫opc ua伺服器,瀏覽所有節點

C# 讀寫opc ua伺服器,瀏覽所有節點

OPC UA簡介

OPC是應用於工業通訊的,在windows環境的下一種通訊技術,原有的通訊技術難以滿足日益複雜的環境,在可擴充套件性,安全性,跨平臺性方面的不足日益明顯,所以OPC基金會在幾年前提出了面向未來的架構設計的OPC 統一架構,簡稱OPC UA,截止目前為止,越來越多公司將OPC UA作為開放的資料標準,在未來工業4.0行業上也將大放異彩。

在OPC UA的伺服器端。會公開一些資料節點,或是方法等資訊,允許第三方使用標準的OPC協議來進行訪問,在傳輸層已經安全的處理所有的訊息,對於客戶端的訪問來說,應該是非常清楚簡單的。

前期準備

準備好開發的IDE,首選Visual Studio2017版本,新建專案,或是在你原有的專案上進行擴充套件。注意:專案的.NET Framework版本最低為4.5

1 Install-Package OpcUaHelper

或者:

然後在窗體的介面新增引用:

1 using OpcUaHelper;

接下就可以愉快碼程式碼了。

技術支援QQ群:592132877 (元件的版本更新細節也將第一時間在群裡釋出)

節點瀏覽器

我們在得到一個OPC UA的伺服器之後,第一件事就是使用節點瀏覽器對所有的節點進行訪問,不然你根本就不知道伺服器公開了什麼東西,此處我使用了一個測試伺服器,該地址為雲端地址,不保證以後會不會繼續支援訪問,目前來說還是可以訪問的。

比如這個地址:http://117.48.203.204:62547/DataAccessServer

OK,然後我們可以使用程式碼來顯示這個伺服器到底有什麼資料了!在窗體上新增一個按鈕,雙擊它進入點選事件,寫上

1 2 3 4 5 6 7 private void button1_Click(object sender, EventArgs e) { using (FormBrowseServer form = new FormBrowseServer()) { form.ShowDialog();
} }

然後就會顯示如下的介面:在位址列輸入上述地址,點選連線(此處能連線上的條件是伺服器配置為允許匿名登入):

如果伺服器配置為使用者名稱密碼登入的,點選menu選單欄的UserIdentity選單,顯示輸入使用者名稱和密碼,然後在點選connect連線即可。(暫不支援使用證書的方式登入伺服器

左邊區域可以隨便點選看看,可以看到所有公開的資料,比如點選一個數據節點,下面圖片中的Name節點,右邊編輯框會顯示該節點的ID標識,這個標識很重要,關係到等會的讀寫操作。

客戶端例項化

1 2 3 4 5 6 7 8 9 10 11 private OpcUaClient opcUaClient = new OpcUaClient(); private void Form1_Load(object sender, EventArgs e) { opcUaClient.ConnectServer("http://117.48.203.204:62547/DataAccessServer"); } private void