1.配置gmapping以及hokuyo。先说hokuyo吧,不知道别的turtlebot是什么情况,我们实验室的是自己在上面固定了一个从别的机器人上拆下来的turtlebot,然后按照创客智造的教程就装不上驱动,后来找到了解决办法。
先按照教程创建工作空间:创客智造,不同点如下:
下载driver_common包
$ git clone https://github.com/ros-drivers/driver_common.git
下载turtlebot建图依赖包
$ git clone https://github.com/turtlebot/turtlebot_apps
然后catkin_make一下
下载激光雷达Hokuyo node驱动(这个一定最后放进去)
$ git clone https://github.com/ncnynl/hokuyo_node
再下面的配置就和教程的一样了。
先说下启动命令
roslaunch turtlebot_bringup minimal.launch
roslaunch turtlebot_navigation hokuyo_gmapping_demo.launch
roslaunch turtlebot_rviz_launchers view_navigation.launch
roslaunch turtlebot_teleop keyboard_teleop.launch
正常的话这样就可以了,就可以执行命令保存地图了:
$ mkdir -p ~/map
$ rosrun map_server map_saver -f ~/map/hokuyo_gmapping
$ ls ~/map #查看内容,包含hokuyo_gmapping.pgm hokuyo_gmapping.yaml
额外的命令:
单独启动激光雷达:
rosrun hokuyo_node hokuyo_node
若发生错误,就输入
lsof|grep /dev/ttyACM0
出现的内容有一串数字比如10667,再输入kill 10667就可以了
2.查看激光数据用
rostopic echo /scan
补充:一种可以在rviz显示激光数据的方法是,先roscore,然后
rosrun hokuyo_node hokuyo_node
rosrun rviz rviz ‐d `rospack find hokuyo_node`/hokuyo_test.vcg
然后需要调试一下rviz才可以,首先在这里:
改为 \laser 然后在下面添加这个:
并把topic改为 \scan就可以了。
再补充:看到一篇turtlebot跟随的文章,觉得有用但还没实现,先贴个地址: