?

大規模無線傳感器網絡數據收集與處理系統設計*

2011-10-20 10:55龔聞天施曉秋
傳感技術學報 2011年11期
關鍵詞:結點部署可視化

樊 鐳,龔聞天,施曉秋

(溫州大學物理與電子信息工程學院,浙江溫州 325035)

1 問題與挑戰

然而,由于WSNs具有自組織、多跳傳輸、監測數據多元時空關聯、一經部署很難更改等特點,使得有效的數據收集和處理面臨較大挑戰。對于大規模長期部署的無線傳感器網絡應用場景,首先,Sink結點在收取大量匯聚數據時存在性能瓶頸,如文獻[7]中通過在傳感器結點中使用嵌入式Web服務器進行數據的采集和發布,用戶能夠直接通過瀏覽器監測傳感器數據,但對于資源有限的傳感器結點來說這種方式開銷大,且效率較低無法滿足性能需求,不適合大規模結點部署和大數據量處理;其次,WSN長期增量部署過程中,面臨如何靈活高效的適應有新的異構結點加入時所產生的數據存儲和查詢等問題,文獻[8]給出的方案能夠實時處理測試組網中10個結點的數據,但其將收數程序、服務程序以及數據庫存儲的實現全部集中在嵌入式網關,功能擴充與軟件升級缺乏足夠的靈活性,可擴展性較差,網關易成為網絡的單故障點,且基于C/S的監測模式需要安裝專門的客戶端軟件,不利于數據發布和共享。再次,在需要長期大規模部署的情況下,動態的網絡拓撲和廉價的傳感器結點等不穩定因素使得系統可靠性和可擴展性難以保證,而采用復雜的網內數據融合、嵌入式數據處理等技術進一步增加了網內的計算、通信、存儲、能量等開銷,縮短了整個無線傳感器網絡的生存期[1,9];另外無線傳感器網絡收集的數據最終必須能夠被方便的查詢和使用才有意義,而現有文獻都沒有詳細涉及對WSN網絡拓撲結構和多元時空數據流的可視化處理方法,而這對于提高系統遠程監測的可用性也是非常必要的。

針對上述問題,本文給出了一種適合大規模長期部署的無線傳感器網絡應用的數據收集與處理解決方案,并將基于該方案開發實現的系統實例Receiver用于基于WSNs的楊梅生長環境生態監測任務,取得了良好的效果。下文第2節詳述了系統架構與各模塊設計,第3節給出了系統具體實現,第4節介紹了系統運行在真實環境中的實驗測試結果,第5節對全文進行了總結。

2 系統設計

數據收集處理系統包括收數、存儲與發布三大模塊,圖1給出了與上述功能所對應的系統總體架構。該架構采用了集中式設計,簡潔高效,接口清晰,實現了對傳感器數據的快速準確收取、靈活持久存儲以及多元時空數據的可視化等功能;盡可能降低與底層網絡硬件、通信協議的耦合性,以便較好的適應今后網絡中異構結點的加入;各模塊之間采用TCP/IP通訊協議傳遞數據,部署靈活,且容易擴展和移植。匯聚到各個Sink結點的網絡包首先由收數模塊采用獨立線程實時監聽并批量收取,然后經過抽取、錯誤分析、翻譯等必要處理,根據包的信息結構拆分存儲到關系數據庫相應表中,最后基于B/S模式和AJAX技術的Web在線發布模塊對存儲模塊中的網絡拓撲結構和多元時空數據等信息進行可視化處理,供終端用戶使用。

圖1 系統架構

采用集中式的設計方案主要基于以下考慮:

(1)性能開銷:數據收集處理往往需要大量的運算資源,而廉價傳感器結點資源非常有限,分布式的數據處理設計必然增加結點的計算、存儲、通信等開銷,并增加結點能耗[9],導致系統生存期縮短。集中式處理可以避開這種限制,通過利用上位機端資源,有效減少無線傳感器網絡內部開銷,同時提高了收集與處理的效率。

