pixhawk篇之坐标系转化,相关转化矩阵知识,算法截取
前沿:本文參考大量英文論文,書(shū)籍。並沒(méi)有標(biāo)記處引用,但都是經(jīng)過(guò)自己理解后手打的內(nèi)容。請(qǐng)尊重別人的版權(quán)
??????????? 部分內(nèi)容是原作英文內(nèi)容的翻譯。因篇幅,經(jīng)過(guò)修剪。
一:座標(biāo)係介紹
1.1????? 總括
? ? ? ?? ?? 1. the geodetic coordinate system,
????? ? ? ? 2. the earth-centered earth-fixed (ECEF) coordinate system,
??????????? 3. the local north-east-down (NED) coordinate system,
??????????? 4. the vehicle-carried NED coordinate system, and
??????????? 5. the body coordinate system
? ? ?? 一般我們所研究的小型無(wú)人機(jī),會(huì)做一些簡(jiǎn)化,比如在local NED和body frame之間的轉(zhuǎn)化
將忽略一些次要因素。 實(shí)際上只需要關(guān)注於local NED和body frame系統(tǒng)座標(biāo)係就可以了。
1.2 ? ? 座標(biāo)係介紹
? ? ? ? ? 1.2.1. the geodetic coordinate system
? ? ? ? ? ? ? ? ? ? ? gps導(dǎo)航中廣泛使用的系統(tǒng),其座標(biāo)係表示爲(wèi)P=[? λ, φ,? h]^T,實(shí)際上,因爲(wèi)地球並非一個(gè)規(guī)則的橢球面
????????? 其φ要區(qū)別於以質(zhì)心爲(wèi)中心的一般的φ。
????????? 1.2.2the earth-centered earth-fixed (ECEF) coordinate system
????????????????????? ecef座標(biāo)係與gcs座標(biāo)係關(guān)係緊密,其Z軸選自地球自轉(zhuǎn)軸,X軸從地球中心指向本初子午線方向於赤道相交點(diǎn)
???????? Y軸於Z軸和X軸滿足右手定則,注意,這裏的右手定則非電磁學(xué)右手定則
???????? 1.2.3 local NED
????????????????????? 本地NED,比較重要的座標(biāo)係。以無(wú)人機(jī)起飛點(diǎn)爲(wèi)原點(diǎn),X軸指向地球橢球模型的北極,Y軸指向東,Z軸滿足右手
?????? 定則指向地球表面。其中三個(gè)重要向量P,V,A,下標(biāo)用n表示。(數(shù)學(xué)表達(dá)式不知道怎麼打入,就不表示了,關(guān)鍵的會(huì)截圖出來(lái))
??????? 1.2.4 vehicle-carried NED
????????????????????? 這個(gè)於localNED非常相似,但是嚴(yán)格上,會(huì)隨著飛行器的動(dòng)作變化而變化,但是因爲(wèi)飛行器的飛行包線非常小,所以
??????? 可以近似機(jī)載NED於本地NED的座標(biāo)軸方向一致
???????? 1.2.5 the body coordinate system
????????????????????? 機(jī)體座標(biāo)係,X軸指向機(jī)體正前方,Y軸機(jī)體正右側(cè),Z軸構(gòu)成右手定則,垂直向下。
????????????????????? 這裏值得注意的是,此時(shí)的速度Vb,加速度ab將是 機(jī)體相對(duì)本地NED座標(biāo)係的Vnb,anb到機(jī)體座標(biāo)係的投影!
????????????????????? 註:這段的原版英文就不貼出來(lái),我翻閱了很多資料,我認(rèn)爲(wèi)這樣的翻譯是最正確的,有些中文解釋,並未暗示處這層關(guān)係
????????
?二: 座標(biāo)係變換
????????? 2.1 概述
???????????????? 兩個(gè)笛卡爾座標(biāo)係之間,可以通過(guò)3次連續(xù)的歐拉旋轉(zhuǎn)相互得到。歐拉角分爲(wèi)3個(gè),yaw,pitch,roll且兩個(gè)座標(biāo)係的變化也是按照
????????? 這樣的順尋。而對(duì)於無(wú)人機(jī)主要關(guān)心的也是local ned和vechicle body之間的轉(zhuǎn)換。
????????? 問(wèn)題二:爲(wèi)什麼需要將本地ned和機(jī)體座標(biāo)係之間相互轉(zhuǎn)換?
? ? ? ? ? ? ???? 角速度是相對(duì)兩個(gè)座標(biāo)係而言,這裏有更詳細(xì)的論述,但是頗爲(wèi)抽象
? ? ? ? ? ? ? ? ? ???????????
????????? 2.2 旋轉(zhuǎn)過(guò)程
?????????????? ? 簡(jiǎn)單來(lái)說(shuō),是本地NED向機(jī)體座標(biāo)係的靠攏,先讓Xn軸趨近Xb,而作出的旋轉(zhuǎn)都是以轉(zhuǎn)置座標(biāo)係的另一個(gè)成右手定則的軸爲(wèi)基準(zhǔn)。
????????? 最後經(jīng)過(guò)經(jīng)過(guò)三次變換得到機(jī)體座標(biāo)係。用手比劃一下也能明白。
????????????????
?????????????????? 從數(shù)學(xué)上表示爲(wèi)
?????????????????
? ? ? ?? ? 2.3座標(biāo)變換
???? ? ? ? ? ? ? ? ? ? ? 這裏主要著重於機(jī)載NED座標(biāo)和機(jī)體座標(biāo)的變換
?????
????? ? ? ? ? ? ? ? ? ? ?? 其中爲(wèi)了節(jié)省時(shí)間,並不需要驗(yàn)證公式怎麼來(lái)的,直接當(dāng)定理來(lái)用,直接上頗爲(wèi)重要的概念是角速度的概念
?????????
???????????????? ? ? ? ?? 這裏面著重兩點(diǎn),第一 頭上帶點(diǎn)的量此時(shí)不同於座標(biāo)轉(zhuǎn)動(dòng)量,第二此時(shí)是角速度(機(jī)體相對(duì)於機(jī)載NED)向機(jī)體座標(biāo)係的轉(zhuǎn)化,
? ? ? ? ? ? ? ? ? ? 且向機(jī)體座標(biāo)係 的投影。
?????????????????????????? 問(wèn)題二:這些概念非常抽象,這樣轉(zhuǎn)化的目的,和作用?
三:其他知識(shí)
? ? ? ? ? ?? 3.1 四元數(shù)的概念
? ? ? ? ? ? ? ? ? ? ? ? ? 四元數(shù) 作爲(wèi)一種數(shù)學(xué)衍生物,將空間的座標(biāo)p,拓展成p=(v,0)的形式,實(shí)際上來(lái)源於四元數(shù)的定義,p=xi+yk+zj+w,其
? ? ? ? ? ? ? ? ? 中關(guān)於一個(gè)座標(biāo)繞一個(gè)向量旋轉(zhuǎn)b的角度,那麼 新的座標(biāo)p'=qpq*,且q有固定的表達(dá)式。 以下取自維基百科:
? ? ? ? ? ? ? ? ? ? ? ????Definition:As a set, the quaternions...............
? ? ? ? ? ? ? ? ? ? ? ? ??大意: 四元數(shù)定義在四維空間上,三種運(yùn)算:加,標(biāo)量機(jī)和四元數(shù)乘機(jī),四元數(shù)的由4個(gè)基本部分組成a1 +bi +cj + dk,簡(jiǎn)寫(xiě)
? ? ? ? ? ? ? ? ? ?a +bi +cj + dk,這樣四元數(shù)的乘機(jī)可以由這些元素的組合,再利用分配律得到。
????????????????????? ?? 以下節(jié)選自百度百科:
? ? ? ? ? ? ? ? ? ? ? ? ?四元數(shù)是簡(jiǎn)單的超復(fù)數(shù)。復(fù)數(shù)是由實(shí)數(shù)加上虛數(shù)單位 i 組成,其中i^2 = -1。相似地,四元數(shù)都是由實(shí)數(shù)加上三個(gè)虛數(shù)單位 i、
? ? ? ? ? ? ? ? ? ?j、k 組成,而且它們有如下的關(guān)系:?i^2 = j^2 = k^2 = -1,i^0 = j^0 = k^0 = 1 , 每個(gè)四元數(shù)都是 1、i、j 和 k 的線性組合,即
? ? ? ? ? ? ? ? ? 四元數(shù)一般可表示為a + bk+ cj + di,其中a、b、c 、d是實(shí)數(shù)。
? ? ? ? ? ? ? ? ? ? ? ? 這裏我對(duì)第一個(gè)規(guī)則產(chǎn)生了興趣,爲(wèi)什麼?i^2 = j^2 = k^2 = -1
? ? ? ? ? ? ? ? ? ? ? ? 實(shí)際上這也是四元數(shù)的偉大開(kāi)端
? ? ? ? ? ? ? ? ? ? ? ? Hamilton was on his way to theRoyal Irish Academy with his wife and as he was passing over the Royal Canal on the
? ? ? ? ? ? ? ? ??Brougham Bridge he made a dramatic?realization that he immediately carved into the stone of the bridge.hamilton
? ? ? ? ? ? ? ? ? 在石橋上刻的也就是上面這個(gè)等式
? ? ? ? ? ? ? ? ? ? ? ?x
? ? ? ? ? ? ? ? ? ? ? 如果假設(shè)我們以第一個(gè)準(zhǔn)則爲(wèi)基礎(chǔ),從-1=ijk到能推導(dǎo)處上面6個(gè)衍生公式。當(dāng)然這些都是數(shù)學(xué)上的理解,未從空間上理解。?四元
? ? ? ? ? ? ? ? 數(shù)作爲(wèi)一個(gè)數(shù)學(xué)產(chǎn)物,有 他的嚴(yán)格證明。至於無(wú)人機(jī)方面的使用,只是它的一個(gè)應(yīng)用,我這裏推薦一篇文章,完整講述了四元數(shù),而
? ? ? ? ? ? ? ?且給出了證明和推導(dǎo)但是是英文版,有時(shí)間做個(gè)翻譯,寫(xiě)的非常好。歐拉角有它固有的缺陷,不論怎麼樣的次序組合都有有萬(wàn)向節(jié)死
? ? ? ? ? ? ? ?鎖,也叫奇異現(xiàn)象。解決的方式就是使用四元數(shù)規(guī)避萬(wàn)向節(jié)。下慢的鏈接很詳細(xì),我自己也沒(méi)必要再推導(dǎo)了。一篇非常好的文章,雖
? ? ? ? ? ? ? ?然是英文:https://www.3dgep.com/understanding-quaternions/#Pure_Quaternions
??????????
? ? ? ? ? ??問(wèn)題三:關(guān)於上面網(wǎng)站的證明,最後的例子,繞著q的vector旋轉(zhuǎn)爲(wèi)什麼結(jié)果是90度?作者只是一筆概括
? ? ? ? ? ? ? ? ? ? ?而旋轉(zhuǎn)的角度該怎麼得出來(lái)呢?
? ? ? ? ? ? ?答 :我能立馬想到的證明方式是只要證明p此時(shí)和q構(gòu)成的平面,於p‘和q構(gòu)成的平面是垂直關(guān)係,則證明旋轉(zhuǎn)角度爲(wèi)90’,另外一種方式就是證明
? ? ? ? ? ? ? ?p和p'的向量,在過(guò)遠(yuǎn)點(diǎn)的垂直於旋轉(zhuǎn)軸的平面的垂直投影的夾角就是旋轉(zhuǎn)角度。註:如果只是去計(jì)算p於 p'的夾角,此時(shí)得到不是旋轉(zhuǎn)角度。
?四:算法截取
???????? 留空,以後解析pixhawk會(huì)填充總結(jié)
以上是生活随笔為你收集整理的pixhawk篇之坐标系转化,相关转化矩阵知识,算法截取的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: GPS坐标转换
- 下一篇: 深入浅出无人机姿态,欧拉角,四元数,指数