周海洋, 余 劍, 張衛(wèi)濤
(1.電子工程學院 電子線路教研室,安徽 合肥 230037;2.解放軍 63758部隊,福建 廈門 361021)
在無線傳感器網(wǎng)絡(luò)的各研究分支中,節(jié)點定位是無線傳感器網(wǎng)絡(luò)中的重要技術(shù)。 目前無線傳感器網(wǎng)絡(luò)節(jié)點定位方法主要分為兩類:基于測距的(range-based)方法和非基于測距的(range-free)方法[1],基于測距的方法需要測量節(jié)點間的距離或者角度信息,然后使用三邊測量、三角測量或者多邊定位算法[2]實現(xiàn)節(jié)點間的定位。目前常見的測距技術(shù)包括:接收信號強度指示(received signal strength indication,RSSI)法[3]、到達角(angle of arrival,AOA)法[4]、到達時間(time of arrival,TOA)法[5]和到達時間差(time difference of arrival,TDOA)法[6]。
本文主要研究的是基于RSSI的定位算法。這種方法是通過測出接收信號的場強值和已知的信道衰落模型及發(fā)射信號的場強值估算出收發(fā)信機節(jié)點之間的距離,根據(jù)多個距離值即能估計出目標的位置。一般情況下,如果同時有3個參考發(fā)信機節(jié)點,就可以確定收信機節(jié)點的位置了。基于RSSI的定位方法克服了TOA,TDOA和AOA方法需要額外的硬件設(shè)備的缺點,實現(xiàn)起來比較簡單。它首先需要確定待測環(huán)境下的信號傳播模型的各個參數(shù),然后便可根據(jù)定位目標接收到的來自參考點的接收信號強度計算出定位目標與參考點之間的距離,進而利用幾何法計算出定位目標的位置。多邊定位算法是幾何法中比較常用的一種算法,通過多個參考節(jié)點與定位節(jié)點之間的距離構(gòu)建方程,通過最小二乘法求解,具有較高的定位精度,但是多邊法也存在不足之處,構(gòu)建方程過程中參考節(jié)點序號的選取會對定位精度產(chǎn)生一定影響。本文通過對測距誤差平方和的分析,選取合適的參考節(jié)點序號,有效地提高了定位精度。
如圖1所示,已知參考節(jié)點A1,A2,A3,A4…的坐標為(x1,y1),(x2,y2),(x3,y3),(x4,y4) …。設(shè)位置未知節(jié)點(盲節(jié)點)A0坐標為(x0,y0),參考節(jié)點與盲節(jié)點之間的測距距離為d1,d2,d3,d4…。設(shè)盲節(jié)點的位置估計值為(x,y),參考節(jié)點到估計位置的距離與測距之間的差異用式(1)表示
i=1,2,3,…n.
(1)
誤差平方和記為
(2)
目前的常用的方法是通過最小二乘法來獲取最優(yōu)的位置估計[7],具體過程如下:
首先對公式(2)處理得
圖1 多邊定位算法原理圖
(3)
然后將第1個至第n-1個方程分別減去第n個方程(此處選取的是第n個方程作為消元中的被減方程),整理后可得
(4)
寫成線性方程的形式AX=B,
(5)
其中
可得出最小二乘解
(6)
文獻[8]指出了多邊定位算法的一個不足:當某盲節(jié)點的參考節(jié)點數(shù)n>3時,基于式(6)得到估計位置會受到參考節(jié)點標號的影響,即對固定的n個鄰近節(jié)點,參考節(jié)點不同的標號使得消元過程中被減的參考方程不同,導致估計結(jié)果不同。
文獻[8]對這一現(xiàn)象進行了分析,認為原因是利用消元法由式(1)得到了式(5),解式(6)是式(5)最小二乘解,但一般不是最小化估計均方誤差平方和(式(2))的最優(yōu)估計值。這一現(xiàn)象對最后的定位精度也會有影響。
本文研究的是以RSSI測距為基礎(chǔ)的多邊定位算法,實驗使用TI公司的無線收發(fā)芯片CC2430完成固定節(jié)點和待定節(jié)點間的通信以及RSSI的采集。CC2430有一個內(nèi)置的RSSI,其數(shù)字值為8位有符號的二進制補碼,可以從寄存器位RSSIL.RSSI_VAL讀出。
在基于RSSI測距實驗中,信號衰減模型一般簡化為
RSSI=-(10nlgd+A),
(7)
式中n為信號衰減因子,范圍一般為2-5;d為定位節(jié)點與參考節(jié)點之間的距離,單位為m;A為定位節(jié)點與參考節(jié)點之間的距離,d為1 m時測得的信號功率。實驗中,測得n為3.5,A為40 dBm。
實驗場景是選擇在學校操場的空曠區(qū)域,區(qū)域大小為15 m×15 m,4個參考節(jié)點放置在正方形區(qū)域的4個角落。如圖2所示。
圖2 實驗場景(15 m×15 m)
實驗結(jié)果以(5,5)m,(5,10)m,(10,5)m,(10,10)m為例,分別分析了4個參考節(jié)點分別作為消元對象時所產(chǎn)生的誤差平方和值和定位精度,本文選取測試坐標和實際坐標之間的歐氏距離作為定位精度量值。以盲節(jié)點實際位置為(5,5)m為例,從圖3可以看到當4#參考節(jié)點作為消元過程對象時,誤差平方和最小,此時對應定位精度也最高。圖4、圖5、圖6同樣顯示了誤差平方和最小的對應的參考節(jié)點作為消元對象時,定位精度是最高的。
圖3 盲節(jié)點位于(5,5)m誤差平方和和定位誤差
圖4 盲節(jié)點位于(5,10)m誤差平方和和定位誤差
圖5 盲節(jié)點位于(10,5)m誤差平方和和定位誤差
圖6 盲節(jié)點位于(10,10)m誤差平方和和定位誤差
如表1,不同的參考節(jié)點作為消元對象會產(chǎn)生不同的定位誤差。最大的定位誤差3~4 m左右,而最小誤差平方和對應的參考節(jié)點作為消元對象所產(chǎn)生的的定位精度明顯提高,以本文實驗的4個定位位置為例,最大定位精度可達到3.6 m。
表1 定位精度對比表
本文在結(jié)合文獻分析多邊定位算法基礎(chǔ)上,提出了基于最小誤差平方和的多邊對位算法,根據(jù)不同參考節(jié)點作為消元對象產(chǎn)生的誤差平方和,選取合適的參考節(jié)點作為消元對象,這種方法對于提高定位精度有較好的效果。以實驗中的參考位置為例,定位精度最大可提高3.6 m。但是該方法性能的提高是以犧牲計算復雜度為代價實現(xiàn)的,因此,這種更適合對于計算復雜度要求不高的定位場景。
參考文獻:
[1] Mao Guoqiang,Fidan B,Anderson B D O.Wireless sensor networks localization techniques[J].Computer Networks,2007,51(10):2529-2553.
[2] 王 琦.基于無線傳感器網(wǎng)絡(luò)的室內(nèi)定位技術(shù)研究與實現(xiàn)[D].西安:西安電子科技大學,2012:11-15.
[3] 章堅武,張 璐.基于Zig Bee的RSSI測距研究[J].傳感技術(shù)學報,2009,22(2):285-288.
[4] Patwari N,Hero A O,Perkins M,et a1.Relative location estimation in wireless sensor networks[J].IEEE Tansactions on Signal Processing,2003,51(8):2137-2148.
[5] Priyanath N B,Chakraborty A,Balakrishna H.The cricket location support system[C]∥Proceeding of Mobile Computing and Networking,Boston,ACM,2000:32-43.
[6] Niculescu D,Nath B.Ad Hoc positioning system(APS)using AOA[C]∥Proceeding of the IEEE/INFOCOM’2003:IEEE Computer Society,2003:1734-1743.
[7] Savvides A,Han C C,Srivastava M.Dynamic fine-grained localization in Ad Hoc networks of sensors[C]∥Proceedings of Mobile Computing and Networking,Rome:ACM,2001:166-179.
[8] 羅 旭,柴 利,楊 軍.無線傳感器網(wǎng)絡(luò)SL-n迭代定位算法[J].通信學報,2011,32(5):130-138.