Ubuntu18.04 安装速腾聚创最新驱动RSLidar_SDK采集XYZIRT格式的激光点云数据

新款驱动支持RS16、RS32、RSBP、RS128、RS80、RSM1-B3、RSHELIOS等型号

注意!!!!!! 该教程旨在引导安装,可能现在已经不具时效性了,建议官网查看官方教程

背景

   笔者在尝试新的多传感器融合算法LIO-SAM时惊异于其优异的性能,准备上手一试,跑源码作者给出的数据集时没有丝毫问题,效果也非常惊艳,但是适配自己的数据包时出现了问题,原作者对激光雷达的数据格式有要求,考虑到与IMU时间同步问题,源码中会检查激光雷达的ring通道和时间戳是否符合要求。但是笔者使用的激光雷达支持的格式是XYZI,即( x, y, z,intensity),为了解决这一问题,笔者登录了速腾聚创的官网寻求帮助。发现速腾聚创开发了一款新的激光雷达驱动rslidar_sdk,并停止了对旧驱动rs_driver的维护(仍然可用),其实旧的驱动已经集成到了新的SDK中,新的SDK功能更加强大,并且解决了笔者的问题。
   新款驱动支持两种激光雷达点云格式,即 XYZI (x, y, z, intensity)格式和 XYZIRT(- x, y, z, intensity, ring, timestamp)格式,其中后一种就包含了ring通道和timestamp时间戳数据,并且时间戳可以在配置文件中选择是使用雷达时间戳还是使用ROS时间戳。这很可以,准备安装。

一、下载rslidar_sdk

新建workspace下载sdk

mkdir  -p  RS_SDK/src

手动打开workspace进入src文件夹下将下面的文件解压到此处,先不要编译
然后打开: https://github.com/RoboSense-LiDAR/rslidar_sdk/releases.
请下载 rslidar_sdk.tar.gz 压缩包, 不要下载Source code。 因为Source code压缩包内不包含子模块rs_driver的代码, 用户还需自行下载rs_driver的代码放入其中才行。

二、添加依赖

1.Yaml (必需)

版本号: >= v0.5.2
若已安装ROS desktop-full, 可跳过
安装方式:

sudo apt-get update
sudo apt-get install -y libyaml-cpp-dev
2.Pcap (必需)

版本号: >=v1.7.4
安装方式:

sudo apt-get install -y  libpcap-dev
3. Protobuf (可选)

   protobuf(Google Protocol Buffers)是Google提供一个具有高效的协议数据交换格式工具库(类似Json),但相比于Json,Protobuf有更高的转化效率,时间效率和空间效率都是JSON的3-5倍。但这个库目前还不是太流行。(官网注明可选,实际使用中会在CMakeLists.txt中链接进行编译,如果没有此库将会报错 )如果不需要此库的功能,也可以打开CMakeLists.txt文件中有关编译protobuf部分注释掉也可编译成功(注释掉以下部分)

