Livox_Mid-360激光雷达使用教程

项目需要,使用mid360,我是参考以下链接做的:

Mid-360 快速配置指南 | JiaFan's Blog

大疆Mid360雷达使用教程总结-优快云博客

先说我的电脑配置:ubuntu20.04,ros noetic

一、下载安装Livox-SDK2

GitHub - Livox-SDK/Livox-SDK2: Drivers for receiving LiDAR data and controlling lidar, support Lidar HAP and Mid-360.下载之后编译安装:

git clone https://github.com/Livox-SDK/Livox-SDK2.git
 #这样可能下载不下来,那就直接去官方链接下载zip,解压就行,注意对应文件名

cd ./Livox-SDK2/

mkdir build

cd build

cmake .. && make -j

sudo make install

二、安装livox_ros_driver2

注意不要下载错版本

# 先创建一个工作空间
mkdir -p catkin_livox_ros_driver2/src

#下载,同理,下载不下来去直接下zip文件解压,注意文件名。把下载下来的文件夹放入src

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

cd livox_ros_driver2

source /opt/ros/noetic/setup.sh #换成你自己的ros版本

./build.sh ROS1 

我在最后一步失败了,cmake报错,去看了下build.sh的内容。发现直接编译也行:


catkin_make -DPYTHON_EXECUTABLE=/usr/bin/python3

#
source devel/setup.bash

#注意工作目录路径

三、连接Mid-360

这个直接参照链接里的做。

啊啊啊啊!这里之前踩大坑!之前用另一款雷达,一直在网上搜索怎么配置静态ip,好像都不太行。原来这么简单。。

这里主要讲一下修改/src/livox_ros_driver2/config/MID360_config.json中对应的IP地址:

注意每个雷达的地址都是独一无二的,在包装盒上SN码。默认地址:192.168.1.1**,**是雷达SN码的最后两位。

四、运行launch文件

roslaunch livox_ros_driver2 rviz_MID360.launch

这里launch文件有多个,选择你想要的运行:https://github.com/Livox-SDK/livox_ros_driver2

参考官方说明。

这里非常关键!!!看看教程里说的:

对应第一点:launch文件里对应的参数默认值为“0”,可以看官方说明第三行,0一斤是需要的点云格式。

对应第二点:雷达ip地址就是192.168.1.1**,**是SN码后两位,要在config文件里去更改。

对应第三点:设置主机ip地址,默认192.168.1.50

以上两点在参考教程中很清楚了。

五、运行效果

设置好,运行就成功喽!

看看效果:

如果你想保存这个文件,可以看到图片里话题的名称,直接rosbag record就行:

rosbag record -a

名字可以自己改。

如果你想回放:

rosbag play livox_lidar_data.bag

#然后启动rviz
roscore   #一定要记得启动roscore
rviz

这里需要注意,需要设置“Fixed Frame” 为“livox_frame”。add选择“Displays 面板中配置 PointCloud2,设置话题为 /livox/lidar”。否则没有画面哦。

成功喽!官方的文件真的不好读,需要耐心。感谢各位大神的分享!以后应该还会更新一些mid360的内容,比如在平台上部署。

最后再放几个官方说明:

使用手册:https://terra-1-g.djicdn.com/65c028cd298f4669a7f0e40e50ba1131/Mid360/20230727/Livox_Mid-360_User_Manual_CHS.pdf

下载:LiDAR Sensors - Livox

2.1. 单雷达数据采集 — Livox wiki 0.1 文档

最后再补充一点,官方是有一个可视化软件的:livox viewer。但我运行版本1没有连接上雷达,运行版本2会保存,好像是内存崩溃?无所谓了,用ros更方便后面的研究。

