專利名稱:一種兩維電子指南針校準算法的制作方法
技術領域:
本發(fā)明涉及一種兩維電子指南針校準算法。
背景技術:
目前,業(yè)界對于兩維電子指南針的應用很少,特別是在移動電話設備領域。通常使用的兩維電子指南針的算法,在做地磁校準時,需要用戶讓設備旋轉超過 兩圈(兩圈半左右)。其中先旋轉半圈左右建立臨時坐標系,用于監(jiān)測旋轉動作;其次轉第 一圈采集數(shù)據(jù)的最大值/最小值,進而求出幾何中心;最后轉第二圈求各個點到幾何中心 的距離,進而得出磁傳感器正交軸的靈敏度誤差。上述校準算法具有以下缺陷1.校準過程較為復雜,需要沿著順時針或逆時針一個方向水平旋轉設備近三圈, 并且無法屏蔽設備順時針/逆時針交替較快旋轉所造成的監(jiān)測誤差;2.校準算法只關注幾何中心以及各采樣點到幾何中心的距離,無法實現(xiàn)圖形層面 的最優(yōu)匹配;3.對一般磁傳感器各軸上的靈敏度誤差補償精度較低,并且無法修正一般磁傳感 器各軸非正交造成的誤差;4.只能手動啟動校準,無法實現(xiàn)自動校準;5.使用磁傳感器獲得的原始數(shù)據(jù)而非真正的磁物理量數(shù)據(jù)進行計算,無法較好地 兼容不同類型的磁傳感器?;谝陨先毕荩瑯I(yè)界確有必要開發(fā)一種新的兩維電子指南針校準算法。
發(fā)明內容
本發(fā)明所要解決的技術問題是,現(xiàn)有電子指南針的地磁校準算法,不僅校準過程 較為復雜、無法實現(xiàn)圖形層面的最優(yōu)匹配、無法對一般磁傳感器各軸上的靈敏度誤差進行 精確補償、無法修正一般磁傳感器各軸非正交造成的誤差、無法實現(xiàn)自動校準,而且不能較 好地兼容不同類型的磁傳感器。為解決上述技術問題,本發(fā)明提供一種兩維電子指南針校準算法,其包括有以下步驟。建立一個特殊的橢圓單位圓,其圓點位于指南針的磁傳感器坐標系原點,半徑為 1。持續(xù)獲取磁傳感器采集到的物理量級別磁數(shù)據(jù),更新磁物理量數(shù)據(jù)的最大值/最小值, 并將新采集到的數(shù)據(jù)帶入第一橢圓方程,計算出其平方的數(shù)值,并與預設的閥值做比較,如 果數(shù)據(jù)超出閥值,則計算橢圓參數(shù)。采集磁傳感器數(shù)據(jù),獲得當前周圍磁場磁感強度的最大 值/最小值坐標并保存。利用已采集到的磁物理量數(shù)據(jù)的最大值/最小值動態(tài)計算橢圓的 幾何中心。將橢圓幾何中心以及兩次不同采樣點帶入第二橢圓方程,計算出第二橢圓方程 的長半軸/短半軸參數(shù),進而計算出因磁傳感器自身誤差造成的靈敏度誤差和非正交度并 補償。將計算結果保存到校準參數(shù)存儲空間中。
進一步的,在不同實施方式中,其中涉及使用的第一橢圓方程為F(x,y)= b2*x2+a2*y2_a2*b2。進一步的,在不同實施方式中,其中在獲取磁傳感器采集到的物理量級別磁數(shù)據(jù) 時,對采集到的數(shù)據(jù)進行數(shù)據(jù)處理,并將數(shù)據(jù)投影到嵌入式處理器能夠容納的數(shù)值范圍內。
進一步的,在不同實施方式中,其中對磁傳感器采集到的數(shù)據(jù)涉及使用的數(shù)據(jù)處 理公式為A = A* (Rmax-Rmin) / (Amax-Amin)其中A表示待映射的數(shù)據(jù),Rmax/Rmin表示映射后的數(shù)據(jù)最大值和最小值,KJKm 表示待映射的數(shù)據(jù)最大值和最小值。進一步的,在不同實施方式中,其中其為當連續(xù)若干數(shù)據(jù)都超出閥值時,計算橢圓 參數(shù)。這是因為,當連續(xù)若干數(shù)據(jù)都超出閥值時,則說明當前參數(shù)構成的橢圓圖形與已有采 樣點軌跡所構成的圖形在圖形層面不匹配,需要進入計算橢圓參數(shù)的過程,也就是進行后 續(xù)步驟;否則,則說明目前圖形匹配較好,不需進行后續(xù)步驟,下次采樣時再繼續(xù)執(zhí)行采樣 值與預設閥值的比較步驟。進一步的,在不同實施方式中,其中動態(tài)計算橢圓的幾何中心的方式為取磁物 理量數(shù)據(jù)最大值/最小值采樣點線段的中點作為采樣點軌跡的幾何中心,并建立新的坐標系。進一步的,在不同實施方式中,其中建立新坐標系涉及使用的公式為Xoriginal = (Xmax+Xmin)/2Yoriginal = (Ymax+Ymin)/2其中X。Hginal、Yoriginal表示新建立的坐標系原點在原坐標系中的坐標,Xmax/Ymax表 示X/Y兩維坐標數(shù)值的最大值,Xmin/Ymin表示X/Y兩維坐標數(shù)值的最小值。進一步的,在不同實施方式中,其中涉及使用的第二橢圓方程為標準橢圓方程X2/ a2+y2/b2 = 1。計算方式為x02/a2+y02/b2 = 1X1Va^y1Vb2 = 1a2 = (y>x02-y02*xi2) / (Yi2-Y02)b2 = (a2*Yl2)/(a2-Xl2)相對于現(xiàn)有技術,本發(fā)明采用基于最小二乘法的橢圓擬合來實現(xiàn)兩維電子指南針 的校準算法,其具有以下優(yōu)點1.解決了傳統(tǒng)的兩維指南針只能手動校準的局限以及校準過程需要用戶較為復 雜的操作的問題只能在水平面上沿著順時針或逆時針一個方向旋轉將近三圈,并且無法 屏蔽設備順時針/逆時針交替較快旋轉所造成的監(jiān)測誤差。本發(fā)明涉及的校準算法理論上 只需要水平隨意旋轉設備達到一周即可,而實際的測試表明通常只需要水平旋轉設備200 度左右就可以計算出最終校準結果了。2.校準結果的精確度比傳統(tǒng)的兩維指南針校準結果有較大提高,由于采用了橢圓 擬合的方法,實現(xiàn)了動態(tài)逼近的數(shù)學逼近法,校準結果所組成的數(shù)學圖形與真實磁傳感器 采樣軌跡最接近,即以圖形最優(yōu)匹配為最高目標,真實軌跡與數(shù)學擬合結果的圖形誤差最 大不超過1%。
3.高準確度自動補償磁傳感器誤差。相比傳統(tǒng)的兩維指南針簡單使用坐標最值估 算采樣軌跡的幾何中心而忽略實際軌跡圖形的方法,本發(fā)明涉及的算法更關注于幾何圖形 級別的最優(yōu)匹配,不僅僅可以更準確計算出一般磁傳感器各個感應陣列的靈敏度誤差,還 可以計算出一般磁傳感器各感應陣列的非正交度并修正,最終實現(xiàn)比傳統(tǒng)的兩維指南針更 高準確度的誤差補償。4.本校準算法不但可以手動校準,還可以進行自動校準。5.相比傳統(tǒng)的兩維指南針校準算法使用磁傳感器的原始轉換數(shù)據(jù),本發(fā)明涉及的 算法使用磁傳感器轉換的真正的磁物理量數(shù)據(jù),更好的兼容了不同的磁傳感器,方便算法 的整機移植。
具體實施例方式本發(fā)明涉及的兩維電子指南針校準算法,是基于最小二乘法的橢圓擬合方法來實 現(xiàn)兩維電子指南針新式的、數(shù)學層面的、簡便的校準的算法,用戶只需在水平面讓設備劃一 個“8”的軌跡或者水平旋轉一圈即可。且在計算過程中,使用數(shù)值映射方法,將采集到的數(shù) 據(jù)投影到嵌入式處理器的數(shù)據(jù)長度能夠容納的范圍之內進行計算。由于磁傳感器自身的裝配誤差和靈敏度誤差、以及設備硬磁干擾等因素的存在, 使兩維磁傳感器在水平面采集到的數(shù)據(jù)形成的軌跡近似為一個幾何中心偏離磁傳感器坐 標系原點一定數(shù)值的橢圓,因此,求出最接近該軌跡的橢圓即可實現(xiàn)精確指向。本發(fā)明涉及的兩維指南針校準算法,首先是建立一個特殊的橢圓單位圓,其圓 點位于磁傳感器坐標系原點,半徑為1 ;持續(xù)獲取磁傳感器采集到的物理量級別磁數(shù)據(jù),更 新磁物理量數(shù)據(jù)的最大值/最小值,并利用磁物理量數(shù)據(jù)的最大值/最小值動態(tài)計算橢圓 的幾何中心;將橢圓幾何中心以及兩次不同采樣點帶入橢圓標準方程,計算出橢圓方程的 長半軸/短半軸參數(shù),進而計算出因磁傳感器自身誤差造成的靈敏度誤差和非正交度并補 償。將新采集到的數(shù)據(jù)帶入更新參數(shù)后的橢圓方程F(x,y),計算出其平方的數(shù)值F2(x,y), 并與預設的閥值做比較,如果連續(xù)若干數(shù)據(jù)都超出閥值,則說明當前參數(shù)構成的橢圓圖形 與已有采樣點軌跡所構成的圖形在圖形層面不匹配,需要重復上面計算橢圓參數(shù)的過程。 否則,說明目前圖形匹配較好,繼續(xù)計算新的磁物理量數(shù)據(jù)采樣。
具體實施方式
包括有以下步驟1.建立一個特殊的橢圓——單位圓,圓心位于磁傳感器X/Y坐標系原點,半徑為
Io2.采集磁傳感器數(shù)據(jù),獲得當前周圍磁場磁感強度的最大值/最小值坐標并保 存;同時對數(shù)據(jù)進行數(shù)值映射,將數(shù)據(jù)投影到嵌入式處理器能夠容納的數(shù)值范圍內;其中 涉及使用的公式為<formula>formula see original document page 0</formula>
其中A表示待映射的數(shù)據(jù),Rmax/Rmin表示映射后的數(shù)據(jù)最大值和最小值,KJKm 表示待映射的數(shù)據(jù)最大值和最小值。3.判斷該采樣點對當前橢圓的質量分數(shù),如果超過預設的閥值,則進入步驟4 ;否 則計算指針指向后推出,下次采樣仍然進入步驟2 ;其中涉及使用的公式為<formula>formula see original document page 0</formula>
4.取最大值/最小值采樣點線段的中點作為采樣點軌跡的幾何中心并建立坐標 系;Xoriginal = (Xmax+Xmin)/2 _8] Yoriginal = (Ymax+Ymin)/2其中X。Hginal、Yoriginal表示新建立的坐標系原點在原坐標系中的坐標,Xmax/Ymax表 示X/Y兩軸坐標數(shù)值的最大值,xmin/Ymin表示X/Y兩軸坐標數(shù)值的最小值。5.通過兩組采樣數(shù)據(jù)求出最接近當前已有采樣點軌跡的橢圓,并將計算結果反映射回到原有的數(shù)值范圍;其采用橢圓標準方程公式X2/a2+y7b2 = 1進行計算x02/a2+y02/b2 = 1X1Va^y1Vb2 = 1a2 = (y>x02-y02*xi2) / (Yi2-Y02)b2 = (a2*yi2)/(a2-Xl2)6.返回步驟2繼續(xù)執(zhí)行。本發(fā)明涉及的校準算法的流程如上述步驟1 6所述,當用戶將設備在水平面扭 動出一個“ 8 ”字之后(或水平旋轉超過半圈即可),根據(jù)本發(fā)明涉及的校準算法計算出的橢 圓已經(jīng)基本最接近已有的采樣點軌跡和未采集到的數(shù)據(jù)點所組成的軌跡了,此時設備即可 實現(xiàn)精確指向。本發(fā)明采用新的校準原理,大大簡化了校準過程,并且更關注于校準結果所構成 的幾何圖形與采樣點軌跡圖形,在圖形層面的匹配,實現(xiàn)最優(yōu)匹配。如此還可以高準確度的 計算出一般磁傳感器的各軸靈敏度誤差以及各軸的非正交度誤差,并高精度的補償。同時 完全實時自動校準,也可以配合手動校準。另外,使用磁物理量數(shù)據(jù)進行計算,方便磁傳感 器更新替換。以上所述僅為本發(fā)明的較佳實施方式,本發(fā)明的保護范圍并不以上述實施方式為 限,但凡本領域普通技術人員根據(jù)本發(fā)明揭示內容所作的等效修飾或變化,皆應納入權利 要求書中記載的保護范圍內。
權利要求
一種兩維指南針校準算法,其特征在于包括有以下步驟建立一個特殊的橢圓單位圓,其圓點位于指南針的磁傳感器坐標系原點,半徑為1;持續(xù)獲取磁傳感器采集到的物理量級別磁數(shù)據(jù),更新磁物理量數(shù)據(jù)的最大值/最小值,并將新采集到的數(shù)據(jù)帶入第一橢圓方程,計算出其平方的數(shù)值,并與預設的閥值做比較,如果數(shù)據(jù)超出閥值,則進入到計算橢圓參數(shù)的步驟;采集磁傳感器數(shù)據(jù),獲得當前周圍磁場磁感強度的最大值/最小值坐標并保存,利用已采集到的磁物理量數(shù)據(jù)的最大值/最小值動態(tài)計算橢圓的幾何中心;將橢圓幾何中心以及兩次不同采樣點帶入第二橢圓方程,計算出第二橢圓方程的長半軸/短半軸參數(shù),進而計算出因磁傳感器自身誤差造成的靈敏度誤差和非正交度并補償;將計算結果保存到校準參數(shù)存儲空間中。
2.根據(jù)權利要求1所述的兩維指南針校準算法,其特征在于其中涉及使用的第一橢 圓方程為 F(x,y) = b2*X2+a2*y2-a2*b2。
3.根據(jù)權利要求1所述的兩維指南針校準算法,其特征在于其中在獲取磁傳感器采 集到的物理量級別磁數(shù)據(jù)時,對采集到的數(shù)據(jù)進行數(shù)據(jù)處理,并將數(shù)據(jù)投影到嵌入式處理 器能夠容納的數(shù)值范圍內。
4.根據(jù)權利要求3所述的兩維指南針校準算法,其特征在于其中對磁傳感器采集到 的數(shù)據(jù)涉及使用的數(shù)據(jù)處理公式為A = A* (Rmax-Rmin) / (Amax-Amin)其中A表示待映射的數(shù)據(jù),Rmax/Rmin表示映射后的數(shù)據(jù)最大值和最小值,Amax/Amin表示 待映射的數(shù)據(jù)最大值和最小值。
5.根據(jù)權利要求1所述的兩維指南針校準算法,其特征在于其中其為當連續(xù)若干數(shù) 據(jù)都超出閥值時,則進入到計算橢圓參數(shù)的步驟。
6.根據(jù)權利要求1所述的兩維指南針校準算法,其特征在于其中動態(tài)計算橢圓的幾 何中心的方式為取磁物理量數(shù)據(jù)最大值/最小值采樣點線段的中點作為采樣點軌跡的幾 何中心,并建立新的坐標系。
7.根據(jù)權利要求6所述的兩維指南針校準算法,其特征在于其中建立新坐標系涉及 使用的公式為<formula>formula see original document page 2</formula>其中X iginal、Yoriginal表示新建立的坐標系原點在原坐標系中的坐標,表示X/ Y兩維坐標數(shù)值的最大值,Xmin/Ymin表示X/Y兩維坐標數(shù)值的最小值。
8.根據(jù)權利要求1所述的兩維指南針校準算法,其特征在于其中涉及使用的第二橢 圓方程為標準橢圓方程x2/a2+y2/b2 = 1,計算方式為<formula>formula see original document page 2</formula>
全文摘要
本發(fā)明公開了一種兩維指南針校準算法,其包括有以下步驟。首先是建立一個特殊的橢圓-單位圓。持續(xù)獲取磁傳感器采集到的物理量級別磁數(shù)據(jù),更新磁物理量數(shù)據(jù)的最大值/最小值,并利用磁物理量數(shù)據(jù)的最大值/最小值動態(tài)計算橢圓的幾何中心。將橢圓幾何中心以及兩次不同采樣點帶入橢圓標準方程,計算出橢圓方程的長半軸/短半軸參數(shù),進而計算出因磁傳感器自身誤差造成的靈敏度誤差和非正交度并補償。本發(fā)明涉及的兩維指南針校準算法,基于最小二乘法的橢圓擬合方法,實現(xiàn)了兩維指南針新式的、數(shù)學層面的、簡便的校準。
文檔編號G01C17/38GK101806595SQ201010150238
公開日2010年8月18日 申請日期2010年4月19日 優(yōu)先權日2010年4月19日
發(fā)明者司學琴, 周宏繼, 曹海軍, 榮毅, 趙華東 申請人:美新半導體(無錫)有限公司