
简介这是一份面向硬件研发、测试工程师及质量管理人员的技术培训讲义聚焦可靠性测试的完整方法体系帮助读者建立从概念到落地的测试认知。压缩包内为1个ppt文件约3.12MB以幻灯片形式组织内容便于直接用于内部培训或自学。讲义围绕测试概述、测试项目选择与测试用例设计、可测试性设计、测试仪器选型与工装设计、测评过程管理及参考标准等模块展开并重点剖析按键粘连、显示屏静电损坏、数据接口错误、接插件松动等潜在失效点以及环境应力、机械应力、电气应力对应的失效类型。同时区分研发、中试、批量生产、鉴定各阶段的测试目的与应力条件差异说明如何确定产品耐环境应力的工作极限与破坏极限、激发系统性缺陷并验证纠正措施。目前已有329人学习参考适合需要系统梳理可靠性测试思路、排查典型故障隐患的从业者。1. 可靠性测试培训讲义里最先要掰清楚的一件事MTBF不是寿命带过新人做可靠性测试培训最常见的翻车点不是试验不会做而是第一页 PPT 就把 MTBF 写成平均寿命。台下的人照这个理解去设计试验样本量、试验时长、判定门限全错。MTBF 是平均故障间隔时间只对可修复产品成立是稳态失效强度的倒数对芯片、密封件、一次性执行机构这类不可修复件该用 MTTF。这一页讲不清后面的浴盆曲线、加速因子、B10 寿命全是空中楼阁。一份能拿去讲课的可靠性测试培训讲义至少要压住四块内容指标口径、失效分布以 Weibull 为主、试验设计环境应力筛选、加速寿命、HALT/HASS、数据分析删失数据、参数估计、置信区间。缺任何一块学员回去只能照抄试验条件换个产品就得重新问人。2. 讲义里的可靠性指标与Weibull寿命分布β、η和B10怎么算指标这一块如果只用一页文字带过学员回去一定会把几个符号混着用。先把每个量对应什么对象、什么假设条件写死在表格里再讲浴盆曲线才有落脚点。Weibull 之所以在讲义里占这么大篇幅是因为 β 一个参数就能把早期失效、随机失效、磨损失效三种机理区分开比指数分布多一层诊断能力。2.1 讲义第一页就该统一的指标口径指标定义适用对象常被误用成MTTF平均失效前时间不可修复件系统寿命MTBF平均故障间隔时间可修复系统单件寿命λ(t)t 时刻失效率任意恒定常数R(t)可靠度R(t)1−F(t)任意可用率B10累计失效 10% 对应时间任意中位寿命在恒定失效率假设下才有 λ1/MTBF 这个简化关系一旦产品处在早期失效期或耗损期这条式子立刻失真。讲义里要明确写这个换算只在偶然失效期、且失效服从指数分布时成立。B10 常被写成平均寿命的十分之一其实它由分布参数决定β2 时 B10 约为 0.46ηβ3.5 时约为 0.66η差距很大。2.2 浴盆曲线三段与失效判据的对应关系早期失效期对应的是工艺缺陷、来料波动讲义里要把它和环境应力筛选ESS、老化Burn-in绑在一起讲筛选应力的目标是只暴露缺陷、不引入新损伤。偶然失效期对应正常使用失效率近似常数MTBF 的估算、可靠性预计都在这一段做。耗损失效期对应磨损、疲劳、腐蚀对应的试验项是加速寿命试验和耐久试验判据一般写成到寿时 B10 不劣于某个值。把三段的应力水平和判据写成一一映射学员才不会把 ESS 的应力直接拿来当寿命试验应力用。常见做法是ESS 温度变化率取 10~15 ℃/min、上限不超过产品破坏限的 70%加速寿命试验的应力则要压到能产生目标失效机理、又不引入非相关机理的区间。2.3 用Weibull分布拟合失效数据形状参数β在说什么Weibull 累积失效函数写成 F(t)1−exp(−(t/η)^β)η 是特征寿命此时失效概率 63.2%β 是形状参数直接对应失效机理β 区间物理含义讲义里常配的试验β1早期失效失效率递减来料、ESS 筛选效果评估β≈1随机失效退化为指数分布MTBF 估算1β2.5早期磨损或复合机理温循、振动β3明显耗损接近正态疲劳、轴承、焊点下面这段代码用中位秩法对失效点做线性化回归这是讲义里最容易手算演示的一种估计方式import numpy as np # 观测到的失效时间(小时)仅取已失效样本 t_fail np.array([820, 1150, 1340, 1600, 1980, 2450]) k len(t_fail) # 中位秩近似F_i (i - 0.3) / (k 0.4) F (np.arange(1, k 1) - 0.3) / (k 0.4) # Weibull 线性化ln(-ln(1-F)) beta*ln(t) - beta*ln(eta) slope, intercept np.polyfit(np.log(t_fail), np.log(-np.log(1 - F)), 1) beta slope eta np.exp(-intercept / beta) print(f形状参数 beta{beta:.3f}, 特征寿命 eta{eta:.0f} h) print(fB10{eta * (-np.log(0.9)) ** (1 / beta):.0f} h)参数说明上-0.3和0.4是 Benard 中位秩的经验修正常数样本量小于 20 时用它比用 i/(n1) 更稳np.log(-np.log(1 - F))是 Weibull 的线性化变换斜率就是 β截距是 −β·ln(η)。注意这个回归只用了失效点删失样本被直接丢掉样本量小的时候会明显高估 η——这正是后面要用极大似然的原因。判断结果是否可信先看 β 落在哪个区间再看拟合点在 Weibull 概率纸上是否成一条直线如果中间明显弯折说明混了两个失效机理需要按失效模式拆开分别拟合。3. 加速寿命试验设计与加速因子计算Arrhenius与Coffin-Manson参数怎么定加速试验的核心目的是把正常使用条件下要跑几年的失效压缩到几周内复现。压缩的倍数就是加速因子 AFAF 算错整份报告的寿命外推全废。讲义里最稳妥的写法是按应力类型分别列模型把每个模型里那个需要凭经验取值的参数单独标红并给出来源建议。3.1 Arrhenius温度加速模型活化能Ea怎么取温度加速用 Arrhenius 模型加速因子 AFexp[(Ea/k)(1/T_use−1/T_stress)]其中 k8.617×10⁻⁵ eV/K温度必须换算成开尔文。争议最大的是 Ea取值直接决定 AF差 0.2 eV 就可能让 AF 差一倍以上。讲义里应给出按失效机理分类的取值区间而不是给一个万能数字失效机理Ea 典型值(eV)备注金属间化合物扩散0.7~1.0焊点 IMC 生长电迁移0.5~0.7互连失效栅氧击穿0.3~0.5介质失效接触腐蚀0.4~0.6需配合湿度模型通用保守值0.7缺少机理数据时的兜底3.2 Coffin-Manson与Peck模型温循、振动、湿热的加速因子温度循环用 Coffin-MansonAF(ΔT_stress/ΔT_use)^mm 常取 2~4焊点类取 1.9~2.7若循环频率差异大需要换 Norris-Landzberg 并补一个频率修正项。湿热用 Peck 模型AF(RH_s/RH_u)^n·exp[(Ea/k)(1/T_u−1/T_s)]n 一般取 2.5~3湿度按相对湿度百分数代入。振动用逆幂律AF(G_s/G_u)^b随机振动 b 取 4~6正弦振动或单一频率下 b 可能更小。下面把三个模型封装成可直接复用的函数import numpy as np K_B 8.617e-5 # 玻尔兹曼常数, eV/K def arrhenius_af(T_use_C, T_stress_C, Ea): 温度加速因子试验时间 正常使用时间 / AF Tu, Ts T_use_C 273.15, T_stress_C 273.15 return np.exp(Ea / K_B * (1 / Tu - 1 / Ts)) def coffin_manson_af(dT_use, dT_stress, m2.5): 温循加速因子m 为 Coffin-Manson 指数 return (dT_stress / dT_use) ** m def peck_af(RH_use, RH_stress, T_use_C, T_stress_C, Ea0.7, n2.8): 温湿度加速因子RH 用百分数 Tu, Ts T_use_C 273.15, T_stress_C 273.15 return (RH_stress / RH_use) ** n * np.exp(Ea / K_B * (1 / Tu - 1 / Ts)) print(fArrhenius AF{arrhenius_af(55, 125, 0.7):.1f}) print(fCoffin-Manson AF{coffin_manson_af(25, 100, 2.5):.1f}) print(fPeck AF{peck_af(45, 85, 35, 85):.1f})参数说明m越大温循外推越激进焊点类器件建议先用 2.0 做保守估计再拿实际失效数据回归出真实值Peck 的n取 2.8 是常见折中值若产品有凝露风险这个模型直接失效必须改用带偏压的 HAST 条件。约束条件是温度不能越过材料的 Tg 点或焊料熔点附近的相变区越过之后失效机理换了一个算出来的 AF 就没有意义。3.3 样本量与试验时长的确定定时截尾加卡方单边下限样本量分两种场景。第一种是零失效方案只有可靠度目标 R 和置信度 C用 nln(1−C)/ln(R)。第二种是给定试验时长 T、允许失效数 r用 MTBF 单边下限 θ_L2T/χ²(1−C, 2r2)这是定时截尾的标准做法讲义里务必写清 χ² 的自由度是 2r2 而不是 2r。import numpy as np from scipy import stats def zero_failure_samples(R, C): 零失效方案所需样本量R 可靠度目标C 置信度 return int(np.ceil(np.log(1 - C) / np.log(R))) def mtbf_lower_limit(T_total, r, C0.9): 定时截尾 MTBF 单边下限T_total 为总台时r 为失效数 chi2 stats.chi2.ppf(1 - C, 2 * r 2) return 2 * T_total / chi2 print(fR0.90, C0.90 - n{zero_failure_samples(0.90, 0.90)}) print(fR0.99, C0.90 - n{zero_failure_samples(0.99, 0.90)}) print(f总台时 20000h, 2 个失效 - MTBF 下限 {mtbf_lower_limit(20000, 2):.0f} h)R0.90, C0.90对应 22 台R0.99, C0.90直接跳到 230 台这个数量级跳变要在讲义里明确提示避免有人在评审会上随口报一个 0.99 的可靠度目标。总台时按投入台数×试验小时数累加中途失效的样品停机后不再计入后续台时这一点如果统计口径不统一算出来的下限会偏高。4. 用Python把讲义里的可靠性数据算完删失、MLE拟合与置信区间试验做完台账里最常出现的是有的样品中途失效、有的跑到截止时间还好的这类数据叫右删失。丢掉删失样本会让寿命被低估直接当成失效点又会高估风险所以讲义里必须专门讲一节数据处理而不是让学员拿 Excel 手算平均。4.1 删失数据整理把试验台账变成可用矩阵整理的目标是两列数组观测时间t和事件指示e1 表示失效0 表示删失。判据的统一写法是性能参数超出规格限即判失效比如接触电阻超过 50 mΩ、漏电流超过 10 μA不要用看起来坏了这种描述。中途因为设备故障、人为断电造成的停测属于非相关删失要在数据表里单独打标计算时剔除否则会污染分布拟合。4.2 Weibull参数估计MLE与中位秩回归差在哪中位秩回归直观、能手算、便于讲课演示但有三个短板删失样本被丢弃、无法给出参数的标准误、样本量小的时候偏差明显。极大似然估计能同时用上失效点和删失点但要迭代求解且 β 较小时收敛不稳。讲义里建议两种都讲让学员看到同一组数据下两个结果差多少理解方法本身会带来偏差这件事。import numpy as np from scipy.optimize import minimize from scipy import stats # t: 观测时间; e: 1失效, 0右删失 t np.array([820, 1150, 1340, 1600, 1980, 2450, 2600, 3000, 3200]) e np.array([1, 1, 1, 1, 1, 1, 0, 0, 1]) def neg_log_lik(params): beta, eta params if beta 0 or eta 0: return 1e12 # 失效点贡献 log f(t)删失点贡献 log R(t) log_f (np.log(beta) - np.log(eta) (beta - 1) * (np.log(t) - np.log(eta)) - (t / eta) ** beta) log_R -(t / eta) ** beta return -np.sum(e * log_f (1 - e) * log_R) res minimize(neg_log_lik, x0[1.5, 2000.0], methodNelder-Mead) beta_hat, eta_hat res.x # B10 的点估计与 MTBF(指数近似下) 对比 b10 eta_hat * (-np.log(0.9)) ** (1 / beta_hat) print(fMLE: beta{beta_hat:.3f}, eta{eta_hat:.0f} h, B10{b10:.0f} h)neg_log_lik里失效点用的是 Weibull 概率密度取对数删失点用的是可靠度取对数这两项加权求和再取负就是标准的右删失似然。methodNelder-Mead不需要梯度对初值要求低适合放进讲义当默认解法如果 β 估计值落在 1 附近改用 L-BFGS-B 并给x0[1.0, 2000]会更稳。要给出区间估计用 profile likelihood固定 β 扫一个范围对每个 β 求最优 η取 −2ΔlogL 小于 χ²(0.95,1)3.84 的区间代码量比 Bootstrap 小讲义里也更好画图。4.3 加速因子折算与外推正常应力下的B10与置信区间拿到 η_stress 之后正常应力下的特征寿命为 η_useAF×η_stress注意 β 在折算前后保持不变这是加速试验的核心假设——加速只改变时间尺度不改变失效机理。如果两个应力水平下回归出的 β 差异超过 20%说明机理已经变了外推结果不能直接用。折算方式公式适用与风险单应力 Arrheniusη_useAF·η_stress温度主导需先验证 β 一致多应力累积1/AFΣ(1/AF_i)温湿振复合可能高估加速逆幂律η_use(S_s/S_u)^b·η_stress振动、电压b 需实测标定在做外推时讲义一定要给一条硬约束外推时间不超过试验时长的 10 倍超过就要补试验或补机理分析。这条经验线不是理论推导出来的是大量项目里外推翻车总结出来的工程边界。5. HALT与HASS的讲义讲法工作限、破坏限和失效闭环HALT 和 HASS 是可靠性测试培训讲义里被讲得最随意的一块很多人把 HALT 当成加强版的环境试验来教。HALT 的目标不是验证产品合格而是主动把产品拉到失效找出设计余量和最薄弱的环节本质上是一个探索性试验HASS 才是量产筛选应力必须收到工作限与破坏限之间保证筛得掉缺陷、筛不坏好品。5.1 工作限与破坏限怎么取规范的讲法是分四步先测规格限产品标称的工作范围再逐级加应力量到工作限出现可恢复的性能退化继续加到破坏限出现不可恢复失效最后取 HASS 应力为工作限到破坏限之间的一个比例常见取法是不超过破坏限的 70%、且留出至少 10 ℃ 的余量。振动同理HASS 的量级一般取 HALT 破坏限的 50%同时要限制循环次数避免累积损伤。讲义里可以给一张对应表把温度步进、快速温变、随机振动、复合应力的起始值、步长和判据全部列出来学员照着填参数就能开盘。5.2 从失效模式反推讲义修订点HALT 做完最有价值的是失效清单而不是那张通过与否的结论表。我一般按这个顺序复盘先记录失效发生的应力水平和失效现象再用切片、X-ray、SEM 找到机理接着判断这个机理在正常使用中会不会出现、出现概率多大最后决定是改设计、加筛选还是修讲义里的试验项。举几个典型映射温步进下出现焊点开裂对应讲义里温循项要补 ΔT 和循环数振动步进下连接器瞬断对应随机振动谱形要补 Grms 和持续时间湿热下漏电流上升对应 Peck 模型的湿度项要重取。讲义落地前做一次自检每个试验项是否写明了应力水平、持续时间、失效判据、样本量和统计口径每个加速模型是否标清了参数来源和适用范围每张失效清单是否闭环到具体的改进措施。这三点齐了这份可靠性测试培训讲义才算能直接拿去讲课而不是一份只有试验条件的清单。本文还有配套的精品资源点击获取