女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

C語言實(shí)現(xiàn)歐拉角轉(zhuǎn)四元數(shù)

zhc135136 ? 來源:SmartHWFW ? 2023-08-07 09:57 ? 次閱讀

1. 說在前面的話

2. 歐拉角

3. 歐拉角與四元數(shù)關(guān)系

4. Matlabe 歐拉角轉(zhuǎn)四元數(shù)

5.C語言實(shí)現(xiàn)歐拉角轉(zhuǎn)四元數(shù)

6. 獲取資源

1. 說在前面的話

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)問題,且需多次三角運(yùn)算。而采用四元數(shù)表示方法則可以避免這些問題,因此目前工程上開始采用四元數(shù)來描述飛行器運(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-X軸的順序旋轉(zhuǎn)(東北地坐標(biāo)系(對(duì)應(yīng)的載體坐標(biāo)系前右下)):

4a947fe4-3466-11ee-9e74-dac502259ad0.png

于是可得姿態(tài)矩陣

4aac1be0-3466-11ee-9e74-dac502259ad0.png

式中,字符"c","s"分別為"cos"和"sin"的縮寫形式。

3. 歐拉角與四元數(shù)關(guān)系

根據(jù)四元數(shù)的定義,可以將歐拉角式轉(zhuǎn)換為四元數(shù),以歐拉3-2-1轉(zhuǎn)動(dòng)為例:第一次先繞Z軸轉(zhuǎn)動(dòng),φ = θ =0,

四元數(shù)表示為:

4ad3f91c-3466-11ee-9e74-dac502259ad0.png

第二次先繞Y軸轉(zhuǎn)動(dòng),φ = ψ = 0,

四元數(shù)表示為:

4ae80aba-3466-11ee-9e74-dac502259ad0.png

第三次先繞X軸轉(zhuǎn)動(dòng),θ = ψ = 0,

四元數(shù)表示為:

4afdcb16-3466-11ee-9e74-dac502259ad0.png

則,繞三軸轉(zhuǎn)動(dòng)的合成為

4b1abfc8-3466-11ee-9e74-dac502259ad0.png

4b27b0e8-3466-11ee-9e74-dac502259ad0.png

該轉(zhuǎn)換方法在360±°內(nèi)均有效,是一對(duì)一的關(guān)系。

4. MATLAB 歐拉角轉(zhuǎn)四元數(shù)

4b524218-3466-11ee-9e74-dac502259ad0.png

4b7da5e8-3466-11ee-9e74-dac502259ad0.png

5. C語言實(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é)果:

4b944096-3466-11ee-9e74-dac502259ad0.png

審核編輯:湯梓紅
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • matlab
    +關(guān)注

    關(guān)注

    188

    文章

    2996

    瀏覽量

    233200
  • C語言
    +關(guān)注

    關(guān)注

    180

    文章

    7630

    瀏覽量

    140264
  • 飛行器
    +關(guān)注

    關(guān)注

    13

    文章

    737

    瀏覽量

    46168
  • 歐拉角
    +關(guān)注

    關(guān)注

    0

    文章

    5

    瀏覽量

    6821

原文標(biāo)題:MEMS_慣性傳感器程序集02-歐拉角轉(zhuǎn)四元數(shù)

文章出處:【微信號(hào):SmartHWFW,微信公眾號(hào):SmartHWFW】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    數(shù)歐拉角之間的轉(zhuǎn)換

    數(shù)歐拉角之間的轉(zhuǎn)換
    發(fā)表于 08-17 12:08

    飛控姿態(tài)解算中,歐拉角數(shù)之間的轉(zhuǎn)換

    //歐拉角轉(zhuǎn)數(shù)void cjx_from_euler(float roll, float pitch, float yaw){ floa
    發(fā)表于 11-17 13:09

    請(qǐng)問我用數(shù)轉(zhuǎn)歐拉角造成的這些問題該怎么解決?

    我用數(shù)轉(zhuǎn)歐拉角的時(shí)候出現(xiàn)了一些問題。我是按偏航,俯仰,橫滾的順序解算的,動(dòng)作是三個(gè)軸依次轉(zhuǎn)3
    發(fā)表于 06-26 04:37

    基于Proteus和C語言實(shí)現(xiàn)

    基于Proteus和C語言實(shí)現(xiàn)一共個(gè)題目,有沒有人愿意嘗試一下?
    發(fā)表于 07-14 06:20

    旋轉(zhuǎn)矩陣、數(shù)歐拉角比較

    MPU的旋轉(zhuǎn)矩陣 數(shù) 歐拉角比較,能夠幫助新手了解三者的不同之處
    發(fā)表于 12-08 11:41 ?55次下載

    DSP算法的c語言實(shí)現(xiàn)

    DSP算法的c語言實(shí)現(xiàn),又需要的朋友下來看看。
    發(fā)表于 05-09 10:59 ?0次下載

    PID控制算法的C語言實(shí)現(xiàn)(完整版)

    PID控制算法的C語言實(shí)現(xiàn)一 PID算法原理
    發(fā)表于 11-05 15:45 ?0次下載

    如何使用C語言實(shí)現(xiàn)一個(gè)比較簡(jiǎn)單的猜數(shù)游戲的程序免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是如何使用C語言實(shí)現(xiàn)一個(gè)比較簡(jiǎn)單的猜數(shù)游戲的程序免費(fèi)下載
    發(fā)表于 04-24 18:31 ?0次下載
    如何使用<b class='flag-5'>C</b><b class='flag-5'>語言實(shí)現(xiàn)</b>一個(gè)比較簡(jiǎn)單的猜<b class='flag-5'>數(shù)</b>游戲的程序免費(fèi)下載

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

    本文檔的主要內(nèi)容詳細(xì)介紹的是MPU6050傳感器的數(shù)歐拉角程序免費(fèi)下載。
    發(fā)表于 08-30 17:29 ?23次下載
    MPU6050傳感器的<b class='flag-5'>四</b><b class='flag-5'>元</b><b class='flag-5'>數(shù)</b><b class='flag-5'>歐拉角</b>程序免費(fèi)下載

    如何將數(shù)轉(zhuǎn)化為歐拉角

    數(shù)轉(zhuǎn)化為歐拉角: 1. 初始姿態(tài)的數(shù)(w,
    發(fā)表于 12-05 17:03 ?13次下載
    如何將<b class='flag-5'>四</b><b class='flag-5'>元</b><b class='flag-5'>數(shù)</b>轉(zhuǎn)化為<b class='flag-5'>歐拉角</b>

    使用單片機(jī)實(shí)現(xiàn)轉(zhuǎn)并數(shù)字芯片測(cè)試的C語言實(shí)例免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是使用單片機(jī)實(shí)現(xiàn)轉(zhuǎn)并數(shù)字芯片測(cè)試的C語言實(shí)例免費(fèi)下載。
    發(fā)表于 03-29 11:48 ?3次下載

    使用單片機(jī)實(shí)現(xiàn)PCF8591轉(zhuǎn)換器應(yīng)用的C語言實(shí)

    本文檔的主要內(nèi)容詳細(xì)介紹的是使用單片機(jī)實(shí)現(xiàn)PCF8591轉(zhuǎn)換器應(yīng)用的C語言實(shí)例免費(fèi)下載。
    發(fā)表于 03-31 14:45 ?12次下載

    累加校驗(yàn)和C語言實(shí)現(xiàn)

    累加校驗(yàn)和C語言實(shí)現(xiàn)
    發(fā)表于 11-29 18:06 ?10次下載
    累加校驗(yàn)和<b class='flag-5'>C</b><b class='flag-5'>語言實(shí)現(xiàn)</b>

    怎么用C語言實(shí)現(xiàn)多態(tài)

    這里我想主要介紹下在C語言中是如何實(shí)現(xiàn)的面向?qū)ο蟆V懒?b class='flag-5'>C語言實(shí)現(xiàn)面向?qū)ο蟮姆绞剑覀冊(cè)俾?lián)想下,C
    的頭像 發(fā)表于 10-12 09:12 ?2254次閱讀

    使用C語言實(shí)現(xiàn)的CRC計(jì)算單元的例子

    使用C語言實(shí)現(xiàn)的CRC計(jì)算單元的例子
    的頭像 發(fā)表于 05-16 16:16 ?1451次閱讀