本發(fā)明涉及九軸傳感器領域,尤其涉及一種九軸傳感器性能檢測方法及裝置。
背景技術:
九軸傳感器包括用于檢測角速度的三軸陀螺儀、用于檢測加速度的三軸加速度傳感器和用于檢測地磁感應的三軸地磁傳感器,每個設備上的三個軸都分別相互垂直。九軸傳感器常用于人或物體姿態(tài)的檢測,應用場景非常廣泛,例如在VR(Virtual Reality,虛擬現(xiàn)實)中獲取用戶的姿態(tài),在航天領域中獲取飛行設備的姿態(tài)等等。九軸傳感器最重要的性能就是姿態(tài)的測量精度,如何檢測九軸傳感器的姿態(tài)測量精度是目前需要解決的技術問題。
技術實現(xiàn)要素:
為了解決現(xiàn)有技術中存在的技術問題,本發(fā)明提供了一種九軸傳感器性能檢測方法及裝置,實現(xiàn)對九軸傳感器姿態(tài)測量精確度的檢測。
本發(fā)明提供了一種九軸傳感器的性能檢測方法,所述方法包括:
將目標對象從原始姿態(tài)變換為預設姿態(tài),并獲取理想姿態(tài)變換數(shù)據(jù),所述理想姿態(tài)變換數(shù)據(jù)對應的坐標系為世界坐標系;
獲取根據(jù)安裝在所述目標對象上的九軸傳感器得到實際姿態(tài)變換數(shù)據(jù),所述實際姿態(tài)變換數(shù)據(jù)對應的坐標系為機體坐標系,所述九軸傳感器包括三軸陀螺儀、三軸加速度傳感器和三軸地磁傳感器;
將所述實際姿態(tài)變換數(shù)據(jù)從機體坐標系投射到所述世界坐標系,并計算所述理想姿態(tài)變換數(shù)據(jù)與所述投射后的實際姿態(tài)變換數(shù)據(jù)之間的差值,實現(xiàn)對所述九軸傳感器的性能檢測。
優(yōu)選的,所述將所述實際姿態(tài)變換數(shù)據(jù)從機體坐標系投射到所述世界坐標系包括:
獲取安裝在所述目標對象的九軸傳感器分別輸出的實際傳感器數(shù)據(jù);
將所述九軸傳感器分別輸出的實際傳感器數(shù)據(jù)融合為四元數(shù),所述四元數(shù)表達所述目標對象在所述世界坐標系中從原始姿態(tài)變換為預設姿態(tài)的姿態(tài)變換。
優(yōu)選的,所述獲取理想姿態(tài)變換數(shù)據(jù),所述理想姿態(tài)變換數(shù)據(jù)對應的坐標系為世界坐標系包括:
獲取所述目標對象在預設平面內的理想旋轉角度,所述預設平面對應的坐標系為所述世界坐標系;
所述將所述實際姿態(tài)變換數(shù)據(jù)從機體坐標系映射到所述世界坐標系還包括:
將所述四元數(shù)轉換為歐拉角,并將所述歐拉角投射到所述世界坐標系中的所述預設平面,得到實際旋轉角度;
所述得到所述理想姿態(tài)變換數(shù)據(jù)與所述投射后的實際姿態(tài)變換數(shù)據(jù)之間的差值包括:
計算所述實際旋轉角度與所述理想旋轉角度之間的差值。
本發(fā)明實施例還提供了一種九軸傳感器的性能檢測裝置,所述裝置包括:姿態(tài)變換單元、實際數(shù)據(jù)獲取單元、投射單元和計算單元;
其中,所述姿態(tài)變換單元,用于將目標對象從原始姿態(tài)變換為預設姿態(tài),并獲取理想姿態(tài)變換數(shù)據(jù),所述理想姿態(tài)變換數(shù)據(jù)對應的坐標系為世界坐標系;
所述實際數(shù)據(jù)獲取單元,用于獲取根據(jù)安裝在所述目標對象上的九軸傳感器得到實際姿態(tài)變換數(shù)據(jù),所述實際姿態(tài)變換數(shù)據(jù)對應的坐標系為機體坐標系,所述九軸傳感器包括三軸陀螺儀、三軸加速度傳感器和三軸地磁傳感器;
所述投射單元,用于將所述實際姿態(tài)變換數(shù)據(jù)從機體坐標系投射到所述世界坐標系;
所述計算單元,用于計算所述理想姿態(tài)變換數(shù)據(jù)與所述投射后的實際姿態(tài)變換數(shù)據(jù)之間的差值,實現(xiàn)對所述九軸傳感器的性能檢測。
優(yōu)選的,所述投射單元,具體用于:
獲取安裝在所述目標對象的九軸傳感器分別輸出的實際傳感器數(shù)據(jù);將所述九軸傳感器分別輸出的實際傳感器數(shù)據(jù)融合為四元數(shù),所述四元數(shù)表達所述目標對象在所述世界坐標系中從原始姿態(tài)變換為預設姿態(tài)的姿態(tài)變換。
優(yōu)選的,所述姿態(tài)變換單元,具體用于:
將目標對象從原始姿態(tài)變換為預設姿態(tài),并獲取所述目標對象在預設平面內的理想旋轉角度,所述預設平面對應的坐標系為所述世界坐標系;
所述投射單元,還具體用于:
將所述四元數(shù)轉換為歐拉角,并將所述歐拉角投射到所述世界坐標系中的所述預設平面,得到實際旋轉角度;
所述計算單元,具體用于:
計算所述實際旋轉角度與所述理想旋轉角度之間的差值。
本發(fā)明通過將目標對象從原始姿態(tài)變換為預設姿態(tài),獲取建立在世界坐標系中的理想姿態(tài)變換數(shù)據(jù),以及根據(jù)安裝在所述目標對象上的九軸傳感器得到的實際姿態(tài)變換數(shù)據(jù),并將建立在機體坐標系中的所述實際姿態(tài)變換數(shù)據(jù)投射到世界坐標系,得到所述理想姿態(tài)變換數(shù)據(jù)與所述投射后的實際姿態(tài)變換數(shù)據(jù)之間的差值,實現(xiàn)了對九軸傳感器姿態(tài)測量精確度的檢測。
附圖說明
為了更清楚地說明本申請實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本申請中記載的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其它的附圖。
圖1為本發(fā)明實施例一提供的一種九軸傳感器的性能檢測方法的流程圖;
圖2為本發(fā)明實施例一中機體坐標系的示意圖;
圖3為本發(fā)明實施例一中目標對象在世界坐標系中的預設平面旋轉理想旋轉角度的示意圖;
圖4為本發(fā)明實施例一中VR Gear中的九軸傳感器在不同理想旋轉角度下對應的差值柱狀圖;
圖5為本發(fā)明實施例二提供的一種九軸傳感器的性能檢測裝置的結構框圖。
具體實施方式
為了使本技術領域的人員更好地理解本發(fā)明方案,下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
實施例一:
參見圖1,該圖為本發(fā)明實施例一提供的一種九軸傳感器的性能檢測方法的流程圖。
本實施例提供的九軸傳感器的性能檢測方法包括如下步驟:
步驟S101:將目標對象從原始姿態(tài)變換為預設姿態(tài),并獲取理想姿態(tài)變換數(shù)據(jù),所述理想姿態(tài)變換數(shù)據(jù)對應的坐標系為世界坐標系。
在本實施例中,涉及兩個坐標系,其一為世界坐標系;其二為機體坐標系。
所謂世界坐標系(Global Coordinate System,又稱地球表面慣性坐標系等)是系統(tǒng)的參考坐標系,在本實施例中,它是一個三維的坐標系,具有原點O以及X軸、Y軸和Z軸,其中,X軸的正方向通常指向正東方向,Y軸的正方向通常指向正北方向,Z軸的正方向通常指向天空的方向。世界坐標系用于確定目標對象相對于地面的運動狀態(tài)。
參見圖2,所謂機體坐標系(Body Coordinate System),原定義為固定在飛行器或飛機上的遵循右手法則的三維正交坐標系,具有原點o以及x軸、y軸和z軸。其中,原點o位于飛行器或飛機的重心,x軸的正方向位于飛行器或飛機的參考平面內、且平行于軸線并指向機頭前方,y軸的正方向垂直于所述參考平面并指向飛行器或飛機的右方,z軸的正方向位于所述參考平面、垂直于xoy平面,且指向飛行器或飛機的下方。在本實施例中,所述機體坐標系的應用對象不限于飛行器或飛機,可以是任意的目標對象。
在本實施例中,九軸傳感器中包括的三軸陀螺儀、三軸加速度傳感器以及三軸地磁傳感器均建立在機體坐標系之上,但是機體坐標系是隨著目標對象的姿態(tài)變換而變化的,為了測量九軸傳感器的性能,我們需要目標對象的姿態(tài)變換從變化的機體坐標系投射到固定的世界坐標系。所述目標對象的姿態(tài)是指所述目標對象的空間狀態(tài)。
那么,首先,我們預先設定所述目標對象在世界坐標系中的理想姿態(tài)變換數(shù)據(jù),然后將所述目標對象從原始姿態(tài)變換為與理想姿態(tài)變換數(shù)據(jù)對應的預設姿態(tài)。姿態(tài)變換的方式有很多種,但在本發(fā)明中,不包括前進、后退、上升、下降等平移的姿態(tài)變換,而僅限于繞某個軸旋轉,那么所述理想姿態(tài)變換數(shù)據(jù)為表達理想旋轉角度的數(shù)據(jù),例如歐拉角、四元數(shù)、方向余弦等。
假設所述理想姿態(tài)變換數(shù)據(jù)具體為目標對象在世界坐標系中的預設平面旋轉理想旋轉角度,舉個例子,參見圖3,假設所述目標對象為線段OA,所述線段OA位于世界坐標系的XOY平面,假設點A的原始坐標為(5,5,0)。那么當所述線段OA繞X軸旋轉90度后,變?yōu)榫€段OA’,其中A’的坐標為(5,-5,0)。也就是說,線段OA表示所述目標對象的原始姿勢,線段OA’表示所述目標對象的預設姿態(tài),繞X軸旋轉90度為理想姿態(tài)變換數(shù)據(jù)。
步驟S102:獲取根據(jù)安裝在所述目標對象上的九軸傳感器得到實際姿態(tài)變換數(shù)據(jù),所述實際姿態(tài)變換數(shù)據(jù)對應的坐標系為機體坐標系。
如前文所述,所述九軸傳感器包括三軸陀螺儀、三軸加速度傳感器和三軸地磁傳感器。
所謂陀螺儀是用高速回轉體的動量矩敏感殼體相對慣性空間繞正交于自轉軸的角運動檢測裝置。利用其他原理制成的角運動檢測裝置起同樣功能的也稱陀螺儀。也就是說,陀螺儀可以檢測目標對象在機體坐標系的三軸方向上的角速度。
所謂加速度傳感器是一種能夠測量目標對象在機體坐標系三軸方向上的加速度的傳感器。通常由質量塊、阻尼器、彈性元件、敏感元件和適調電路等部分組成。傳感器在加速過程中,通過對質量塊所受慣性力的測量,利用牛頓第二定律獲得加速度值。
所謂地磁傳感器,又稱羅盤,用于修正因陀螺儀零漂而產生的自旋,即修正陀螺儀在z軸方向的測量數(shù)據(jù)。
在姿態(tài)計算中,最重要的傳感器為陀螺儀,加速度傳感器和地磁傳感器僅起到對陀螺儀的補償作用。
在本實施例中,獲取根據(jù)安裝在所述目標對象上的九軸傳感器得到實際姿態(tài)變換數(shù)據(jù),也就是所述九軸傳感器輸出的數(shù)據(jù),所述實際姿態(tài)變換數(shù)據(jù)對應的坐標系為機體坐標系。
步驟S103:將所述實際姿態(tài)變換數(shù)據(jù)從機體坐標系投射到所述世界坐標系,并計算所述理想姿態(tài)變換數(shù)據(jù)與所述投射后的實際姿態(tài)變換數(shù)據(jù)之間的差值,實現(xiàn)對所述九軸傳感器的性能檢測。
由于目標對象在姿態(tài)變換的過程中,所述目標對象的各個坐標相對于機體坐標系是沒有發(fā)生變換的,所以相當于機體坐標系相對于世界坐標系在進行“姿勢變換”,因而所述目標對象的實際姿態(tài)變換數(shù)據(jù)實際上為機體坐標系的姿勢變換數(shù)據(jù)。機體坐標系的相對于世界坐標系的姿態(tài)變換可以看作是相對于世界坐標系的三個軸分別進行的旋轉變換,在數(shù)學上,表達這樣的旋轉變換可以有三種方式:其一為方向余弦,其二為歐拉角,其三為四元數(shù)。本實施例中,將所述實際姿態(tài)變化數(shù)據(jù)從機體坐標系投射到世界坐標系,得到投射后的實際姿態(tài)變化數(shù)據(jù),其實質上是計算所述機體坐標系或目標對象相對于世界坐標系的姿勢變換數(shù)據(jù),即所述機體坐標系或目標對象在所述世界坐標系中的旋轉變換數(shù)據(jù)。如何將九軸傳感器采集的實際姿態(tài)變化數(shù)據(jù)轉換為方向余弦、歐拉角或四元數(shù)是本領域技術人員公知的內容,本文不再贅述。
在上文中提到,表達旋轉變換可以有三種方式:其一為方向余弦,其二為歐拉角,其三為四元數(shù)。
方向余弦:在解析幾何里,一個向量的三個方向余弦分別是這向量與三個坐標軸之間的角度的余弦。從剛體運動的角度,剛體當前的姿態(tài)是以前某一姿態(tài)的改變,這種改變稱為剛體繞定點O的有限轉動。如果認為參考基是剛體的前一個姿態(tài),那么剛體當前的姿態(tài)相對于前一個姿態(tài)的方向余弦矩陣為Arb。方向余弦計算量、存儲大,不適合嵌入式系統(tǒng)。
歐拉角:從所述機體坐標系到所述世界坐標系的變換,可以通過繞不同坐標軸的3次連續(xù)轉動來實現(xiàn):繞機體坐標系的z軸轉動ψ角,ψ角稱為偏航角,ψ∈(-180度,180度)或(0,360度);繞參考坐標系的y軸轉動θ角,θ角稱為仰俯角,θ∈(-90度,90度);繞參考坐標系的x軸轉動Ф角,Ф角稱為滾轉角,Ф∈(-180度,180度)。ψ、θ和Ф角統(tǒng)稱為歐拉角。
四元數(shù):所謂四元數(shù),即由四個元構成的數(shù):
Q(q0,q1,q2,q3)=q0+q1i+q2j+q3k
其中,q0、q1、q2和q3是實數(shù),i、j和k既是相互正交的單位向量,又是虛單位,因此四元素既可以看做是四維空間中的一個向量,又可以看做是一個超復數(shù)。
如上文所述,四元數(shù)可以用來表示機體坐標系的相對于世界坐標系的姿態(tài)變換,也就是說,四元數(shù)可以看做是目標對象從原始姿態(tài)繞某個旋轉軸旋轉某個角度變換為預設姿態(tài),這個旋轉軸對應的坐標系為世界坐標系。
具體的,四元數(shù)中的各個實數(shù)分別為:
q0=cos(a/2);
q1=x*sin(a/2);
q2=y(tǒng)*sin(a/2);
q3=z*sin(a/2);
其中a表示旋轉角度,向量u=(x,y,z)表示單位向量軸,也就是旋轉軸。
在實際應用中,可以采用四元數(shù)來表達所述機體坐標系或目標對象相對于世界坐標系的姿勢變換數(shù)據(jù),即理想姿態(tài)變換數(shù)據(jù)和投射后的實際姿態(tài)變化數(shù)據(jù)均以四元數(shù)表達,二者相比,就可以得到九軸傳感器進行姿態(tài)檢測的準確度。
雖然四元數(shù)非常適合姿態(tài)運算,但是并不直觀,可操作性不強。本實施例優(yōu)選將所述理想姿態(tài)變換數(shù)據(jù)設定為將所述目標對象在世界坐標系的預設平面內按照理想旋轉角度進行旋轉的旋轉角度,并將投射后的實際姿態(tài)變換數(shù)據(jù)從四元數(shù)轉換為歐拉角,然后將歐拉角投射到所述預設平面內,得到實際旋轉角度,通過計算實際旋轉角度與理想旋轉角度之間的差值,若二者之間的差值較大,則認為所述九軸傳感器的姿態(tài)檢測精度較低;若二者之間差距較小,則認為所述九軸傳感器的姿態(tài)檢測精度較高。
將四元數(shù)轉換為歐拉角的公式如下:
參見表1,該表為對被測的VR Gear中的九軸傳感器進行姿態(tài)檢測準確度的檢測結果表。其中,第一排數(shù)據(jù)表示將所述目標對象在世界坐標系的預設平面內的理想旋轉角度,單位為度。第二至六排表示通過九軸傳感器得到的實際姿態(tài)變化數(shù)據(jù)投射到所述世界坐標系后得到的四元數(shù),轉換為歐拉角,再映射到所述預設平面內的實際旋轉角度。一個理想旋轉角度對應2-4次實際旋轉角度的檢測結果。第七排為各個理想旋轉角度分別對應的實際旋轉角度的均值。第八排為理想旋轉角度與實際旋轉角度的均值之間的差值。參見圖4,該圖為VR Gear中的九軸傳感器在不同理想旋轉角度下對應的差值柱狀圖。
本實施例通過將目標對象從原始姿態(tài)變換為預設姿態(tài),獲取建立在世界坐標系中的理想姿態(tài)變換數(shù)據(jù),以及根據(jù)安裝在所述目標對象上的九軸傳感器得到的實際姿態(tài)變換數(shù)據(jù),并將建立在機體坐標系中的所述實際姿態(tài)變換數(shù)據(jù)投射到世界坐標系,得到所述理想姿態(tài)變換數(shù)據(jù)與所述投射后的實際姿態(tài)變換數(shù)據(jù)之間的差值,實現(xiàn)了對九軸傳感器姿態(tài)測量精確度的檢測。
基于以上實施例提供的一種九軸傳感器的性能檢測方法,本發(fā)明實施例還提供了一種九軸傳感器的性能檢測裝置,下面結合附圖來詳細說明其工作原理。
實施例二
參見圖5,該圖為本發(fā)明實施例二提供的一種九軸傳感器的性能檢測裝置的結構框圖。
本實施例提供的九軸傳感器的性能檢測裝置包括:姿態(tài)變換單元101、實際數(shù)據(jù)獲取單元102、投射單元103和計算單元104;
其中,所述姿態(tài)變換單元101,用于將目標對象從原始姿態(tài)變換為預設姿態(tài),并獲取理想姿態(tài)變換數(shù)據(jù),所述理想姿態(tài)變換數(shù)據(jù)對應的坐標系為世界坐標系;
所述實際數(shù)據(jù)獲取單元102,用于獲取根據(jù)安裝在所述目標對象上的九軸傳感器得到實際姿態(tài)變換數(shù)據(jù),所述實際姿態(tài)變換數(shù)據(jù)對應的坐標系為機體坐標系,所述九軸傳感器包括三軸陀螺儀、三軸加速度傳感器和三軸地磁傳感器;
所述投射單元103,用于將所述實際姿態(tài)變換數(shù)據(jù)從機體坐標系投射到所述世界坐標系;
所述計算單元104,用于計算所述理想姿態(tài)變換數(shù)據(jù)與所述投射后的實際姿態(tài)變換數(shù)據(jù)之間的差值,實現(xiàn)對所述九軸傳感器的性能檢測。
本實施例通過將目標對象從原始姿態(tài)變換為預設姿態(tài),獲取建立在世界坐標系中的理想姿態(tài)變換數(shù)據(jù),以及根據(jù)安裝在所述目標對象上的九軸傳感器得到的實際姿態(tài)變換數(shù)據(jù),并將建立在機體坐標系中的所述實際姿態(tài)變換數(shù)據(jù)投射到世界坐標系,得到所述理想姿態(tài)變換數(shù)據(jù)與所述投射后的實際姿態(tài)變換數(shù)據(jù)之間的差值,實現(xiàn)了對九軸傳感器姿態(tài)測量精確度的檢測。
可選的,所述投射單元103,具體用于:
獲取安裝在所述目標對象的九軸傳感器分別輸出的實際傳感器數(shù)據(jù);將所述九軸傳感器分別輸出的實際傳感器數(shù)據(jù)融合為四元數(shù),所述四元數(shù)表達所述目標對象在所述世界坐標系中從原始姿態(tài)變換為預設姿態(tài)的姿態(tài)變換。
可選的,所述姿態(tài)變換單元101,具體用于:
將目標對象從原始姿態(tài)變換為預設姿態(tài),并獲取所述目標對象在預設平面內的理想旋轉角度,所述預設平面對應的坐標系為所述世界坐標系;
所述投射單元103,還具體用于:
將所述四元數(shù)轉換為歐拉角,并將所述歐拉角投射到所述世界坐標系中的所述預設平面,得到實際旋轉角度;
所述計算單元104,具體用于:
計算所述實際旋轉角度與所述理想旋轉角度之間的差值。
當介紹本發(fā)明的各種實施例的元件時,冠詞“一”、“一個”、“這個”和“所述”都意圖表示有一個或多個元件。詞語“包括”、“包含”和“具有”都是包括性的并意味著除了列出的元件之外,還可以有其它元件。
需要說明的是,本領域普通技術人員可以理解實現(xiàn)上述方法實施例中的全部或部分流程,是可以通過計算機程序來指令相關的硬件來完成,所述的程序可存儲于一計算機可讀取存儲介質中,該程序在執(zhí)行時,可包括如上述各方法實施例的流程。其中,所述存儲介質可為磁碟、光盤、只讀存儲記憶體(Read-Only Memory,ROM)或隨機存儲記憶體(Random Access Memory,RAM)等。
本說明書中的各個實施例均采用遞進的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對于裝置實施例而言,由于其基本相似于方法實施例,所以描述得比較簡單,相關之處參見方法實施例的部分說明即可。以上所描述的裝置實施例僅僅是示意性的,其中所述作為分離部件說明的單元及模塊可以是或者也可以不是物理上分開的。另外,還可以根據(jù)實際的需要選擇其中的部分或者全部單元和模塊來實現(xiàn)本實施例方案的目的。本領域普通技術人員在不付出創(chuàng)造性勞動的情況下,即可以理解并實施。
以上所述僅是本發(fā)明的具體實施方式,應當指出,對于本技術領域的普通技術人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也應視為本發(fā)明的保護范圍。