2. 集群体系结构与故障传播机理

多无人机集群不是若干架无人机的简单叠加,而是一个由通信链路、角色分工和协同控制逻辑共同约束的分布式系统。要理解故障节点隔离与重构,必须先看清三件事:集群用什么架构组织、节点之间靠什么拓扑交换信息、一个节点的异常会沿哪些路径扩散并最终影响任务。本节围绕这三条主线展开,并给出可用于分析故障影响的结构化方法。

一、多无人机协同架构:分层与去中心化的取舍

工程上常见的集群架构可归为三类。第一类是集中式:地面站或一架长机统一解算任务分配与航迹,其余无人机只执行指令。它的优点是全局信息完整、冲突消解简单;缺点是中心节点一旦失效,整个集群失去决策能力,且链路带宽随规模增长迅速饱和。第二类是分布式:每架无人机基于邻居信息与一致性协议自主协商,没有单点决策中心。它抗毁性强、可扩展,但收敛速度受拓扑连通度影响,且难以保证全局最优。第三类是分层式:将集群划分为若干簇,簇内由簇首协调,簇首之间再组成上层网络。它在规模、时延与抗毁性之间取得折中,是目前中大型集群的主流选择。

以 12 架无人机的侦察集群为例,可划分为 3 个簇,每簇 4 架,其中 1 架担任簇首。簇内采用星型或网状通信,簇首之间采用网状互联。这种结构下,单架普通节点失效只影响本簇局部覆盖,而簇首失效则需要触发簇内重新选举,影响范围上升一个层级。架构选择直接决定了后续故障隔离的粒度与重构代价。

二、通信拓扑与节点角色

通信拓扑描述的是“谁能直接和谁说话”。常见形式包括星型、网状、链式和分簇混合型。拓扑的连通度和割点是分析故障传播的关键:割点一旦失效,网络可能分裂为互不连通的两个子网。实际飞行中,拓扑并非静态,它会随队形变化、遮挡、干扰和节点退出而动态改变,因此需要周期性交换心跳与邻居表来维护。

节点角色通常分为四类:指挥/决策节点负责任务规划与冲突消解;簇首/中继节点负责簇内汇聚与跨簇转发;执行节点承担感知、打击或运输等具体任务;备份节点处于热备状态,随时接管失效角色。角色不是固定身份,而是可迁移的“职责”,这正是重构能够实现的前提。

分簇集群拓扑与故障传播路径示意(12 架 / 3 簇) 簇 A(侦察) A0簇首 A1 A2 A3 簇 B(打击) B0簇首 B1 B2 B3 簇 C(中继) C0簇首 C1 C2 C3 B2✕ 故障传播与影响判读 故障源节点(B2 通信中断 / 传感器失效) 一级传播:簇内邻居失去 B2 状态更新,一致性收敛变慢 二级传播:B0 簇首需重分配 B2 任务,跨簇链路负载上升 三级影响:若 B0 过载失效,簇 B 整体退出,任务覆盖出现缺口 关键判据 • 割点是否失效 • 簇首负载是否超阈值 • 连通度是否低于 2 • 任务覆盖率下降幅度

三、故障类型与传播路径

集群中的故障可按来源分为四类。节点级故障包括传感器漂移、执行机构卡死、电池异常和飞控死机,表现为单机状态偏离或完全失联。通信级故障包括链路丢包、时延抖动、信道干扰和消息篡改,表现为邻居表更新停滞或数据不一致。软件级故障包括任务分配算法死锁、状态机卡滞和内存泄漏,往往不立即表现为失联,而是让节点“在线但行为异常”。环境级故障包括强电磁干扰、GPS 欺骗和突发风扰,可能同时影响多架无人机,属于共因故障。

故障传播有三条典型路径。其一是拓扑传播:故障节点作为中继失效,导致其下游节点与网络断开,形成“孤岛”。其二是负载传播:某节点失效后,其任务被邻居接管,邻居计算与通信负载上升,若超过阈值则引发连锁过载。其三是信息传播:异常节点持续广播错误状态,污染邻居的共识值,使整个簇的决策偏移。三条路径常常叠加出现,这也是集群故障比单机故障更难处理的原因。

四、故障对集群任务的影响分析

分析故障影响时,建议从“任务—角色—拓扑”三个维度建立映射。以区域覆盖侦察任务为例,可定义任务覆盖率 C = 有效侦察面积 / 目标区域面积,以及任务完成时间 T。当一架执行节点失效,覆盖率下降约 1/N(N 为执行节点数);当一架簇首失效,若重构及时,覆盖率可在数秒内恢复,但会引入额外的选举与重路由时延;若割点节点失效且无备份路径,则可能造成局部区域长期失管。

下面给出一份可用于课堂演练的故障影响分析表,参数为示例假设值,实际使用时需按真实链路预算与任务指标替换。

故障对象 故障类型 传播路径 影响范围 可观测指标 重构动作
A1 执行节点 传感器漂移 信息传播 簇 A 局部 邻居共识偏差 > 5% 隔离该节点,任务转交 A2
B0 簇首 飞控死机 拓扑 + 负载 簇 B 整体 心跳超时 > 3 s 簇内选举新簇首,重路由
C2 中继节点 链路干扰 拓扑传播 簇 C 下游 丢包率 > 30% 切换备用中继 C3
多节点 GPS 欺骗 共因故障 全集群 位置残差突增 切换惯导,降级任务模式
判断故障是否已从“局部”升级为“系统性”风险,可重点观察三个信号:一是网络连通度是否降到 2 以下;二是簇首节点的 CPU 与链路占用是否持续超过 80%;三是任务覆盖率是否在无外部指令的情况下持续下降。三者同时出现,通常意味着需要立即启动全局重构,而不仅是隔离单个节点。