旋转矩阵变换的乘积顺序问题—机器人学

  • Post author:
  • Post category:其他




问题

给定一个初始旋转矩阵



R

1

R_{1}







R











1






















,绕向量 r 旋转



θ

\theta






θ





度,即旋转矩阵



R

2

R_{2}







R











2






















,最终得到旋转矩阵



R

3

R_{3}







R











3






















,那么,该是



R

3

=

R

2

R

1

R_{3}=R_{2}R_{1}







R











3





















=









R











2




















R











1






















还是



R

3

=

R

1

R

2

R_{3}=R_{1}R_{2}







R











3





















=









R











1




















R











2






















呢?



旋转矩阵的乘积顺序分两种情况

  • 固定坐标系:每次旋转都根据同一坐标系旋转,

    左乘

    单个旋转矩阵. 典型代表:

    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)







R











Z



















(
















2














π




















)




=
























































0











1








0





























1








0








0





























0








0








1


































































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)







R











Y



















(
















4














π




















)




=
























































1


/










2






























0








1


/










2



















































0








1








0
































1


/










2






























0








1


/










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)







R











X



















(













4














π




















)




=
























































1








0








0





























0








1


/










2






























1


/










2



















































0











1


/










2






























1


/










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




=









R











X




















R











Y




















R











Z





















=
























































0











1


/










2

































1


/










2



















































1


/










2

































0


.


5








0


.


5
































1


/










2

































0


.


5








0


.


5






























































非固定坐标系例子

如果是绕ZY‘X’‘旋转的话,最终旋转矩阵就是:



R

=

R

Z

R

Y

R

X

R=R_{Z}R_{Y’}R_{X”}






R




=









R











Z




















R












Y








































R












X














































版权声明:本文为potato_uncle原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。