#Protobuf#
find_package(Protobuf QUIET)
find_program(PROTOC protoc)
if(NOT PROTOC MATCHES "NOTFOUND" AND Protobuf_FOUND)message(=============================================================)message("-- Protobuf Found, Protobuf Support is turned On!")message(=============================================================)add_definitions(-DPROTO_FOUND)include_directories(${PROTOBUF_INCLUDE_DIRS})SET(PROTO_FILE_PATH ${PROJECT_SOURCE_DIR}/src/msg/proto_msg)file(GLOB PROTOBUF_FILELIST ${PROTO_FILE_PATH}/*.proto)foreach(proto_file ${PROTOBUF_FILELIST})message(STATUS "COMPILING ${proto_file} USING ${PROTOBUF_PROTOC_EXECUTABLE}")execute_process(COMMAND ${PROTOBUF_PROTOC_EXECUTABLE}--proto_path=${PROTO_FILE_PATH}--cpp_out=${PROTO_FILE_PATH}${proto_file})endforeach()
else(NOT PROTOC MATCHES "NOTFOUND" AND Protobuf_FOUND)message(=============================================================)message("-- Protobuf Not Found, Protobuf Support is turned Off!")message(=============================================================)
endif(NOT PROTOC MATCHES "NOTFOUND" AND Protobuf_FOUND)

笔者使用时按照官网的安装方式无法正确安装,有需要安装此库朋友这里推荐按照以下方式安装
此处参考大佬 链接: protobuf 安装. (侵删)

// 下载 protoBuf:
$ git clone https://github.com/protocolbuffers/protobuf.git
//  安装依赖库
$ sudo apt-get install autoconf  automake  libtool curl make  g++  unzip libffi-dev -y
// 进入目录
$ cd protobuf/
// 自动生成configure配置文件:
$ ./autogen.sh
// 配置环境:
$ ./configure
// 编译源代码(会很慢要有耐心!):
$ make
// 安装
$ sudo make install
// 刷新共享库 (很重要的一步啊)
$ sudo ldconfig
// 成功后需要使用命令测试
$ protoc -h

这个效果就表示安装成功:

三、编译

1.打开工程内的CMakeLists.txt文件,将文件顶部的set(COMPILE_METHOD ORIGINAL)改为set(COMPILE_METHOD CATKIN)。
#=======================================
# Compile setup (ORIGINAL,CATKIN,COLCON)
#=======================================
set(COMPILE_METHOD ORIGINAL)
改为:
#=======================================
# Compile setup (ORIGINAL,CATKIN,COLCON)
#=======================================
set(COMPILE_METHOD CATKIN)
2.

将rslidar_sdk工程目录下的package_ros1.xml文件重命名为package.xml。
3.返回工作空间目录,执行以下命

catkin_makesource devel/setup.bash

四、修改config.yaml参数

    本工程只有一份参数文件 config.yaml, 储存于rslidar_sdk/config文件夹内。打开此文件,找到以下部分:

lidar:- driver://此处修改激光雷达型号lidar_type: RS128           frame_id: /rslidar           msop_port: 6699             difop_port: 7788            start_angle: 0              end_angle: 360               min_distance: 0.2            max_distance: 200            use_lidar_clock: false

激光雷达型号默认RS128,这非常难受,修改为自己的激光雷达型号即可
不修改就是这效果:报错:

RoboSense-LiDAR-Driver is running.....
ERRCODE_MSOPTIMEOUT
ERRCODE_MSOPTIMEOUT
ERRCODE_DIFOPTIMEOUT
ERRCODE_MSOPTIMEOUT
ERRCODE_DIFOPTIMEOUT
ERRCODE_MSOPTIMEOUT
ERRCODE_MSOPTIMEOU


修改激光雷达数据点云格式设置:
打开CMakeLists.txt,找到如下代码段

#=======================================
# Custom Point Type (XYZI, XYZIRT)
#=======================================
set(POINT_TYPE XYZIRT)

初始设置格式为:XYZI
需要XYZIRT格式可以修改为以下格式即可获得

#=======================================
# Custom Point Type (XYZI, XYZIRT)
#=======================================
set(POINT_TYPE XYZIRT)

五、配置IP

    使用网线将雷达与电脑或者工控机链接起来,激光雷达上电,点击右上角打开有线连接设置,使用IPV4设置本机静态IP如图示:


详细配置方式可参看速腾聚创官网给出的具体型号的使用参考手册

六、Fire

启动launch文件

source devel/setup.bashroslaunch rslidar_sdk start.launch

正常情况可以下可以在RVIZ中看到扫描帧:

以上部分配置仅仅可使激光雷达显示正常,可以录制自己需要的的数据格式,具体参数还需自己调试。以上步骤只是笔者所遇问题的解决办法,不当之处欢迎大家交流指正。这只实现了测试算法的第一步---------拥有正确的数据集,后期调试好了LIO-SAM适配速腾激光雷达的步骤会与大家分享。

官方安装教程: https://github.com/RoboSense-LiDAR/rslidar_sdk/blob/v1.3.0/README_CN.md.

官方config.yaml参数配置说明:https://github.com/RoboSense-LiDAR/rslidar_sdk/blob/v1.3.0/doc/intro/parameter_intro_cn.md.

笔者另一篇博客实现:速腾聚创雷达点云格式转换为Velodyne雷达点云格式:
链接: Ubuntu18 安装ROS节点解决----速腾聚创雷达点云格式转换为Velodyne雷达点云格式 --SLAM不学无术小问题.

仅供速腾聚创品牌的雷达参考

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_42141088/article/details/117123174

Ubuntu18.04 安装速腾聚创最新驱动RSLidar_SDK采集XYZIRT格式的激光点云数据 --SLAM不学无术小问题相关推荐

  1. 速腾聚创32线雷达雷达,RVIZ显示激光点云

    1.下载驱动文件 ahren@ahren:~/ld_ws/src$ git clone https://github.com/RoboSense-LiDAR/ros_rslidar 2.在工作空间ld ...

  2. Ubuntu18 安装ROS节点解决----速腾聚创雷达点云格式转换为Velodyne雷达点云格式 --SLAM不学无术小问题

    注意:本文只适和速腾聚创激光雷达 主要适配型号: RS-16 . RS-Ruby 教程作用:在速腾官方驱动中加入一个ROS节点,采集数据时使速腾激光雷达格式的点直接转换为Velodyne格式,可以直接 ...

  3. VMware linux 虚拟机(ubuntu18.04) 安装TL-WDN5200H 2.0网卡驱动 完美使用(适用于vmware无法桥接网络使用此方法)

    VMware linux 虚拟机(ubuntu18.04) 安装TL-WDN5200H 2.0网卡驱动 完美使用(适用于vmware无法桥接网络使用此方法) # 以下操作均已root用户操作 # 安装 ...

  4. ubuntu18.04安装Realsense D435i 摄像头的驱动SDK和ROS Wrapper

    ubuntu18.04安装Realsense D435i 摄像头的驱动SDK和ROS Wrapper 2022年更新: 安装教程同:进更新安装包下载方式和下载链接--见文末. 1.安装Realsens ...

  5. Ubuntu18.04 安装NVIDIA英伟达驱动教程

    2022.2.16 佩服网上各种大神的CSDN帖子,写的太过于良心了.坑孩子坑了三个小时左右,都没有装好,真是绝绝子.咋也不知道,咋也不敢说,如果帮到其他网友,请收藏. 因为本人是刚重新装好Linux ...

  6. Ubuntu18.04安装TPLINK WDN5200H USB无线网卡驱动

    TPLINK WDN5200H USB免驱动无限网卡没有提供Ubuntu下的驱动包,需要自己编译安装.(亲测,18.04和16.04都可以使用) 问题解决的过程: 第一,通过百度关键字查找了一个安装方 ...

  7. ubuntu18.04 安装英伟达显卡驱动

    文章目录 下载 卸载 禁用 更新,重启,验证 安装(进入命令行界面安装) 验证 后记1 后记2 问题 两天来的一些记录,先留着 刚入手Ubuntu,积淀了两天,终于搞定了显卡安装, 问题:图像化界面卡 ...

  8. 速腾聚创rs_lidar_16(Robosense)使用gmapping建图

    1.配置速腾聚创 rs_lidar_16雷达驱动 参考下面教程的第一步,Robosense16线雷达驱动安装 速腾聚创rs_lidar_16使用cartographer配置教程 2.使用pointcl ...

  9. ubuntu18.04速腾聚创雷达采集XYZIRT点云格式转换Velodyne雷达XYZIRT点云格式

    在利用lio-sam代码运行自己的数据包时,若自己的雷达是速腾雷达,一定会遇到一个问题:那就是采集到的数据不可以直接用,因为速腾的点云数据与Velodyne有一定的不同.然后对于lio-sam,它对激 ...

最新文章

  1. CRLF line terminators导致shell脚本报错:command not found
  2. edem颗粒替换_EDEM后处理问题的大汇总,方便易懂!
  3. verilog扰码器设计及仿真
  4. 知识分享:值得学习的C语言经典开源项目
  5. 【2019南昌邀请赛现场赛 - G】Winner(建图,tarjan缩点 或 贪心)
  6. 萤火虫小程序_9.9元起!萤火虫中秋文化节来了!特价门票限量秒杀,手慢无!...
  7. 局域网中另外一台服务器的内存_局域网共享打印机,但另外一台电脑却看不到,可能是这3个原因...
  8. linux命令本质,Linux 的命令机制
  9. js弹框带传值父窗口给子框_layer弹窗,父页面 子iframe 兄弟iframe之间传值,函数调用...
  10. mysql4.1数据库_MySQL数据库练习-4.1
  11. Unicode、UTF-8、UTF-16之间的关系
  12. 聚类算法 optics
  13. centos7设置静态IP地址方法
  14. c# - 美元符号是什么$
  15. 【STM32技巧】HX711称重芯片详细说明
  16. 【JetBrain】JetBrain系列软件设置背景图
  17. 厚积薄发-Aspects
  18. Excel Vba拆分并填充单元格
  19. eclipse连接雷电模拟器,夜神模拟器,逍遥安卓模拟器,天天模拟器,海马玩模拟器,网易MUMU模拟器
  20. pcie台式网卡无法开热点

热门文章

  1. SPRING BOOT + VUE仿微信聊天
  2. linux下获取sendto的错误码,套接字sendto()失败了errno 88和9
  3. “大胃王”翻车后,吃播行业还能起死回生吗?
  4. SQL语言多表关联查询
  5. JQuery方法带回调函数
  6. docker搭建samba服务smb网络磁盘共享
  7. sql左连接和右连接区别是什么?
  8. 手写简单版 Promise
  9. 机器学习之经典算法(十六) Birch算法
  10. 录屏怎么录声音苹果_怎么录屏苹果?学会这招,再也不用担心了