HCRbot 系列 9──控制 HCRbot 机器人绘制平面地图(SLAM)

2017-11-182万
精华项目
AI 快速预览详细 收起
本文介绍了如何使用HCRbot机器人绘制室内平面地图。首先,确保已经学习了前几章的内容并启动了HCRbot机器人。然后,可以通过键盘或Xbox Joystick控制HCRbot机器人运动,并使用激光雷达RPLIDAR或Xbox 360 Kinect/RealSense R200摄像头进行绘图。最后,保存生成的地图。通过本教程,你可以轻松完成室内平面地图的绘制,为下一步的自动导航做准备。

这是 HCRbot 机器人的第 9 篇,这一章节主要介绍如何控制 HCRbot 绘制室内平面地图来做 SLAM。前面 8 篇讲了那么多废话,这一章开始,终于到了激动人心检验自己劳动成果的时候了!

下面是目前已经写好的所有篇章链接:

通过上一篇章,相信你已经会远程控制 HCRbot 机器人运动了,这一章将会用到之前学过的知识,远程控制 HCRbot 机器人在房间内运动,同时 HCRbot 机器人根据传感器“看到”的场景,将房间内的地图绘制下来,为下一章自动导航做准备。

启动 HCRbot 机器人

请确保你已经学习了上一章节 【HCRbot 系列 7──启动 HCRbot 机器人】 章节相关内容,那么根据上一章节的内容启动 HCRbot 机器人吧。

运动控制

你可以使用键盘或者 Xbox Joystick 来控制 HCRbot 机器人绘制房间平面二维地图。

【Remote PC】 用 Xbox Joystick (Xbox 手柄)遥控 HCRbot 机器人运动建图(推荐):
roslaunch hcr_teleop xbox360_teleop.launch

当然,如果你没有 Xbox Joystick 的话,也可以用电脑上的键盘:

【Remote PC】 用键盘遥控 HCRbot 运动建图:
roslaunch hcr_teleop keyboard_teleop.launch

使用激光雷达 RPLIDAR 绘图

如果使用 RPLIDAR A1/A2 做房间平面地图绘制,请编辑 .bashrc 文件,修改 HCR_LASER_SENSOR 参数为 rplidar,如下图:
HCRbot 系列 9──控制 HCRbot 机器人绘制平面地图(SLAM)图1

【HCRbot 机器人】 ssh 进入 HCRbot 机器人,运行:
roslaunch hcr_nav hcr_laser_slam.launch

【Remote PC】 在远程主机上打开 Rviz 可视化界面:
roslaunch hcr_nav slam_view.launch

然后用键盘或者 Xbox Joystick 控制 HCRbot 运动,建图:

HCRbot 系列 9──控制 HCRbot 机器人绘制平面地图(SLAM)图2
【HCRbot 机器人】 ssh 进入 HCRbot 机器人,保存地图:
rosrun map_server map_saver -f ~/map

下面是演示效果:
HCRbot 系列 9──控制 HCRbot 机器人绘制平面地图(SLAM)图3
大家也可以访问下面的网址,查看视频版本,保证更加动感更加酷炫:





使用 Xbox 360 Kinect 或 RealSense R200 摄像头建图

如果使用 Xbox 360 Kinect 做SLAM,请编辑 .bashrc 文件,修改 HCR_3D_SENSOR 参数为 kinect ,如下图:
HCRbot 系列 9──控制 HCRbot 机器人绘制平面地图(SLAM)图4
如果使用 RealSense R200 做 SLAM,请编辑 .bashrc 文件,修改 HCR_3D_SENSOR 参数为 r200 即可,这里就不贴图了(我才不会告诉你是我忘记截图了呢)。

【HCRbot 机器人】 ssh 进入 HCRbot 机器人,运行:
roslaunch hcr_nav hcr_3dsensor_slam.launch

【Remote PC】 在远程主机上打开 Rviz 可视化界面:
roslaunch hcr_nav slam_view.launch

【HCRbot】 ssh 进入 HCRbot 机器人,保存地图:
rosrun map_server map_saver -f ~/map_3dsensor

最后的演示效果和激光雷达差不多,原谅我再次忘记拍视频了……

后记

你要是对 ROS 有一定了解,或者感兴趣的话,还可以试试 Hector Mapping 和 Google Cartographer 等各种绘制平面二维地图的算法~

如果有大神做好的话,欢迎在评论里po上步骤和演示视频哈~(实际上我又偷懒了哈哈哈)

创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(9)
20060606
20060606
这个平台载重多少
Rich666
Rich666
666666666666
2363865990
2363865990
学习了!!!非常厉害!!!!
liqi5230
liqi5230

东西很棒 学习了
王正尧
王正尧
666厉害啦厉害啦厉害啦厉害啦666
细颗粒物
细颗粒物
厉害
#嘉诚欧巴#
#嘉诚欧巴#
膜拜一波。。。绘制地图的算法不简单!
铁熊
铁熊
作者
回复#嘉诚欧巴#
绘制地图的算法在ROS平台都有开源的~
gray6666
gray6666
黑科技。。。。。。。。。。。
胡秩通123
胡秩通123
厉害了!!!
- 没有更多了 -