-
當(dāng)前位置:首頁(yè) > 創(chuàng)意學(xué)院 > 技術(shù) > 專題列表 > 正文
四元數(shù)計(jì)算公式(四元數(shù)計(jì)算公式怎么算)
大家好!今天讓創(chuàng)意嶺的小編來(lái)大家介紹下關(guān)于四元數(shù)計(jì)算公式的問(wèn)題,以下是小編對(duì)此問(wèn)題的歸納整理,讓我們一起來(lái)看看吧。
開(kāi)始之前先推薦一個(gè)非常厲害的Ai人工智能工具,一鍵生成原創(chuàng)文章、方案、文案、工作計(jì)劃、工作報(bào)告、論文、代碼、作文、做題和對(duì)話答疑等等
只需要輸入關(guān)鍵詞,就能返回你想要的內(nèi)容,越精準(zhǔn),寫(xiě)出的就越詳細(xì),有微信小程序端、在線網(wǎng)頁(yè)版、PC客戶端
官網(wǎng):https://ai.de1919.com。
創(chuàng)意嶺作為行業(yè)內(nèi)優(yōu)秀的企業(yè),服務(wù)客戶遍布全球各地,如需了解SEO相關(guān)業(yè)務(wù)請(qǐng)撥打電話175-8598-2043,或添加微信:1454722008
本文目錄:
一、坐標(biāo)轉(zhuǎn)換與姿態(tài)描述
摘錄于此并修復(fù)部分圖片,如涉及版權(quán)請(qǐng)聯(lián)系刪除
為了能夠科學(xué)的反映物體的運(yùn)動(dòng)特性,會(huì)在特定的坐標(biāo)系中進(jìn)行描述,一般情況下,分析飛行器運(yùn)動(dòng)特性經(jīng)常要用到以下幾種坐標(biāo)系統(tǒng)1、大地坐標(biāo)系統(tǒng);2、地心固定坐標(biāo)系統(tǒng);3、 本地北東地坐標(biāo)系統(tǒng) ;4、 機(jī)載北東地坐標(biāo)系統(tǒng) ;5、 機(jī)體軸坐標(biāo)系統(tǒng) 。
其中3、4、5在我們建模、設(shè)計(jì)控制律時(shí)都是經(jīng)常需要使用的坐標(biāo)系,描述物體(剛體)位姿信息的6個(gè)自由度信息都是在這三個(gè)坐標(biāo)系中產(chǎn)生的
機(jī)體軸坐標(biāo)系的原點(diǎn)固連于飛行器重心,X軸指向機(jī)頭,Z軸指向機(jī)腹,X軸和Z軸都位于縱向?qū)ΨQ面內(nèi),而Y軸指向機(jī)身右側(cè),與X、Z軸構(gòu)成右手系,該坐標(biāo)系我們用body的首字母b表示。
機(jī)載NED坐標(biāo)系的原點(diǎn)也位于飛行器重心,其X軸指向橢球模型地理北極,Y軸指向橢球模型地理東方,Z軸沿橢球面法線向下,在絕大多數(shù)理解上都可以理解成通常的北向、東向、地向,通常該坐標(biāo)系用nv表示。
本地NED坐標(biāo)系與機(jī)載NED坐標(biāo)系唯一的不同就是原點(diǎn)坐標(biāo)位于地面上任意一點(diǎn),在分析物體的旋轉(zhuǎn)運(yùn)動(dòng)時(shí)一般不會(huì)用到。
剛才我們講到兩個(gè)坐標(biāo)系,那建立這兩個(gè)坐標(biāo)系的目的是什么呢?當(dāng)然是要描述清楚飛行器的姿態(tài)信息以及角運(yùn)動(dòng)狀態(tài),目前為止,描述清楚姿態(tài)信息的方式有三種:歐拉角、旋轉(zhuǎn)矩陣、四元素。
歐拉角是歐拉引入用來(lái)描述剛體姿態(tài)的三個(gè)角,也是我們平常最容易理解,最容易具象表述清楚的一種方式。歐拉角有 靜態(tài)和動(dòng)態(tài) 兩種,靜態(tài)的是繞靜止的慣性坐標(biāo)系三個(gè)軸進(jìn)行旋轉(zhuǎn),而動(dòng)態(tài)的在旋轉(zhuǎn)過(guò)程中旋轉(zhuǎn)坐標(biāo)軸會(huì)發(fā)生變化,除了第一次旋轉(zhuǎn)是繞慣性系的坐標(biāo)軸進(jìn)行之外,后續(xù)兩次旋轉(zhuǎn)都是動(dòng)態(tài)的,并且前面旋轉(zhuǎn)的角度對(duì)后面的旋轉(zhuǎn)軸是有影響的,按照不同的軸順序進(jìn)行旋轉(zhuǎn)得到的歐拉角也是不同的,旋轉(zhuǎn)變換可以歸結(jié)為若干個(gè)沿著坐標(biāo)軸旋轉(zhuǎn)的組合,組合個(gè)數(shù)不超過(guò)三個(gè)并且兩個(gè)相鄰的旋轉(zhuǎn)必須沿著不同坐標(biāo)軸,總共有12種旋轉(zhuǎn)方式,分別是XYZ、XZY、XYX、XZX、YXZ、YZX、YXY、YZY、ZXY、ZYX、ZXZ、ZYZ。雖然存在12種旋轉(zhuǎn)方式,但是每一種旋轉(zhuǎn)方式都存在萬(wàn)向鎖現(xiàn)象,什么是萬(wàn)向鎖,這是一個(gè)比較復(fù)雜的問(wèn)題,我們會(huì)在后面進(jìn)階篇進(jìn)行描述。下圖是常見(jiàn)的一種歐拉旋轉(zhuǎn)方式:
而航空專業(yè)通常采用的旋轉(zhuǎn)方式是ZYX順序,下圖是一架飛機(jī)按照Z(yǔ)YX組合進(jìn)行旋轉(zhuǎn)產(chǎn)生歐拉角的過(guò)程,其中,ψ為偏航角,θ為俯仰角,φ為滾轉(zhuǎn)角。
旋轉(zhuǎn)矩陣反映了一個(gè)坐標(biāo)系中的坐標(biāo)在另一個(gè)坐標(biāo)系中表示的轉(zhuǎn)換關(guān)系。我們先來(lái)看一下二維平面坐標(biāo)系下的情況:
如果用矩陣形式表示就是:
根據(jù)作用的順序,則從機(jī)載NED坐標(biāo)系到機(jī)體軸坐標(biāo)系的歐拉轉(zhuǎn)換矩陣是
所以,旋轉(zhuǎn)矩陣基本上是歐拉角的另一種表示形式。只要俯仰角不等于±90°,歐拉角可以描述清楚任何剛體的姿態(tài)以及角運(yùn)動(dòng)信息,而對(duì)于大部分飛行器來(lái)說(shuō),俯仰角也不會(huì)到90°,所以,使用歐拉角進(jìn)行姿態(tài)控制完全可以滿足使用要求,但對(duì)于一些要求變態(tài)機(jī)動(dòng)能力的飛行器來(lái)說(shuō),為了防止俯仰角90°時(shí)出現(xiàn)奇點(diǎn),使用四元素替代歐拉角進(jìn)行姿態(tài)控制是必須的。
我們把飛行器放到陀螺儀旁邊進(jìn)行對(duì)比。首先,我們先來(lái)解釋一下上面那個(gè)旋轉(zhuǎn)的陀螺儀的三個(gè)環(huán)是怎么旋轉(zhuǎn)的,每一個(gè)環(huán)都連有一根或者兩根軸,這根軸就是每個(gè)環(huán)的旋轉(zhuǎn)軸,我們可以看到最外面那個(gè)環(huán)旋轉(zhuǎn)不會(huì)影響里面兩個(gè)環(huán)的位置,中間那個(gè)環(huán)的旋轉(zhuǎn)不會(huì)影響最里面那個(gè)環(huán)的位置,但是最外面的那個(gè)環(huán)會(huì)跟著動(dòng),而最里面那個(gè)環(huán)旋轉(zhuǎn)會(huì)影響到外面兩個(gè)環(huán)的位置,這種現(xiàn)象跟我們上一次講歐拉旋轉(zhuǎn)里的三次旋轉(zhuǎn)是一樣的,這也是我們拿陀螺儀來(lái)解釋歐拉角萬(wàn)向鎖現(xiàn)象的原因。
先來(lái)看一下最外側(cè)那個(gè)環(huán)的旋轉(zhuǎn)情況,上次采用的是ZYX的順序進(jìn)行旋轉(zhuǎn),所以最外面那個(gè)環(huán)對(duì)應(yīng)的就是繞X軸的旋轉(zhuǎn),對(duì)應(yīng)的是飛行器的滾轉(zhuǎn)運(yùn)動(dòng):
但是如果我們的飛機(jī)俯仰角到達(dá)±90°時(shí),你會(huì)發(fā)現(xiàn)此時(shí)綠色代表的滾轉(zhuǎn)運(yùn)動(dòng)和藍(lán)色代表的偏航運(yùn)動(dòng)他們的旋轉(zhuǎn)軸重合了,這時(shí)候你必須要改變最里面自轉(zhuǎn)軸的角度才能夠達(dá)到你需要的空間位置,而這是違背陀螺定軸性規(guī)律的,所以下圖陀螺儀中運(yùn)動(dòng)的那個(gè)方向其實(shí)是被鎖住了的,你在俯仰角達(dá)到±90°時(shí)就不可能有這個(gè)方向的運(yùn)動(dòng),這是因?yàn)楫?dāng)你俯仰角達(dá)到±90°時(shí),你改變了第三個(gè)要旋轉(zhuǎn)的軸的方向,它與你第一次旋轉(zhuǎn)的Z軸重合了,所以在空間中失去了一個(gè)自由度:
這就是歐拉角的萬(wàn)向鎖現(xiàn)象,為了更好的理解這個(gè)現(xiàn)象,我們?cè)儆米约旱氖謾C(jī)做一個(gè)試驗(yàn),你把手機(jī)屏幕朝上,手機(jī)的長(zhǎng)邊為X軸,短邊為Y軸,Z軸垂直屏幕向下,那你先繞Z軸旋轉(zhuǎn)一下手機(jī),假設(shè)旋轉(zhuǎn)30度,然后再把手機(jī)繞X軸旋轉(zhuǎn)90度,也就是把手機(jī)長(zhǎng)邊接觸桌面豎立起來(lái),這時(shí)候你再繞手機(jī)的短邊旋轉(zhuǎn),你會(huì)發(fā)現(xiàn)手機(jī)的長(zhǎng)邊一直定在桌面上不可能脫離桌面,這就是萬(wàn)向鎖現(xiàn)象。
最后,再讓我們用數(shù)據(jù)公式來(lái)解釋一下萬(wàn)向鎖現(xiàn)象產(chǎn)生的原因,我們來(lái)回顧一下昨天的旋轉(zhuǎn)矩陣:
如果俯仰角為±90°,那么公式就變成了:
歐拉角表示姿態(tài)時(shí)會(huì)遇到萬(wàn)向鎖的問(wèn)題,這就導(dǎo)致同一種空間狀態(tài)歐拉角的表示方式不唯一,當(dāng)出現(xiàn)萬(wàn)向鎖現(xiàn)象時(shí),同一種旋轉(zhuǎn)有無(wú)數(shù)種歐拉角表示形式,從而導(dǎo)致了歐拉角差值時(shí)出現(xiàn)問(wèn)題,因?yàn)楫?dāng)你俯仰角接近90°時(shí),兩組千差萬(wàn)別的歐拉角表示可以是同一種旋轉(zhuǎn)。所以為了解決這些問(wèn)題,數(shù)學(xué)上想出了用四元數(shù)的形式來(lái)表征姿態(tài)的方法。
對(duì)于導(dǎo)航飛控的算法,我們需要對(duì)四元數(shù)有什么了解,其實(shí)很簡(jiǎn)單,我們要知道它的基本運(yùn)算規(guī)律,要知道它以什么樣的方式表征姿態(tài),要知道它跟其他兩個(gè)表征姿態(tài)的歐拉角和旋轉(zhuǎn)矩陣方式如何互相轉(zhuǎn)換。除此之外,還有后續(xù)如何使用四元數(shù)進(jìn)行建模和控制律設(shè)計(jì),如何在導(dǎo)航算法中得到四元數(shù)的狀態(tài)。
四元數(shù)是由1個(gè)實(shí)數(shù)加上3個(gè)復(fù)數(shù)組合而成,通常可以表示成w+xi+yj+zk或者(w,(x,y,z)),其中w、x、y、z都是實(shí)數(shù),而i^2 = j^2 =k^2 = -1, i^0 = j^0 = k^0 = 1。
那對(duì)于四元數(shù)的運(yùn)算法則,我們要清楚的有以下幾個(gè),假設(shè)有兩個(gè)四元數(shù)分別為q1=(w1,(x1,y1,z1))和q2=(w2,(x2,y2,z2)),令v1 = (x1,y1,z1),v2= (x2,y2,z2),則
了解了四元數(shù)的基本運(yùn)算規(guī)律后,我們來(lái)看下它如何表征姿態(tài),假設(shè)存在一根旋轉(zhuǎn)軸u,有一個(gè)繞u軸旋轉(zhuǎn)σ角度的這么一個(gè)旋轉(zhuǎn)存在,那這時(shí)候代表這個(gè)旋轉(zhuǎn)的四元數(shù)是這樣子的:
其中u是旋轉(zhuǎn)軸的單位向量,q是一個(gè)單位四元數(shù)。
至于為什么會(huì)有這個(gè)結(jié)果,我們這兒就不展開(kāi)證明了,思路就是你要證明v和w之間的夾角是σ就行,證明的事情交給數(shù)學(xué)家們?nèi)プ?,我們只需要知道四元?shù)這么寫(xiě)可以用來(lái)表征姿態(tài),其實(shí)是表征旋轉(zhuǎn)關(guān)系,跟旋轉(zhuǎn)矩陣的表示方法類似,只不過(guò)它只需要4個(gè)元素,而旋轉(zhuǎn)矩陣需要9個(gè)元素。
四元素轉(zhuǎn)旋轉(zhuǎn)矩陣:
旋轉(zhuǎn)矩陣四元素:
已知旋轉(zhuǎn)矩陣:
則求解四元數(shù)時(shí)根據(jù)的方法就是從四元數(shù)轉(zhuǎn)旋轉(zhuǎn)矩陣的公式中得到:
則四元素:
歐拉角轉(zhuǎn)四元數(shù):
已知?dú)W拉角:α、β、γ
四元數(shù)為:
四元素轉(zhuǎn)歐拉角
已知四元數(shù):
歐拉角為:
這時(shí)候我們通常令α=0,然后解出歐拉角的值。
到這里基本上歐拉角、旋轉(zhuǎn)矩陣、四元數(shù)的關(guān)系就說(shuō)清楚了,對(duì)于四元數(shù),我們不需要去想象它是怎么旋轉(zhuǎn)的,我們只需要知道它是怎么表征姿態(tài)的,后續(xù)會(huì)根據(jù)角運(yùn)動(dòng)模型進(jìn)行控制律設(shè)計(jì)和狀態(tài)估計(jì),這就足夠了,那我們來(lái)總結(jié)一下這三種方法各自的優(yōu)缺點(diǎn):
歐拉角:非常直觀,我們可以很容易理解它的意思,也能想象出對(duì)應(yīng)的空間位置,但是存在萬(wàn)向鎖現(xiàn)象,導(dǎo)致后面有很多數(shù)學(xué)問(wèn)題。
旋轉(zhuǎn)矩陣:旋轉(zhuǎn)矩陣有9個(gè)元素,計(jì)算繁雜,尤其是求微分時(shí),而且也不直觀。
四元數(shù):沒(méi)有奇點(diǎn),能表征任何旋轉(zhuǎn)關(guān)系,而且表示簡(jiǎn)單,只有四個(gè)元素,計(jì)算量小,但是不直觀
二、跪求四元數(shù)到歐拉角、旋轉(zhuǎn)矩陣的變換公式,必須附帶旋轉(zhuǎn)順序!
參考這個(gè)鏈接網(wǎng)頁(yè)鏈接,很詳細(xì)!
三、求3d中四元數(shù)q記為(x,y,z,w)沿xz平面鏡像計(jì)算公式?
Y,W取零不就是在xz平面的投影嗎
不太理解樓主的意思
四、四元數(shù)與方向余弦矩陣
四元數(shù)表示的坐標(biāo)系轉(zhuǎn)換時(shí)的方向余弦陣:
以上就是關(guān)于四元數(shù)計(jì)算公式相關(guān)問(wèn)題的回答。希望能幫到你,如有更多相關(guān)問(wèn)題,您也可以聯(lián)系我們的客服進(jìn)行咨詢,客服也會(huì)為您講解更多精彩的知識(shí)和內(nèi)容。
推薦閱讀:
四元數(shù)計(jì)算公式(四元數(shù)計(jì)算公式怎么算)
關(guān)于愛(ài)的能力的書(shū)籍(愛(ài)的能力 書(shū)籍)