旋转矩阵乘积顺序
问题
给定一个初始旋转矩阵 R 1 R_{1} R1,绕向量 r 旋转 θ \theta θ度,即旋转矩阵 R 2 R_{2} R2,最终得到旋转矩阵 R 3 R_{3} R3,那么,该是 R 3 = R 2 R 1 R_{3}=R_{2}R_{1} R3=R2R1 还是 R 3 = R 1 R 2 R_{3}=R_{1}R_{2} R3=R1R2 呢?
旋转矩阵的乘积顺序分两种情况
- 固定坐标系:每次旋转都根据同一坐标系旋转,左乘单个旋转矩阵. 典型代表:RPY角
- 非固定坐标系:每次旋转都根据上一次旋转后的坐标系旋转,右乘单个旋转矩阵. 典型代表:ZYZ角
固定坐标系例子
比如,以固定轴的顺序ZYX旋转三次,角度分别为: α 1 = − π 2 \alpha_{1}=-\frac{\pi}{2} α1=−2π, α 2 = − π 4 \alpha_{2}=-\frac{\pi}{4} α2=−4π, α 3 = π 4 \alpha_{3}=\frac{\pi}{4} α3=4π, 求最终的旋转矩阵.
解答:
R
Z
(
−
π
2
)
=
(
0
1
0
−
1
0
0
0
0
1
)
R_{Z}(-\frac{\pi}{2})=\left( \begin{matrix} 0 & 1 & 0 \\ -1 & 0 & 0 \\ 0 & 0 & 1 \end{matrix} \right)
RZ(−2π)=⎝⎛0−10100001⎠⎞
R
Y
(
−
π
4
)
=
(
1
/
2
0
−
1
/
2
0
1
0
1
/
2
0
1
/
2
)
R_{Y}(-\frac{\pi}{4})=\left( \begin{matrix} 1/\sqrt{2} & 0 & -1/\sqrt{2} \\ 0 & 1 & 0 \\ 1/\sqrt{2} & 0 & 1/\sqrt{2} \end{matrix} \right)
RY(−4π)=⎝⎛1/201/2010−1/201/2⎠⎞
R
X
(
π
4
)
=
(
1
0
0
0
1
/
2
−
1
/
2
0
1
/
2
1
/
2
)
R_{X}(\frac{\pi}{4})=\left( \begin{matrix} 1 & 0 & 0 \\ 0 & 1/\sqrt{2} & -1/\sqrt{2} \\ 0 & 1/\sqrt{2} & 1/\sqrt{2} \end{matrix} \right)
RX(4π)=⎝⎛10001/21/20−1/21/2⎠⎞
最终旋转矩阵为:
R
=
R
X
R
Y
R
Z
=
(
0
1
/
2
−
1
/
2
−
1
/
2
−
0.5
−
0.5
−
1
/
2
0.5
0.5
)
R=R_{X}R_{Y}R_{Z}=\left( \begin{matrix} 0 & 1/\sqrt{2} & -1/\sqrt{2} \\ -1/\sqrt{2} & -0.5 & -0.5 \\ -1/\sqrt{2} & 0.5 & 0.5 \end{matrix} \right)
R=RXRYRZ=⎝⎛0−1/2−1/21/2−0.50.5−1/2−0.50.5⎠⎞
非固定坐标系例子
如果是绕ZY‘X’‘旋转的话,最终旋转矩阵就是: R = R Z R Y ′ R X ′ ′ R=R_{Z}R_{Y'}R_{X''} R=RZRY′RX′′