第1章:嵌入式系统可靠性基础

1.1 为什么可靠性这么重要?

做医疗理疗仪这么多年,我最大的体会就是——可靠性不是锦上添花,而是生死攸关。你想想看,一台理疗仪如果突然死机,或者输出功率失控,后果是什么?轻则治疗中断,重则可能对患者造成伤害。

我入行第三年就遇到过一件事。一台低频理疗仪在临床试验中突然输出异常,患者被电了一下。虽然没造成严重伤害,但那次事故直接导致项目延期半年,公司赔了一大笔钱。从那以后,我对可靠性设计就再也不敢马虎了。

说白了,可靠性就是产品在规定的条件下、规定的时间内,完成规定功能的能力。听起来有点绕口?我换个说法:你希望你的理疗仪在患者使用的时候,别出幺蛾子。

1.2 MTBF——平均无故障时间

MTBF(Mean Time Between Failures)是衡量可靠性的核心指标。它表示产品在两次故障之间的平均工作时间。单位通常是小时。

举个例子:一台理疗仪的MTBF是5000小时,意味着平均每5000小时会出现一次故障。注意,我说的是「平均」。不是每台机器都刚好5000小时坏,而是大量样本统计出来的期望值。

我在项目中见过不少工程师把MTBF当成「保证寿命」,这是错的。MTBF是统计值,不是承诺值。你设计时算出来MTBF是1万小时,不代表每台机器都能用1万小时不坏。

MTBF的计算方法:

MTBF = 总运行时间 / 故障次数

比如10台样机各跑了1000小时,总共出现2次故障,那么MTBF = (10 × 1000) / 2 = 5000小时。

实际项目中,我们常用元器件失效率法来预估MTBF。每个元器件都有失效率λ,单位是FIT(Failures In Time,1 FIT = 10⁻⁹/小时)。整机的失效率就是所有元器件失效率之和,然后MTBF = 1 / λ总。

我的经验:做理疗仪时,电源模块和MCU往往是失效率大头。我习惯在选型阶段就查好每个关键器件的FIT值,提前做预算。别等到设计完了才发现MTBF不达标,那时候改起来就痛苦了。

1.3 故障树分析(FTA)

FTA是一种自上而下的分析方法。我们从顶事件(也就是最不希望发生的事故)出发,一层层往下找原因,直到找到最基本的故障模式。

举个例子:理疗仪的顶事件是「输出过流导致患者灼伤」。往下分析,可能的原因有:

  • 电流检测电路失效
  • MCU控制逻辑错误
  • 功率管短路
  • 软件看门狗失效

每个原因还可以继续分解。比如「电流检测电路失效」可能是采样电阻开路、运放损坏、ADC通道故障等等。

FTA的符号规则:

  • 矩形:顶事件或中间事件
  • 圆形:底事件(基本故障,不再分解)
  • 与门:所有输入同时发生,输出才发生
  • 或门:任一输入发生,输出就发生

我习惯在项目早期就画FTA。为什么?因为画完你就知道哪些地方是薄弱环节,该加冗余的加冗余,该做诊断的做诊断。我曾经在一个项目中,FTA分析发现「软件死锁」这个底事件概率很高,于是专门加了一个独立硬件看门狗。后来产品上市三年,没出过一次死锁故障。

注意:FTA的准确性取决于你对系统的理解深度。如果漏掉某个底事件,整个分析就白做了。我建议拉上硬件、软件、测试一起评审,别一个人闷头画。

1.4 失效模式与影响分析(FMEA)

FMEA和FTA正好相反。FTA是自上而下,FMEA是自下而上。我们从每个元器件或每个功能模块出发,分析它可能怎么失效,以及失效后对系统的影响。

FMEA的核心是三个指标:

  • 严重度(S):失效后果有多严重,1~10分,10分最严重
  • 发生度(O):失效发生的概率,1~10分,10分最频繁
  • 检测度(D):现有手段能检测出失效的概率,1~10分,10分最难检测

然后计算风险优先数(RPN = S × O × D)。RPN越高,越需要优先处理。

一个真实的FMEA片段(理疗仪输出模块):

功能 失效模式 S O D RPN 改进措施
功率输出 功率管短路 9 3 6 162 加串联保险丝+电流检测
电流采样 采样电阻开路 7 2 4 56 增加冗余采样通道
MCU控制 程序跑飞 8 4 5 160 独立硬件看门狗+CRC校验

你看,RPN最高的两个是「功率管短路」和「程序跑飞」。这就是我们设计时要重点关注的。我一般设定RPN超过100就必须整改,低于50可以接受,中间值酌情处理。

避坑指南:我曾经犯过一个错——FMEA只做了一次就扔一边了。后来产品改版,新增了一个功能,但FMEA没更新。结果新功能有个失效模式没被识别,差点出事。现在我的习惯是:每次设计变更,FMEA必须同步更新。这是血的教训。

1.5 三个工具怎么配合使用?

很多新手会问:FTA和FMEA到底用哪个?我的答案是:两个都要用,而且配合着用。

  • FTA帮你从顶层往下找原因,适合分析已知的故障场景
  • FMEA帮你从底层往上找影响,适合发现未知的故障模式
  • MTBF是最终的量化的指标,验证你的设计是否达标

我个人的工作流程是这样的:

  1. 先做FMEA,列出所有可能的失效模式
  2. 挑出RPN高的失效模式,用FTA深入分析根因
  3. 根据分析结果改进设计
  4. 最后用MTBF预估来验证整体可靠性

说白了,FMEA是「广撒网」,FTA是「深挖洞」,MTBF是「算总账」。三个工具缺一不可。

最后提醒一句:这些分析工具只是手段,不是目的。目的是做出安全可靠的理疗仪。别为了做文档而做文档,我见过有人FMEA写了上百页,但产品该出问题还是出问题。分析完了,一定要落实到设计改进上,否则就是纸上谈兵。

好了,这一章就讲到这里。下一章我们聊聊硬件可靠性设计,包括降额设计、冗余设计和热管理。这些东西在理疗仪里特别实用,到时候我会拿我踩过的坑来举例。