国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

監(jiān)控數據統(tǒng)一接收平臺的研究與設計

2016-04-29 03:06郭永平朱宇
物聯(lián)網技術 2016年4期

郭永平 朱宇

摘 要:設計了一種能夠適應多種類型的監(jiān)測站、人工采集、外部系統(tǒng)等多種監(jiān)測數據的統(tǒng)一數據接收平臺。該方法對多種類型監(jiān)控系統(tǒng)數據的接收過程進行了分析,采用面向接口的編程技術及數據庫設計技巧,實現了多數據源監(jiān)控信息的接收,對接收的數據統(tǒng)一進行修正及合法識別,為監(jiān)測分析系統(tǒng)提供有效的數據。該監(jiān)控數據統(tǒng)一接收平臺的設計為開發(fā)通用監(jiān)控系統(tǒng)數據伺服程序具有一定的借鑒意義。

關鍵詞:監(jiān)控數據;統(tǒng)一接收平臺;研究與設計;伺服程序

中圖分類號:TP311 文獻標識碼:A 文章編號:2095-1302(2016)04-00-04

0 引 言

遠程監(jiān)控系統(tǒng)廣泛地應用于水文、國土、環(huán)保、道路交通等領域,在自然災害、安全防護等方面發(fā)揮著舉足輕重的作用。監(jiān)控系統(tǒng)中的預測預警功能利用行業(yè)內研究分析模型,對采集的數據進行分析,以圖表、仿真、動畫演進等方式,展示監(jiān)控對象的發(fā)展變化趨勢,用于滿足決策者的信息需求。數據采集負責遠程監(jiān)控系統(tǒng)數據來源,是整個系統(tǒng)的基礎。目前數據采集主要有監(jiān)測站采集、外部系統(tǒng)集成和人工報送三種方式。遠程監(jiān)控系統(tǒng)的網絡結構示意圖如圖1所示。

1 遠程監(jiān)控系統(tǒng)的數據來源

1.1 自動監(jiān)測站采集

隨著無線網絡及傳感器技術的發(fā)展,自動監(jiān)測站成為當前監(jiān)控系統(tǒng)最主要的數據來源,對自動監(jiān)測站數據的接收是統(tǒng)一數據接收平臺的核心內容,需要能夠兼容不同版本的傳輸規(guī)約。監(jiān)測站數據采集系統(tǒng)由自動監(jiān)測站、傳輸網絡、監(jiān)控中心三部分組成,自動監(jiān)測站在數據傳遞前需對傳送信息按照傳輸規(guī)約進行編報,監(jiān)控中心數據接收則需完成對報文的收取、解譯及解譯后數據的容錯、修正、存儲操作。其工作流程如圖2所示,具體如下所示:

(1)監(jiān)測站監(jiān)測到定點報或加報的條件得到滿足;

(2)依據傳輸規(guī)約編制報文;

(3)通過無線網絡將編制好的報文發(fā)送至監(jiān)測中心工控機上;

(4)工控機上安裝的數據接收程序對報文進行接收;

(5)將接收到的報文按照傳輸規(guī)約進行解包,將其解譯為人工可以識別的數字;

(6)根據解譯出報文中監(jiān)測站的信息、修正信息和設定的閾值,按照一定的規(guī)則進行容錯、修正處理;

(7)對處理的結果進行存儲。

1.2 外部系統(tǒng)數據集成

外部系統(tǒng)數據是遠程監(jiān)控系統(tǒng)數據的補充來源之一,具有成本低、數據量大、避免重復投資等特點。如水質監(jiān)測分析系統(tǒng)需要集成固定實驗室系統(tǒng)的檢測數據;水雨情監(jiān)測預警系統(tǒng)需要集成氣象局雨量監(jiān)測數據、水文局水位監(jiān)測數據。其數據采集方式一般使用發(fā)布與訂閱模式進行數據集成。具體步驟如下:

(1)發(fā)布方將發(fā)送的數據寫入到接收方可以操作的區(qū)域,通知接收方進行數據收?。?/p>

(2)接收方讀取文件,將數據存儲到數據庫中。

