跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客我的书AI学习GitHub 精选镜像AI工具UI配色美学关于
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
C++AI算法

ROS2 Humble 下 Mid360 运行 Fast-LIO2 实战指南

Ubuntu 22.04 与 ROS2 Humble 环境下,Livox Mid360 雷达配合 Fast-LIO2 算法的完整部署方案。内容包含系统安装、SDK 编译、节点配置及常见报错修复。针对 PCL 库版本冲突引发的 libusb 符号错误提供降级或源码编译方案,并通过修改预处理代码解决点云时间字段缺失导致的黑屏问题,确保实时建图稳定运行。

落日余晖发布于 2026/3/27更新于 2026/10/2296 浏览

环境准备

本方案基于 Ubuntu 22.04 与 ROS2 Humble 版本。若本地未安装,建议先通过虚拟机部署系统。

1. 系统安装

Ubuntu 镜像可从阿里云开源镜像站获取:ubuntu-releases-22.04。

安装完成后,按官方文档配置 ROS2 Humble: Ubuntu (deb packages) — ROS 2 Documentation: Humble documentation

2. 编译 Livox SDK2

克隆并编译 Livox-mid360 驱动库前,需确保基础环境就绪。

sudo apt install cmake
gcc -v # 确认版本大于 4.8.1

执行以下命令克隆、编译并安装库。成功后 .a 和 .so 文件位于 /usr/local/lib,头文件在 /usr/local/include。

git clone https://github.com/Livox-SDK/Livox-SDK2.git
cd ./Livox-SDK2/
mkdir build
cd build

注意: 若 cmake .. && make -j 报错提示 CMake 版本兼容性问题(如 Compatibility with CMake < 3.5 has been removed),请添加策略参数重试:

cmake -DCMAKE_POLICY_VERSION_MINIMUM=3.5 .. && make -j
sudo make install

3. 构建 ROS2 工作空间

安装编译工具 colcon 并创建工作目录:

sudo apt install python3-colcon-common-extensions
mkdir -p ~/ros_ws/src
cd ~/ros_ws/src

克隆 Livox ROS 驱动:

git clone https://github.com/Livox-SDK/livox_ros_driver2.git

编译驱动:

source /opt/ros/humble/setup.sh
cd livox_ros_driver2
./build.sh humble

4. 雷达配置与测试

修改配置文件以匹配本机 IP 和设备 IP。路径通常为 ~/ros_ws/install/livox_ros_driver2/share/livox_ros_driver2/config/MID360_config.json。

关键配置项如下:

{
  "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.50",
      "cmd_data_port": 56101,
      "push_msg_ip": "192.168.1.50",
      "push_msg_port": 56201,
      "point_data_ip": "192.168.1.50",
      "point_data_port": 56301,
      "imu_data_ip": "192.168.1.50",
      "imu_data_port": 56401,
      "log_data_ip": "",
      "log_data_port": 56501
    }
  },
  "lidar_configs": [
    {
      "ip": "192.168.1.188",
      "pcl_data_type": 1,
      "pattern_mode": 0,
      "extrinsic_parameter": {
        "roll": 0.0, "pitch": 0.0, "yaw": 0.0,
        "x": 0, "y": 0, "z": 0
      }
    }
  ]
}

启动测试程序,右侧应显示点云图:

source ../../install/setup.sh
ros2 launch livox_ros_driver2 rviz_MID360_launch.py

为避免每次手动 source,可将命令加入 ~/.bashrc 末尾: source ~/ros_ws/install/setup.bash

部署 Fast-LIO2 算法

进入工作空间源码目录,递归克隆项目:

cd ~/ros_ws/src
git clone https://github.com/Ericsii/FAST_LIO.git --recursive
cd ..

安装依赖并编译(务必使用 --symlink-install):

rosdep install --from-paths src --ignore-src -y
colcon build --symlink-install
.
./install/setup.bash

编译常见错误处理: 若遇到 failed to create symbolic link ... because existing path cannot be removed: Is a directory,说明 CMake 尝试创建符号链接时目标已存在。手动删除冲突目录即可:

rm -rf ~/ros_ws/build/livox_ros_driver2/ament_cmake_python/livox_ros_driver2/livox_ros_driver2
colcon build --symlink-install

运行与调试

启动流程

建议在两个终端分别操作:

终端 1(驱动):

cd ~/ros_ws
source ~/ros_ws/install/setup.bash
ros2 launch livox_ros_driver2 rviz_MID360_launch.py

