[問題] Euler angle 計算已回收
我想請問一個矩陣座標轉換 Euler angle in ZYZ
有一個參考作標 [1 0 0;0 1 0;0 0 1] 設為原點
另一個三維座標,A,經由一個旋轉矩陣(3*3)可轉成和參考座標相同
另一個三維座標,B,可經由另一個旋轉矩陣(3*3)轉成和參考座標相同
我想要問要怎樣算將B三維座標轉成A三圍座標的旋轉矩陣
謝謝
matlab 有一個功能叫dcm2angle
%DCMtoAngle
[alpha, beta, gama] = dcm2angle( H7,'ZYZ' );
radius=[alpha beta gama]
degree=[alpha*180/pi beta*180/pi gama*180/pi]
假設
H7=[ 0.6886977 -0.7250486 0.0000545
0.7250486 0.6886977 -0.0000286
-0.0000168 0.0000592 1.0000000
]
得到radius =
1.8473 0 -2.6583
但我用R(alpha,beta,gama)=Rz(gama)*Ry(beta)*Rz(alpha)
得
x7=atand(H7(3,2)/H7(3,1));
alpha=atan(H7(3,2)/H7(3,1));
beta=atan(H7(3,1)/(H7(3,3)*cos(x7)));
gama=atan(-H7(2,3)/H7(1,3));
EulerAngle7=[alpha beta gama]'
得
EulerAngle7 =
-1.2943 -0.0001 0.4833
為什麼答案不同
若H7=[0 1 0; 1 0 0; 0 0 1]用ZYZ
三個EULER angle是什麼?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 35.10.118.93