1. 课程导入
当无人机从开阔空域进入城市楼宇、室内仓库、森林峡谷或灾后废墟等复杂环境时,飞行任务的核心矛盾会迅速从“如何飞得稳”转变为“如何在未知或动态变化的三维空间中安全、连续、可解释地飞下去”。这正是三维避障与局部规划要解决的问题。它并不是单一算法,而是一套贯穿感知、建图、决策、控制与工程部署的系统能力。
本节定位:作为全课程导入,先建立“定义—目标—框架—应用—误区”的整体认知地图,后续章节将分别深入传感器、地图表达、搜索算法、轨迹优化、动态避障与工程落地。
一、什么是无人机三维避障与局部规划
三维避障指无人机利用机载传感器(如双目相机、深度相机、激光雷达、毫米波雷达、超声波等)感知周围障碍物,并在三维空间中判断哪些区域不可通行、哪些区域存在风险,从而生成安全约束。它关注的是“哪里不能去”以及“距离危险有多近”。
局部规划则是在全局任务目标(如从A点飞到B点)和当前局部感知信息之间,实时生成一段可执行的短时轨迹或速度指令。它不要求一次性算出完整全局路径,而是以滚动时域方式不断重规划,使无人机能够应对突然出现的行人、移动车辆、临时障碍或地图误差。
两者关系可以概括为:避障提供安全边界,局部规划提供可行运动。没有避障,局部规划会盲目;没有局部规划,避障只能得到“不能走”的结论,无法转化为“怎么走”。
二、学习目标:从“会飞”到“会安全地自主飞”
本课程的学习目标不是让读者死记某个算法公式,而是建立一套可迁移的工程能力。完成学习后,应能够:
- 理解定义边界:区分全局规划、局部规划、避障、轨迹优化、反应式避障等概念,知道它们各自解决什么问题。
- 掌握核心方法:能够根据场景选择栅格法、ESDF、A*、RRT*、MPC、速度障碍法、人工势场法等手段,并说明其适用条件。
- 建立系统视角:把传感器、地图、规划器、控制器和飞控接口串成闭环,理解时延、噪声、算力对系统的影响。
- 具备工程落地能力:能够配置参数、分析日志、定位避障失败原因,并在仿真与实飞之间完成迁移验证。
三、整体知识框架:五层一闭环
本课程的知识框架可以概括为“五层一闭环”。五层分别是感知层、建图层、规划层、控制层和应用层;一闭环指执行结果持续反馈到感知与建图,形成滚动重规划。下表给出各层的核心任务与典型技术。
| 层级 | 核心任务 | 典型技术/工具 | 关键指标 |
|---|---|---|---|
| 感知层 | 获取三维环境与自身状态 | 双目、深度相机、LiDAR、IMU、VIO | 帧率、测距精度、盲区 |
| 建图层 | 表达可通行与危险区域 | 占据栅格、八叉树、ESDF、点云地图 | 分辨率、更新频率、内存 |
| 规划层 | 生成安全可行轨迹 | A*、RRT*、MPC、VO、人工势场 | 成功率、耗时、平滑度 |
| 控制层 | 跟踪轨迹并稳定姿态 | PID、LQR、MPC、PX4/ArduPilot | 跟踪误差、响应延迟 |
| 应用层 | 面向任务定义约束与目标 | 物流、巡检、救援、植保 | 任务完成率、安全性 |
四、工程应用全景与典型案例
在城市物流配送中,无人机需要在楼宇之间穿行,障碍物包括静态建筑、临时吊臂、飞鸟和其他飞行器。局部规划器必须在几十毫秒内完成重规划,否则高速飞行下避障距离会迅速缩短。
在室内巡检中,仓库货架密集、通道狭窄,GPS不可用,主要依赖VIO与深度相机。此时地图分辨率、膨胀半径和最小安全距离的设定直接决定无人机能否通过窄缝。
在应急救援中,环境未知且可能持续变化,局部规划需要兼顾探索与安全。常用策略是“前沿探索+局部避障”,先保证不撞,再逐步扩展地图。
工程提示:真实项目中,避障失败往往不是算法本身错误,而是感知盲区、地图过期、参数过激或控制延迟造成的。排障时应先看感知数据,再看地图,最后看规划输出。
五、常见误区与复盘
- 误区一:把全局规划当局部规划。全局路径在动态环境中会迅速失效,必须依靠局部滚动重规划。
- 误区二:只追求算法先进,忽略实时性。再好的算法,如果单次规划超过控制周期,也无法安全飞行。
- 误区三:安全距离设得越大越安全。过大的膨胀半径会导致窄通道无解,反而迫使无人机绕远或悬停。
- 误区四:仿真通过就等于实飞通过。实飞中存在振动、光照、风扰和通信延迟,必须留足安全余量。
# 典型局部规划参数检查清单(示例)
max_vel: 3.0 m/s # 最大速度
max_acc: 2.0 m/s^2 # 最大加速度
safety_margin: 0.5 m # 安全膨胀距离
plan_horizon: 2.0 s # 滚动时域长度
replan_rate: 20 Hz # 重规划频率
sensor_timeout: 100 ms # 感知超时阈值