电池供电的传感器系统(如IoT节点、可穿戴设备)需在微安级功耗下实现数年续航。以下是涵盖 传感器选型、电源管理、通信协议、固件优化 的完整低功耗方案。
案例需求:
3V CR2032电池(容量225mAh)
目标续航5年(≈50μA平均电流)
功耗分配建议:
模块 | 允许电流 | 实现方案 |
---|---|---|
传感器采集 | ≤20μA | 间歇工作 |
信号处理 | ≤10μA | 低功耗MCU |
无线通信 | ≤15μA | 短时爆发 |
静态损耗 | ≤5μA | 电源优化 |
类型 | 工作电流 | 唤醒时间 | 特点 |
---|---|---|---|
温度 | 3.5μA | 15ms | ±0.1℃ |
湿度 | 0.4μA@1Hz | 0.8s | ±1.5%RH |
加速度计 | 2μA@100Hz | 0ms | 运动唤醒 |
霍尔 | 1.6μA | 300μs | 磁触发 |
光照 | 0.7μA | 可编程 | 0-40klux |
休眠电流 | 运行电流@1MHz | 唤醒时间 | 特色 |
---|---|---|---|
0.3μA | 30μA/MHz | 5μs | TrustZone |
0.9μA | 25μA/MHz | 2μs | 能量模式自动切换 |
1.2μA | 2mA@64MHz | 10ms | 集成LTE-M |
技术 | 峰值电流 | 传输时间 | 距离 | 适用场景 |
---|---|---|---|---|
BLE 5.3 | 6mA | 3ms/pkt | 100m | 可穿戴设备 |
LoRa | 32mA | 500ms | 5km | 农业监测 |
Zigbee 3.0 | 22mA | 8ms | 300m | 智能家居 |
[电池] → [DC-DC] → [LDO] → [MCU] ↑ ↑ (效率95%) (超低IQ)
推荐组合:
DC-DC:效率95% @10μA负载
LDO:IQ=0.25μA
根据负载调整MCU电压:
c// STM32U5 VOS配置示例 HAL_PWREx_ControlVoltageScaling(PWR_REGULATOR_VOLTAGE_SCALE3); // 1.0V
满足无线发射时的峰值电流:
复制C ≥ (I_peak × t_pulse) / ΔV 示例:BLE发射需 100μF (6mA × 3ms / 0.1V)
void main() { while(1) { enter_STOP2_mode(); // 0.5μA wake_by_RTC(60s); // 定时唤醒 if(ADXL362_detect_motion()) { // 运动触发 read_sensors(); transmit_data(); } } }
数据打包策略:
原始数据:每秒1次,每次100字节 → 年耗电 35mAh
优化后:门限触发+压缩传输 → 年耗电 4.2mAh
外设时钟门控:
c__HAL_RCC_GPIOA_CLK_DISABLE(); // 禁用未用外设时钟
配置:
传感器:SHT40 + ADXL362
MCU:EFM32PG22
通信:LoRaWAN(每日发送1次)
功耗实测:
模式 | 电流 | 占比 |
---|---|---|
深度睡眠 | 1.1μA | 98.7% |
传感器采集 | 12μA | 0.2% |
LoRa传输 | 32mA | 1.1% |
平均电流 | 8.4μA | - |
续航计算:2×AA电池(3000mAh) / 8.4μA ≈ 40年
(实际受自放电限制约10年)
PCB漏电流控制:
使用Guard Ring隔离高压走线
选择FR4板材表面阻抗>10^12Ω
温度补偿:
电池容量随温度变化曲线:
复制-20℃: 50%容量 +25℃: 100% +60℃: 85%
OTA更新优化:
差分升级包(减少传输数据量)
双Bank设计(防止升级失败变砖)
功耗分析仪:
Nordic Power Profiler Kit II
Joulescope JS220
仿真软件:
STM32CubeMonitor-Power
EnergyTrace(TI CCS)
电池建模:
MATLAB Battery Equivalent Circuit
通过 器件选型×电源优化×固件策略 三重设计,可实现:
✅ CR2032电池10年续航
✅ AA电池20年以上寿命
✅ -40℃~85℃全温域可靠运行