(2)靈活性:與嵌入在結點中的分布式處理方法相比,集中式設計不對無線傳感器網絡的底層部署做任何假設和限制,降低了各功能模塊之間的耦合度,可以有效的與底層實現分離,更好的適應不同組網機制。而分布式設計通常依賴于具體的硬件、嵌入式操作系統、MAC層協議、拓撲控制等實現,不利于擴展和移植。

(3)可靠性:無線傳感器網絡系統的部署經驗表明,在網絡內部引入復雜的處理機制會導致系統行為難以理解、程序難以調試,除錯及修復的復雜度增加,應該使網絡內部的處理盡可能簡單,以最大程度的確保無線傳感器網絡系統成功實施。將數據集中在上位機端進行處理,僅把網絡中的傳感器結點當作采集數據的從屬設備,簡化了網絡內部的設計,有效克服了分布式處理中易造成網絡不穩定的弊端,使得系統功能擴充和升級更加容易,即使個別傳感器結點的故障和失效也不會影響無線傳感器網絡其他部分的正常運行,增強了系統在大規模長期部署應用中的可靠性和可用性。

下面分別介紹系統各組成模塊中關鍵技術的詳細設計。

[lsw1[s1-Eth-Trunk1]mode lacp-static“配置鏈路聚合為LACP靜態模式”

2.1 數據批量實時收集處理

收數模塊位于系統的第一層,由監聽、批量收取、抽取、錯誤分析檢測和翻譯等功能組成,性能上確??焖贉蚀_。圖2給出了收數模塊的流程設計。

圖2 收數模塊處理流程

程序啟動初始化后,創建獨立的線程持續監聽Sink結點的匯聚狀態,當有數據到達時,觸發收取事件將本次數據放入緩沖區。由于采用批量方式,一次收取的數據可以由多個包組成,需要根據包頭標識抽取出單獨的原始包;數據收取后,通過校驗原始包的數據長度、固定位置的值等預定義規則來分析原始包是否出現錯誤,若有錯誤則記錄錯誤類型代碼,否則由翻譯函數按照每個原始包的結構格式判斷所屬類型,轉換得出包中各個字節代表的屬性值,并將這些處理后得到的結果交給存儲模塊按相應設計予于保存。批量收取并拆分的方式能夠明顯改進處理大量數據時的效率,同時該過程中得到的錯誤類型信息可被后面的數據發布模塊用來決定是否排除,或者供研發人員作為排查錯誤原因的線索,以便及時發現潛在的網絡問題。

2.2 基于結構化信息的存儲設計

存儲模塊為數據收集處理系統的中間層,負責永久保存上一階段收集處理后得到的數據結果,為上層功能模塊提供數據源服務。文件形式存儲是最原始的方法,即按時間段將數據直接寫入 TXT、CVS、XML或Excel等格式的文件,雖然實現簡單但不利于并發查詢與處理。將無線傳感器網絡數據存儲于關系數據庫能夠充分發揮存儲模塊的作用,但需要合理的設計才能保證靈活高效?;谑諗的K分析翻譯處理后得到的原始包結構化信息,圖3給出了相應的概念模式設計。

圖3 存儲模塊關系數據庫概念設計

根據無線傳感器網絡中原始數據包的信息組成結構特點拆分建立相應的存儲表,所有表都建立一個自增字段作為邏輯主鍵,在被參照時作為外鍵使用,保證關系模式的實體完整性約束和參照完整性約束。其中包頭信息表、監測數據信息表、狀態信息表、路由結點表和鄰居結點表之間按上下文聯系建立一對一或一對多的參照關系。整個關系模式設計符合BC范式要求,消除冗余且保持查詢效率和擴展的靈活性,這在今后應對新類型的數據加入時非常便利,只要為其特有的信息創建新表即可,其他共同的信息部分可以重用現有設計,使得數據收集模塊程序和數據庫關系模式的修改都大大減少;即使今后部署使用不同嵌入式操作系統和路由協議的異構網絡結點,只要收集的數據信息類似,也可以按照屬性值存入相應的表和字段,達到數據整合的目的。

2.3 網絡狀態和多元時空監測數據的可視化處理

無線傳感器網絡收集到的數據流是監測數據在時間和空間上的分布。數據發布模塊針對這種特點,給出了一種可視化的查詢分析方案,著重對隨時間變化的WSN網絡拓撲結構等狀態信息以及多元時空關聯的傳感數據信息進行處理,提高了系統的可用性。具體功能設計結構如圖4所示(圖中實線和虛線分別表示數據支持和可視化支持,方框表示空間相關,圓框表示時間相關,圓角方框表示時空相關)。

圖4 可視化發布模塊功能設計

由于C/S模式中專門的桌面監測軟件對用戶平臺有一定限制要求,且客戶端安裝和維護的工作量大,不利于無線傳感器網絡數據的監測和使用,因此本系統的數據發布模塊基于B/S模式設計。多元時空信息的在線交互式Web頁面采用AJAX(Asynchronous JavaS-cript And XML)技術進行可視化處理。相對于Flash和Java applet等交互式技術,AJAX是一種使用戶操作與服務器響應異步化的輕量級解決方案,不需要用戶安裝額外的插件或運行環境,且遵循W3C標準,有很好的開放性、兼容性和可移植性。另外為了能夠在瀏覽器端及時更新數據,Web程序中加入定時器后臺實時檢查數據收集狀況,當發現有新數據時自動更新頁面顯示并給用戶發出提醒信息,達到實時監測的效果。數據發布模塊將以上網絡部署狀態信息和傳感器監測數據信息集成在一起,任何連接到Internet的終端用戶都可以簡單的通過瀏覽器遠程在線訪問,并能夠通過可視化環境動態交互的查詢和分析收集的數據,使無線傳感器網絡真正走出實驗室,在實際應用中發揮其特有的優勢。

3 系統實現——Receiver

基于上文的系統架構設計所實現的系統實例名為Receiver。其中收數模塊根據Sink結點傳送原始數據包至上位機的方式,如RS-232串口或GPRS等,使用Delphi語言多線程監聽串口或網絡端口編程實現;存儲模塊中的表、存儲過程、觸發器、視圖等概念模式使用開源的Firebird關系數據庫實現,目前共同運行在一臺Windows操作系統的PC機上,專門用于收集和存儲數據,分配內網IP為上層應用提供服務。圖5給出了Receiver系統收集數據過程中的用戶界面截圖。

圖5 Receiver收數模塊工作界面

Receiver系統基于B/S的可視化發布模塊的服務端程序使用PHP語言編程實現,部署在一臺配有PHP和Nginx環境的Linux服務器上,分配了獨立IP和域名,通過TCP/IP連接Firebird數據庫請求數據,對外提供Web服務(http://network.wzu.edu.cn/wsn/demo/)。瀏覽器端對于網絡拓撲結構和多元時空監測數據的的Web在線交互式可視化處理分別實現如下:工作周期屬于時間數據,通過下拉列表顯示;部署區域和結點位置屬于空間數據,調用Google Maps API中的地圖接口實現;每個工作周期的活動結點和網絡拓撲結構等網絡狀態信息屬于時間屬性約束下的空間數據,分別調用Google Maps API中的標記(Marker)圖層和折線(Polyline)圖層顯示處理;傳感器結點的溫度、濕度、光照、電壓等監測數據,按照時間和空間兩種角度分片得到“每個工作周期內所有傳感器結點的監測數據”和“每個傳感器結點在所有工作周期的監測數據”,分別調用Google Visualization API中的運動散點圖(Motion Chart)和時序說明圖(Annotated Time Line)實現可視化查詢分析等功能。終端用戶在瀏覽器上監測訪問的界面截圖如圖6所示。

圖6 Receiver可視化發布模塊頁面

Receiver系統收數、存儲和發布三個組成部分的部署非常靈活,每個模塊分別占用一臺計算機或集中部署在同一臺計算機都是可以的,實際應用中可以根據情況任意組合,只要模塊之間能夠通過TCP/IP通信即可。

4 實驗結果

圖7 楊梅生長環境生態監測部署

以基于WSN的楊梅園環境監測項目為實驗平臺,如圖7所示,在實驗基地約27 000 m2區域內(北緯27°55'5″,東經 120°41'32″)部署了 100 個左右傳感器結點,通過持續測量溫度、濕度、光照、二氧化碳等相關參數實現對楊梅生長環境的長期實時監測。原型系統底層組網使用的是運行TinyOS 2.1嵌入式操作系統和CTP路由協議[10]的TelosB結點,裝配有溫度、濕度、光照等傳感器,部署封裝中使用兩只干電池供電。對于環境監測應用而言,采樣率過于頻繁的傳感器測量值一般屬于冗余數據[11],所以為了減少網內的數據量和通信量,改善結點能耗以延長網絡生存期,采用Low-duty-cycle周期性同步“休眠—工作”的方法[4,12]對監測數據進行采樣和傳輸。而這種工作方式也使得每次會有大量網絡包集中在很短時間內突發性的匯聚到Sink結點。

收數模塊的批量收取超時的間隔設為100 ms,即只要兩個字節到達的時間間隔小于100 ms都被認為是同一幀數據,否則作為下一幀收取。長期測試結果表明每一幀數據從觸發批量收取開始,經過拆分抽取、錯誤檢測、翻譯等處理后批量存入數據庫的延遲一般不超過300 ms,滿足對上述大量突發性數據進行實時收集的需求。表1顯示了Receiver系統的在6個月WSN增量部署中的數據持續收集情況統計,在總計超過70萬個網絡包中,收取的錯誤率低于1%。實驗結果表明Receiver運行穩定高效,能夠適用于長期大規模部署的無線傳感器網絡應用。

表1 Receiver系統數據收集統計

終端用戶在線監測與查詢分析在圖6頁面上方的日期和時間下拉框用于選取工作周期,當前顯示的是2010年6月23日22點43分左右的情況。左上方(a)的地圖內顯示了部署于楊梅園實驗基地區域中的部分結點以及當前工作周期的活動結點(高亮顯示)和網絡路由拓撲結構。右上方(b)顯示本次工作周期數據收集的統計信息以及所有傳感器結點監測數據的交互式散點圖,其中橫軸為溫度值,縱軸為濕度值,顏色表示電壓值,數據點的大小表示光照值(具體顯示模式可調整)??梢钥吹疆敃r15號結點的光照值和電壓值明顯異常,經檢查發現15號結點位于部署區域邊緣緊鄰校園外的公路,夜晚明亮的路燈和對面商業區的廣告霓虹燈使得此結點的光照值在夜間也明顯高于其他結點;而較低的電壓值提醒監測人員應及時更換電池。點擊地圖中的某一傳感器結點圖標,頁面下方(c)出現此結點所有工作周期的數據收集情況統計以及時間序列上的監測數據曲線圖表,可以看到溫度和濕度這兩條隨時間變化的曲線基本上呈現一種反比的關系,這和經驗以及當時的氣象情況都是相符的。

5 結語

無線傳感器網絡作為獲取數據的一種手段正越來越多的應用于我們生活的世界,隨著組網技術的成熟,對大規模無線傳感器網絡狀態信息和監測數據的有效收集與處理尤為關鍵。本文提出了一種集數據收集、存儲、發布以及可視化查詢分析的完整設計與實現方案,基于該方案的實例Receiver系統在大規模無線傳感器網絡長期部署測試中逐漸形成和完善,成功應用于實際監測任務并取得了較好的效果。進一步工作如數據分析、異常檢測、事件報警等功能的開發和整合可以在該系統方案的基礎上繼續進行。另外,該系統架構的通用性和靈活性使其能夠很容易移植和擴展,從而在更多的無線傳感器網絡應用中發揮重要作用。

[1]Allen G W,Lorincz K,Welsh M,et al.Deploying a Wireless Sensor Network on an Active Volcano[J].IEEE Internet Computing,2006,10(2):18-25.

[2]Liu K,Li M,Liu Y,et al.Passive Diagnosis for Wireless Sensor Networks[C]//Abdelzaher T F,Martonosi M,Wolisz A,et al.Proceedings of the 6th ACM International Conference on Embedded Networked Sensor Systems(SenSys).Raleigh:ACM,2008.113-126.

[3]Szewczyk R,Mainwaring A,Polastre J,et al.An Analysis of a Large Scale Habitat Monitoring Application[C]//Stankovic J A,Arora A,Govindan R,et al.Proceedings of the 2th ACM International Conference on Embedded Networked Sensor Systems(SenSys).Baltimore:ACM,2004.214-226.

[4]Mo L,He Y,Liu Y,et al.Canopy Closure Estimates with GreenOrbs:Sustainable Sensing in the Forest[C]//Culler D E,Liu J,Welsh M,et al.Proceedings of the 7th ACM International Conference on Embedded Networked Sensor Systems(SenSys).Berkeley:ACM,2009.99-112.

[5]Li M,Liu Y.Underground Coal Mine Monitoring with Wireless Sensor Networks[J].ACM Transactions on Sensor Networks(TOSN),2009,5(2):1-29.

[6]Langendoen K,Baggio A,Visser O.Murphy Loves Potatoes:Experiences from a Pilot Sensor Network Deployment in Precision Agriculture[C]//20th International Parallel and Distributed Processing Symposium(IPDPS).Rhodes Island:2006.8-16.

[7]何鵬舉,戴冠中.嵌入式Web網絡傳感器的實時數據采集方法[J].傳感技術學報,2006,19(6):204-215.

[8]張杰,石為人,涂巧玲.基于無線傳感器網絡的信息采集監測系統設計[J].傳感技術學報,2009,22(6):861-864.

[9]Allen G W,Haggerty S D,Welsh M.Lance:Optimizing High-Resolution Signal Collection in Wireless Sensor Networks[C]//Abdelzaher T F,Martonosi M,Wolisz A,et al.Proceedings of the 6th ACM International Conference on Embedded Networked Sensor Systems(SenSys).Raleigh:ACM,2008.169-182.

[10]Gnawali O,Fonseca R,Jamieson K,et al.Collection Tree Protocol[C]//Culler D E,Liu J,Welsh M,et al.Proceedings of the 7th ACM International Conference on Embedded Networked Sensor Systems(SenSys).Berkeley:ACM,2009.1-14.

[11]Guillermo B,Fran?ois I,Gunnar S,et al.The Hitchhiker’s Guide to Successful Wireless Sensor Network Deployments[C]//Abdelzaher T F,Martonosi M,Wolisz A,et al.Proceedings of the 6th ACM International Conference on Embedded Networked Sensor Systems(SenSys).Raleigh:ACM,2008.43-56.

[12]Vicaire P,He T,Cao Q,et al.Achieving Long-Term Surveillance in VigilNet[J].ACM Transactions on Sensor Networks(TOSN),2009,5(1):1-39.

猜你喜歡
結點部署可視化
基于CiteSpace的足三里穴研究可視化分析
思維可視化
一種基于Kubernetes的Web應用部署與配置系統
基于八數碼問題的搜索算法的研究
晉城:安排部署 統防統治
部署
基于CGAL和OpenGL的海底地形三維可視化
“融評”:黨媒評論的可視化創新
Ladyzhenskaya流體力學方程組的確定模與確定結點個數估計
部署“薩德”意欲何為?
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合