九.激光SLAM框架学习之LeGO-LOAM框架—速腾Robosense-16线雷达室外建图和其他框架对比、录包和保存数据

  • Post author:
  • Post category:其他


专栏系列文章如下:


一:Tixiao Shan最新力作LVI-SAM(Lio-SAM+Vins-Mono),基于视觉-激光-惯导里程计的SLAM框架,环境搭建和跑通过程_goldqiu的博客-CSDN博客


二.激光SLAM框架学习之A-LOAM框架—介绍及其演示_goldqiu的博客-CSDN博客


三.激光SLAM框架学习之A-LOAM框架—项目工程代码介绍—1.项目文件介绍(除主要源码部分)_goldqiu的博客-CSDN博客


四.激光SLAM框架学习之A-LOAM框架—项目工程代码介绍—2.scanRegistration.cpp–前端雷达处理和特征提取_goldqiu的博客-CSDN博客


五.激光SLAM框架学习之A-LOAM框架—项目工程代码介绍—3.laserOdometry.cpp–前端雷达里程计和位姿粗估计_goldqiu的博客-CSDN博客


六.激光SLAM框架学习之A-LOAM框架—项目工程代码介绍—4.laserMapping.cpp–后端建图和帧位姿精估计(优化)_goldqiu的博客-CSDN博客


七.激光SLAM框架学习之A-LOAM框架—速腾Robosense-16线雷达室内建图_goldqiu的博客-CSDN博客


八.激光SLAM框架学习之LeGO-LOAM框架—框架介绍和运行演示_goldqiu的博客-CSDN博客


1.雷达测试:

首先安装好雷达在平台上,供电准备好,雷达网口接终端,雷达本机ip是192.168.1.200,终端ip要配置成192.168.1.102,子网掩码255.255.255.0即可。

终端ping 192.168.1.200可以ping通则说明雷达通讯没问题。


2.雷达驱动下载:

GitHub下载最新源码


https://github.com/RoboSense-LiDAR/rslidar_sdk.git​github.com/RoboSense-LiDAR/rslidar_sdk.git​github.com/RoboSense-LiDAR/rslidar_sdk.git


3.雷达驱动环境安装:

安装pcap:sudo apt-get install -y libpcap-dev

安装Yaml:sudo apt-get install -y libyaml-cpp-dev (若已安装ROS desktop-full, 可跳过)


4. 修改CMakeLists.txt和package.xml:

(1) 将文件顶部的set(COMPILE_METHOD ORIGINAL)改为set(COMPILE_METHOD CATKIN)

(2) 将set(POINT_TYPE XYZI) 改为set(POINT_TYPE XYZIRT)

(3) 将rslidar_sdk工程目录下的package_ros1.xml文件重命名为package.xml。


5.编译:

建立ros工作空间,在工作空间编译


6. GitHub下载rs雷达话题转velodyne雷达话题源码


https://github.com/HViktorTsoi/rs_to_velodyne.git

并编译,可放在同个工作空间编译


7. 编译LeGO-LOAM

前面有讲,可放在同个工作空间编译

但是这里要修改LeGO-LOAM的launch文件:

将这句话的true改成false

<param name=”/use_sim_time” value=”false”/>


8. 运行:

所有节点和launch文件,

先运行雷达:

source devel/setup.bash

roslaunch rslidar_sdk start.launch

再运行rs_to_velodyne节点

rosrun rs_to_velodyne rs_to

velodyne XYZIRT XYZIR (这里要注意LeGO-LOAM需要的雷达点云是XYZIR格式的,话题还是velodyne

_points)

最后运行lego_loam

roslaunch lego_loam run.launch


9. 效果如下:


10.修改话题的其他办法

LeGO-LOAM的launch文件增加:

<remap from=”/rslidar_points” to=”/velodyne_points”/>

但是要修改雷达ROS驱动的CMakeLists.txt

将set(POINT_TYPE XYZI) 改为set(POINT_TYPE XYZIR),并重新编译。


11.保存数据

录制地图包:rosbag record -o mybag.bag out /laser_cloud_surround

查看:rosrun pcl_ros bag_to_pcd mybag.bag /laser_cloud_surround mypcd

pcl_viewer xxx.pcd (这里是查看一帧的数据)

录制点云包:rosbag record -o mybag.bag out /velodyne_points


12.和其他框架对比

A-LOAM框架室外跑的效果没有拍下来,录的bag也出了问题(血的教训,工控机别直接拔电关机,要把ROS下所有节点关闭后用指令poweroff,不然bag会有问题)

直观来看,在室外,LeGO-LOAM的效果要比A-LOAM要好。后面做完所有工作了,再对比不同的框架,比如固态雷达和机械式雷达对比,纯激光SLAM框架和LIO框架、lVIO框架对比,即对比多传感器和单传感器的效果。



版权声明:本文为weixin_36773706原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。