第1章 电源系统设计:配电终端的“心脏”

做配电终端设计,我最先考虑的就是电源。为什么?因为电源是整个系统的“心脏”。心脏跳不好,其他功能再强也是白搭。今天咱们就聊聊电源系统设计的几个核心环节:输入保护、多路生成、监控与看门狗。

1.1 输入电源保护:别让第一道防线失守

配电终端工作在什么环境?变电站、开关柜、户外杆塔。这些地方电磁干扰强,浪涌、雷击、反接都是家常便饭。我刚开始做项目时,就吃过亏——一台终端刚上电就冒烟了,查了半天,是电源反接保护没做好。

1.1.1 防反接保护

说白了,就是防止用户把电源正负极接反。最简单的方案是串联一个二极管。但二极管有压降,大电流下发热严重。我个人习惯用PMOS管方案:

// 典型PMOS防反接电路
// VIN接电源正极,GND接电源负极
// PMOS的S极接VIN,D极接系统电源
// G极通过电阻接地,再并联一个稳压管

// 关键参数:
// PMOS:Vds ≥ 60V,Rds(on) ≤ 20mΩ
// 电阻:100kΩ
// 稳压管:12V

为什么用PMOS?因为导通时压降几乎为零,效率高。我曾经在一个48V输入的项目里,用二极管方案,结果二极管烫得能煎鸡蛋。换成PMOS后,温度直接降了30度。

注意:PMOS的G极电压不能超过Vgs极限,一般±20V。所以需要加稳压管钳位。

1.1.2 防浪涌保护

浪涌是配电终端的头号杀手。我见过最夸张的一次,雷击浪涌直接把电源芯片炸飞了。防浪涌的核心是“三级防护”:

  • 第一级:气体放电管——吸收大能量,响应慢
  • 第二级:压敏电阻——响应快,能量中等
  • 第三级:TVS管——响应极快,钳位精准

你想想看,浪涌来了,气体放电管先扛大能量,压敏电阻再削一波,最后TVS管把电压钳死在安全范围内。三级配合,基本能搞定IEC 61000-4-5的4级测试。

经验之谈:TVS管的钳位电压要选比后级DC/DC最大输入电压高10%-20%。选低了,TVS会频繁导通,寿命缩短;选高了,保护效果打折扣。

1.1.3 EMC滤波

EMC滤波说白了就是“堵”和“疏”。堵住外部干扰进来,疏导内部干扰出去。我常用的滤波电路是这样的:

// 共模电感 + X电容 + Y电容
// 输入 → 保险丝 → 共模电感 → X电容(差模) → Y电容(共模) → DC/DC

// 典型参数:
// 共模电感:10mH,电流按负载1.5倍选
// X电容:0.1μF ~ 0.47μF,耐压≥250VAC
// Y电容:1nF ~ 4.7nF,耐压≥250VAC

嗯,这里要注意:Y电容的容量不能太大,否则漏电流会超标。国标要求漏电流小于3.5mA,我一般控制在1mA以内。

1.2 多路电源生成:给每个模块“喂”合适的电压

配电终端里,不同芯片需要不同电压:MCU要3.3V,DDR要1.8V,通信模块要5V,RTC要3V后备。怎么高效生成这些电压?我推荐“分级降压”策略。

1.2.1 主电源:24V/48V转5V

这一步用DC/DC降压芯片。我常用的型号是LM2596或TPS5430。效率能做到85%以上。关键是要算好电感值:

// 以TPS5430为例,输入24V,输出5V/3A
// 开关频率:500kHz
// 电感值计算:
// L = (Vin - Vout) * Vout / (Vin * ΔI * f)
//   = (24 - 5) * 5 / (24 * 0.6 * 500k)
//   ≈ 13.2μH

// 实际选15μH,饱和电流≥4A

我建议电感选大不选小。电感小了,纹波电流大,输出纹波也大。曾经有个项目,我为了省成本用了小电感,结果5V纹波达到200mV,通信模块老掉线。换了电感后,纹波降到30mV,问题解决。

1.2.2 次级电源:5V转3.3V和1.8V

5V转3.3V,我习惯用LDO。为什么不用DC/DC?因为3.3V电流不大(一般500mA以内),LDO噪声低、电路简单。常用的有AMS1117-3.3。

