4、电压采集技术:单体电压采集方案与采样精度
电压采集,说白了就是BMS的「眼睛」。眼睛要是花了,后面所有算法都是白搭。我做了这么多年BMS,见过太多因为电压不准导致的误诊断、误保护,甚至电池包提前退役的案例。今天咱们就聊聊单体电压怎么采,采得准不准,以及怎么让所有电芯「步调一致」。
4.1 单体电压采集方案:AFE芯片 vs 分立元件
目前主流方案就两种:用专用AFE芯片,或者自己搭分立电路。各有各的脾气,我分别说说。
4.1.1 专用AFE芯片方案
AFE(Analog Front-End)芯片,就是专门干这活的。像TI的BQ79616、ADI的LTC6811、NXP的MC33771,都是老熟人。这类芯片内部集成了多通道ADC、电压基准、隔离通信接口,甚至自带均衡功能。
优点很明显:
- 集成度高:一颗芯片搞定12~16串电芯的电压采集,外围电路极简
- 精度有保障:典型精度±1mV~±3mV,温度漂移小
- 自带隔离:菊花链通信,高低压侧天然隔离
- 功能丰富:过压/欠压检测、温度采集、被动均衡一条龙
缺点也别忘了:
- 成本偏高:一颗AFE芯片几十块,量大了肉疼
- 供货风险:这两年芯片缺货,交期动不动20周+
- 灵活性差:采样速率、滤波方式、量程范围都是固定的
4.1.2 分立元件方案
所谓分立方案,就是用运放、电阻、电容、多路复用器、ADC自己搭。听起来很硬核,实际上也确实硬核。
典型架构:
电芯正极 → 分压电阻 → 差分运放 → 多路复用器 → ADC → MCU
每个电芯电压先经过分压网络降到ADC可接受范围,再用差分运放消除共模干扰,最后通过多路复用器轮流采样。
优点:
- 成本低:一颗高精度ADC加几个运放,总成本不到AFE芯片的1/3
- 灵活:采样速率、量程、滤波都可以自己调
- 不受芯片缺货影响:通用器件,哪里都能买到
缺点也扎心:
- 设计复杂:运放选型、PCB布局、抗干扰处理,处处是坑
- 精度难保证:分压电阻的温漂、运放的失调电压、多路复用器的漏电流,都会引入误差
- 隔离麻烦:高压侧和低压侧之间需要隔离放大器或隔离ADC,成本又上去了
4.2 采样精度:到底多少才算够?
精度这个话题,我经常被问到:「±1mV够不够?±5mV行不行?」
咱们先看需求。BMS的核心功能是保护电池,而保护阈值通常是这样:
| 保护类型 | 典型阈值 | 精度要求 |
|---|---|---|
| 过压保护 | 4.25V | ±10mV |
| 欠压保护 | 2.80V | ±10mV |
| SOC估算 | 3.0V~4.2V | ±5mV |
| 均衡开启 | 3.50V | ±2mV |
你看,保护功能±10mV就够了,但SOC估算和均衡控制需要更高的精度。为什么?因为锂电池的OCV-SOC曲线在平台区非常平缓,电压变化1mV对应的SOC变化可能只有0.1%。如果精度不够,SOC误差会越积越大。
影响精度的因素:
- ADC分辨率:16位ADC在4.2V量程下,理论分辨率约64μV,但实际有效位数(ENOB)通常只有14~15位
- 基准电压漂移:温度每变化1℃,基准可能漂移10~50ppm,对应4.2V就是0.04~0.2mV
- 分压电阻温漂:普通电阻100ppm/℃,高精度电阻25ppm/℃甚至更低
- PCB漏电流:潮湿环境下,PCB表面漏电流可达μA级,在1MΩ电阻上产生mV级压降
4.3 同步采样:为什么重要?怎么实现?
同步采样,就是让所有电芯的电压在「同一时刻」被采集。为什么这么重要?
你想想看,电池包在放电时,电流可能很大(比如100A)。如果电芯1在t1时刻采样,电芯2在t2时刻采样,中间差了1ms,而电池内阻是10mΩ,那么电压差就是:
ΔV = I × R × Δt = 100A × 0.01Ω × 0.001s = 1mV
1mV看起来不大,但别忘了,均衡判断的阈值可能只有2mV。如果采样不同步,你可能会误判某个电芯电压偏高或偏低,导致均衡策略误动作。
更严重的情况: 在脉冲充放电时,电流变化剧烈,不同步采样可能导致电压误差达到10mV以上。这时候你算出来的SOC、内阻、功率能力,全是错的。
4.3.1 AFE芯片的同步方案
AFE芯片天生支持同步采样。以LTC6811为例:
// 启动所有通道同步采样
LTC6811_adcv(MD_NORMAL, DCP_DISABLED, CELL_CH_ALL);
// 等待转换完成
while(!LTC6811_is_ready());
// 读取所有电芯电压
LTC6811_rdcv(0, cell_voltages);
内部机制是:所有通道的采样保持电路同时打开,把电压「冻结」在电容上,然后逐个转换。这样所有电芯的采样时刻差在纳秒级,完全可以忽略。
4.3.2 分立方案的同步难题
分立方案就麻烦了。因为通常只有一个ADC,通过多路复用器轮流采样,天然就是非同步的。
解决办法:
- 加采样保持器:每个电芯通道加一个采样保持芯片(如LF398),所有保持器同时触发,然后逐个读取
- 高速轮询:如果电流变化不快,可以用高速ADC快速轮询,比如1μs采一个通道,16串也就16μs,误差可以接受
- 软件补偿:记录每个通道的采样时刻,结合电流变化率做插值补偿
4.4 实际项目中的选型建议
说了这么多,到底怎么选?我总结一下:
- 12~16串,量产项目:无脑选AFE芯片,比如BQ79616或LTC6811,省心可靠
- 6串以下,成本敏感:可以考虑分立方案,但要做好精度验证
- 需要高精度SOC:必须用AFE芯片,且选择±1mV精度的型号
- 需要同步采样:AFE芯片天然支持,分立方案需要额外硬件
最后说一句:电压采集是BMS的基石。这块省下来的成本,迟早会在售后和客诉上加倍还回去。别问我怎么知道的——都是泪。