旋转矩阵R 的构成过程(欧拉角的各种表示方法)

来源:互联网 发布:海康门禁软件 编辑:程序博客网 时间:2024/06/10 01:08

旋转矩阵R 的构成过程

     坐标旋转矩阵R构成过程为:首先将坐标轴绕X轴逆时针旋转φ,得旋转矩阵RX;再将坐标轴绕新的Y轴逆时针旋转ψ,得旋转矩阵RY,最后将坐标轴绕新的Z轴逆时针旋转θ,得旋转矩阵RZ;将以上3次旋转合并即可得坐标旋转矩阵R。

其中:

旋转(出自维基百科)

主条目:Tait-Bryan

生成旋转矩阵的一种简单方式是把它作为三个基本旋转的序列复合。关于右手笛卡尔坐标系的x-, y- 和z-轴的旋转分别叫做 pitch, yawroll 旋转。因为这些旋转被表达为关于一个轴的旋转,它们的生成元很容易表达。

  • x-轴的主动旋转定义为:

这里的 是 roll 角。

  • y-轴的主动旋转定义为:
  •                     

这里的 是 pitch 角。

                                  
  • z-轴的主动旋转定义为:

这里的 是 yaw 角。

下边是常用的几种形式:

形式1:先绕   X,再绕Y,再绕Z,即X-Y-Z型

R1=RzRyRx   1-2-3

[ cosy*cosz,  cosz*sinx*siny - cosx*sinz, sinx*sinz +cosx*cosz*siny]

[ cosy*sinz, cosx*cosz + sinx*siny*sinz,   cosx*siny*sinz - cosz*sinx]

[    -siny,                                cosy*sinx,                                     cosx*cosy]

·        形式2:Yaw(偏航):欧拉角向量的y

·                   Pitch(俯仰):欧拉角向量的x

·                   Roll(翻滚): 欧拉角向量的z

想象一下飞机,yaw指水平方向的机头指向,它绕y轴旋转。Pitch指与水平方向的夹角,绕x轴旋转。Roll指飞机的翻滚,绕z轴旋转。

Y-Z-X型  1-3-2

R2=RxRzRy

[cosy*cosz,              -sinz,                  cosz*siny]

[ sinx*siny +cosx*cosy*sinz, cosx*cosz, cosx*siny*sinz - cosy*sinx]

[ cosy*sinx*sinz -cosx*siny, cosz*sinx, cosx*cosy + sinx*siny*sinz]

形式三:出自维基百科

在三维空间中,旋转可以通过三个欧拉角 来定义。有一些可能的欧拉角定义,每个都可以依据 roll, pitch 和 yaw 的复合来表达。依据 "z-x-z" 欧拉角,在右手笛卡尔坐标中的主动旋转矩阵可表达为:

进行乘法运算生成:

3 Z-X-Z  R4=RzRxRz  3-1-3

R3=Rz(r)RxRz(y)

[ cosz_ya*cosz_ro -cosx*sinz_ya*sinz_ro, - cosz_ya*sinz_ro - cosx*cosz_ro*sinz_ya,  sinx*sinz_ya]

[ cosz_ro*sinz_ya +cosx*cosz_ya*sinz_ro,   cosx*cosz_ya*cosz_ro- sinz_ya*sinz_ro, -cosz_ya*sinx]

[sinx*sinz_ro,                                               cosz_ro*sinx,                                                                        cosx]

 

4 Y-X-Z  R4=RzRxRy  2-1-3

[ cosy*cosz -sinx*siny*sinz, -cosx*sinz, cosz*siny + cosy*sinx*sinz]

[ cosy*sinz +cosz*sinx*siny,  cosx*cosz, siny*sinz -cosy*cosz*sinx]

[-cosx*siny,            sinx,                  cosx*cosy]


0 0
原创粉丝点击