VLP-16激光雷达结合slam_gmapping实时建图

4 篇文章 2 订阅
4 篇文章 3 订阅

Gmapping算法是基于粒子滤波SLAM框架的常用开源SLAM算法,在ROS中使用Gmapping建图需要提供 Odometry(里程计信息)和laser(激光数据),但是只用一个激光雷达也可以进行Gmapping建图。

若只用激光雷达数据建图就需要使用 laser_scan_matcher 功能包。laser_scan_matcher 功能包是增量激光扫描配准工具,该软件包允许扫描连续的 sensor_msgs / LaserScan 消息之间的匹配,并将估计的激光位置发布为 geometry_msgs / Pose2D 或 tf 变换。该包可以在没有其他传感器提供的任何测距估计的情况下使用,因此,它可以作为独立的里程计算器估算器。

若VLP-16激光雷达的驱动和基本配置还未安装请看:https://blog.csdn.net/qq_34911636/article/details/109363209

1 下载laser_scan_matcher功能包到工作空间中,然后编译

git clone https://github.com/ccny-ros-pkg/scan_tools.git

catkin_make

编译过程中若出现以下错误:

该错误是无法定位csm功能包时,需要安装csm功能包,在终端中输入:

sudo apt-get install ros-kinetic-csm

然后重新编译即可

2 启动ROS管理节点

roscore

3 打开新终端,运行 VLP16_points.launch

roslaunch velodyne_pointcloud VLP16_points.launch

 4 打开新终端,输入以下命令发布 tf 变换 base_link->velodyne

rosrun tf static_transform_publisher 0 0 0 0 0 0 base_link velodyne 0

5 打开新终端,启动 slam_gmapping

rosrun gmapping slam_gmapping

6 打开新终端,启动 laser_scan_matcher_node,并指定 fixed_frame 为 odom

rosrun laser_scan_matcher laser_scan_matcher_node _fixed_frame:=odom

 7 打开新终端启动rviz

rosrun rviz rviz

然后在 rviz 中点击 Add -> By topic,添加 Map、LaserScan 或 PointCloud2 等,Fixed Frame 主题可设置为/map,实时显示获取到的结果如下所示:

 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值