摘 要:針對復(fù)雜的室內(nèi)環(huán)境中,基于接收信號強(qiáng)度指示(RSSI)定位困難的問題,提出了一種基于卡爾曼濾波、高斯濾波、統(tǒng)計(jì)中值相結(jié)合(KGSM濾波)的三邊測距定位算法。算法先用KGSM濾波優(yōu)化了RSSI值,然后運(yùn)用對數(shù)損耗模型計(jì)算出距離,最后用三邊測距得到了定位位置。實(shí)驗(yàn)結(jié)果表明:KGSM濾波提高了采集的RSSI值精確度,使三邊定位算法的定位誤差維持在0.7~1.0m,提高了定位的穩(wěn)定性和精確度。
關(guān)鍵詞:接收信號強(qiáng)度指示;室內(nèi)定位;濾波方式;三邊測距;定位誤差
中圖分類號:TP393 ?文獻(xiàn)標(biāo)識碼:A
現(xiàn)實(shí)生活中,GPS已廣泛用于室外定位,但在室內(nèi)環(huán)境中,由于建筑物的阻擋,GPS定位無法開展。為了解決上述問題,人們嘗試引入其他方法來實(shí)現(xiàn)定位。目前,常用于室內(nèi)定位的方法可以分為測距和非測距兩類,測距算法包括TOA、TDOA、RSSI、AOA等,非測距算法包括APIT、凸規(guī)劃法、質(zhì)心法、DV-Hop等方法。基于測距的RSSI算法應(yīng)用廣泛,但是其易受各種各樣環(huán)境的影響,故人們常常對其進(jìn)行濾波處理。常用的RSSI濾波方法有均值濾波、高斯濾波、中值濾波、卡爾曼濾波以及它們的融合等。文章[1]對高斯濾波進(jìn)行了改進(jìn),其更符合理論模型,濾波效果更好。文章[2]將卡爾曼濾波和中值濾波進(jìn)行了結(jié)合,有效減少了粗大RSSI值對結(jié)果的影響。受上述相關(guān)文獻(xiàn)的啟發(fā),本文融合了卡爾曼濾波、高斯濾波、中值濾波的改進(jìn)型統(tǒng)計(jì)中值濾波的優(yōu)點(diǎn),提出了一種新型濾波—KGSM(Kalman,Gaussian and Statistics median)濾波,提高了其精確度,進(jìn)而減少了三邊定位算法的[3]的定位誤差。
1 KGSM濾波優(yōu)化RSSI值
1.1 傳統(tǒng)濾波方法分析
室內(nèi)定位中,由于存在人員走動、信號的反射、電子儀器本身的干擾等不穩(wěn)定因素,使接收的RSSI值存在很大的誤差,為了提高其精確度,我們常常對其進(jìn)行濾波處理,這里我們簡單介紹下本論文用到的濾波:中值濾波、高斯濾波、卡爾曼濾波。中值濾波對采樣信號取中間值,它能有效克服因偶然因數(shù)引起的波動干擾,但對于脈沖干擾比較強(qiáng)、樣本容量不多的情況下,濾波效果不理想;高斯濾波可以解決RSSI在實(shí)際測試中易受干擾、穩(wěn)定性差等問題,但對于陰影效應(yīng)、電子儀器本身干擾等長時(shí)間干擾問題處理效果欠佳;卡爾曼濾波能去除疊加在信號上的加性噪聲,平滑顯著誤差,但卻無法去除誤差,若末尾幾個測量值誤差大,將對結(jié)果會有重大影響。
1.2 KGSM濾波
本文采用混合濾波的方法,將卡爾曼濾波、高斯濾波、中值濾波的改進(jìn)型統(tǒng)計(jì)中值濾波相結(jié)合,提出了KGSM濾波。其具體算法如下:
(1)某個時(shí)間段內(nèi)對RSSI信號采集N(N100)次,用卡爾曼濾波對每個采樣值進(jìn)行迭代,使由于儀器等產(chǎn)生的噪聲干擾得到減少,并平滑了顯著誤差。但是由于卡爾曼濾波存在數(shù)據(jù)慣性的累積,當(dāng)前一時(shí)刻采樣值波動越大,它的下一時(shí)刻濾波值也波動越大,同時(shí),如果這種波動存在采樣值的末端,將對最后的RSSI濾波值產(chǎn)生重大影響。
(2)收集每一個采樣值對應(yīng)的卡爾曼濾波值,對其進(jìn)行高斯濾波取值,留下中間大概70%左右的濾波值。該步驟剔除了偏離真實(shí)值較大的一部分卡爾曼濾波值,可以很大程度解決末尾幾個RSSI采樣值波動對濾波結(jié)果的影響。
(3)由于本實(shí)驗(yàn)是在一個相對復(fù)雜的室內(nèi)環(huán)境進(jìn)行,經(jīng)過高斯濾波取值后,仍然存在很多偏離真實(shí)值的濾波值,為了提高RSSI精確度,以免影響接下來三邊測距定位算法的估算。在高斯濾波取值后,我們對其進(jìn)行了統(tǒng)計(jì)中值濾波,大致步驟為如下三步:
①對高斯取值后的RSSI信號從小到大排序,得到RSSIi(i=1,2,…),中值濾波取得中間值RSSImid。
②將各個信號值與中值的偏差平方均值作為閾值T,當(dāng)偏差平方大于閾值時(shí),權(quán)值由偏差平方?jīng)Q定,反之則由閾值決定,這種設(shè)計(jì)相比于傳統(tǒng)的中值濾波,對于高斯濾波取值仍然存在很多偏離真實(shí)值的情況,有更好的濾波效果。這里我們設(shè)排序后第i個值所占的權(quán)重ωi:
ωi=11+max{T,(RSSIi-RSSImid)2}∑Ni=111+max{T,(RSSIi-RSSImid)2}(1)
其中:T=∑Ni=1(RSSIi-RSSImid)2/N
③將高斯取值后的值與其加權(quán)系數(shù)相乘,得到最終的統(tǒng)計(jì)中值濾波值,也就是KGSM濾波值:
RSSIKGSM=∑Ni=1ωi*RSSIi(2)
2 基于三邊測距的定位算法
KGSM濾波后得RSSIKGSM,然后采用對數(shù)損耗模型,通過計(jì)算,得到相應(yīng)的距離。在室內(nèi),我們布置了三個AP:AP1,AP2,AP3,坐標(biāo)為(x1,y1),(x2,y2),(x3,y3),定位位置D(x,y)離三個AP的距離為di(i=1,2,3),以AP1,AP2,AP3 為圓心,d1,d2,d3為半徑分別畫三個圓。
(1)運(yùn)用三邊測距算得三個圓交于一點(diǎn),如圖1所示:
由論文[3]可以得到定位位置D點(diǎn)坐標(biāo):
x
y=2(x1-x3)2(y1-y3)
2(x2-x3)2(y2-y3)-1x21-x23+y21-y23+d23-d21
x21-x23+y22-y23+d23-d22
(3)
3 實(shí)驗(yàn)結(jié)果與分析
室內(nèi)定位中,人員走動會等突發(fā)干擾,可能引起RSSI值偏離真實(shí)值較大,帶來顯著誤差;信號反射、電子儀器本身干擾等隨機(jī)干擾,會使采樣值圍繞真實(shí)值上下波動,帶來隨機(jī)誤差。而相對復(fù)雜的室內(nèi)環(huán)境中可能存在著大量的突發(fā)干擾和隨機(jī)干擾。為了驗(yàn)證該KGSM濾波算法的定位性能。設(shè)計(jì)實(shí)驗(yàn)環(huán)境如下:室內(nèi)大小為10m×10m,存在頻繁的人員走動,空間中布置了3個AP,在定位位置,我們用采樣頻率為5次/s的手機(jī)采集信號,一段連續(xù)時(shí)間內(nèi),采集了每個AP的200次RSSI值,改變定位位置,重復(fù)上述實(shí)驗(yàn)10次,獲得10組不同的數(shù)據(jù)。
選取RSSI樣本的標(biāo)準(zhǔn)差σs作為定位性
能的判定,其公式表示如下:
σs=1N-1∑Ni=1(RSSIi-RSSI)2(4)
其中:RSSI為真實(shí)值,RSSIi采樣點(diǎn)上濾波值。
圖2比較了高斯濾波、卡爾曼濾波、統(tǒng)計(jì)中值濾波、KGSM濾波對RSSI的濾波性能,圖3比較了基于四種濾波算法的定位誤差。由圖2、圖3可以發(fā)現(xiàn):(1)復(fù)雜的室內(nèi)環(huán)境中,由于信號長期受到干擾,采樣值經(jīng)過高斯濾波取值后,信號波動還是比較大,表現(xiàn)為高斯濾波的樣本標(biāo)準(zhǔn)差σs 整體上最大,基于高斯濾波的定位誤差整體上也相對較大。(2)由圖2實(shí)驗(yàn)序號1、2、3、8、10可看出,卡爾曼濾波模型在突發(fā)干擾引起的顯著誤差不多時(shí),其濾波性能優(yōu)于統(tǒng)計(jì)中值模型;由圖2剩余實(shí)驗(yàn)序號可以看出,當(dāng)顯著誤差較多時(shí),由于卡爾曼濾波只能平滑顯著誤差,無法去除,其去除顯著誤差的能力不如統(tǒng)計(jì)中值模型。如圖3實(shí)驗(yàn)序號6、8可以看出,當(dāng)末尾幾個采樣值出現(xiàn)較大波動時(shí),卡爾曼濾波其定位效果將受重大影響;(3)KGSM濾波的σs整體上最小,產(chǎn)生的定位誤差也最小、最穩(wěn)定,誤差穩(wěn)定在0.7~1.0m,這也就證明了基于RSSI的KGSM濾波的能提高三邊定位算法的精確度和穩(wěn)定性。
綜上所述,KGSM濾波先運(yùn)用卡爾曼濾波平滑了各種干擾引起的誤差,然后通過高斯濾波取值去除卡爾曼濾波后的相對顯著誤差,最后運(yùn)用改進(jìn)的中值濾波—統(tǒng)計(jì)中值濾波,進(jìn)一步平滑了隨機(jī)誤差,提高了RSSI值的精確度,使三邊測距后的誤差穩(wěn)定在0.7~1.0m,有效的提高了定位的精確度和穩(wěn)定性。
4 結(jié)語
本文針對復(fù)雜的室內(nèi)環(huán)境,在研究各種濾波算法優(yōu)缺點(diǎn)的基礎(chǔ)上,提出了一種新的濾波:KGSM濾波。該濾波相比于傳統(tǒng)濾波,優(yōu)化了RSSI值。然后通過對數(shù)損耗模型將濾波后的RSSI值轉(zhuǎn)化為距離,運(yùn)用三邊測距算法得到了定位位置。實(shí)驗(yàn)表明:運(yùn)用KGSM濾波后進(jìn)行的三邊定位算法的定位誤差為0.7~1m,提高了定位的精確度和穩(wěn)定性。雖然基于KGSM濾波的三邊定位算法提高了定位精度,但仍存在一定的局限,以后可以從以下幾個方向進(jìn)行改進(jìn):(1)KGSM濾波融合了三種濾波,增加了算法復(fù)雜性,下一步工作將尋找某種或幾種濾波,使得RSSI值精確度提高的同時(shí),算法復(fù)雜度也減小;(2)進(jìn)行三邊測距定位算法得到的位置是個準(zhǔn)確值,實(shí)際上由于室內(nèi)環(huán)境復(fù)雜,最終可能導(dǎo)致三個圓不相交與一點(diǎn)。
參考文獻(xiàn):
[1]陳麗,王學(xué)東,孫晶晶.基于改進(jìn)高斯濾波的室內(nèi)無線定位算法[J].電氣自動化,2014,36(3):31-33.
[2]劉鋆.基于卡爾曼濾波的WSNs定位系統(tǒng)研究與設(shè)計(jì)[D].華中師范大學(xué),2014.
[3]廖興宇,余敏,汪倫杰.基于錨球交域投影質(zhì)心的WSNs三維定位算法[J].傳感器與微系統(tǒng),2014,33(6):126-128.
作者簡介:程?。?989-),男,漢族,碩士研究生,主研方向:物聯(lián)網(wǎng)、無線傳感網(wǎng)。