歐拉角
旋轉矩陣對於座標系的描述是冗餘的。旋轉矩陣用了9個元素來描述姿態,而事實上,由正交性條件帶來6個約束,這9個元素之間不是獨立的,而是相關的。這就意味着,只要三個參數就能描述一個剛體在空間中的姿態。
(1)X-Y-Z固定角座標系
先將{B}繞{A}的X軸旋轉γ,然後繞{A}的Y軸旋轉β,最後繞{A}的Z軸旋轉α,每個旋轉都是繞着固定參考座標系{A}的軸。
BARXYZ(γ,β,α)=RZ(α)RY(β)RX(γ)=⎣⎡cαcβsαsβ−sβcαsβsγ−sαcγsαsβsγ+cαcγcβsγcαsβcγ+sαsγsαsβcγ−cαsγcβcγ⎦⎤
當已知一個旋轉矩陣,可以通過以下計算其X-Y-Z固定角座標系
BARXYZ(γ,β,α)=⎣⎡r11r21r31r12r22r32r13r23r33⎦⎤
β=Atan2(−r31,r112+r212)α=Atan2(r21/cβ,r11/cβ)γ=Atan2(r32/cβ,r33/cβ)
如果β=±90∘,在這種情況下,僅能求出α和γ的和或差。在這種情況下一般取α=0.0,結果如下:當β=90∘,解得:
β=90∘α=0γ=Atan2(r12,r2)
當β=−90∘,解得:
β=−90∘α=0γ=−Atan2(r12,r2)
(2)Z-Y-X歐拉角
假設開始兩個座標系重合,先將{B}繞自身的Z軸旋轉α,然後繞Y軸旋轉β,最後繞X軸旋轉γ,就能旋轉到當前姿態。稱其爲Z-Y-X歐拉角,由於是繞自身座標軸進行旋轉,則旋轉矩陣爲:
BARZ′Y′X′(γ,β,α)=RZ(α)RY(β)RX(γ)=⎣⎡cαcβsαsβ−sβcαsβsγ−sαcγsαsβsγ+cαcγcβsγcαsβcγ+sαsγsαsβcγ−cαsγcβcγ⎦⎤
由旋轉矩陣得出Z-Y-X歐拉角的方法與上述X-Y-Z固定角座標系計算過程相同,在此不再推導。
軸角
繞空間中某一軸旋轉指定角度,可以採用4個參數進行表示。令r爲關於參考座標系O-xyz的旋轉軸的單位向量。爲了表示繞軸r旋轉角度θ的旋轉矩陣R(θ,r),方便的做法是對繞參考座標系的座標軸的基本旋轉進行合成。
於是發現相應於給定角度和軸的旋轉矩陣爲:
R(θ,r)=⎣⎡rx2(1−cθ)+cθrxry(1−cθ)+rzsθrxrz(1−cθ)−rysθrxry(1−cθ)−rzsθry2(1−cθ)+cθryrz(1−cθ)+rxsθrxrz(1−cθ)+rysθryrz(1−cθ)−rxsθrz2(1−cθ)+cθ⎦⎤
如果需要計算逆解以計算相應於如下給定旋轉矩陣的軸和角度:
R=⎣⎡r11r21r31r12r22r32r13r23r33⎦⎤
θ=arccos(2r11+r22+r33−1)r=2sinθ1⎣⎡r32−r23r13−r31r21−r12⎦⎤
注意:當θ=0或pi單位向量任意是奇異的。
四元數
軸角的表達式的不足可以通過一個不同的四參數表達式加以克服,即單位四元數,定義爲:Q={η,ε},其中:
ε=cos2θε=sin2θr
η2+εx2+εy2+εz2=1
相應於給定四元數的旋轉矩陣有以下形式:
R(θ,r)=⎣⎡2(η2+εx2)−12(εxεy+ηεz)2(εxεz−ηεy)2(εxεy−ηεz)2(η2+εy2)−12(εyεx)2(εxεz+ηεy)2(εyεz−ηεx)2(η2+εz2)−1⎦⎤
如果需要計算逆解以計算相應於如下給定旋轉矩陣的四元數:
R=⎣⎡r11r21r31r12r22r32r13r23r33⎦⎤
ε=21r11+r22+r33+1
ε=⎣⎡sgn(r32−r23)r11−r22−r33+1sgn(r13−r31)r22−r33−r11+1sgn(r21−r12)r33−r11−r22+1⎦⎤
其中,當x≥0時sgn(x)=1;當x<0時,sgn(x)=-1;與軸角逆解相比,沒有奇點現象。