1.8V呢?如果电流小(100mA以内),也可以用LDO从3.3V转。但要注意LDO的压差。AMS1117的压差是1.1V,3.3V转1.8V没问题。如果电流大,建议用DC/DC,效率高。

关键点:LDO的输入输出压差不能太小,否则会进入“dropout”状态,输出不稳定。我一般留0.5V以上的余量。

1.2.3 RTC后备电源

RTC需要一直供电,哪怕主电源断了。我常用的方案是:主电源正常时,通过二极管给RTC供电,同时给超级电容或电池充电;主电源掉电时,超级电容或电池自动接管。

// RTC后备电源电路
// VCC_5V → 二极管 → RTC_VCC
// 超级电容(0.1F) → 二极管 → RTC_VCC
// 两个二极管“或”逻辑,谁电压高谁供电

// 注意:
// 二极管用肖特基,压降小(0.3V左右)
// 超级电容耐压要高于5V,一般选5.5V

为什么用超级电容不用电池?因为电池有寿命,而且高温下容易鼓包。超级电容充放电次数多,-40℃到85℃都能工作。我做过测试,0.1F的超级电容,RTC电流5μA,能撑5个小时以上。够用了。

1.3 电源监控与看门狗:让系统“死不了”

配电终端要求7×24小时不间断运行。万一电源出问题,或者MCU死机了,怎么办?这就需要电源监控和看门狗。

1.3.1 电源监控芯片

我常用的电源监控芯片是MAX809或TPS3803。它们能监测电压是否低于阈值,一旦低于阈值,就输出复位信号给MCU。

// 典型电路
// VCC_3.3V → MAX809的VDD
// MAX809的/RST → MCU的/RST
// 阈值电压:3.08V(对应3.3V系统)

// 工作原理:
// 当VCC_3.3V > 3.08V时,/RST输出高电平
// 当VCC_3.3V < 3.08V时,/RST输出低电平,MCU复位

嗯,这里有个坑:电源监控芯片的阈值要选对。3.3V系统选3.08V,5V系统选4.63V。选低了,电压掉到危险值了还不复位,MCU可能跑飞;选高了,正常波动也会触发复位,系统频繁重启。

避坑指南:我曾经在一个项目里,用了阈值4.63V的监控芯片,但5V电源纹波有200mV,结果每次纹波波谷时都触发复位。后来换了阈值4.38V的芯片,问题解决。所以,选阈值时要考虑电源纹波。

1.3.2 看门狗

看门狗是防止MCU死机的最后一道防线。我习惯用独立看门狗芯片,比如MAX706或SP706。为什么不用MCU内部看门狗?因为MCU死机时,内部看门狗可能也跟着挂了。独立看门狗芯片,MCU死透了它还能工作。

// 看门狗电路
// MCU的GPIO → MAX706的WDI
// MAX706的/RST → MCU的/RST
// 超时时间:1.6秒(典型值)

// 喂狗程序(MCU端):
// while(1) {
//     // 主循环
//     GPIO_SetBits(WDI_GPIO, GPIO_PIN_SET);  // 拉高
//     delay_ms(1);
//     GPIO_ResetBits(WDI_GPIO, GPIO_PIN_RESET); // 拉低
//     delay_ms(1);
//     // 继续执行其他任务
// }

喂狗的方式很简单:在1.6秒内,给WDI引脚一个高低电平跳变。如果MCU死机了,没有跳变,看门狗就输出复位信号,重启MCU。

经验之谈:喂狗的位置很重要。我建议在主循环的末尾喂狗,而不是在中断里。为什么?因为如果中断正常但主循环卡死了,在中断里喂狗会掩盖问题。在主循环末尾喂狗,能确保整个程序流程是健康的。

1.4 总结

电源系统设计,说白了就是三个字:稳、净、全。

  • ——输入保护要到位,防反接、防浪涌、EMC滤波一个不能少
  • ——多路电源要干净,纹波要小,噪声要低
  • ——监控和看门狗要全面,确保系统不死机、不掉电

我做了十几年配电终端,电源出问题的比例最高。很多看似软件的问题,追根溯源都是电源没做好。所以,别嫌麻烦,把电源系统设计扎实了,后面的工作会顺利很多。

下一章,咱们聊聊MCU选型与最小系统设计。到时候见。