1.3 人工采集

人工采集模式通過人工觀察,將觀察結果通過移動終端App或基于PC端的Web應用系統(tǒng)進行上報,上報至監(jiān)測中心。

2 傳統(tǒng)數據接收平臺存在的問題

傳統(tǒng)的某一版本的數據接收程序僅完成使用特定傳輸規(guī)約自動監(jiān)測站的數據采集,依賴于監(jiān)控系統(tǒng)定義的傳輸規(guī)約及特定項目的數據容錯、修正規(guī)則。外部數據集成及人工采集直接寫入分析系統(tǒng)的數據庫中,即默認了這兩部分數據的有效性。對傳統(tǒng)數據接收程序進行分析后,不難發(fā)現存在四點缺陷。

2.1 預警預報系統(tǒng)與數據接收系統(tǒng)耦合度高

預警預報系統(tǒng)的職責是使用相應的數據模型和采集到的數據對現場狀況進行分析預測,提供告警服務和輸出變化趨勢分析結果,并不關心數據來源及數據正確與否。人工采集和外部數據集成的數據直接寫入分析系統(tǒng)數據庫中,預警預報系統(tǒng)除需完成分析預測,還需對這部分數據的合法性進行驗證和修正。

2.2 維護成本高

自動監(jiān)測站在不同時期的傳輸規(guī)約和業(yè)務規(guī)則會發(fā)生相應的變化,傳統(tǒng)接收程序是基于具體業(yè)務規(guī)則開發(fā)的,而不是基于抽象接口,在業(yè)務規(guī)則發(fā)生變化時,程序維護工作量大,且容易出錯。

2.3 可移植性差

不同項目由于監(jiān)測對象及應用地區(qū)不同,其傳輸規(guī)約和數據處理不同。傳統(tǒng)的數據接收程序無法進行移植,必須修改原有程序,成果的復用僅僅是基于代碼級別的,無法實現可配置化的開發(fā),程序移植性差,增加了單個項目的開發(fā)成本。

2.4 故障排查困難

監(jiān)控系統(tǒng)中信息加工的環(huán)節(jié)很多,傳感器、編報軟件、解譯程序、分析算法、安裝工藝均有可能存在缺陷。在系統(tǒng)運行階段,當發(fā)生不可預期的錯誤時,無法進行追溯,從而無法準確的預判系統(tǒng)出現問題的環(huán)節(jié)。沒有保留處理過程數據,不易排查發(fā)生故障的原因。

3 概要設計

3.1 框架設計

數據統(tǒng)一接收平臺為所有數據采集模式使用統(tǒng)一的數據輸出接口。接收平臺先將接收到的原始數據存入本地數據庫原始數據表中,由數據處理模塊統(tǒng)一完成數據的驗證與修正,對于不能滿足分析系統(tǒng)對采集頻率有要求的監(jiān)測項目,利用平臺提供人機交互接口進行統(tǒng)一插補。平臺將數據接收使用的數據庫同分析使用的數據庫進行隔離,分析系統(tǒng)僅轉移接收數據庫中的合法數據。數據統(tǒng)一接收平臺是按照分層模式進行設計的,其應用層和數據接收組件主要通過數據層進行耦合,耦合度比較低。數據統(tǒng)一接收平臺應用框架圖如圖3所示。

(1)應用層:是人機交互的接口,功能有實時數據顯示、原始數據查詢、質疑數據人工干預、數據插補及出錯診斷、參數設置等。同時為數據接收組件提供了標準的調用接口,是報文接收、解譯及解譯后的數據處理組件的調度程序。

(2)數據層:臨時存儲數據的本地數據庫,包括監(jiān)測站信息、接收到的原始數據、經數據處理程序處理后的質疑數據和合法數據等。

(3)支撐層:由數據接收統(tǒng)一平臺的應用組件組成,包括報文接收、報文解譯、數據處理、數據訪問、數據集成等應用組件。

(4)網絡層:包括傳輸網絡和監(jiān)控中心的軟硬件環(huán)境。

(5)采集層:包括自動監(jiān)測站、外部系統(tǒng)和手工報送的數據。

3.2 本地數據庫設計

本地數據庫用于存儲數據接收的臨時數據庫,為了確保程序運行性能,該數據庫中的數據可以按照一定規(guī)則進行清除。本地數據庫由原始數據表、質疑數據表及合格數據表三部分組成,其中原始數據表存儲接收的原始數據,經過數據處理服務對原始的數據進行處理后,將判斷有問題的數據存入質疑數據表,并推送至工作人員工作桌面,交與工作人員進行人工干預,合格數據則存入合格數據表,為分析系統(tǒng)進行轉移的程序僅和合格數據表發(fā)生關系。本地數據庫實體關系圖如圖4所示。

本地數據庫設計中增加了用于存儲原始數據表,便于進行錯誤溯源的功能。如當數據出現異常時,若數據是自動監(jiān)測站采集的,可由原始數據表中提取原始報文,按照傳輸規(guī)約進行手工解譯,便可分析出錯誤是由監(jiān)測站軟硬件引發(fā)的還是監(jiān)控中心解譯程序引發(fā)的,若為監(jiān)測站軟硬件故障,進一步對出現異常的數據進行頻率分析,即可判定是設備故障還是安裝工藝出現問題。

4 系統(tǒng)實現

數據統(tǒng)一接收平臺使用微軟提供的Visual Studio 2010 軟件開發(fā)平臺進行開發(fā),Visual Studio 2010平臺提供了豐富的界面控件和類庫,為開發(fā)人員提供了極大的便利。接收平臺的本地數據庫選擇MySQL。采用面向接口編程思想進行構件化設計,在自動監(jiān)測站數據接收中,對容易變化的部分使用了工廠方法模式,統(tǒng)一數據接收平臺部分的靜態(tài)類圖如圖5所示。

4.1 應用主程序

為C/S結構的應用程序,監(jiān)控中心運維工作人員與監(jiān)控系統(tǒng)進行交互的接口,為工作人員提供觀察數據接收情況、進行質疑數據的人工處理和數據插補,故障預判等功能。

4.2 數據通訊組件

自動監(jiān)測站與監(jiān)控中心工控機通訊是基于TCP/IP的通訊方式,數據通訊組件采用多線程非阻塞式進行報文接收。Visual Studio 2010平臺提供了TcpListener 、TcpClient、UdpClient等通訊類,使得通訊程序開發(fā)變的非常簡單。

4.3 報文解譯

報文解譯組件引進了工廠方法模式,將主調用程序和具體的實現類進行隔離,它僅依賴于穩(wěn)定的解譯接口和創(chuàng)建解譯實例的工廠接口,與具體的解譯類無關,這樣在數據接收服務程序運行過程中,根據具體運行環(huán)境可動態(tài)創(chuàng)建具體解譯對象,實現可配置化的應用,用于應對傳輸規(guī)約變化。在圖5中,定義工廠方法模式的核心類工廠接口,在接口中有獲取報文解譯實例方法。解譯工廠類是實現了工廠接口的具體類,主調用程序僅依賴相關解譯的接口,而不是具體的實現。將實例的創(chuàng)建放在幾乎不包含業(yè)務邏輯的工廠類中創(chuàng)建,這樣做的好處是代碼結構更清晰。在調用程序和創(chuàng)建工廠之間增加協(xié)調類,協(xié)調類的作用是避免主程序與子工廠交流,進一步隔離了使用者和對象創(chuàng)建者的關系。同時在協(xié)調類中使用反射機制,通過配置文件實現可配置化的應用。在協(xié)調類的構造函數中,讀取配置文件所要創(chuàng)建的業(yè)務對象工廠字符串,通過類的反射實現了工廠對象的創(chuàng)建,由工廠去實例化具體的業(yè)務類,程序代碼并不涉及是對哪種監(jiān)測對象進行監(jiān)測。通過以上代碼可以容易看出,調用主程序只關心要執(zhí)行的操作,具體是哪種工廠創(chuàng)建的實例對其而言是透明的。這樣,當實際工作中的傳輸規(guī)約發(fā)生變化時,我們只需增加一個實現解譯接口的具體類,通過修改配置文件中的使用工廠類名稱,即可實現監(jiān)測數據接收程序的升級或開發(fā),并不對程序原有部分做任何更改。

