1. 說(shuō)在前面的話
2. 歐拉角
3. 歐拉角與四元數(shù)關(guān)系
4. Matlabe 歐拉角轉(zhuǎn)四元數(shù)
5.C語(yǔ)言實(shí)現(xiàn)歐拉角轉(zhuǎn)四元數(shù)
6. 獲取資源
1. 說(shuō)在前面的話
1)在介紹以下內(nèi)容之前,我們假設(shè)讀者已經(jīng)對(duì)復(fù)數(shù)與2D旋轉(zhuǎn)、3D空間中的旋轉(zhuǎn)、四元數(shù)的性質(zhì)以及四元數(shù)與3D旋轉(zhuǎn)等數(shù)學(xué)理論有一定的閱讀理解基礎(chǔ)。
2)歐拉角與四元數(shù)姿態(tài)表示方法是目前工程上最常用的兩種方法。歐拉角表示法具有簡(jiǎn)便、幾何意義明顯等優(yōu)點(diǎn),同時(shí)姿態(tài)敏感器可以直接測(cè)出這些參數(shù),能較方便地求解用這些姿態(tài)參數(shù)描述的姿態(tài)動(dòng)力學(xué)方程。但采用歐拉角的姿態(tài)描述方法存在奇點(diǎn)問(wèn)題,且需多次三角運(yùn)算。而采用四元數(shù)表示方法則可以避免這些問(wèn)題,因此目前工程上開(kāi)始采用四元數(shù)來(lái)描述飛行器運(yùn)動(dòng)及動(dòng)力學(xué)方程中的姿態(tài),而在設(shè)計(jì)控制規(guī)律時(shí),由于歐拉角的直觀性和幾何意義,仍然采用歐拉角描述。
2. 歐拉角
根據(jù)歐拉定理,剛體繞固定點(diǎn)的位移也可以是繞該點(diǎn)的若干次有限轉(zhuǎn)動(dòng)的合成。在歐拉轉(zhuǎn)動(dòng)中,將載體坐標(biāo)系轉(zhuǎn)動(dòng)三次得到導(dǎo)航坐標(biāo)系。在三次轉(zhuǎn)動(dòng)中,每次的旋轉(zhuǎn)軸是被轉(zhuǎn)動(dòng)坐標(biāo)系的某一坐標(biāo)軸,每次的轉(zhuǎn)動(dòng)角即為歐拉角。因此,用歐拉角確定的姿態(tài)矩陣是三次坐標(biāo)轉(zhuǎn)換矩陣的乘積。
最終的姿態(tài)矩陣還與三次轉(zhuǎn)動(dòng)的順序有關(guān),下面公式采用3-2-1順序,即按照Z(yǔ)-Y-X軸的順序旋轉(zhuǎn)(東北地坐標(biāo)系(對(duì)應(yīng)的載體坐標(biāo)系前右下)):
于是可得姿態(tài)矩陣
式中,字符"c","s"分別為"cos"和"sin"的縮寫(xiě)形式。
3. 歐拉角與四元數(shù)關(guān)系
根據(jù)四元數(shù)的定義,可以將歐拉角式轉(zhuǎn)換為四元數(shù),以歐拉3-2-1轉(zhuǎn)動(dòng)為例:第一次先繞Z軸轉(zhuǎn)動(dòng),φ = θ =0,
四元數(shù)表示為:
第二次先繞Y軸轉(zhuǎn)動(dòng),φ = ψ = 0,
四元數(shù)表示為:
第三次先繞X軸轉(zhuǎn)動(dòng),θ = ψ = 0,
四元數(shù)表示為:
則,繞三軸轉(zhuǎn)動(dòng)的合成為
該轉(zhuǎn)換方法在360±°內(nèi)均有效,是一對(duì)一的關(guān)系。
4. MATLAB 歐拉角轉(zhuǎn)四元數(shù)
5. C語(yǔ)言實(shí)現(xiàn)歐拉角轉(zhuǎn)四元數(shù)
歐拉角轉(zhuǎn)四元數(shù)的步驟如下:
STEP1:確定每個(gè)歐拉角的軸和旋轉(zhuǎn)角度。Yaw對(duì)應(yīng)y軸,Pitch對(duì)應(yīng)x軸,Roll對(duì)應(yīng)z軸。記為yaw_angle,pitch_angle和roll_angle。
STEP2:分別根據(jù)每個(gè)歐拉角的旋轉(zhuǎn)軸和旋轉(zhuǎn)角度,構(gòu)造旋轉(zhuǎn)四元數(shù)的各個(gè)分量。以yaw_angle為例,qw = cos(yaw_angle/2)qx = 0qy = sin(yaw_angle/2)qz = 0
同樣地,根據(jù)pitch_angle和roll_angle可以得到對(duì)應(yīng)的旋轉(zhuǎn)四元數(shù)分量。
STEP3:根據(jù)旋轉(zhuǎn)四元數(shù)的分量,構(gòu)造最終的旋轉(zhuǎn)四元數(shù)。旋轉(zhuǎn)四元數(shù)的分量為(qw, qx, qy, qz)。
請(qǐng)注意,歐拉角到四元數(shù)的轉(zhuǎn)換是一個(gè)多對(duì)一的映射,即不同的歐拉角可能對(duì)應(yīng)相同的旋轉(zhuǎn)四元數(shù)。因此,在實(shí)際應(yīng)用中,可能需要根據(jù)具體需求選擇適合的歐拉角表示方式。
校驗(yàn)結(jié)果:
-
matlab
+關(guān)注
關(guān)注
187文章
2988瀏覽量
232590 -
C語(yǔ)言
+關(guān)注
關(guān)注
180文章
7624瀏覽量
139433 -
飛行器
+關(guān)注
關(guān)注
13文章
731瀏覽量
46012 -
歐拉角
+關(guān)注
關(guān)注
0文章
5瀏覽量
6809
原文標(biāo)題:MEMS_慣性傳感器程序集02-歐拉角轉(zhuǎn)四元數(shù)
文章出處:【微信號(hào):SmartHWFW,微信公眾號(hào):SmartHWFW】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
飛控姿態(tài)解算中,歐拉角與四元數(shù)之間的轉(zhuǎn)換
請(qǐng)問(wèn)我用四元數(shù)轉(zhuǎn)歐拉角造成的這些問(wèn)題該怎么解決?
基于Proteus和C語(yǔ)言實(shí)現(xiàn)
旋轉(zhuǎn)矩陣、四元數(shù)、歐拉角比較
如何使用C語(yǔ)言實(shí)現(xiàn)一個(gè)比較簡(jiǎn)單的猜數(shù)游戲的程序免費(fèi)下載

MPU6050傳感器的四元數(shù)歐拉角程序免費(fèi)下載

評(píng)論