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不限制电流,整个系统可能直接烧掉。
我一般设置两级保护:
- 硬件限流:PMU内部集成的过流保护,响应时间在微秒级。比如TPS系列芯片,过流阈值可以外部电阻设定。
- 软件限流:主控通过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 布局布线
布局布线这事儿,说多了都是泪。我总结三条铁律:
- 输入回路要短:输入电容到PMU引脚的距离不要超过5mm。长了会引入寄生电感,导致电压尖峰。
- 反馈走线要远离噪声源:反馈电阻的走线不要靠近电感和开关节点。我习惯在反馈走线两侧铺地,做屏蔽。
- 功率地要单点接地:大电流回路的地线要单独走,不要和信号地混在一起。否则噪声会串到模拟电路里。
我曾经在项目中遇到过,PMU的反馈走线走了10cm,结果输出电压波动了100mV。后来把反馈电阻移到芯片旁边,走线缩短到2mm,电压稳如狗。
4.3.4 散热设计
PMU的散热不能忽视。呼吸机连续工作24小时,芯片温度高了,效率会下降,甚至触发过热保护。
我一般这样做:
- 加散热焊盘:芯片底部的散热焊盘要焊接到PCB上,通过过孔散热到背面。
- 铺铜散热:在芯片周围铺大面积铜皮,增加散热面积。
- 控制功耗:如果功耗超过1W,我建议加散热片或风扇。
举个例子,TPS62130在3A输出时,功耗大约0.5W。不加散热片,芯片温度能到60°C。加了散热焊盘和过孔,温度降到45°C。嗯,这差距还是挺明显的。
总结一下:PMU设计不是简单的「接上就能用」。电压调节要稳,电流限制要准,上电时序要对。芯片选型看效率和集成度,外围电路注意电容、电感、布局、散热。把这些细节做好了,呼吸机的电源系统才能可靠运行。