3、电源系统设计:电池选型与电源管理策略
电源系统,说白了就是整个节点的“心脏”。我见过太多项目,传感器选得挺好,无线芯片也不错,结果死在电源上——要么续航不够,要么上电就挂。今天咱们就把这块掰开揉碎了讲。
3.1 电池选型:锂亚 vs 锂聚合物
选电池,先看应用场景。你是要做一次性部署用五年,还是可充电设备?这决定了路线。
3.1.1 锂亚电池(Li-SOCl₂)
锂亚电池,我习惯叫它“长跑冠军”。能量密度极高,自放电率极低(每年<1%),非常适合那些部署后就不管了的场景——比如水表、烟感、资产追踪。
核心参数:
- 标称电压:3.6V
- 能量密度:可达500Wh/kg以上
- 工作温度:-55℃ ~ +85℃
- 自放电率:<1%/年
但锂亚电池有个大坑:瞬间放电能力差。你想想看,LoRa模块发射时电流可能飙到120mA以上,锂亚电池的电压会瞬间跌落。我在项目中遇到过,节点每隔一小时上报一次,前半年好好的,第七个月开始丢包——查到最后,是电池内阻增大,发射瞬间电压掉到2.8V以下,模块直接复位了。
避坑指南:我曾经吃过这个亏。锂亚电池必须并联一个220μF以上的钽电容或超级电容,用来提供发射瞬间的峰值电流。否则,你的节点可能活不过半年。
3.1.2 锂聚合物电池(Li-Po)
锂聚合物电池,适合需要频繁充电的场景。比如手持设备、可穿戴、或者有太阳能充电的节点。
| 对比项 | 锂亚电池 | 锂聚合物电池 |
|---|---|---|
| 标称电压 | 3.6V | 3.7V |
| 能量密度 | 高(~500Wh/kg) | 中(~200Wh/kg) |
| 自放电 | 极低 | 较高(每月约5%) |
| 放电能力 | 弱(需电容辅助) | 强(可支持2C以上) |
| 充电管理 | 不支持 | 需要充电IC |
| 典型寿命 | 5-10年 | 300-500次循环 |
我个人习惯:如果节点设计寿命超过3年,优先考虑锂亚电池。如果用户需要频繁更换或充电,那就用锂聚合物。
3.2 DC-DC 与 LDO 的选择
电池电压不是3.6V就是3.7V,但芯片需要1.8V、3.3V甚至5V。这时候就需要电压转换了。
3.2.1 LDO:简单但费电
LDO(低压差线性稳压器)的好处是:电路简单、纹波小、噪声低。但效率嘛……
举个例子:电池3.6V转3.3V给MCU供电,LDO的效率是3.3/3.6 ≈ 91.7%。看起来还行?但如果是3.6V转1.8V,效率直接掉到50%。一半的电量都变成热量散掉了。
我的经验:LDO只用在两种场景:一是电流很小(<10mA)的待机电路;二是对噪声极其敏感的模拟电路(比如ADC参考电压)。其他情况,老老实实用DC-DC。
3.2.2 DC-DC:高效但需小心
DC-DC转换器效率可以做到90%以上,甚至95%。但问题是:静态电流。
很多DC-DC芯片在空载时也有几十μA的静态电流。对于低功耗节点来说,这可能是致命的——节点99%的时间都在休眠,休眠电流才2μA,结果DC-DC自己就吃掉50μA,这还玩什么?
选型要点:
- 轻载效率:关注1mA以下的效率曲线
- 静态电流(Iq):越低越好,最好<5μA
- 开关频率:高频(>1MHz)可用小电感,但效率略低
- 输出纹波:一般<50mV即可
我常用的几款低功耗DC-DC:TPS62740(Iq=360nA)、LTC3388(Iq=1.6μA)、XC9235(Iq=1.2μA)。嗯,这些芯片都不便宜,但省下来的电池钱绝对划算。
3.3 低功耗电源管理策略
电源管理,说白了就是一句话:该睡的时候睡死,该醒的时候猛干。
3.3.1 分级供电架构
我习惯把电源分成三级:
- 常供电域:RTC、唤醒定时器、电源管理IC。这部分电流必须控制在1μA以内。
- 可控供电域:MCU核心、传感器。通过MOSFET开关控制,只在需要时供电。
- 脉冲供电域:LoRa射频、GPS。发射时供电,平时完全断开。
这样做的好处是:休眠时只有常供电域在工作,其他部分完全断电,没有漏电流。
3.3.2 动态电压调节(DVS)
MCU在休眠时,1.8V就够了。但在运行状态,可能需要3.3V来保证主频。这时候可以用一个可调输出的DC-DC,通过GPIO切换输出电压。
// 伪代码示例:动态电压切换
void enter_sleep_mode() {
set_dcdc_voltage(1.8); // 降压
disable_peripherals();
enter_deep_sleep();
}
void wake_up() {
set_dcdc_voltage(3.3); // 升压
enable_peripherals();
do_work();
}
这个技巧,我在一个水表项目里用过,休眠功耗从12μA降到了3μA。效果立竿见影。
3.4 上电时序设计
上电时序,很多人不重视。但我要说:上电时序搞不好,芯片会锁死。
举个例子:某款LoRa模块要求VDD先于VIO上电,或者两者同时上电。如果VIO先上电,模块内部IO口可能进入未知状态,电流飙升到几十mA,而且怎么复位都回不来——只能断电重来。
我曾经踩过的坑:一个NB-IoT项目,用了三路电源:3.3V给MCU,3.6V给NB模块,1.8V给SIM卡。结果每次上电,SIM卡都初始化失败。查了三天,发现是1.8V比3.3V慢了200ms,SIM卡在MCU还没准备好时就收到了复位信号。后来加了一个延时电路,问题解决。
3.4.1 上电时序设计原则
- 先核心,后外设:MCU先上电,再给传感器、无线模块供电
- 使用使能引脚:DC-DC和LDO都有EN引脚,用MCU的GPIO控制上电顺序
- 注意复位时序:有些芯片需要复位信号保持低电平直到电源稳定
- 加延时电路:RC延时或专用电源时序芯片(如TPS3808)
3.4.2 典型上电时序图
下面这张图,是我自己画的一个典型低功耗节点的上电时序。你可以看到,从电池接入到系统正常工作,分了四个阶段:
你看,从电池接入到LoRa开始发射,总共也就50ms。但每个阶段之间都有明确的时序关系:DC-DC稳定后MCU才启动,MCU初始化完成后才给传感器供电,最后才让LoRa模块发射。这个顺序,一个都不能乱。
3.5 小结
电源系统设计,说难不难,说简单也不简单。核心就三点:
- 电池选型:看寿命和放电能力,锂亚配电容,锂聚合物配充电IC
- 电压转换:大电流用DC-DC,小电流用LDO,注意静态电流
- 上电时序:先核心后外设,用EN引脚控制,必要时加延时
嗯,这些经验都是我用一个个不眠之夜换来的。希望你能少走弯路。
公众号:蓝海资料掘金营,微信deep3321