1、配置速腾聚创 rs_lidar_16雷达驱动

参考下面教程的第一步,Robosense16线雷达驱动安装

速腾聚创rs_lidar_16使用cartographer配置教程

2、使用pointcloud_to_laserscan包实现三维转二维

参考下面教程

使用pointcloud_to_laserscan包实现三维转二维

3、安装gmapping

3.1 安装依赖项

sudo apt-get install libsdl1.2-dev
sudo apt install libsdl-image1.2-dev

3.2 进入工作空间

cd ~/catkin_ws/src/

3.3 使用git clone 源码(如果git clone不成功,可以直接复制链接,到github下载源码,默认下载的是melodic版本,如果是Ubuntu 16.0系统,也可以)

git clone https://github.com/ros-perception/openslam_gmapping.git
git clone https://github.com/ros-perception/slam_gmapping.git
git clone https://github.com/ros-planning/navigation.git
git clone https://github.com/ros/geometry2.git
git clone https://github.com/ros-planning/navigation_msgs.git

3.4 在工作空间(catkin_ws)中编译

catkin_make

#报错及解决

报错1:CMake Error at geometry2/tf2_bullet/CMakeLists.txt:11 (find_package): By not providing "Findbullet.cmake" in CMAKE_MODULE_PATH this project has asked CMake to find a package configuration file provided by "bullet", but CMake did not find one.

解决:安装依赖项

sudo apt-get install libbullet-dev

报错2:关于c++11标准
解决:在src/文件下的CmakeLists.txt文件中加入关于c++11标

set( CMAKE_CXX_FLAGS "-std=c++11 -O3" )

报错3:Assertion 'beams<LASER_MAXBEAMS ' failed.

这是因为实际的激光扫描的点数较多,比设置的2048要多,所以,在文件目录openslam_gmapping/include/gmapping/scanmatcher/scanmatcher.h文件中,

#define LASER_MAXBEAMS 2048设置要比实际激光点数大即可(例如204800)。

修改完后需要重新编译。

到这一步后,理论上gmapping是安装完成了的,可以使用数据包验证一下。

3、安装laser_scan_matcher包

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

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

Ⅲ. 到 https://github.com/ccny-ros-pkg/scan_tools.git 下载功能包,解压。将解压后功能包与激光雷达的功能包复制到你创建的 ROS 的工作区的src文件下,然后在工作区文件夹下编译。

catkin_make
rospack find laser_scan_matcher

Ⅳ. 然后,需要到 src →laser_scan_matcher →demo 文件中修改demo_gmapping.launch文件。
文件(修改后)如下:

<!--
Example launch file: uses laser_scan_matcher together with
slam_gmapping
--><launch>#### set up data playback from bag #############################<param name="/use_sim_time" value="false"/>#### publish an example base_link -> laser transform ###########<node pkg="tf" type="static_transform_publisher" name="base_link_to_laser" args="0.0 0.0 0.0 0.0 0.0 0.0 /base_link /rslidar 40" />#### start rviz ################################################<node pkg="rviz" type="rviz" name="rviz" args="-d $(find laser_scan_matcher)/demo/demo_gmapping.rviz"/>#### start the laser scan_matcher ##############################<node pkg="laser_scan_matcher" type="laser_scan_matcher_node" name="laser_scan_matcher_node" output="screen"><param name="fixed_frame" value = "odom"/><param name="max_iterations" value="10"/></node>#### start gmapping ############################################<node pkg="gmapping" type="slam_gmapping" name="slam_gmapping" output="screen"><param name="map_udpate_interval" value="1.0"/><param name="maxUrange" value="5.0"/><param name="sigma" value="0.1"/><param name="kernelSize" value="1"/><param name="lstep" value="0.15"/><param name="astep" value="0.15"/><param name="iterations" value="1"/><param name="lsigma" value="0.1"/><param name="ogain" value="3.0"/><param name="lskip" value="1"/><param name="srr" value="0.1"/><param name="srt" value="0.2"/><param name="str" value="0.1"/><param name="stt" value="0.2"/><param name="linearUpdate" value="1.0"/><param name="angularUpdate" value="0.5"/><param name="temporalUpdate" value="0.4"/><param name="resampleThreshold" value="0.5"/><param name="particles" value="10"/><param name="xmin" value="-5.0"/><param name="ymin" value="-5.0"/><param name="xmax" value="5.0"/><param name="ymax" value="5.0"/><param name="delta" value="0.02"/><param name="llsamplerange" value="0.01"/><param name="llsamplestep" value="0.05"/><param name="lasamplerange" value="0.05"/><param name="lasamplestep" value="0.05"/></node></launch>

Ⅴ. 然后到所创键的ROS工作区,重新编译一下,输入:

catkin_make
source devel/setup.bash

建图指令步骤

1.打开激光雷达点云驱动

roslaunch rslidar_pointcloud rs_lidar_16.launch 

2.3维激光数据转换成2维

roslaunch pointcloud_to_laserscan point_to_scan.launch

3.使用gmapping建图

roslaunch laser_scan_matcher  demo_gmapping.launch 

