# Livox ROS Driver([览沃ROS驱动程序中文说明](https://github.com/Livox-SDK/livox_ros_driver/blob/master/README_CN.md))
livox_ros_driver is a new ROS package, specially used to connect LiDAR products produced by Livox. The driver can be run under ubuntu 14.04/16.04/18.04 operating system with ROS environment (indigo, kinetic, melodic) installed. Tested hardware platforms that can run livox_ros_driver include: Intel x86 cpu platforms, and some ARM64 hardware platforms (such as nvida TX2 / Xavier, etc.).
## 0. Version and Release History
### 0.1 Current Version
[v2.6.0](https://github.com/Livox-SDK/livox_ros_driver/releases)
### 0.2 Release History
[Release History](https://github.com/Livox-SDK/livox_ros_driver/releases)
## 1. Install dependencies
Before running livox_ros_driver, ROS and Livox-SDK must be installed.
### 1.1 ROS installation
For ROS installation, please refer to the ROS installation guide :
[ROS installation guide](https://www.ros.org/install/)
    ***Note :***
    (1) Be sure to install the full version of ROS (ros-distro-desktop-full);
    (2) There are 7 to 8 steps in ROS installation, please read the installation guide in detail;
### 1.2 Livox-SDK Installation
1. Download or clone [Livox-SDK](https://github.com/Livox-SDK/Livox-SDK) from Github to local;
2. Refer to the corresponding [README.md](https://github.com/Livox-SDK/Livox-SDK/blob/master/README.md) document to install and run Livox-SDK;
## 2. Get and build livox_ros_driver
1. Get livox_ros_driver from GitHub :
`git clone https://github.com/Livox-SDK/livox_ros_driver.git ws_livox/src`
    ***Note :***
    Be sure to use the above command to clone the code to the local, otherwise it will compile error due to the file path problem.
2. Use the following command to build livox_ros_driver :
```bash
cd ws_livox
catkin_make
```
3. Use the following command to update the current ROS package environment :
    `source ./devel/setup.sh`
## 3. Run livox_ros_driver
### 3.1 Use the ROS launch file to load livox_ros_driver
    The command format is as follows :
    `roslaunch livox_ros_driver [launch file] [param]`
1. If the [param] parameter is empty, livox_ros_driver will connect to the corresponding device according to the configuration in the configuration file. The connection rules are as follows :
      When the connection status of the device specified in the configuration file is configured to enable connection (true), the livox_ros_driver will only connect to the device specified in the configuration file;
    ***Note :***
    (1) the json configuration file is in the "ws_livox/src/livox_ros_driver/config" directory;
    (2) When the connection status of the devices specified in the configuration file is all configured to prohibit connection (false), livox_ros_driver will automatically connect all the devices that are scanned;
2. If the [param] parameter is the broadcast code of LiDAR, take LiDAR (the broadcast code is 0TFDG3B006H2Z11) and LiDAR (the broadcast code is 1HDDG8M00100191) as an example, Use the command as follows :
```bash
roslaunch livox_ros_driver livox_lidar_rviz.launch bd_list:="0TFDG3B006H2Z11&1HDDG8M00100191"
```
    ***Broadcast code introduction***
    Each Livox LiDAR device has a unique broadcast code. The broadcast code consists of a 14-character serial number and an additional character (1, 2, or 3), for a total of 15 characters. The above serial number is located under the QR code of the LiDAR body shell (see the figure below). The broadcast code is used to specify the LiDAR device to be connected. The detailed format is as follows :
    ![Broadcast Code](images/broadcast_code.png)
    ***Note :***
    X in the figure above corresponds to 1 in MID-100_Left/MID-40/Horizon/Tele products, 2 in MID-100_Middle, and 3 in MID-100_Right.
## 4. Launch file and livox_ros_driver internal parameter configuration instructions
### 4.1 Launch file configuration instructions
All launch files of livox_ros_driver are in the "ws_livox/src/livox_ros_driver/launch" directory. Different launch files have different configuration parameter values and are used in different scenarios :
| launch file name | Description |
| ------------------------- | ------------------------------------------------------------ |
| livox_lidar_rviz.launch | Connect to Livox LiDAR device<br>Publish pointcloud2 format data<br>Autoload rviz |
| livox_hub_rviz.launch | Connect to Livox Hub device<br>Publish pointcloud2 format data<br>Autoload rviz |
| livox_lidar.launch | Connect to Livox LiDAR device<br>Publish pointcloud2 format data |
| livox_hub.launch | Connect to Livox LiDAR device<br>Publish pointcloud2 format data |
| livox_lidar_msg.launch | Connect to Livox LiDAR device<br>Publish livox customized pointcloud data |
| livox_hub_msg.launch | Connect to Livox Hub device<br>Publish livox customized pointcloud data |
| lvx_to_rosbag.launch | Convert lvx file to rosbag file<br>Convert lvx files to rosbag files directly |
| lvx_to_rosbag_rviz.launch | Convert lvx file to rosbag file<br>Read raw pointcloud data from lvx file and convert to pointcloud2 format for publishing |
#### 4.2 Livox_ros_driver internal main parameter configuration instructions
All internal parameters of Livox_ros_driver are in the launch file. Below are detailed descriptions of the three commonly used parameters :
| Parameter | Detailed description | Default |
| ------------ | ------------------------------------------------------------ | ------- |
| publish_freq | Set the frequency of point cloud publish <br>Floating-point data type, recommended values 5.0, 10.0, 20.0, 50.0, etc. | 10.0 |
| multi_topic | If the LiDAR device has an independent topic to publish pointcloud data<br>0 -- All LiDAR devices use the same topic to publish pointcloud data<br>1 -- Each LiDAR device has its own topic to publish point cloud data | 0 |
| xfer_format | Set pointcloud format<br>0 -- Livox pointcloud2(PointXYZRTL) pointcloud format<br>1 -- Livox customized pointcloud format<br>2 -- Standard pointcloud2 (pcl :: PointXYZI) pointcloud format in the PCL library | 0 |
    ***Livox_ros_driver pointcloud data detailed description :***
1. Livox pointcloud2 (PointXYZRTL) point cloud format, as follows :
```c
float32 x # X axis, unit:m
float32 y # Y axis, unit:m
float32 z # Z axis, unit:m
float32 intensity # the value is reflectivity, 0.0~255.0
uint8 tag # livox tag
uint8 line # laser number in lidar
```
2. Livox customized data package format, as follows :
```c
Header header # ROS standard message header
uint64 timebase # The time of first point
uint32 point_num # Total number of pointclouds
uint8 lidar_id # Lidar device id number
uint8[3] rsvd # Reserved use
CustomPoint[] points # Pointcloud data
```
    Customized Point Cloud (CustomPoint) format in the above customized data package :
```c
uint32 offset_time # offset time relative to the base time
float32 x # X axis, unit:m
float32 y # Y axis, unit:m
float32 z # Z axis, unit:m
uint8 reflectivity # reflectivity, 0~255
uint8 tag # livox tag
uint8 line # laser number in lidar
```
1. The standard pointcloud2 (pcl :: PointXYZI) format in the PCL library :
   &e
没有合适的资源?快使用搜索试试~ 我知道了~
fast-lio 算法包
共2000个文件
cmake:359个
make:314个
h:292个
0 下载量 180 浏览量
2024-03-19
18:21:15
上传
评论
收藏 902.78MB ZIP 举报
温馨提示
fast_lio 算法包
资源推荐
资源详情
资源评论
收起资源包目录
fast-lio 算法包 (2000个子文件)
1 2B
1 2B
liblivox_lidar_sdk_static.a 24.69MB
liblivox_sdk_static.a 12.65MB
livox_ros_driver-msg.asd 404B
fast_lio-msg.asd 250B
livox_ros_driver-msg.asd 121B
fast_lio-msg.asd 97B
local_setup.bash 283B
local_setup.bash 283B
local_setup.bash 283B
local_setup.bash 283B
local_setup.bash 283B
setup.bash 260B
setup.bash 260B
setup.bash 260B
setup.bash 260B
setup.bash 260B
local_setup.bash 75B
setup.bash 69B
CMakeDetermineCompilerABI_CXX.bin 16KB
CMakeDetermineCompilerABI_CXX.bin 16KB
CMakeDetermineCompilerABI_CXX.bin 16KB
CMakeDetermineCompilerABI_CXX.bin 16KB
CMakeDetermineCompilerABI_C.bin 16KB
CMakeDetermineCompilerABI_C.bin 16KB
CMakeDetermineCompilerABI_C.bin 16KB
CMakeDetermineCompilerABI_C.bin 16KB
.built_by 12B
CMakeCCompilerId.c 20KB
CMakeCCompilerId.c 20KB
CMakeCCompilerId.c 20KB
CMakeCCompilerId.c 20KB
CMakeCCompilerId.c 20KB
main.c 10KB
main.c 10KB
OpenMPCheckVersion.c 609B
OpenMPTryFlag.c 172B
.catkin 94B
.catkin 59B
.catkin 49B
.catkin 34B
CATKIN_IGNORE 0B
CATKIN_IGNORE 0B
cmake.check_cache 85B
cmake.check_cache 85B
cmake.check_cache 85B
cmake.check_cache 85B
Makefile.cmake 36KB
Makefile.cmake 14KB
fast_lioConfig.cmake 14KB
livox_ros_driver-genmsg.cmake 13KB
cmake_install.cmake 12KB
livox_ros_driverConfig.cmake 10KB
catkin_tools_prebuildConfig.cmake 9KB
livox_ros_driverConfig.cmake 9KB
Makefile.cmake 8KB
Makefile.cmake 8KB
cmake_install.cmake 8KB
DependInfo.cmake 7KB
DependInfo.cmake 7KB
DependInfo.cmake 7KB
CMakeCXXCompiler.cmake 5KB
CMakeCXXCompiler.cmake 5KB
CMakeCXXCompiler.cmake 5KB
CMakeCXXCompiler.cmake 5KB
DependInfo.cmake 5KB
cmake_install.cmake 3KB
cmake_install.cmake 3KB
cmake_clean.cmake 3KB
cmake_clean.cmake 3KB
CMakeCCompiler.cmake 2KB
CMakeCCompiler.cmake 2KB
CMakeCCompiler.cmake 2KB
CMakeCCompiler.cmake 2KB
cmake_clean.cmake 2KB
cmake_install.cmake 2KB
cmake_install.cmake 2KB
cmake_install.cmake 2KB
package.cmake 2KB
DependInfo.cmake 1KB
cmake_install.cmake 1KB
cmake_install.cmake 1KB
cmake_clean.cmake 1KB
cmake_install.cmake 1KB
DependInfo.cmake 1KB
DependInfo.cmake 1KB
DependInfo.cmake 1KB
DependInfo.cmake 1KB
cmake_install.cmake 1KB
cmake_install.cmake 1KB
cmake_install.cmake 1KB
cmake_install.cmake 1KB
cmake_install.cmake 1KB
cmake_install.cmake 1KB
cmake_install.cmake 1KB
cmake_install.cmake 1KB
cmake_install.cmake 1KB
cmake_install.cmake 1KB
cmake_install.cmake 1KB
共 2000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 20
资源评论
m0_52765390
- 粉丝: 316
- 资源: 9
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功