TWI491902B - 方位角校正方法及其磁力感應器 - Google Patents
方位角校正方法及其磁力感應器 Download PDFInfo
- Publication number
- TWI491902B TWI491902B TW102127173A TW102127173A TWI491902B TW I491902 B TWI491902 B TW I491902B TW 102127173 A TW102127173 A TW 102127173A TW 102127173 A TW102127173 A TW 102127173A TW I491902 B TWI491902 B TW I491902B
- Authority
- TW
- Taiwan
- Prior art keywords
- data
- initial value
- magnetic
- reference point
- segment
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C17/00—Compasses; Devices for ascertaining true or magnetic north for navigation or surveying purposes
- G01C17/38—Testing, calibrating, or compensating of compasses
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R33/00—Arrangements or instruments for measuring magnetic variables
- G01R33/0023—Electronic aspects, e.g. circuits for stimulation, evaluation, control; Treating the measured signals; calibration
- G01R33/0035—Calibration of single magnetic sensors, e.g. integrated calibration
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C17/00—Compasses; Devices for ascertaining true or magnetic north for navigation or surveying purposes
- G01C17/02—Magnetic compasses
- G01C17/28—Electromagnetic compasses
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- General Physics & Mathematics (AREA)
- Condensed Matter Physics & Semiconductors (AREA)
- Measuring Magnetic Variables (AREA)
Description
本發明是有關於一種電子裝置,且特別是有關於一種電子裝置中的磁力感應器及其方位角校正方法。
隨著科技的進步,電子裝置的操控除了一般運用例如按鍵、或顯示於觸控螢幕上等操作介面的操作外,亦包括了許多根據電子裝置本身,或是外部連接的遙控裝置(例如遊戲裝置及其控制手把)的方位的及其移動狀態的判斷而產生的操作應用,例如透過搖晃電子裝置來控制電子裝置所執行的遊戲中賽車的方向等。
一般而言,目前用來量測物體的方位(orientation)的方法,可運用設置於電子裝置內的加速度感應器(Accelerometer)及磁力感應器(Compass Sensor)來取得感應的數據,透過尤拉角度(Euler Angle)或是四元數(Quaternion)公式計算後可得到目前電子裝置的姿態以及方位。另外,亦可加入同樣設置於電子裝
置內的陀螺儀(Gyroscope Sensor)所感測得到的數據來進行整合運算(Sensor Fusion)。其中,整合運算主要的運作原理在於,藉由加速度感應器所偵測到的重力加速度值的變化量來求出物體的傾斜角,再接著透過磁力感應器所偵測的磁力變化量(即為上述感應的數據)來得到水平方位角。進而,綜合上述的傾斜角和水平方位角,來得到電子裝置目前的方位及傾斜狀態。
然而,當周遭環境若有磁場干擾時,由磁力感應器所偵測的磁力變化量將造成誤差,使得估算得到的水平方位角亦有誤差值產生。因此,為了得到正確的水平方位角,在進行估測之前通常會先執行磁力校正的動作,來消除上述的磁場干擾。
在習知技術中,有多種處理方式可以用來進行上述的磁力校正,例如利用類似平面圓的特性來求得圓心,所求得的圓心即為磁力偏移基準值。而求得圓心的方法更可包括,將磁力感側器所感測到的多個數據所對應的座標取平均值來作為上述的圓心,或者利用磁力感測器所感測到的多個數據中的最大值及最小值所對應的座標取平均值,來作為上述之圓心。但上述的利用平面圓特性來進行磁力校正的方式皆過於簡單並且不精確。其原因在於,真實環境中磁力為立體空間分佈而並非平面分佈,上述利用平面圓的磁力校正方法因此造成不準確的結果外,亦容易受到環境變化的影響。因此,要如何以更簡單的方式取得為磁力偏移基準值,並且確保此磁力偏移基準值較不易受到周遭環境磁力影響而造成誤差,已為本領域急需被解決的問題。
本發明提供一種方位角校正方法及磁力感應器,以較簡易的計算方式,精準地校正磁力感應器的偏差。
本發明的方位角校正方法,適用於一磁力感應器,所述方位角校正方法包括以下步驟。首先,透過旋轉磁力感應器一預設角度以依序產生R個資料分段,其中R個資料分段分別包括多個磁力資料。然後,利用第r個資料分段中的磁力資料以及一基準點座標的一初始值執行一區段校正程序以校正磁力感應器的基準點座標。接著,以一取樣間隔為單位,擷取第r個資料分段中的磁力資料中之部份為多個整體資料,並根據整體資料執行一整體校正程序以更新基準點座標的初始值。再者,根據更新後的基準點座標的初始值,利用r+1個資料分段中的磁力資料執行區段校正程序。
本發明的磁力感應器,包括一磁力偵測單元以及一處理單元。磁力偵測單元,透過旋轉一預設角度依序產生R個資料分段,其中R個資料分段分別包括多個磁力資料。處理單元耦接磁力偵測單元。其中,處理單元根據R個資料中第r個資料分段中的磁力資料以及一基準點座標的一初始值執行一區段校正程序以校正磁力感應器的基準點座標。處理單元以一取樣間隔為單位,擷取第r個資料分段中的磁力資料中之部份為多個整體資料,並根據整體資料執行一整體校正程序以更新基準點座標的初始值,
其中r值介於1到R-1之間。以及,處理單元根據更新後的基準點座標的初始值,根據該R個資料分段中第r+1個資料分段中的磁力資料執行區段校正程序。
基於上述,本發明提供一種方位角校正方法及磁力感應器,週期性的以整體校正程序更新基準點座標的初始值,再根據更新基準點座標的初始值執行區段校正程序以更精確的校正基準點座標,也就是磁力偏移基準值。
為讓本發明的上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
S101、S103、S105、S107、S301、S303~S315‧‧‧步驟
40‧‧‧磁力感應器
410‧‧‧磁力偵測單元
420‧‧‧處理單元
MD‧‧‧磁力資料
DS‧‧‧資料分段
圖1為根據本發明一實施例所繪示的方位角校正方法的方法流程圖。
圖2A及圖2B為根據本發明一實施例所繪示磁力資料與整體資料的關係示意圖。
圖3為根據本發明一實施例所繪示方位角校正方法的方法流程圖。
圖4為根據本發明一實施例所繪示磁力感應器的功能方塊圖。
由於在真實環境之中磁力為立體空間分佈而並非平面分佈,而利用平面圓的磁力校正方法因此造成不準確的結果外,亦容易受到環境變化的影響。在本發明中,求得圓心(對應於磁力偏移基準值)的方式則擴大延伸為利用立體圓球的特性求得球心(亦對應於磁力偏移基準值)。在以下的揭示中,則皆設定欲求得的基準點(基準點座標)為一球體的球心座標。
圖1為根據本發明一實施例所繪示的方位角校正方法的方法流程圖,其中所述的方位角校正方法適用於一磁力感應器。請參照圖1,首先在步驟S101時,透過旋轉磁力感應器一預設角度以依序產生R個資料分段,其中R個資料分段分別包括多個磁力資料。一般而言,預設角度為360度,但預設角度仍可依照實際狀況進行調整。然後在步驟S103時,利用R個資料分段中第r個資料分段中的磁力資料以及基準點座標的初始值執行區段校正程序(partial calibration process)以校正磁力感應器的基準點座標。接著在步驟S105時,以取樣間隔為單位,擷取第r個資料分段中的磁力資料中之部份為整體資料,並根據整體資料執行整體校正程序(whole calibration process)以更新基準點座標的初始值。再者於步驟S107時,根據更新後的基準點座標的初始值,利用R個資料分段中第r+1個資料分段中的磁力資料執行區段校正程序。
換句話說,在本發明中,首先將基準點座標的初始值設為零,利用時間點上連續的多個磁力資料(對應於第r個資料分
段)進行區段校正程序來獲得一近似的基準點座標。接著根據時間點上具有間隔的多個磁力資料(亦即上述的整體資料,彼此相距為取樣間隔的多個磁力資料)執行整體校正程序來更新基準點座標的初始值,使得在下一次以不同的磁力資料(對應於第r+1個資料分段)執行區段校正程序時,可根據上述更新後的基準點座標的初始值來進行運算。簡單而言,基準點座標的初始值可被視為利用整體資料所得到的磁力偏差值的一近似解。而在下個階段,對第r+1個資料分段的區段校正程序的計算時則再根據上述的近似解逼近磁力偏差值的最佳解,並藉由對R個資料分段重複上述的動作,來持續輸出更新後的基準點座標。
在本發明一實施例中,區段校正程序包括將第r個資料分段中的磁力資料值帶入一最小平方擬和(least square fitting)函數中以一疊代(iterative)的方式逼近所欲求得的基準點座標。假設欲求得的基準點座標為(a
,b
,c
),而利用上述最小平方擬和函數所求得的近似的基準點座標為,近似的基準點座標為則可被表示如下式:
其中,在上式(1)中,i值介於1和n值之間,而n值
則為執行一次運算一次最小平方擬和函數所需帶入的磁力資料的數量。也就是說,在一次的區段校正程序中,將可能進行多次的最小平方擬和函數之運算。另外,為了計算方便,在本發明一實施例中,n值可被設定為2的冪次(power of 2)。若以定點(fix point)計算時,當n值被設定為2的冪次時,當n位於分母時的除法動作即可直接以移位(shifting)計算等方式進行計算。但,本發明並不限定於上述的設置方式。而(a I
,b I
,c I
)為基準點座標的初始值,在最初將設為(0,0,0),爾後再透過整體校正程序的執行而更新。
以下則將對整體校正程序的動作進行說明。如同上述,執行整體校正程序時,首先需從第r個資料分段中取出時間點上具有間隔的多個磁力資料(即整體資料)。而整體資料的數量以及取樣間隔的選擇則決定於不同磁力感應器的資料輸出速率(data output rate)。若是每一筆磁力資料皆用於整體資料之分析的話,會佔用磁力感應器中運算單元過多的預算資源。若磁力感應器的資料輸出速率較高,則可選擇以較大的取樣間隔擷取整體資料,若磁力感應器的資料輸出速率較低,則可選擇以較小的取樣間隔擷取整體資料。如此一來,便能較有效率的求得基準點座標的初始值。
圖2A及圖2B為根據本發明一實施例所繪示磁力資料與整體資料的關係示意圖。其中,圖2A及圖2B例示為針對相同的磁力資料MD(第L-7個到第L+8個磁力資料,共16個)使用不同取樣間隔的取出整體資料的情形。請參照圖2A,在圖2A中,
取樣間隔為4,因此,僅有16/4=4個磁力資料MD被擷取作為整體資料,且這4個磁力資料MD(第L-7、L-3、L+1、L+5個磁力資料MD,對應圖2A中格紋者)的間隔皆同取樣間隔為4。請接著參照圖2B,在圖2B中,取樣間隔為2,因此,16/2=8個磁力資料MD被擷取作為整體資料,且這8個磁力資料MD(第L-7、L-5、L-3、L-1、L+1、L-3、L+5、L+7個磁力資料MD,對應圖2B中網點者)的間隔皆同取樣間隔為2。對照圖2A及圖2B,如圖2A所示取樣間隔為4的設置較適用於資料輸出速率較高的磁力感應器,而圖2B所示取樣間隔為2的設置較適用於資料輸出速率較低的磁力感應器。
例如,假設磁力感應器的資料輸出速率為100赫茲(Hertz,Hz),並且選擇取樣間隔為10,意即,磁力感應器1秒鐘可以產生100個磁力資料,而以這100個磁力資料作為第r個資料分段的話,整體資料則是以間隔10個磁力資料的方式從100個磁力資料取出10個磁力資料作為整體資料。而在同一實施例中,亦可選擇調整取樣間隔為5而仍固定整體資料的數量為10的情況時,如此一來,0.5秒即可完成對整體資料的擷取。在本發明另一實施例中,取樣間隔則不為一固定值,可任意的設定,或是依循一特定演算法來設定擷取整體資料時磁力資料之間的間隔,本發明並不限定於上述設置。
在整體校正程序中,上述的被擷取的整體資料則被用以產生一初始值校正矩陣A,並且整體校正程序可透過下式求出基
準點座標的初始值(a I
,b I
,c I
):A
.p
=q
,其中
上式(2)中的M值即為整體資料的數量,而r c
則為根據上述整體校正程序後所得到的球心為初始值(a I
,b I
,c I
)之立體球的半徑。
如前述,在本發明中,基準點座標的初始值(a I
,b I
,c I
)可被視為磁力偏移基準值的一近似解。觀察上式(2)以及初始值校正矩陣A可知,藉由初始值校正矩陣A及其反矩陣相乘所得到的結果,可驗證基準點座標的初始值(a I
,b I
,c I
)是否以產生漂移。例如,假設上述擷取的整體資料彼此的關聯性很高(即,線性相關),表示此時由磁力感應器所偵測的磁力資料間差異性很小,具有磁力感應器的電子裝置目前為靜止不動,或移動幅度很小。
而在這樣的情況時,則會使得初始值校正矩陣A及其反矩陣相乘的結果不會趨近預期的單位矩陣。在實際的運算情況下,若矩陣內的向量(對應於本案中的各個整體資料)彼此之間的關聯性高,則矩陣(對應於本案中的初始值校正矩陣A)的行列式值(Determinant)則將趨近於0,使得此矩陣不具有反矩陣。在這樣的情況時,計算反矩陣的過程中,矩陣內的數值即會因為除以行列式值而造成發散,造成矩陣與反矩陣相乘後的結果之對
角線元素無法形成單位矩陣。
另一方面,若是上述擷取的整體資料彼此的關聯性很小(即線性獨立性高),表示此時由磁力感應器所偵測的磁力資料間差異性很大,具有磁力感應器的電子裝置目前正處於轉動中或是大幅度的移動。由上述的分析,則在本發明中,在進行上述整體校正程序前,即可先以下式(3)進行判斷。
其中,將初始值校正矩陣A乘以轉置矩陣的目的主要在於初始值校正矩陣A乘以轉置矩陣的結果為方陣(square matrix),才可被用以計算反矩陣。而式(3)中趨近於單位矩陣而非單純的等於單位矩陣的設置則是因應了在計算過程可能產生的量化誤差。當上式(3)不成立時,則表示整體資料彼此的關聯性很高,電子裝置目前應處於靜止狀態或是移動幅度較小的情況,則可判定不需要進行整體校正程序去更新現有的基準點座標的初始值。當上式(3)成立時,則表示整體資料彼此的關聯性很小,電子裝置目前應處於轉動或是大幅度位移的情況,則需要進一步的執行整體校正程序,來更新基準點座標的初始值。
另外,在本發明之中,亦可根據上述對於式(3)是否成立的判斷來調整取樣間隔的大小。例如,當擷取的整體資料之間彼此相關性高,則表示電子裝置目前移動幅度較小,不需快速的
更新基準點座標的初始值,因此可以增加取樣間隔的大小,使得執行上述式(3)的判斷以及整體校正程序的次數減少。反之,當擷取的整體資料之間彼此相關性小,則表示電子裝置目前移動幅度較大,則可以縮小取樣間隔,使得執行上述式(3)的判斷以及整體校正程序的次數增加,以即時的更新基準點座標的初始值,使得整體計算磁力偏差值的校正能夠更有效率。但值得注意的是,在整體資料的數量(對應為上述式(3)的M值)為固定的情況,第r個資料分段的長度則將根據取樣間隔的大小而有所調整。另一方面,M值,也就是從第r個資料分段中擷取出的整體資料亦可根據實際實施狀況調整其大小。以下則將根據針對本發明中方位角校正方法的一種實施方式進行說明。圖3為根據本發明一實施例所繪示方位角校正方法的方法流程圖。請參照圖3,首先在步驟S301時,設定方位角校正方法中的各項參數,例如資料分段的長度、取樣間隔的大小、整體資料的數量、區段校正程序中的n值等。
然後在步驟S303時,依序讀入第r個資料分段中的第i個磁力資料。其中,r值起始於1,並且1與R-1之間,而R值則為資料分段的數量;以及i值起始於1,並且介於1與I之間,而I值為每個資料分段中磁力資料的數量。值得注意的是,在本實施例中,透過轉磁力感應器一預設角度(例如360度)而產生R個資料分段及R個資料分段所分別包括的I個磁力資料,讀入第r個資料分段中的第i個磁力資料。在讀入的磁力資料尚未到達資料
分段的底端(即,i值等於I值),也就是整體資料尚未擷取完成前(步驟S304,否),根據已讀入的磁力資料(即第r個資料分段中第1個磁力資料至第i個磁力資料),以及基準點座標的初始值來執行區段校正程序(即對應於上述式(1)的計算),以校正基準點座標(步驟S305)。其中,上述的基準點座標之初始值即為利用第r-1個資料分段所執行的整體校正程序所得到的初始值。若r值為1時,初始值則設定為(0,0,0)。
若是上述的區段校正程序所得到校正後的基準點座標與上述校準點座標之間的距離超過一誤差值,或是上述的區段校正程序計算得到一發散結果時(步驟S306,是),則調整整體資料的擷取(步驟S307),回到步驟S304以重新產生基準點座標的初始值。
上述的調整整體資料的擷取可包括以下幾種情況。一為重新擷取整體資料,其中此時的整體資料可能包括部份於第r個資料分段中的磁力資料以及部份於於第r-1個資料分段中的磁力資料。例如,當第r個資料分段為第2個資料分段,包括由磁力感應器所產生的第101到第200個磁力資料,而第r-1個資料分段即為第1個資料分段,包括第1到第100個磁力資料,而當第2個資料分段讀取/產生至第150個磁力資料時(即,r=2以及i=50),而發生基準點座標距離初始值超過誤差值,或計算區段校正程序得到發散結果時,則在步驟S307中,可保留從第101到第200個磁力資料擷取到一半的整體資料(例如,整體資料的數量為10,
從第101個到第150個磁力資料中所擷取出的5個整體資料),而另一半從第1個資料分段中的第1到第100個磁力資料中擷取(例如,從第51~100個磁力資料擷取出的5個整體資料)。
另一種方式則為調整取樣間隔(例如縮小取樣間隔,從原為100個磁力資料中取10個磁力資料作為整體資料,改為取20或30個磁力資料作為整體資料),並且在重新從第1個資料分段(甚至和已讀入的第2個資料分段中的磁力資料)中擷取整體資料。上述提到的兩種實施方式亦可以組合使用,本發明並不限定於上述的實施方式。
而當區段校正程序所得到校正後的基準點座標與上述校準點座標的初始值之間的距離小於一誤差值時(步驟S306,否),則輸出由區段校正程序所校正的基準點座標(步驟S308),並且在輸出校正後的基準點座標後,設定i值等於i+1,讀入下一筆第r個資料分段中的下一個磁力資料(步驟S309)。
當整體資料擷取完成時(例如已讀入第r個資料分段中所有(即,I個)的磁力資料,或是經由步驟S307調整整體資料的擷取並重新擷取後),則根據整體資料產生初始值校正矩陣A,並且進一步的利用上述式(3)判斷初始值校正矩陣A是否具有反矩陣(步驟S310)。若是初始值校正矩陣具有反矩陣時,表示整體資料中的各磁力資料之關聯性低,則根據初始值校正矩陣A執行整體校正程序以產生新的基準點座標的初始值(步驟S311),並更新基準點座標的初始值供根據下一個資料分段(第r+1個資料分段)
於執行區段校正程序時使用(步驟S312)。在基準點座標的初始值更新後,則對下一個資料區段(第r+1個資料分段)執行區段校正程序及整體校正程序(步驟S315,設定r=r+1,對第r+1個資料分段重新執行步驟S304~S315),直到完成利用第R個資料分段執行上述步驟S304~S315(步驟S313判斷r值等於R)。
值得注意的是,由於執行區段校正程序需要n個磁力資料,所以針對第r+1個資料分段所執行的區段校正程序中,亦有部份的情況將需要第r個資料分段中的磁力資料。例如,當第r個資料分段包括由磁力感應器所產生的第101到第200個磁力資料,而第r-1個資料分段為第1到第100個磁力資料,即,設定I=100,而r=2的情況,而上述的n值為8。讀取到第101個磁力資料(也就是第r個資料分段中之第1個磁力資料)時,區段校正程序則會擷取連續的8個磁力資料,也就是第r-1個資料分段中,第93至100個磁力資料以及上述的第101個資料來進行區段校正程序,以此類推。而當r=1,第r個資料分段所包括的磁力資料為第1到第100個磁力資料時,區段校正程序可能會擷取不足n個磁力資料的情形。例如在上述同個實施例中,讀取到第5個磁力資料時,區段校正程序則直接以此5個磁力資料進行運算。
另外值得一提的是,針對第r個資料分段執行步驟S303~S315時,第r個資料分段中的磁力資料是不斷地產生,並且被依序讀入的。以上述實施例中第r個資料分段包括由磁力感應器所產生的第101到第200個磁力資料為例,若是讀入第101到第
199個磁力資料時,皆會執行步驟S305~S309(步驟S307則依S306的判斷內容決定是否執行),並且在步驟S308輸出基準點座標。而當讀入第200個磁力資料時,在步驟S304時即會判斷整體資料擷取完成(步驟S304,是)而執行整體校正程序(步驟S304~S315),並且在步驟S312時更新初始值。總結而言,在一般狀況下(也就是步驟S310的判斷不為否,步驟S306判斷不為是),針對第r個資料分段,將執行99次的區段校正程序,以及1次的整體校正程序。但是,例如步驟S306的判斷為是時,可能會因為執行步驟S307而增加了整體校正程序執行的次數。
若是利用上述式(3)判斷初始值校正矩陣A不具有反矩陣時(步驟S308,否),則表示整體資料中的各磁力資料關聯性高,具有磁力感應器的電子裝置並未進行大幅度的移動,則可將取樣間隔加大,並且不更新基準點座標的初始值(步驟S311)。值得注意的是,當資料分段的大小設定為固定時,增加取樣間隔的大小即減少了在單一資料分段中所獲得的整體資料的數量。而當整體資料的數量設定為固定時,增加取樣間隔的大小則同步加長了資料分段的長度(即I值),下一個資料分段(例如第r+1個資料分段)的起點亦向後調整。
而步驟S311中對取樣間隔的調整實為一選擇性的步驟,當初始值校正矩陣A不具有反矩陣時,可不調整取樣間隔的大小,亦不更新基準點座標的初始值,直接根據由現有的初始值對下一個資料分段(第r+1個資料分段)執行區段校正程序及整體
校正程序(步驟S315,設定r=r+1,對第r+1個資料分段重新執行步驟S303~S315)。在本發明一實施例中,則於執行步驟S314前,先對校正矩陣不具有反矩陣的一累積次數進行累計,當累積次數大於一閥值時,則執行步驟S314以調整取樣間隔的大小,(亦可能由於資料分段的設定以及整體資料的設定而同時對資料分段的長度進行調整)。
而透過重複對R個資料分段執行上述各步驟,便可完成對球心(a,b,c)的估測,並進一步的利用球心(a,b,c)的估測完成對磁力感應器的校正,磁力感應器便可更精確的計算其所設置於之電子裝置目前的水平方位角。值得注意的是,R值的大小隨著磁力感應器所產生的磁力資料而增加。也就是說,當磁力感應器被使用時,R值將不斷的增加,並且上述圖3所述的步驟S303~S315將持續的被執行(由於步驟S313判斷為否)。例如,例如電子裝置致能內部的磁力感應器用來判斷方位角或電子裝置目前的傾斜狀態等,像是使用者利用電子裝置執行需要判斷判斷方位角或電子裝置目前的傾斜狀態的遊戲或是應用程式時,則在此遊戲或是應用程式被執行的情況下,上述的步驟S303~S315將對應不斷被產生的磁力資料,而持續的被執行,以持續的根據更新後的初始值產生校正後的基準點座標。
本發明亦提供磁力感應器,適用一方位角校正方法,並且適於設置於一電子裝置上,與加速度感應器及陀螺儀等元件共同使用。圖4為根據本發明一實施例所繪示磁力感應器的功能方
塊圖。請參照圖4,磁力感應器40包括磁力偵測單元410以及處理單元420。磁力偵測單元410透過旋轉一預設角度(例如360度或其他角度)依序產生R個資料分段DS,其中R個資料分段DS分別包括多個磁力資料。處理單元420耦接磁力偵測單元410。
其中,處理單元420根據R個資料分段DS中的第r個資料分段中的磁力資料以及一基準點座標的初始值執行區段校正程序以校正磁力感應器40的基準點座標,其中r值介於1與R-1之間。處理單元420以取樣間隔為單位,擷取第r個資料分段中的磁力資料中之部份為整體資料,並根據整體資料執行整體校正程序以更新基準點座標的初始值。以及,處理單元420根據更新後的基準點座標的初始值,根據R個資料分段中第r+1個資料分段中的磁力資料執行區段校正程序。而關於磁力感應器40的詳細實施方式則可參考上述圖1~圖3所示實施例及相關的說明,在此則不贅述。
綜上所述,本發明提供一種方位角校正方法及使用此方位角校正方法的磁力感應器,可以利用區段校正程序配合整體校正程序逼近磁力偏差基準值,也就是基準點座標,球心(a,b,c)。由於整體校正程序中需要較多的乘法動作,並且根據目前磁力感應器(及其所設置於之電子裝置)目前的移動狀態,動態地調整取樣間隔,也就是調整整體校正程序的執行次數,使得運算內容被簡化卻仍然能準確的求得上述的基準點座標。由於在不同的環境下具有不同程度的磁力干擾,本發明所提供的方位角校正方法
更可連續地更新上述的基準點座標,更能因地制宜的持續更新/修正磁力偏差基準值,以達到磁力量測器對水平方位角最好的量測效果。
S101~S107‧‧‧步驟
Claims (12)
- 一種方位角校正方法,適用於一磁力感應器,所述方位角校正方法包括:透過旋轉該磁力感應器一預設角度以依序產生R個資料分段,其中該R個資料分段分別包括多個磁力資料;根據該R個資料中第r個資料分段中的該些磁力資料以及一基準點座標的一初始值執行一區段校正程序以校正該磁力感應器的該基準點座標,其中r值介於1到R-1之間;以一取樣間隔為單位,擷取該第r個資料分段中的該些磁力資料中之部份為多個整體資料,並根據該些整體資料執行一整體校正程序以更新該基準點座標的該初始值;以及根據更新後的該基準點座標的該初始值以及該R個資料中第r+1個資料分段中的該些磁力資料執行該區段校正程序。
- 如申請專利範圍第1項所述的方位角校正方法,其中根據該基準點座標的該初始值以及該R個資料中該第r+1個資料分段中的該些磁力資料執行該區段校正程序的步驟之後更包括:若根據該基準點座標的該初始值以及該第r+1個資料分段中的該些磁力資料執行該區段校正程序所得之該基準點座標與該基準點座標的該初始值的距離超過一誤差值時,重新擷取該些整體資料並根據該些整體資料執行該整體校正程序。
- 如申請專利範圍第1項所述的方位角校正方法,其中根據該基準點座標的該初始值以及該第r+1個資料分段中的該些磁力 資料執行該區段校正程序的步驟之後更包括:當根據該基準點座標的該初始值以及該第r+1個資料分段中的該些磁力資料執行該區段校正程序得到一發散結果時,不校正該基準點座標。
- 如申請專利範圍第1項所述的方位角校正方法,其中根據該些整體資料執行該整體校正程序的步驟之前,所述方位角校正方法更包括:利用該些整體資料產生一初始值校正矩陣,並且判斷該初始值校正矩陣是否具有反矩陣;當該初始值校正矩陣的反矩陣不存在時,不執行該整體校正程序並且不更新該基準點座標的該初始值;以及當該初始值校正矩陣的反矩陣存在時,根據該初始值校正矩陣執行該整體校正程序。
- 如申請專利範圍第4項所述的方位角校正方法,其中該初始值校正矩陣為A,判斷該初始值校正矩陣是否具有反矩陣的步驟包括判斷下式是否成立:
- 如申請專利範圍第4項所述的方位角校正方法,其中利用 該些整體資料產生該初始值校正矩陣,並且判斷該初始值校正矩陣是否具有反矩陣的步驟之後,所述方位角校正方法包括:累計該初始值校正矩陣的反矩陣不存在的一累積次數,當該累積次數到達一閥值時,調整該取樣間隔、該第r個資料分段的資料長度和/或該第r+1個資料分段的資料長度。
- 一種磁力感應器,包括:一磁力偵測單元,透過旋轉一預設角度依序產生R個資料分段,其中該R個資料分段分別包括多個磁力資料;一處理單元,耦接該磁力偵測單元,其中,該處理單元利用該R個資料分段中第r個資料分段中的該些磁力資料以及一基準點座標的一初始值執行一區段校正程序以校正該基準點座標,其中r值介於1與R-1之間;該處理單元以一取樣間隔為單位,擷取該第r個資料分段中的該些磁力資料中之部份為多個整體資料,並根據該些整體資料執行一整體校正程序以更新該基準點座標的該初始值;以及該處理單元根據更新後的該基準點座標的該初始值,利用該R個資料分段中第r+1個資料分段中的該些磁力資料執行該區段校正程序。
- 如申請專利範圍第7項所述的磁力感應器,其中:若根據該基準點座標的該初始值以及第r+1個資料分段中的該些磁力資料執行該區段校正程序所得之該基準點座標與該基準點座標的該初始值的距離超過一誤差值時,該處理單元重新擷取
- 該些整體資料並根據該些整體資料執行該整體校正程序。 如申請專利範圍第7項所述的磁力感應器,其中:當根據該基準點座標的該初始值以及該R個資料分段中第r+1個資料分段中的該些磁力資料執行該區段校正程序得到一發散結果時,不校正該基準點座標。
- 如申請專利範圍第7項所述的磁力感應器,其中:該處理單元利用該些整體資料產生一初始值校正矩陣,並且判斷該初始值校正矩陣是否具有反矩陣;當該初始值校正矩陣的反矩陣不存在時,該處理單元不執行該整體校正程序並且不更新該基準點座標的該初始值;以及當該初始值校正矩陣的反矩陣存在時,該處理單元根據該初始值校正矩陣執行該整體校正程序。
- 如申請專利範圍第10項所述的磁力感應器,其中:該初始值校正矩陣為A,該處理單元判斷下式是否成立:
- 如申請專利範圍第10項所述的磁力感應器,其中:該處理單元累計該初始值校正矩陣的反矩陣不存在的一累積次數,當該累積次數到達一閥值時,調整該取樣間隔和/或該第r 個資料分段與該第r+1個資料分段的一資料長度。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW102127173A TWI491902B (zh) | 2013-07-29 | 2013-07-29 | 方位角校正方法及其磁力感應器 |
US14/156,464 US9726488B2 (en) | 2013-07-29 | 2014-01-16 | Heading calibration method and compass sensor using the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW102127173A TWI491902B (zh) | 2013-07-29 | 2013-07-29 | 方位角校正方法及其磁力感應器 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201504657A TW201504657A (zh) | 2015-02-01 |
TWI491902B true TWI491902B (zh) | 2015-07-11 |
Family
ID=52391176
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW102127173A TWI491902B (zh) | 2013-07-29 | 2013-07-29 | 方位角校正方法及其磁力感應器 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9726488B2 (zh) |
TW (1) | TWI491902B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116558552B (zh) * | 2023-07-07 | 2023-10-20 | 北京小米移动软件有限公司 | 电子指南针的校准方法、校准装置、电子设备及介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200638464A (en) * | 2005-04-28 | 2006-11-01 | Taiwan Semiconductor Mfg Co Ltd | Micromirrors for micro-electro-mechanical |
TW200905166A (en) * | 2007-04-04 | 2009-02-01 | Nxp Bv | Auto-calibration of orientation sensing system |
US20090299686A1 (en) * | 2008-05-30 | 2009-12-03 | Ausustek Computer Inc | Pointing device and method for determining rotational angle of pointing device |
CN101149262B (zh) * | 2006-09-20 | 2011-02-16 | 三星电子株式会社 | 校准指南针传感器及测量方位角的方法、设备和介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6408251B1 (en) * | 1999-07-29 | 2002-06-18 | Hrl Laboratories, Llc | Calibrating a magnetic compass with an angular rate gyroscope and a global positioning system receiver |
JP4433919B2 (ja) | 2004-07-22 | 2010-03-17 | ヤマハ株式会社 | 携帯端末及び傾斜角度計算方法 |
US8577637B2 (en) * | 2009-09-28 | 2013-11-05 | Teledyne Rd Instruments, Inc. | System and method of magnetic compass calibration |
-
2013
- 2013-07-29 TW TW102127173A patent/TWI491902B/zh active
-
2014
- 2014-01-16 US US14/156,464 patent/US9726488B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200638464A (en) * | 2005-04-28 | 2006-11-01 | Taiwan Semiconductor Mfg Co Ltd | Micromirrors for micro-electro-mechanical |
CN101149262B (zh) * | 2006-09-20 | 2011-02-16 | 三星电子株式会社 | 校准指南针传感器及测量方位角的方法、设备和介质 |
TW200905166A (en) * | 2007-04-04 | 2009-02-01 | Nxp Bv | Auto-calibration of orientation sensing system |
US20090299686A1 (en) * | 2008-05-30 | 2009-12-03 | Ausustek Computer Inc | Pointing device and method for determining rotational angle of pointing device |
Also Published As
Publication number | Publication date |
---|---|
US20150032399A1 (en) | 2015-01-29 |
US9726488B2 (en) | 2017-08-08 |
TW201504657A (zh) | 2015-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6355696B2 (ja) | 方位データを改善するためのシステムおよび方法 | |
KR101485142B1 (ko) | 자체 보정 멀티-자기력계 플랫폼을 위한 시스템 및 방법 | |
JP6648515B2 (ja) | 電子機器及びその角速度取得方法、角速度取得プログラム | |
JP6105303B2 (ja) | 情報処理プログラム、情報処理装置、情報処理システム、および、姿勢算出方法 | |
US10533874B2 (en) | Inertial positioning and navigation device featuring a novel walk detection method | |
JP6592245B2 (ja) | モバイルデバイスにおけるユーザの動きの方向の推定 | |
JP2017119102A (ja) | 運動解析装置、方法及びプログラム | |
TW201428297A (zh) | 使用磁力儀及加速度儀之角速度估計 | |
TW201915510A (zh) | 在電磁位置追蹤系統中校正場變形 | |
KR20160106756A (ko) | 관성 장치, 제어 방법 및 프로그램 | |
US20150241244A1 (en) | Low-power orientation estimation | |
US20130110451A1 (en) | State estimation apparatus | |
JP6105222B2 (ja) | 情報処理プログラム、情報処理装置、情報処理システム、および、姿勢算出方法 | |
US10466054B2 (en) | Method and system for estimating relative angle between headings | |
JP5712333B2 (ja) | 物理量データ補正装置及び物理量データ補正方法 | |
TWI476733B (zh) | 運動軌跡重建方法及其裝置 | |
TWI491902B (zh) | 方位角校正方法及其磁力感應器 | |
Young et al. | Distributed estimation of linear acceleration for improved accuracy in wireless inertial motion capture | |
Qian et al. | Optical flow based step length estimation for indoor pedestrian navigation on a smartphone | |
JP2010145219A (ja) | 運動推定装置及びプログラム | |
JP5571027B2 (ja) | 自律測位に用いる重力ベクトルを補正する携帯装置、プログラム及び方法 | |
TW201416815A (zh) | 用於六軸運動姿態感測之方法及其感測系統 | |
Marshall | Magnetic field swimmer positioning | |
TWI680382B (zh) | 電子裝置及其姿態校正方法 | |
JP2020181059A5 (zh) |