項(xiàng)亞南, 潘 豐
(江南大學(xué) 輕工過程先進(jìn)控制教育部重點(diǎn)實(shí)驗(yàn)室,江蘇 無錫 214122)
無線傳感器網(wǎng)絡(luò)(WSNs)節(jié)點(diǎn)通常是隨機(jī)地分布在各種復(fù)雜的環(huán)境里,節(jié)點(diǎn)網(wǎng)絡(luò)之間相互協(xié)同收/發(fā)獲取環(huán)境的信息是WSNs的關(guān)鍵部分,在對環(huán)境進(jìn)行監(jiān)控的過程中,不僅需要接收到信息,而且需要知道所獲得信號的來源,所以,在網(wǎng)絡(luò)節(jié)點(diǎn)分布好之后對未知節(jié)點(diǎn)進(jìn)行定位是非常有必要的[1]。
節(jié)點(diǎn)定位算法是一種根據(jù)已知的信標(biāo)節(jié)點(diǎn)的距離和位置信息來確定空間中未知節(jié)點(diǎn)位置的定位方法。但是由于環(huán)境因素的干擾,定位精度較低,為此,學(xué)者對節(jié)點(diǎn)定位的相關(guān)算法做了大量、多層次的研究。文獻(xiàn)[2]研究了連通率、信標(biāo)節(jié)點(diǎn)的個數(shù)、單位時(shí)間發(fā)送信號的個數(shù)對定位誤差的影響;文獻(xiàn)[3]提出一種粒子群優(yōu)化改進(jìn)加權(quán)的質(zhì)心定位算法,該算法提高了定位精度,但是容易陷入局部最優(yōu),并且計(jì)算量較大;文獻(xiàn)[4]提出一種加權(quán)質(zhì)心和DV-Hop混合算法定位方法,這種方法需要收集到整個網(wǎng)絡(luò)的信息,耗能比較大,并且其信號傳播模型是基于理想的信號傳播模型;文獻(xiàn)[5]提出一種四面體三維質(zhì)心定位算法,在空間中信標(biāo)節(jié)點(diǎn)分布不均勻和連通率較低的情況下,可以獲得較好的覆蓋率和定位精度;文選[6]提出一種基于質(zhì)心節(jié)點(diǎn)定位和三角形測量法相結(jié)合的算法,質(zhì)心定位的思想引入到三邊測距中,把三角形相交區(qū)域作為定位局域,縮小定位區(qū)域,從而提高了精度,但是要求節(jié)點(diǎn)盡可能均勻分布。
本文對接收信號強(qiáng)度指示(received signal strength indication,RSSI)進(jìn)行改進(jìn),不需要另外增加硬件設(shè)備,提出基于WSNs的一種RSSI加權(quán)閾值質(zhì)心定位算法,通過實(shí)驗(yàn)仿真驗(yàn)證了該算法的有效性。
質(zhì)心(centroid)定位算法是一種基于網(wǎng)絡(luò)連通性的點(diǎn)位算法[7],由南加州大學(xué)的BulusuN教授提出。該算法的思路是信標(biāo)節(jié)點(diǎn)每隔一段時(shí)間向附近發(fā)送一個包含自身ID的電波信息,假設(shè)每次發(fā)送的信息量是M,未知節(jié)點(diǎn)在每段時(shí)間內(nèi)偵測到的信息量假設(shè)是N,則N/M就表示未知節(jié)點(diǎn)與信標(biāo)節(jié)點(diǎn)的連通度,當(dāng)連通度超過一預(yù)設(shè)門限值時(shí)則判定該信標(biāo)節(jié)點(diǎn)與未知節(jié)點(diǎn)連通,然后計(jì)算各連通點(diǎn)的均值來定位,但該算法比較粗糙,適合精度要求不高的情況。
RSSI是一種與距離有關(guān)的算法,信標(biāo)節(jié)點(diǎn)周期性地向附近發(fā)送一定功率包含自身ID的無線電信號,未知節(jié)點(diǎn)接收偵測到接收功率,根據(jù)接收到的功率和距離之間的衰減關(guān)系,由式(1)轉(zhuǎn)換為信標(biāo)節(jié)點(diǎn)和未知節(jié)點(diǎn)的距離[8]。距離越小,RSSI就越大;節(jié)點(diǎn)距離越大,RSSI的值就越小。
本文采用的是無線電Shadowing衰減模型
(1)
式中Pr,dB(d)是以d為參考點(diǎn)的信號接收功率;Pr,dB(d0)為參考點(diǎn)d0的接收功率;ξ為路徑衰減因子,該因子受環(huán)境影響,一般取2~5;d為信標(biāo)節(jié)點(diǎn)與未知節(jié)點(diǎn)的距離,一般情況下d0取1 m;εδ,dB是以δ2為方差,均值為0的隨機(jī)高斯分布,表示障礙物的影響,方差范圍為(4~10)。
理論上,在環(huán)境條件已知:ξ為常量,d0為參考點(diǎn)的距離,接發(fā)信號已知,就可以通過公式(1)計(jì)算得到d的值,但是不一致的衰減關(guān)系,影響了定位距離的質(zhì)量,這是該方法誤差較大的原因[9]。
不同距離的信標(biāo)節(jié)點(diǎn)因?yàn)樗p關(guān)系的不同定位出來的位置是不同的,信標(biāo)節(jié)點(diǎn)和未知節(jié)點(diǎn)距離越近精度越高,距離越遠(yuǎn)定位精度越低,距離越遠(yuǎn)的信標(biāo)節(jié)點(diǎn)對定位是不利的。
在質(zhì)心算法的啟發(fā)下,根據(jù)RSSI算法只用一個信標(biāo)節(jié)點(diǎn)定位出來的位置精度是不高的,在接收到多個信標(biāo)節(jié)點(diǎn)的RSSI信息之后充分利用多個信標(biāo)節(jié)點(diǎn)信息,定位出多個不同的未知節(jié)點(diǎn)的位置,再對初次定位的未知節(jié)點(diǎn)位置進(jìn)行處理。
對初次定位的多個未知節(jié)點(diǎn)坐標(biāo),引入一個坐標(biāo)之間距離倒數(shù)的閾值,距離越遠(yuǎn),權(quán)值影響更小,越近對權(quán)值的影響越大。具體的做法是:根據(jù)RSSI值,轉(zhuǎn)換為距離d1,d2,d3,…,di,再由最小二乘辨識出初次定位出多個未知節(jié)點(diǎn)的坐標(biāo),且這i個初次定位的未知節(jié)點(diǎn)的坐標(biāo)依次為:(X1,Y1),(X2,Y2),…,(Xi,Yi), ,對初次定位的坐標(biāo)引入一個閾值再加權(quán)定位。
如圖1所示的節(jié)點(diǎn)分布圖,箭頭起點(diǎn)表示的是信標(biāo)節(jié)點(diǎn),箭頭的末端表示的是該信標(biāo)節(jié)點(diǎn)定位出未的知節(jié)點(diǎn)的位置,在矩形的邊界上的兩點(diǎn)因?yàn)殡x未知節(jié)點(diǎn)的距離比較遠(yuǎn),根據(jù)RSSI算法定位精度較低,在圓形區(qū)域內(nèi)的幾個點(diǎn)是較近的幾個信標(biāo)節(jié)點(diǎn)定位出的未知節(jié)點(diǎn)的坐標(biāo)位置。

