万向节死锁_欧拉角的奇异问题和万向节死锁问题,会对实际的哪些应用带来什么问题?...
謝邀,這個問題打算認(rèn)真回答一次,所以要準(zhǔn)備準(zhǔn)備,先留個爪子,后面娓娓道來,先簡單點(diǎn)的說幾句,起個頭:
1.俯仰角90°的這個問題,又或者有時候我們稱呼為橫滾角,我一般會用橫滾角說超過90°,這是依據(jù)實(shí)際應(yīng)用的場景來定的,沒有什么特定含義,但是注意歐拉角不光是角度的函數(shù),還是順序的函數(shù),這個概念要很清晰;
2.萬向節(jié)死鎖的問題可以這樣考慮:我們?yōu)槭裁聪矚g使用笛卡爾坐標(biāo)系,因?yàn)槿齻€軸都是基,在線性代數(shù)和空間幾何中,三組正交基可以表示出空間的任意一個向量,而一定要正交基嗎?不一定,線性代數(shù)告訴我們只要線性無關(guān)就可以了,也就是三個基向量構(gòu)成的矩陣滿秩就ok了,不正交,充其量就是基之間耦合多一點(diǎn),但是如果萬向節(jié)死鎖了,意味著什么,三個基向量就線性相關(guān)了啊,這樣他們就不能表示空間的任意向量了啊,這必然就是限制了一些場景了啊,這時候這3個基構(gòu)成的矩陣行列式秩為2,也只能表示平面內(nèi)的任意向量了,自由度丟失了一個了;
/************************************to be continued****************************/
20180329
今天有點(diǎn)時間,所以繼續(xù)來更新一點(diǎn);
題者的問題在于歐拉角奇異和萬向節(jié)鎖死問題對實(shí)際問題應(yīng)用帶來什么影響,所以我打算分兩個部分來講講,今天先講歐拉角奇異的問題的影響
歐拉角奇異:
說到歐拉角奇異,這個問題應(yīng)該很多人都知道,我這里先講一下姿態(tài)解算,首先明確一點(diǎn),姿態(tài)解算只需要陀螺儀就夠了,我們常常見到的加速度計(jì),那只是修正,
ok,這里說到只要陀螺儀就夠了,那么我們是怎么用陀螺儀計(jì)算的呢?這里有個概念是body系,陀螺儀出來的轉(zhuǎn)軸速率的數(shù)據(jù)肯定都是body系里面的,而我們計(jì)算的姿態(tài)角,其實(shí)說白了就是一個旋轉(zhuǎn)矩陣,表示從最最開始的狀態(tài)旋轉(zhuǎn)到當(dāng)前的狀態(tài)所進(jìn)行的旋轉(zhuǎn);三維空間的旋轉(zhuǎn),肯定是一個三階矩陣了啊,對比的是二維平面的旋轉(zhuǎn),使用的是一個二階矩陣了,比如下圖,平面內(nèi)的旋轉(zhuǎn):(這里直接截圖了別人的博客了,csxiaoshui)
看這里的這個二維的矩陣就是一個向量在平面內(nèi)的旋轉(zhuǎn),那么向量在空間的旋轉(zhuǎn)可以怎么做呢,旋轉(zhuǎn)矩陣啊親,至于涉及到了這里三維比較麻煩,這里不列出來了,
那么大家會有疑問了,這個旋轉(zhuǎn)矩陣和陀螺儀的速率有什么關(guān)系呢?
這里有大大的關(guān)系了,大家可以初步的想一想,body上面有一個陀螺儀,從最最開始的狀態(tài)不動,陀螺儀的速率都是0(假設(shè)理想陀螺儀),我們動起來轉(zhuǎn)動翻轉(zhuǎn)這個body,陀螺儀都能記錄出數(shù)據(jù)來,這個數(shù)據(jù)完全理論上可以記錄出來我們的body在空間旋轉(zhuǎn)的軌跡啊,但是這個要怎么表現(xiàn)出來呢?
先給出回答,我們有四元數(shù)表示,歐拉角表示,方向余弦表示;
回到歐拉角這個問題上,回答這個問題我們要考慮空間旋轉(zhuǎn)怎么用矩陣表示,剛剛說了二維矩陣表示平面的旋轉(zhuǎn),如果給矩陣擴(kuò)充到三維,多余的元素都是填0會怎么樣呢,這不就表示了一個三維空間旋轉(zhuǎn)里面的一個特例-------平面的旋轉(zhuǎn),那么接著問題來了,我們比如先在我們?nèi)苏局目臻g里面定義一個xyz坐標(biāo)系,這個我們稱呼為世界坐標(biāo)系,先在xy平面里面旋轉(zhuǎn)可以有一個矩陣啊即繞z軸,再xz平面內(nèi)旋轉(zhuǎn)即繞y軸,再在zy平面內(nèi)旋轉(zhuǎn)即繞x軸,這就轉(zhuǎn)了三次了,三次的矩陣如何操作呢,不斷的左乘啊(這里左乘是數(shù)學(xué)上定義的問題,旋轉(zhuǎn)矩陣都左乘,其實(shí)右乘也可以的,另外一套數(shù)學(xué)體系了)
好啦,這就導(dǎo)出了zyx順序旋轉(zhuǎn)的旋轉(zhuǎn)矩陣了,這個還有一個名字就是歐拉角旋轉(zhuǎn)矩陣呢,這個矩陣和陀螺儀的速率又有什么關(guān)系呢?
好了,回到數(shù)學(xué)問題了,我們要解這個旋轉(zhuǎn)矩陣,顯然我們沒有這個旋轉(zhuǎn)矩陣的呢(有了還解什么啊)但是怎么解這個矩陣呢?
我們看把這個旋轉(zhuǎn)矩陣對時間求導(dǎo),會得到什么啊,驚奇的發(fā)現(xiàn)其實(shí)得到了一個微分方程,微分方程里面有旋轉(zhuǎn)矩陣,還有角度關(guān)于時間的導(dǎo)數(shù)矩陣,也就是陀螺儀角速度組成的矩陣,其實(shí)就是我們得到了一個微分方程,其中微分方程里面的一些高階項(xiàng)是陀螺儀速率,于是乎我們解方程就好了,數(shù)值解法很多,一階龍格庫塔,二階,三階,四階,,,,都可以 啊,感興趣的推薦他看 彥慶清 的數(shù)值分析去把。。。。
同理四元數(shù)的旋轉(zhuǎn)矩陣也是解四元素旋轉(zhuǎn)矩陣微分方程,陀螺儀的速率可以構(gòu)成方程里面的一部分
方向余弦也是一樣啦;
今天先更新到這
/************************************to be continued****************************/
2018.05.25更新
最近又寫了一篇加速度計(jì)的橢球校準(zhǔn),c代碼,直接可以移植到片上系統(tǒng)的,
原因其實(shí)就是姿態(tài)解算中不可避免要用到加速度計(jì),但是加速度計(jì)又有橢球效應(yīng),
說起來就是x,y,z軸的零飄不一樣,比例尺不一樣,
零飄說起來就是,東西沒受到重力,還有數(shù)值,比如xy軸和重力垂直,但是測出來數(shù)據(jù)10了,這就是0飄,
比例尺就是說,比如重力應(yīng)該是4096,它z軸卻測出來了3000,那是不是要個比例尺去修正一下它
上面的新主題就是在說這個問題,怎么在片上系統(tǒng)用c代碼做的在線橢球擬合,反正不用天天做,慢點(diǎn)也沒關(guān)系,為了方便看懂,這里用了double變量,實(shí)測40960個數(shù)據(jù)都可以擬合出來,所以基本沒問題了, 不像網(wǎng)上很多分享的代碼還有問題
總結(jié)
以上是生活随笔為你收集整理的万向节死锁_欧拉角的奇异问题和万向节死锁问题,会对实际的哪些应用带来什么问题?...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 多媒体计算机技术在教学中的应用,多媒体计
- 下一篇: 会声会影2022版本软件下载安装使用激活