基于信號接收系統(tǒng)的室內無線網(wǎng)絡定位
引言
隨著無線技術的發(fā)展,室內外環(huán)境中人員和物體的追蹤定位,這一課題引起了研究者的廣泛研究,位置服務(LBS)也越來越受到人們的關注。位置服務即根據(jù)服務消費者所在地理位置的不同提供對應的信息服務,作為LBS的核心技術之一,室內定位是其重要的組成部分。因為可以廣泛用于室內路由、治安、消防等方面。在室內定位系統(tǒng)開發(fā)研究方面,常用的方法是在室內環(huán)境下建立小范圍定位網(wǎng)絡。目前,越來越多的定位直接利用現(xiàn)成的無線通訊模塊來估計對象節(jié)點(盲節(jié)點)的位置,應運而生的ZigBee技術以低成本、低功耗成為室內定位的首選。本文以ZigBee組建基本的網(wǎng)絡,通過節(jié)點接收RSSI值的大小來進行距離計算,最終通過距離以及參考節(jié)點的位置來計算定位節(jié)點(盲節(jié)點)位置。
1 無線網(wǎng)絡定位技術
在無線定位中,有基于測距和非測距兩種方式。前者需要測量相鄰節(jié)點間的絕對距離或方位,并利用節(jié)點間的實際距離來計算未知節(jié)點的位置;后者無需測量節(jié)點的絕對距離或方位,而是利用節(jié)點間的估計距離計算節(jié)點位置?;跍y距的算法主要包含以下幾種:三邊測量、三角測量、極大似然估計等;基于非測距的算法主要有質心算法、DV-Hop算法、D_distance算法、凸規(guī)劃算法等。對定位算法的性能評價指標主要有定位精度、節(jié)點密度、容錯和自適應性、功耗和代價、網(wǎng)絡規(guī)模等幾個部分。綜合以上因素以及結合現(xiàn)有的設備,本文選用基于RSSI測距的定位方式。其流程圖如圖1所示。
從圖1可以看出定位由兩部分組成:一是通過RSSI測距;二是根據(jù)距離以及參考節(jié)點位置計算盲節(jié)點位置。
2 RSSI測距模型
2.1 模型確立
無線信號傳輸中普遍采用的理論模型為Shadowing模型。
該模型為:
式中:do是參考距離;po是距離為do時接收到的信號強度,其中還包含了遮蔽外衰減或環(huán)境造成的損耗參考(中值);d是真實距離;ζ是以dB為單位的遮蔽因子,其均值為O,均方差為σdb(dB)正態(tài)隨機變量;p是接收信號強度;n是路徑損耗指數(shù),它的值依賴于環(huán)境和建筑物的類型。在實際測量中,選用以下的模型:
即不統(tǒng)計遮擋因子對RSSI的影響,在實際環(huán)境下對RSSI影響最大的是非視距的影響。其中,射頻參數(shù)A被定義為用dBm表示的距離發(fā)射器1m接收到的平均能量絕對值,也就是距發(fā)射節(jié)點1m處的接收信號強度;n為信號傳輸常數(shù),與信號傳輸環(huán)境有關;d為距發(fā)射節(jié)點的距離。
2.2 參數(shù)優(yōu)化
在使用A和n進行距離計算時,首先要面臨的一個問題是A和n的取值問題。A和n的取值不同,對測距的誤差影響很大。為了使模型能夠盡量真實地反映出當前室內環(huán)境中的傳播特性,保證RSSI測距的精度,需要對A和n進行優(yōu)化,得到最適合該室內環(huán)境情況的參數(shù)值。
通過線性回歸分析來估計參數(shù)A和n的值,假設從室內環(huán)境得到的實驗測量數(shù)據(jù)為(RSSIi,di),i=1,2,…,n,RSSIi表示在距離di上所對應的RSSI測量值。
以實驗室走廊為例,測得100組數(shù)據(jù),代入上述公式得出A=4l,n=2.3。圖2是參數(shù)優(yōu)化后的RSSI測距模型曲線。在圖中可以看出,根據(jù)線性回歸分析可以很好地擬合出適應當前環(huán)境的模型曲線。
2.3 RSSI濾波處理
信號強度的定位算法中信號強度值隨環(huán)境的改變有很高的靈敏度,這會限制測量的準確度。事實上信號強度與距離之間的關系很不讓人滿意,在環(huán)境中存在很大的波動性。在室內環(huán)境下實測得到的RSSI與節(jié)點間距離的關系曲線如圖2所示。當傳輸距離較近的時候,RSSI值衰減得較快;當傳輸距離越遠,衰減得越慢,接收強度對傳輸距離的變化表現(xiàn)不明顯。在實際中,某一時間段內接收節(jié)點可以收到n個RSSI值,由于非視距和多徑的影響,導致這些RSSI值具有很大的波動性,在代入公式進行計算之前,先進行濾波處理,得到一個比較準確的值,然后再進行計算。
本文采用高斯濾波模型進行RSSI濾波。引入高斯模型進行處理的原則是:在自然現(xiàn)象和社會現(xiàn)象中,大量隨機變量都服從或近似正態(tài)分布,如材料性能、零件尺寸、化學成分、測量誤差、人體高度等。
高概率發(fā)生區(qū),選擇概率大于O.6(O.6的取值是根據(jù)工程中的經(jīng)驗值)的范圍。經(jīng)過高斯濾波后,RSSI的取值范圍為[0.15σ+μ,3.09σ+μ]。
其中:
把該范圍內的RSSI值全部取出,再求幾何平均值,即可得到最終的RSSI值。
在d=1m處,采集50組RSSI值,進行高斯濾波處理。
如圖3所示,濾波前RSSI波動比較大,濾波后比較平滑。濾波前|RSSI|的平均值為38.9,計算距離d=O.71m;濾波后|RSSI|的平均值為39.42,計算距離d=O.81m。顯然,高斯濾波能很好地提高測距精度。
3 定位算法
假設無線定位網(wǎng)絡中有N個已知位置的參考節(jié)點,坐標為(x1,y1),(x2,y2),…,(xN,yN),RSSI測量值為(RSSI1,RSSI2,…,RSSIN)。通過利用無線信號傳播衰落模型計算得到待定位節(jié)點到四個已知位置的參考節(jié)點的距離為R1,R2,…,RN,則可以得到以下方程:
最終定位算法的研究就是求解該方程。在求解(x,y)過程中,選用基于泰勒級數(shù)展開迭代法進行計算。
選用泰勒級數(shù)的原因基于以下幾個方面:
?。?)無需提供測距差測量值誤差的先驗信息。
?。?)可以應用于兩個以上數(shù)目距離差測量的定位估計。
?。?)對距離差統(tǒng)計沒有特殊要求。
?。?)在適當?shù)木嚯x差噪聲水平上提供較準確的定位估計。
使用泰勒級數(shù)進行定位計算,首先面臨的一個問題即泰勒級數(shù)展開需要一個與實際位置差距不大的初始值,初始值的選擇越接近真實值,越可以保證算法的收斂性以及實時性。本文采用極大似然估計法來獲取初始值,求得初始值公式為:
式中:
根據(jù)取得的值作為Taylor級數(shù)展開的循環(huán)初值,然后用Taylor級數(shù)展開,進行矩陣計算,并反復迭代求精,直到誤差滿足預先設定的門限,得出最終的位置坐標。
式中:
重復以上過程,直到△x,△y足夠小,滿足一預先設定的門限ε,即(△x+△y)<ε,此時的(x,y)即為定位節(jié)點的估計位置。
4 實驗驗證
實驗是在實驗室走廊(4m×30m)進行的,實驗環(huán)境如圖4所示。選用的是ZigBee硬件平臺作為通信平臺,該平臺CC2431自帶定位引擎,可以實現(xiàn)位置估計,并通過實驗比較兩種算法的差異。
CC2431使用的三邊測量法進行位置計算,采用均值濾波對RSSI進行濾波處理。ZigBee開發(fā)平臺如圖5所示。
在實驗環(huán)境中布置4個節(jié)點作為參考節(jié)點,位置分別定義為(O,0),(0,4),(30,O),(30,4)。確定A和n的值,實驗環(huán)境與圖2的實驗一樣。可以得知,A=41,n=2.3。在環(huán)境中任取31個點,分別測得該點的實際位置(x,y);使用CC2431得到的位置(x’,y’),使用本文提
出的算法得到位置(x",y")。比較兩個位置的誤差大小d'與d",如圖6所示。
其中:
由圖6可以看出,經(jīng)過線性回歸分析和高斯濾波,然后用泰勒級數(shù)展開,最終求得位置誤差大約在1m左右,而CC2431的定位誤差在2~3m左右。本文提出的定位算法較好地改善了定位效果,使定位誤差主要集中在1m左右,基本能夠滿足室內定位對誤差的要求,提高了定位精度。
5 結語
對基于RSSI的室內定位算法以及RSSI測距進行了全面分析。通過線性回歸分析對參數(shù)進行優(yōu)化,高斯模型對RSSI進行濾波,提高了測距的精度。最后采用泰勒級數(shù)展開法進行位置計算,比較了CC2431的定位算法,減小了定位誤差,達到了提高定位精度的目的,證實了定位算法的優(yōu)越性。