简介:面向硬件设计、质量与可靠性工程师的MTBF计算示例文档,围绕平均故障间隔时间这一可靠性指标,给出以金属膜电阻为对象的失效率预计过程。内容以完整计算书形式组织,共34页,从基本失效率、环境系数、质量系数、应力系数等参数选取入手,逐项列出位号、型号、数量、环境温度与工作失效率,并演示λp=λbπEπCVπQ公式在具体器件上的应用,便于读者理解MTBF计算中参数来源与表格推导逻辑。压缩包仅含1个PDF文件,大小约187KB,适合作为可靠性预计报告、器件应力分析及MTBF计算书编制的参考样例。已有1649人学习,可供需要建立失效率计算思路、核对系数取值或整理计算模板的工程技术人员查阅借鉴。
1. MTBF 不是寿命:为什么 20 万小时的平均无故障时间撑不过十年
一块 100W 级电源的可靠性预计书,最后落在纸上的常常是一个六位数:MTBF 二十万小时。客户拿它当准入条件,研发拿它当交付物,但这个数字经常被读错——“二十万小时”不是“能连续跑二十三年”。在指数分布假设下,当运行时间正好等于 MTBF 时,可靠度只剩 e⁻¹≈36.8%;十台里能活下来的不到四台。它真正的含义是整批产品的平均无故障间隔,是一个统计均值,不是任何一台机器的保质期。
支撑这个均值的,是一条从元器件的可靠性手册查表开始的数值链:每个器件查一个基本失效率,乘上一串 π 系数,再按数量求和、取倒数。这条链怎么搭起来、系数为什么是乘法、哪一步最容易悄悄算错,值得从头拆一遍。
2. 应力分析法:为什么器件失效率是一串乘子连乘出来的
可靠性预计有两条路:一条只数器件个数和种类,叫元器件计数法;另一条要盯着每个器件的实际电应力、工作温度、质量等级,叫应力分析法。这份 34 页的计算书走的是后者——每一行都要写清位号、型号、数量、基本失效率、查表得到的几个 π 系数,再代入公式算工作失效率。80VDC 输入一组、100VDC 输入一组,两组各算一遍,因为同一颗器件在两种工况下的应力比并不相同。
2.1 系统相加、器件相乘:加与乘的分工
先看整机。整机失效率按串联可靠性模型处理:任何一个器件失效,机器就停,所以整机失效率等于所有器件失效率的代数和,λ_sys = Σ Nᵢ·λpᵢ。这里的“串联”不是电路拓扑上的串并联,而是可靠性框图语义——只要没有冗余设计,电解电容和保险丝在可靠性上就是串在一起的两节链条,谁断都算断。
再看单个器件:λp = λb × πE × πQ × πT × πS …… 用乘法而不是加法,是有讲究的。可靠性的应力修正本质是一类比例风险模型:基准失效率 λb(t) 描述器件在标准条件下的固有风险,各种外部条件以乘子的形式成比例地放大或缩小这个风险。取对数后乘法变成加法,每个乘子就是该因素对 log 失效率的线性贡献。更关键的是,乘法的中性元是 1——“这个因素没有额外影响”可以写成 1,乘上去不改变结果;如果改用加法,中性元是 0,多个因素叠加后还要单独定义基准,跨器件就没法统一。
所以这套体系里加和乘各有分工:器件之间是竞争风险关系,失效率相加;单个器件的使用条件是对基准的修正,用乘法。这份计算书里每一行的公式都写成 λp=λbπEπCVπQ 这类连乘形式,就是因为这个行内修正的语义。
2.2 基本失效率 λb 在手册里是一族曲线
容易误读的一点:λb 不是某个器件的固定常数,而是手册根据大量试验数据拟合出来的曲线族在某个点的取值。同一类器件,电应力不同,λb 就不同,而同时应力系数本身也会变,等于同一个物理量被算了两次——这不是重复计算,而是手册把温度、电流应力的基准曲线做进了 λb,又用 π 项修正偏离基准的程度。
这份计算书里整流管的一组数据很能说明问题:某整流器件在应力比 S=0.1 时 λb 取 0.0160×10⁻⁶/h;同类器件在 S=0.2 时 λb 升到 0.0220;到 S=0.3 时是 0.0300。λb 本身随应力近乎线性地往上抬,后面的 πS2 项还要再从 1、1.5 变到 2。两个口子同时收紧,意味着高应力器件的失效率会以比直觉更快的速度恶化。看表时如果只盯 π 系数,把 λb 当成厂商给的固定值抄下来,结果会偏低一截。
2.3 25℃ 的环境温度和 58℃ 的结温:温度从哪个口子进公式
整份计算书里反复出现“环境温度:25℃”,这是实验室的箱内条件,也是所有 πE、πT 查表的起点。但真正决定失效率的是器件内部温度,不是箱内温度。计算书里 PWM 芯片那一段写得很清楚:环境 25℃,芯片结温按 Tj=55+3=58℃ 取,温度应力系数 πT 查出来是 1.33。也就是说,芯片在 25℃ 的箱子里实际工作在 58℃,多出来的 33℃ 是自身功耗带来的温升。
同一份表里,电解电容的备注只写环境温度 25℃、应力系数 S=0.5 或 0.8;继电器、变压器、输出电感则写 THS=45℃、50℃、60℃ 这类“热点温度”。这几种写法混在一张表里,是可靠性预计最容易翻车的地方之一:不同器件类别的温度定义不同,电容看壳温或热点温度,半导体看结温,继电器看触点或线圈温度。统一按 25℃ 去查所有表,等于给功率器件集体减负。
3. π 系数逐个拆:每个倍率在修正哪个物理量
π 系数看着像玄学符号,其实每一个都对应一个具体的物理或管理维度。这份计算书里出现过的乘子至少有九种:πE 环境、πQ 质量、πT 温度、πS2 或 πCV 电应力、πA 应用、πC 复杂度、πK 结构、πV 电压、πR 阻值。它们的共同点是以 1 为基准、以倍率放大风险。
| 乘子 | 修正的物理量 | 取值形态 | 计算书里的实例 |
|---|---|---|---|
| πE | 使用环境(温控、湿度、振动) | 环境分类查表 | GF1,电阻 1.8、电解 2.4、芯片 2.5 |
| πQ | 质量等级(筛选、认证水平) | 等级查表 | A2/B2/A4,从 0.7 到 2.2 |
| πT | 结温或热点温度 | 温度曲线 | 58℃ 时 1.33 |
| πS2/πCV | 电应力比 S=实际/额定 | 分段表 | 0.1、0.3、0.5、0.8 各档 |
| πC | 封装与集成复杂度 | 复杂度等级 | 芯片封装项 0.045 |
| πV | 工作电压相对额定电压 | 电压比 | 芯片 1.79 |
| πK | 结构类型(磁性件绕法、封装) | 结构分类 | 电感、变压器 |
| πA | 应用场景(连续/开关/浪涌) | 应用分类 | 整流管 1~2.5 |
| πL | 成熟度(投产年限、使用历史) | 成熟度等级 | 芯片 1.0 |
3.1 πE 与 πQ:两个最早被拍板、也最容易被随手填掉的数
πE 是整份表里唯一一个跟电路设计无关、却影响全部器件的乘子。它描述的是产品卖给谁、装在什么环境里。GF1 这个等级对应的是地面固定、有温控的使用场景。落到数值上,同一块板子上,电阻拿 1.8、电解电容拿 2.4、模拟芯片拿 2.5、二极管拿 1.7——同一个环境下不同器件的敏感度不同,所以不能拿一个数一乘到底。
πQ 的影响更猛。质量等级从 A2 到 A4,乘子能从 0.7 跳到 2.2,差三倍;再跟别的等级比,跨度接近一个数量级。这意味着“这个电容用哪个厂的、过没过筛选”在公式里的权重,比“它容量多大”高得多。常见的实现思路是:只要元器件有明确的降额和筛选记录,就取较低等级;拿不到的,一律按最差等级兜底。这一条在评审时最容易被追问,因为它直接决定结果可信度。
3.2 πCV 与 πS:降额为什么能直接把失效率压下去
电应力比 S 的定义是实际承受的应力除以额定应力。电解电容那几行里,S=0.3、0.4、0.5、0.8 分别对应不同容量的电容,乘子里反复出现 0.3 这个数——按常见的实现思路,它就是电压应力项的取值,耐压余量越大,这个乘子越小。同样是铝电解,S=0.8 的那一行单件失效率算出来是 0.1253×10⁻⁶/h,而 S=0.4 的一行只有 0.0198×10⁻⁶/h,差了六倍多。
这就是降额设计的数学回报。把一颗 25V 电容用在 12V 上,S≈0.48;换成 50V 耐压的型号,S 掉到 0.24,失效率跟着往下走。代价是体积和成本。可靠性预计书在这里其实是一张价格表:它告诉你每多留一档余量,能换回多少失效率。反过来说,如果一块板子报告出来的 MTBF 特别漂亮,先去看电解电容那几行的 S 是不是都压在 0.5 以下——那是设计上真花了钱的地方,不是纸面功夫。
3.3 复合芯片与磁性件:πC、πV、πK 在惩罚什么
电阻电容这类两端器件,公式短,乘子少。到了芯片、变压器、连接器,公式结构就变了。变压器那几行写的是 λp=λbπEπQπK,多出来的 πK 修正的是绕制结构、绝缘方式和骨架形式;连接器多一个与针位数相关的乘子;PCB 直接用金属化孔的数量做加权:一页纸上写的是 λp=(Nλb1+λb2)πEπQπC,其中 480 个金属化孔按孔失效率累加,再加基板本身的失效率。
这些额外乘子和额外项在告诉你一件事:机电件和工艺件的失效机理跟半导体完全不同,不能用同一套系数硬套。PCB 的失效率主要来自孔壁镀层和焊盘,连接器来自插拔磨损和接触电阻,变压器来自绝缘老化和温升。把它们的公式简化成“λb 乘几个 π”,只是形式上的统一,背后的物理过程各走各的路。
4. 从单行到整机 Σλ:34 页计算书的加法结构与复算方法
一份 34 页的计算书,正文其实只有三样东西:几十行器件记录、两三段特殊器件的推导、最后一个总失效率。中间那些表格编号(形如 5.1.4.2-5、5.1.6.8-2)是查表依据,说明这一行的每个数是从手册哪一张表里取的。理解了行的语义,34 页可以压缩成一张纸。
4.1 一行数据的字段语义:工作失效率列到底是不是单件值
这是最容易踩的一个坑,而且能直接用算术验证。看铝电解电容那几行:位号 CD9、CD10、CD12、CD13 四只并联在同一行里,数量 N=4,基本失效率一栏是 0.0916,后面跟着三个乘子 2.4、0.3、1.9,工作失效率一栏登记的是 0.50124。如果把这四个数乘起来:0.0916×2.4×0.3×1.9=0.12531,再乘数量 4,正好是 0.50124。
再看下一行,四只 35YXF470M,λb=0.0688,乘子 2.4、0.3、1.9,乘积 0.09412,乘 4 得 0.37647,与表里登记值一位不差。下面是复算代码,把这四行的登记值和公式算出来的值对一遍:
import math # 每行 = 计算书里的一行器件记录 # 字段:名称, 数量N, 基本失效率λb(单位10^-6/h), 乘子列表, 表里登记的工作失效率 rows = [ ("铝电解 16ZL1200M", 4, 0.0916, [2.4, 0.3, 1.9], 0.50124), ("铝电解 35YXF470M", 4, 0.0688, [2.4, 0.3, 1.9], 0.37647), ("铝电解 1AYXF3300M", 4, 0.0393, [2.4, 0.3, 2.2], 0.24900), ("铝电解 50YXF10M", 3, 0.0393, [2.4, 0.3, 0.7], 0.05942), ] for name, n, lb, pis, claimed in rows: per_part = lb * math.prod(pis) # 单件工作失效率 total = per_part * n # 整行合计:N 已经乘进去了 print(f"{name}: 单件 {per_part:.5f} | 行合计 {total:.5f} | 登记 {claimed:.5f} | 差 {total - claimed:+.6f}")输出里那个“差”基本都在小数点后第五位,是舍入误差。结论明确:工作失效率那一列是整行合计,数量 N 已经乘进去了。如果在下游汇总时再拿这一列去乘一次 N,电解电容这四行就会凭空多出三倍的失效率,整机 MTBF 直接腰斩。这条规则在整份表里是一致的,整流管、MOS、光耦都用同样口径。
4.2 PWM 芯片为什么被迫走另一套公式
表里其他器件都是一行一个公式,唯独 PWM 芯片那一段单独写了推导,原文还特意注明“计算较为复杂”。原因是这类单片模拟电路的失效率不能用单一 λb 加乘子描述,手册给的是分段加权模型:
λp = [C1·πV·πT + (C2 + C3)·πE] · πQ · πL
其中 C1 是与电路复杂度相关的失效率项,C2 是封装相关的基数项,C3 是封装复杂度附加项。代入计算书给的数:C1=0.346、C2=0.030、C3=0.045、πV=1.79、πT=1.33、πE=2.5、πQ=0.25、πL=1.0。
# PWM 芯片:分段加权模型,芯片内部两类结构串联相加 C1, C2, C3 = 0.346, 0.030, 0.045 # 电路复杂度、封装基数、封装复杂度 pi_V, pi_T, pi_E = 1.79, 1.33, 2.5 # 电压应力、温度应力、环境 pi_Q, pi_L = 0.25, 1.0 # 质量等级 A4、成熟度 1.0 die = C1 * pi_V * pi_T # 芯片内部模拟部分的贡献 pkg = (C2 + C3) * pi_E # 封装部分的贡献 lp = (die + pkg) * pi_Q * pi_L print(f"内部项 {die:.4f} + 封装项 {pkg:.4f} -> λp = {lp:.4f} (10^-6/h)")算出来 0.2528×10⁻⁶/h,与计算书里写的 0.2528056 完全一致,后面再乘 2 得到 0.5056,对应板上两路芯片。这里可以看出加与乘的分工又出现了一次:方括号内部是芯片内部不同功能块的失效率相加(片内串联),方括号外面是环境和质量等级的成比例修正(乘法)。
C1 这类系数怎么取?手册按电路规模分档给表,取哪一档取决于片上晶体管数量、门数或版图面积,属于“看一眼数据手册再查表”的活。很多计算书在这一步出错,不是因为算错乘法,而是 C1 取错档——档位差一级,结果能差 30%。
4.3 求和、换算、贡献度排序:把 34 页压成三个数
汇总就三件事:所有行合计相加得到整机失效率 Σλ;取倒数并做单位换算得到 MTBF;按行合计排序看谁在拖后腿。单位这一步要特别留神:表里的失效率单位是 10⁻⁶/h,而 MTBF 是小时,所以 MTBF = 10⁶ / Σλ(Σλ 按 10⁻⁶/h 计)。
import math def mtbf_hours(sigma_per_1e6): """输入单位 10^-6/h,输出小时。1 个 10^-6/h = 1000 FIT。""" return 1e6 / sigma_per_1e6 def reliability(t, m): """指数分布下的可靠度 R(t)=exp(-t/MTBF)""" return math.exp(-t / m) # 从表里挑出可核对的十行登记值(光耦、四组电解电容、变压器、MOS、电感、基准源、继电器) partial = [1.2113, 0.5012, 0.3765, 0.3720, 0.2492, 0.2490, 0.2240, 0.2142, 0.2130, 0.2086] sigma = sum(partial) # 这只是部分行的和,整机 Σλ 只会更大 m = mtbf_hours(sigma) print(f"部分行 Σλ = {sigma:.4f}e-6/h, MTBF ≈ {m:,.0f} h ≈ {m/8760:.1f} 年") print(f"t = MTBF 时可靠度 {reliability(m, m):.1%}") print(f"t = MTBF/10 时可靠度 {reliability(m/10, m):.1%}")这十行的部分和约 3.8×10⁻⁶/h,换算出 MTBF 约 26 万小时,折算约 30 年。注意这只是部分行——整份表里还有几十行金属膜电阻、瓷片电容、整流管、压敏电阻、热敏电阻、接插件,把它们全加进去,Σλ 会升到 4×10⁻⁶/h 以上,MTBF 落到 20 万小时这个量级。对一块 100W 级、带继电器和光耦的电源来说,这个量级是合理的。
比总数更有信息量的是贡献度排序。把登记值从大到小排:
| 行(代表器件) | 数量 N | 行合计 λp (10⁻⁶/h) | 占比量级 |
|---|---|---|---|
| 光耦 PC817 | 3 | 1.2113 | 最高 |
| 铝电解 16ZL1200M | 4 | 0.5012 | 高 |
| 铝电解 35YXF470M | 4 | 0.3765 | 高 |
| 主变压器 | 2 | 0.3720 | 高 |
| MOS IRFP450 | 1 | 0.2492 | 中 |
| 铝电解 1AYXF3300M | 4 | 0.2490 | 中 |
| 输出电感 | 8 | 0.2240 | 中 |
| 基准源 KA431 | 3 | 0.2142 | 中 |
| 继电器 | 2 | 0.2130 | 中 |
| MOS IRF840 | 1 | 0.2086 | 中 |
排完这张表,改进方向自己就浮出来了:光耦那一行独大,铝电解四行加起来比所有电阻电容二极管的总和还多,变压器和电感占掉一大块。想让 MTBF 上一个台阶,去磨电阻的阻值毫无意义,换低失效率光耦、把电解电容耐压再提一档,才是有效动作。
5. 避坑与排查:五条把 MTBF 算错却不自知的常见路数
这一节按“现象→原因→解决”展开。这几条都是能在表里被算术验证的,不用等实测反馈。
第一条:整机失效率翻倍,MTBF 对半腰斩。现象是汇总后的 Σλ 明显高于按行重算的结果。原因几乎总是把工作失效率列当成单件值又乘了一遍数量 N。前面已经验证过,这一列本身就是 N×λb×∏π 的合计,每行都乘一次 N,整体就相当于多乘了一遍。解决方式很朴素:随机挑三行手算一遍,对不上就说明口径理解错了。
第二条:功率器件的失效率偏低到不合常理。现象是 MOS 和芯片那几行算出来比电阻还低。原因多半是温度项拿了 25℃ 的环境温度去查表,而不是结温或壳温。计算书里 PWM 芯片用的是 58℃,变压器用的是 60℃ 热点温度,二极管用环境温度尚可接受,但功率 MOS 在 100W 级电源里壳温通常远高于箱温。解决方式:功率器件一律按实测壳温加估算温升取结温,或者干脆按最恶劣工况的温度上限取值,宁可保守。
第三条:降额改了,失效率没变化。现象是换了一颗高耐压电容,重算后结果纹丝不动。原因是应力比 S 的分子分母用错了基准:电压降额要看实际直流电压加纹波峰值对额定电压之比,如果拿额定电压比额定电压,S 永远是 1。另一个变体是把电流应力比当成功率应力比代入,导致档位取偏。解决方式:为每类器件单独定义 S 的口径,写进计算书的备注栏,评审时逐行核对。
第四条:两组输入电压算出一模一样的结果。现象是 80VDC 和 100VDC 两节的数字完全相同。这基本可以判定是复制粘贴后没改应力比。输入电压变了,整流管的反向电压、MOS 的漏源电压、电容的直流偏置都会变,πV、πS 项应该跟着动,λb 的取值点也可能换档。解决方式:把两组工况里应力最大的那一组作为报告值,另一组留作对照,并在备注里写清哪一项变了、变成多少。
第五条:纸面 MTBF 很高,现场却是另一回事。现象是预计值漂亮,但售后统计的年返修率对不上。原因通常是漏算了一整类器件:接插件、PCB 金属化孔、焊点、风扇、保险丝这些机电件和工艺件不在半导体手册的覆盖范围内,或者被随手按“影响不大”跳过。这份计算书在 PCB 和接插件上专门列了行,就是防止这种漏项。解决方式:拿到 BOM 后按封装类型过一遍,凡是手册里查不到失效率模型的,宁可加一个保守估计值,也不要留空。
6. 设计取舍:为什么这个数字只能当相对标尺
6.1 指数分布假设只在浴盆底部成立
整套算法有一个隐含前提:器件失效率是常数,服从指数分布。只有在这个前提下,MTBF = 1/Σλ 才成立,可靠度才能写成 R(t)=e^{-t/MTBF}。而实际器件的失效率曲线是浴盆形的:早期有筛选不干净的早夭,晚期有磨损和老化,中间那段接近水平的才是常数失效率。预计书算的是那一段。
这解释了两件事。第一,为什么 MTBF 二十万小时的产品不能承诺用二十年——t 等于 MTBF 时可靠度只有 36.8%,而且一旦进入磨损期,指数模型直接失效。第二,为什么出厂前的老化筛选如此重要:它不是在提高 MTBF,而是把浴盆左端的早夭部分提前消耗掉,让实际使用落在常数失效率区间里。
6.2 电解电容决定了这个数字的上限
再看贡献度表。铝电解电容四行加起来占据了相当比例,这不是这份计算书的特殊现象,而是开关电源的普遍结构。电解电容的失效率随温度近似按每升 10℃ 翻倍的规律恶化,寿命是有限且可预测的,它并不服从常数失效率假设——严格说,它更接近磨损型失效。
于是出现一个错位:MTBF 用指数模型把所有器件一视同仁地加总,而真正决定机器能撑多久的,是那颗有明确寿命上限的电解电容。常见的实现思路是给电解电容单独算寿命(按纹波电流、壳温、额定寿命做换算),把它和 MTBF 分开报告。两个数一起看才有意义:MTBF 反映随机失效的整体水平,电容寿命反映磨损失效的天花板。
6.3 怎么验证一份计算书
我自己的习惯是三步。第一步挑三行手算,覆盖电阻、电解电容、半导体各一行,验证 λp 列的口径;第二步查温度,把所有功率器件和电解电容的温度取值列出来,看是否都高于环境温度;第三步做敏感度,把贡献度前五的行各降一档乘子重算,看 MTBF 能提升多少——如果提升
本文还有配套的精品资源,点击获取