Ubuntu 20.04部署Livox Mid-360激光雷达:从驱动安装到点云可视化全流程
1. 项目概述在Ubuntu 20.04上驱动Livox Mid-360激光雷达如果你正在机器人、自动驾驶或者三维重建领域折腾手头恰好有一台Livox Mid-360激光雷达而你的开发环境又是经典的Ubuntu 20.04 LTS那么这篇内容就是为你准备的。Livox Mid-360以其非重复扫描模式和出色的性价比在众多项目中成为感知硬件的热门选择。但和许多高端传感器一样让它在一台全新的Ubuntu系统上“跑起来”从驱动安装、环境配置到数据可视化每一步都可能藏着些小坑。这篇文章我会基于我多次在Ubuntu 20.04上部署Mid-360的实际经验为你梳理出一条清晰、可复现的路径。无论你是刚接触Linux的新手还是想快速验证雷达性能的老鸟都能在这里找到直接可用的步骤和那些官方文档里不会写的“避坑指南”。我们的目标很简单让你的Mid-360在Ubuntu 20.04上顺利输出点云数据。2. 环境准备与核心依赖解析在开始安装具体的Livox SDK之前我们必须确保系统的基础环境是健全的。Ubuntu 20.04本身是一个稳定的平台但针对机器人开发尤其是需要编译C代码和进行实时数据处理的场景一些基础的开发工具和库是必不可少的。2.1 系统更新与基础开发工具首先打开终端进行系统更新并安装最基础的编译工具链。这一步看似简单但能避免后续因缺少gcc、g或make而导致的编译失败。sudo apt update sudo apt upgrade -y sudo apt install build-essential cmake git -y这里build-essential是一个元数据包它包含了gcc,g,make,libc6-dev等一整套编译所需的核心工具。cmake是Livox SDK项目构建工具而git则是从代码仓库克隆源码所必需的。2.2 ROS的考量用还是不用这是一个关键决策点。Livox官方提供了两种驱动方式独立的Livox SDK和ROS驱动包 (livox_ros_driver)。独立Livox SDK这是最底层、最轻量的驱动。它不依赖ROS直接提供C/C的API用于连接雷达、配置参数、获取原始数据包。如果你正在开发一个不基于ROS的应用程序比如一个纯C的SLAM算法或者一个自定义的数据采集程序或者你只是想最快速地测试雷达硬件是否正常那么从安装Livox SDK开始是最直接的选择。ROS驱动包如果你最终的开发框架是基于ROSROS1 Noetic或ROS2 Foxy/Humble等那么直接安装livox_ros_driver会更方便。它内部封装了Livox SDK并将雷达数据封装成了标准的ROS话题如/livox/lidar可以无缝接入ROS生态方便地与Rviz、Gazebo等工具集成。对于Ubuntu 20.04其对应的官方ROS版本是ROS1 Noetic。但请注意Livox的ROS驱动对ROS版本有要求。根据我的经验如果你决定使用ROS方案需要先确认你打算使用的livox_ros_driver版本是否明确支持ROS Noetic。有时你可能需要从源码编译特定的分支。实操心得对于初次接触Livox雷达的用户我强烈建议先从独立的Livox SDK开始。理由有三第一安装过程更简单依赖更少能快速验证硬件第二即使后续要转ROS你也已经理解了底层驱动的工作方式排错能力更强第三避免了因ROS环境配置复杂而引入的额外问题。本文的核心也将围绕Livox SDK的安装和使用展开这是基石。2.3 其他可能需要的依赖根据你后续的应用可能还需要安装一些库例如用于点云可视化的PCL点云库开发文件或者用于图像处理的OpenCV。你可以根据需要提前安装sudo apt install libpcl-dev libopencv-dev -y但为了保持环境纯净我们可以在Livox SDK安装成功后再按需添加。3. Livox SDK 的安装与编译详解这是让Mid-360工作的核心步骤。我们将从官方仓库获取最新的SDK源码并进行编译。3.1 克隆源代码与依赖安装首先选择一个合适的工作目录例如~/livox_ws然后克隆Livox SDK的仓库。mkdir -p ~/livox_ws cd ~/livox_ws git clone https://github.com/Livox-SDK/Livox-SDK.git cd Livox-SDK进入SDK目录后不要急于编译。Livox SDK依赖libcurl库来处理网络通信用于与Livox Viewer或自研软件通信以及libjsoncpp来解析配置文件。我们需要先安装它们sudo apt install libcurl4-openssl-dev libjsoncpp-dev -y3.2 编译构建与安装Livox SDK使用CMake进行构建这是现代C项目的标准做法。我们创建一个独立的构建目录build并在其中进行编译这是一种良好的实践可以保持源码目录的清洁。mkdir build cd build cmake .. make sudo make install逐条命令解释cmake ..在build目录中运行CMake它会读取上一级目录..的CMakeLists.txt文件检测系统环境并生成适用于你系统的Makefile。make根据生成的Makefile调用g等编译器编译整个项目。这个过程可能会花一两分钟请耐心等待。sudo make install将编译好的库文件如liblivox_sdk.so和头文件安装到系统目录通常是/usr/local/lib和/usr/local/include。这样你在任何地方编写程序时都可以通过#include livox_sdk.h来引用SDK。3.3 验证安装与配置用户权限安装完成后需要让系统知道新安装的库在哪里。执行以下命令更新动态链接库的缓存sudo ldconfig接下来是一个极其重要但容易被忽略的步骤用户权限。Livox Mid-360通过USB连接在Linux系统下普通用户默认无权直接访问USB设备。如果不配置运行示例程序时会报错提示无法打开设备或权限不足。我们需要创建一个udev规则文件让系统在雷达插入时自动赋予当前用户组如plugdev读写权限。# 创建并编辑udev规则文件 sudo nano /etc/udev/rules.d/99-livox.rules在打开的文件中添加以下内容对于Mid-360其USB产品ID通常是# Livox Mid-360 SUBSYSTEMusb, ATTRS{idVendor}2d95, ATTRS{idProduct}0001, MODE0666, GROUPplugdev保存并退出编辑器在nano中按CtrlX然后按Y确认再按Enter。之后重新加载udev规则并重启udev服务或者简单粗暴地重新插拔雷达sudo udevadm control --reload-rules sudo udevadm trigger注意事项确保你的用户已经加入了plugdev组。可以使用命令groups查看当前用户所在组。如果没有使用sudo usermod -aG plugdev $USER添加然后需要注销并重新登录才能生效。这是很多新手卡住的地方明明规则写了但就是没权限问题往往出在用户没加组或者没重新登录。4. 运行示例程序与数据可视化驱动安装好了权限也配置了现在该让雷达“动起来”了。Livox SDK在sample目录下提供了丰富的示例程序我们以最简单的lidar_sample为例。4.1 连接硬件与运行示例物理连接使用随雷达附带的USB-C数据线将Livox Mid-360连接到电脑的USB 3.0端口。确保连接稳固。雷达上电后指示灯会开始闪烁。运行示例程序回到之前编译SDK的build目录运行示例程序。cd ~/livox_ws/Livox-SDK/build/sample/lidar ./lidar_sample如果一切顺利你将在终端中看到持续的日志输出显示SDK已初始化、检测到雷达、并开始接收数据包。这证明你的驱动安装和硬件连接是完全正确的。4.2 使用Livox Viewer进行高级可视化命令行输出数据包信息虽然能证明雷达在工作但我们更希望“看到”点云。Livox官方提供了强大的图形化工具——Livox Viewer。它不仅可以实时显示点云还能进行雷达参数配置、固件升级、录制和回放数据包。下载Livox Viewer前往Livox官方网站的下载中心找到适用于Linuxx86_64的Livox Viewer安装包。通常是一个.tar.gz压缩文件。解压与运行将下载的文件解压到任意目录例如~/Downloads。tar -xzf Livox_Viewer*.tar.gz -C ~/Downloads/ cd ~/Downloads/Livox_Viewer* ./livox_viewer.sh连接与查看运行Viewer后在软件界面中你应该能自动看到局域网内已连接的Mid-360设备。点击连接选择正确的数据源通常是Livox Lidar稍等片刻绚丽的三维点云就会呈现在你面前。你可以用鼠标旋转、缩放视角感受Mid-360非重复扫描模式带来的独特视觉效果。实操心得首次运行Livox Viewer时可能会遇到一个关于libpng库的警告或错误。这是因为不同系统自带的库版本可能不兼容。一个有效的解决方法是在Livox Viewer的目录下通常有一个lib或lib64文件夹里面包含了它所需的所有依赖库。确保你的启动脚本如livox_viewer.sh正确地将该库路径添加到了LD_LIBRARY_PATH环境变量中。例如脚本里可能有类似export LD_LIBRARY_PATH./lib:$LD_LIBRARY_PATH的语句。如果手动启动你也可以在终端中先执行这条命令再运行Viewer的可执行文件。5. 常见问题排查与深度调试指南即使按照步骤操作也难免会遇到问题。下面是我总结的几个最常见的问题及其解决方法。5.1 编译与链接错误问题现象可能原因解决方案fatal error: livox_sdk.h: No such file or directory头文件未找到。make成功了但sudo make install没执行或失败了。确保执行了sudo make install。可以手动检查/usr/local/include目录下是否有livox_sdk.h文件。error while loading shared libraries: liblivox_sdk.so: cannot open shared object file运行时链接库未找到。库已安装但系统未刷新缓存。执行sudo ldconfig更新库缓存。检查/usr/local/lib下是否存在liblivox_sdk.so并用ldconfig -p | grep livox验证。CMake Error at CMakeLists.txt:XX (message): jsoncpp not found!缺少libjsoncpp-dev依赖。运行sudo apt install libjsoncpp-dev -y安装。5.2 雷达连接与权限问题这是最高频的问题区。问题运行示例程序后日志一直显示等待设备连接或者直接报错failed to init livox lidar sdk。排查步骤检查物理连接换一条高质量的USB 3.0数据线试试并确保连接的是USB 3.0蓝色接口端口。检查设备识别在终端输入lsusb命令。你应该能看到一行包含2d95:0001的设备信息。如果看不到说明系统根本没识别到雷达问题在硬件或线缆。检查udev规则确认/etc/udev/rules.d/99-livox.rules文件内容正确并且执行了sudo udevadm control --reload-rules。检查用户组运行groups \| grep plugdev确认当前用户在plugdev组中。如果不在用sudo usermod -aG plugdev $USER添加并务必注销后重新登录。手动检查权限找到雷达对应的设备文件通常是/dev/bus/usb/00X/00YX和Y是总线号和设备号可通过lsusb输出的信息结合ls -l /dev/bus/usb/00X/00Y查看。确保其权限是crw-rw-rw-所属组是plugdev。5.3 Livox Viewer运行问题问题点击Livox Viewer脚本或可执行文件没反应或闪退。排查在终端中直接运行可执行文件如./livox_viewer查看具体的错误输出。这比盲目猜测有效得多。常见的库缺失错误如libQt5Core.so.5 not found可以通过安装对应的Qt库解决sudo apt install libqt5core5a libqt5gui5 libqt5widgets5。如果提示与现有库版本冲突可以尝试使用Livox Viewer自带的lib目录下的库通过修改LD_LIBRARY_PATH环境变量来优先使用它们。5.4 数据异常与性能调优当雷达能连接并能看到点云后你可能会关注数据质量。点云稀疏或扭曲首先确保雷达固件是最新版本。可以在Livox Viewer中检查并升级固件。其次检查雷达的安装位置是否稳固避免高频振动。对于Mid-360其非重复扫描模式在静态场景下会随时间积累越来越多的点但在动态场景或快速移动中需要算法进行运动补偿。CPU占用过高SDK示例程序可能没有做优化。在实际项目中处理点云数据流是计算密集型任务。考虑使用多线程将数据接收、解包、处理/可视化放在不同线程中。对于ROS驱动可以调整livox_ros_driver发布话题的频率publish_freq和点云格式point_type使用XYZRTL比XYZIRT数据量小以减轻系统负载。6. 从SDK到实际应用下一步做什么成功运行示例和Viewer只是万里长征第一步。接下来你需要思考如何将这些点云数据用在你自己的项目中。6.1 理解数据流与SDK编程花时间阅读livox_sdk.h头文件了解核心的数据结构和回调函数。关键的结构体是LivoxPoint点云数据结构和LivoxEthPacket原始数据包结构。关键的函数是设置回调当雷达有点云数据或状态变化时SDK会调用你注册的函数。你需要编写自己的回调函数在里面解析数据包将其转换为适合你算法处理的格式例如PCL的PointCloud对象。6.2 集成到ROS生态如果你决定使用ROS接下来的步骤是编译安装livox_ros_driver。这个过程需要你已经有一个可用的ROS Noetic工作空间。大致步骤如下# 假设你的ROS工作空间是 ~/catkin_ws cd ~/catkin_ws/src git clone https://github.com/Livox-SDK/livox_ros_driver.git cd ~/catkin_ws catkin_make source devel/setup.bash编译成功后你可以通过roslaunch livox_ros_driver livox_lidar.launch来启动驱动节点。之后用rostopic echo /livox/lidar或rviz就能查看雷达发布的标准ROS点云消息了。6.3 数据录制与离线处理Livox Viewer自带数据录制功能这对于算法开发和调试至关重要。你可以录制不同场景下的.lvx格式数据包。对于离线处理Livox SDK提供了lvx_file示例展示了如何读取.lvx文件并解析其中的帧数据。你可以基于此编写自己的离线数据解析工具将.lvx转换为更通用的格式如.pcd(PCL) 或.bag(ROS)。在整个过程中保持耐心仔细阅读终端输出的错误信息善用网络搜索结合错误代码和关键词大部分问题都能找到解决方案。记住让硬件跑通是第一步更重要的是理解数据如何产生、如何流动以及如何高效地利用它来解决你的实际问题。

