《連載 | 物聯網框架ServerSuperIO教程》- 17.集成Golden實時數據庫,高併發保存測點數據。附:3.4 發佈與版本更新說明。

1.C#跨平臺物聯網通信框架ServerSuperIO(SSIO)介紹html

《連載 | 物聯網框架ServerSuperIO教程》1.4種通信模式機制。git

《連載 | 物聯網框架ServerSuperIO教程》2.服務實例的配置參數說明github

《連載 | 物聯網框架ServerSuperIO教程》- 3.設備驅動介紹數據庫

《連載 | 物聯網框架ServerSuperIO教程》-4.如開發一套設備驅動,同時支持串口和網絡通信。安全

《連載 | 物聯網框架ServerSuperIO教程》- 5.輪詢通信模式開發及注意事項。網絡

《連載 | 物聯網框架ServerSuperIO教程》- 6.併發通信模式開發及注意事項併發

《連載 | 物聯網框架ServerSuperIO教程》- 7.自控通信模式開發及注意事項app

《連載 | 物聯網框架ServerSuperIO教程》- 8.單例通信模式開發及注意事項框架

《連載 | 物聯網框架ServerSuperIO教程》- 9. 協議過濾器,解決一包多發、粘包、冗餘數據ide

《連載 | 物聯網框架ServerSuperIO教程》- 10.持續傳輸大塊數據流的兩種方式(如:文件)

《連載 | 物聯網框架ServerSuperIO教程》- 11.實現設備(驅動)與設備(驅動)交互和級聯控制。

《連載 | 物聯網框架ServerSuperIO教程》- 12.服務接口的開發,以及與雲端雙向交互

《連載 | 物聯網框架ServerSuperIO教程》- 13.自定義視圖顯示接口開發,知足不一樣的顯示需求

《連載 | 物聯網框架ServerSuperIO教程》- 14.配製工具介紹,以及設備驅動、視圖驅動、服務實例的掛載

《連載 | 物聯網框架ServerSuperIO教程》- 15.數據持久化接口的使用

《連載 | 物聯網框架ServerSuperIO教程》- 16.OPC Server的使用步驟


目       錄

17.支持實時數據庫,高併發保存測點數據... 2

17.1        概述... 2

17.2        ServerSuperIO與實時數據庫對接... 4

17.2.1       繼承動態接口,並設置持久化器... 4

17.2.2       增長設備驅動... 5

17.2.3       配製標籤屬性... 6

17.2.4       安裝實時數據庫... 7

17.2.5       配置實時數據庫參數... 7

17.2.6       運行程序... 8

17.3        注意事項... 8

17.4        視頻演示... 8

17.支持實時數據庫,高併發保存測點數據    

17.1     概述

      實時數據庫系統是開發實時控制系統、數據採集系統等的後臺支撐軟件。大量使用實時數據庫系統進行控制系統監控,系統先進控制和優化控制,併爲企業的生產管理和調度、數據分析、決策支持及遠程在線瀏覽提供實時數據服務和多種數據管理功能。實時數據庫已經成爲企業信息化的基礎數據平臺,可直接實時採集、獲取企業運行過程當中的各類數據,並將其轉化爲對各種業務有效的公共信息,知足企業生產管理、企業過程監控、企業經營管理之間對實時信息完整性、一致性、安全共享的需求,可爲企業自動化系統與管理信息系統間創建起信息溝通的橋樑。

      實時數據庫的一個重要特性就是實時性,包括數據實時性和事務實時性。數據實時性是現場IO數據的更新週期,不能不考慮數據的實時性。通常數據的實時性主要受現場設備的制約,特別是對於一些比較老的系統而言,狀況更是這樣。事務實時性是指數據庫對其事務處理的速度。它能夠是事件觸發方式或定時觸發方式。事件觸發是該事件一旦發生能夠馬上得到調度,這類事件能夠獲得當即處理,可是比較消耗系統資源;定時觸發是在必定時間範圍內得到調度權。

     系統框架示意以下圖:

 

      ServerSuperIO做爲物聯網通信框架,是系統體系化建設的關鍵節點,同時也須要後臺持久化服務的支持。實時採集傳感器的點數據,用實時數據庫對採集點數據進行時序存儲是最理想的。

      經過持久化接口進行存儲操做,接口示意以下圖:

 

      結構示意以下圖:

 

17.2     ServerSuperIO與實時數據庫對接

      使用過程比較簡單,在二次開發設備驅動過程當中,繼承動態接口實現自定義屬性保存實時數據;經過配製工做把設備驅動實現自定義的屬性映射成Tag標籤,而後設置持久化器;設備通信後設備驅動會把實時數據更新到實時數據庫中。

17.2.1繼承動態接口,並設置持久化器

     在設備驅動中實現臨時保存數據的動態接口,能夠把流量或信號之類的數據定義成相應的屬性名稱,每次採集到數據後更新相應的屬性。

     代碼以下:

public class DeviceDyn:DeviceDynamic
  {
        public DeviceDyn() : base()
        {
        }
        public override string GetAlertState()
        {
            throw new NotImplementedException("無報警信息");
        }
        private float Flow  {set;get;}      
        private float Signal {set;get;}
}

       開發好動態數據屬性後,在設備驅動的初始化中設置該類持久化器,代碼以下:

public DeviceDriver() : base()
        {
            _devicePara = new DevicePara();
            _deviceDyn = new DeviceDyn();

            //用實時數據庫持久化動態數據
            _deviceDyn.InitDataPersistence(new RDBPersistence());

            _protocol = new DeviceProtocol();
            _contextMenuComponent=new ContextMenuComponent();

        }

       固然,設備驅動的開發不單單包括這些,具體請參見之前的教程。

17.2.2增長設備驅動

     運行「ServerSuperIO.Tool.exe」工具,單擊【基本配置】菜單。把開發好的設備驅動程序集在配置工具中進行信息配置,證實當前的設備驅動在平臺上能夠運行,以下圖:

 

     上面配置的是程序集的基本信息,可供多個設備驅動實例使用。設備驅動在平臺下運行,還須要進行實例化(具體的通信實例),那麼就要掛載設備驅動。掛載過程:建立服務實例,在服務實例下掛載可運行的設備實例。以下圖:

 

17.2.3配製標籤屬性

      運行「ServerSuperIO.Tool.exe」工具,單擊【標籤配置】菜單,把剛設備掛載的可運行設備驅動的動態數據接口的屬性映射成Tag標籤。以下圖:

 

17.2.4安裝實時數據庫

      下載「實時數據庫安裝包及二次開發包.rar」(下載地址)並進行安裝,安裝以後有服務管理器和企業管理器,以下圖:

17.2.5配置實時數據庫參數

     運行「ServerSuperIO.Tool.exe」工具,單擊【基本配置】菜單,啓動OPC Server服務。以下圖:

 

17.2.6運行程序

      能夠運行「ServerSuperIO.Host.exe」或「ServerSuperIO.UI.exe」的宿主程序,也能夠運行自已二次開發的主程序。

17.3     注意事項

     ServerSuperIO服務實例的名稱就是實時數據庫的點表名稱,在配置服務實例名稱的時候儘可能使用字符和數字。

17.4     視頻演示


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

相關文章
相關標籤/搜索