4、电源管理单元(PMU)设计

呼吸机的电源管理,说白了就是给系统里的每一颗芯片、每一个模块,在正确的时间送上正确的电压和电流。这事儿看着简单,但我在实际项目中吃过不少亏。有一次样机调试,屏幕死活点不亮,查了两天才发现是PMU的上电时序反了,主控都跑起来了,外设的电压还没到位。嗯,从那以后,我对PMU设计就格外上心。

4.1 PMU核心功能

PMU不是简单的电源芯片,它是个小管家。我习惯把它的核心功能拆成三块来看:电压调节、电流限制、上电时序。这三块缺一不可。

4.1.1 电压调节

呼吸机里电压种类多,3.3V给主控和传感器,1.8V给DDR内存,5V给电机驱动,12V给气泵。PMU要能把这些电压稳得住。

我个人习惯用DC-DC做高效率转换,LDO做低噪声供电。举个例子:

  • DC-DC降压:效率能做到90%以上,适合大电流场景。比如从12V降到5V给气泵供电,用DC-DC能省不少电。
  • LDO线性稳压:噪声低,纹波小,适合模拟电路。比如给传感器供电,我一般用LDO,虽然效率低点,但信号干净。

这里有个坑:DC-DC的开关频率会引入噪声。我在项目中遇到过,传感器数据偶尔跳变,查了半天发现是DC-DC的开关噪声耦合到了模拟地。后来加了π型滤波才解决。

关键参数:电压精度要控制在±2%以内,负载调整率要小于1%。呼吸机是医疗设备,电压波动大了,传感器读数就不准。

4.1.2 电流限制

电流限制不是为了省电,是为了保命。你想想看,如果某个模块短路了,PMU不限制电流,整个系统可能直接烧掉。

我一般设置两级保护:

  1. 硬件限流:PMU内部集成的过流保护,响应时间在微秒级。比如TPS系列芯片,过流阈值可以外部电阻设定。
  2. 软件限流:主控通过ADC检测电流,超过阈值就主动关断。响应慢一些,但更灵活。

我曾经在项目中遇到过,气泵启动瞬间电流是稳态的3倍。如果限流阈值设得太死,气泵就启动不了。所以限流值要留余量,一般按峰值电流的1.2倍来设。

注意:电流限制不是越小越好。限流值设得太低,正常工作时频繁触发保护,系统会反复重启。我见过有人把限流设成500mA,结果电机一转就掉电,折腾了两天。

4.1.3 上电时序

上电时序,说白了就是谁先谁后的问题。主控要先上电,然后DDR,再然后外设。顺序错了,芯片可能锁死,甚至烧坏。

我常用的做法有两种:

  • PMU自带时序控制:比如MAX系列芯片,内部有使能引脚,可以设置延时。我习惯用RC延时电路配合使能脚,简单可靠。
  • 主控GPIO控制:主控上电后,通过GPIO依次使能各路电源。这种方式灵活,但主控本身要先有电。

举个例子,我做过的一个呼吸机项目,上电顺序是这样的:

1. 主控核心电压(1.1V)先上
2. 等待10ms,上DDR电压(1.8V)
3. 再等5ms,上IO电压(3.3V)
4. 最后上传感器电压(5V)

为什么这么排?主控核心电压不稳,DDR初始化会失败。DDR没准备好,主控读代码就出错。嗯,这都是血泪教训。

4.2 常用PMU芯片选型

芯片选型这事儿,我一般看三个维度:效率、集成度、价格。呼吸机对可靠性要求高,我倾向于用大厂芯片。

4.2.1 TPS系列(TI)

TPS系列是我用得最多的。特点就是皮实,耐造。

型号 输入电压 输出电流 典型应用
TPS62130 3V-17V 3A 主控供电
TPS63020 1.8V-5.5V 3A 电池升降压
TPS7A47 3V-20V 1A 模拟电路LDO

