Ubuntu 20.04使用Livox mid 360 测试 FAST_LIO

前言

Livox mid360需要使用Livox-SDK2,而非Livox-SDK,以及对应的livox_ros_driver2 。并需要修改FAST_LIO中部分代码。

1. 安装Livox-SDK2

参考官方教程

1.1. 安装CMake

c 复制代码
sudo apt install cmake

1.2. 安装编译Livox-SDK2

c 复制代码
git clone https://github.com/Livox-SDK/Livox-SDK2.git
cd ./Livox-SDK2/
mkdir build && cd build
cmake .. && make -j
sudo make install

Livox-SDK2可以下载在任何位置并编译安装。

2. 编译FAST_LIO工程

2.1. 创建ROS1工程

c 复制代码
mkdir fast_lio && cd fast_lio
mkdir src && cd src

2.2. 在src文件夹中下载FAST_LIO源码

c 复制代码
git clone https://github.com/hku-mars/FAST_LIO.git
cd FAST_LIO
git submodule update --init
cd ../..

2.3. 在src文件夹中下载livox_ros_driver2源码

c 复制代码
git clone https://github.com/Livox-SDK/livox_ros_driver2.git

3. 修改FAST_LIO代码

3.1. 修改FAST_LIO的CMakelists.txt

修改前:

c 复制代码
find_package(catkin REQUIRED COMPONENTS
  geometry_msgs
  nav_msgs
  sensor_msgs
  roscpp
  rospy
  std_msgs
  pcl_ros
  tf
  livox_ros_driver		# <-修改这里
  message_generation
  eigen_conversions
)

修改后:

c 复制代码
find_package(catkin REQUIRED COMPONENTS
  geometry_msgs
  nav_msgs
  sensor_msgs
  roscpp
  rospy
  std_msgs
  pcl_ros
  tf
  livox_ros_driver2		# <-修改这里
  message_generation
  eigen_conversions
)

3.2. 修改FAST_LIO的package.xml

修改前:

c 复制代码
<build_depend>livox_ros_driver</build_depend>
<run_depend>livox_ros_driver</run_depend>

修改后:

c 复制代码
<build_depend>livox_ros_driver2</build_depend>
<run_depend>livox_ros_driver2</run_depend>

3.3. 修改FAST_LIO的头文件引用

分别打开FAST_LIO/src/preprocess.hFAST_LIO/src/laserMapping.cpp

修改前:

c 复制代码
#include <livox_ros_driver/CustomMsg.h>

修改后:

c 复制代码
#include <livox_ros_driver2/CustomMsg.h>

3.3. 修改FAST_LIO的命名空间

分别打开FAST_LIO/src/preprocess.hFAST_LIO/src/preprocess.cppFAST_LIO/src/laserMapping.cpp 中的命名空间,有多处需要修改

修改前:

c 复制代码
livox_ros_driver::

修改后:

c 复制代码
livox_ros_driver2::

4. 编译工程

在工程目录的fast_lio/src/livox_ros_driver2 使用下面指令编译,不要直接使用catkin_make

c 复制代码
cd src/livox_ros_driver2
./build.sh ROS1

编译成功如下图

如果还有编译错误提示,那就说明livox_ros_driver::没有全部改成livox_ros_driver2:: ,如下图:

5. 修改Livox mid360的配置

参考官方教程

5.1. 修改电脑IP地址

建议电脑ip修改为192.168.1.5,否则需要修改下面的配置文件中对应的电脑ip,DNS地址写不写无所谓。

5.2. 修改Livox mid360 IP

打开文件fast_lio/src/livox_ros_driver2/config/MID360_config.json。Livox mid360的IP是出厂后已经固定下来的,看它上面的二维码下面的 SN 码 ,后两个数字前面再加一个1,便是其对应的ip。(例如 SN 码后两位数字为12,那它对应的ip就是192.168.1.112)。

c 复制代码
{
  "lidar_summary_info" : {
    "lidar_type": 8
  },
  "MID360": {
    "lidar_net_info" : {
      "cmd_data_port": 56100,
      "push_msg_port": 56200,
      "point_data_port": 56300,
      "imu_data_port": 56400,
      "log_data_port": 56500
    },
    "host_net_info" : {
      "cmd_data_ip" : "192.168.1.5",  	# <-这里和修改后的电脑ip一致
      "cmd_data_port": 56101,
      "push_msg_ip": "192.168.1.5",  	# <-这里和修改后的电脑ip一致
      "push_msg_port": 56201,
      "point_data_ip": "192.168.1.5",  	# <-这里和修改后的电脑ip一致
      "point_data_port": 56301,
      "imu_data_ip" : "192.168.1.5",  	# <-这里和修改后的电脑ip一致
      "imu_data_port": 56401,
      "log_data_ip" : "",
      "log_data_port": 56501
    }
  },
  "lidar_configs" : [
    {
      "ip" : "192.168.1.12",		  	# <-这里是Livox mid360的ip
      "pcl_data_type" : 1,
      "pattern_mode" : 0,
      "extrinsic_parameter" : {
        "roll": 0.0,
        "pitch": 0.0,
        "yaw": 0.0,
        "x": 0,
        "y": 0,
        "z": 0
      }
    }
  ]
}

6. 运行测试

打开两个终端,分别运行

c 复制代码
source devel/setup.bash
roslaunch livox_ros_driver2 msg_MID360.launch

另外一个终端运行

c 复制代码
source devel/setup.bash
roslaunch fast_lio mapping_mid360.launch

运行成功截图如下

相关推荐
HIT_Weston3 小时前
60、【Ubuntu】【Gitlab】拉出内网 Web 服务:Gitlab 配置审视(四)
前端·ubuntu·gitlab
starvapour16 小时前
Ubuntu硬盘的创建分区、格式化与挂载
linux·ubuntu
Better Bench1 天前
ThinkStation PGX Ubuntu aarch64架构上使用Docker 配置amd64架构镜像的深度学习环境并使用Vscode开发
ubuntu·docker·架构
hello我是小菜鸡1 天前
关于第七章和第八章习题中算法改进的比较
slam
weixin_449290011 天前
Ubuntu 系统上安装和配置 Go 语言运行环境
linux·ubuntu·golang
james bid1 天前
MacBook Pro 2015 上 XUbuntu 24.04 启用 eGPU (GeForce GTX 1080 Ti) 和核显黑屏问题解决
linux·ubuntu·macos·cuda·egpu
龙吟游戏1 天前
Ubuntu Server 25.10安装
linux·运维·ubuntu
zzxxlty1 天前
windows 迁移ubuntu wsl从C盘到D盘
linux·运维·ubuntu
robator1 天前
ubuntu 22.04 升级nvidia显卡驱动、cuda 和cudnn
linux·服务器·ubuntu
肖恭伟1 天前
Pycharm历史community版本下载
linux·ubuntu·pycharm·下载·community