ZigBee技術中基于RSSI測距的定位算法研究
2.3 最小二乘法修正距離
從式(1)可以看出,如果知道參考節(jié)點與盲節(jié)點之間的RSSI值,則可以估算出兩個節(jié)點之間的距離。然而不同的環(huán)境下可能存在不同的信號干擾,采用節(jié)點之間的RSSI值估算距離必然存在一定的誤差。這時可以根據特定的環(huán)境對測量到的距離采用傳統(tǒng)的最小二乘法進行修正。得到修正后的距離,從而可以更加精確地估算出盲節(jié)點的坐標。具體步驟如下:
①根據實際情況布置好節(jié)點,參考節(jié)點(Mi,Ni)與盲節(jié)點(Mj,Nj)的位置坐標均已知。可以根據

②根據式(1)估算出盲節(jié)點與各個參考節(jié)點之間的距離yi。
③采用最小二乘法擬合實際距離xi與估計距離yi的關系。假設兩者之間的關系為yi=axi+b,為了使所有數據偏差的平方和很小,假設



根據得到的a與b的值可以擬合出修正距離與估計距離的關系Y修=a×X估+b,結合式(1)可以得到:

④布置盲節(jié)點,通過式(1)估計肓節(jié)點與參考節(jié)點之間的距離x,通過第3步擬合好的修正距離與估計距離之間的關系修正估計距離,得到修正的距離Y修。
2.4 盲節(jié)點坐標估計
選擇3個接收信號強度最強的參考節(jié)點,采用三邊測量法估計出肓節(jié)點坐標值。假設3個參考節(jié)點A、B、C的坐標分別為(ma,na)、(mb,nb)、(mc,nc),盲節(jié)點E的坐標(m,n)未知。通過2.3節(jié)4個步驟得到盲節(jié)點與3個參考節(jié)點的修正距離分別為da、db、dc。則根據兩點之間的距離公式可以得到式(5):

評論