rs_driver为速腾聚创跨平台的雷达驱动内核,方便用户二次开发使用。
- RS16
- RS32
- RSBP
- RS128
- RS80
- RSM1-B3
- RSHELIOS
rs_driver目前支持下列系统和编译器:
-
Windows
- MSVC (VS2017 & VS2019 已测试)
- Mingw-w64 (x86_64-8.1.0-posix-seh-rt_v6-rev0 已测试)
-
Ubuntu (16.04, 18.04, 20.04)
- gcc (4.8+)
rs_driver 依赖下列的第三方库,在编译之前需要先安装的它们:
-
Boost
-
pcap
-
PCL (非必须,如果不需要可视化工具可忽略)
-
Eigen3 (非必须,如果不需要内置坐标变换可忽略)
sudo apt-get install libboost-dev libpcap-dev libpcl-dev libeigen3-dev
Windows下需要从源码编译Boost库,请参考官方指南。编译安装完成之后,将Boost的路径添加到系统环境变量BOOST_ROOT
。
如果使用MSVC,也可以选择直接下载相应版本的预编译的安装包。
首先,安装pcap运行库。
然后,下载开发者包到任意位置,然后将WpdPack_4_1_2/WpdPack
的路径添加到环境变量PATH
。
注:如果不编译可视化工具,可不编译安装PCL库
(1) MSVC
如果使用MSVC编译器,可使用PCL官方提供的安装包安装。
安装过程中选择 “Add PCL to the system PATH for xxx”:
(2) Mingw-w64
PCL官方并没有提供mingw编译的库,所以需要按照官方教程, 从源码编译PCL并安装。
注:在Windows中,rs_driver 暂不支持安装使用。
安装驱动
cd rs_driver
mkdir build && cd build
cmake .. && make -j4
sudo make install
使用时,需要在CMakeLists
文件中使用find_package()指令找到rs_driver,然后链接相关库。
find_package(rs_driver REQUIRED)
include_directories(${rs_driver_INCLUDE_DIRS})
target_link_libraries(project ${rs_driver_LIBRARIES})
在CMakeLists
文件中将rs_driver作为子模块添加到工程内,使用find_package()指令找到rs_driver,然后链接相关库。
add_subdirectory(${PROJECT_SOURCE_DIR}/rs_driver)
find_package(rs_driver REQUIRED)
include_directories(${rs_driver_INCLUDE_DIRS})
target_link_libraries(project ${rs_driver_LIBRARIES})
rs_driver提供了两个示例程序,存放于rs_driver/demo
中:
- demo_online.cpp
- demo_pcap.cpp
用户可参考示例程序编写代码调用接口。若希望编译这两个示例程序,执行CMake配置时加上参数:
cmake -DCOMPILE_DEMOS=ON ..
rs_driver提供了一个基于PCL的点云可视化工具,存放于rs_driver/tool
中:
- rs_driver_viewer.cpp
若希望编译可视化工具,执行CMake配置时加上参数:
cmake -DCOMPILE_TOOLS=ON ..
具体使用请参考可视化工具操作指南
rs_driver提供了内置的坐标变换功能,可以直接输出经过坐标变换后的点云,节省了用户对点云进行坐标变换的额外操作耗时。若希望启用此功能,执行CMake配置时加上参数:
cmake -DENABLE_TRANSFORM=ON ..
具体使用请参考坐标变换功能简介
请根据以下路径去查看相关文件。
- 参数定义:
rs_driver/src/rs_driver/driver/driver_param.h
- 点云消息定义:
rs_driver/src/rs_driver/msg/point_cloud_msg.h
- 接口定义:
rs_driver/src/rs_driver/api/lidar_driver.h
- 错误码定义:
rs_driver/src/rs_driver/common/error_code.h
组播模式: 组播模式