無線傳感器網(wǎng)絡(luò)用于監(jiān)測系統(tǒng)中的定位算法
在PC機(jī)上測試獲取到的RSSI值和ID節(jié)點(diǎn)信息,如圖5所示。
計(jì)算出未知節(jié)點(diǎn)和每個(gè)錨節(jié)點(diǎn)之間的距離di,最后通過式(5)計(jì)算出未知節(jié)點(diǎn)的坐標(biāo)。
4 定位的測試
基于RSSI測距時(shí)需要標(biāo)定出(3)式中的常數(shù)A和傳播因子n。標(biāo)定這個(gè)兩個(gè)因素可通過星型Zigbee網(wǎng)絡(luò)來實(shí)現(xiàn),成功組網(wǎng)后將中心節(jié)點(diǎn)通過USB轉(zhuǎn)串口線和PC機(jī)相連,通過串口調(diào)試器觀察中心節(jié)點(diǎn)獲取的RSSI值和對(duì)應(yīng)子節(jié)點(diǎn)ID號(hào)。
4.1 A值的標(biāo)定
A值即距離發(fā)射節(jié)點(diǎn)1m遠(yuǎn)處接收到的信號(hào)強(qiáng)度,為了減小誤差,同時(shí)測量了距離中心節(jié)點(diǎn)1 m遠(yuǎn)的三個(gè)不同方向上中心節(jié)點(diǎn)和子節(jié)點(diǎn)通信的RSSI值,如圖6所示。
,選擇測量直線相距發(fā)射節(jié)點(diǎn)5 m遠(yuǎn)處接收到的信號(hào)強(qiáng)度,共測量20組數(shù)據(jù),如表2所示。
經(jīng)過計(jì)算得n的平均值為2.5037,故選擇n=3。
4. 3 定位的測試
定位測試在一片空曠的場地上進(jìn)行的,選擇了6個(gè)無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)組建Zigbee網(wǎng)絡(luò),1個(gè)中心節(jié)點(diǎn)、1個(gè)未知節(jié)點(diǎn)和4個(gè)錨節(jié)點(diǎn),節(jié)點(diǎn)的發(fā)射功率設(shè)置為0 dBm。4個(gè)錨節(jié)點(diǎn)提前人工布置于一塊8 mx8 m的正方形地面四角,未知節(jié)點(diǎn)位于正方形中心,中心節(jié)點(diǎn)布置在正方形外圍,整個(gè)節(jié)點(diǎn)布局如圖7所示。
測試中發(fā)現(xiàn)一個(gè)錨節(jié)點(diǎn)沒有入網(wǎng),未知節(jié)點(diǎn)與3個(gè)錨節(jié)點(diǎn)通信,接收到RSSI值如下表3所示:
已知與未知節(jié)點(diǎn)通信的三個(gè)錨節(jié)點(diǎn)的相對(duì)坐標(biāo)為: (0,0)(0,8)(8,8),A=-73,n=3,經(jīng)過計(jì)算得:未知節(jié)點(diǎn)和與之通信的3個(gè)錨節(jié)點(diǎn)通信的RSSI均值分別為-92.6、-93.2、-92.1,未知節(jié)點(diǎn)和錨節(jié)點(diǎn)之間的距離分別為:d1=4.501;d2=4.713;d3=4.332;未知節(jié)點(diǎn)的坐標(biāo)為: (x,y)=(3.391,3.535)。
4.4 誤差分析
實(shí)際情況下,未知節(jié)點(diǎn)的相對(duì)坐標(biāo)應(yīng)該是(4,4),實(shí)際箅出來的坐標(biāo)是(3.391,3.535),所以實(shí)際測量是存在誤差的。誤差計(jì)算如下式:
5 結(jié)束語
本文基于無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)的自主設(shè)計(jì),采用基于RSSI的加權(quán)質(zhì)心算法實(shí)現(xiàn)了WSN節(jié)點(diǎn)的自定位。通過實(shí)際測試證明,相對(duì)于單一的質(zhì)心定位算法,該算法利用得到的RSSI作為權(quán)值來修正質(zhì)心定位的結(jié)果,提高了定位精度,且易于實(shí)現(xiàn),能夠滿足大多數(shù)的實(shí)際應(yīng)用中定位的需求。另一方面,在實(shí)際測試中發(fā)現(xiàn),RSSI值易受到多徑、障礙物等環(huán)境因素的影響,故存RSSI測距中引進(jìn)了較多的誤差,基于RSSI測距的精度還有待進(jìn)一步的提高。
評(píng)論