基于Web的無線傳感器網(wǎng)絡(luò)可視化管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
3.2 數(shù)據(jù)收發(fā)模塊設(shè)計(jì)
作為系統(tǒng)的接人部分,本模塊屬于系統(tǒng)的數(shù)據(jù)層,是連接無線傳感器網(wǎng)絡(luò)和可視化管理系統(tǒng)的橋梁。本系統(tǒng)通過Socket套接字通信技術(shù)完成網(wǎng)關(guān)與數(shù)據(jù)收發(fā)模塊間的通信。這里采用資源消耗少,沒有擁塞控制的UDP協(xié)議保證數(shù)據(jù)的收發(fā)速率,滿足本系統(tǒng)的實(shí)時(shí)性要求。套接字通信技術(shù)明確將客戶與服務(wù)器區(qū)分開來,且可以實(shí)現(xiàn)多個(gè)客戶與服務(wù)器的連接。本系統(tǒng)把數(shù)據(jù)收發(fā)模塊作為套接字通信的服務(wù)器來監(jiān)聽一個(gè)端口,可以與多個(gè)子網(wǎng)絡(luò)進(jìn)行通信。
3.3 數(shù)據(jù)管理模塊設(shè)計(jì)
本系統(tǒng)使用MySQL數(shù)據(jù)庫來存儲數(shù)據(jù)。為了方便數(shù)據(jù)管理、滿足不同需要,設(shè)計(jì)了如下三種信息表:
(1)傳感器節(jié)點(diǎn)信息表,包括當(dāng)前無線傳感器網(wǎng)絡(luò)中傳感器節(jié)點(diǎn)的詳細(xì)信息,如地址信息、狀態(tài)信息等。其結(jié)構(gòu)如下:
addr_info=(I,A1,A2,A3,A4,T)
其中:I為節(jié)點(diǎn)ID;A1為節(jié)點(diǎn)類型;A2為節(jié)點(diǎn)IPv6地址;A3為父節(jié)點(diǎn)地址;A4為節(jié)點(diǎn)狀態(tài);T為入網(wǎng)時(shí)間。
(2)路由信息表,包括當(dāng)前無線傳感器網(wǎng)絡(luò)拓?fù)渎酚尚畔?,是了解網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的重要依據(jù)。為了詳細(xì)了解節(jié)點(diǎn)傳感信息的詳細(xì)傳送路徑,本信息表不僅存儲節(jié)點(diǎn)的下一跳,還存儲節(jié)點(diǎn)的下i跳,其中i=0,1,2,…,其最大值等于max_hop。其結(jié)構(gòu)如下:
route_info=(I,Bi,T)
其中:I為節(jié)點(diǎn)ID;B0為節(jié)點(diǎn)IPv6地址;Bi為節(jié)點(diǎn)的下i跳節(jié)點(diǎn)地址,i=0,1,2,…,max_hop;T為路由信息更新時(shí)間。
(3)傳感信息表,存儲監(jiān)測區(qū)域中的傳感信息。包括溫度信息表,濕度信息表,光強(qiáng)信息表等,還可以根據(jù)應(yīng)用需求增加相應(yīng)的信息表。其信息表結(jié)構(gòu)類似,這里以溫度信息表舉例:
temperature_info=(I,C1,C2,T)
其中:I為節(jié)點(diǎn)ID;C1為節(jié)點(diǎn)IPv6地址;C2為溫度傳感信息;T為溫度采集時(shí)間。
3.4 數(shù)據(jù)服務(wù)模塊設(shè)計(jì)
本模塊屬于系統(tǒng)的業(yè)務(wù)層,主要提供系統(tǒng)邏輯運(yùn)算和業(yè)務(wù)支持等服務(wù),是使用Java技術(shù)設(shè)計(jì)實(shí)現(xiàn)的。這里設(shè)計(jì)的核心類SystemService類,一方面可以分析客戶端的服務(wù)請求類型,并根據(jù)服務(wù)請求類型,使用JDBC技術(shù)動(dòng)態(tài)訪問數(shù)據(jù)庫獲取信息進(jìn)行處理,并將處理后的結(jié)果以List集合或XML文件形式傳回給客戶端,來響應(yīng)客戶端的服務(wù)請求。另一方面還可以通過創(chuàng)建線程定時(shí)查詢的方式主動(dòng)將告警信息發(fā)送給客戶
端,使用戶及時(shí)了解當(dāng)前無線傳感器網(wǎng)絡(luò)狀態(tài),使其做出相應(yīng)的處理。其工作流程如圖3所示。本文引用地址:http://www.ex-cimer.com/article/161472.htm
3.5 數(shù)據(jù)顯示模塊設(shè)計(jì)
數(shù)據(jù)顯示模塊采用的Flex應(yīng)用技術(shù),能展現(xiàn)出獨(dú)一無二的圖像、動(dòng)畫和音像等多媒體技術(shù),向用戶提供更加美觀的、全動(dòng)態(tài)的可視化操作界面。Flex具有分布式、跨瀏覽器等優(yōu)點(diǎn),不管是Windows系統(tǒng)還是Linux系統(tǒng),只要有Flash Player插件的瀏覽器,可以通過互聯(lián)網(wǎng)隨時(shí)隨地使用本系統(tǒng)。
數(shù)據(jù)顯示模塊的工作流程如圖4所示。用戶界面請求可視化服務(wù),進(jìn)一步將數(shù)據(jù)對象放置到事件中廣播出去。監(jiān)聽中的前端控制器接收到廣播事件后找出相應(yīng)的業(yè)務(wù)邏輯處理模塊,并由業(yè)務(wù)邏輯處理模塊使用RemoteObject組件對數(shù)據(jù)服務(wù)模塊中的方法進(jìn)行遠(yuǎn)程調(diào)用。業(yè)務(wù)邏輯處理模塊接收到數(shù)據(jù)服務(wù)模塊返回的結(jié)果信息存儲到數(shù)據(jù)服務(wù)模型中的數(shù)據(jù)對象中,并共享結(jié)果信息,供不同的用戶界面顯示。
4 基于Web的WSN可視化管理系統(tǒng)性能測試
為了驗(yàn)證系統(tǒng)的有效性,搭建了如圖5所示的測試環(huán)境。
測試環(huán)境中,節(jié)點(diǎn)7919是網(wǎng)關(guān);節(jié)點(diǎn)6101,6102為路由節(jié)點(diǎn),只負(fù)責(zé)傳感信息的轉(zhuǎn)發(fā),并不收集傳感信息;節(jié)點(diǎn)7010,7030,7050,7070,7090為五個(gè)終端節(jié)點(diǎn),負(fù)責(zé)收集監(jiān)測區(qū)域內(nèi)的傳感信息,其傳感信息可以通過多個(gè)路由節(jié)點(diǎn)的轉(zhuǎn)發(fā),并通過網(wǎng)關(guān)到達(dá)網(wǎng)絡(luò)服務(wù)器。其中節(jié)點(diǎn)7090位于705房間內(nèi),可以控制此房間內(nèi)的一臺空調(diào),其控制信息的傳輸路徑如圖5中的粗線條表示。
傳感器相關(guān)文章:傳感器工作原理
評論