第1章:危害识别方法——HAZOP分析、FMEA方法、FTA故障树分析
各位同行,今天我们来聊聊飞控系统安全分析中最基础、也最核心的一步——危害识别。
说白了,危害识别就是回答一个问题:“系统到底可能怎么出问题?” 我做了十几年飞控安全,见过太多项目在后期才发现隐患,结果改起来成本翻倍。所以,这一章我们就把三种最经典的方法讲透:HAZOP、FMEA、FTA。
1.1 HAZOP分析——从偏差中找隐患
HAZOP,全称是 Hazard and Operability Study。我最早接触它是在化工领域,后来发现飞控系统里同样好用。它的核心思路就一句话:用引导词去挑战每一个设计参数。
举个例子,你设计了一个舵面偏转角度指令。那我们就问:
- 无:如果没有这个指令会怎样?
- 多:如果指令偏大呢?
- 少:如果指令偏小呢?
- 反向:如果指令反了?
- 早/晚:时序错了会怎样?
关键点:HAZOP 不直接找故障原因,而是先找“偏差”。偏差是安全分析的起点。
我在一个无人机项目中,就用 HAZOP 发现了一个隐蔽问题:空速管加热指令在低温下“延迟”了 2 秒。这个偏差在正常分析中根本不会注意到,但 HAZOP 的“晚”引导词直接把它揪了出来。
我的小技巧:做 HAZOP 时,一定要拉上系统工程师、软件工程师、硬件工程师一起开会。一个人想不全所有偏差,人多力量大。
1.2 FMEA方法——失效模式与影响分析
FMEA 和 HAZOP 不同。HAZOP 是从上往下找偏差,FMEA 是从下往上——从每一个元器件、每一个功能模块出发,问“它坏了会怎样?”
FMEA 的标准流程,我习惯分成五步:
- 列出所有组件/功能:比如 IMU、GPS、舵机、飞控计算机。
- 列出每个组件的失效模式:开路、短路、漂移、卡死、无输出。
- 分析失效影响:对上一级的影响、对系统的影响。
- 评估严重度(S)、发生度(O)、检测度(D)。
- 计算 RPN = S × O × D,排序后优先处理高 RPN 项。
嗯,这里要特别提醒一下:RPN 只是一个排序工具,不是绝对真理。我见过有人把 RPN 低于 100 的项全忽略,结果出了问题。所以,RPN 低不代表风险低,尤其是严重度 S 高的项,哪怕发生概率低,也必须处理。
我曾经踩过的坑:在某型飞控的 FMEA 中,我把“GPS 信号丢失”的发生度评为 2(很低),因为理论上在城市上空信号很好。结果试飞时正好经过一座高架桥下方,信号丢了 3 秒,飞机差点失控。从那以后,我对“发生度”的评估变得非常保守。
下面是一个简化的 FMEA 表格示例,供你参考:
| 组件 | 失效模式 | 失效影响 | S | O | D | RPN |
|---|---|---|---|---|---|---|
| 空速管 | 堵塞 | 空速数据错误 → 失速保护失效 | 9 | 3 | 4 | 108 |
| 舵机 | 卡死 | 舵面无法偏转 → 失控 | 10 | 2 | 5 | 100 |
| IMU | 漂移 | 姿态估计偏差 → 导航发散 | 8 | 4 | 3 | 96 |
1.3 FTA故障树分析——从顶事件往下挖根因
FTA 和前面两种方法的角度又不一样。它先确定一个“顶事件”——比如“飞机坠毁”——然后一层层往下分解,直到找到最基本的故障原因。
FTA 用逻辑门来连接事件:
- 与门(AND):所有下层事件同时发生,上层才发生。
- 或门(OR):任意一个下层事件发生,上层就发生。
举个例子,顶事件是“飞控计算机失效”。往下分解:
- 可能是“主处理器失效” 与 “备份处理器也失效”(与门)
- 也可能是“电源模块失效”(或门)
我个人觉得,FTA 最大的价值在于暴露设计中的单点故障。如果你发现某个底事件通过一个或门就能直接触发顶事件,那这就是一个必须消除的单点。
核心原则:FTA 的深度要做到“基本事件”为止。基本事件就是那些不能再往下分解的、有明确物理意义的故障,比如“电阻开路”、“焊点脱落”。
我习惯用 FTA 来验证 FMEA 的结果。FMEA 可能会漏掉一些组合故障,而 FTA 的与门正好能捕捉到“两个不太可能的事件同时发生”这种场景。说白了,FMEA 和 FTA 是互补的,不是替代关系。
避坑指南:做 FTA 时,不要一开始就画很大的树。我建议先画出顶事件和第一层,然后逐层细化。画得太细容易迷失在细节里,画得太粗又找不到根因。适可而止,够用就好。
1.4 三种方法的协同使用
你可能会问:这三种方法到底用哪个?我的答案是:全用。
在实际项目中,我通常这样安排:
- 概念阶段:先用 HAZOP 扫一遍,找出所有可能的偏差。
- 详细设计阶段:用 FMEA 对每个组件做细致分析。
- 验证阶段:用 FTA 对关键顶事件做根因分析,验证设计是否充分。
举个例子,我在一个 eVTOL 项目中,先用 HAZOP 发现了“电机转速指令反向”这个偏差,然后通过 FMEA 定位到是“PWM 信号线序错误”导致的,最后用 FTA 确认了“线序错误”与“未做交叉检查”这两个事件同时发生才会导致事故。你看,三个方法串起来,就把问题彻底锁死了。
重要提醒:无论用哪种方法,文档记录一定要完整。我见过太多项目,分析做得很漂亮,但半年后回头看,根本不知道当时为什么这么判断。所以,每一步的假设、依据、结论,都要写清楚。
好了,这一章的内容就到这里。三种方法各有侧重,但目标一致——把飞控系统的安全隐患提前揪出来。下一章我们会深入讲如何对这些危害进行风险评估和定级,到时候再聊。