目录
一、 RPY角度
1.1、X-Y-Z固定角[1]
首先将坐标系{B}和一个已知参考坐标系{A}重合。先将{B}绕旋转γ角,在绕旋转β角,在绕旋转α角,每次旋转都是绕着固定参考坐标系{A}的轴。如图1所示。
同时将γ角、β角和α角成为偏转角(yaw)、俯仰角(pitch)和回转角(roll)。
图1
1.2、滚动角、俯仰角和偏航角[2]
旋转按照x-y-z的顺序进行,首先绕轴偏航角度,接下来绕轴俯仰角度,最后绕轴滚动角度。滚动(roll)、俯仰(pitch)、偏航(yaw)。 如图2所示。
图2
1.3、绕固定轴x-y-z旋转(RPY角度)[3]
RPY角是描述船舶在海中航行时姿态的一种方法。将船的行驶方向取为z轴的方向,则绕z轴的旋转(α角)称为回转(roll),绕y轴的旋转(β角)称为俯仰(pitch),绕x轴的旋转(γ角)称为偏转(yaw)。如图3所示。
备注:船舶在海中航行时姿态是相对于固定坐标系,所以,xyz称为固定角。xyz与左乘顺序有关。
图3
1.4、RPY角[4]
RPY角也可以描述飞行器姿态的典型改变。ZYX角也称为滚动-俯仰-偏航角。如图4所示。
备注:飞行器姿态是相对于当前坐标系的描述。所以称ZYX角称为欧拉角。ZYX与右乘顺序有关。
图4
总结:
(1)、1.1、1.2和1.3是当对于固定坐标系xyz描述的RPY角。
(2)、1.4是相对于欧拉角zyx描述的RPY角。但是他们最终的结果是一样的。
(3)、滚转、俯仰和偏航效果图[5]
二、左乘与右乘
(1)、当两个坐标系原点重合,矢量描述由坐标系{B}变换到坐标系{A}时,如果A为固定坐标系时,我们仅需要左乘旋转矩阵即可
备注:左乘可以理解为先进行括号里面的,更新完坐标系后,在进行下一次变换
(2)、矢量描述由坐标系{D}变换到坐标系{U}时。此时需要根据坐标系变换方程来进行变换。坐标系{D}可以通过两种形式来表达变换。如图5所示。
第一种
第二种
变换方程
或
备注:右乘可以理解为多次变换可以计算完成后,在进行坐标系变换。
图5
三、xyz固定角和zyx欧拉角旋转矩阵等价
当xyz固定角时,先绕哪个轴就先在坐标系左侧乘旋转矩阵进行变换。
当zyx欧拉角时,因为坐标系姿态变换为右乘,同时可以先完成变换,在左乘坐标系进行变换。
所以,xyz固定角和zyx欧拉角旋转矩阵等价。旋转矩阵如图6所示。
图6
四、参考文献
[1].机器人学导论(原书第四版)
[2].机器人建模和控制
[3].机器人学建模、控制和视觉(第2版).熊有伦、李文龙
[4].机器人学建模、规划和控制
[5].人脸姿态检测:RPY角与Z-Y-X欧拉角_人脸俯仰角检测-CSDN博客
五、题外话
(1)、由于自己最开始看的就是《机器人学导论》这本书,刚开始看到RPY角的时候误认为xyz对应的就是回转、俯仰和偏航,同时这本书也没对这个具体对应做个说明,导致看其他书一直没扭转过来这个默认概念。
(2)、《机器人建模和控制》这本书中,绕轴旋转的姿态描述和图片、固定坐标系旋转和欧拉角下旋转不同,我误认为绕轴旋转的姿态描述为正确的,也就是xyz对应回转、俯仰和偏航,这样与《机器人学导论》初始默认相同,而图片、固定坐标系旋转和欧拉角下旋转描述为错误的。
(3)、直到看到熊有伦主编的《机器人学建模、控制和视觉(第2版)》这本书时,才恍然大悟,原来RPY角对应的是zyx,同时学习到船舶在航海中姿态采用固定坐标系xyz下的RPY角。
(4)、在《机器人学建模、规划和控制》也学习到采用当前坐标系描述飞行器姿态,即欧拉角zyx下的RPY角。
通过反复阅读以上四本书对于RPY角的讲解,才找到最终答案。在解惑那一刻,我感受到误区有时候来自于自己认知的欠缺,同时也证明了一点,只有通过反复寻找答案,才能拨开眼前的迷雾。
六、 总结
(1)、需要跳出xyz的干扰,前进方向为滚转(回转)、竖直方向(偏航)、右侧方向(俯仰),所以我们只要确定是哪个轴为前进方向,剩下的就容易判断了。------2024.9.26