Ubuntu 22.04 + ROS2 Humble 下,搞定览沃MID-360雷达的完整避坑实录(附静态IP与双JSON配置)

张开发
2026/4/11 11:50:55 15 分钟阅读

分享文章

Ubuntu 22.04 + ROS2 Humble 下,搞定览沃MID-360雷达的完整避坑实录(附静态IP与双JSON配置)
Ubuntu 22.04 ROS2 Humble 下览沃MID-360雷达部署全记录从踩坑到完美运行去年在Ubuntu 18.04和ROS1环境下部署览沃MID-360雷达时整个过程还算顺利。但今年当我尝试在Ubuntu 22.04和ROS2 Humble环境中部署同一款雷达时却遭遇了各种意想不到的问题。本文将详细记录我从零开始部署览沃MID-360雷达的全过程特别是那些官方文档没有明确说明的坑点希望能帮助其他开发者少走弯路。1. 环境准备与依赖安装在开始之前确保你的系统已经安装了Ubuntu 22.04和ROS2 Humble。ROS2的安装可以参考官方文档这里不再赘述。我们需要重点关注的是览沃MID-360雷达所需的特定依赖。首先安装基础编译工具sudo apt update sudo apt install -y cmake git build-essential接下来安装Livox-SDK2这是览沃雷达的底层驱动库git clone https://github.com/Livox-SDK/Livox-SDK2.git cd Livox-SDK2 mkdir build cd build cmake .. make -j$(nproc) sudo make install这个步骤通常不会出现问题但如果遇到权限问题可以尝试在make install前加上sudo。2. ROS2驱动安装与工作空间配置与ROS1不同ROS2的构建系统有所变化这也是容易出问题的地方。我们需要创建一个专门的工作空间来管理览沃雷达的ROS2驱动。mkdir -p ~/ws_livox/src cd ~/ws_livox/src git clone https://github.com/Livox-SDK/livox_ros_driver2.git克隆完成后我们需要构建工作空间。这里有一个关键点必须确保source了正确的ROS2环境source /opt/ros/humble/setup.sh cd ~/ws_livox ./build.sh humble注意build.sh脚本会根据参数选择不同的ROS2版本进行构建humble对应Ubuntu 22.04。如果使用其他ROS2版本需要相应调整。3. 网络配置静态IP设置的陷阱这是第一个大坑。览沃MID-360雷达需要通过有线网络连接并且要求主机配置特定的静态IP地址。官方文档提到了这一点但没有详细说明如何在Ubuntu 22.04中设置。Ubuntu 22.04使用了新的网络管理工具Netplan与之前版本的配置方式不同。以下是正确的设置方法编辑Netplan配置文件sudo nano /etc/netplan/01-network-manager-all.yaml添加以下内容根据你的网络接口名称调整通常是enpXsY或eth0network: version: 2 renderer: networkd ethernets: enp3s0: # 替换为你的实际接口名 dhcp4: no addresses: [192.168.1.50/24] gateway4: 192.168.1.1 nameservers: addresses: [8.8.8.8, 8.8.4.4]应用配置sudo netplan apply重要提示在修改网络配置前最好先记录下原有配置以防出现问题可以快速恢复。验证配置是否生效ip addr show你应该能看到类似这样的输出2: enp3s0: BROADCAST,MULTICAST,UP,LOWER_UP mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff inet 192.168.1.50/24 brd 192.168.1.255 scope global enp3s0 valid_lft forever preferred_lft forever inet6 xxxx::xxxx:xxxx:xxxx:xxxx/64 scope link valid_lft forever preferred_lft forever4. JSON配置文件的双重修改最隐蔽的坑这是整个部署过程中最令人头疼的部分。官方文档只提到了修改一个JSON配置文件但实际上需要修改两个不同路径下的相同文件。第一个配置文件位于~/ws_livox/src/livox_ros_driver2/config/MID360_config.json需要修改的内容第14、16、18、20行的IP地址改为192.168.1.50第28行的IP地址改为雷达的实际IP通常是192.168.1.1XXXX为雷达序列号后两位但问题在于还有第二个配置文件需要修改位于~/ws_livox/install/livox_ros_driver2/share/livox_ros_driver2/config/MID360_config.json这个文件的内容需要与第一个文件完全一致。忽略这一点会导致雷达无法正常启动而且错误信息往往不明确难以排查。经验分享我花了将近一天时间才意识到这个问题。后来发现构建过程中配置文件会被复制到install目录但运行时实际使用的是install目录下的版本。5. 雷达连接与启动完成上述配置后就可以连接雷达了。使用网线将雷达与电脑直接连接注意不要经过交换机或路由器。启动雷达的命令如下source ~/ws_livox/install/setup.bash ros2 launch livox_ros_driver2 rviz_MID360_launch.py如果一切正常你应该能在RViz中看到雷达的点云数据。如果没有显示可以尝试以下排查步骤检查雷达电源是否正常指示灯状态确认网线连接可靠使用ping 192.168.1.1XX测试能否ping通雷达检查两个JSON配置文件的内容是否一致查看ROS2日志是否有错误信息6. 常见问题与解决方案在实际部署过程中可能会遇到以下问题问题1构建时出现Colcon错误ERROR:colcon.colcon_core.package_identification:Exception in package livox_ros_driver2: NoneType object has no attribute groups解决方案确保你的ROS2环境已正确source并且使用了正确的构建命令./build.sh humble。问题2雷达连接后没有点云数据可能原因JSON配置文件未正确修改静态IP配置不正确雷达IP与配置文件不匹配问题3RViz启动但看不到点云检查点RViz中是否正确添加了PointCloud2显示Topic名称是否设置为/livox/lidarFixed Frame是否设置为livox_frame7. 性能优化与实用技巧为了让雷达工作更加稳定高效可以考虑以下优化措施网络优化禁用IPv6在某些情况下可以改善网络稳定性sudo sysctl -w net.ipv6.conf.all.disable_ipv61 sudo sysctl -w net.ipv6.conf.default.disable_ipv61ROS2参数调整修改QoS设置以适应高频点云数据# 在launch文件中添加 from rclpy.qos import QoSProfile qos_profile QoSProfile( depth10, reliabilityQoSReliabilityPolicy.BEST_EFFORT, durabilityQoSDurabilityPolicy.VOLATILE )数据过滤使用pointcloud_to_laserscan包将3D点云转换为2D激光扫描数据减少计算负担多雷达配置如果需要使用多个雷达需要为每个雷达分配不同的IP地址和配置文件在Ubuntu 22.04和ROS2 Humble环境下部署览沃MID-360雷达确实比之前的版本更具挑战性特别是那些官方文档没有明确说明的配置细节。通过本文的详细步骤和问题排查指南希望能帮助其他开发者顺利完成部署。

更多文章