4.4 數據處理

數據處理模塊是業(yè)務規(guī)則的易變部分,在設計上與報文解譯部分類同,由工廠類進行實例的創(chuàng)建,如圖5中的水質工廠類,能夠創(chuàng)建水質解譯實例和水質數據處理實例。

5 數據訪問

數據訪問模塊對數據庫的連接、數據查詢、更新的二次封裝提供數據集合向實體對象轉化的ORMapping。將對數據庫底層的數據訪問操作和上層的商務邏輯分開,提供了調用程序中的數據查詢、提取、保存等業(yè)務。

6 結 語

監(jiān)控數據統(tǒng)一接收平臺實現了多種數據源的監(jiān)測數據接收問題,使用統(tǒng)一的處理方法,完成了數據的容錯、修正、分類等處理,不間斷地為監(jiān)控數據分析系統(tǒng)提供合法有效的數據。在系統(tǒng)設計中增加了用于存儲臨時數據的本地數據庫,完成了過程數據的存儲,解決錯誤追溯,并將數據接收系統(tǒng)與數據分析系統(tǒng)通過創(chuàng)建不同的數據庫進行隔離,提高了程序的穩(wěn)健性。在業(yè)務規(guī)則易變的報文解譯和數據驗證部分,將工廠方法模式和類的反射機制配合使用,使得程序結構更加清晰,增強了軟件的可維護性,實現了監(jiān)控數據接收服務程序可配置化應用與開發(fā),對開發(fā)通用的監(jiān)測數據接收服務程序具有一定的借鑒意義。

參考文獻

[1]中華人民共和國水利部.水資源監(jiān)控管理系統(tǒng)數據傳輸規(guī)約(SL427-2008)[M].北京:北京科文圖書業(yè)信息技術有限公司,2008.

[2] GAMMA E.Design patterns:abstraction and reuse of object--oriented software[M].Reading,Mass:Addison—Wesley,1995.

[3] 李鳳云,嚴德昆,季峰.GPRS城市供水遠程無線監(jiān)測管理系統(tǒng)[J].機械與電子,2007(1):80-81.

[4] 黃傳華,陳燕,艾麗軍.水資源遠程實時監(jiān)控系統(tǒng)傳輸網絡設計探討[J].中國水利,2004(23):43-44.

[5] 任中方,張華.MVC模式研究的綜述[J].計算機應用研究,2004 (10):1-4.

[6] Kouresh Ardestani,Kevin Hoffman,Dnald Xie.高效掌握ADO.NET—C#編程篇[M]. 張哲峰,譯.北京:清華大學出版社, 2003.

[7]郭永平.水資源信息監(jiān)控系統(tǒng)的設計與實現[D].西安:西安電子科技大學,2012.

[8]中華人民共和國水利部.國家水資源監(jiān)控能力建設項目實施方案(2012-2014)[M].2011.

[9]戴智英.計算機軟件應用及發(fā)展趨勢探析[J].電子技術與軟件工程,2014(4):92.

[10] 楊修志.公路橋梁養(yǎng)護管理工作中凝結的新理念[J].北京公路,2011(1):35-37.

[11]湯濤.NET企業(yè)級應用程序開發(fā)教程[M]. 北京:清華大學出版社, 2005.

谢通门县| 仙桃市| 太谷县| 邓州市| 无极县| 昂仁县| 桦南县| 平武县| 凉山| 金坛市| 德庆县| 泾阳县| 曲松县| 前郭尔| 南康市| 霞浦县| 禹州市| 阜阳市| 商都县| 汽车| 安吉县| 西藏| 犍为县| 龙游县| 黔西县| 漳州市| 楚雄市| 灵川县| 鄯善县| 平阴县| 理塘县| 山西省| 思南县| 彰化县| 东光县| 荆门市| 吴堡县| 边坝县| 江川县| 鱼台县| 吴旗县|