范錦蓉,張 海
(北京航空航天大學(xué)自動化科學(xué)與電氣工程學(xué)院,北京 100083)
地磁場已被廣泛應(yīng)用于導(dǎo)航定位,地磁導(dǎo)航的精度在一定程度上取決于地磁場測量的精度。如何提高地磁場的測量元件之一——磁力計的測量精度,是地磁導(dǎo)航研究的重要問題。此外,因為磁力計的測量精度易受外界環(huán)境的影響,磁力計的現(xiàn)場快速標(biāo)定也成為地磁導(dǎo)航的關(guān)鍵。
近年來,國內(nèi)外學(xué)者針對磁力計標(biāo)定問題均開展了相關(guān)研究。文獻(xiàn)[1]提出將水平轉(zhuǎn)臺旋轉(zhuǎn)一周,獲得磁力計輸出的最大值和最小值,可以粗略地估計出三軸的標(biāo)度因數(shù)和零偏;文獻(xiàn)[2]提出制造非磁性校準(zhǔn)平臺,用于校準(zhǔn)磁力計;文獻(xiàn)[3]提出針對雙軸磁力計的橢圓擬合法,利用三軸轉(zhuǎn)臺固定磁力計的方位角和俯仰角,令其橫滾旋轉(zhuǎn)采集磁場數(shù)據(jù),最后利用最小二乘法和橢圓方程對實驗數(shù)據(jù)進(jìn)行擬合,獲得誤差參數(shù);文獻(xiàn)[4]提出利用橢球擬合法對三軸磁力計的誤差進(jìn)行校正,相較于文獻(xiàn)[3],文獻(xiàn)[4]對于數(shù)據(jù)采集過程中磁力計的姿態(tài)不再加以約束,擬合對象也由橢圓變?yōu)榱藱E球,其余基本一致;文獻(xiàn)[5]提出使用神經(jīng)網(wǎng)絡(luò)對磁力計航向與真實航向之間的非線性關(guān)系進(jìn)行建模,只要前期校準(zhǔn)過程中具有完備的數(shù)據(jù)集,即使后期使用過程中外部有磁場干擾,也能獲得正確的航向信息。工程中也常常采用在小范圍內(nèi)繞場一圈,獲得磁力計輸出的最大值和最小值來簡單標(biāo)定磁力計的方法。
分析上述標(biāo)定方法,均存在以下部分特點:1)需要專業(yè)設(shè)備的支持,例如水平或三軸轉(zhuǎn)臺等;2)對于計算能力有較高的要求;3)對標(biāo)定數(shù)據(jù)的采集方式有嚴(yán)格的要求;4)只能提前進(jìn)行標(biāo)定,不能在采集數(shù)據(jù)的過程中,針對磁場環(huán)境的變化隨時進(jìn)行再標(biāo)定。這些特點無疑會限制標(biāo)定方法在外場的使用。
針對上述問題,本文提出了一種基于航向匹配的磁力計外場無依托標(biāo)定算法。該算法基于航向角是磁航向角與磁偏角的代數(shù)和的原理,通過等價數(shù)學(xué)變換構(gòu)建了磁力計零偏關(guān)于姿態(tài)角和磁力計測量值的線性模型。由于算法會應(yīng)用于測量現(xiàn)場,設(shè)備資源有限,因此姿態(tài)角可以通過全球定位系統(tǒng)(Global Positioning System, GPS)和低成本慣性測量單元(Inertial Measurement Unit, IMU)組合或者較高精度的慣導(dǎo)系統(tǒng)獲得。最后利用最小二乘法估計三軸磁力計的零偏。相較于Kalman濾波,最小二乘法只要挑選的數(shù)據(jù)合理,估計的零偏在確保準(zhǔn)確的前提下,既不會頻繁波動,亦不會受到噪聲系數(shù)設(shè)置不合理帶來的不良影響。算法除獲取姿態(tài)角所需儀器外,無需其他精密儀器,計算量小,操作簡單方便,且支持在采集數(shù)據(jù)的過程中隨時進(jìn)行再標(biāo)定,適合用于現(xiàn)場標(biāo)定。標(biāo)定結(jié)果也可以作為其他精確標(biāo)定方法的可靠初值。
不同于傳統(tǒng)的用于輔助修正航向角的磁力計,本文標(biāo)定完成的磁力計旨在用于地磁匹配導(dǎo)航。磁力計的測量精度越高,地磁匹配導(dǎo)航的精度也會隨之提高。在GPS失效的情況下,慣性導(dǎo)航會出現(xiàn)誤差的累積,地磁匹配導(dǎo)航具有無累積誤差的優(yōu)點,可以有效輔助慣性導(dǎo)航修正其誤差。尤其是針對長直路段問題,相較于地圖匹配導(dǎo)航或者航跡推算系統(tǒng),地磁匹配導(dǎo)航能夠更好地解決定位問題,只要當(dāng)?shù)卮嬖诿黠@的地磁特征,地磁匹配導(dǎo)航就可以有效地進(jìn)行定位,進(jìn)而修正慣性導(dǎo)航的誤差。利用第4節(jié)的方法,可以在在線標(biāo)定磁力計的過程中,濾除測量數(shù)據(jù)中噪聲的干擾,并且識別出地磁異常數(shù)據(jù),獲得的磁異常數(shù)據(jù)可以為長直路段的地磁匹配導(dǎo)航提供基礎(chǔ)信息。
磁力計誤差主要可分為器件自身誤差和外界環(huán)境干擾兩部分。其中,器件自身誤差主要包括偏置誤差、尺度因子誤差,以及測量軸非正交誤差等;外界環(huán)境帶來的磁場干擾誤差主要包括載體中磁力計周圍的硬磁和軟磁材料造成的測量偏差等。這些誤差均可歸納為尺度因子誤差和偏置誤差。
磁力計的測量模型可以表示為
=+
(1)
實際工程應(yīng)用中,磁力計一般已經(jīng)在實驗室經(jīng)過了系統(tǒng)標(biāo)定,外場環(huán)境對矩陣的影響很小。因此,可以近似為單位陣,簡易標(biāo)定的重點應(yīng)在于對偏置誤差的估計。
綜上所述,磁場的真值為
(2)
本文設(shè)計的基于航向匹配的磁力計外場無依托標(biāo)定算法,可以僅利用現(xiàn)場已有的數(shù)據(jù),即三軸磁力計測量值和載體(磁力計)姿態(tài)角(俯仰角、橫滾角和航向角)完成對三軸磁力計的外場標(biāo)定。
標(biāo)定原理:航向角是磁航向角與磁偏角的代數(shù)和。
=+
(3)
其中,為航向角;為磁航向角;為磁偏角(磁針指北時向東偏則磁偏角為正,向西偏則磁偏角為負(fù))。
姿態(tài)角可以由GPS和低成本IMU提供,其中,GPS提供航向角,IMU提供俯仰角和滾轉(zhuǎn)角。磁航向角可以通過計算獲得;磁偏角隨地理位置的變化較小,可以通過查閱資料獲得。磁航向角的計算過程會涉及三軸零偏,因此,利用上述標(biāo)定原理估計三軸磁力計的零偏是可行的。
由于航向角和磁偏角可以從相關(guān)儀器或資料中直接獲得,所以下面僅對磁航向角的計算過程進(jìn)行簡要說明。
首先,將磁力計的測量值投影至水平面
(4)
(5)
其中,為載體的俯仰角;為載體的滾轉(zhuǎn)角。
若測量數(shù)據(jù)中沒有俯仰角和滾轉(zhuǎn)角數(shù)據(jù),對于在地面行駛的車輛,滾轉(zhuǎn)角可以近似為0°,同時在航向角不變的區(qū)域,俯仰角可按式(6)進(jìn)行計算
(6)
其中,Δ為第時刻和第+1時刻之間的高度變化;Δ為兩個時刻間車輛行駛的距離;、+1分別為第時刻和第+1時刻車輛的高程;、+1分別為第時刻和第+1時刻的車輛里程計信息;(,)和(+1,+1)為由第時刻和第+1時刻的GPS坐標(biāo)轉(zhuǎn)換的UTM坐標(biāo)。
磁航向角是載體縱軸在水平面上的投影與磁子午線的夾角(磁北為正,順時針旋轉(zhuǎn)),其計算方式為
(7)
由式(7)可知,標(biāo)定原理中磁航向角的計算會涉及反三角函數(shù),這是一種非線性運算,會帶來收斂速度和計算量等相關(guān)問題。
為了解決上述問題,基于航向匹配的磁力計外場無依托標(biāo)定算法在標(biāo)定模型的推導(dǎo)過程中對式(7)進(jìn)行了一系列的數(shù)學(xué)等價變換,可以將之等價變換為線性模型。這樣既能確保最終結(jié)果的收斂性,也可以減少運算量,從而提高標(biāo)定速度。
變換過程為:
首先,對式(3)進(jìn)行正切函數(shù)(tan)計算,以抵消磁航向角計算過程中arctan函數(shù)的影響
tan(-)=tan
(8)
其次,由式(4)和式(5)可知,投影到水平面后磁場分量為
(9)
將式(9)代入式(8)可得
tan(-)=tan=
(10)
做變換得
tan(-)·[(-)cos+(-)·
sinsin+(-)sincos]=(-)·
cos-(-)sin
(11)
提取式(11)中的零偏系數(shù)
=·+
(12)
其中
=costan(-)·+[sinsintan(-
)-cos]·+[sincostan(-)+
sin]·
式(12)中,為載體的偏航角,為載體的俯仰角,為載體的滾轉(zhuǎn)角,為磁偏角,它們的獲得方法上文已提及,所以在標(biāo)定過程中,它們的三角函數(shù)都是已知量;此外,、、為磁力計的三軸測量值,也是已知量。所以,矩陣和都已知。
綜上所述,可知式(12)中僅矩陣為未知量,且與之間為線性關(guān)系。至此,式(7)成功等價變換為線性標(biāo)定模型。
最后利用最小二乘法標(biāo)定磁力計的零偏。
最小二乘法是估計待求參數(shù)的常用方法,目的是使得殘差平方和最小,即式(13)最小
(13)
其中,為殘差平方和。
獲得的矩陣即為標(biāo)定該磁力計所需的零偏。
令式(13)成立的解為
=()
(14)
磁力計在測量過程中會受到多種干擾,除第1節(jié)提及的因素之外,不可控的外場環(huán)境也會引入新的測量噪聲。因此,需要先對采集到的地磁數(shù)據(jù)進(jìn)行濾波處理,盡量抑制其中的噪聲,才能進(jìn)一步將數(shù)據(jù)用于磁力計的標(biāo)定。
本文選擇中值-均值濾波與FIR數(shù)字濾波器相結(jié)合的濾波算法。
中值-均值濾波是一種較為簡單但行之有效的濾波方法。它包括中值濾波和均值濾波兩部分,其中中值濾波能夠有效濾除孤立的脈沖噪聲點;均值濾波能夠有效削減數(shù)據(jù)中的白噪聲,本文采用算數(shù)平均濾波。
先對數(shù)據(jù)進(jìn)行中值濾波,中值濾波的關(guān)鍵步驟在于對小窗口內(nèi)的數(shù)據(jù)進(jìn)行排序,取其中值;再對數(shù)據(jù)進(jìn)行均值濾波,均值濾波的關(guān)鍵步驟在于對小窗口內(nèi)的數(shù)據(jù)取均值。式(15)表示均值濾波的關(guān)鍵步驟
(15)
其中,為小窗口的長度。式(15)表示對原序列{()}中第-+1到第個數(shù)據(jù)進(jìn)行平均,獲得濾波后序列{()}的第個數(shù)據(jù)。
FIR(Finite Impulse Response)濾波器是數(shù)字信號處理領(lǐng)域最廣為使用的一種濾波處理方式,在圖像處理、通信等領(lǐng)域都有著較為廣泛的應(yīng)用。
如果想設(shè)計FIR數(shù)字濾波器對數(shù)據(jù)進(jìn)行濾波,窗函數(shù)法是最為簡單的一種方法,本文選擇利用Hamming窗設(shè)計FIR數(shù)字濾波器。
Hamming窗可按照式(16)進(jìn)行計算
(16)
其中,()為Hamming窗的窗函數(shù)的單位脈沖響應(yīng);為窗函數(shù)的長度。
完成對測量數(shù)據(jù)的濾波處理后,可以在一定程度上減小數(shù)據(jù)的噪聲。然而,測量值中可能會存在磁異常數(shù)據(jù),如果這些數(shù)據(jù)參與了磁力計的標(biāo)定,無疑會干擾最終的標(biāo)定結(jié)果。因此,在選擇標(biāo)定數(shù)據(jù)前必須要剔除磁異常數(shù)據(jù)。
在小區(qū)域內(nèi),磁偏角基本不變,所以磁航向角的變化幅度應(yīng)該和航向角的變化幅度相同。因此,可以利用式(17)對數(shù)據(jù)是否存在磁異常進(jìn)行判斷
Δ=|(+1-+1)-(-)|
(17)
其中,、+1分別為第時刻和第+1時刻的航向角;、+1分別為第時刻和第+1時刻按照式(7)計算得出的磁航向角。當(dāng)然,上述判定方法較為簡單,可以根據(jù)實際情況進(jìn)行進(jìn)一步優(yōu)化。
可以根據(jù)標(biāo)定區(qū)域的實際情況設(shè)置閾值,若Δ<,則說明不存在磁異常,滿足理論情況;若Δ≥,說明數(shù)據(jù)存在磁異常,需舍棄。
另外,剔除磁異常數(shù)據(jù)之后,由式(14)可知,為使式(13)有解,挑選的標(biāo)定數(shù)據(jù)必須要保證矩陣滿秩。
為驗證標(biāo)定方法的可行性,對北京市某條公路的地磁場進(jìn)行測量,并利用相關(guān)儀器測量載體的航向角、俯仰角和滾轉(zhuǎn)角數(shù)據(jù)。其中標(biāo)定的磁偏角選擇北京的平均磁偏角5°50′W。
實驗數(shù)據(jù)經(jīng)過中值-均值濾波和FIR數(shù)字濾波器濾波后,效果如圖1~圖3所示。其中,藍(lán)線為濾波前磁力計、、軸的測量值,紅線為濾波后磁力計、、軸的測量值。
圖1 濾波前后X軸測量數(shù)據(jù)Fig.1 X-axis measurement data before and after filtering
圖2 濾波前后Y軸測量數(shù)據(jù)Fig.2 Y-axis measurement data before and after filtering
圖3 濾波前后Z軸測量數(shù)據(jù)Fig.3 Z-axis measurement data before and after filtering
觀察圖1~圖3可以發(fā)現(xiàn),濾波完成后,磁力計測量值的噪聲得到了有效抑制,有效減小了標(biāo)定磁力計的過程中噪聲對參數(shù)估計的影響。
完成濾波后,按照式(12)對三軸磁力計進(jìn)行標(biāo)定,標(biāo)定前后計算得出的磁航向角如圖4所示。其中,藍(lán)線為標(biāo)定完成后磁航向角的計算值,紅線為利用航向角和磁偏角計算出的磁航向角的理論值,黃線為標(biāo)定前磁航向角的計算值。
圖4 磁航向角的理論值及標(biāo)定前后磁航向角的計算值Fig.4 Theoretical value of magnetic heading angle and the calculated value of magnetic heading angle before and after calibration
對標(biāo)定前后磁航向角與理論值(理論值=航向角-磁偏角)之間的誤差進(jìn)行統(tǒng)計,結(jié)果如表1所示。
表1 標(biāo)定前后磁航向角計算誤差的均值和方差
通過觀察圖4和表1,可以得出結(jié)論:標(biāo)定后,磁航向角的計算準(zhǔn)確度相對于標(biāo)定前有了較大的提升。
相比于工程中常用的繞圈標(biāo)定,本文提出的方法可以在測量過程中隨時進(jìn)行再標(biāo)定,無需更改車輛的行駛軌跡,靈活性較高,更適應(yīng)地磁環(huán)境復(fù)雜的測量現(xiàn)場。
如果能獲得各個地點準(zhǔn)確的磁偏角數(shù)值,取代現(xiàn)在采用的北京市平均磁偏角,理論上可以使標(biāo)定精度進(jìn)一步提升。
本文提出了一種基于航向匹配的磁力計外場無依托標(biāo)定算法,利用航向角是磁航向角與磁偏角的代數(shù)和的原理,采用磁力計和姿態(tài)角的測量數(shù)據(jù),對磁力計的三軸零偏進(jìn)行標(biāo)定。
1)實驗結(jié)果表明,標(biāo)定后計算出的磁航向角明顯更符合理論情況,相比于標(biāo)定前,磁航向角誤差的均值和方差均有了較大程度的降低,說明該算法可以實現(xiàn)對磁力計的有效標(biāo)定。
2)相較于引言中提及的標(biāo)定方法,首先,基于航向匹配的磁力計外場無依托標(biāo)定算法不需要水平轉(zhuǎn)臺、無磁轉(zhuǎn)臺等精密儀器;其次,算法的標(biāo)定模型較為簡單,計算量小,數(shù)據(jù)采集方便,且支持在數(shù)據(jù)測量過程中進(jìn)行動態(tài)標(biāo)定。
3)本文提出的在線標(biāo)定算法可以標(biāo)定磁力計的偏置誤差,適用于對標(biāo)定精度要求較低的場合,或是為其他精確算法提供可靠初值。
4)標(biāo)定完成的磁力計可以用于地磁匹配導(dǎo)航。在GPS失效的情況下,慣性導(dǎo)航會出現(xiàn)誤差的累積,地磁匹配導(dǎo)航可以有效輔助修正其誤差。此外,相較于地圖匹配導(dǎo)航或者航跡推算系統(tǒng),地磁匹配導(dǎo)航能夠更好地處理長直路段定位問題,只要當(dāng)?shù)卮嬖诿黠@的地磁特征,地磁匹配導(dǎo)航就可以有效地進(jìn)行定位,進(jìn)而修正慣性導(dǎo)航的誤差。本文所提方法可以在標(biāo)定磁力計的過程中,濾除測量數(shù)據(jù)中噪聲的干擾,并且識別出地磁異常數(shù)據(jù),獲得的磁異常數(shù)據(jù)可以為長直路段的地磁匹配導(dǎo)航提供基礎(chǔ)信息。