花 超,吉小軍,蔡 萍,韓 韜
(上海交通大學(xué)電子信息與電氣工程學(xué)院,上海 200240)
節(jié)點(diǎn)定位技術(shù)在無線傳感器網(wǎng)絡(luò)(WSNs)中,除了用來報(bào)告事件發(fā)生的地點(diǎn)之外,還可用于目標(biāo)跟蹤、輔助路由以及網(wǎng)絡(luò)管理等,因而成為一個(gè)很重要的研究方向和熱點(diǎn)。目前的定位算法從原理上主要可分為兩大類,基于測(cè)距的算法(range-based)和無需測(cè)距算法(range-free)[1]?;跍y(cè)距的算法是通過物理測(cè)量獲得節(jié)點(diǎn)間的距離或角度信息,使用三邊測(cè)量、三角測(cè)量或最大似然估計(jì)等定位算法。常見的測(cè)距技術(shù)包括到達(dá)時(shí)間(time of arrival,ToA)[2]、到達(dá)時(shí)間差(time difference of arrival,TDoA)[3]、到達(dá)角度(angle of arrival,AoA)[4]、接收信號(hào)強(qiáng)度指示(RSSI)[5]等。一般來說這類算法具有較高的定位精度,但對(duì)節(jié)點(diǎn)硬件要求也較高。實(shí)際應(yīng)用中基于RSSI的定位算法,由于成本低、操作簡(jiǎn)單而受到了廣泛的關(guān)注。
針對(duì)建筑群環(huán)境相比曠廣室外存在更多的遮蔽、繞射等干擾,使得參與定位的RSSI信號(hào)衰減復(fù)雜,本文在分析了無線電傳播路徑損耗模型的基礎(chǔ)上,提出了利用差分修正方法對(duì)RSSI距離值進(jìn)行處理,優(yōu)選信標(biāo)節(jié)點(diǎn)根據(jù)三邊測(cè)量和加權(quán)質(zhì)心算法計(jì)算節(jié)點(diǎn)位置的算法。該算法無需額外增加硬件。仿真表明:本文提出的算法能適應(yīng)建筑群類的工作,具有較高的定位精度且沒有顯著增加運(yùn)算量。
在WSNs中,由于傳感器節(jié)點(diǎn)自身具備通信能力,芯片通常會(huì)提供測(cè)量RSSI方法,在信標(biāo)節(jié)點(diǎn)廣播自身位置的同時(shí)完成RSSI測(cè)量。其誤差主要來源于信號(hào)實(shí)際傳播過程中環(huán)境影響造成的信號(hào)衰減與理論或經(jīng)驗(yàn)?zāi)P筒环斐蓪?shí)際建模的復(fù)雜性。
目前常用的信號(hào)傳播模型包括自由空間傳播模型、對(duì)數(shù)距離路徑損耗模型、哈它模型、對(duì)數(shù)—常態(tài)分布模型等,其中,使用最為廣泛的對(duì)數(shù)—常態(tài)分布模型為
式中d為距信源的距離,km;k為路徑衰減因子,經(jīng)驗(yàn)范圍區(qū)間一般取[2,5];Xz為均值為0的高斯分布隨機(jī)變數(shù),其標(biāo)準(zhǔn)差范圍一般?。?,10];PL(d0)為自由空間傳播模型損耗基礎(chǔ)值,按式Loss=32.4+10klgd+10klgf取d=1m計(jì)算,其中,f為頻率MHz。
這樣根據(jù)上式可得到各未知節(jié)點(diǎn)接收信標(biāo)節(jié)點(diǎn)信號(hào)時(shí)的信號(hào)強(qiáng)度為
其中,P為發(fā)射功率,G為天線增益。按此式即可以計(jì)算出未知節(jié)點(diǎn)到信標(biāo)節(jié)點(diǎn)的距離d。
實(shí)際環(huán)境中由于多路徑反射、障礙物阻隔等因素信號(hào)傳輸往往是各向異性的,很難有一個(gè)模型能與實(shí)際情況完全吻合,從而嚴(yán)重影響定位精度。本文針對(duì)建筑群環(huán)境中RSSI值受到的障礙物阻隔影響嚴(yán)重的實(shí)際情況,提出對(duì)RSSI模型進(jìn)一步作差分修正[6]的方法。
如圖 1 所示,信標(biāo)節(jié)點(diǎn)為B0(x0,y0),B1(x1,y1),B2(x2,y2),…,Bn(xn,yn),目標(biāo)節(jié)點(diǎn)O。B0是與目標(biāo)節(jié)點(diǎn)O最近的信標(biāo)節(jié)點(diǎn),令其為差分參考節(jié)點(diǎn),參考節(jié)點(diǎn)B0到信標(biāo)節(jié)點(diǎn)B1,B2,…,Bn的實(shí)際距離分別為d01,d02,…,d0n;目標(biāo)節(jié)點(diǎn)O到信標(biāo)節(jié)點(diǎn)B1,B2,…,Bn的差分測(cè)量距離分別為d1,d2,…,dn。
圖1 差分修正定位算法示意圖Fig 1 Diagram of difference modified localization algorithm
由于不同信標(biāo)節(jié)點(diǎn)所處的環(huán)境具有差異性,導(dǎo)致其對(duì)參考節(jié)點(diǎn)的測(cè)量距離和實(shí)際距離的誤差也是不一樣的,為了反映該差異性,對(duì)不同的信標(biāo)節(jié)點(diǎn)引入個(gè)體差異修正系數(shù),定義為
式中d0i為參考節(jié)點(diǎn)到第i個(gè)信標(biāo)節(jié)點(diǎn)的測(cè)量距離,d0i為參考節(jié)點(diǎn)到第i個(gè)信標(biāo)節(jié)點(diǎn)的實(shí)際距離,n為參與定位的信標(biāo)節(jié)點(diǎn)個(gè)數(shù)。
同時(shí)引入距離差分系數(shù),定義目標(biāo)節(jié)點(diǎn)到第i個(gè)信標(biāo)節(jié)點(diǎn)的距離差分系數(shù)為
其中,λ為比例調(diào)整因子,di為目標(biāo)節(jié)點(diǎn)到第i個(gè)信標(biāo)節(jié)點(diǎn)的測(cè)量距離,n為參與定位的信標(biāo)節(jié)點(diǎn)個(gè)數(shù)。
由此得到目標(biāo)節(jié)點(diǎn)到第i個(gè)信標(biāo)節(jié)點(diǎn)的修正距離
其中,參考節(jié)點(diǎn)測(cè)量距離誤差e0i=d0i-d0i,n為參與定位的信標(biāo)節(jié)點(diǎn)個(gè)數(shù)。
利用差分修正RSSI模型得到精度更高的RSSI距離值后,提出了采用基于三邊測(cè)量法的加權(quán)質(zhì)心定位算法實(shí)現(xiàn)高精度定位[7,8]。
假設(shè)已知A,B,C三個(gè)節(jié)點(diǎn)的坐標(biāo)分別為(xA,yA)(xB,yB)(xC,yC)和它們到目標(biāo)節(jié)點(diǎn)M的距離分別為dA,dB,dC,目標(biāo)節(jié)點(diǎn)M的坐標(biāo)為(x,y),則有
求解該方程就可以得到目標(biāo)節(jié)點(diǎn)的坐標(biāo)(x,y),這就是三角測(cè)量定位的基本原理。
實(shí)際定位過程中,如果有n個(gè)信標(biāo)節(jié)點(diǎn)參與定位,則可得到C3n組目標(biāo)節(jié)點(diǎn)坐標(biāo)值。受隨機(jī)干擾和環(huán)境差異的影響,用不同的信標(biāo)節(jié)點(diǎn)組合所得到的目標(biāo)節(jié)點(diǎn)位置坐標(biāo)值會(huì)有一定差異,為了充分利用多個(gè)信標(biāo)節(jié)點(diǎn)的定位信息,提高定位精度,可利用加權(quán)質(zhì)心定位得到的目標(biāo)節(jié)點(diǎn)坐標(biāo)的最佳估計(jì)值。文獻(xiàn)[9]中提出的加權(quán)質(zhì)心定位算法,用信標(biāo)節(jié)點(diǎn)對(duì)未知節(jié)點(diǎn)的不同影響力來確定加權(quán)因子以提高定位精度。并且在理論分析的基礎(chǔ)上,提出了優(yōu)選信標(biāo)節(jié)點(diǎn)進(jìn)行節(jié)點(diǎn)定位計(jì)算的規(guī)則,以此進(jìn)一步提高節(jié)點(diǎn)定位精度.加權(quán)質(zhì)心定位算法計(jì)算簡(jiǎn)單,定位過程中節(jié)點(diǎn)間無通信開銷,節(jié)點(diǎn)定位精度較常用的極大似然估計(jì)算法高,具有較普遍的應(yīng)用意義。
加權(quán)質(zhì)心定位算法的基本思想是通過加權(quán)因子來體現(xiàn)信標(biāo)節(jié)點(diǎn)對(duì)質(zhì)心坐標(biāo)貢獻(xiàn)的大小,一般來說,距離越近的信標(biāo)節(jié)點(diǎn)對(duì)定位精度的影響就越大,因此,可通過距離因子來體現(xiàn),定義加權(quán)因子為
在建筑群區(qū)域內(nèi),放置若干信標(biāo)節(jié)點(diǎn),各個(gè)信標(biāo)節(jié)點(diǎn)位置分布均勻,固定。自組網(wǎng)形成WSNs。組網(wǎng)成功后進(jìn)行以下工作:
1)信標(biāo)節(jié)點(diǎn)以相同功率周期性發(fā)送自身信息:節(jié)點(diǎn)ID,自身位置信息;
2)目標(biāo)節(jié)點(diǎn)在收到信息后,記錄不同信標(biāo)節(jié)點(diǎn)的超過設(shè)定閾值的RSSI值??紤]到瞬時(shí)干擾問題,采用高斯分布對(duì)接收到的RSSI值進(jìn)行初步處理,提高RSSI值的可靠性。
3)目標(biāo)節(jié)點(diǎn)在收到M個(gè)有效信標(biāo)信息后,對(duì)信標(biāo)節(jié)點(diǎn)依其RSSI值從大到小排序,建立3個(gè)集合:
信標(biāo)節(jié)點(diǎn)集合:Beacon-set={a0,a1,a2,…,am};
信標(biāo)節(jié)點(diǎn)位置集合:{x0,y0),(x1,y1),(x2,y2),…,(xm,ym)};
差分參考節(jié)點(diǎn)(x0,y0)到其他信標(biāo)節(jié)點(diǎn)的實(shí)際距離集合:Dist-set-real={d01,d02,…,d0m}。
差分參考節(jié)點(diǎn)(x0,y0)到其他信標(biāo)節(jié)點(diǎn)的測(cè)量距離集合:Dist-set-test={d01,d02,…,d0m}。
4)在Beacon-set集合中優(yōu)先選擇RSSI值大的信標(biāo)節(jié)點(diǎn)組合成下面的三角形集合
利用差分修正有關(guān)公式求出目標(biāo)節(jié)點(diǎn)到信標(biāo)節(jié)點(diǎn)的差分修正距離集合
5)利用三邊測(cè)量法公式,分別求出位置節(jié)點(diǎn)的坐標(biāo)估計(jì)M1(x1,y1),M2(x2,y2),M3(x3,y3),…
所得結(jié)果代入加權(quán)質(zhì)心算法公式,求得待測(cè)節(jié)點(diǎn)坐標(biāo)M(x1,y1)。
利用Matlab仿真,基本初始條件為WSNs位于100 m×100 m區(qū)域內(nèi),該區(qū)域左下角坐標(biāo)為(-50,50 m),右上角坐標(biāo)為(50,50 m)。未知節(jié)點(diǎn)位于(0,0 m)點(diǎn),為適應(yīng)室內(nèi)定位,信標(biāo)節(jié)點(diǎn)等距放置,根據(jù)一般室內(nèi)環(huán)境得到路徑損耗k=2.45,參考距離1 m處的接收功率P= -37.8 dB。
仿真不同信標(biāo)節(jié)點(diǎn)數(shù)目為 9,12,16,25,36 時(shí),進(jìn)行100次實(shí)驗(yàn),每次實(shí)驗(yàn)采用符合高斯分布的RSSI值中最大的3個(gè)或者4個(gè)信標(biāo)節(jié)點(diǎn)參與定位計(jì)算,得到定位誤差數(shù)據(jù)。圖2為4個(gè)信標(biāo)節(jié)點(diǎn)參與目標(biāo)節(jié)點(diǎn)定位的定位算法誤差統(tǒng)計(jì),圖3為5個(gè)信標(biāo)節(jié)點(diǎn)參與目標(biāo)節(jié)點(diǎn)定位的誤差統(tǒng)計(jì)。表1為不同信標(biāo)節(jié)點(diǎn)總數(shù),參與定位節(jié)點(diǎn)不同的定位誤差統(tǒng)計(jì)情況表。
圖2 4個(gè)信標(biāo)節(jié)點(diǎn)參與定位誤差統(tǒng)計(jì)Fig 2 4 beacon nodes involve in positioning error statistics
圖3 5個(gè)信標(biāo)節(jié)點(diǎn)參與定位誤差統(tǒng)計(jì)Fig 3 5 beacon nodes involve in positioning error statistics
表1 定位誤差統(tǒng)計(jì)表Tab 1 Location error statistics
由以上數(shù)據(jù)對(duì)比可知,本文利用差分修正RSSI值的加權(quán)定位質(zhì)心算法定位誤差較小,復(fù)雜定位環(huán)境下,定位精度優(yōu)于普通未修正的加權(quán)質(zhì)心定位算法。
本文從室內(nèi)定位的方向研究,針對(duì)室內(nèi)定位精度不高問題,提出了基于RSSI差分修正的加權(quán)質(zhì)心定位算法,該算法無需增加額外的硬件,能較好地使用室內(nèi)WSNs低成本與低功耗的要求。仿真結(jié)果也表明:該算法定位精度高,算法復(fù)雜度不大,能很好地使用室內(nèi)定位。
[1] He T,Huang C D,Blum B M,et al.Range-free localization schemes in large scale sensor networks[C]∥Proc of the 9th Annual Int’1 Conf on Mobile Computing and Networking,San Diego,2003:81 -95.
[2] Harter A,Hopper A,Steggles P,et a1.The anatomy of a contextaware application[C]∥Proceedings of the 5th Annual ACM/IEEE International Conference on Mobile Computing and Networking,New York,USA:ACM,1999:59 -68.
[3] Girod L,Estrin D.Robust range estimation using acoustic and muhimodal sensing[C]∥Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems,Piscalaway,USA:IEEE,2001:1312 -1320.
[4] Niculescu D,Nath B.Ad Hoc positioning system(APS)using AoA[C]∥Proceedings of the IEEE INFO-COM,NewYork,USA:IEEE,2003:1734 -1743.
[5] Bahl P,Padmanabhan V N.RADAR,an inbuilding on RF-based user location and tracking system[C]∥IEEE Computer and Communications Societies Conference,2000:775 -784.
[6] 任維政,徐連明,鄧中亮.基于RSSI的測(cè)距差分修正定位算法[J].傳感技術(shù)學(xué)報(bào),2008,21(7):247 -1250.
[7] 林 瑋,陳傳峰.基于RSSI的無線傳感器網(wǎng)絡(luò)三角形質(zhì)心定位算法[J].現(xiàn)代電子技術(shù),2009,32(2):180 -182.
[8] 陳維克,李文鋒,首 珩,等.基于RSSI的無線傳感器網(wǎng)絡(luò)加權(quán)質(zhì)心定位算法[J].武漢理工大學(xué)學(xué)報(bào),2006,30(2):265-268.
[9] 孫利民,李建中,陳 渝,等.無線傳感器網(wǎng)絡(luò)[M].北京:清華大學(xué)出版社,2005:138.