3、故障保护概念:什么是故障保护,常见的电源故障类型(过压、欠压、过流、短路、反接),故障保护等级(ASIL)
好,咱们进入第三章。这一章聊的是故障保护的基础概念。说实话,很多刚入行的工程师觉得故障保护就是「坏了就断电」,其实远没那么简单。我个人习惯把故障保护理解成「给系统穿上防弹衣」——既要扛得住打击,又不能影响正常活动。
3.1 什么是故障保护?
故障保护,说白了就是一套机制。当电源出现异常时,系统能自动检测、隔离,甚至自我恢复。你想想看,如果ECU在高速行驶时突然来个过压,没有保护的话,轻则重启,重则烧板子。
我在项目中遇到过一件事:某次台架测试,一个电源模块的过压保护阈值设得太高,结果12V系统瞬间飙到18V,直接把后级的CAN收发器打穿了。嗯,从那以后我定保护阈值时都会留足余量。
故障保护的核心目标有三个:
- 检测:第一时间发现异常,不能等到烧了才报警
- 隔离:把故障限制在局部,别让一个电容短路拖垮整个系统
- 恢复:条件允许时自动恢复,减少人工干预
关键点:故障保护不是「一刀切」的断电。有些场景需要快速切断,有些场景只需要降功率运行。具体怎么做,取决于故障的严重程度和系统的安全等级。
3.2 常见的电源故障类型
做HIL测试这么多年,我总结下来,电源故障无非就这五种。每一种我都吃过亏,咱们一个一个说。
3.2.1 过压(Overvoltage)
电压超过额定上限。比如12V系统跑到16V甚至更高。原因可能是发电机调节器失效、负载突变、或者外部电源误接。
危害:击穿MOSFET、烧毁电解电容、损坏IC的IO口。
我的经验:曾经有一批ECU在耐久测试中频繁失效,查了三个月才发现是发电机在低温下输出电压飘高。后来我们在输入端加了TVS管和过压锁存电路,问题才解决。
3.2.2 欠压(Undervoltage)
电压低于额定下限。比如12V系统掉到6V。常见于电池亏电、线束接触不良、大电流启动瞬间。
危害:MCU复位、继电器吸合不稳、传感器输出异常。
避坑指南:我曾经遇到过欠压导致EEPROM写入错误,数据全乱。后来我建议在电源监控里加一个欠压锁定(UVLO)功能,电压低于阈值时禁止写入操作。
3.2.3 过流(Overcurrent)
电流超过设计最大值。比如一个标称2A的电机驱动,实际跑到了5A。原因通常是负载短路、机械卡死、或者驱动管击穿。
危害:铜箔烧断、连接器熔化、甚至起火。
我的做法:我习惯在每条电源支路都放一个自恢复保险丝(PTC)或者电子保险丝(eFuse)。测试时用电流钳监测,一旦发现异常波形立刻停机检查。
3.2.4 短路(Short Circuit)
电源正极直接对地或对负极。这是最危险的一种,电流瞬间可以冲到几十安培。
危害:瞬间烧毁PCB走线、炸电容、甚至引发火灾。
注意:短路保护必须硬件实现,不能依赖软件。因为短路发生时,MCU可能瞬间就掉电了,根本来不及反应。
警告:做HIL测试时,短路测试一定要用限流电源。我见过有人直接用电池做短路测试,结果线束烧得冒烟,整个实验室都是焦味。安全第一!
3.2.5 反接(Reverse Polarity)
电源正负极接反。比如把电池的正极接到了系统的GND上。
危害:烧毁所有极性敏感的器件,比如电解电容、二极管、IC。
解决方案:最简单的办法是串联一个肖特基二极管。但二极管有压降和功耗问题。现在很多设计用PMOS管做理想二极管,压降几乎为零。
| 故障类型 | 典型原因 | 常见后果 | 保护手段 |
|---|---|---|---|
| 过压 | 发电机失控、误接电源 | 击穿器件、烧毁IC | TVS管、过压锁存 |
| 欠压 | 电池亏电、接触不良 | MCU复位、数据错误 | UVLO、欠压检测 |
| 过流 | 负载短路、机械卡死 | 烧线、熔化连接器 | PTC、eFuse、电流检测 |
| 短路 | 线束破损、焊锡短路 | 瞬间大电流、起火 | 硬件快速切断、限流 |
| 反接 | 人为接错、维修失误 | 烧毁极性器件 | 肖特基二极管、PMOS理想二极管 |
3.3 故障保护等级(ASIL)
说到故障保护,就绕不开ASIL。ASIL是ISO 26262里定义的功能安全等级,分A、B、C、D四个级别。D最高,A最低。
你可能会问:这跟电源故障保护有什么关系?关系大了。ASIL等级决定了你的保护电路要冗余到什么程度。
- ASIL A:基本保护就够了。比如一个简单的保险丝。
- ASIL B:需要诊断覆盖。比如过流检测+软件监控。
- ASIL C:需要冗余。比如双路电源监控,一路失效另一路顶上。
- ASIL D:最高等级。需要完全独立的冗余路径,而且故障后要进入安全状态。
个人经验:我做过一个ASIL D的EPS(电动助力转向)项目。电源保护部分用了两路独立的过压检测电路,一路模拟比较器,一路ADC采样。两路交叉校验,任何一路触发都会切断主电源。说实话,这种设计成本高,但安全无价。
在实际HIL测试中,我们怎么验证ASIL等级?简单说就是:
- 注入故障(过压、欠压等)
- 观察系统响应时间
- 确认是否进入安全状态
- 记录故障覆盖率
举个例子,ASIL B要求过压保护在100ms内响应。我们就在HIL里注入一个16V的过压,用示波器抓保护动作的时间。如果超过100ms,那就得改设计。
嗯,这一章的内容差不多就这些。记住一句话:故障保护不是「有了就行」,而是「够快、够准、够可靠」。下一章咱们聊聊具体的保护电路设计,包括TVS管选型、保险丝计算、还有我最拿手的eFuse方案。