相关新闻

QEMU内核调试实战:从零搭建Linux内核开发与调试环境

QEMU内核调试实战:从零搭建Linux内核开发与调试环境

这次我们来看一个对 Linux 内核开发者至关重要的工具:QEMU。它不是一个新的 AI 模型,而是一个功能强大的开源机器模拟器和虚拟化器。对于内核开发者而言,QEMU 的核心价值在于,它提供了一个无需实体硬件、可完全在软件层面运行和调…

2026/8/13 7:27:19 阅读更多 →
揭秘大模型回复生成:从概率游戏到采编审校的完整流程

揭秘大模型回复生成:从概率游戏到采编审校的完整流程

你有没有想过,当你向一个大型语言模型提问,它流畅、得体、甚至富有洞见的回复,究竟是如何“写”出来的?这背后,真的只是一套冰冷的算法在随机组合词汇吗?最近,一个有趣的现象引起了我的注意&…

2026/8/13 7:27:19 阅读更多 →
企业智能体开发怎么做?从需求分析、业务语义层到生产上线的10个关键步骤

企业智能体开发怎么做?从需求分析、业务语义层到生产上线的10个关键步骤

企业智能体开发 企业Agent开发 AI Agent定制开发 企业智能体开发流程 业务语义层 越来越多企业开始搜索“企业智能体开发”“企业Agent开发”“AI Agent定制开发”,但真正进入项目后,会发现Agent开发和普通聊天机器人开发完全不同。聊天机器人可以从…

