一種改進的無線傳感器網(wǎng)絡節(jié)點定位技術
三邊測距算法確定未知節(jié)點坐標的思想如圖2所示。本文引用地址:http://2s4d.com/article/159376.htm
由于三邊測距算法基于兩條直線的交點來估算未知節(jié)點的坐標,未充分利用A,B,C 3個節(jié)點的坐標信息,使估算的未知節(jié)點的坐標可能存在較大誤差。
在圖3中,根據(jù)式(1)~式(3)可解出圓A與圓C的交點Mac1(xac1,yac1)和Mac2(xac2,yac2),圓B與圓C的交點Mbc1(xbc1,ybc1)和Mbc2(xbc2,ybc2);圓A與圓B的交點Mab1(xab1,yab1),Mab2(xab2,yab2)。通過將圓A與圓C交點Mac1(xac1,yac1),Mac2(xac2,yac2)代人式(x-x2)2+(y-y2)2,判斷大小即可找出兩點距圓B的圓心較近的點,假設為Mac1(xac1,yac1)。同理可找出圓B,圓C交點中距圓A較近的點設為Mbc1(xbc1,ybc1),圓A,圓B交點中距圓C的圓心較近的點設為Mab2(xab1,yab1),依據(jù)質(zhì)心思想估算未知節(jié)點D的坐標為
從上述分析可知,若要對未知節(jié)點的定位誤差進行補償首先需要獲得信標節(jié)點的坐標誤差。獲得信標節(jié)點坐標誤差的過程中,由于取不同的3個信標節(jié)點做三邊定位同樣會得到不同的測量值,需要用這些測量值來得到最終的信標節(jié)點A0的計算坐標。文中采用加權質(zhì)心算法來計算信標節(jié)點的計算坐標,如圖3所示。
假設A01,A02,A03,…,A0n為A0坐標的多個不同測量值;A0’為A01,A02,A03,…,A0n的質(zhì)心;d1,d2,…,dn為坐標A0到坐標A01,A02,A03,…,A0n的距離。
定義1 信標節(jié)點的計算坐標
為加權因子,表示坐標Aoi的權重,離質(zhì)心A0’的距離越近,所占的權重則越大;xi為Aoi的X坐標值,yi為Aoi的Y坐標值所以信標節(jié)點的坐標誤差為
式中,x為信標節(jié)點X坐標實際值;xc為信標節(jié)點計算坐標X值;y為信標節(jié)點Y坐標實際值;yc為信標節(jié)點計算坐標Y值。信標節(jié)點的坐標誤差反映了系統(tǒng)針對該節(jié)點附近區(qū)域的定位能力。
然而在定位系統(tǒng)實際應用過程中,未知節(jié)點B未必恰好處于某個信標節(jié)點附近,而可能離各個信標節(jié)點距離相當,因此并不能按照理想情況直接用A0的坐標誤差去補償未知節(jié)點B的坐標誤差。但是,每個信標節(jié)點所在區(qū)域的定位誤差都可以通過信標節(jié)點坐標誤差來反映,綜合考慮所有信標節(jié)點坐標誤差就可得到由信標節(jié)點所構成的區(qū)域定位誤差,只要未知節(jié)點B處于該區(qū)域內(nèi),其坐標誤差就可以用該誤差進行補償。這里的區(qū)域大小需根據(jù)網(wǎng)絡不同的精度要求和節(jié)點密度來具體設定。如圖2所示,當未知節(jié)點B處于由信標節(jié)點A1,A2,…,Ai構成的區(qū)域時,先通過RSSI值計算出這些信標節(jié)點和自身的距離,然后綜合各個信標節(jié)點的的坐標誤差可得出未知節(jié)點所在區(qū)域的定位誤差。
萬能遙控器相關文章:萬能遙控器代碼
評論