2. 航天器系统与故障机理基础
要对航天器做故障注入,第一步不是写注入代码,而是把“被注入的对象”看清楚。航天器是一个由多个分系统耦合而成的复杂系统,故障可能发生在元器件、电路板、软件任务、总线链路、分系统接口乃至整星工作模式等不同层级。只有先建立“物理对象—逻辑对象—故障模式—失效机理”的对应认知,才能判断一次注入应该打在哪里、用什么方式打、期望观察到什么现象。
一、典型航天器分系统的组成与耦合关系
从功能划分看,一颗典型卫星通常包含若干核心分系统:结构与机构分系统提供承载与展开能力;姿轨控分系统(AOCS)通过敏感器(星敏感器、陀螺、太阳敏感器)和执行机构(动量轮、磁力矩器、推力器)维持姿态与轨道;电源分系统由太阳翼、蓄电池组、电源控制器(PCU)和配电单元构成;热控分系统通过热管、加热器、多层隔热材料维持温度窗口;测控与数传分系统负责遥测遥控与数据下传;星务管理分系统(OBDH)承担星上时间基准、任务调度、总线管理与模式控制。有效载荷则因任务而异。
这些分系统并非独立工作,而是通过供电母线、数据总线(如1553B、CAN、SpaceWire)和离散指令线相互耦合。例如姿轨控计算机需要星务提供时间基准,需要电源提供稳定二次电源,需要测控提供上行指令。这种耦合意味着:一个分系统的故障往往会以“跨分系统异常”的形式表现出来。做故障注入时,必须区分“故障源”和“故障现象”——陀螺输出异常可能是陀螺本身失效,也可能是供电纹波超标或总线数据被污染。
二、星载软件与硬件架构
星载硬件通常采用“中心计算机+智能终端+总线”的架构。中心计算机运行星务软件,智能终端(如姿控单元、电源控制器、载荷控制器)各自带有处理器和接口电路,通过总线与中心计算机交互。硬件层面可注入的对象包括:存储器位翻转、寄存器错误、总线时序违例、接口电平异常、电源欠压/过压、看门狗复位等。
星载软件一般分为三层:底层驱动与BSP、实时操作系统(RTOS)或执行体、应用任务层。软件故障注入的常见对象包括:任务堆栈溢出、优先级反转、内存越界、变量位翻转、任务超时、通信协议帧错误、模式切换逻辑错误等。软件注入通常通过打桩(stub)、钩子(hook)、内存改写或总线报文篡改实现。
三、空间环境效应与失效机理
空间环境是航天器故障的重要外部诱因。主要效应包括:
- 单粒子效应(SEE):高能粒子击中存储单元或逻辑电路,引起位翻转(SEU)、瞬态脉冲(SET)甚至锁定(SEL)。SEU通常可恢复,SEL可能导致器件永久损坏。
- 总剂量效应(TID):长期累积导致阈值电压漂移、漏电流增大,表现为参数退化而非突发故障。
- 充放电效应:表面或深层介质充放电,可能引起静电放电,干扰或损坏电子设备。
- 热环境:极端温差导致材料应力、焊点疲劳、润滑失效,属于渐进性失效。
这些机理决定了故障注入不能只注入“逻辑错误”,还要考虑“物理诱因导致的参数漂移”和“瞬态干扰”。例如模拟SEU时,注入的是存储器某一位翻转;模拟SEL时,注入的是某器件电流异常增大并触发保护。
四、常见故障模式与失效机理的对应
把故障模式与失效机理对应起来,是设计注入用例的关键。下表给出典型示例(参数为教学假设,非实测值):
| 故障模式 | 可能失效机理 | 可注入对象 | 典型观测点 |
|---|---|---|---|
| 陀螺输出跳变 | SEU导致寄存器翻转 | 陀螺数据寄存器 | 姿控遥测角速度 |
| 总线通信超时 | 接口芯片受干扰 | 1553B终端 | 总线错误计数 |
| 电源欠压 | 蓄电池单体失效 | PCU输出电压 | 母线电压遥测 |
| 任务死锁 | 优先级反转 | RTOS调度器 | 任务心跳计数 |
五、从对象认知到注入设计
建立认知后,注入设计应回答四个问题:注入点在哪里(物理/逻辑对象)、注入什么(故障模式与参数)、怎么注入(接口与手段)、期望看到什么(遥测/日志/行为变化)。例如,要验证星务软件对陀螺SEU的容错能力,可在姿控单元与星务计算机之间的总线报文上注入“角速度字段某一位翻转”,观察星务是否能在连续三帧异常后切换到备份陀螺,并记录切换时间与姿态偏差。
图中把空间环境、分系统、软硬件架构、故障模式、失效机理和注入设计串成一条认知链。实际工作中,建议以“分系统—对象—故障模式—失效机理—注入手段—观测点”为字段,建立一份可维护的注入对象清单。例如某姿控单元陀螺数据寄存器,对应SEU机理,注入手段为总线报文位翻转,观测点为姿控遥测角速度和备份切换标志。这样,后续的注入用例、判据和恢复验证才有明确的物理与逻辑落点,而不是停留在抽象概念上。