圖1 節(jié)點(diǎn)分布圖

(2)

(3)
假設(shè)在空間中有i個可以連通的信標(biāo)節(jié)點(diǎn),充分利用多個信標(biāo)節(jié)點(diǎn)的RSSI數(shù)據(jù)信息,具體的算法步驟如下:
1)環(huán)境中的各節(jié)點(diǎn)分布示意圖如圖1所示,信標(biāo)節(jié)點(diǎn)周期性的發(fā)射一定功率大小包含自身ID信息的無線電信號;
2) 未知節(jié)點(diǎn)收到i個信標(biāo)節(jié)點(diǎn)信息之后取各節(jié)點(diǎn)的RSSI均值,并根據(jù)式(1)轉(zhuǎn)換為距離:d1,d2,d3,…,di;


計(jì)算未知節(jié)點(diǎn)誤差公式為
(4)
其中,(X,Y)為最終定位的坐標(biāo),(X0,Y0)為未知節(jié)點(diǎn)實(shí)際坐標(biāo)位置。
質(zhì)心定位算法的流程圖如圖2所示。

圖2 算法步驟流程圖
假設(shè)信標(biāo)節(jié)點(diǎn)和未知節(jié)點(diǎn)隨機(jī)的分布在區(qū)域100 m×100 m的環(huán)境當(dāng)中,對算法進(jìn)行仿真,驗(yàn)證該算法的有效性,并與傳統(tǒng)的RSSI算法進(jìn)行比較。設(shè)未知節(jié)點(diǎn)在(50,50)m處,產(chǎn)生RSSI數(shù)值,方差取2.5 m,衰減系數(shù)取4,計(jì)算出各自對應(yīng)的距離,定位誤差曲線如圖3所示。
在圖3中可知加權(quán)后的RSSI算法較RSSI算法定位誤差有明顯的降低,定位誤差如表1中所示,當(dāng)信標(biāo)節(jié)點(diǎn)的個數(shù)越多時(shí)呈現(xiàn)下降的趨勢,但是會增加硬件的成本,在信標(biāo)節(jié)點(diǎn)的個數(shù)為24個時(shí),定位的誤差降低到了6.67 %。

