从测距公式到 SLAM:激光雷达在物联网与机器人中的应用原理详解
一、激光雷达到底在测什么
LiDAR(Light Detection and Ranging)的本质只做一件事:测量激光从发射到返回的信息,反推出目标的距离(以及速度、反射率)。在此基础上,通过扫描机构把单点测距扩展成整个空间的三维点云。
1.1 ToF 测距:主流方案
目前量产激光雷达绝大多数采用 ToF(Time of Flight,飞行时间) 原理,又分两种:
(1)dToF(直接飞行时间)
发射一个纳秒级激光脉冲,记录回波到达时间,直接计算距离:
d = c × Δt / 2
其中 c ≈ 3×10⁸ m/s 为光速,Δt 为脉冲往返时间,除以 2 是因为光走了一个来回。
这个公式看着简单,工程难度全在时间测量精度上:1 厘米的测距精度要求时间分辨率达到约 66 皮秒。所以 dToF 方案离不开高速 TDC(时间数字转换器)和高灵敏度探测器(APD/SiPM/SPAD)。
(2)iToF(间接飞行时间)
发射连续调制光波,通过测量发射与接收信号的相位差换算距离:
d = c × Δφ / (4π × f)
f 为调制频率,Δφ 为相位差。iToF 精度高但量程受限(相位有 2π 模糊问题),多用于短距离场景,如扫地机、手机深度相机。
1.2 FMCW:下一代方案
FMCW(调频连续波)发射频率线性变化的连续激光,将回波与本振光做相干混频,通过差拍频率同时解算出距离和径向速度(多普勒效应):
- 优点:天然抗阳光/多雷达干扰、每个点自带速度信息、对探测器灵敏度要求低
- 缺点:对激光器线宽和相干性要求极高,成本和工艺尚未成熟
目前车规和机器人量产产品仍以 dToF 为绝对主流,FMCW 属于"值得关注但未到拐点"的技术。
1.3 除了距离,还有反射率
每个点除了 XYZ 坐标,还带一个 Intensity(反射强度) 值。反射率信息在应用层非常有用:车道线、交通标志、高反标定板都是靠反射率识别的,机器人重定位时反射率特征也常作为几何特征的补充。
二、从单点到点云:扫描架构
单点测距只解决"一束光"的问题,要感知整个环境,需要扫描机构。这也是各家产品形态差异最大的地方。以禾赛的产品线为例可以看得很清楚:
| 架构 | 原理 | 代表形态 | 特点 |
|---|---|---|---|
| 机械旋转式 | 收发模组整体 360° 旋转 | Pandar128、XT32、JT 系列 | 360° 视场,点云均匀,机器人领域主流 |
| 半固态-转镜 | 激光器固定,棱镜/转镜旋转折射光路 | AT128、ATX 等前向车规雷达 | 120° 前向视场,可过车规振动/寿命要求 |
| 半固态-MEMS | 微机电振镜二维摆动 | 部分厂商前向雷达 | 体积小,但视场和口径受限 |
| 纯固态-Flash | 面阵激光一次性泛光照射 + SPAD 面阵接收 | FTX 类超广角短距雷达 | 无任何运动件,可靠性最高,量程较短 |
| 纯固态-OPA | 光学相控阵电控偏转光束 | 实验室/早期产品 | 理论终极形态,工程化难度大 |
关键规律:机器人偏爱 360° 机械式,汽车前向偏爱半固态,近距补盲走纯固态。 原因很直接——移动机器人需要环视感知来做 SLAM 和避障;而车规场景对寿命(10 万小时级)和振动的要求让"整机旋转"难以满足,所以走"电机只转一面镜子"的半固态路线。
另一个重要参数是线数(通道数):16 线、32 线、128 线指垂直方向上激光收发通道的数量,直接决定垂直角分辨率。禾赛 JT128 这类"迷你 360° × 189° 超半球"形态说明了机器人雷达的一个演进方向:垂直视场从水平环带扩展到接近半球,一颗雷达同时覆盖行进方向和贴地障碍物,对低矮障碍(充电座、门槛、跌落台阶边缘)的检出至关重要。
三、点云数据链路:雷达到底吐出了什么
对开发者来说,激光雷达就是一个通过以太网 UDP 持续吐点云报文的网络设备——这也是它天然适合物联网架构的原因。
3.1 数据协议
典型的机械式雷达工作流程:
- 雷达以固定转速(如 10 Hz / 20 Hz)旋转,每转一圈输出一帧点云
- 每个 UDP 报文携带若干个"数据块",每块包含:方位角 + 各通道的距离和反射率
- 驱动程序结合出厂标定文件(各通道的垂直角、水平角偏移)将极坐标转换为笛卡尔坐标
极坐标 → 笛卡尔坐标的核心换算:
x = d × cos(ω) × sin(α)
y = d × cos(ω) × cos(α)
z = d × sin(ω)
其中 d 为测距值,ω 为该通道垂直角,α 为当前方位角。
一个简化的解析伪代码:
import socket
import numpy as np
# 出厂标定:每个通道的垂直角(单位:度)
VERT_ANGLES = np.array([...]) # shape: (channels,)
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.bind(("0.0.0.0", 2368)) # 常见点云数据端口
while True:
packet, _ = sock.recvfrom(1500)
for block in parse_blocks(packet): # 解析数据块
azimuth = block.azimuth # 方位角 α
for ch, (dist, intensity) in enumerate(block.returns):
omega = np.radians(VERT_ANGLES[ch])
alpha = np.radians(azimuth)
x = dist * np.cos(omega) * np.sin(alpha)
y = dist * np.cos(omega) * np.cos(alpha)
z = dist * np.sin(omega)
emit_point(x, y, z, intensity, block.timestamp)
实际项目中不需要手写解析,各厂商都提供开源驱动(如禾赛的 HesaiLidar_ROS / SDK,GitHub 上有独立的 Developer Portal),直接输出 ROS 的 sensor_msgs/PointCloud2 或 PCL 点云对象。
3.2 时间同步:被低估的工程细节
点云的每个点都有精确时间戳,多传感器融合(相机、IMU、多雷达)必须做时间同步,常用方案:
- PTP(IEEE 1588)/ gPTP:以太网精密时间协议,车规和工业主流,微秒级精度
- PPS + GPRMC:GNSS 秒脉冲 + NMEA 报文,户外测绘、无人车常用
时间不同步的直接后果:高速运动下点云"运动畸变"(一帧扫描期间载体在移动,首尾点的参考系不一致),需要用 IMU 做运动补偿(去畸变),这是所有激光 SLAM 系统的前置步骤。
四、机器人中的应用原理
机器人对激光雷达的使用可以概括为一条链路:点云 → 去畸变 → 特征提取/匹配 → 定位建图(SLAM)→ 障碍物感知 → 规划控制。
4.1 激光 SLAM:机器人如何知道自己在哪
主流激光 SLAM 框架(LOAM 系列、LIO-SAM、FAST-LIO2 等)的核心步骤:
(1)特征提取
按点的局部曲率把点云分为边缘点(曲率大,如柱子棱角)和平面点(曲率小,如墙面地面):
曲率 c = || Σ(p_i - p_j) || / (|S| × ||p_i||)
对同一扫描线上邻域 S 内的点做差分求和,曲率大者为边缘特征,小者为平面特征。
(2)扫描匹配(Scan Matching)
将当前帧特征与地图/上一帧配准,求解位姿变换。经典方法是 ICP(迭代最近点)及其变体 point-to-plane ICP、NDT(正态分布变换);LOAM 类方法则最小化"边缘点到线的距离 + 平面点到面的距离"。
(3)紧耦合 IMU 融合
现代方案(LIO-SAM、FAST-LIO2)把 IMU 预积分和激光观测放进同一个因子图/迭代卡尔曼滤波器里联合优化,IMU 提供高频运动预测和去畸变,激光提供低漂移的绝对约束。
(4)回环检测与图优化
识别"回到走过的地方",用 Scan Context 等全局描述子检索历史帧,构建回环约束,通过位姿图优化(g2o/GTSAM)消除累积漂移。
4.2 障碍物检测与避障
定位之外的另一条并行链路:
- 地面分割:RANSAC 拟合平面或基于坡度的分割,把地面点滤掉
- 聚类:对非地面点做欧式聚类(Euclidean Clustering)或基于图的分割,得到一个个障碍物实例
- 代价地图(Costmap):把障碍物投影到 2D/2.5D 栅格,膨胀出安全边界,供路径规划器(A*、DWA、TEB)使用
ROS 2 中一个最小可用的处理管线示意:
// 订阅点云 → 直通滤波 → 体素降采样 → 地面分割 → 聚类
pcl::PassThrough<pcl::PointXYZI> pass; // 裁剪感兴趣区域
pcl::VoxelGrid<pcl::PointXYZI> voxel; // 降采样,0.05~0.1m 体素
voxel.setLeafSize(0.05f, 0.05f, 0.05f);
pcl::SACSegmentation<pcl::PointXYZI> seg; // RANSAC 平面分割
seg.setModelType(pcl::SACMODEL_PLANE);
seg.setDistanceThreshold(0.05); // 5cm 内视作地面
pcl::EuclideanClusterExtraction<pcl::PointXYZI> ec;
ec.setClusterTolerance(0.3); // 30cm 邻域聚类
4.3 为什么机器人非用激光雷达不可
和相机、超声波对比,激光雷达的不可替代性在于:
- 直接输出米制尺度的 3D 几何,无需像视觉那样做深度估计,也没有单目尺度不确定问题
- 不依赖环境光照:暗仓库、夜间户外、逆光场景性能一致
- 精度稳定:厘米级测距,重复精度高,适合做定位基准
- 弱点也明确:纹理/语义信息弱(看不懂标志牌上的字)、雨雾雪衰减、玻璃镜面会打穿或产生鬼影——所以实际系统几乎都是激光 + 视觉 + IMU 的多传感器融合
这也是为什么禾赛官网上机器人案例(仓储 AMR、户外移动机器人、割草机器人)全部强调"3D 感知":JT 系列这种迷你 360° 雷达,本质上就是给 AMR/服务机器人提供 SLAM + 避障的一体化几何感知输入。
五、物联网中的应用原理:雷达作为"基础设施传感器"
激光雷达在 IoT 语境下的角色转变很有意思:从"装在移动体上的传感器"变成"装在基础设施上的边缘感知节点"。禾赛官网单独把 Stationary Applications(固定式应用)列为一个行业板块,正是这个方向。
5.1 典型架构
┌─────────┐ UDP点云 ┌──────────────┐ 结构化数据 ┌──────────┐
│ 路侧/固定 │ ──────────→ │ 边缘计算单元 │ ──────────→ │ 云平台/ │
│ 激光雷达 │ (以太网) │ (目标检测/跟踪)│ (MQTT/HTTP) │ 业务系统 │
└─────────┘ └──────────────┘ └──────────┘
关键点:点云在边缘侧就地处理,上云的只是结构化结果(目标 ID、类别、位置、速度、事件)。一颗 128 线雷达每秒产生上百万个点、几十 Mbps 带宽,原始点云上云既没必要也不经济——这是典型的边缘计算范式。
5.2 场景与机制
(1)车路协同(V2X)/ 智慧路口
路侧雷达对路口做全量感知,检测跟踪机动车、非机动车、行人,通过 RSU 广播给网联车辆,补盲车辆自身感知(如被遮挡的鬼探头)。相比摄像头,雷达输出的直接就是米制坐标,与高精地图对齐后无需复杂的相机标定投影。
(2)智慧港口 / 矿区 / 工业场站
禾赛官网 2026 年 7 月刚发的用例标题就叫 “No Fences, No Operators”——用雷达感知替代物理围栏和人工监管:对作业区域做 3D 电子围栏,人员/设备闯入实时告警,吊具与集卡对位引导等。港口 AGV 与固定式雷达配合(如与西井 Westwell 的合作),实现无人水平运输。
(3)安防与人流分析
体积级检测(不是像素级),对光照免疫;且点云天然不含人脸等生物特征,在隐私合规上比摄像头有显著优势——这一点在欧洲市场是实打实的卖点。
(4)空间感知 / 数字孪生
测绘级应用:手持/机载扫描(官网合作伙伴里的 Emesent、GeoCue 就是这个领域),生成建筑、矿洞、林业的高精度三维模型,作为数字孪生的几何底座。
5.3 IoT 集成的工程要点
- 协议层:雷达本身是 UDP 裸流,IoT 化需要边缘网关做协议转换(→ MQTT/Kafka),并处理断线重连、固件 OTA
- 标定:固定式雷达安装后需做外参标定(雷达坐标系 → 世界/地图坐标系),多雷达拼接还需互标定
- 可靠性:7×24 运行对雷达寿命提出车规级要求,这是纯固态(无运动件)方案在固定式场景的核心优势
- 算力匹配:边缘侧目标检测常用 CenterPoint / PointPillars 这类点云神经网络,或传统聚类+跟踪(匈牙利匹配 + 卡尔曼滤波),按成本和延迟需求选择
六、选型时看什么参数
结合前面的原理,把数据手册上的参数翻译成应用语言:
| 参数 | 含义 | 应用影响 |
|---|---|---|
| 测距量程 @10% 反射率 | 对低反射目标(深色衣物、轮胎)的有效距离 | 决定避障预警距离;标称最大量程通常是高反目标,看 @10% 才真实 |
| 线数 / 垂直角分辨率 | 垂直方向采样密度 | 远距离小目标(锥桶、行人)能否落上足够点数 |
| 点频(点/秒) | 整体信息量 | 影响检测算法输入密度与边缘算力需求 |
| 水平/垂直视场 | 覆盖范围 | 360° 用于 SLAM 环视;超半球(如 189° 垂直)覆盖贴地障碍 |
| 帧率 | 每秒帧数(10/20 Hz) | 高速运动场景需要更高帧率降低感知延迟 |
| 测距精度/重复精度 | 系统误差与随机误差 | 建图质量与定位稳定性的基础 |
| 防护等级 / 工作温度 | IP67/IP68、-40~85°C 等 | 户外机器人与固定式部署的硬门槛 |
| 抗干扰能力 | 抗阳光、抗多雷达串扰 | 多机器人同场作业、路侧密集部署必查 |
一个粗略的映射:室内 AMR/服务机器人 → 迷你 360° 短中距(JT/XT 类);户外移动机器人/低速无人车 → 360° 中长距(XT/OT/Pandar 类);固定式基础设施 → 按覆盖需求选 360° 或广角固态;车规前向 → 半固态 120° 长距(AT/ET 类)。
七、总结
- 原理层:主流是 dToF 脉冲测距,
d = cΔt/2,难点在皮秒级时间测量;FMCW 是值得关注的下一代方案 - 架构层:机械旋转、半固态、纯固态三条路线分别对应机器人环视、车规前向、近距补盲/固定式场景
- 数据层:雷达本质是吐 UDP 点云的以太网设备,极坐标→笛卡尔转换 + 时间同步 + 运动补偿是三个基础工程环节
- 机器人应用:点云 → 特征提取 → 扫描匹配 → LIO 紧耦合 → 回环优化的 SLAM 链路,加上地面分割 → 聚类 → 代价地图的避障链路
- 物联网应用:雷达作为边缘感知节点,点云在边缘结构化后经 MQTT 上云,支撑车路协同、智慧港口、安防与数字孪生
- 行业信号:从禾赛这类头部厂商的动向(机器人专用 JT 系列、固定式应用板块、AI 空间相机)看,激光雷达正在完成从"车载传感器"到"Physical AI 通用 3D 感知底座"的角色扩展
激光雷达的价格曲线过去几年下降得非常陡峭,当一颗 3D 雷达的成本进入几百美元区间,它在机器人和 IoT 里的渗透逻辑就和当年摄像头的普及是同一个故事——感知成本降到临界点之下,应用会自己长出来。
更多推荐

所有评论(0)