2026/8/13 7:27:19 阅读更多 →

最新新闻

代码的第一把切割刀:用边界终结“面条系统”的坍塌

代码的第一把切割刀:用边界终结“面条系统”的坍塌

专栏《信息技术》 | 计算系统进化论 (01/12) 一万行代码里的“排雷”暗战

2026/8/13 10:43:14 阅读更多 →
大模型Token全解析:从核心原理到实战优化

大模型Token全解析:从核心原理到实战优化

1. 项目概述:从“乐高积木”的比喻说起 最近和不少刚接触大模型的朋友聊天,发现一个挺有意思的现象:大家聊起GPT、Claude这些模型时,都能说上几句,但一提到“Token”这个词,很多人就有点懵了。有人觉得它像…

2026/8/13 10:43:14 阅读更多 →
2026年热门的存储芯片热流仪加工哪家精度高实力公司推荐

2026年热门的存储芯片热流仪加工哪家精度高实力公司推荐

编辑 | 深圳市丞坤仪器科技有限公司现在存储芯片行业不断升级,对可靠性测试的要求越来越细化,存储芯片热流仪作为存储芯片温度特性、热稳定性测试的核心设备,很多采购和研发负责人在选购的时候都会有疑问:存储芯片热流仪销售厂家哪…

2026/8/13 10:43:14 阅读更多 →
《模拟人生4》NOCC房屋安装指南:从文件部署到功能验证全流程