终端 2(算法):

cd ~/ros_ws/src
source ~/ros_ws/install/setup.bash
ros2 launch fast_lio mapping.launch.py

常见问题排查

1. 运行时崩溃:libusb_set_option undefined symbol

若启动后出现 symbol lookup error: ... undefined symbol: libusb_set_option,通常是 PCL 与 libusb 版本不兼容。

解决方案:

  • 方法一(降级 PCL):
    sudo apt remove libpcl-dev
    sudo apt install libpcl-dev=1.12.1+dfsg-5ubuntu0.1
    sudo ldconfig
    
  • 方法二(更新 libusb):
    sudo apt install libusb-1.0-0-dev
    sudo apt upgrade libusb-1.0-0
    
  • 方法三(源码编译 PCL): 若上述无效,可从源码编译 PCL 以确保兼容性。
2. RViz 黑屏或无数据:Failed to find match for field 'time'

若驱动正常但算法包运行后黑屏,日志提示 Failed to find match for field 'time' 或 ring,说明点云数据结构不匹配。Fast-LIO 默认处理器未填充 curvature(时间信息)。

修复步骤: 编辑预处理代码文件:

vim ~/ros_ws/src/FAST_LIO/src/preprocess.cpp

找到 mid360_handler() 函数,将 added_pt.curvature = 0.; 替换为:

/* 用整帧 header.stamp 作为统一时间戳 (ms) */
added_pt.curvature = rclcpp::Time(msg->header.stamp).seconds() * 1000.0;

保存后重新编译:

cd ~/ros_ws
colcon build --packages-select fast_lio
source install/setup.bash
ros2 launch fast_lio mapping.launch.py

此时日志不再报错,RViz 中应能正常看到实时点云。

目录

  1. 环境准备
  2. 1. 系统安装
  3. 2. 编译 Livox SDK2
  4. 3. 构建 ROS2 工作空间
  5. 4. 雷达配置与测试
  6. 部署 Fast-LIO2 算法
  7. 运行与调试
  8. 启动流程
  9. 常见问题排查
  10. 1. 运行时崩溃:libusbsetoption undefined symbol
  11. 2. RViz 黑屏或无数据:Failed to find match for field 'time'

更多推荐文章

查看全部
  • ACE-Step V3 本地 AI 音乐生成工具 v1.5 模型整合
  • MySQL 迁移金仓数据库:兼容核心与实操避坑指南
  • Trae 集成 Git 本地仓库管理与初始化指南
  • OpenCV + Python 图像处理与人脸识别实战
  • 高效邮件发送系统设计与实现:基于 Python 和 SQLAlchemy 的实践
  • 常见 WEB 安全漏洞原理及防御措施详解
  • IDEA 终端无法识别 Git 或 NPM 命令的修复指南
  • LLM2Json:实现 ERNIE Bot 稳定输出结构化 JSON 数据
  • 在线 OJ 系统竞赛管理模块实战 (Java/Spring/Vue)
  • AWS SAP-C02 專業架構師認證介紹
  • 王立威教授解析:从理论视角看大模型的聪明与愚蠢
  • AI 时代下真正的大模型定义、分类与发展趋势
  • AI 驱动游戏:鸿蒙生态的机会在哪里?
  • C 语言指针与数组的深层关联及实战应用
  • Python 核心数据结构:集合与冻结集合
  • Git 原理与使用进阶:远程协作、标签管理及企业级模型
  • 前端网络基础详解:OSI 模型与核心协议解析
  • LLM 模型高质量数据选择与微调方法综述
  • 新版 llama.cpp 使用及本地部署 LLaMA
  • 2025 年 10 大 AI 模型 API 中转平台横评:多模型智能调度方案对比

相关免费在线工具

  • 加密/解密文本

    使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online

  • RSA密钥对生成器

    生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online

  • Mermaid 预览与可视化编辑

    基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online

  • 随机西班牙地址生成器

    随机生成西班牙地址(支持马德里、加泰罗尼亚、安达卢西亚、瓦伦西亚筛选),支持数量快捷选择、显示全部与下载。 在线工具,随机西班牙地址生成器在线工具,online

  • Gemini 图片去水印

    基于开源反向 Alpha 混合算法去除 Gemini/Nano Banana 图片水印,支持批量处理与下载。 在线工具,Gemini 图片去水印在线工具,online

  • Base64 字符串编码/解码

    将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online