在Gazebo的SDF(Simulation Description Format)文件中,<pose>节点中的6个值表示物体的6自由度位姿(位置和方向)。
格式
<pose>x y z roll pitch yaw</pose>6个参数的含义:
位置(前3个值)
- x- X轴坐标(单位:米)
- y- Y轴坐标(单位:米)
- z- Z轴坐标(单位:米)
方向/姿态(后3个值)
- roll- 绕X轴旋转(单位:弧度)
- pitch- 绕Y轴旋转(单位:弧度)
- yaw- 绕Z轴旋转(单位:弧度)
坐标系说明:
- Gazebo使用右手坐标系:
- X轴:向前
- Y轴:向左
- Z轴:向上
- 旋转顺序:固定角(fixed angles)顺序,依次绕X→Y→Z轴旋转
示例:
<!-- 物体位于(1, 2, 0.5)米处,旋转(0, 0, π/2)弧度 --><pose>1 2 0.5 0 0 1.5708</pose><!-- 桌面上的盒子,高度0.5米,无旋转 --><pose>0 0 0.5 0 0 0</pose><!-- 倾斜45度的平面 --><pose>0 0 0 0 0.785 0</pose><!-- pitch=45°=0.785弧度 -->重要提示:
- 默认值:如果不指定,默认为
<pose>0 0 0 0 0 0</pose> - 单位:位置-米,角度-弧度(不是度!)
- 相对性:
<pose>是相对于父坐标系(parent frame)的 - 常用角度换算:
- 90° = 1.5708 弧度
- 180° = 3.1416 弧度
- 45° = 0.7854 弧度
这个位姿定义决定了物体在仿真世界中的初始位置和朝向。