郭新明,張宗佩
(咸陽師范學(xué)院 計算機(jī)學(xué)院,陜西 咸陽 712000)
無線傳感器網(wǎng)絡(luò) (Wireless Sensor Network,WSN)是無線通信技術(shù)、傳感器技術(shù)、計算機(jī)技術(shù)等多種技術(shù)快速發(fā)展及融合的產(chǎn)物[1]。柵欄覆蓋作為WSN技術(shù)研究的一項重要內(nèi)容[2],越來越受到科研工作者的關(guān)注。柵欄覆蓋的概念是由Gage在機(jī)器人領(lǐng)域中首次提出來的[3],文獻(xiàn)[4]首次給出了強(qiáng)柵欄和弱柵欄的定義。有關(guān)WSN柵欄覆蓋技術(shù)的研究已經(jīng)在三維覆蓋[5-6]、全視角柵欄覆蓋[7-8]、水下柵欄覆蓋[9-10]等領(lǐng)域取得了較為豐碩的成果,但水面無線傳感器網(wǎng)絡(luò)柵欄覆蓋的研究相對較少。在水面部署無線傳感器網(wǎng)絡(luò)并構(gòu)建WSN柵欄以獲取水面的有關(guān)信息,對水資源及生態(tài)環(huán)境保護(hù)、水運(yùn)監(jiān)管、洪澇災(zāi)害監(jiān)測等領(lǐng)域均具有重要意義,但在水面部署無線傳感器網(wǎng)絡(luò)并構(gòu)建WSN柵欄與陸地環(huán)境最大的不同是在水面部署的傳感器節(jié)點(diǎn)容易受風(fēng)浪外力作用而產(chǎn)生漂移情況,因此形成柵欄并保障網(wǎng)絡(luò)正常運(yùn)行的難度較大[11]。
文獻(xiàn)[11]提出一種構(gòu)建水面WSN弱柵欄覆蓋的WBWS方法,利用匈牙利算法派遣可移動節(jié)點(diǎn)將離散的子?xùn)艡谶M(jìn)行拼接形成水面的弱柵欄覆蓋。該方法能夠通過低功耗實(shí)現(xiàn)弱柵欄的構(gòu)建,但依然無法徹底解決無線節(jié)點(diǎn)的漂移問題。本文提出了一種基于錨定傳感器的水面WSN強(qiáng)柵欄覆蓋方法,將水面無線節(jié)點(diǎn)的漂移距離控制在一個固定范圍內(nèi),有效克服了水面無線節(jié)點(diǎn)受風(fēng)浪等外力作用隨機(jī)漂移的困難,進(jìn)而為建立水面無線強(qiáng)柵欄覆蓋創(chuàng)造有利條件,實(shí)現(xiàn)了對水面環(huán)境的有效監(jiān)測。
在水面部署WSN,并形成相對穩(wěn)定的無線傳感器網(wǎng)絡(luò)柵欄,首先應(yīng)克服傳感器節(jié)點(diǎn)受風(fēng)力、水流等外力因素產(chǎn)生漂移導(dǎo)致節(jié)點(diǎn)位置不穩(wěn)定的困難?;诖?,本文提出了錨定無線傳感器節(jié)點(diǎn)模型,如圖1所示。
每個錨定無線傳感器節(jié)點(diǎn)S的傳感半徑為r(圖1中陰影部分),且用纜繩與一個錨鏈接,節(jié)點(diǎn)能夠漂浮于水面,錨沉于水下陸地,纜繩的長度為L,水深為H,且L>H。節(jié)點(diǎn)S的漂移范圍被限制在水面上以錨到水面的垂足為圓心、以R為半徑的圓盤范圍內(nèi),其中R如式(1)所示。
圖1 水面無線傳感器節(jié)點(diǎn)模型構(gòu)造圖Fig.1 Surface wireless sensor node model diagram
網(wǎng)絡(luò)中所有錨定無線傳感器節(jié)點(diǎn)同構(gòu),且節(jié)點(diǎn)一旦部署,錨的位置將不再發(fā)生改變。
在水面實(shí)現(xiàn)WSN強(qiáng)柵欄覆蓋的困難在于無線傳感器節(jié)點(diǎn)易受水流及風(fēng)力等自然因素的影響而產(chǎn)生位置漂移,這可能導(dǎo)致剛剛構(gòu)建的柵欄迅速失效,無法在水面實(shí)現(xiàn)有效的柵欄覆蓋。針對上述問題,本文提出了在水面無線傳感器節(jié)點(diǎn)上捆綁錨的方法來控制其的漂移范圍,從而使無線節(jié)點(diǎn)的位置相對穩(wěn)定,在此基礎(chǔ)上構(gòu)建水面的WSN強(qiáng)柵欄覆蓋。水面WSN強(qiáng)柵欄覆蓋能確保水面監(jiān)測對象沿任意路徑穿越目標(biāo)區(qū)域時均可被傳感器節(jié)點(diǎn)檢測到,進(jìn)而實(shí)現(xiàn)對水面環(huán)境的有效監(jiān)測。
為了便于研究,本文假設(shè)水下陸地(河床、湖底等)均是平坦的,沒有任何起伏,仿真平臺中的實(shí)驗環(huán)境也按照此假設(shè)進(jìn)行設(shè)計。
這里用(Xnew,Ynew)表示節(jié)點(diǎn)漂移后的新坐標(biāo),用(Xold,Yold)表 示 節(jié) 點(diǎn) 漂 移 前 的 坐 標(biāo),用(Xanchor,Yanchor)表示捆綁節(jié)點(diǎn)的錨到水平面的垂足的坐標(biāo)。
2.1.1 隨機(jī)漂移算法
漂浮在平靜湖面上的傳感器節(jié)點(diǎn)的漂移軌跡,可以看作是一種隨意漂移行為,節(jié)點(diǎn)的偏移方向θ是一個隨機(jī)角度,θ∈[0°,360°),漂移步長為l。若節(jié)點(diǎn)的初始位置為(Xanchor,Yanchor),若其漂移距離沒有超出節(jié)點(diǎn)的最大漂移范圍,則節(jié)點(diǎn)漂移后的新坐標(biāo)如式(2)所示;否則,節(jié)點(diǎn)漂移后的新坐標(biāo)(Xnew,Ynew)如式(3)所示。
2.1.2 非隨機(jī)漂移算法
若水面有風(fēng)或者水沿某個方向流動,則漂浮在水面的傳感器節(jié)點(diǎn)的漂移軌跡,將受水流、風(fēng)力等自然因素的綜合影響,漂移方向與外力合力的方向α基本相同,并有少許波動。假設(shè)節(jié)點(diǎn)的初始位置為(Xanchor,Yanchor),則在受外力的情況下,節(jié)點(diǎn)漂移后的新坐標(biāo)如式(4)所示。
其中σ作為合力方向角α的擾動因子,是一個隨機(jī)數(shù),且σ∈(-5°,5°)。
基于水面?zhèn)鞲衅鞴?jié)點(diǎn)的漂移算法,錨定傳感器水面WSN強(qiáng)柵欄覆蓋算法的詳細(xì)步驟如下:
步驟1在指定的水面區(qū)域內(nèi)隨機(jī)部署若干個錨定無線傳感器節(jié)點(diǎn),部署密度要確保網(wǎng)絡(luò)能夠與岸上Sink節(jié)點(diǎn)連通。
步驟2定義計時器T=30,t=5。
步驟3計時1秒,t=t-1;T=T-1。
步驟4 若t≠0且T≠0,執(zhí)行步驟3,否則執(zhí)行步驟5。
步驟5若t≠0,執(zhí)行步驟6,若t為0,利用水面?zhèn)鞲衅鞴?jié)點(diǎn)的漂移模擬算法(隨機(jī)漂移算法或非隨機(jī)漂移算法)計算出每個無線傳感器在水面的漂移位置,令t=5,執(zhí)行步驟6。
步驟6若T≠0,執(zhí)行步驟3,若T為0,基于傳感器節(jié)點(diǎn)的漂移位置建立網(wǎng)絡(luò)節(jié)點(diǎn)的鄰接矩陣(若兩節(jié)點(diǎn)感知范圍相交則權(quán)值定義為1,若不相交權(quán)值定義為∞)?;卩徑泳仃?,利用Floyd算法[12]求出起始節(jié)點(diǎn)和終止節(jié)點(diǎn)間的最短路徑,該路徑即為無線傳感器強(qiáng)柵欄,并將其存入強(qiáng)柵欄集合。T=30,執(zhí)行步驟3。
錨定傳感器水面WSN強(qiáng)柵欄覆蓋仿真實(shí)驗平臺采用Eclipse10進(jìn)行搭建。實(shí)驗平臺為長1800m、寬900m的矩形水面區(qū)域,在該區(qū)域中隨機(jī)部署若干感知半徑為50m的無線傳感節(jié)點(diǎn),仿真實(shí)驗平臺效果如圖2所示。
圖2 仿真實(shí)驗平臺效果圖(部署了280個無線節(jié)點(diǎn))Fig.2 Renderings of the simulation experiment platform(280 wireless nodes deployed)
在上述的仿真實(shí)驗平臺上,分別對水面無線傳感器節(jié)點(diǎn)的隨機(jī)漂移和非隨機(jī)漂移現(xiàn)象進(jìn)行強(qiáng)柵欄覆蓋的仿真實(shí)驗,圖3顯示的是在有外力作用下節(jié)點(diǎn)產(chǎn)生漂移后形成的強(qiáng)柵欄效果圖。圖中的每條細(xì)線代表一條強(qiáng)柵欄。
圖3 節(jié)點(diǎn)非隨機(jī)漂移后構(gòu)建的情況下的強(qiáng)柵欄效果圖Fig.3 Renderings of strong barriersunder the condition of non-random drift of nodes
無線節(jié)點(diǎn)的非隨機(jī)漂移完全受外力影響,外力發(fā)生改變后柵欄覆蓋很可能失效,所以要周期性地檢查柵欄的連通情況,一旦發(fā)現(xiàn)柵欄中斷,應(yīng)立即重新構(gòu)建新的水面柵欄。圖4所示為柵欄覆蓋中斷修復(fù)前后的對比圖,其中細(xì)線表示修復(fù)前的柵欄,粗線表示修復(fù)后的柵欄。
圖4 柵欄中斷修復(fù)前后的對比圖Fig.4 A comparison of barriers before and after interrupted repair
在長1800m、寬900m的矩形水面區(qū)域內(nèi)部署不同數(shù)量的無線傳感器節(jié)點(diǎn),并運(yùn)行錨定傳感器水面WSN強(qiáng)柵欄覆蓋算法,對實(shí)驗數(shù)據(jù)進(jìn)行統(tǒng)計,結(jié)果如圖5所示。根據(jù)圖5可以看出,隨著矩形水面區(qū)域內(nèi)部署無線傳感器節(jié)點(diǎn)數(shù)量的增加,形成的強(qiáng)柵欄條數(shù)也隨著增加,但非隨機(jī)漂移情況下的仿真效果更趨穩(wěn)定。
圖5 部署傳感器節(jié)點(diǎn)個數(shù)與柵欄條數(shù)的關(guān)系圖Fig.5 The relationship diagram between the number of sensor nodes and the number of barriers
本文針對水面漂浮的無線傳感器節(jié)點(diǎn)受外力作用產(chǎn)生漂移,導(dǎo)致網(wǎng)絡(luò)節(jié)點(diǎn)位置不穩(wěn)定給強(qiáng)柵欄覆蓋造成較大困難的問題,提出了一種基于錨定傳感器的水面WSN強(qiáng)柵欄覆蓋算法。該算法將水面無線節(jié)點(diǎn)的漂移距離控制在一個固定范圍內(nèi),有效克服了水面無線節(jié)點(diǎn)受風(fēng)浪等外力作用隨機(jī)漂移的困難,進(jìn)而為建立水面無線強(qiáng)柵欄覆蓋創(chuàng)造了有利條件,實(shí)現(xiàn)了對水面環(huán)境的有效監(jiān)測。仿真實(shí)驗結(jié)果顯示,隨著水面部署的無線傳感器節(jié)點(diǎn)數(shù)量的增加,形成的強(qiáng)柵欄條數(shù)也隨著增加,且非隨機(jī)漂移情況較隨機(jī)漂移情況的仿真效果更穩(wěn)定。
本文的研究成果雖然有效克服了無線節(jié)點(diǎn)受外力作用隨機(jī)漂移的困難,但依然存在不足之處,比如沒有考慮水下陸地不平坦對水面強(qiáng)柵欄構(gòu)建的影響等,這些將是后續(xù)研究所需解決的問題。