护航

效果展示

界面上有四只小乌龟(或者更多):

  • 小乌龟A,小乌龟B,小乌龟C,小乌龟D
  • 所有小乌龟为小乌龟A进行护航
  • 小乌龟A通过键盘控制移动
  • 护航的位置为小乌龟A的左右和后边

效果分析

  • 界面上需要显示多只小乌龟
  • 小乌龟A通过键盘运动
  • 其他小乌龟通过代码控制来为小乌龟A进行护航

业务实现

坐标系分析

每只小乌龟都有自己的坐标系

每只护航的小乌龟去到的目标是很确定的。

护航小乌龟的目标,对于小乌龟A来说,永远是固定的。

静态坐标关系广播

rosrun tf static_transform_publisher

Note

后面跟了9个参数: x y z yaw pitch roll frame_id child_frame_id period(hz)

  • x y z表示位置
  • yaw pitch roll表示姿态
  • frame_id为参考坐标系,父坐标系
  • child_frame_id为子坐标系
  • period为频率,hz值,表示每秒钟执行几次

命令的含义是,广播相对静态坐标关系,每秒钟广播period次,告诉 tf工具 , child_frame_id子坐标在frame_id父坐标系中的位置为x y z, 姿态为yaw pitch roll.

注意: yaw pitch roll表示的欧拉角,为绕Z轴转动的角度,绕Y轴转动的角度,绕X轴转动的角度。 在这里描述时,为 rz ry rx顺序为z, y, x