【开箱评测四】用RPLIDAR A2搭建gmapping

2016-12-289900
AI 快速预览详细 收起
本文介绍了如何使用RPLIDAR A2激光雷达和mrobot小车搭建gmapping。首先,配置了硬件环境,包括mrobot小车和RPLIDAR A2激光雷达。接着,下载并编译了rplidar包。为了解决USB端口冲突问题,修改了rplidar.launch文件中的serial_port参数。然后,对mrobot底盘代码进行了修改,添加了TF配置和扫描数据接口。最后,运行mrobot底盘、rplidar雷达和gmapping,成功生成了地图。
以我自己的小车mrobot为例。

1.        硬件环境:
mrobot小车(采用turtlebot create协议,可以用turtlebot)。
rplidar激光雷达。
2.        rplidar包下载
git clone https://github.com/robopeak/rplidar_ros
建立catkin包,编译。

3.        USB端口权限配置
mrobot小车默认串口是ttyUSB0,rplidar默认串口也是ttyUSB0。需要修改USB的权限和端口号。
为了方便,先插上mrobot,识别为ttyUSB0,。再插上rplidar,识别为ttyUSB1。故到rplidar_ros里面,修改rplidar.launch文件。
将:  <param name="serial_port"         type="string" value="/dev/ttyUSB0"/>
改为:  <param name="serial_port"         type="string" value="/dev/ttyUSB1"/>


4.        Mrobot底盘代码修改

4.1        在mrobot的TF上添加rplidar
mrobot的launch文件中添加以下内容:
<node name="base2laser" pkg="tf" type="static_transform_publisher" args="0 0 0 0 0 0 1 /base_link /laser 50"/>
其中args前三个0 0 0,代表mrobot置于baselink的中心坐标上。可以根据rplidar位置改动坐标。


4.2        修改 topic数据接口
mrobot和turtlebot的gmapping数据接口是/odom/scan,不需要修改。
若不一致,添加 <remap from="scan" to="$(arg scan_topic)"/>。将scan映射到scan_topic。


5.        运行
运行mrobot底盘:roslaunch mrobot_bringup mrobot.launch
运行rplidar雷达:roslaunch rplidar_ros rplidar.launch
运行gmapping:roslaunch mrobot_nav gmapping_demo.launch
然后启动rviz:  rosrun rviz rviz -d `rospack find mrobot_nav`/gmapping.rviz,可以看到地图信息,如下图所示。
【开箱评测四】用RPLIDAR A2搭建gmapping图1


启动键盘或摇杆,建立完整的地图。
建地图的过程:
【开箱评测四】用RPLIDAR A2搭建gmapping图2


建好的完整地图:
【开箱评测四】用RPLIDAR A2搭建gmapping图3


键盘和摇杆关闭后,点2D Nav Goal 可以进行导航:
【开箱评测四】用RPLIDAR A2搭建gmapping图4


最后配一个mrobot小车的图
【开箱评测四】用RPLIDAR A2搭建gmapping图5


本文作者:Steven.Zhang (欢迎关注:http://www.rosclub.cn/



创作许可协议

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

评论(0)
- 没有更多了 -