徐繼紅
(新疆塔里木河流域希尼爾水庫管理局,新疆庫爾勒841000)
希尼爾水庫異構(gòu)網(wǎng)絡水情監(jiān)測智能網(wǎng)關(guān)的應用
徐繼紅
(新疆塔里木河流域希尼爾水庫管理局,新疆庫爾勒841000)
為實現(xiàn)水庫水情監(jiān)測中異構(gòu)網(wǎng)絡的統(tǒng)一管理,該文研究了以E x y no s 4412為核心處理器的智能網(wǎng)關(guān),設計了基于A ndr o i d的智能網(wǎng)關(guān)應用軟件。異構(gòu)網(wǎng)絡管理過程為:配置網(wǎng)關(guān)通信接口、數(shù)據(jù)采集單元、傳感器數(shù)據(jù)流的字段描述等信息,建立基于X ML的信息配置文件,數(shù)據(jù)接收線程根據(jù)配置文件描述與接收數(shù)據(jù)流逐字節(jié)段比對,實現(xiàn)傳感器數(shù)值從數(shù)據(jù)流中定位、解析、數(shù)值轉(zhuǎn)換得到監(jiān)測參數(shù)實際值,并與監(jiān)測參數(shù)I D組成鍵值關(guān)系,最終存儲于SQ L i t e數(shù)據(jù)庫,提供接口給上層模塊進行實時數(shù)據(jù)查詢和歷史數(shù)據(jù)查詢。系統(tǒng)對Zigbee、R S-485、Wi-F i 3種異構(gòu)網(wǎng)絡進行了試驗,運行結(jié)果表明,智能網(wǎng)關(guān)實現(xiàn)了監(jiān)測參數(shù)解析、存儲和顯示功能,與配置信息描述實現(xiàn)了對應,滿足水庫水情監(jiān)測異構(gòu)網(wǎng)絡的統(tǒng)一管理要求,具有較好的穩(wěn)定性,可進一步擴展異構(gòu)網(wǎng)絡。
水庫;網(wǎng)關(guān);網(wǎng)絡;A ndr o i d;數(shù)據(jù)流
近年來,隨著信息技術(shù)的發(fā)展,物聯(lián)網(wǎng)技術(shù)在水庫水情監(jiān)測方面得到了廣泛應用,通過傳感器獲取水庫水情信息,再通過無線通信或者總線通信兩種方式實現(xiàn)傳輸[1]。研究者們通過部署Zigbee、Wi-F i、藍牙、G SM、R F I D等無線傳感器網(wǎng)絡,以及C A N總線、R S485總線等有線網(wǎng)絡實現(xiàn)對水庫水情信息的監(jiān)測,再通過3G、G P R S、Wi-F i、以太網(wǎng)等方式接入互聯(lián)網(wǎng),物聯(lián)網(wǎng)網(wǎng)關(guān)主要用于異構(gòu)網(wǎng)絡的接入以及協(xié)議的轉(zhuǎn)發(fā)[2,3]。
目前,物聯(lián)網(wǎng)網(wǎng)關(guān)研究大多針對特定的網(wǎng)絡進行開發(fā),各個網(wǎng)絡的數(shù)據(jù)協(xié)議都是在網(wǎng)關(guān)應用程序中固化,變更網(wǎng)絡傳輸?shù)臄?shù)據(jù)協(xié)議或者調(diào)整網(wǎng)絡節(jié)點的傳感器接線方式需要重新對網(wǎng)關(guān)應用程序進行編程[4]。無線傳感器網(wǎng)絡、總線網(wǎng)絡、互聯(lián)網(wǎng)等網(wǎng)絡之間的數(shù)據(jù)結(jié)構(gòu)、傳輸方式等各不相同,如何實現(xiàn)異構(gòu)網(wǎng)絡協(xié)議的統(tǒng)一轉(zhuǎn)換以及網(wǎng)絡節(jié)點的統(tǒng)一管理是物聯(lián)網(wǎng)技術(shù)在水庫水情監(jiān)測中應用的一個核心。本文基于A ndr o i d(安卓)操作系統(tǒng)的水庫水情監(jiān)測智能網(wǎng)關(guān)平臺,該平臺集成高速計算能力的處理器,實現(xiàn)多種異構(gòu)網(wǎng)絡接口,滿足智能網(wǎng)關(guān)廣泛的網(wǎng)絡接入能力和可管理的要求,設計了運行于智能網(wǎng)關(guān)的異構(gòu)網(wǎng)絡管理應用軟件,實現(xiàn)了多種異構(gòu)網(wǎng)絡信息的統(tǒng)一配置、數(shù)據(jù)解析、數(shù)據(jù)存儲、數(shù)據(jù)顯示功能。在水庫控制中心構(gòu)建感知端的水情信息監(jiān)測網(wǎng)絡群組、構(gòu)建異構(gòu)網(wǎng)絡管理的智能網(wǎng)關(guān),通過在網(wǎng)關(guān)的觸控屏界面進行異構(gòu)網(wǎng)絡配置以及網(wǎng)絡節(jié)點數(shù)據(jù)傳輸協(xié)議配置,實現(xiàn)了智能網(wǎng)關(guān)對異構(gòu)網(wǎng)絡節(jié)點中的各水情點信息的存儲與監(jiān)測功能,研究結(jié)果可指導水庫調(diào)度向精準化、信息化、智能化發(fā)展。
根據(jù)水庫水情物聯(lián)網(wǎng)的要求,智能網(wǎng)關(guān)主要是實現(xiàn)多種水庫水情監(jiān)測網(wǎng)絡群組及其互聯(lián)網(wǎng)接入方式等多種異構(gòu)網(wǎng)絡的接口和管理,同時還能實現(xiàn)水庫水情監(jiān)測信息的可視化界面。其功能包括與水庫水情監(jiān)測網(wǎng)絡群組中部署的數(shù)據(jù)采集單元通信,實現(xiàn)各種水情傳感器信息參數(shù)的采集;同時智能網(wǎng)關(guān)可以通過Internet、3G等互聯(lián)網(wǎng)方式實現(xiàn)與遠程數(shù)據(jù)服務器、應用服務器之間的通信接入[5]。
智能網(wǎng)關(guān)作為信息集中處理以及異構(gòu)網(wǎng)絡數(shù)據(jù)交互的平臺,需要有較快的運算處理速度和豐富的外設資源。本系統(tǒng)的智能網(wǎng)關(guān)采用四核Cortex-A9架構(gòu)的Exynos4412為核心處理器,運行主頻為1.5G Hz,集成1G B內(nèi)存和4G B非易失存儲器,集成了可視化觸控電容屏,并支持U SB、RS-232、RJ45、Wi-Fi、3G、SP I等接口,并借助多路串口通信接口擴展實現(xiàn)Zigbee、RS-485、藍牙等通信功能,其硬件系統(tǒng)結(jié)構(gòu)如圖1所示。
圖1 智能網(wǎng)關(guān)硬件架構(gòu)
智能網(wǎng)關(guān)運行以J a v a為編程語言,采用Ec1iPse+JDK+SDK+ADT+AVD構(gòu)建客戶端應用軟件的開發(fā)環(huán)境,實現(xiàn)的主要功能有∶接入到網(wǎng)關(guān)的異構(gòu)網(wǎng)絡配置、異構(gòu)網(wǎng)絡協(xié)議封裝、異構(gòu)網(wǎng)絡協(xié)議解析、數(shù)據(jù)庫管理、水庫水情參數(shù)監(jiān)測[6]。
3.1異構(gòu)網(wǎng)絡配置
實現(xiàn)接入智能網(wǎng)關(guān)平臺的異構(gòu)網(wǎng)絡的配置,包括智能網(wǎng)關(guān)各個通道的連接屬性和通信波特率以及We b服務器的I P地址等信息。對異構(gòu)網(wǎng)絡的數(shù)據(jù)采集單元的基本信息進行定義,包括唯一標識號、所屬通道、名稱、通信數(shù)據(jù)流。其中,通信數(shù)據(jù)流是由一串具有實際含義的數(shù)值用來描述異構(gòu)網(wǎng)絡中的監(jiān)測信息。設定首字節(jié)為異構(gòu)網(wǎng)絡類型標識(本文定義Zigbee網(wǎng)絡數(shù)據(jù)標識為11(he x),R S-485網(wǎng)絡數(shù)據(jù)標識為24(he x),Wi-F i協(xié)議標識為69(he x)),并根據(jù)各個已知的通信協(xié)議對字節(jié)段進行定義(包括∶字節(jié)段長度、監(jiān)測數(shù)值I D、含義、進制含義、偏移量、轉(zhuǎn)換倍數(shù)、單位)。
3.2異構(gòu)網(wǎng)絡協(xié)議封裝
由X M具有跨平臺性的數(shù)據(jù)表述能力和數(shù)據(jù)解析工具的多樣化,采用基于X ML實現(xiàn)數(shù)據(jù)的結(jié)構(gòu)化描述是一種通用且有效的方法。借助A ndr o i d的SD K提供的X ML編程接口,能夠?qū)崿F(xiàn)異構(gòu)網(wǎng)絡數(shù)據(jù)的協(xié)議封裝。實現(xiàn)原理∶首先,創(chuàng)建X ML配置文件的Document對象,根據(jù)異構(gòu)網(wǎng)絡配置模塊的輸入信息,創(chuàng)建采集單元基本信息子元素描述。其次,當數(shù)據(jù)流配置按鈕觸發(fā),則以字節(jié)段描述結(jié)束為條件,循環(huán)地封裝數(shù)據(jù)流的字節(jié)段長度、監(jiān)測數(shù)值I D、含義、進制含義、偏移量、轉(zhuǎn)換倍數(shù)、單位等信息成X ML數(shù)據(jù)結(jié)構(gòu)的子元素。最終以U T F-8編碼格式寫入X ML配置文件庫。
3.3異構(gòu)網(wǎng)絡協(xié)議解析
Android應用程序通過NI(JavaNativeInterface)對底層內(nèi)核資源進行調(diào)用,實現(xiàn)與C語言編寫的串口通信程序進行交互,本模塊以數(shù)據(jù)流的方式與匯聚節(jié)點通信交互。系統(tǒng)運行過程中實時地對網(wǎng)絡進行監(jiān)聽,當有數(shù)據(jù)流產(chǎn)生的中斷發(fā)生,取出數(shù)據(jù)流第1字節(jié)的協(xié)議標識,查詢X ML配置文件的數(shù)據(jù)流定義,判斷網(wǎng)絡的類型并運行各自的線程。線程中,根據(jù)數(shù)據(jù)流定義以及系統(tǒng)提供的X ML的編程軟件接口逐字節(jié)地查詢數(shù)據(jù)流,主要原理為∶根據(jù)字節(jié)段長度檢索數(shù)據(jù)流對應的數(shù)據(jù),判斷“監(jiān)測數(shù)值I D”是否為“nu1 1”,如果為“是”則不進行解析;如果為“否”則根據(jù)“進制含義”進行數(shù)值轉(zhuǎn)換,再根據(jù)“偏移量”和“轉(zhuǎn)換倍數(shù)”計算出具體含義的數(shù)據(jù),最終組合成以“監(jiān)測數(shù)值I D”為ke y,具體含義的數(shù)據(jù)為va1ue的多個maP(<key,va1ue>)關(guān)系表,并調(diào)用數(shù)據(jù)庫管理接口存儲。
3.4數(shù)據(jù)庫管理
在程序運行初始階段,判斷已經(jīng)存在數(shù)據(jù)庫表格中的列字段描述與X ML配置文件的數(shù)據(jù)結(jié)構(gòu)描述是否一致,不一致則進行列字段描述的匹配。然后,在異構(gòu)網(wǎng)絡解析的整個持續(xù)過程中,周期性地查詢m a P關(guān)系表,將每個監(jiān)測數(shù)值I D所對應的數(shù)據(jù),存儲到SQLite關(guān)系型數(shù)據(jù)庫表格中。最后,本模塊對所存儲的數(shù)據(jù)進行統(tǒng)一管理,提供上層訪問接口函數(shù)。
3.5水庫水情參數(shù)監(jiān)測
水庫水情參數(shù)監(jiān)測模塊查詢X ML配置文件中對數(shù)據(jù)采集單元描述,選取“位置”、“監(jiān)測參數(shù)含義”、“監(jiān)測數(shù)值I D”、“單位”等元素的描述,根據(jù)預先通過J a v a代碼配置好的界面顯示風格,生成軟件初始界面。并實時地通過調(diào)用數(shù)據(jù)庫管理模塊查詢各個“監(jiān)測數(shù)值I D”所對應的具體數(shù)值,結(jié)合“單位”的描述對號地填充到界面的指定組件中,實現(xiàn)水庫水情監(jiān)測參數(shù)的實時更新以及歷史數(shù)據(jù)查詢。
系統(tǒng)在新疆希尼爾水庫進行安裝應用,采用具有Zigbee通信功能的數(shù)據(jù)采集單元、具有R S-485通信接口的數(shù)據(jù)采集單元、具有Wi-F i通信功能的圖像監(jiān)控攝像機構(gòu)建感知層網(wǎng)絡。Zigbee協(xié)調(diào)器模塊、R S-485轉(zhuǎn)R S-232模塊、無線Wi-F i路由器分別作為3種異構(gòu)網(wǎng)絡的匯聚點,接入智能網(wǎng)關(guān)。
4.1異構(gòu)傳感器網(wǎng)絡群組構(gòu)建
Zigbee通信系列的數(shù)據(jù)采集單元采用SZ 06系列的無線數(shù)據(jù)采集設備。該采集單元具有模擬量輸入采集、Zigbee無線通信等功能。通過計算機的超級終端配置數(shù)據(jù)采集單元的I D、端口功能、數(shù)據(jù)傳輸方式以及傳輸速率。在水情監(jiān)測中,部署數(shù)個SZ 06系列數(shù)據(jù)采集單元,實現(xiàn)對水庫進水量、放水量、水庫水位、閘門開度、降水量、風速、溫度等傳感器信息采集。Zigbee數(shù)據(jù)采集單元與Zigbee協(xié)調(diào)器以星型結(jié)構(gòu)拓撲網(wǎng)絡進行通信,Zigbee協(xié)調(diào)器與智能網(wǎng)關(guān)的異構(gòu)網(wǎng)絡通道接口有線連接,以1m i n為周期主動上傳數(shù)據(jù)。
R S-485通信接口系列的數(shù)據(jù)采集單元采用富奧通科技的智能型自動氣象站設備單元,可獲取風向、風速、雨量、空氣溫度、空氣濕度、等數(shù)據(jù)信息。氣象數(shù)據(jù)傳輸方式為主動上傳,與智能網(wǎng)關(guān)的另一路異構(gòu)網(wǎng)絡通道接口有線連接,以1m i n為周期主動上傳數(shù)據(jù)。Wi-F i通信模塊是通過3G無線路由器生成的Wi-F i熱點,實現(xiàn)威視達康網(wǎng)絡攝像機和智能網(wǎng)關(guān)的Wi-F i接入并實現(xiàn)二者間數(shù)據(jù)流的傳輸,并使智能網(wǎng)關(guān)通過3G的流量接入互聯(lián)網(wǎng),以2h為周期主動上傳數(shù)據(jù)。
4.2智能網(wǎng)關(guān)應用
水庫水情數(shù)據(jù)采集單元網(wǎng)絡群組根據(jù)各自的通信匯聚流,傳輸至智能網(wǎng)關(guān);程序開始運行后,讀取X ML配置文件初始化傳輸速率并中斷使能,生成異構(gòu)網(wǎng)絡配置界面和水庫水情參數(shù)監(jiān)測界面;異構(gòu)網(wǎng)絡配置界面實現(xiàn)數(shù)據(jù)采集單元各節(jié)點配置信息的可視化交互界面,根據(jù)數(shù)據(jù)采集節(jié)點在水庫部署情況以及數(shù)據(jù)流定義進行輸入配置,實現(xiàn)基于X ML數(shù)據(jù)結(jié)構(gòu)描述的異構(gòu)網(wǎng)絡數(shù)據(jù)統(tǒng)一描述,存儲于X ML配置文件庫。當有數(shù)據(jù)流傳輸時,數(shù)據(jù)解析模塊將數(shù)據(jù)流與X ML配置文件的數(shù)據(jù)流描述進行比對,判斷當前數(shù)據(jù)流的協(xié)議類型,解析得到實際含義的信息,調(diào)用數(shù)據(jù)庫管理模塊存儲至數(shù)據(jù)庫;水庫水情參數(shù)監(jiān)測界面查詢X ML配置文件庫以及調(diào)用數(shù)據(jù)庫管理模塊對實現(xiàn)信息顯示。
4.3去異構(gòu)化的水庫水情參數(shù)監(jiān)測
智能網(wǎng)關(guān)根據(jù)X ML配置文件的各個監(jiān)測參數(shù)描述(<Position>、<meaning>、<sid>、<unit>)的內(nèi)容以及預先通過軟件編程設定的界面顯示風格,在智能網(wǎng)關(guān)的觸控屏上首先填充添加位置信息,再填充監(jiān)測參數(shù)名稱并以該監(jiān)測參數(shù)I D作為關(guān)鍵字。實時監(jiān)測模塊周期性地調(diào)用數(shù)據(jù)庫管理模塊查詢界面的監(jiān)測參數(shù)I D所對應的具體數(shù)值并與單位進行字符連接,再對號地填充到監(jiān)測參數(shù)I D對應的數(shù)值顯示View組件。歷史數(shù)據(jù)模塊根據(jù)地點選擇生成監(jiān)測參數(shù)名稱的按鈕,再根據(jù)時間段選擇以及控件點擊觸發(fā),調(diào)用數(shù)據(jù)庫管理模塊查詢監(jiān)測參數(shù)I D所對應的歷史數(shù)值,填充到界面的List-View組件,并根據(jù)achartengine編程接口生成歷史數(shù)據(jù)曲線。其中水情圖像數(shù)據(jù)由于非10進制表示的形式,屏蔽了歷史數(shù)據(jù)顯示功能。
4.4性能測試
系統(tǒng)開始運行,運行周期為14d。智能網(wǎng)關(guān)實現(xiàn)了部署在水庫水情監(jiān)測參數(shù)的實時更新和歷史數(shù)據(jù)記錄的查詢。對X ML配置文件和SQ L i t e數(shù)據(jù)庫中存儲的各個水情監(jiān)測參數(shù)進行分析,智能網(wǎng)關(guān)實現(xiàn)了Zigbee、R S-485、Wi-F 3種異構(gòu)網(wǎng)絡的統(tǒng)一管理,存儲了14d的Zigbee網(wǎng)絡的水情監(jiān)測參數(shù)、R S-485網(wǎng)絡的水情監(jiān)測參數(shù)、以及Wi-F i網(wǎng)絡的水庫圖像監(jiān)測參數(shù)。為期14d運行的智能網(wǎng)關(guān)通過異構(gòu)網(wǎng)絡相關(guān)信息的配置,根據(jù)配置信息描述實現(xiàn)了異構(gòu)網(wǎng)絡數(shù)據(jù)解析、存儲、監(jiān)測、查詢等功能,運行效果具有較好的穩(wěn)定性,解決了智能網(wǎng)關(guān)廣泛的網(wǎng)絡接入和統(tǒng)一管理的能力,滿足水庫異構(gòu)網(wǎng)絡水情監(jiān)測的要求,可為水庫異構(gòu)網(wǎng)絡水情監(jiān)測的搭建提供通用平臺,避免智能網(wǎng)關(guān)應用軟件二次開發(fā)。
(1)對異構(gòu)網(wǎng)絡通道、數(shù)據(jù)采集單元基本信息、接收數(shù)據(jù)流的字節(jié)段屬性進行配置,最終生成基于X ML的數(shù)據(jù)結(jié)構(gòu)描述的配置文件。在異構(gòu)網(wǎng)絡解析過程中,將數(shù)據(jù)流與X ML數(shù)據(jù)結(jié)構(gòu)描述進行逐字節(jié)段比對并解析出具體含義數(shù)值,實現(xiàn)水庫水情異構(gòu)網(wǎng)絡監(jiān)測參數(shù)的去異構(gòu)化存儲。上層模塊調(diào)用數(shù)據(jù)庫管理模塊實現(xiàn)監(jiān)測參數(shù)的實時查詢以及歷史查詢,準確地實現(xiàn)了水庫水情異構(gòu)網(wǎng)絡的監(jiān)測參數(shù)在智能網(wǎng)關(guān)的融合。
(2)異構(gòu)網(wǎng)絡通道屬性、傳感器采集的數(shù)據(jù)流協(xié)議沒有固化在應用程序中,而是通過智能網(wǎng)關(guān)的界面實現(xiàn)動態(tài)配置,監(jiān)測參數(shù)解析、存儲和顯示功能與配置信息描述實現(xiàn)了對應,避免應用軟件的多次開發(fā),滿足水庫異構(gòu)網(wǎng)絡統(tǒng)一管理的要求。
(3)智能網(wǎng)關(guān)在水庫進行了3種異構(gòu)網(wǎng)絡的部署并實現(xiàn)了統(tǒng)一管理的功能,未能覆蓋所有能夠運行于水庫水情的網(wǎng)絡,未來需對更多類型的網(wǎng)絡以及實現(xiàn)特定功能的通信協(xié)議數(shù)據(jù)流進一步進行研究,以提高系統(tǒng)的通用性。
[1]房國良,喻松陽.石佛寺水庫樞紐一期工程水情自動測報系統(tǒng)建設相關(guān)問題探討[J].水利技術(shù)監(jiān)督,2009(04)∶30-32.
[2]王暄.庫塔東干渠工程水情自動測報系統(tǒng)設計[J].水利技術(shù)監(jiān)督,2010(06)∶58-61.
[3]何惠良,王永明.1 nm a r s a t-C在水情自動測報系統(tǒng)中的應用[J].水利技術(shù)監(jiān)督,2002(02)∶38-40.
[4]張建國.渾河閘水情自動化遙測系統(tǒng)技術(shù)研究[J].水利規(guī)劃與設計,2015(08)∶1-3.
[5]賈瑞紅.水情自動測報系統(tǒng)在水利工程中的應用研究[J].水利規(guī)劃與設計,2014(03)∶21-23.
[6]富慶范,肖佳華.青草沙水庫綜合自動化系統(tǒng)設計與實現(xiàn)[J].水利規(guī)劃與設計,2013(12)∶77-81.
T P 393
:B
:1672-2469(2016)05-0047-03
D0I∶10.3969/j.i s s n.1672-2469.2016.05.019
2015-03-10
徐繼紅(1970年—),女,技術(shù)員。