为了快速浏览教程,先从ArbotiX虚拟器开始。具体代码看ros-by-example 1,主要讲述实现过程。
首先要启动一个虚拟的Turtlebot
$ roslaunch rbx1_bringup fake_turtlebot.launch
另一个终端,打开RViz可视化机器人运动
$ rosrun rviz rviz -d `rospack find rbx1_nav`/sim.rviz
一、控制底座
1、直接发布命令
先来看下现有的话题
基控制器节点订阅/cmd_vel话题,类型是geometry_msgs/Twist
然后把Twist消息翻译成发动机信号,使轮子转动。二维平面差速驱动机器人只用到了线速度x和角速度z部分。
$ rostopic pub -r 10 /cmd_vel geometry_msgs/Twist '{linear: {x: 0.1, y:
0, z: 0}, angular: {x: 0, y: 0, z: -0.5}}'
想要机器人停下来,发布空消息即可