《模拟人生4》NOCC房屋安装指南:从文件部署到功能验证全流程

这次我们来看一个《模拟人生4》的玩家自制房屋作品——“秘密森林女巫树屋 NOCC房屋”。这个项目不是技术工具或AI模型,而是一个游戏模组(Mod),但它同样涉及文件分享、安装部署、功能验证和兼容性排查,对喜欢自定义游戏…

2026/8/13 10:43:14 阅读更多 →
元初混沌体系架构 第二卷 第四十篇 高频信号宇宙远距离衍射补偿模型

元初混沌体系架构 第二卷 第四十篇 高频信号宇宙远距离衍射补偿模型

第四十篇 高频信号宇宙远距离衍射补偿模型承启前置 超宽带穿透闭环与高频衍射短板补齐第三十九篇《超宽带频谱星际穿透优势与边界约束》已永久定稿,完整构建7G超宽带全域穿透机理、五大统治级优势、四类星际专属约束与鸿蒙制衡化解体系,彻底完成太赫兹超…

2026/8/13 10:43:14 阅读更多 →
微服务配置管理实战:Nacos Config核心原理与Spring Cloud集成指南

微服务配置管理实战:Nacos Config核心原理与Spring Cloud集成指南

1. 项目概述:为什么我们需要Nacos Config?在微服务架构里,配置管理是个老生常谈但又极其关键的问题。想象一下,你手头有几十个甚至上百个服务,每个服务都有自己的数据库连接、缓存地址、业务开关。如果这些配置都写在每…

