陳燕+楊永雙
摘要:對無線傳感器網(wǎng)絡(luò)定位中常用的質(zhì)心算法進(jìn)行了改進(jìn)。改進(jìn)算法將盲節(jié)點接收到的RSSI數(shù)據(jù)轉(zhuǎn)換為距離,并將距離作為錨節(jié)點權(quán)值,從而估計出盲節(jié)點的坐標(biāo)位置。仿真結(jié)果表明,改進(jìn)算法提高了定位精度,降低了定位誤差,且沒有增添系統(tǒng)通信負(fù)擔(dān)及計算量。
關(guān)鍵詞:WSN定位;RSSI;加權(quán)質(zhì)心算法DOI:10.11907/rjdk.162748中圖分類號:TP312文獻(xiàn)標(biāo)識碼:A
文章編號:16727800(2017)004004103
0引言
無線傳感器網(wǎng)絡(luò)(Wireless Sensor Networks,WSN)由大量傳感器節(jié)點構(gòu)成,通過各類傳感器完成監(jiān)測對象信息的感知、采集和傳輸。WSN應(yīng)用范圍非常廣,涉及工業(yè)控制、農(nóng)業(yè)控制、環(huán)境監(jiān)測、醫(yī)療監(jiān)護(hù)、智能家居、倉儲物流等諸多領(lǐng)域,具有廣闊的產(chǎn)業(yè)發(fā)展前景[1]。傳感器節(jié)點定位技術(shù)是WSN的關(guān)鍵技術(shù)之一,是一個重要的研究方向。 WSN定位算法分為兩類[2]:一類是基于測距的定位算法。該算法將接收到的信號強度(Received Signal Strength Indicator,RSSI)、到達(dá)時間(Time of Arrival,TOA)、到達(dá)時間差(Time Difference of Arrival,TDOA)、到達(dá)角度(Angle of Arrival, AOA)等信號參數(shù)轉(zhuǎn)化為距離,然后通過三邊法、三角法、極大似然估計法等計算出位置信息。這種算法需要測量未知節(jié)點和參考節(jié)點之間的距離或角度信息,因此基于測距的定位算法對傳感器節(jié)點硬件有要求,但定位精度較高;另一類是基于非測距的定位算法。該算法通過網(wǎng)絡(luò)的連通性和跳數(shù)來定位,需要較高密度的參考節(jié)點。常見的非測距定位算法有質(zhì)心算法、APIT算法、DV-HOP、MDS-MAP算法等等。 質(zhì)心算法[3]完全基于網(wǎng)絡(luò)連通性,誤差較大,是一種定位精度不高的算法,但是質(zhì)心算法非常簡單,計算量少,可用于對未知節(jié)點坐標(biāo)的簡單估計。本文研究了加權(quán)質(zhì)心定位算法,給出了改進(jìn)算法思路,并提出了一種改進(jìn)方法,通過實驗仿真驗證了該算法的有效性。
1質(zhì)心定位算法 質(zhì)心算法是基于網(wǎng)絡(luò)連通性的定位算法。該算法的定位思想為:將在盲節(jié)點通信范圍內(nèi)的錨節(jié)點組成一個多邊形,多邊形的質(zhì)心即為該盲節(jié)點的估計位置。從式(1)可以看出質(zhì)心定位算法非常簡單,且不需要增加額外的硬件設(shè)施。但盲節(jié)點是通過鄰居錨節(jié)點組成的多邊形質(zhì)心來確定自身的估計位置,因此算法的精確度與錨節(jié)點的密度有很大關(guān)系。當(dāng)鄰居錨節(jié)點數(shù)較少時,定位精度會比較低。 質(zhì)心定位算法雖然估計出了未知節(jié)點的位置信息,但算法中所有錨節(jié)點的加權(quán)權(quán)值都一樣,沒有考慮到不同位置的錨節(jié)點對未知節(jié)點坐標(biāo)有不同的影響力,因此需對不同的錨節(jié)點加上不同的加權(quán)權(quán)值。加權(quán)質(zhì)心算法[3]計算公式為:
2距離損耗模型定位系統(tǒng)進(jìn)行距離測量時,一般選用以下的距離損耗模型[4]:
其中,A表示射頻參數(shù),其定義是距離發(fā)射器1m處所接收信號平均能量的絕對值,用dBm表示,n為環(huán)境因子,d表示與發(fā)射節(jié)點之間的距離。由式(3)可將接收到的RSSI值轉(zhuǎn)換為距離d。
3加權(quán)質(zhì)心定位算法改進(jìn)為了進(jìn)一步提高定位精度,降低盲節(jié)點定位產(chǎn)生的誤差,同時不增加通信開銷,節(jié)約能耗,本文對加權(quán)定位算法作了進(jìn)一步改進(jìn)。
3.1未知節(jié)點誤差設(shè)未知節(jié)點i的真實坐標(biāo)為(x′,y′),通過定位算法得出估計坐標(biāo)為(x,y)。定位誤差使用相對定位誤差[5],定義為:
其中N為盲節(jié)點個數(shù),Ei為第i個盲節(jié)點定位誤差。
3.2改進(jìn)思路不同距離的錨節(jié)點對盲節(jié)點的定位影響是不同的,錨節(jié)點和盲節(jié)點距離越近,對盲節(jié)點定位的影響越大;距離越遠(yuǎn),對盲節(jié)點的定位影響越小。因此,可以通過錨節(jié)點與盲節(jié)點之間的RSSI值計算出錨節(jié)點和盲節(jié)點間的距離,以此作為每個錨節(jié)點坐標(biāo)對應(yīng)的加權(quán)權(quán)值,反映每個錨節(jié)點坐標(biāo)對質(zhì)心位置的影響程度。定義各個錨節(jié)點的加權(quán)因子ωi = SX(1dki SX),即各個錨節(jié)點的加權(quán)權(quán)值與它們距盲節(jié)點的距離成反比,距離越近,給予的權(quán)值越大;距離越遠(yuǎn),給予的權(quán)值越小。當(dāng)距離指數(shù)k取不同值時,可得到如圖2所示的曲線。圖2的仿真環(huán)境:在200m×200m區(qū)域內(nèi),40個錨節(jié)點和200個盲節(jié)點隨機分布,節(jié)點的通信半徑設(shè)為20m,k從0.1~5,步長取0.1。從圖2可以看出,當(dāng)指數(shù)k在2附近時定位誤差最小。k越大,距離盲節(jié)點最近的錨節(jié)點給予的權(quán)值也就越大,特別是大于2之后,盲節(jié)點就越接近該錨節(jié)點,也就越可能遠(yuǎn)離盲節(jié)點的實際位置,這樣就加大了定位誤差。圖3是仿真運行1 000次各指數(shù)出現(xiàn)誤差最小值的次數(shù)。經(jīng)統(tǒng)計,誤差最小值95%出現(xiàn)在指數(shù)k=[1.9,2.0,2.1,2.2],考慮到方便計算,k取2,即加權(quán)系數(shù)ωi = SX(1d2i SX)。
3.3改進(jìn)算法步驟(1)錨節(jié)點周期性地向周圍環(huán)境發(fā)送節(jié)點ID、自身位置信息等。
3.4仿真分析本文采用Matlab軟件作為仿真平臺,仿真場景為一定區(qū)域內(nèi)隨機布置若干個傳感器節(jié)點,所有傳感器節(jié)點均具有相同的結(jié)構(gòu)并且發(fā)射功率相同。圖4為其中的一個仿真環(huán)境,在100m×100m區(qū)域內(nèi),40個錨節(jié)點和200個盲節(jié)點隨機分布,節(jié)點的通信半徑設(shè)為20m。
圖5為節(jié)點的通信半徑變化時仿真程序運行1000次的平均結(jié)果。仿真環(huán)境:200m×200m,60個錨節(jié)點,240個盲節(jié)點。從圖5可以看出,當(dāng)加權(quán)指數(shù)取2時,平均定位誤差最小。隨著通信半徑的增加,定位誤差會隨之減小,這是因為通信半徑的增加使參與定位的錨節(jié)點數(shù)目增加,定位精度得到了提高。為當(dāng)錨節(jié)點數(shù)改變時,仿真程序運行1000次的平均結(jié)果如圖6所示。仿真環(huán)境:200m×200m環(huán)境,盲節(jié)點數(shù)為200個,通信半徑為35m。從圖6可以看出,當(dāng)加權(quán)指數(shù)取2時,平均定位誤差最小。隨著錨節(jié)點數(shù)的增加,定位誤差會隨之減小,這是因為錨節(jié)點增加使參與定位的錨節(jié)點數(shù)目增加,定位精度得到了提高。
4結(jié)語 本文利用RSSI值和距離之間的轉(zhuǎn)換,將接收到的RSSI值轉(zhuǎn)換為距離,并以此為錨節(jié)點加權(quán)系數(shù),對質(zhì)心定位算法進(jìn)行了改進(jìn)。從仿真結(jié)果可以看出,本文提出的算法提高了定位精度,降低了定位誤差,且沒有增添系統(tǒng)通信負(fù)擔(dān),也沒有加大系統(tǒng)計算量。
參考文獻(xiàn)參考文獻(xiàn):[1]楊錚,吳陳沭,劉云浩.位置計算:無線網(wǎng)絡(luò)定位與可定位性[M].北京:清華大學(xué)出版社,2014.[2]劉鋒,章登義.基于RSSI的無線傳感器網(wǎng)絡(luò)質(zhì)心定位算法[J].計算機科學(xué),2012,39(6):9698.
[3]楊新宇,孔慶茹,戴湘軍.一種改進(jìn)的加權(quán)質(zhì)心定位算法[J].西安交通大學(xué)學(xué)報,2010,44(8):14.
[4]朱明輝,張會清.基于RSSI的室內(nèi)測距模型的研究[J].傳感器與微系統(tǒng),2010,29(8):1922.
[5]吳磊,侯忠偉,許登元,等.無線傳感器網(wǎng)絡(luò)中基于錨節(jié)點功率調(diào)節(jié)的加權(quán)質(zhì)心定位算法[J].微電子學(xué)與計算機,2012,29(10):177180.
(責(zé)任編輯:杜能鋼)