李新春,陽士宇,張玉琛,孫鶴源
(1.遼寧工程技術(shù)大學 電子與信息工程學院,遼寧 葫蘆島 125105;2.遼寧工程技術(shù)大學 研究生院,遼寧 葫蘆島 125105)
UWB技術(shù)最先由美國軍方提出并使用,2002年之后,美國國防部決定將超寬帶通信應用到民用領(lǐng)域[1]。與傳統(tǒng)的借助載波實現(xiàn)信號調(diào)制的通信技術(shù)不同的是,UWB技術(shù)是一種利用亞納秒級或納秒級窄脈沖,在理論上達到厘米級或分米級定位精度的無載波通信技術(shù)。UWB技術(shù)的時間分辨率高,抗多徑能力強,安全性能優(yōu)越,使其在智能倉儲,工廠導航等室內(nèi)定位領(lǐng)域被大量使用。
多徑效應和NLOS環(huán)境是影響精確室內(nèi)定位效果的主要因素[2]。多徑效應會導致到達時間(time of arrival, TOA)估計誤差的產(chǎn)生,而定位系統(tǒng)工作在NLOS環(huán)境會導致標簽節(jié)點發(fā)出的電磁信號會通過散射或衍射到達定位錨節(jié)點,產(chǎn)生NLOS誤差[3]。經(jīng)典的UWB室內(nèi)定位算法的抗多徑能力強,但在受NLOS誤差影響時會產(chǎn)生較大的定位誤差,故研究削減NLOS誤差的算法成為了當下熱點之一。文獻[4]提出一種基于NLOS誤差先驗信息的定位算法,提高了NLOS環(huán)境下的定位精度,但NLOS先驗信息的獲取需要采集大量的數(shù)據(jù);文獻[5]提出一種改進的擴展卡爾曼濾波算法,通過閾值判斷后改變增益系數(shù)的方法抑制了NLOS誤差,但對NLOS誤差的削減不徹底;文獻[6]提出一種Chan-Taylor混合算法,合理地利用了Chan算法與Taylor級數(shù)展開法的優(yōu)勢,用Chan算法估計出的標簽節(jié)點的坐標作為Taylor級數(shù)展開法迭代的初始位置來精確估計標簽節(jié)點的位置,但初次估計中沒有被削除的NLOS誤差也會被帶入Taylor迭代過程,導致結(jié)果誤差增大;文獻[7]利用自適應卡爾曼濾波算法對移動標簽節(jié)點周圍變化的環(huán)境實時更新,提高了定位精度,但NLOS環(huán)境下卡爾曼濾波算法定位誤差較大的缺點還是沒有解決;文獻[8]提出一種探索型多目標粒子群優(yōu)化算法(Exploratory multi-objective particle swarm optimization,EMOPSO),在保留傳統(tǒng)PSO算法收斂性的基礎(chǔ)上,提高了定位精度,但在NLOS環(huán)境下存在復雜度過高的問題。
針對以上問題,本文提出了一種基于TDOA值來判別與削減NLOS誤差的卡爾曼濾波算法。具體分為以下3步:1)利用傳統(tǒng)卡爾曼濾波算法初次估計移動標簽節(jié)點并根據(jù)結(jié)果計算得到帶有誤差的TDOA值;2)基于TDOA差值進行NLOS誤差判別,根據(jù)環(huán)境判別結(jié)果進行視距重構(gòu),削減NLOS誤差,同時,利用僅受LOS誤差影響的歷史值更新卡爾曼濾波協(xié)方差陣,消除環(huán)境誤差帶來的影響;3)將上一步削減誤差后的結(jié)果代入Chan-Taylor算法迭代計算,得到最終精確的定位結(jié)果。實驗結(jié)果表明,該算法能提高在NLOS環(huán)境下的定位精度。
UWB室內(nèi)定位是利用電參量信息,例如飛行時間、相位等來實現(xiàn)對未知標簽節(jié)點的定位,根據(jù)測量信號的不同的特征參數(shù)分為基于信號到達角度(angle of arrival, AOA)、基于接收信號強度(received signal strength indication, RSSI)、基于TOA與基于TDOA的定位方法[9-10]。其中,基于TDOA的定位可以通過分時復用機制來避免多址干擾對定位效果帶來的影響,故成為了最適合UWB室內(nèi)定位的方法。
基于TDOA的定位方法是通過測量標簽節(jié)點發(fā)出的信號到達任意兩個錨節(jié)點的時間差,得出未知坐標的標簽節(jié)點同這兩個錨節(jié)點間的TDOA值[11]。由于現(xiàn)實中所有錨節(jié)點與同一臺計算機主機相連,故認為錨節(jié)點之間時間完全同步,進而可以通過求出的TDOA值繪制出以這兩個錨節(jié)點為焦點的雙曲線圖,如圖1所示。
圖1 基于TDOA的定位原理圖Fig.1 Location schematic diagram based on TDOA
假設(shè)在定位區(qū)域內(nèi)放置n個參與定位的錨節(jié)點,以錨節(jié)點i(xi,yi)和錨節(jié)點1(x1,y1)為焦點組成一個雙曲線組(Mi,M1),i=2,…,n。在標簽節(jié)點開始發(fā)送信號后,可以計算出它們所接收到信號的時間差ti,1,表示為
(1)
(1)式中:ri表示錨節(jié)點i和標簽節(jié)點的距離;ri,1表示錨節(jié)點i和錨節(jié)點1與標簽節(jié)點之間的距離差;c為信號電磁波傳播的速度。
根據(jù)(1)式可以得到以(Mi,M1)為焦點的雙曲線Li,1的方程為
(2)
得到至少兩組雙曲線組的到達時間差后,就可以根據(jù)(2)式構(gòu)建如(3)式所示的方程組。通過求解此方程組就能夠得出標簽節(jié)點的坐標。
(3)
在復雜環(huán)境下,UWB室內(nèi)定位的計算結(jié)果往往受多徑效應、NLOS環(huán)境等因素的影響,產(chǎn)生誤差[12]。若ri,1表示第i個錨節(jié)點和第1個錨節(jié)點與標簽節(jié)點間的距離差,則ri,1等于真實距離差Li,1與標準測量誤差ni和NLOS誤差ei之和,即
ri,1=Li,1+ni+ei
(4)
標準測量誤差ni由LOS環(huán)境中多徑效應等因素造成的誤差構(gòu)成,被認為服從均值和標準差為μ和σ的高斯分布,表示為
(5)
而NLOS誤差ei通常被認為服從信道環(huán)境決定的超量時延τ的指數(shù)分布,表示為
(6)
多徑效應是由于各種散射物體和反射物體的存在,導致傳輸過程中的路徑存在不同時延;在UWB信號發(fā)射后,各多徑分量到達UWB接收端的時間不相同,導致相互疊加,出現(xiàn)失真,產(chǎn)生誤差。而非視距傳播則是當UWB定位系統(tǒng)工作在NLOS環(huán)境時,UWB信號穿透阻擋物時會產(chǎn)生時延,產(chǎn)生NLOS誤差。經(jīng)典的UWB室內(nèi)定位算法抗多徑能力強,能有效地減小由多徑效應引起的定位誤差,故削減NLOS誤差成為了研究的一個關(guān)鍵。
在移動標簽節(jié)點受NLOS誤差影響時,Chan算法,Taylor級數(shù)展開法,傳統(tǒng)卡爾曼濾波算法等經(jīng)典UWB室內(nèi)定位算法會出現(xiàn)定位誤差較大,定位精度不高的問題[13-14]。目前常用的削減NLOS誤差的方法有視距重構(gòu)、統(tǒng)計校正和消極加權(quán)等[15]。本文提出一種基于TDOA差值進行視距重構(gòu)的卡爾曼濾波算法,利用視距重構(gòu)削減卡爾曼濾波迭代過程中的NLOS誤差,提高定位精度,如圖2所示。
圖2 定位算法流程圖Fig.2 Flowchart of positioning algorithm
定位算法的具體步驟如下。
1)卡爾曼濾波算法初次估計??柭鼮V波算法在對動態(tài)目標定位中有廣泛的應用,能夠高效地估計移動標簽節(jié)點的狀態(tài)。傳統(tǒng)的卡爾曼濾波分為預測和更新兩個階段[16-17]。在預測階段,算法通過使用上一狀態(tài)的估計,對當前狀態(tài)進行估計。而在更新階段,利用當前狀態(tài)的觀測值優(yōu)化在預測階段獲得的預測值,獲得一個更精確的新估計值。
狀態(tài)方程為
Xn=AXn-1+Bμn-1+Fn,n-1wn-1
(7)
測量方程為
Yn=HnXn+vn
(8)
(7)—(8)式中:Xn,Yn分別為狀態(tài)向量和觀測向量;A為狀態(tài)轉(zhuǎn)移矩陣;B為可選的控制輸入μ的增益;Fn,n-1為狀態(tài)噪聲系數(shù)矩陣;wn-1為狀態(tài)噪聲序列;vn為觀測噪聲序列;Hn為觀測向量系數(shù)矩陣。
狀態(tài)方程和測量方程將第n時刻的觀測值、狀態(tài)值與觀測值的歷史信息之間聯(lián)系起來。因此,只需要一個初始狀態(tài)向量值和一個估計誤差的協(xié)方差,就可以通過迭代估計出相對應時間節(jié)點上的狀態(tài)值。
2)基于TDOA差值的視距重構(gòu)。根據(jù)(7)—(8)式求出卡爾曼濾波迭代的狀態(tài)方程為
(9)
圖3 視距重構(gòu)流程圖Fig.3 Flowchart of LOS reconstruction
(10)
若判斷出存在NLOS誤差,則更新迭代公式。迭代公式為
(11)
(11)式中:E為單位矩陣;e為單位向量。(11)式與(9)式相比,非零增益εn/n-1的作用會避免NLOS誤差進入下一次狀態(tài)向量的迭代計算,完成視距重構(gòu)。這種視距重構(gòu)的方法不需要NLOS先驗信息或超量時延等復雜信息,僅需計算容易獲取的TDOA值便可以實現(xiàn)對NLOS誤差的判別與削減,復雜度低。
若判斷僅存在LOS誤差,則更新協(xié)方差陣。協(xié)方差陣為
(12)
3)Chan-Taylor算法迭代計算。Chan算法在僅存在LOS誤差的情況下有較高的定位精度,而Taylor級數(shù)展開算法作為一種迭代算法,通過合理設(shè)置初始位置坐標可以有效地降低定位誤差[19]。故將上一步卡爾曼濾波算法的結(jié)果先代入Chan算法估計,將Chan算法的估計結(jié)果作為Taylor級數(shù)展開法的初始值進行迭代,可以同時合理利用兩種算法的優(yōu)點。
由(3)式和(11)—(12)式可得
(13)
由于ψ未知,所以在估計時用Q近似代替ψ??傻眉訖?quán)最小二乘法(weighted least squares, WLS)估計值為
(14)
(14)式中,第一次通過WLS計算的估計值Za是在預設(shè)x、y、r1三者相互獨立的情況下得到的。而在實際應用中,x、y、r1往往是相關(guān)的,而且用Q近似代替ψ也會導致誤差產(chǎn)生,影響定位精度。于是引入Chan算法,將求非線性方程組解的問題變?yōu)榉蔷€性的最優(yōu)化問題,利用初次WLS的結(jié)果重新構(gòu)建誤差方程組再次進行WLS估計,即
(15)
(15)式中,B2=diag{xa-x1,ya-y1,ra}。利用第一次估計值Za可以近似估計B2,據(jù)此進行第二次WLS估計,即
(16)
第二次WLS估計值Za2與第一次WLS估計Za相比,利用了多錨節(jié)的冗余信息二次加權(quán)估計,并且消除了由于近似替代產(chǎn)生的誤差,提高了估計結(jié)果的精度。
ψ=h-Gδ
(17)
用最小二乘法求解δ可得本次迭代后的標簽節(jié)點位置坐標為
(18)
|Δx+Δy|<η
(19)
4個UWB定位模塊作為錨節(jié)點,放置于邊長為8 m的室內(nèi)正方形場地角落;位于場地中心的個人計算機作為主錨節(jié)點,用于匯集錨節(jié)點采集的定位數(shù)據(jù)。實驗中設(shè)置卡爾曼濾波算法的初始矩陣系數(shù)為10,A=[1,0.5;0,1],Hn=[1,0;0,0],誤差門限值λ為0.55 m(λ為本次實驗的LOS環(huán)境下預先測得的標準測量誤差值)。選用累計分布函數(shù)(cumulative distribution function,CDF)均方根誤差(root mean squared error,RMSE)與運行時間作為評價算法定位性能的指標。
CDF被用來表示隨機變量分布設(shè)定區(qū)間的概率,能直觀地描述定位誤差出現(xiàn)在設(shè)定區(qū)間的概率;RMSE能很好反映數(shù)據(jù)的變化程度,值越小表示估計值與測量值之間的偏差越小,具有更強的穩(wěn)定性;運行時間是當錨節(jié)點采集的一組數(shù)據(jù)返回主錨節(jié)點后,算法處理數(shù)據(jù)的時間,一般被用來衡量算法的時間復雜度。
圖4為LOS實驗環(huán)境示意圖。圖4中,UWB標簽節(jié)點按照標定的軌跡(邊長為6 m的正方形軌跡)以0.5 m/s的速度移動(標簽節(jié)點移動起點為左下角),采樣時間間隔為0.5 s。
圖4 LOS環(huán)境實驗示意圖Fig.4 Schematic diagram of LOS environment experiment
實驗結(jié)果如圖5所示。從圖5可以看出,各算法在LOS環(huán)境下的定位誤差都較小,能達到分米級的定位精度。本文算法利用僅受LOS誤差影響的歷史值更新卡爾曼濾波過程的協(xié)方差陣,且合理利用Taylor級數(shù)展開法進行迭代,因此,與傳統(tǒng)卡爾曼濾波算法、Chan-Taylor混合算法等相比,本文算法定位誤差更小。
圖5 LOS環(huán)境下CDF分布圖Fig.5 CDF distribution map in LOS environment
圖6為NLOS實驗環(huán)境示意圖。圖6中,UWB標簽節(jié)點按照標定的軌跡(邊長為6 m的正方形軌跡)以0.5 m/s的速度移動(標簽節(jié)點移動起點為左下角),采樣時間間隔為0.5 s,障礙物為厚度約25 cm的墻柱。當移動標簽節(jié)點被墻柱遮擋時,會受到NLOS誤差的影響。
實驗結(jié)果如圖7與表1所示。由表1可見,Chan-Taylor混合算法、傳統(tǒng)卡爾曼濾波算法與傳統(tǒng)PSO算法在移動標簽節(jié)點受NLOS環(huán)境影響時定位誤差較大,定位效果不佳;自適應卡爾曼算法定位精度比前三者高,但削減NLOS誤差不徹底;改進擴展卡爾曼濾波算法能削減部分NLOS誤差,但算法復雜度較高;EMOPSO算法在NLOS環(huán)境下的復雜度過高,不利于實際環(huán)境中的實時室內(nèi)定位;而本文算法利用了基于TDOA差值的視距重構(gòu)過程,削減NLOS誤差的效果優(yōu)于自適應卡爾曼濾波算法與改進擴展卡爾曼算法,RMSE值約為0.28 m,最大定位誤差約為0.59 m,在低復雜度的情況下具有更高的定位精度且穩(wěn)定性更強。圖7對比了定位效果較為良好的幾種算法。從圖7可以看出,本文算法處理后的移動標簽節(jié)點運動軌跡更貼近于標定軌跡且未出現(xiàn)斷點。
圖6 NLOS環(huán)境實驗示意圖Fig.6 Schematic diagram of NLOS environment experiment
圖7 NLOS環(huán)境定位軌跡圖Fig.7 Track of NLOS environment location
表1 NLOS環(huán)境下各算法比較Tab.1 Comparison of different algorithms in NLOS environment
本文提出了一種基于TDOA差值判別并削減NLOS誤差的UWB室內(nèi)定位算法。該算法結(jié)合了卡爾曼濾波能優(yōu)化更新預測方程的方法減小定位誤差與Chan-Taylor定位算法迭代精度高的優(yōu)點。通過基于TDOA差值的NLOS誤差判別方法,在不需要獲取NLOS先驗信息等復雜參數(shù)的條件下完成視距重構(gòu),削減NLOS誤差,并利用僅受LOS誤差影響的歷史值更新卡爾曼濾波協(xié)方差陣,減小環(huán)境變化帶來的誤差影響,利用Chan-Taylor算法進行迭代,得到精確的定位結(jié)果。通過實驗驗證,在NLOS環(huán)境下,該算法時間復雜度低,能有效減小定位誤差、提高定位精度,穩(wěn)定性更強。