圖3 仿真結(jié)果
RSSI定位算法因?yàn)樵肼曀p不一致的干擾,造成定位的精度不高,距離越遠(yuǎn),定位的精度越低。針對RRSI定位算法距離較遠(yuǎn)時(shí)定位誤差較大的情況,引入一種加權(quán)閾值的算法加權(quán)定位,在不增加硬件的條件下,增加了定位的信息,仿真的結(jié)果表明:該算法可降低定位誤差,但實(shí)際環(huán)境中定位比仿真環(huán)境復(fù)雜,這將是下一步研究重點(diǎn)。

表1 兩種不同算法誤差的比較
參考文獻(xiàn):
[1] 王福豹,史 龍,任豐原.無線傳感器網(wǎng)絡(luò)中的自身定位系統(tǒng)和算法[J].軟件學(xué)報(bào),2005,16(5):1148-1157.
[2] 李牧東,熊 偉,梁 青.無線傳感器網(wǎng)絡(luò)質(zhì)心定位算法研究[J].科學(xué)技術(shù)與工程,2012,12(23):5778-5783.
[3] 王新芳,張 冰,馮友兵.基于粒子群優(yōu)化的改進(jìn)加權(quán)質(zhì)心定位算法[J].計(jì)算機(jī)工程,2012,38(1):90-92.
[4] 白進(jìn)京,嚴(yán)新平,張存保,等.基于加權(quán)質(zhì)心和DV-Hop混合算法WSNs定位方法研究[J].計(jì)算機(jī)應(yīng)用研究,2009,26(6):2248-2250.
[5] 王長征,湯文亮,徐 燕.無線傳感器網(wǎng)絡(luò)中四面體三維質(zhì)心定位算法[J].傳感器與微系統(tǒng),2012,31(8):141-143.
[6] 高 雷,鄭相全,張 鴻.無線傳感器網(wǎng)絡(luò)中一種基于三邊測量法和質(zhì)心算法的節(jié)點(diǎn)定位算法[J].重慶工學(xué)院學(xué)報(bào):自然科學(xué)版,2009,23(7):138-141.
[7] Bulusu N,Heidemann J,Estrin D.GPS-less low-cost outdoor localization for very small devices[J].IEEE Personal Communication,2000,7(5):28-34.
[8] 茍勝難.基于改進(jìn)的RSSI無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)定位算法研究[J].計(jì)算機(jī)應(yīng)用研究,2012,29(5):1867-1869.
[9] Rabacy J J,Ammer M J,Da Silva Jr J L,et al.Picorodio supports Ad Hoc ultra-low power wireless networking[J].Computer,2000,33(7):42-48.