2026/8/13 10:42:13 阅读更多 →

日新闻

Visual Studio新建项目解决方案为空:系统性排查与修复指南

Visual Studio新建项目解决方案为空:系统性排查与修复指南

1. 问题现象与本质剖析如果你是一位.NET开发者,或者正准备踏入这个领域,那么Visual Studio(后面简称VS)绝对是你绕不开的伙伴。但有时候,这个伙伴会跟你开一个不大不小的玩笑:你满怀期待地点击“创建新项目…

2026/8/13 0:00:09 阅读更多 →
长春建设厅网站:普通人买房办事必看的真实指南与避坑攻略

长春建设厅网站:普通人买房办事必看的真实指南与避坑攻略

说实话,每次提起“长春建设厅网站”这几个字,我心里都挺有感触的。不是因为它有多高大上,也不是因为那里藏着什么不可告人的秘密,恰恰相反,是因为它太“接地气”了,或者说,它是咱们普通人想要在这个城市好好生活、安稳买房时,必须得翻过的一座“数据山”。很多新朋友第…

2026/8/13 0:00:09 阅读更多 →
Windows家庭版远程桌面多用户破解完整指南:RDPWrap终极解决方案

Windows家庭版远程桌面多用户破解完整指南:RDPWrap终极解决方案

Windows家庭版远程桌面多用户破解完整指南:RDPWrap终极解决方案 【免费下载链接】rdpwrap.ini RDPWrap.ini for RDP Wrapper Library by StasM 项目地址: https://gitcode.com/GitHub_Trending/rd/rdpwrap.ini 你是否曾为Windows家庭版无法支持多用户远程桌面…

2026/8/13 0:00:09 阅读更多 →

周新闻

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁 【免费下载链接】baidupankey 在线查询网盘提取码(维护中 rm repo) 项目地址: https://gitcode.com/gh_mirrors/ba/baidupankey 你是否曾经在深夜寻找一份重要资料&#x…

2026/8/13 2:38:34 阅读更多 →
如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南 【免费下载链接】chinese_license_plate_generator 中国车牌生成器 项目地址: https://gitcode.com/gh_mirrors/ch/chinese_license_plate_generator 中国车牌生成器是一个基于Python的开源项目&#xff0c…

2026/8/13 10:41:52 阅读更多 →
收藏!小白程序员轻松入门大模型,从Harness工程开始实践

收藏!小白程序员轻松入门大模型,从Harness工程开始实践

文章强调学习大模型不应只关注模型本身,而应重视模型外的系统搭建,即Harness。提出AgentModelHarness的实用公式,详细介绍Harness的四个层次:持久化层、执行层、控制层和观察与验证层。文章还探讨了上下文工程、工具设计、AGENTS.…

2026/8/13 10:41:51 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/13 10:41:50 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/13 10:41:49 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/13 10:41:49 阅读更多 →