<think>嗯,用户的问题是关于Livox Mid-360激光雷达硬件时间同步的设置。用户之前已经询问过相关配置,现在聚焦在时间同步这个具体需求上。 用户可能正在搭建多传感器融合系统,需要精确的时间戳来对齐雷达数据和其他传感器数据。从用户引用资料看,ta已经查阅过官方文档和开发者社区的资料,说明有一定技术基础。 首先需要明确硬件时间同步的关键要素:Livox Mid-360支持PTP和PPS两种主流同步方式。PTP更适合网络化系统,而PPS更简单直接。用户应该根据实际系统架构选择。 在具体实现上,有四个技术要点需要注意: 1. 物理连接必须正确,同步线要接到雷达的SYNC IN接口 2. 网络配置要启用PTP协议,这需要修改雷达的配置文件 3. 驱动程序需要设置成硬件时间戳模式 4. 应用层要正确解析带同步时间戳的点云数据 考虑到用户可能遇到的操作难点,特别提醒了配置文件路径和参数位置。因为很多用户会在config.json这个文件的network部分遗漏PTP设置。 用户后续可能会关心时间同步精度的验证方法,所以提前在相关问题里准备了测试方案。包括用Wireshark抓包分析和点云时间戳检查两种实用方法。 注意到用户引用过非ROS环境开发的资料,所以在回答中既包含ROS方案也保留了原生SDK的解决方案。特别是详细说明了PubHandler里设置timestamp_type的关键代码,这部分直接引用用户提供的资料[^3]。 最后的安全提示很重要。因为同步线接错可能损坏设备,这个警告必须保留。用户可能没意识到不同型号雷达的电压差异,Mid-360的3.3V和其他设备的5V不兼容。</think>要实现Livox Mid-360激光雷达的**硬件时间同步**,需通过PTP(Precision Time Protocol)或PPS(Pulse Per Second)信号进行精确时间对齐。以下是详细配置步骤: --- ### **硬件时间同步设置流程** 1. **物理连接** - 将外部时间源(如GNSS接收机、PTP主时钟)的**PTP/PPS+ToD**信号线接入Mid-360的**SYNC IN**接口(5-pin航空头)。 - **接线定义**(参考Livox官方引脚图[^1]): - Pin 1: PPS信号 - Pin 2: GND - Pin 3: ToD串口数据 (TX) - Pin 4: ToD串口数据 (RX) - Pin 5: 保留 2. **配置雷达网络参数** 修改雷达的配置文件 `config.json`(位于Livox-SDK2目录): ```json { "lidar_config": { "ip": "192.168.1.100", // 雷达IP "ptp_config": { "enable_ptp": true, // 启用PTP "domain": 0, // PTP域 "network_type": "Multicast" // 组播模式 } } } ``` > ⚠️ 注意:若使用PPS,需设置 `"enable_ptp": false` 并确保物理信号稳定。 3. **驱动层设置** - **ROS驱动配置**(`livox_ros_driver2`): 修改 `MID360.launch` 文件,启用硬件时间戳: ```xml <param name="timestamp_type" value="hardware" /> <!-- 使用硬件时间 --> <param name="time_sync" value="true" /> <!-- 启用时间同步 --> ``` - **原生SDK开发**(非ROS环境): 在代码中设置时间戳类型为硬件同步(参考引用[^3]): ```cpp // 设置时间戳类型为硬件原始时间 SetTimestampType(kHardwareTime); ``` 4. **验证同步状态** - 通过 **Livox Viewer 2** 查看: 连接雷达 → 点云界面 → 检查状态栏显示 **"PTP Locked"** 或 **"PPS Locked"**。 - 终端命令检查(Linux): ```bash sudo ptp4l -m -i eth0 # 监控PTP状态(eth0替换为雷达网卡) ``` --- ### **关键注意事项** - **时间源优先级**:PTP > PPS > 内部时钟。外部信号中断时自动切换至内部时钟。 - **精度对比**: | 同步方式 | 典型精度 | 适用场景 | |----------|----------|-------------------| | PTP | ±100ns | 多传感器网络同步 | | PPS | ±1μs | GNSS授时系统 | - **故障排查**: - 若未同步:检查物理接线、防火墙(PTP需开放UDP 319/320端口)、时间源信号质量。 - 时间戳跳变:确认时间源未中断,避免网络拥堵。 --- ### **相关问题** 1. **如何为Livox Mid-360选择合适的时间源?** - **工业级PTP主钟**(如EndRun TemTime)适合实验室环境,**GNSS模块**(如Ublox F9P)适用于户外移动平台[^1]。 2. **多雷达同步时如何避免IP冲突?** - 需为每个雷达分配**独立静态IP**,并在配置文件中指定子网掩码和网关。 3. **硬件时间同步与软件同步(NTP)有何本质区别?** - 硬件同步依赖物理信号(PPS/PTP),精度达微秒级;软件同步依赖网络协议(NTP),精度仅毫秒级[^2]。 4. **如何验证时间同步的实际精度?** - 使用**示波器**对比PPS信号与雷达数据包触发时间,或分析点云中固定物体的时间戳一致性。 > 引用说明: > [^1]: Livox Mid-360支持PTPv2和PPS输入,需确保外部信号符合3.3V电平标准(详见《Mid-360硬件手册》)。 > [^2]: 网络配置错误是同步失败的常见原因,需禁用DHCP并手动设置IP(参考Livox-SDK2文档)。 > [^3]: 在原生SDK中,`PubHandler::GetEthPacketTimestamp()`函数处理硬件时间戳解析,需正确配置`timestamp_type`参数。
评论 21
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值