電系統(tǒng)(Micro-Electro-Mechanism System, MEMS)、片上系統(tǒng)(SOC, System on Chip)、無線通信和低功耗嵌入式技術的飛速發(fā)展,孕育出無線傳感器網絡(Wireless Sensor Networks, WSN),并以其低功耗、低成本、分布式和自組織的特點帶來了信息感知的一場變革。無線傳感器網絡就是由部署在監(jiān)測區(qū)域內大量的廉價微型傳感器節(jié)點組成,通過無線通信方式形成的一個多跳自組織網絡。
無線傳感器網絡所具有的眾多類型的傳感器,可探測包括地震、電磁、溫度、濕度、噪聲、光強度、壓力、土壤成分、移動物體的大小、速度和方向等周邊環(huán)境中多種多樣的現象?;贛EMS的微傳感技術和無線聯網技術為無線傳感器網絡賦予了廣闊的應用前景。這些潛在的應用領域可以歸納為:軍事、航空、反恐、防爆、救災、環(huán)境、醫(yī)療、保健、家居、工業(yè)、商業(yè)等領域。
無線傳感器網絡是一種全新的信息獲取平臺,能夠實時監(jiān)測和采集網絡分布區(qū)域內的各種檢測對象的信息,并將這些信息發(fā)送到網關節(jié)點,以實現復雜的指定范圍內目標檢測與跟蹤,具有快速展開、抗毀性強等特點,有著廣闊的應用前景。
在實際的應用中由于反射、多徑傳播、非視距、天線增益等問題都會對RSSI的測距產生誤差,從而引起較大的定位誤差。本文利用二維空間的Cayley - Menger行列式[2,3]提供的幾何約束對RSSI的測距誤差進行優(yōu)化修正,結合三角形質心計算,提出了一種基于RSSI測距和距離幾何約束結合三角形質心定位算法(RDGC-TCL)。仿真表明,該算法與基于RSSI和三角形質心定位算法(R_TCL)相比,提高了定位精度。
RDGC-TCL 算法
RSSI 技術
通過接收到的信號強弱測定信號點與接收點的距離,進而根據相應數據進行定位計算的一種定位技術 如無線傳感的ZigBee網絡CC2431芯片的定位引擎就采用的這種技術、算法。
接收機測量電路所得到的接收機輸入的平均信號強度指示。這一測量值一般不包括天線增益或傳輸系統(tǒng)的損耗。
RSSI(Received Signal Strength Indicator)是接收信號的強度指示,它的實現是在反向通道基帶接收濾波器之后進行的。
為了獲取反向信號的特征,在RSSI的具體實現中做了如下處理:在104us內進行基帶IQ功率積分得到RSSI的瞬時值,即RSSI(瞬時)=sum(I^2+Q^2);然后在約1秒內對8192個RSSI的瞬時值進行平均得到RSSI的平均值,即RSSI(平均)=sum(RSSI(瞬時))/8192,同時給出1秒內RSSI瞬時值的最大值和RSSI瞬時值大于某一門限時的比率(RSSI瞬時值大于某一門限的個數/8192)。由于 RSSI是通過在數字域進行功率積分而后反推到天線口得到的,反向通道信號傳輸特性的不一致會影響RSSI的精度。
在空載下看RSSI的平均值是判斷干擾的最主要手段。對于新開局,用戶很少,空載下的RSSI電平一般小于-105dBm。在業(yè)務存在的情況下,有多個業(yè)務時RSSI平均值一般不會超過-95dBm。從接收質量FER上也可以參考判斷是否有干擾存在。通過以發(fā)現是否存在越區(qū)覆蓋而造成干擾,也可以從 Ec/Io與手機接收功率來判斷是否有干擾。對于外界干擾,通過頻譜儀分析進一步查出是否存在干擾源。[!--empirenews.page--]
RSSI 測距
RSSI利用已知發(fā)射信號強度,接收點根據收到的信號強度,計算信號在傳播過程中的損耗,使用理論或經驗的信號傳播模型將傳播損耗轉化為距離。常用的傳播路徑損耗模型有[4,5]:自由空間傳播模型、對數距離路徑損耗模型、哈它模型、對數-常態(tài)分布模型等。文中采用自由空間傳播模型和對數-常態(tài)分布模型,用于分析和仿真。自由空間無線電傳播路徑損耗模型如下式:
式中:d為距信源的距離(km),f為頻率(MHz),k為路徑衰減因子。
在實際應用環(huán)境中,由于多徑、繞射、障礙物等因素,無線電傳播路徑損耗與理論值相比有些變化。采用對數-常態(tài)分布模型將更加合理,式(2)計算節(jié)點收到錨節(jié)點信息的路徑損耗。
式中:PL(d)為經過距離d后的路徑損耗(dB);為平均值為0的高斯分布隨機變數,其標準差范圍為4~10。式中k的范圍在2至5之間。取d=1m,帶入式(1),可得到,即的值。這樣根據上式可得各未知節(jié)點接收錨節(jié)點信號時的信號強度為:
RSSI=發(fā)射功率+天線增益-路徑損耗(PL(d) )。
Cayley-Menger行列式及距離幾何約束
距離幾何理論中,Cayley-Menger行列式可以被用來處理不變空間的歐拉距離幾何問題[6,7]。兩個n點序列{ P1,…,Pn }和{ q1,…,qn }∈ Rm組成Cayley-Menger矩陣,且定義為:
其中,(i,j {1, …,n}為pi點和qj之間的歐式距離。兩個n點序列的Cayley-Menger行列式定義為:
[!--empirenews.page--]
當兩個序列相同時, , 被稱為Cayley-Menger行列式。在RSSI測距過程中,由于多徑、繞射、障礙物等因素,不可避免出現測距誤差,設未知節(jié)點與錨節(jié)點之間的真實距離與測量距離。設未知節(jié)點接收到錨節(jié)點 的測量信息,根據節(jié)點集合,…,,…,結合[3]利用Cayley-Menger行列式的經典理論的推導,可得到r-2個獨立的二次距離約束等式。 , 作為未知節(jié)點與錨節(jié)點在測量過程中出現的誤差,在距離約束限制下形成平方誤差最小化非線性問題:
運用數值分析方法,求得最優(yōu)解 ,進而得到未知節(jié)點與錨節(jié)點位置估計值:
三角形質心定位算法模型
本文研究了未知節(jié)點與其無線射程范圍內的三個錨節(jié)點之間的通信約束和幾何關系得出了未知節(jié)點所在三角區(qū)域,將三角形的質心作為未知節(jié)點的估計位置[8,9] 。這里的三角形質心定位算法的基本思想是:三個錨節(jié)點A、B、C,未知節(jié)點D,利用RSSI和距離幾何約束算出節(jié)點A和D的距離為;節(jié)點B和D的距離為;節(jié)點C和D的距離為。分別以A、B、C為圓心rA,rB,rC , 為半徑畫圓,可得錨圓交疊區(qū)域,通過計算三個錨圓交疊區(qū)域的三個特征點的坐標,以這三個點為三角形的頂點,未知點即為三角形的質心(如圖1所示)。
假設已知3個錨節(jié)點的坐標分別為A(Xa,Ya) 、B(Xb,Yb) 、C(Xc,Yc) ,與未知節(jié)點的距離分別為rA,rB,rC ,通過下面的公式求出。
同理,可以求出F點和G點的坐標,假設未知節(jié)點M的坐標,利用質心算法得到未知節(jié)點M的估計坐標為 :
[!--empirenews.page--]
RDGC-TCL 算法過程
RDGC-TCL 算法包括使用Cayley-Menger行列式給出的距離幾何約束條件對RSSI測量值進行處理來減小測量誤差和利用三角形質心定位算法進行定位。
?。?) 錨節(jié)點周期性發(fā)送自身的信息,信息中包括自身節(jié)點ID和自身位置坐標。
?。?) 未知節(jié)點收到來自錨節(jié)點信息時,根據RSSI由強到弱對錨節(jié)點進行排序,并建立RSSI與節(jié)點到錨節(jié)點距離的映射。建立三個集合:
(3) 選取RSSI值大的前幾個錨節(jié)點進行計算,并采用距離幾何約束來求得未知節(jié)點與錨節(jié)點距離的估計值。
(4)在Beacon_set中選擇RSSI值大的錨節(jié)點組合成下面的三角形集合,這是提高定位的關鍵。Triangle_set= 對Triangle_set中任一個三角形根據(7)式算出三個交點的坐標,最后由質心算法,得到未知節(jié)點坐標。
(5)對求出的未知節(jié)點坐標集合取平均值,得未知節(jié)點坐標。
仿真分析
為了驗證算法的有效性,對定位算法進行仿真。仿真場景為一個120×120的矩形區(qū)域,100個節(jié)點被隨機放在區(qū)域內,其中30個錨節(jié)點,70個未知節(jié)點。
采用距離幾何約束來減少RSSI測距誤差并結合采用三角形質心定位算法(RDGC-TCL 算法),算法性能主要從定位誤差和定位覆蓋率兩方面進行考慮。仿真結果如圖2、圖3所示。
RDGC-TCL 算法在測距校正的過程總增加了計算量和計算時間,但對定位誤差的減小和定位覆蓋率的增加都有了較大的提高。由圖2所示,在錨節(jié)點較少的情況下,本文算法的性能提高不大,因為提供校正的測量數據較少,隨著錨節(jié)點數目增加,用于校正的測量數據的增加,使得測量的距離更加的準確,使得定位的精度有了較大的提高。圖3表明本文算法相對于R_TCL算法在節(jié)點的覆蓋率方面有較大的提高。
結語
本文針對RSSI測距誤差,提出了基于RSSI和距離幾何約束并結合三角形質心定位算法,仿真結果表明,本文算法比傳統(tǒng)的RSSI定位算法有更好的定位性能,能夠減小定位誤差并提高節(jié)點定位覆蓋率,同時本定位算法對硬件的要求不高,能夠降低無線傳感器網絡的成本,能夠滿足大多數無線傳感器網絡的應用要求,是無線傳感器網絡節(jié)點定位一種可選方案。