我个人习惯用TPS62130做3.3V主供电。它的效率在轻载时能到85%以上,待机电流只有微安级。我在项目中遇到过,电池供电时待机功耗从5mA降到了0.5mA,就靠这颗芯片。

4.2.2 MAX系列(Maxim/ADI)

MAX系列的特点是集成度高,外围电路少。适合空间受限的设计。

型号 功能 特点
MAX77650 多路PMIC 集成充电、升降压、LDO
MAX17260 电量计 高精度库仑计
MAX8902 LDO 超低噪声,适合传感器

MAX77650这颗芯片我特别喜欢,一颗芯片搞定充电、升压、降压、LDO。外围只需要几个电容电阻,板子能省一半面积。不过价格贵,一颗要十几块,批量用的话成本压力大。

选型建议:如果项目对成本敏感,用TPS系列加分立器件。如果对空间敏感,用MAX系列集成方案。我一般看BOM成本,超过50块就用分立方案。

4.3 外围电路设计要点

PMU芯片再好,外围电路设计不好也白搭。我总结了几条经验:

4.3.1 输入输出电容

电容不是随便选的。输入电容要靠近PMU的输入引脚,输出电容要靠近负载。我习惯用陶瓷电容,ESR低,高频特性好。

  • 输入电容:一般用10μF+0.1μF并联。10μF负责储能,0.1μF负责滤高频噪声。
  • 输出电容:根据负载电流来算。1A电流至少用22μF,纹波能控制在20mV以内。

我在项目中遇到过,输出电容用了钽电容,结果低温下ESR变大,纹波飙到了100mV。后来全换成陶瓷电容,问题解决。

4.3.2 电感选型

DC-DC的电感很关键。电感值太小,纹波大;电感值太大,响应慢。

我一般按这个公式估算:

L = (Vin - Vout) * Vout / (Vin * ΔI * f)
其中:
Vin = 输入电压
Vout = 输出电压
ΔI = 纹波电流(取输出电流的20%-40%)
f = 开关频率

举个例子,输入12V,输出5V,电流2A,频率500kHz,纹波取0.5A:

L = (12-5)*5 / (12*0.5*500k) ≈ 11.7μH

实际选型时,我一般取10μH或15μH,留点余量。

注意:电感的饱和电流要大于峰值电流。我见过有人选了饱和电流2A的电感,结果负载一拉3A,电感饱和了,电流失控,芯片直接烧了。饱和电流至少留20%余量。

4.3.3 布局布线

布局布线这事儿,说多了都是泪。我总结三条铁律:

  1. 输入回路要短:输入电容到PMU引脚的距离不要超过5mm。长了会引入寄生电感,导致电压尖峰。
  2. 反馈走线要远离噪声源:反馈电阻的走线不要靠近电感和开关节点。我习惯在反馈走线两侧铺地,做屏蔽。
  3. 功率地要单点接地:大电流回路的地线要单独走,不要和信号地混在一起。否则噪声会串到模拟电路里。

我曾经在项目中遇到过,PMU的反馈走线走了10cm,结果输出电压波动了100mV。后来把反馈电阻移到芯片旁边,走线缩短到2mm,电压稳如狗。

4.3.4 散热设计

PMU的散热不能忽视。呼吸机连续工作24小时,芯片温度高了,效率会下降,甚至触发过热保护。

我一般这样做:

  • 加散热焊盘:芯片底部的散热焊盘要焊接到PCB上,通过过孔散热到背面。
  • 铺铜散热:在芯片周围铺大面积铜皮,增加散热面积。
  • 控制功耗:如果功耗超过1W,我建议加散热片或风扇。

举个例子,TPS62130在3A输出时,功耗大约0.5W。不加散热片,芯片温度能到60°C。加了散热焊盘和过孔,温度降到45°C。嗯,这差距还是挺明显的。

总结一下:PMU设计不是简单的「接上就能用」。电压调节要稳,电流限制要准,上电时序要对。芯片选型看效率和集成度,外围电路注意电容、电感、布局、散热。把这些细节做好了,呼吸机的电源系统才能可靠运行。