一種EKF改進算法探討
以有效衛(wèi)星數為4顆為例,分別使用ILS、EKF和改進的EKF算法進行定位,得到以ECEF坐標系下XYZ三維坐標表示的定位結果,如圖1所示。
由圖 1可知,接收機在前400 s時基本保持靜止,然后開始運動至1 600 s,最后逐步靜止至測試結束。三種解算方法都可以較好地進行定位解算。為了更好地分析定位結果,畫出圖 1中的XYZ三維坐標上的定位誤差的均方根,如圖 2所示。
為了更好地比較ILS、普通EKF與改進EKF算法,計算圖 2中三種算法在XYZ三個坐標方向上的定位結果的均方根誤差的平均值,如表1所示。
從圖2和表1可以更清晰地看出,在有效衛(wèi)星不少于4顆時,三種算法在以ECEF坐標系表示的XYZ方向上的定位誤差的均方根均不超過20 m,平均定位誤差不超過10 m,定位解算精度都很好。其中改進的EKF與普通EKF定位精度相當,而ILS的定位均方根誤差抖動很小。這是因為,每當有新的測量數據時,ILS算法都會經過多次迭代計算直至結果收斂,而EKF與改進的EKF算法均只是利用新息進行一次計算,計算量要遠遠小于ILS,故而定位結果會稍有抖動。
3.2 有效衛(wèi)星數只有3顆時的定位結果
在有效衛(wèi)星數只有3顆時,ILS無法進行定位。分別使用普通EKF和改進的EKF算法進行定位,得到在ECEF坐標系下的XYZ三維坐標上的定位結果,如圖 3所示。
為了更好地分析定位結果,畫出圖 3中的XYZ三維坐標上的定位誤差的均方根,如圖 4所示。
為了更好地比較普通EKF算法與改進EKF算法,計算圖 3中兩種算法XYZ三維坐標上的定位結果的均方根誤差的平均值,如表 2所示。
由圖 3、圖 4和表 2可知,在只有3顆有效衛(wèi)星的情況下,普通EKF的定位結果會出現明顯的偏移,而本文提出的改進的EKF算法的定位結果與參考軌跡擬合得很好,各個方向上的平均定位誤差均不超過10 m,定位精度很好。這說明本文提出的改進EKF算法在只有3顆有效衛(wèi)星時,極大地提高了EKF的定位精度。與理論結果吻合。
3.3 有效衛(wèi)星為3顆時改進EKF與有效衛(wèi)星為4顆時普通EKF 的定位結果
為了進一步分析改進EKF算法的性能,將改進EKF算法在只有3顆有效衛(wèi)星時的定位誤差與普通EKF算法在有4顆有效衛(wèi)星時的定位誤差進行比較,如圖 5所示。
計算圖 5中的兩種情況下XYZ三維坐標上的平均誤差的均方根,如表3所示。
由圖 5和表 3可知,在只有3顆有效衛(wèi)星時,本文提出的改進EKF算法所增加的先驗信息與增加一顆衛(wèi)星的測量信息的效果基本一致。故而說明在出現GPS信號阻塞的情況下,只有3顆有效衛(wèi)星時,此改進EKF算法的定位解算精度非常好。
綜上所述,利用實測的衛(wèi)星數據進行驗證,結果表明:在3顆有效衛(wèi)星的情況下,在靜止狀態(tài)和車載狀態(tài)下,改進的EKF算法的定位精度均明顯優(yōu)于普通的EKF,且與4顆有效衛(wèi)星時EKF的定位精度相當;在不少于4顆有效衛(wèi)星的情況下,在靜止狀態(tài)和車載狀態(tài)下,改進EKF算法的定位精度與普通EKF相當。由此說明,本文提出增加的先驗信息在已有足夠測量信息時,并不會影響定位精度,而只有在3顆有效衛(wèi)星時,測量信息對于定位精度的改進與一顆有效衛(wèi)星的測量信息效果基本一致,從而大大提高了EKF算法的魯棒性。
總結
針對這一問題提出了一種改進的EKF算法。該算法利用在垂直地面方向上的位置變化緩慢這一運動特性,建立了改進EKF算法的系統(tǒng)模型。通過理論分析得到了濾波器參數,最后利用真實的GPS衛(wèi)星數據進行驗證。實驗結果表明,在可見衛(wèi)星數不少于4顆時,此改進的EKF算法定位精度與普通的EKF算法基本相同;在GPS信號阻塞只有3顆可見衛(wèi)星時,此改進的EKF算法的定位精度明顯優(yōu)于普通的EKF算法。本文提出的改進EKF算法適合車載等地面運用,不適合在垂直地面方向上高速運動的情形。
評論