張永恒 陳紅華
摘 要:隨著WiFi的普及,信號范圍覆蓋越來越廣,基于WiFi的室內(nèi)定位可以實現(xiàn)復(fù)雜環(huán)境中的定位,定位成本也會越來越低,但仍存在信號容易被遮擋而導(dǎo)致定位隨機(jī)性大的不足。當(dāng)下,智能手機(jī)配備了各種傳感器,讓基于慣性傳感器的定位技術(shù)成本變得很低,且具有實時定位目標(biāo)的優(yōu)點(diǎn),但是存在較大的慣性累積誤差。所以利用行人航位推算(Pedestrian Dead Reckoning,PDR)和WiFi定位融合的方法可以提高定位精度。
本文首先對行人航位推算進(jìn)行研究,解決航位推算的三個關(guān)鍵步驟:步頻檢測、步長估計、角度偏移。步頻檢測主要通過加速度變化判斷行人行走步數(shù)。步長估計主要通過線性步長模型來進(jìn)行估計。角度偏移只需要通過慣性傳感器測量得到角度變化。然后,研究WiFi定位方法,利用衰減模型計算與AP距離,然后通過最小二乘法定位出坐標(biāo)。最后通過擴(kuò)展卡爾曼濾波解決非線性問題,將航位推算方程作為觀測方程,WIFI定位坐標(biāo)作為量測方程,實現(xiàn)二者數(shù)據(jù)融合。
通過MATLAB繪制WIFI定位和PDR/WIFI融合后定位的行為軌跡,發(fā)現(xiàn)融合后的結(jié)果更接近真實行為軌跡。通過PDR/WIFI組合進(jìn)行室內(nèi)定位提高定位精度,能更好地應(yīng)用于商場、地下車庫等室內(nèi)場所。
關(guān)鍵詞:室內(nèi)定位; WiFi; PDR; 擴(kuò)展卡爾曼濾波
中圖分類號:P228? ? ? ? ?文獻(xiàn)標(biāo)識碼:A? ? ? ? 文章編號:1006-3315(2021)11-225-003
1.引言
隨著定位技術(shù)的飛速發(fā)展,位置服務(wù)已經(jīng)成為人們?nèi)粘9ぷ?、生活所必須的一項基本服?wù)需求。當(dāng)前,室外定位技術(shù)已經(jīng)比較成熟,相比之下,室內(nèi)定位技術(shù)才剛剛起步,而人們對室內(nèi)定位的需求也日趨明顯。提高室內(nèi)定位的精度,能更好地應(yīng)用于商場、地下車庫等室內(nèi)場所。目前,研究室內(nèi)定位的常用技術(shù)分為兩類:一是基于無線信號的定位技術(shù),如射頻識別技術(shù)、WiFi技術(shù)等;二是基于非電信號的定位技術(shù),如地磁場技術(shù)、慣性測量技術(shù)、超聲波技術(shù)等[1]。查峰,覃方君等人研究發(fā)現(xiàn)慣性導(dǎo)航在短時間內(nèi)的定位精度很高,但具有誤差累積效應(yīng)[2];而黃威,張玲華等人研究發(fā)現(xiàn)WiFi定位的精度雖不如前者高,但不存在誤差累積[3]。本文主要是使用慣性測量單元在行走過程中的加速度、角速度等數(shù)據(jù),利用這些數(shù)據(jù)對行人進(jìn)行步長和方向的推算;WiFi定位主要是通過RSSI來測算行人的位置坐標(biāo)。傳統(tǒng)的卡爾曼濾波只能解決一些線性問題,而此時研究的問題是存在方向角變化,是非線性模型,所以要進(jìn)一步采用擴(kuò)展卡爾曼濾波,通過積分轉(zhuǎn)化為線型模式來進(jìn)行數(shù)據(jù)的融合。
2.PDR定位原理及過程
2.1PDR原理
行人航位推算是依靠行人行走的步長S已經(jīng)航向角θ來推算坐標(biāo)位置的[4]。但是,其中的步長S的推算不能簡單地通過對加速度的二次積分來獲取,因為前文提到這樣會使測量的誤差累積,很大影響定位精度。所以想要更科學(xué)的計算步長,要利用行人行走動力學(xué),根據(jù)每個人的步態(tài)特征,統(tǒng)計出行走步數(shù),再利用模型估計行人每一步的步長,累積進(jìn)而獲得行走的距離[5]。
2.2航位推算三個數(shù)據(jù)獲取
2.2.1步態(tài)檢測
利用零點(diǎn)交叉法,即根據(jù)行人行走時總是要經(jīng)歷一個加速和減速的過程,隨著腳后跟離開地面,會產(chǎn)生加速效果,同一只腳腳后跟再次著地時會產(chǎn)生減速效果,所以在剔除重力加速度后,運(yùn)動的加速度值會有正負(fù)值,正表示加速,負(fù)表示減速,因此確定波形的零點(diǎn)就可探測跨步的起始點(diǎn)[6]。
2.2.2步長估算
利用非線性步長模型。由于沒有充足的理論證明步長與統(tǒng)計特征值之間的線性關(guān)系,所以一些研究者就探究了一些非線性模型,如含有一個參數(shù)的非線性模型,其公式為:
由此公式看出,只要統(tǒng)計了最大和最小加速度,將其中的參數(shù)K計算出來,就可以完成估算[7]。根據(jù)各項數(shù)據(jù)多方面考慮,最終選定K值為0.52最合適[8]。
2.2.3偏移角計算
首先,選定一個測試環(huán)境,從正西方向到正東方向來回走動,將測量結(jié)果在MATLAB中繪制出來,發(fā)現(xiàn)X軸角速度變化明顯,故可以選擇X軸方向為參考方向。故選取X軸的波峰作為角度偏移角。根據(jù)測量的數(shù)據(jù)將三個方向的角速度變化在MATLAB中繪制出來,就可得到角度偏移。如果波峰不是很明顯,也可以設(shè)定一定的角度變化作為閾值來篩選角度變化率,進(jìn)而算出角度偏移角。角度變化率較小的視為行人行走時沿上一時刻方向直線行走。
3.WiFi定位原理和計算方法
3.1衰減模型定位
因為現(xiàn)實的室內(nèi)環(huán)境復(fù)雜,存在許多遮擋信號傳播的物體,信號也會多路徑傳播,查找文獻(xiàn)發(fā)現(xiàn)研究者研究出了對數(shù)距離路徑衰減模型,公式如下:
PL(d)(dBm)=PL(d0)+10·n·log(d/d0)+FAF(3-1)
PL(d)為傳輸?shù)膿p耗值,也就是定位裝置距離已知AP點(diǎn)一米位置的信號損耗值,n為衰減因子,將環(huán)境氛圍分為全開放、半開放、較封閉場景,不同的場景,衰減因子取值不同,F(xiàn)AF是穿透建筑物的損耗。
將模型簡化為以下公式:
Pr(d)=RSSI=A-10·n·logd(3-2)
其中,n為衰減因子,不同環(huán)境下衰減因子的取值不同
本文的衰減因子取2.2,公式中另外一個參數(shù)值A(chǔ)需要在AP周圍進(jìn)行測量確定其值。本文通過在AP附近設(shè)置3個測量點(diǎn),在每個測量點(diǎn)測量采樣40組RSSI數(shù)據(jù),然后將采集的數(shù)據(jù)根據(jù)從小到大排列,從中間開始向兩邊選取40個RSSI數(shù)據(jù),最后取其平均值作為A的最終值。從采集的數(shù)據(jù)中算得,此時A的值為-38,故公式(3.2)可改寫為
RSSI=-40-2l·log(d)(3-3)
則只需測量RSSI值,通過公式(3.3)就可以直接計算出采集裝置位置與AP之間的相對距離[9]。
3.2衰減模型的算法定位
當(dāng)含有三個AP的實際情況下,采集裝置的位置坐標(biāo)不再是三個不同半徑的圓周的交點(diǎn),而是在近似三角形的ABC區(qū)域中。所以,要想得到采集裝置的具體位置,需要建立方程式,將待測目標(biāo)的坐標(biāo)作為未知數(shù),求解該方程式的解。利用最小二乘原理解得:z=(ATA)-1ATb(3-4)
用公式(3-4)可以解得z,即待測目標(biāo)處的位置坐標(biāo)(X,Y)[10]。其中A為系數(shù)陣,b為參數(shù)陣。
4.擴(kuò)展卡爾曼濾波原理及融合過程
對于一般的卡爾曼濾波方程組,想要進(jìn)行最優(yōu)估計遞推,就必須要求狀態(tài)方程和量測方程都是線性方程,而在室內(nèi)定位數(shù)據(jù)的融合中,行人航位推算的方程式非線性的,因此,一般的卡爾曼濾波不適用于本文研究的非線性方程系統(tǒng)。所以針對這種情況,常用的方法是將非線性方程轉(zhuǎn)化為線性方程,利用泰勒公式的一階線性形式,將非線性方程轉(zhuǎn)化為線性方程。關(guān)鍵步驟是利用泰勒公示的一階線性公示獲得狀態(tài)轉(zhuǎn)移矩陣:
其余步驟與卡爾曼濾波相同,只需要提供狀態(tài)向量初始值和估計方差矩陣初始值,然后指定兩個噪聲矩陣,還有觀測向量,即可推算出k時刻的次優(yōu)估計值[11]。
5.實驗設(shè)計與分析
5.1實驗準(zhǔn)備
實驗需要三臺手機(jī)開啟熱點(diǎn)提供WiFi信號,需要一部安卓系統(tǒng)為6.1以上的手機(jī)安裝室內(nèi)外無縫定位數(shù)據(jù)獲取軟件。
5.2數(shù)據(jù)采集
采集軟件為com.collector.apk,1,1。此軟件是安裝在6.1以上安卓系統(tǒng)的手機(jī),界面中的數(shù)據(jù)包括:陀螺儀三軸方向的數(shù)據(jù),加速度三軸方向數(shù)據(jù),周圍各個WiFi的Mac地址,連接速度和RSSI值。
5.3數(shù)據(jù)處理
將三個手機(jī)作為AP,擺放在三個不同的位置,并建立坐標(biāo)系,將Iphone1作為AP1,Iphone2作為AP2,Iphone3作為AP3,在建立的坐標(biāo)系中,規(guī)定三個AP坐標(biāo):AP1(-2,4),AP2(2,2),AP3(1,-3)。起始方向為正北方向。一步步長為0.5m。
5.3.1WIFI坐標(biāo)定位
(1)利用衰減模型計算目標(biāo)距AP的距離
經(jīng)過測試定位節(jié)點(diǎn)與參考節(jié)點(diǎn)之間的距離d=1m時,相對于三個AP的RSSI值分別為-40,-40,-42,即RSSI(0)=A分別為-40,-40,-42。模型公式為:
Pr(d)=RSSI=A-10·n·logd(5-1)
由于在比較開放的區(qū)域進(jìn)行試驗,所以n取2.1。
(2)利用最小二乘原理求解坐標(biāo)
根據(jù)到三個AP的距離列立方程組,并轉(zhuǎn)換為線性格式:
AX=b(5-2)
利用最小二乘原理求得:
X=(ATA)-1ATb(5-3)
5.3.2擴(kuò)展卡爾曼濾波融合過程
(1) 計算狀態(tài)向量預(yù)測值。公式為:
(2)計算觀測向量預(yù)測值。此時觀測向量預(yù)測值為WiFi定位坐標(biāo)。
(3)利用泰勒公式一階線性化狀態(tài)方程求解狀態(tài)轉(zhuǎn)移矩陣。公式為:
(4)計算狀態(tài)向量預(yù)測方差陣
Pk-=φkPk-1+φk+Qk(5-6)
(5)計算卡爾曼增益
Kk=pk/k-1HkT(Hkpk/k-1HkT+Rk)-1(5-7)
其中,量測方程中的H為單位矩陣。
(6)計算觀測估計值
Xk=Xk/k-1+Kk(Zk-Zk/k-1)(5-8)
(7)計算下一時刻狀態(tài)向量估計方差陣
Pk=(I-KkHk)Pk/k-1(5-9)
其中,I為單位矩陣,此時量測方程中的H也為單位矩陣。
融合后的所有坐標(biāo)為P1(0.0956,3.9110),P2(1.0123,5.0291),P3(1.9675,4.0234),P4(3.0651,2.0861),P5(5.0112,0.0367),P6(3.0195,-1.9672),P7(2.0384,0.0764),P8(0.0098,-2.0946),P9(-1.9437,-2.4387),P10(-4.0541,1.0945),P11(-3.0712,3.1003),P12(-4.0497,5.0762)。
5.3.3數(shù)據(jù)可視化
通過MATLAB將實際行駛的坐標(biāo)、WIFI的坐標(biāo)和融合后的坐標(biāo)繪制在坐標(biāo)系中。結(jié)果如下:
圖5.1真實行為軌跡,WiFi定位軌跡和PDR/WiFi融合定位軌跡圖如圖,紅線是真實軌跡,藍(lán)線是WiFi定位軌跡,明顯可以看出已經(jīng)和真實軌跡產(chǎn)生偏離,黑線為PDR/WiFi融合定位后的軌跡,對比發(fā)現(xiàn)融合后更接近真實軌跡。
6.結(jié)論
通過WiFi定位的坐標(biāo)位置發(fā)生了較大的偏移,但是經(jīng)過擴(kuò)展卡爾曼濾波的融合后,定位精度大大提高??傊?,通過濾波融合后的結(jié)果相對于PDR和WiFi定位精度提高了很多,若想獲取更高精度的結(jié)果,可以通過處理PDR和WIFI數(shù)據(jù)先提高二者的定位精度再進(jìn)行融合,則可以使融合定位結(jié)果接近真實值??梢詮奶岣逷DR數(shù)據(jù)精度和WiFi定位精度入手。如條件允許,可以通過利用加權(quán)K鄰近算法來提高RSSI值的精度[12]。對于航位推算,通常采用簡單移動平均算法對加速度值進(jìn)行平滑[13]。
總之,室內(nèi)定位技術(shù)逐漸發(fā)展起來,定位設(shè)備也逐漸提高,通過多種定位技術(shù)的融合定位,室內(nèi)定位精度也會逐漸提高,在以后的生活和工作中有重要作用。
參考文獻(xiàn):
[1]閆大禹,宋偉,王旭丹,等.國內(nèi)室內(nèi)定位技術(shù)發(fā)展現(xiàn)狀綜述[J]導(dǎo)航定位學(xué)報,2019,7(4):5-12.
[2]查峰,覃方君,李京書,等.三軸旋轉(zhuǎn)慣性導(dǎo)航系統(tǒng)的旋轉(zhuǎn)控制建模研究[J]兵工學(xué)報,2017,38(8):1610-1618
[3]黃威,張玲華.基于RSSI的無線傳感器網(wǎng)絡(luò)室內(nèi)定位算法研究[J]計算機(jī)技術(shù)與發(fā)展,2020,30(10):64-68
[4]仝樹,楊渝琪.基于加速度傳感器與WiFi融合的室內(nèi)動態(tài)定位研究[J]中國新通信,2018,(13):65-67
[5] Li Huaiyu,Chen Xiuwan,Jing Guifei,Wang Yuan,Cao Yanfeng,Li Fei,Zhang Xinlong,Xiao Han. An Indoor Continuous Positioning Algorithm on the Move by Fusing Sensors and Wi-Fi on Smartphones.[J] Sensors (Basel, Switzerland),2015,15(12)
[6]李勃.基于RFID和航位推測法的室內(nèi)軌跡追蹤技術(shù)研究與實現(xiàn)[D]上海交通大學(xué),2014
[7]周瑞,李志強(qiáng),羅磊.基于粒子濾波的WiFi行人航位推算融合室內(nèi)定位[J]計算機(jī)應(yīng)用.2016,36(5):1188-1191,1200
[8]羅陽.室內(nèi)助行機(jī)器人的導(dǎo)航研究[D]哈爾濱工業(yè)大學(xué),2014
[9]岳麗娜.基于信號強(qiáng)度的WIFI室內(nèi)定位算法研究及系統(tǒng)實現(xiàn)[D]西安電子科技大學(xué),2015
[10]馬羽,高蕾.基于二維卡爾曼濾波與最小二乘法的目標(biāo)定位算法[J]計算機(jī)與數(shù)字工程,2017,45(08):1652-1655+1669
[11]劉慶,關(guān)維國,李順康,王芳.基于擴(kuò)展Kalman濾波的室內(nèi)WiFi-PDR融合定位算法[J]計算機(jī)工程,2019,45(04):66-71+77
[12]徐瀟瀟,謝林柏,彭力.基于WiFi信號強(qiáng)度特征的室內(nèi)定位系統(tǒng)設(shè)計[J]計算機(jī)工程,2015,41(04):87-91
[13]周瑞,袁興中,黃一鳴.基于卡爾曼濾波的WiFi-PDR融合室內(nèi)定位[J]電子科技大學(xué)學(xué)報,2016,45(03):399-404
作者簡介:張永恒,1997年生,男,江蘇宿遷人,南京林業(yè)大學(xué)碩士。通訊作者:陳紅華,1976年生,女,江西波陽人,南京林業(yè)大學(xué)副教授,博士(理學(xué)),碩士生導(dǎo)師,研究方向:地理信息系統(tǒng)算法及應(yīng)用。