1. 课程导入与任务中断恢复全景
无人系统在执行任务时,最怕的不是“飞不起来”,而是“飞到一半出问题”。一架巡检无人机在跨越山谷时链路突然衰减,一台无人车在园区配送途中被临时施工封路,一艘无人艇在自主巡航时电池组触发过温保护——这些场景的共同点是:任务没有按原计划连续完成,系统被迫进入一个“非预期但必须处理”的中间状态。我们把这种状态称为任务中断,而把系统从该状态重新回到可继续执行任务的过程称为任务恢复。
需要先明确一个边界:任务中断不等于任务失败。中断是任务执行流被打断,失败是任务目标无法达成。一次中断如果处理得当,任务仍可能完成,只是时间、路径或资源消耗发生变化。因此,本课程关注的不是“如何避免一切中断”,而是“中断发生后,系统如何判断、决策并重新组织任务”。
中断的分类:从来源到影响面
工程上最实用的分类方式是按中断来源划分,因为它直接决定恢复策略的选择。常见来源包括:
- 平台自身异常:电池电压骤降、电机过温、IMU 漂移、飞控看门狗复位。这类中断通常需要先降级或返航,再谈恢复。
- 通信链路异常:遥控链路丢包、图传中断、4G/5G 切换失败、Mesh 节点掉线。恢复的关键是链路重建与指令重同步。
- 环境与外部约束:突风、降雨、GNSS 遮挡、临时禁飞区、道路封闭。这类中断往往要求任务级重规划,而非简单重试。
- 任务逻辑异常:目标点不可达、载荷触发失败、任务队列冲突、依赖任务未完成。恢复需要重新解析任务图。
按影响面又可分为单点中断(仅一个传感器或一个航段受影响)和全局中断(整机安全状态触发,必须中止当前任务)。分类的意义在于:单点中断可以“局部修补”,全局中断必须先进入安全状态,再决定是否恢复。
恢复目标:不是“回到原样”,而是“重新可用”
很多人直觉上认为恢复就是“让系统回到中断前的状态”。但在无人系统中,这既不现实也不必要。更准确的目标是让系统重新进入可继续执行任务的状态。具体可拆成三个可衡量的目标:
- 任务连续性:已完成的任务成果不丢失。例如巡检无人机已拍摄的 12 个点位照片应保留,恢复后从第 13 个点位继续,而不是从第 1 个重拍。
- 安全可控:恢复动作本身不能制造新风险。链路中断时,若盲目让无人机继续前飞,可能进入禁飞区;正确做法是先悬停或按预设安全航线返航,再尝试重建链路。
- 资源可承受:恢复代价必须在剩余能量和时间预算内。若剩余电量仅够返航,就不应尝试“再飞两个点”,而应直接进入返航恢复模式。
核心挑战:三个“不一致”
任务恢复之所以困难,本质上是三类不一致造成的:
- 状态不一致:地面站认为无人机在 A 点,飞控实际在 B 点;或者任务队列已更新,但机载端未收到。恢复前必须做状态对齐。
- 时间不一致:中断持续 3 秒和持续 30 秒,恢复策略完全不同。短时丢包可重传,长时失联必须触发安全逻辑。
- 策略不一致:不同厂商、不同任务类型的恢复逻辑各异,缺乏统一验证手段。这也是本课程后续要解决的重点。
整体知识框架:从检测到验证的闭环
本课程后续章节将围绕一条完整链路展开:中断检测 → 状态评估 → 恢复策略选择 → 任务重同步 → 恢复结果验证。这条链路不是线性一次性的,而是一个带反馈的闭环——每次恢复的结果都会反过来修正检测阈值和策略参数。
以园区无人配送车为例:当车辆检测到前方道路封闭(环境约束中断),系统首先评估自身位置、电量和剩余订单;若电量充足且存在可绕行路径,则选择“局部重规划”策略,将新路径下发至导航模块,并从当前路段断点继续;若电量不足以完成绕行,则选择“降级恢复”,先返回最近站点,将剩余订单转交其他车辆。恢复完成后,系统记录本次中断类型、决策依据和实际耗时,用于后续优化。
| 阶段 | 关键输入 | 典型输出 | 判断依据 |
|---|---|---|---|
| 中断检测 | 心跳、传感器阈值、任务超时 | 中断标志与类型 | 连续 3 帧丢失或阈值越限 |
| 状态评估 | 位置、电量、任务进度 | 安全等级与可恢复性 | 电量是否支持恢复动作 |
| 策略选择 | 中断类型 + 状态等级 | 重试 / 重规划 / 降级 / 中止 | 策略表或规则引擎 |
| 任务重同步 | 断点信息、新路径 | 更新后的任务队列 | 断点编号与状态快照 |
| 结果验证 | 恢复后遥测与任务日志 | 成功 / 失败 / 二次中断 | 任务是否继续推进 |
这张表不是要求死记硬背,而是帮助你在遇到真实中断时快速定位“现在处于哪个阶段、下一步该看什么”。后续章节会逐一展开每个阶段的实现细节、参数设置和常见陷阱。
理解全景之后,接下来要做的第一件事,是学会准确识别中断并给它分类。只有分类正确,后续的策略选择才有意义。