速腾128线激光雷达播放pcap包,录制bag包,转PCD文件

发布时间 2023-09-30 09:37:57作者: FeiYull

一下内容来自官方手册;速腾官网:https://www.robosense.cn/resources

其中128线激光雷达对应文档为:《RS-Ruby 产品用户手册 中文》,翻到最下面就是。

 

一、安装官方最新驱动

我的环境:Ubuntu 18.04 - ROS melodic desktop-full

先安装pcap

sudo apt-get install -y  libpcap-dev

用户可以直接访问  [rslidar_sdk_release](https://github.com/RoboSense-LiDAR/rslidar_sdk/releases) 下载最新版本的rslidar_sdk. 请下载 **rslidar_sdk.tar.gz** 压缩包, 不要下载Source code。 因为Source code压缩包内不包含子模块rs_driver的代码, 用户还需自行下载rs_driver的代码放入其中才行。

二、ros环境下编译安装驱动

(1) 打开工程内的*CMakeLists.txt*文件,将文件顶部的**set(COMPILE_METHOD ORIGINAL)**改为**set(COMPILE_METHOD CATKIN)**。

```cmake
#=======================================
# Compile setup (ORIGINAL,CATKIN,COLCON)
#=======================================
set(COMPILE_METHOD CATKIN)
```

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

(3) 新建一个文件夹作为工作空间,然后再新建一个名为*src*的文件夹, 将rslidar_sdk工程放入*src*文件夹内。

(4) 返回工作空间目录,执行以下命令即可编译&运行(若使用.zsh,将第二句指令替换为 *source devel/setup.bash*)。

三、播放pcap数据和ros录制

关于如何离线解析数据(rosbag 或 pcap),在 rslidar_sdk 驱动包内的文档里也有详细的 介绍,这里只简略介绍一下,以 pcap 为例。可以利用 rslidar_sdk 来将保存的离线 pcap 文 件解析成点云数据进行显示。

1. 修改 rslidar_sdk/config/config.yaml 中的参数

  msg_source : 改为 3

  pcap_directory : 配置为 pcap 文件的绝对路径 (e.g. /home/robosense/128.pcap)

2. 运行节点程序: cd ~/catkin_ws source devel/setup.bash roslaunch rslidar_sdk start.launch

打开终端运行:

cd ~/catkin_ws
source devel/setup.bash
roslaunch rslidar_sdk start.launch

3.录制(从上面rviz界面可以直到,topic为:/rslidar_points;单独执行下面指令,需要启动roscore):

rosbag record -o out /rslidar_points

  等数据播放完毕,就可以ctrl+c结束录制了。

4. bag包格式转pcd格式(非必要)

rosrun pcl_ros bag_to_pcd mybag_2021-09-08-19-48-01.bag /rslidar_points  pcd

所有点云帧都保存到了pcd文件夹下面。

 

四、更详细资料

  参考官方文档,速腾官网:https://www.robosense.cn/resources          其中128线激光雷达对应文档为:《RS-Ruby 产品用户手册 中文》,翻到最下面就是。

  或者参考上述源码压缩包中的README_CN.md文档。

  1 # **rslidar_sdk**
  2 
  3 ## 1 工程简介
  4  **rslidar_sdk** 为速腾聚创在Ubuntu环境下的雷达驱动软件包,包括了雷达驱动内核, ROS拓展功能,ROS2拓展功能,Protobuf-UDP通信拓展功能。对于没有二次开发需求的用户,或是想直接使用ROS或ROS2进行二次开发的用户,可直接使用本软件包, 配合ROS或ROS2自带的RVIZ可视化工具即可查看点云。 对于有更深一步二次开发需求,想将雷达驱动集成到自己工程内的客户, 请参考雷达驱动内核的相关文档,直接使用内核[rs_driver](https://github.com/RoboSense-LiDAR/rs_driver)进行二次开发。
  5 
  6 ### **1.1 雷达型号支持**
  7 
  8 - RS16
  9 - RS32
 10 - RSBP
 11 - RS128
 12 - RS80
 13 - RSM1-B3
 14 - RSHELIOS
 15 
 16 ### 1.2 点的类型支持
 17 
 18 - XYZI - x, y, z, intensity
 19 - XYZIRT - x, y, z, intensity, ring, timestamp
 20 
 21 ## 2 下载
 22 
 23 ### 2.1 使用git clone
 24 
 25  由于rslidar_sdk项目中包含子模块驱动内核rs_driver, 因此在执行git clone 后还需要执行相关指令初始化并更新子模块。
 26 
 27   ```sh
 28 git clone https://github.com/RoboSense-LiDAR/rslidar_sdk.git
 29 cd rslidar_sdk
 30 git submodule init
 31 git submodule update
 32   ```
 33 
 34 ### 2.2 直接下载
 35 
 36 用户可以直接访问  [rslidar_sdk_release](https://github.com/RoboSense-LiDAR/rslidar_sdk/releases) 下载最新版本的rslidar_sdk. 请下载 **rslidar_sdk.tar.gz** 压缩包, 不要下载Source code。 因为Source code压缩包内不包含子模块rs_driver的代码, 用户还需自行下载rs_driver的代码放入其中才行。
 37 
 38 ![](doc/img/download_page.png)
 39 
 40 
 41 
 42 ## 3 依赖介绍
 43 
 44 ### 3.1 ROS 
 45 
 46 *若需在ROS环境下使用雷达驱动,则需安装ROS相关依赖库*
 47 
 48 Ubuntu 16.04 - ROS kinetic desktop-full  
 49 
 50 Ubuntu 18.04 - ROS melodic desktop-full
 51 
 52 安装方式: 参考 http://wiki.ros.org
 53 
 54 **如果安装了ROS kinetic desktop-full版或ROS melodic desktop-full版,那么兼容版本其他依赖库也应该同时被安装了,所以不需要重新安装它们以避免多个版本冲突引起的问题, 因此,强烈建议安装desktop-full版,这将节省大量的时间来逐个安装和配置库** 55 
 56 ### 3.2 ROS2
 57 
 58 *若需在ROS2环境下使用雷达驱动,则需安装ROS2相关依赖库*
 59 
 60 Ubuntu 16.04 - 不支持
 61 
 62 Ubuntu 18.04 - ROS2 Eloquent desktop
 63 
 64 安装方式:参考 https://index.ros.org/doc/ros2/Installation/Eloquent/Linux-Install-Debians/
 65 
 66 **注意! 请避免在同一台电脑上同时安装ROS和ROS2, 这可能会产生冲突! 同时还需要手动安装Yaml库。**
 67 
 68 ### 3.3 Yaml (必需)
 69 
 70 版本号:  >= v0.5.2 
 71 
 72 *若已安装ROS desktop-full, 可跳过*
 73 
 74 安装方式:
 75 
 76 ```sh
 77 sudo apt-get update
 78 sudo apt-get install -y libyaml-cpp-dev
 79 ```
 80 
 81 ### 3.4 Pcap (必需)
 82 
 83 版本号: >=v1.7.4
 84 
 85 安装方式:
 86 
 87 ```sh
 88 sudo apt-get install -y  libpcap-dev
 89 ```
 90 
 91 ### 3.5 Protobuf (可选)
 92 
 93 版本号: >=v2.6.1
 94 
 95 安装方式:
 96 
 97 ```sh
 98 sudo apt-get install -y libprotobuf-dev protobuf-compiler
 99 ```
100 
101 
102 
103 ## 4 编译 & 运行
104 
105 我们提供三种编译&运行方式。
106 
107 ### 4.1 直接编译
108 
109 按照如下指令即可编译运行程序。 直接编译也可以使用ROS相关功能(不包括ROS2),但需要在程序启动前**手动启动roscore**,启动后**手动打开rviz**才能看到可视化点云结果。
110 
111 ```sh
112 cd rslidar_sdk
113 mkdir build && cd build
114 cmake .. && make -j4
115 ./rslidar_sdk_node
116 ```
117 
118 ### 4.2 依赖于ROS-catkin编译
119 
120 (1) 打开工程内的*CMakeLists.txt*文件,将文件顶部的**set(COMPILE_METHOD ORIGINAL)**改为**set(COMPILE_METHOD CATKIN)**121 
122 ```cmake
123 #=======================================
124 # Compile setup (ORIGINAL,CATKIN,COLCON)
125 #=======================================
126 set(COMPILE_METHOD CATKIN)
127 ```
128 
129 (2) 将rslidar_sdk工程目录下的*package_ros1.xml*文件重命名为*package.xml*130 
131 (3) 新建一个文件夹作为工作空间,然后再新建一个名为*src*的文件夹, 将rslidar_sdk工程放入*src*文件夹内。
132 
133 (4) 返回工作空间目录,执行以下命令即可编译&运行(若使用.zsh,将第二句指令替换为 *source devel/setup.zsh*)。
134 
135 ```sh
136 catkin_make
137 source devel/setup.bash
138 roslaunch rslidar_sdk start.launch
139 ```
140 
141 ### 4.3 依赖于ROS2-colcon编译
142 
143 (1) 打开工程内的*CMakeLists.txt*文件,将文件顶部的**set(COMPILE_METHOD ORIGINAL)**改为**set(COMPILE_METHOD COLCON)**144 
145 ```cmake
146 #=======================================
147 # Compile setup (ORIGINAL,CATKIN,COLCON)
148 #=======================================
149 set(COMPILE_METHOD COLCON)
150 ```
151 
152 (2) 将rslidar_sdk工程目录下的*package_ros2.xml*文件重命名为*package.xml*153 
154 (3) 新建一个文件夹作为工作空间,然后再新建一个名为*src*的文件夹, 将rslidar_sdk工程放入*src*文件夹内。
155 
156 (4) 通过[链接](https://github.com/RoboSense-LiDAR/rslidar_msg)下载ROS2环境下的雷达packet消息定义, 将rslidar_msg工程也放在刚刚新建的*src*文件夹内,与rslidar_sdk并列。
157 
158 (5) 返回工作空间目录,执行以下命令即可编译&运行(若使用.zsh,将第二句指令替换为 *source install/setup.zsh*)。
159 
160 ```sh
161 colcon build
162 source install/setup.bash
163 ros2 launch rslidar_sdk start.py
164 ```
165 
166 
167 
168 ## 5 参数介绍
169 
170 参数介绍非常重要,请仔细阅读。 本软件包的所有功能都将通过配置参数文件来实现。
171 
172 [参数介绍](doc/intro/parameter_intro_cn.md)
173 
174 [隐藏参数介绍](doc/intro/hiding_parameters_intro_cn.md)
175 
176 
177 
178 ## 6 快速上手
179 
180 以下仅为一些常用功能的快速使用指南, 实际使用时并不仅限于以下几种工作模式, 可通过配置参数改变不同的工作模式。
181 
182 [在线读取雷达数据发送到ROS](doc/howto/how_to_online_send_point_cloud_ros_cn.md)
183 
184 [录制ROS数据包&离线解析ROS数据包](doc/howto/how_to_record_and_offline_decode_rosbag_cn.md)
185 
186 [离线解析Pcap包发送到ROS](doc/howto/how_to_offline_decode_pcap_cn.md)
187 
188 
189 
190 ## 7 使用进阶
191 
192 [使用Protobuf发送&接收](doc/howto/how_to_use_protobuf_function_cn.md)
193 
194 [多雷达](doc/howto/how_to_use_multi_lidars_cn.md)
195 
196 [切换点的类型](doc/howto/how_to_switch_point_type_cn.md) 
197 
198 [坐标变换功能](doc/howto/how_to_use_coordinate_transformation_cn.md) 
199 
200 [组播模式](doc/howto/how_to_use_multi_cast_function_cn.md) 
View Code