張寶山 童紫原 唐守鋒 童敏明 徐朝亮
摘 要: 目前的室內(nèi)定位系統(tǒng)還存在很多問題,如:系統(tǒng)成本高、定位精度低、不能適應(yīng)室內(nèi)環(huán)境的多變性等,這些問題也成為了現(xiàn)階段室內(nèi)定位技術(shù)研究的熱點。基于RSSI的定位技術(shù)是解決這些問題的有效途徑之一。圍繞RSSI定位技術(shù),從RSSI的基本原理入手,分析了RSSI實現(xiàn)定位過程中所用的算法,比較它們的優(yōu)缺點,并對現(xiàn)階段室內(nèi)定位技術(shù)所面臨的難點問題進行分析總結(jié)。
關(guān)鍵詞: 無線傳感網(wǎng)絡(luò); RSSI; 室內(nèi)定位; 算法綜述; 研究熱點
中圖分類號:TP399 文獻標志碼:A 文章編號:1006-8228(2018)07-01-04
Abstract: The current indoor positioning system still exists many problems, such as high system cost, low precision, complex and changeable indoor environment, etc., these problems become the focus of indoor positioning technology research at present stage. RSSI based positioning technology is one of the effective ways to solve these problems. Based on RSSI localization technology, this paper starts with the basic principles of RSSI, analyzes the algorithms used in the localization process of RSSI, compares their advantages and disadvantages, and the problems of indoor positioning technology are analyzed and summarized.
Key words: wireless sensor network; RSSI; indoor positioning; algorithm overview; research hot spot
0 引言
對于室外環(huán)境,全球定位系統(tǒng)(GPS)能提供較高精度的定位服務(wù)。但對于室內(nèi)環(huán)境以及封閉環(huán)境來說,GPS信號就衰減嚴重,根本無法使用。而隨著無線傳感器網(wǎng)絡(luò)(WSN)的發(fā)展,這一問題可以得到有效的解決。1992年,英國劍橋的Active Badge系統(tǒng)是最早期的室內(nèi)定位系統(tǒng)之一;2002年,加利福尼亞大學(xué)的Calamari系統(tǒng)同時采用了TOA和RSSI兩種技術(shù)進行定位;目前國內(nèi)對室內(nèi)無線定位系統(tǒng)十分重視,室內(nèi)定位技術(shù)與算法已經(jīng)是現(xiàn)階段研究的熱點,而室內(nèi)定位的重點問題則是如何降低系統(tǒng)的成本,以及如何提高定位的精度。
室內(nèi)定位技術(shù)的算法分類有很多種方法。其中,根據(jù)是否測量節(jié)點間的實際距離,可分成基于測距定位算法和非測距定位算法。相較于非測距定位算法而言,基于測距定位算法的測量精度比較高,但它對于系統(tǒng)的硬件要求也比較高。具體來說,非測距定位算法主要分為三類,即近似三角形內(nèi)點測試法(APIT)[2]、DV-Hop算法[3]以及質(zhì)心法[4]等。這些算法可以利用估計距離來計算未知節(jié)點的位置,而基于測距定位算法有信號達到角度法(AOA)[5]、信號達到時間法(TOA)[6]、信號達到時間差法(TDOA)[7]、RSSI[8]等算法,這些算法需要測量節(jié)點間的實際距離。在這些定位算法中,對硬件要求都比較高,AOA算法要有感知信號方向的硬件設(shè)備,TOA算法對時鐘同步有嚴格要求,而TDOA算法要求節(jié)點配有超聲波。而基于RSSI的定位算法是一種低功耗且低成本的定位技術(shù),其系統(tǒng)的硬件節(jié)點基本可以利用射頻信號來實現(xiàn)無線通信功能,具有很好的應(yīng)用前景。本文主要對基于RSSI的一系列算法進行詳細的闡述與分析。
1 RSSI處理
1.1 RSSI的獲取
RSSI(Received Signal Strength Indication)指的是接收信號強度指示,用來判定鏈接質(zhì)量以及是否增大廣播發(fā)送強度。通過檢測接收的RSSI信號強弱來估計信號發(fā)射點和接收點的距離,然后根據(jù)估計的距離來進行計算,最終得到未知節(jié)點的位置。RSSI的獲取可以有多種方式,例如WIFI、藍牙、RFID、ZigBee等,它們的性能對比如表1所示。
距離估計法:首先通過信號的參數(shù)計算已知節(jié)點與未知節(jié)點的距離或者角度等信息,其次利用幾何方法計算未知節(jié)點的估計位置。
鄰近法:當(dāng)定位目標進入事先布置好的天線范圍內(nèi)時,會被天線檢測到,從而可以知道物體的大致位置,此方法需在室內(nèi)布置密集的天線網(wǎng)格,容易實現(xiàn),但精度不高。
場景分析法:場景分析法又稱作位置指紋定位法。它主要分為兩個步驟:首先大量采集區(qū)域內(nèi)的環(huán)境信息;然后利用匹配測量值與采集好的指紋集來估計未知節(jié)點的位置。它主要分為K最近鄰(KNN)和概率統(tǒng)計法等。
1.2 室內(nèi)路徑損耗模型
根據(jù)研究表明,在實際應(yīng)用的環(huán)境中,信號強度會隨著傳輸距離的增加而衰減,所以不能用精確的關(guān)系式來表示,而信號強度和位置之間的近似關(guān)系通??梢杂寐窂綋p耗模型來表示:
式⑴中,d是發(fā)射源和接收方之間的距離;RSSIPL是經(jīng)過距離d后信號強度的衰減量;d0指參考距離,一般取1m;RSSI0和α是由校準數(shù)據(jù)確定的常數(shù),它們主要依賴于周圍環(huán)境等不定因素,其中RSSI0為定位節(jié)點與參考節(jié)點之間的距離d=1m時測得的RSSI,α為信號衰減因子,一般設(shè)為2~4;誤差項e是指由多路徑傳播、反射、干涉等引起信號強度波動的隨機變量,在實際應(yīng)用中一般不予考慮。簡化公式后得到式⑵。
1.3 RSSI濾波
由于在實際環(huán)境中存在著多徑效應(yīng)、非視距以及障礙物等多種隨機因素,會使得實際獲取的RSSI值有很大的波動性,這為下一步的定位過程帶來了很大的麻煩,所以我們需要對測得的RSSI值進行平滑濾波優(yōu)化處理[9]。比較常用的濾波算法有:均值濾波、遞推平均濾波、中值濾波、狄克遜檢驗法濾波、高斯濾波、速度常量濾波以及卡爾曼濾波等等。下面介紹三種常用來平滑RSSI值的濾波方法:均值濾波、高斯濾波和卡爾曼濾波。
均值濾波:節(jié)點接收到另一節(jié)點的多組RSSI值之后,用下式⑶求出它們的幾何平均值,即為濾波后的結(jié)果。
高斯濾波:由于實際環(huán)境存在的各種干擾因素,會使未知節(jié)點接收到的多組RSSI值產(chǎn)生一些小概率誤差。通過高斯函數(shù)篩選高概率發(fā)生區(qū)的RSSI值作為的有效值,再求它們的算數(shù)平均值。這樣就能夠大幅度地降低小概率大干擾的RSSI值對整體測量數(shù)據(jù)的影響,從而一定程度上的提高了定位的精度。RSSI近似服從(μ,δ2)的高斯分布,其概率密度函數(shù)如公式⑷所示。
通過公式⑷和⑸可求出以及方差。為了減少小概率事件對RSSI的影響,根據(jù)高斯函數(shù)高概率發(fā)生區(qū)(選擇概率大于0.6的范圍),對公式⑷作以下限制:
然后將符合上式⑺的RSSI值放入數(shù)組中,最終可通過公式⑻得到RSSI信號的最終優(yōu)化值。
卡爾曼濾波:最初的經(jīng)典卡爾曼濾波只適用于線性系統(tǒng)的濾波,隨著算法研究的進一步深入,適合非線性系統(tǒng)的卡爾曼濾波被提出,其中包括無跡卡爾曼濾波(UKF),擴展卡爾曼濾波(EKF)等。本文主要介紹常規(guī)的線性卡爾曼濾波算法??柭鼮V波算法采用信號與噪聲的狀態(tài)空間模型,使用前一時刻的估計值以及當(dāng)前時刻的觀測值對狀態(tài)變量的估計進行更新,以算得當(dāng)前時刻的估計值。它可以分為兩個階段:預(yù)測階段和校正階段。預(yù)測階段是根據(jù)上一時刻的狀態(tài)估計下一時刻的狀態(tài);校正階段則是利用當(dāng)前時刻的估計值與觀測值,估計出最優(yōu)的狀態(tài)。具體過程如下。
預(yù)測階段:狀態(tài)預(yù)測與誤差矩陣預(yù)測,分別以公式⑼和公式⑽表示。
校正階段:卡爾曼增益計算、狀態(tài)校正(其輸出就是最終濾波的結(jié)果)以及誤差矩陣更新,它們分別對應(yīng)公式⑾~⑿。
在上面各式中,Xk表示k時刻的RSSI值;A、B為系統(tǒng)參數(shù);Uk為k時刻外界對系統(tǒng)的作用;Q表示預(yù)測噪聲協(xié)方差矩陣;Pk為誤差矩陣;R為測量噪聲協(xié)方差矩陣;H為觀測矩陣;Kk表示k時刻卡爾曼增益;Zk為k時刻的觀測值。
總的來說,均值濾波算法簡單,易實現(xiàn),但精度不高,效果不是很理想。相比之下,高斯濾波算法效果很好,但算法復(fù)雜,計算量大。而卡爾曼濾波可以很好的去除噪聲,但它更適用于運動中的物體。在實際應(yīng)用中,我們可以根據(jù)實際情況,選擇合適的算法或混合多種算法,以達到理想的濾波效果。
2 定位算法
基于RSSI的定位算法很多,像三角/三邊質(zhì)心算法、加權(quán)質(zhì)心算法、最小二乘法[10]、雙曲線法、位置指紋算法、融合算法以及各種改進衍生算法等等。下面就介紹幾種基于RSSI的基本或比較常用的算法。我們假設(shè)三個已知節(jié)點的坐標分別為(x1,y1)、(x2,y2)、(x3,y3),未知節(jié)點的坐標為(x,y),未知節(jié)點到已知節(jié)點的距離分別為d1、d2、d3。
2.1 三邊定位算法
在基于測距的算法中,三邊定位是最基礎(chǔ)、也是使用最多的算法之一。它的基本原理如下:假設(shè)在理想狀態(tài)下,利用已知節(jié)點收到的RSSI值,根據(jù)公式⑵,可以得到它與未知節(jié)點的距離d,則利用三個已知節(jié)點的d,相交于一點(如圖1),即未知節(jié)點的坐標。
通過下式⑼可以求出未知節(jié)點的坐標(x,y)。
但在實際應(yīng)用中,由于誤差的存在,會使三個圓交于一個區(qū)域(如圖2)。這樣的話,就需要一些算法進行求解,常用的有:最小二乘估計法、三角形質(zhì)心法以及極大似然估計法等。
2.2 加權(quán)質(zhì)心算法
根據(jù)公式⑴可知,已知節(jié)點與未知節(jié)點的距離越大,RSSI變化越小,相應(yīng)的造成定位誤差也會變大。而加權(quán)質(zhì)心算法的基本思想就是用加權(quán)系數(shù)體現(xiàn)每個參考節(jié)點對質(zhì)心坐標決定權(quán)的大小。通過未知節(jié)點到參考節(jié)點之間的RSSI值,計算出每個參考節(jié)點的權(quán)值,通過這種方法提高待求質(zhì)心位置的精度。根據(jù)傳統(tǒng)質(zhì)心算法可以得到:
k作為加權(quán)質(zhì)心定位算法的加權(quán)因子指數(shù),k不同,定位的精度自然也會發(fā)生改變。加權(quán)質(zhì)心算法相比三邊算法來說,精度提高了很多,但計算量也相應(yīng)地加大。
2.3 位置指紋定位算法
位置指紋定位的基本思想:根據(jù)所在位置和所有已觀測到的位置測量值(指紋集)相匹配,接著根據(jù)所比較的情況進行定位。它是一種基于學(xué)習(xí)的模型,運用模式識別,可以將信號的不確定性考慮在內(nèi),在定位效果方面令人滿意。我們在使用位置指紋算法來進行定位時,一般分兩個階段:離線階段與在線階段。離線階段需要進行多次采集區(qū)域內(nèi)各位置上的“指紋”數(shù)據(jù)(RSSI),并構(gòu)建一個數(shù)據(jù)庫,即訓(xùn)練集;在線階段中,定位系統(tǒng)會根據(jù)未知節(jié)點接收的RSSI值來估計它所在的位置。基于位置指紋的定位通常有兩種算法。一種是確定性的算法,比較信號特征和存在指紋庫中的預(yù)先計算出來的統(tǒng)計值;另一種是概率性的算法,即計算信號特征屬于某個分布的可能性。
位置指紋定位算法的定位精度較高,但是給未知環(huán)境建立定位模型與校準的工作量相當(dāng)?shù)拇?。除此以外,?dāng)實際環(huán)境改變后,需要確定新的定位模型,維護成本將提高。
2.4 融合定位算法
經(jīng)過研究表明,利用多數(shù)據(jù)進行融合處理可以獲得比單個數(shù)據(jù)源更加準確、可靠的估計和定位。在測距定位系統(tǒng)中,接收到的RSSI信號會由于室內(nèi)環(huán)境的不確定性或多徑效應(yīng)而出現(xiàn)隨機變化;而在行人航跡推算(PDR)定位系統(tǒng)中,長時間的漂移會產(chǎn)生誤差的累積效果。由此可以融合RSSI測距的室內(nèi)行人航跡推算算法[11],以卡爾曼濾波算法實現(xiàn)兩者定位信息的融合,這樣可以獲得系統(tǒng)的最優(yōu)定位結(jié)果。此外,還可以將TDOA/AOA、地磁、慣導(dǎo)[19]、地圖等技術(shù)與RSSI定位融合起來,進行定位。
融合定位算法融合了多種傳感器的信息以及多種定位技術(shù)來進行綜合定位,具有優(yōu)勢互補的特點,從而提高了定位系統(tǒng)的精度以及健壯性,降低了室內(nèi)定位系統(tǒng)的成本,這種算法也是室內(nèi)定位的研究熱點之一。
3 結(jié)束語
本文主要介紹并比較了在室內(nèi)定位過程中所用到的一些濾波算法、定位算法等。目前室內(nèi)定位技術(shù)的精度不斷提高,但其尚未被廣泛地應(yīng)用,主要原因還是由于環(huán)境的復(fù)雜、定位精度與系統(tǒng)成本難以兼顧等等。故找出一套精度高、成本低、普適性強的技術(shù)方案是室內(nèi)定位技術(shù)未來的發(fā)展趨勢,同時綜合利用各種定位技術(shù)及信息的融合定位也將是解決目前室內(nèi)定位難點問題的可行性方案之一。而隨著物聯(lián)網(wǎng)、通信技術(shù),以及計算機視覺等技術(shù)的快速發(fā)展,未來的室內(nèi)定位技術(shù)也不斷朝著智能化、精準化、網(wǎng)絡(luò)化的方向發(fā)展。
參考文獻(References):
[1] 孫利民,李建中,陳渝,朱紅松.無線傳感器網(wǎng)絡(luò)[M].清華大學(xué)出版社,2005.
[2] 苗少卿,高航,趙國安.無線傳感網(wǎng)絡(luò)APIT定位算法的研究與改進[J].單片機與嵌入式系統(tǒng)應(yīng)用,2015.15(7):38-41
[3] 劉三陽,胡亞靜,張朝輝.基于RSSI測距的DV-Hop算法[J].控制與決策,2017.32(10):1900-1904
[4] 劉政.權(quán)重和誤差雙修正的質(zhì)心定位算法[J].自動化儀表,2014.35(7):14-17
[5] Niculescu D, Nath B. Ad hoc positioning system (APS) using AOA[J]. Proceedings-IEEE INFOCOM,2003.3(2):1734-1743
[6] Alavi B, Pahlavan K. Modeling of the TOA-based distancemeasurement error using UWB indoor radio measurements[J].IEEE Communications Letters,2006.10(4):275-277
[7] Ma W K, Vo B N, Singh S S, et al. Tracking an unknowntime-varying number of speakers using TDOA measurements: a random finite set approach[J]. IEEE Transactions on Signal Processing,2006.54(9):3291-3304
[8] 倪巍,王宗欣.基于接收信號強度測量的室內(nèi)定位算法[J].復(fù)旦學(xué)報(自然科學(xué)版),2004.43(1):72-76
[9] 張錚,饒志訓(xùn),黃志峰.無線傳感器網(wǎng)絡(luò)中RSSI濾波的若干處理方法[J].現(xiàn)代電子技術(shù),2013.20:4-6
[10] 陶為戈,朱昳華,賈子彥.基于RSSI混合濾波和最小二乘參數(shù)估計的測距算法[J].傳感技術(shù)學(xué)報,2012.25(12):1748-1753
[11] 鄭學(xué)理,付敬奇.基于PDR和RSSI的室內(nèi)定位算法研究[J].儀器儀表學(xué)報,2015.36(5):1177-1185