馬海軍,吳超超,李顯坤
(1.宿州市市政工程管理處,安徽 宿州 234000;2.正元地理信息集團股份有限公司,北京 101399)
在講究萬物互聯(lián)的今天,物聯(lián)網(wǎng)在越來越多的領域改變著人們的工作、學習和生活。將物聯(lián)網(wǎng)技術運用于城市地下管網(wǎng)智能監(jiān)控中,可以明顯加快數(shù)據(jù)處理速度,提升數(shù)據(jù)訪問便捷性,減少人工頻繁操作帶來的誤差,但同時也存在著對網(wǎng)絡環(huán)境、軟硬件質(zhì)量、實時通信、視頻圖像處理要求高的缺點。因此,必須系統(tǒng)深入研究物聯(lián)網(wǎng)技術應用于該領域的具體方法,嚴格按照軟件工程思想進行系統(tǒng)設計,確保系統(tǒng)的安全、可靠、便捷。
物聯(lián)網(wǎng)是物物相連的互聯(lián)網(wǎng),是互聯(lián)網(wǎng)的延伸,它利用局部網(wǎng)絡或互聯(lián)網(wǎng)等通信技術把傳感器、控制器、機器、人員和物等通過新的方式連在一起,形成人與物、物與物相連,實現(xiàn)信息化和遠程管理控制。物聯(lián)網(wǎng)應用的關鍵技術主要有識別和感知技術、網(wǎng)絡與通信技術、數(shù)據(jù)挖掘與融合技術等。物聯(lián)網(wǎng)被廣泛應用于智能交通、智慧醫(yī)療、智能家居、環(huán)保監(jiān)測、智能電網(wǎng)、智能農(nóng)業(yè)、安防保衛(wèi)等領域[1]。
一種利用波的干涉記錄被攝物體反射(或透射)光波中信息(振幅、相位)的照相技術[2]。全息攝影是通過一束參考光和被攝物體上反射的光疊加在感光片上產(chǎn)生干涉條紋而成。全息攝影不僅記錄被攝物體反射光波的振幅(強度),而且還記錄反射光波的相對相位,全息攝像實現(xiàn)了影像的360°全方位無死角全覆蓋,被廣泛應用于自動成像、智能監(jiān)控、視頻傳播等領域中。
計算機網(wǎng)絡技術,是利用計算機技術與通信技術,將不同的計算機進行互聯(lián)互通,實現(xiàn)資源共享、信息傳遞、網(wǎng)頁瀏覽、上傳下載等功能。計算機網(wǎng)絡技術的基礎是OSI 7 層協(xié)議制度,其核心是TCP/IP 技術,通過硬件或者無線協(xié)議的方式,按照嚴密的協(xié)議構筑完善的網(wǎng)絡空間,一般按網(wǎng)絡范圍劃分為局域網(wǎng)(LAN)、城域網(wǎng)(MAN)、廣域網(wǎng)(WAN)。
大數(shù)據(jù)技術是一種規(guī)模大到在獲取、存儲、管理、分析方面大大超出了傳統(tǒng)數(shù)據(jù)庫軟件工具能力范圍的數(shù)據(jù)集合,具有海量的數(shù)據(jù)規(guī)模、快速的數(shù)據(jù)流轉、多樣的數(shù)據(jù)類型和價值密度低4 大特征。大數(shù)據(jù)最大的特征是數(shù)據(jù)量巨大,大到傳統(tǒng)的數(shù)據(jù)處理軟件如Excel、Mysql 等都無法很好地支持分析。這也意味著大數(shù)據(jù)階段,無論是數(shù)據(jù)的存儲還是加工計算等過程,用到的處理技術也會完全不同,如Hadoop、Spark 等[3]。
能夠實現(xiàn)實施檢測不同物聯(lián)網(wǎng)模塊應該完成的內(nèi)容,將監(jiān)測數(shù)據(jù)實時傳遞到系統(tǒng)中,在不同計算機之間進行視頻圖像信息文件的實時發(fā)送和接收,智能計算出異常數(shù)據(jù)并做出初步判斷,實現(xiàn)對數(shù)據(jù)庫的增刪改查等操作,在出現(xiàn)明顯異常情況時能夠進行語音報警等功能。
軟件設計整體上要界面清晰、簡潔,人機交互性強,算法時空復雜度低,能自動檢測異常輸入等情況。
總體結構上符合計算機C/S 三層架構體系,特別是數(shù)據(jù)層能夠脫離主機系統(tǒng)和各個客戶端,實現(xiàn)云端訪問,減輕系統(tǒng)存儲大量數(shù)據(jù)的壓力,使得能夠向核心業(yè)務聚焦,減輕系統(tǒng)的硬件和通信壓力。
基于物聯(lián)網(wǎng)的城市地下管網(wǎng)智能監(jiān)控系統(tǒng)需要設置5 個不同的組成部分,分別是交互層、傳輸層、監(jiān)視層、數(shù)據(jù)層和運算層。交互層用于系統(tǒng)與用戶之間進行交互,接受用戶輸入的信息,向用戶反饋實時信息。傳輸層用于將不同信息在不同計算機結點之間進行傳遞,將每個重點監(jiān)控位置的物聯(lián)網(wǎng)模塊感應到的信息傳遞到主機上。監(jiān)視層用于實時監(jiān)測重點部位和設備的狀態(tài)情況,對視頻圖像數(shù)據(jù)進行初步識別,將出現(xiàn)異常的數(shù)據(jù)或者隨機抽取的數(shù)據(jù)送運算層進行計算甄別。數(shù)據(jù)層關注數(shù)據(jù)存儲及管理操作,通常選擇成熟的關系數(shù)據(jù)庫管理系統(tǒng)來承擔這項任務,具體到本軟件,建立7 個數(shù)據(jù)庫。運算層使用機器訓練方法,對于待運算的數(shù)據(jù)進行計算,得出是否正常的結論,并將結果傳輸?shù)浇换?,能夠讓用戶實時觀測到。
4.2.1 硬件環(huán)境的確定
在服務器與物理距離最近的客戶端之間建立光纖連接,在服務器端與光纖連接處搭建波長分割復用器,在該客戶端與光纖連接處搭建解復用器。使搭載不同信息的不同波長光信號能夠在該光線中傳輸,并正確到達該客戶端。在最近客戶端與其他客戶端之間建立光纖連接,根據(jù)物理距離的不同選擇不同的網(wǎng)絡拓撲結構,達到使用光纖數(shù)量最少的目的。系統(tǒng)的參數(shù)配置可通過后臺的配置文件完成,包括設備機箱ID、內(nèi)部卡槽ID、節(jié)目碼流名稱和相應的主備路告警門限。
4.2.2 編程語言的確定
鑒于Python 語言具有語法邏輯嚴謹、網(wǎng)絡編程功能強大、封裝性好、更適應于人工智能開發(fā)等特點[4],本系統(tǒng)使用Python語言,在Visual Studio 2015 平臺上進行開發(fā)。
4.2.3 數(shù)據(jù)庫的設計
本系統(tǒng)使用SQL SERVER2005 進行數(shù)據(jù)庫的設計與開發(fā)。大部分面向對象高級編程語言封裝了連接和操作SQL SERVER 的類,方便系統(tǒng)與數(shù)據(jù)庫進行快速連接,直接在界面層對數(shù)據(jù)庫進行增刪并改操作。本系統(tǒng)需要建立以下數(shù)據(jù)庫:用戶管理信息表、視頻信息表、圖像信息表、報警信息表、文件信息表、已發(fā)送數(shù)據(jù)信息表、客戶端信息表。
本文對5 個不同的部分分別進行設計實現(xiàn)。
4.3.1 交互層的設計實現(xiàn)
交互層使用專門的窗體,用于向用戶實時顯示當前監(jiān)控狀態(tài),并接受用戶所有輸入情況,進行窗體的切換和顯示狀態(tài)的變化。交互層所屬類設置3 個屬性,分別表示用戶是否輸入、當前顯示頁面播放內(nèi)容屬于哪個部分及是否多頁面顯示,設置5 個方法,分別表示根據(jù)用戶輸入進行響應、根據(jù)用戶點擊不同命令按鈕進行響應、變換顯示狀態(tài)、切換不同頁面和回放或者提取當前頁面進行放大分析。
4.3.2 傳輸層的設計實現(xiàn)
傳輸層使用專門的窗體,用于系統(tǒng)接收客戶端發(fā)送的信息,向客戶端發(fā)送信息,并在一個完整數(shù)據(jù)接收或者發(fā)送完畢后實時更改對應數(shù)據(jù)庫信息。所屬類設置2 個屬性,分別表示接收/發(fā)送文件類型(由相應客戶端發(fā)送時設置前綴得到)和接收的超時時間,設置4 個方法,分別表示監(jiān)聽、接收、發(fā)送和實時更新。
在傳輸層中,主要是進行數(shù)據(jù)的實時發(fā)送與接收,將不同計算機連接成真正的網(wǎng)絡,實現(xiàn)“云計算”功能。該模塊發(fā)送接收功能的實現(xiàn),通過以TCP 連接為主,UDP 連接為輔的形式進行。在過多強調(diào)數(shù)據(jù)安全性和傳輸可靠性的情況下,使用前者進行連接;在過多強調(diào)數(shù)據(jù)傳輸速度和實現(xiàn)群發(fā)功能的情況下,使用后者進行連接。
4.3.3 監(jiān)測層的設計實現(xiàn)
監(jiān)測層不使用專門的窗體,在計算機后臺運行,并配合各個物聯(lián)網(wǎng)模塊和全息攝影設備進行。監(jiān)測層所屬類設置較為簡單,僅有一個屬性和一個方法,分別為同時檢測的最大數(shù)量和調(diào)整物聯(lián)網(wǎng)模塊參數(shù),但卻是整個系統(tǒng)的核心,對系統(tǒng)能否正常發(fā)揮效能起到?jīng)Q定性作用。
依托宿州市智慧管網(wǎng)項目、亳州市智慧管網(wǎng)項目、衢州市化工園區(qū)管網(wǎng)項目進行測試[5]。使用黑盒測試方法,即不關注內(nèi)部過程具體怎么實現(xiàn),只關注輸入的正確性,檢測最后輸出結果的可靠性和準確性。
3 個項目分別選取不同的管道不同的位置共計100 處實際場景進行模擬測試,安裝好物聯(lián)網(wǎng)模塊后,運行該系統(tǒng)。分別考察該系統(tǒng)對異常情況鑒別率、計算結果正確率、報警次數(shù)、延時傳遞次數(shù)等指標。為了使測試具有區(qū)分度,防止所選取的測試位置沒有異常情況的出現(xiàn),每個測試過程中均人為制造相當數(shù)量的異常情況。
通過綜合3 個項目的測試結果,使用算數(shù)相加取平均值的方法,計算出異常情況鑒別率為90.5%,計算結果正確率為92.3%,延時傳遞次數(shù)為26,基本上滿足了一般場景下的需求,但異常情況鑒別率和計算結果正確率還有進一步提升的空間。整個實驗過程報警次數(shù)為0,說明系統(tǒng)能夠正常運轉,但同時也說明在試驗場景中異常情況設置不夠,以致區(qū)分度不夠的情況出現(xiàn)。
通過進行測試分析可知:本系統(tǒng)能夠滿足一般場景下的城市地下智能管網(wǎng)監(jiān)控工作,但依然有較大提升空間,需要在下步工作中進一步提升異常情況鑒別率和計算正確率,因此,要求對相應算法進行完善和改進,同時需要對測試中異常情況的設置更加突出實際運用效果。
基于物聯(lián)網(wǎng)的城市地下管網(wǎng)智能監(jiān)控系統(tǒng),在實驗測試中盡管表現(xiàn)較好,但應該看到地下管網(wǎng)種類繁多,具有復雜性、多變性和不可預測性,因此,測試中難以窮盡所有的地下管網(wǎng)可能情況。在實踐中需要進一步針對不同使用場景和使用目的,對該系統(tǒng)的使用動態(tài)效能進行持續(xù)監(jiān)測,不斷提出改進方法,做出具體改進舉措,以不斷降低問題發(fā)生的頻率,提升該系統(tǒng)在復雜地下管網(wǎng)監(jiān)控中的實際應用效果。在下一步的工作中主要有以下幾個努力方向:一是進一步提高系統(tǒng)運行的準確率;二是進一步提高系統(tǒng)運行效率;三是改進相關算法,進一步提升適應更多更復雜情況的能力;四是在硬件和網(wǎng)絡架構上進行改進和提升。