三軸磁阻電子羅盤的設(shè)計(jì)和誤差補(bǔ)償
摘要:設(shè)計(jì)了一款具有傾斜補(bǔ)償功能的三軸磁阻電子羅盤,并對(duì)樣機(jī)系統(tǒng)做了誤差補(bǔ)償。本系統(tǒng)以磁阻傳感器HMC1043和MEMS加速度傳感器ADXL203為信號(hào)采集模塊,以MSP430F149單片機(jī)為信號(hào)處理模塊,分別獲取、處理磁場(chǎng)和重力加速度信息,井通過液晶顯示模塊LCM6432ZK顯示載體的航向角和姿態(tài)角。結(jié)合經(jīng)典的橢A假設(shè)法和傅里葉級(jí)數(shù)模型,對(duì)系統(tǒng)的誤差進(jìn)行補(bǔ)償。實(shí)驗(yàn)結(jié)果表明,設(shè)計(jì)的磁阻電子羅盤實(shí)現(xiàn)了集成化和智能化,能實(shí)時(shí)顯示載體的航向角和姿態(tài)角,航向誤差可穩(wěn)定在±0.6°以內(nèi)。
本文引用地址:http://cafeforensic.com/article/201610/309008.htm引言
電子羅盤是利用地磁場(chǎng)來實(shí)現(xiàn)定向功能的裝置,已廣泛應(yīng)用于各種導(dǎo)航定位系統(tǒng)。單片機(jī)技術(shù)的廣泛應(yīng)用,結(jié)合利用先進(jìn)加工工藝生產(chǎn)的磁阻傳感器,為導(dǎo)航系統(tǒng)的數(shù)字化提供了有利的幫助,是未來電子羅盤的發(fā)展方向。因自身的誤差及環(huán)境磁場(chǎng)的影響,電子羅盤的航向測(cè)量精度不高。參考文獻(xiàn)提出的24位置最小二乘羅差補(bǔ)償法雖然精度高,但不能自動(dòng)補(bǔ)償;參考文獻(xiàn)的最佳橢圓假設(shè)補(bǔ)償法誤差可達(dá)到±1°。本文基于磁阻傳感器HMC1043和MEMS加速度傳感器ADXL203研制了一款電子羅盤樣機(jī),經(jīng)過數(shù)據(jù)預(yù)處理和算法補(bǔ)償后的羅盤系統(tǒng)航向角精度可以穩(wěn)定在±0.6°以內(nèi),該羅盤結(jié)構(gòu)簡(jiǎn)單,體積小,重量輕,有較好的應(yīng)用前景。
1 系統(tǒng)結(jié)構(gòu)及硬件組成
本文研制的電子羅盤框圖如圖1所示。
該系統(tǒng)基于磁阻效應(yīng),根據(jù)磁場(chǎng)大小確定方向,三軸磁阻傳感器HMC1043感測(cè)載體坐標(biāo)系下地球磁場(chǎng)X、Y、Z軸的分量Ux1、Uy1、Uz1。ME MS加速度計(jì)ADXL203通過感知地球重力加速度在其測(cè)量軸上的分量大小而確定俯仰角φ和翻滾角θ,根據(jù)理論公式——式(1)可求得折算到地平坐標(biāo)系中相同航向下地磁場(chǎng)在X軸和Y軸的分量Hx和Hy,則航向角φ可根據(jù)式(2)求得。
磁阻傳感器輸出信號(hào)采用高精度儀器放大器AD623進(jìn)行放大;由芯片IRF7509及其外圍電路將控制器產(chǎn)生的矩形脈沖轉(zhuǎn)換成大電流脈沖,使磁阻傳感器置位/復(fù)位,以消除磁阻傳感器的偏置和放大器的失調(diào)及漂移;主控制器采用德州儀器公司的超低功耗的16位單片機(jī)MSP430 F149,信號(hào)經(jīng)主控制器處理后送LCD顯示航向角和姿態(tài)角,亦可實(shí)現(xiàn)D/A轉(zhuǎn)換和串口輸出。
2 電子羅盤誤差補(bǔ)償
電子羅盤利用地球磁場(chǎng)確定載體的航向,而地球磁場(chǎng)強(qiáng)度僅有0.5~0.6 gauss,極易受到外界磁場(chǎng)環(huán)境的影響,又由于傳感器本身在制造、安裝過程中不可避免地會(huì)存在一些誤差,磁阻電子羅盤的誤差不可避免,從而影響到精度。有資料表明:當(dāng)車輛沿一座鋼鐵橋梁直行時(shí),角速率陀螺指示的航向變化很小,而電子羅盤指示的航向變化幅度超過100°。修正這些誤差僅僅通過硬件措施不能很好地解決,還必須借助有效的軟件補(bǔ)償方法才能完成。
本文軟件方面采用中值濾波算法對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,從而保證A/D采樣的穩(wěn)定性;根據(jù)經(jīng)典橢圓假設(shè)理論,將橢圓中心移至原點(diǎn),將Y軸作為基準(zhǔn)對(duì)X軸進(jìn)行校正,在此基礎(chǔ)上再對(duì)羅差構(gòu)造數(shù)學(xué)模型,采用最小二乘法求取羅差補(bǔ)償系數(shù)對(duì)羅差進(jìn)行補(bǔ)償。
2.1 原點(diǎn)校正原理
根據(jù)Michel Moulin等人提出的橢圓假設(shè),在用于地面車輛時(shí),羅盤系統(tǒng)的誤差形成過程可認(rèn)為是傳感器測(cè)出的水平面上兩個(gè)磁場(chǎng)分量的合成向量頂點(diǎn)在平面上由一個(gè)圓變成了一個(gè)橢圓的過程,其逆過程就是基于橢圓假設(shè)的誤差補(bǔ)償過程。該方法雖然易于實(shí)現(xiàn)自動(dòng)補(bǔ)償和校準(zhǔn),但是樣機(jī)用該方法實(shí)驗(yàn)測(cè)得系統(tǒng)精度僅為±2°。本文首先采用該方法將橢圓中心移至原點(diǎn),然后將Y軸作為基準(zhǔn)對(duì)X軸進(jìn)行校正,在此基礎(chǔ)上再構(gòu)建羅差模型進(jìn)行補(bǔ)償校正。
首先,將橢圓中心移到原點(diǎn)。將羅盤水平旋轉(zhuǎn)一周采樣,采樣的X、Y軸的最大、最小值分別記作Xmax、Xmin、Ymax、Ymin,可根據(jù)式(3)~(6)求得X、Y軸的輸出中點(diǎn)Xo、Yo和輸出范圍Xrang、Yrang:
根據(jù)橢圓假設(shè),可認(rèn)為橢圓是由X、Y軸靈敏度不同造成,同時(shí)根據(jù)樣機(jī)的實(shí)際運(yùn)行情況可知,Y軸的輸出范圍比X軸大,所以可將Y軸定為基準(zhǔn)1,繼而用式(9)對(duì)X軸靈敏度進(jìn)行校正。
式(8)、(9)即為經(jīng)過橢圓原點(diǎn)校正后的X、Y軸輸出。此時(shí)解算出的航向角誤差如圖2所示。
2.2 羅差校正原理
羅差是利用地球磁場(chǎng)測(cè)量航向時(shí)電子羅盤系統(tǒng)所特有的一種誤差,也是對(duì)精度影響最大的一種誤差。羅差是由磁阻傳感器周圍的鐵磁材料影響而產(chǎn)生的航向誤差,可以分為硬磁材料引起的羅差和軟磁材料引起的羅差。
根據(jù)參考文獻(xiàn)介紹的基于最小二乘24位置羅差補(bǔ)償法,可得由硬磁材料和軟磁材料引起的總羅差為:
△φ=A+Bsinφ+Ccosφ+Dsin(2φ)+Ecos(2φ) (10)
式中,A、B、C、D、E為羅差補(bǔ)償系數(shù),則消除羅差后的羅盤航向角φc為:
φc=φ-△φ (11)
根據(jù)最小二乘原理求取最小二乘解。
5項(xiàng)羅差校正公式,即式(10)實(shí)現(xiàn)了對(duì)圓周誤差、半圓誤差和象限誤差的補(bǔ)償,但傳感器不對(duì)稱誤差并未得到補(bǔ)償。經(jīng)過對(duì)誤差特性曲線的分析,是3倍角羅差項(xiàng)分量偏大所致,為提高精度,增加3倍角羅差項(xiàng),構(gòu)成7項(xiàng)羅差校正公式,即:
△φ=A+Bsinφ+Ccosφ+Dsin(2φ)+Ecos(2φ)+Fsin(3φ)+Gsin(3φ) (12)
實(shí)驗(yàn)表明,增加3倍角羅差項(xiàng)可提高精度,但效果有限,且會(huì)增加單片機(jī)系統(tǒng)負(fù)擔(dān),故最終選擇5項(xiàng)羅差校正公式進(jìn)行羅差校正。
樣機(jī)在0~360°范圍內(nèi),每隔15°對(duì)共24個(gè)實(shí)驗(yàn)點(diǎn)進(jìn)行測(cè)試,得到24組采樣數(shù)據(jù),進(jìn)行羅差修正。對(duì)基于橢圓假設(shè)原點(diǎn)修正后的X、Y軸采樣數(shù)據(jù),采用基于最小二乘24位置羅差補(bǔ)償法,樣機(jī)運(yùn)行一周得到最終航向角的誤差如圖3所示。
由圖2、3可知,經(jīng)過基于橢圓假設(shè)原點(diǎn)校正后的航向角誤差可控制在±3°以內(nèi),在此基礎(chǔ)上對(duì)校正后的X軸、Y軸采樣數(shù)據(jù),采用基于最小二乘24位置羅差補(bǔ)償法,航向角誤差可穩(wěn)定在±0.6°,可見該誤差補(bǔ)償方法效果較好,同時(shí)因該方法利用的是現(xiàn)場(chǎng)的采樣數(shù)據(jù),實(shí)時(shí)性也較好。
結(jié)語
本設(shè)計(jì)的電子羅盤樣機(jī)采用三軸磁阻傳感器HMC1043和MEMS加速度計(jì)ADXL203研制而成,系統(tǒng)成本低,體積小,功耗低。利用地球磁場(chǎng)測(cè)量航向,易受外界磁場(chǎng)干擾,結(jié)合經(jīng)典的橢圓假設(shè)法和基于最小二乘24位置羅差補(bǔ)償法,提出一種新的補(bǔ)償方法對(duì)誤差進(jìn)行修正。實(shí)驗(yàn)證明,該誤差補(bǔ)償算法在不用額外增加硬件復(fù)雜度和軟件計(jì)算量的前提下,能有效地將航向角誤差穩(wěn)定在±0.6°,補(bǔ)償效果良好,精度較高。需要指出的是,該補(bǔ)償算法的誤差補(bǔ)償結(jié)果是在水平狀態(tài)下得出的,當(dāng)俯仰角或翻滾角較大時(shí),修正后的航向角誤差會(huì)增大,如何更好地解決這一問題是今后工作的方向。
評(píng)論