速腾聚创rs_lidar_16(Robosense)使用gmapping建图相关推荐

  1. 速腾聚创Robosense16线激光雷达SLAM建图(一)————Hector建图

    因为最近拿到一个Robosense16线的激光雷达,这是一个三维的激光雷达,所以就拿着这个雷达把一些开源的经典的SLAM算法都跑了一遍,中间也遇到了一些问题,所以就打算在博客上记录下来,供大家交流参考 ...

  2. 法雷奥ScaLa核心人物加入:如何带领速腾聚创踏上车规激光雷达量产之路?

    2017年7月,奥迪A8作为全球首款产量L3级自动驾驶车型一经亮相便引起行业内广泛讨论.而奥迪A8搭载的法雷奥四线激光雷达SacLa则是业内首款面向自动驾驶汽车的车规级激光雷达产品--后者在自动驾驶行 ...

  3. 法雷奥ScaLa核心人物加入:如何带领速腾聚创踏上车规激光雷达量产之路?...

    2017年7月,奥迪A8作为全球首款产量L3级自动驾驶车型一经亮相便引起行业内广泛讨论.而奥迪A8搭载的法雷奥四线激光雷达SacLa则是业内首款面向自动驾驶汽车的车规级激光雷达产品--后者在自动驾驶行 ...

  4. 「镁客·请讲」速腾聚创邱纯鑫:要做配有软件算法的高性价比激光雷达

    目前市面上常见的激光雷达往往都是考量其是多少线的产品,而很少关注激光雷达产品背后的感知算法. 近些年,智能机器人.无人机和无人驾驶的持续火爆,这也让激光雷达成为了相关领域的热点.细致来看,激光雷达产品 ...

  5. 【激光雷达】3D激光雷达传感器建图:速腾聚创、velodyne建图过程总结

    3D激光雷达建图 目录 1.3D激光驱动安装与点云数据录制 1.1.新建.或者使用现有的ROS的工程: 1.2.下载激光雷达的ROS接口驱动: 1.3.配置主机的IP地址: 1.4.配置出厂标定文件: ...

  6. 谷歌cartographer使用速腾聚创3d激光雷达数据进行三维建图

    原链接: https://community.bwbot.org/topic/523 谷歌cartographer_ros请参考这篇安装教程:http://community.bwbot.org/to ...

  7. 过半985、单岗位2K+简历!速腾聚创如何开展校园招聘?

    在半导体.芯片等新兴科技产业,人才短缺和人才培养已经成为全球性问题. 速腾聚创是国内激光雷达领域的龙头企业,在庞大人才实力的助推下,构建起激光雷达硬件.感知软件和芯片三大核心技术闭环,通过领先的技术实 ...

  8. lego-LOAM跑自己的数据包无法显示全局点云地图解决(速腾聚创RS-LiDAR-16 雷达 )---SLAM不学无术小问题

    LeGo-LOAM跑自己的数据包无法显示全局地图问题 注意:本文笔者使用环境:Ubuntu18.04 ROS melodic 版本 背景      3D SLAM新手,在看到了各种狂拽炫酷的3D点云图 ...

  9. 速腾聚创完成新一轮融资:华兴新经济基金领投 筹备上市

    雷递网 乐天 6月14日报道 智能激光雷达系统科技企业RoboSense(速腾聚创)日前宣布新一轮战略融资完成最新交割.本轮交易由华兴资本旗下华兴新经济基金领投,云锋基金.景林投资和昆仲资本跟投. R ...

最新文章

  1. 解码以色列人工智能产业:正在崛起的竞争者
  2. asp.net播放声音
  3. LiveVideoStack Meet回归北京站:未来会更卷吧?
  4. TechEmpower 13轮测试中的ASP.NET Core性能测试
  5. 顺丰gis产品经理_线上面试季丰图科技—顺丰旗下专注GIS领域
  6. Leetcode PHP题解--D56 637. Average of Levels in Binary Tree
  7. 闺女在大连上大学,一个月1500生活费她说少
  8. python 操作oracle 执行脚本_CentOS 7定时执行python脚本
  9. 虚拟linux第一次启动网卡配置过程
  10. 软件测试python版本的决策表法解决preDate返回前一天日期
  11. 设计模式——工厂模式(包含:简单工厂模式、工厂方法模式、抽象工厂模式)
  12. 好用的滚动式截图工具picpick
  13. RedHat7.6 Linux系统图形界面安装教程
  14. 表单的js验证框架,只提供提示信息及正则表达式即可自动验证及提示
  15. JAVA死磕系列 疯狂创客圈
  16. kubernetes 亲和、反亲和、污点、容忍
  17. 常见路由协议有哪些?—Vecloud
  18. 「数据结构 | 链表」单链表、双向链表节点操作演示动画
  19. linux 路由转发 ipv6,IPv6路由
  20. E-R 图的不同表示方法(Chen 方法和 Crow‘s foot 方法)

热门文章

  1. 你知道对白配音文本怎么制作吗?
  2. JavaScript和c# URL编码详解
  3. C/C++中“int main()”和“int main(void)”的区别
  4. docker运行中的容器,重新打包成镜像和压缩以及解压和载入镜像
  5. 推荐一款使用.NET+MSSQL的CRM 客户管理系统源码
  6. 下坠计算机乐谱,下坠falling简谱-Corki-在幽深不见底的岁月里
  7. 数据趣事:历史最高温的是新疆吐鲁番?重庆45℃高温仅排全国第二
  8. 专科学历事业单位工资计算机,事业单位的人告诉你:学历跟入编之后的待遇关系有多大!很直接!...
  9. 老焦专栏 | 用 RACI 模式梳理业务流程,提高业务发布的效率
  10. 今天是星期几php,php获取今天是星期几