3、故障树分析(FTA):从一颗螺丝钉的断裂说起
各位工程师朋友,咱们今天聊聊故障树分析。说实话,这玩意儿我用了十几年,每次项目评审时都离不开它。FTA 说白了就是一套「追根溯源」的方法——从顶层的故障现象,一层层往下挖,直到找到最根本的原因。
我记得刚入行那会儿,带我的老工程师跟我说:「小张,你记住,一个系统出问题,往往不是单一原因造成的。你得学会用树状图把各种可能性串起来。」这句话我一直记到现在。
3.1 故障树基本符号:你得先认识这些「积木」
建树之前,咱们得先搞清楚用什么符号。我习惯把故障树符号分成三类:事件符号、逻辑门符号和转移符号。下面这张表是我自己整理的,你直接拿去用。
| 符号类别 | 符号名称 | 图形示意 | 含义说明 |
|---|---|---|---|
| 事件符号 | 顶事件 | 矩形 | 系统最不希望发生的故障,比如「发动机熄火」 |
| 事件符号 | 中间事件 | 矩形 | 需要进一步往下分析的事件 |
| 事件符号 | 底事件 | 圆形 | 最基本的故障原因,不再往下分解 |
| 事件符号 | 未展开事件 | 菱形 | 暂时不展开或信息不足的事件 |
| 逻辑门符号 | 与门 | 圆弧底+多条输入 | 所有输入事件同时发生,输出才发生 |
| 逻辑门符号 | 或门 | 尖底+多条输入 | 任意一个输入事件发生,输出就发生 |
| 转移符号 | 转入/转出 | 三角形 | 用于跨页连接,避免树太大 |
3.2 建树方法:别急着画,先理清逻辑
建树这事儿,看着简单,做起来容易翻车。我曾经带过一个新人,他画了一棵故障树,顶事件是「服务器宕机」,下面直接连了十几个底事件,全是「电源故障」「硬盘损坏」「内存错误」…… 我说你这不对,这些原因之间是什么关系?是「与」还是「或」?他愣住了。
建树的核心步骤,我总结为四步:
- 定义顶事件:明确你要分析的系统级故障。注意,顶事件必须具体、可测量。比如「电池续航不足4小时」就比「电池不好用」强得多。
- 逐层分解:从顶事件出发,问「直接原因是什么」。每一层只分解到直接原因,不要跳级。
- 确定逻辑关系:判断子事件之间是「与」还是「或」。这里有个坑——很多人习惯把所有原因都画成「或门」,觉得「只要有一个发生就行」。但实际项目中,很多故障需要多个条件同时满足才会触发。
- 终止条件:当事件无法再分解,或者分解到可更换的元器件级别时,就停止。底事件必须是可检测、可维修的。
3.3 定性分析:找最小割集,揪出「致命组合」
定性分析的核心,就是找最小割集。什么叫最小割集?说白了,就是「导致顶事件发生的最少底事件组合」。你想想看,如果某个故障只需要一个底事件就能触发,那这个底事件就是单点故障,必须重点防范。
我举个例子。假设一个简单的故障树:
- 顶事件:T(系统失效)
- 中间事件:A(电源故障)、B(控制逻辑故障)
- 底事件:X1(保险丝熔断)、X2(稳压器损坏)、X3(MCU死机)、X4(看门狗失效)
- 逻辑关系:T = A 或 B;A = X1 与 X2;B = X3 或 X4
那么,最小割集就是:{X1, X2}、{X3}、{X4}。看到了吗?{X3}和{X4}都是单点故障,意味着只要MCU死机或者看门狗失效,系统就挂了。而{X1, X2}需要两个同时发生,风险相对低一些。
3.4 定量分析:算顶事件概率,别被数字骗了
定量分析,就是给每个底事件赋一个发生概率,然后算出顶事件的发生概率。公式其实不复杂:
- 与门:P(输出) = P(输入1) × P(输入2) × ...
- 或门:P(输出) = 1 - (1 - P(输入1)) × (1 - P(输入2)) × ...
但这里有个大坑——底事件的概率数据从哪来?我见过不少工程师,随便从网上找个MTBF数据就往上套,结果算出来的顶事件概率跟实际差了十倍不止。
我个人建议,底事件概率最好来自:
- 历史故障数据:你们公司自己的维修记录,这是最靠谱的。
- 加速寿命试验:通过试验推算出失效率。
- 行业标准:比如MIL-HDBK-217F、IEC 62380等,但要注意使用条件。
举个例子,假设底事件X1(保险丝熔断)的概率是0.001,X2(稳压器损坏)的概率是0.002,那么「与门」输出A的概率就是0.001 × 0.002 = 2×10⁻⁶。而底事件X3(MCU死机)的概率是0.01,X4(看门狗失效)的概率是0.005,那么「或门」输出B的概率就是1 - (1-0.01)×(1-0.005) ≈ 0.01495。
最后,顶事件T的概率 = P(A) + P(B) - P(A)×P(B) ≈ 2×10⁻⁶ + 0.01495 - 2×10⁻⁶×0.01495 ≈ 0.01495。你看,顶事件概率几乎被B事件主导了。这说明什么?说明系统的主要风险在控制逻辑部分,而不是电源部分。
3.5 知识体系总览
下面这张图是我用SVG画的,把FTA的核心逻辑串起来了。你一看就明白:从顶事件出发,经过逻辑门分解到底事件,然后通过定性分析找最小割集,再通过定量分析算概率。
好了,FTA 的核心内容就这些。记住,故障树不是画完就完事的,它是个动态工具。项目进行到不同阶段,底事件的概率数据会变,最小割集也会变。我建议你每半年更新一次故障树,尤其是当有新的故障模式出现时。
公众号:蓝海资料掘金营,微信deep3321