欧拉角完全攻略:彻底搞懂机器人姿态表示
机器人姿态让人头秃?欧拉角绕晕无数工程师。这份入门指南用飞机模型+RoboDK实操,带你从懵圈到精通。
为什么姿态这么难?
位置[X,Y,Z]直观唯一,但姿态同一状态有无数表示:
Rot[XYZ] = [5, 45, 15]° Rot[XY'Z''] = [-7.9, 44.7, 16.2]° Rot[ZY'Z''] = [7.9, 45.2, 5.0]° Quaternion = [0.9, -0.1, 0.4, 0.1]
全等价!且每家厂商约定不同(Stäubli XY'Z''、KUKA ZY'X''、Fanuc XYZ、ABB四元数、UR旋转向量)。
根因:人类不擅长思考旋转
日常用平移语言("第二层左四"),姿态只能指方向说"那边"。机器人要精确数值,必须建立旋转直觉。
欧拉角本质
三个绕轴旋转角,顺序不同形成不同约定(如XYZ、ZYX、ZYZ等)。先从单轴入手:
指南针=绕Z轴旋转。平持指针135°=面向东南。位置变不变,角度不变。
3D姿态需三次旋转,顺序至关重要。
动手实验:RoboDK可视化姿态
- 下载RoboDK免费版
- 添加参考坐标系,出现RGB三轴
- 按Alt+拖拽曲线箭头旋转
- 双击坐标系名打开"坐标系详情"面板
飞机模型建立旋转直觉

红轴=机头(X),绿轴=左翼(Y),蓝轴=天空(Z)。
- 红曲线箭头 = Roll(横滚/绕X)
- 绿曲线箭头 = Pitch(俯仰/绕Y)
- 蓝曲线箭头 = Yaw(偏航/绕Z)
左转下降:Pitch↓ → Roll左 → Yaw左。在RoboDK反复操作直到肌肉记忆形成。
同一姿态,多组欧拉角
实验:将蓝轴朝下、红轴朝后(绿轴不变),三种方式达成:
- 仅绕Y轴旋转 → Rot[Y]
- 先绕Z后绕新X → Rot[Z, X']
- 先绕X后绕新Z → Rot[X, Z']

这就是欧拉角多解性本质:旋转序列不同,中间坐标系随之变化('表示相对上一步坐标系)。
厂商约定速查

- Stäubli: X→Y'→Z''
- Adept: Z→Y'→Z''
- KUKA: Z→Y'→X''
- Fanuc/Motoman: X→Y→Z
- ABB: 四元数
- UR: 旋转向量
RoboDK下拉菜单可切换约定,输入数值即时预览姿态。深度教程见Mecademic欧拉角页与RoboDK文档。
工业机器人