rslidar_sdk package from rslidar_sdk reporslidar_sdk |
|
Package Summary
Tags | No category tags. |
Version | 1.5.16 |
License | BSD |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/RoboSense-LiDAR/rslidar_sdk.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2024-08-29 |
Dev Status | MAINTAINED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- robosense
Authors
1 rslidar_sdk
1.1 工程简介
rslidar_sdk 是速腾聚创在Ubuntu环境下的雷达驱动软件包。它包括:
- 雷达驱动内核rs_driver,
- ROS拓展功能,
- ROS2拓展功能
如果希望基于ROS/ROS2进行二次开发,可以使用本软件包。配合ROS/ROS2自带的可视化工具rviz,可以查看点云。
如果希望将雷达驱动集成到自己的工程,作更深一步的二次开发,请基于rs_driver进行开发。
1.1.1 支持的雷达型号
- RS-LiDAR-16
- RS-LiDAR-32
- RS-Bpearl
- RS-Helios
- RS-Helios-16P
- RS-Ruby-128
- RS-Ruby-80
- RS-Ruby-48
- RS-Ruby-Plus-128
- RS-Ruby-Plus-80
- RS-Ruby-Plus-48
- RS-LiDAR-M1
- RS-LiDAR-M2
- RS-LiDAR-M3
- RS-LiDAR-E1
- RS-LiDAR-MX
1.1.2 支持的点类型
- XYZI - x, y, z, intensity
- XYZIRT - x, y, z, intensity, ring, timestamp
1.2 下载
1.2.1 使用 git clone
rslidar_sdk项目包含子模块驱动内核rs_driver。在执行git clone后,还需要执行相关指令,初始化并更新子模块。
git clone https://github.com/RoboSense-LiDAR/rslidar_sdk.git
cd rslidar_sdk
git submodule init
git submodule update
1.2.2 直接下载
用户可以直接访问 rslidar_sdk_release 下载最新版本的rslidar_sdk.
请下载 rslidar_sdk.tar.gz 压缩包,不要下载Source code。因为Source code压缩包内不包含子模块rs_driver的代码, 用户还需自行下载rs_driver的代码放入其中才行。
1.3 依赖介绍
1.3.1 ROS
在ROS环境下使用雷达驱动,需要安装ROS相关依赖库。
- Ubuntu 16.04 - ROS Kinetic desktop
- Ubuntu 18.04 - ROS Melodic desktop
- Ubuntu 20.04 - ROS Noetic desktop
安装方法请参考 http://wiki.ros.org。
强烈建议安装ROS desktop-full版。这个过程会自动安装一些兼容版本的依赖库,如PCL库等。这样可以避免花大量时间,去逐个安装和配置它们。
1.3.2 ROS2
在ROS2环境下使用雷达驱动,需要安装ROS2相关依赖库。
- Ubuntu 16.04 - 不支持
- Ubuntu 18.04 - ROS2 Eloquent desktop
- Ubuntu 20.04 - ROS2 Galactic desktop
- Ubuntu 22.04 - ROS2 Humble desktop
安装方法请参考 https://index.ros.org/doc/ros2/Installation/Eloquent/Linux-Install-Debians/
请不要在一台电脑上同时安装ROS和ROS2,以避免可能的版本冲突,和手工安装其他库(如Yaml)的麻烦。
1.3.3 Yaml (必需)
版本号: >= v0.5.2
若已安装ROS desktop-full, 可跳过
安装方法如下:
sudo apt-get update
sudo apt-get install -y libyaml-cpp-dev
1.3.4 libpcap (必需)
版本号: >= v1.7.4
安装方法如下:
sudo apt-get install -y libpcap-dev
1.4 编译、运行
1.4.1 依赖于ROS-catkin编译
(1) 新建一个文件夹作为工作空间,然后再新建一个名为src的文件夹, 将rslidar_sdk工程放入src文件夹内。
(2) 返回工作空间目录,执行以下命令即可编译&运行(若使用.zsh,将第二句指令替换为 source devel/setup.zsh)。
catkin_make
source devel/setup.bash
roslaunch rslidar_sdk start.launch
1.4.2 依赖于ROS2-colcon编译
(1) 新建一个文件夹作为工作空间,然后再新建一个名为src的文件夹, 将rslidar_sdk工程放入src文件夹内。
(2) 通过链接,下载ROS2环境下的雷达packet消息定义,将rslidar_msg工程也放在刚刚新建的src文件夹内,与rslidar_sdk并列。
(3) 返回工作空间目录,执行以下命令即可编译、运行。如果使用.zsh,将第二行替换为source install/setup.zsh。
colcon build
source install/setup.bash
ros2 launch rslidar_sdk start.py
不同ROS2版本start.py的格式可能不同,请使用对应版本的start.py。如ROS2 Elequent,请使用elequent_start.py。
1.5 参数介绍
rslidar_sdk的功能通过配置参数文件来实现,请仔细阅读。
1.6 快速上手
以下是一些常用功能的使用指南。
1.7 使用进阶
CHANGELOG
v1.5.16 2024-08-27
Added
- Load config path frome ros2 param.
Changed
- Remove the original compilation method.
Fixed
- Use single package.xml file for both ROS1 and ROS2 @Timple.
- Update msop protocol of RSMX.
v1.5.15 2024-08-07
Added
- Support RSM3.
v1.5.14 2024-07-15
Added
- Support multiple lidars with different multicast addresses and the same port.
Fixed
- Fixed the bug that only one lidar was parsed correctly when multiple bp4.0 were used.
- Fix version number in the package.xml by @Timple.
v1.5.13 2024-05-10
Added
- Support RSMX.
Fixed
- Update timestamp parsing unit and the number of packets per frame in decoder_RSE1.
- Update firing_tss of Helios/Helios16P/RubyPlus.
- Fix compilation bug of unit test.
- Remove duplicate text “/rslidar_packets” by @luhuadong.
v1.5.12 2023-12-28
Fixed
- Fix bug in getting device info and status.
- Fix bug in getting device temperature.
v1.5.11 2023-12-18
Changed
- Enable modify socket buffer size.
v1.5.10 - 2023-02-17
Changed
- Merge RSBPV4 into RSBP
v1.5.9 - 2023-02-17
Changed
- Increase sending DDS buffer queue to avoid packet loss
v1.5.8 - 2022-12-09
Added
- Support ROS2/Humble Hawksbill
- rename RSEOS as RSE1
Fixed
- Fix wrong widthxheight while ros_send_by_rows=true
v1.5.7 - 2022-10-09
Added
- Seperate RSBPV4 from RSBP
- Support to receive MSOP/DIFOP packet from rosbag v1.3.x
- Support option ros_send_by_rows
v1.5.6 - 2022-09-01
Added
- Add a few build options according to rs_driver
- Update help documents
v1.5.5 - 2022-08-01
Changed
- Output intensity in point cloud as float32
Fixed
- Fix compiling and runtime error on ROS2 Elequent
- Fix frame_id in help docs
v1.5.4 - 2022-07-01
Added
- Support the option to stamp the point cloud with the first point
Changed
- Remove the dependency on the protobuf library
v1.5.3 - 2022-06-01
Added
- Support Jumbo Mode
Fixed
- Fix compiling error when protobuf is unavailable
v1.5.0
Changed
- refactory the project
Added
- support user_layer_bytes and tail_layer_bytes
- support M2
- replace point with point cloud, as rs_driver’s template parameter
- handle point cloud in rs_driver’s thread
v1.3.0 - 2020-11-10
Added
- Add multi-cast support
- Add saved_by_rows argument
- Add different point types( XYZI & XYZIRT)
Changed
- Update driver core, please refer to CHANGELOG in rs_driver for details
- Update some documents
- Change angle_path argument to hiding parameter
Removed
- Remove RSAUTO for lidar type
- Remove device_ip argument
v1.2.1 - 2020-09-04
Fixed
- Fix bug in driver core, please refer to changelog in rs_driver for details.
v1.2.0 - 2020-09-01
Added
- Add camera software trigger (base on target angle)
Changed
- Update driver core, please refer to changelog in rs_driver for details
- Update the compiler version from C++11 to C++14
v1.1.0 - 2020-07-01
Added
- Add ROS2 support
Changed
- Replace while loop with cv.wait
- Update the vector copy part
- Update the program structure
Removed
- Remove some unused variables in message struct
v1.0.0 - 2020-06-01
Added
- New program structure
- Support ROS & Protobuf-UDP functions
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
catkin | |
ament_cmake | |
pcl_ros | |
rclcpp | |
roscpp | |
roslib | |
rslidar_msg | |
sensor_msgs | |
std_msgs |