天天看點

《連載 | 物聯網架構ServerSuperIO教程》- 18.內建OPC Client,及使用步驟。附:3.5 釋出與更新說明。18.內建OPC Client,及使用步驟     

1.C#跨平台物聯網通訊架構ServerSuperIO(SSIO)介紹 《連載 | 物聯網架構ServerSuperIO教程》1.4種通訊模式機制。 《連載 | 物聯網架構ServerSuperIO教程》2.服務執行個體的配置參數說明 《連載 | 物聯網架構ServerSuperIO教程》- 3.裝置驅動介紹 《連載 | 物聯網架構ServerSuperIO教程》-4.如開發一套裝置驅動,同時支援序列槽和網絡通訊。 《連載 | 物聯網架構ServerSuperIO教程》- 5.輪詢通訊模式開發及注意事項。 《連載 | 物聯網架構ServerSuperIO教程》- 6.并發通訊模式開發及注意事項 《連載 | 物聯網架構ServerSuperIO教程》- 7.自控通訊模式開發及注意事項 《連載 | 物聯網架構ServerSuperIO教程》- 8.單例通訊模式開發及注意事項 《連載 | 物聯網架構ServerSuperIO教程》- 9. 協定過濾器,解決一包多發、粘包、備援資料 《連載 | 物聯網架構ServerSuperIO教程》- 10.持續傳輸大塊資料流的兩種方式(如:檔案) 《連載 | 物聯網架構ServerSuperIO教程》- 11.實作裝置(驅動)與裝置(驅動)互動和級聯控制。 《連載 | 物聯網架構ServerSuperIO教程》- 12.服務接口的開發,以及與雲端雙向互動 《連載 | 物聯網架構ServerSuperIO教程》- 13.自定義視圖顯示接口開發,滿足不同的顯示需求 《連載 | 物聯網架構ServerSuperIO教程》- 14.配制工具介紹,以及裝置驅動、視圖驅動、服務執行個體的挂載 《連載 | 物聯網架構ServerSuperIO教程》- 15.資料持久化接口的使用 《連載 | 物聯網架構ServerSuperIO教程》- 16.OPC Server的使用步驟 《連載 | 物聯網架構ServerSuperIO教程》- 17.支援實時資料庫,高并發儲存測點資料

更新内容:

1.增加OPC Client功能子產品。以及增加OPC Client的服務接口。

2.優化實時資料庫接口,支援批量寫入資料,以及提高執行效率。

3.優化ServerSuperIO的核心代碼。

4.完善配置工具。

5.增加OPC Server測試工具,在ServerSuperIO 3.5版本的“OPC工具群組件”目錄下。

目       錄

18.內建OPC Client,及使用步驟... 2

18.1        概述... 2

18.2        ServerSuperIO的OPC Client使用過程... 2

18.2.1       OPC服務端測試工具,并建立測點... 2

18.2.2       使用配置工具,配置基本資訊和讀取的測點... 3

18.2.3       打開實時資料庫服務... 5

18.2.4       運作UI程式或控制台程式... 5

18.3        注意事項... 6

18.4        應用擴充... 7

18.5        視訊示範... 7

18.內建OPC Client,及使用步驟     

18.1     概述

     OPC是以C/S結構存在且廣泛應用在工業領域的協定,在《

16.內建OPC Server,及使用步驟

》簡要的介紹了OPC的基本情況。一般OPC Server端向外提供可讀資料資訊的接口,例如:ServerSuperIO的裝置驅動讀取上來的測點資料可以直接寫到OPC Server中;OPC Client端主動連接配接OPC Server,并且通過同步、異步、資料變化的事件等方式讀取服務端的資料資訊。OPC Server與OPC Client是多對多的關系,OPC Server可以為多個OPC Client提供資料源,OPC Client也可以讀取多個OPC Server的資料資訊。

     OPC Client作為采集資料資訊的一種方式,是以ServerSuperIO內建了此項服務,它是以服務的形式存在,有别于裝置驅動采集硬體資料的方式。內建OPC Client服務隻涉及到使用過程,不涉及到代碼開發的問題,隻需要配置就可以把讀取過來的資料直接儲存到實時資料庫中。

18.2     ServerSuperIO的OPC Client使用過程

   18.2.1 OPC服務端測試工具,并建立測點

    在ServerSuperIO v3.5版本的“OPC工具群組件\OPC Server測試工具”目錄中可以找到OPC Server的測試工具,打開工具可以建立OPC測點及動态生成資料。如下圖:

《連載 | 物聯網架構ServerSuperIO教程》- 18.內建OPC Client,及使用步驟。附:3.5 釋出與更新說明。18.內建OPC Client,及使用步驟     

   18.2.2 使用配置工具,配置基本資訊和讀取的測點

     需要對【基本配置】菜單的内容進行設定,主要參數包括:(1)寫入實時資料庫的表名稱,可以填寫已經存在的表名稱。(2)設定讀取資料的間隔時間,适用于同步和異步讀取資料的方式。(3)設定讀取資料的方式,當服務端資料發生變化時自動觸發讀資料事件、同步讀取資料和異步讀取資料三種方式。(4)設定是否把讀取過來的資料儲存到實時資料庫,如果需要儲存,那麼就要對實時資料庫的配置資訊進行正确設定。(5)是否開啟OPC Client服務,如果開啟的話,那麼基于ServerSuperIO二次開發的宿主程式會具備此項服務,二次開發套件同樣具備這項目服務。

《連載 | 物聯網架構ServerSuperIO教程》- 18.內建OPC Client,及使用步驟。附:3.5 釋出與更新說明。18.內建OPC Client,及使用步驟     

     打開【OPC Client配置】菜單,把OPC Server提供的測點資料按服務、組别和标簽的層次關系讀取過來,并對目前的配置資訊進行儲存,ServerSuperIO主程式啟動後會自動讀取資料資訊。如下圖:

《連載 | 物聯網架構ServerSuperIO教程》- 18.內建OPC Client,及使用步驟。附:3.5 釋出與更新說明。18.內建OPC Client,及使用步驟     

18.2.3 打開實時資料庫服務

     下載下傳“實時資料庫安裝包及二次開發包.rar”(

下載下傳位址

)并進行安裝,安裝之後有服務管理器和企業管理器,如下圖:

《連載 | 物聯網架構ServerSuperIO教程》- 18.內建OPC Client,及使用步驟。附:3.5 釋出與更新說明。18.內建OPC Client,及使用步驟     

18.2.4 運作UI程式或控制台程式

      “ServerSuperIO.UI.exe”和“ServerSuperIO.Host.exe”是二次開發套件中的兩個主程式,啟動任意一個程式都會自動完成整個流程的設定功能。如下圖:

《連載 | 物聯網架構ServerSuperIO教程》- 18.內建OPC Client,及使用步驟。附:3.5 釋出與更新說明。18.內建OPC Client,及使用步驟     

主程式

《連載 | 物聯網架構ServerSuperIO教程》- 18.內建OPC Client,及使用步驟。附:3.5 釋出與更新說明。18.內建OPC Client,及使用步驟     

實時資料庫

18.3     注意事項

      如果OPC Server端建立的測點名稱為“Random.Tag1”,那麼儲存到實時資料庫的名稱變為“RandomTag1”,把“.”點去掉了,主要考慮到各元件之間的相容性的問題。

18.4     應用擴充

     OPC Client本身是一個獨立的服務元件,那麼一個獨立的服務元件是如何與ServerSuperIO進行內建呢?架構本身提供ServerSuperIO.Service. IService服務接口,把OPC Client元件內建到IService接口的實體類中,ServerSuperIO架構會自動執行個體化IService接口對象。

    類似其他的服務也可以這樣搞,例如:從其他資料源讀取資料、模拟量的輸出、LED顯示的輸出等等。IService接口的定義如下:

public interface IService : IServiceConnector,IPlugin
{
        /// <summary>
        ///     服務Key,要求唯一
        /// </summary>
        string ServiceKey { get; }
 
        /// <summary>
        ///     服務名稱
        /// </summary>
        string ServiceName { get;}
        ……
}
      

18.5     視訊示範

1.

[連載]《C#通訊(序列槽和網絡)架構的設計與實作》

2.[

開源]C#跨平台物聯網通訊架構ServerSuperIO(SSIO)介紹

2.

應用SuperIO(SIO)和開源跨平台物聯網架構ServerSuperIO(SSIO)建構系統的整體方案

3.

C#工業物聯網和內建系統解決方案的技術路線(資料源、資料采集、資料上傳與接收、ActiveMQ、Mongodb、WebApi、手機App)

5.ServerSuperIO開源位址:

https://github.com/wxzz/ServerSuperIO

物聯網&內建技術(.NET) QQ群:54256083 

下載下傳位址:

http://www.bmpj.net/thread-14-1-1.html