第1章 电压采集与通道校准:单体电压采集原理(AFE芯片)

大家好,我是你们的老朋友。今天咱们聊聊BMS里最基础、也最关键的一环——单体电压采集。

你想想看,一个电池包少则几十节,多则上百节电芯串联。SOC估算、SOH评估、均衡策略,哪一样离得开准确的单体电压?说白了,电压不准,后面所有算法都是空中楼阁。

我在项目里见过太多因为电压采集偏差导致的误报警、均衡失效,甚至过充事故。嗯,这章咱们就把这块彻底讲透。

1.1 AFE芯片:电压采集的“眼睛”

AFE芯片,全称是Analog Front-End,模拟前端。它负责把电芯的模拟电压信号,转换成数字信号送给MCU。

我个人习惯把AFE比作“眼睛”。MCU是大脑,AFE就是负责看电压的那双眼睛。眼睛要是近视了,大脑再聪明也没用。

目前主流AFE芯片厂商有TI、ADI、NXP、Maxim等。以TI的BQ79616为例,它支持16通道采集,精度能做到±1mV以内。

核心指标:

  • 通道数:6~18通道不等
  • 采样精度:±1mV ~ ±5mV
  • 采样速率:通常10~100Hz
  • 共模电压范围:0~5V(针对单节电芯)

AFE内部结构其实不复杂。每个通道对应一个差分输入,经过多路复用器(MUX)选通,再通过ADC转换。但这里有个坑——MUX切换时会有建立时间,采样太快反而会引入误差。

我的经验:采样周期建议留足500μs以上的建立时间。我曾经遇到过采样速率设到200Hz,结果电压跳动±3mV,后来把速率降到50Hz,问题就解决了。

1.2 差分采样与共模抑制

为什么单体电压采集要用差分采样?

原因很简单:电池串联后,每节电芯的负极电位都不一样。第一节负极是0V,第二节负极就是3.6V,第三节负极是7.2V……如果用地作为参考,你根本没法测。

差分采样的好处是:只关心正负极之间的压差,不关心它们对地的绝对电位。这就是共模抑制的核心理念。

共模抑制比(CMRR)是衡量AFE性能的重要参数。CMRR越高,对共模噪声的抑制能力越强。一般AFE的CMRR在60~100dB之间。

注意:共模电压不是无限大的。每款AFE都有共模输入范围,超出范围会导致采样严重失真。比如BQ79616的共模范围是-0.3V到5.3V,超过这个范围,芯片内部钳位二极管会导通,电压直接拉偏。

我在调试一个48V系统时遇到过这个问题。电池组最高串的共模电压接近60V,而AFE的共模范围只有5V。怎么办?

答案是:用分压电阻网络把共模电压降到AFE能承受的范围。但分压电阻会引入分压误差,需要校准。

1.3 通道校准与温度补偿

AFE芯片出厂时会有一定的偏移误差和增益误差。偏移误差是零点漂移,增益误差是放大倍数不准。

校准方法很简单:

  1. 偏移校准:将输入端短路,测量输出值,这个值就是偏移量。
  2. 增益校准:输入一个已知的精确电压,测量输出值,计算增益系数。

校准公式:

V_real = (V_raw - offset) * gain_factor

其中:

  • V_raw:ADC原始读数
  • offset:偏移量(mV)
  • gain_factor:增益系数(无量纲)

但校准不是一劳永逸的。温度变化会引起AFE内部参数漂移。我做过实验,温度从-20℃升到60℃,偏移量能漂移±0.5mV。

温度补偿策略:

  • 在BMS主板上放置温度传感器,监测AFE附近温度
  • 建立温度-偏移量查找表(LUT)
  • 每10℃一个插值点,线性插值计算当前温度下的偏移量

代码示例(伪代码):

// 温度补偿函数
float temp_compensate(float raw_voltage, float temperature) {
    // 从LUT中查找当前温度对应的偏移量
    float offset = lookup_offset(temperature);
    // 增益系数通常温度影响较小,可忽略或单独补偿
    float compensated = raw_voltage - offset;
    return compensated;
}

我曾经在一个项目中忽略了温度补偿,结果夏天和冬天的电压偏差差了1.2mV。虽然单看不大,但累积到SOC估算上,误差能到3%以上。嗯,从那以后我再也不敢省这步了。

1.4 常见故障诊断

电压采集通道的故障,我归纳为以下几类:

故障类型 现象 可能原因 诊断方法
开路故障 电压跳变到0V或满量程 连接线断裂、接触不良 检测电压变化率,超过阈值报警
短路故障 相邻通道电压相同 采样线间短路、PCB漏电 比较相邻通道差值,小于阈值报警
漂移故障 电压缓慢偏离真实值 AFE老化、温度影响 定期自校准,监测偏移量变化
噪声干扰 电压跳动频繁 电源纹波、电磁干扰 增加滤波电容、软件滤波

诊断策略:

  • 实时监测:每个采样周期检查电压是否在合理范围内(比如0~5V)
  • 变化率检测:相邻两次采样差值超过设定阈值(如100mV),判定为异常
  • 冗余校验:如果系统有冗余AFE,交叉比对数据

避坑指南:我曾经遇到过一批AFE芯片,上电后前10个采样值都是乱的。后来发现是AFE内部参考电压建立需要时间。解决方案是:上电后先丢弃前20个采样点,等稳定后再开始采集。

好了,这一章的内容就到这里。电压采集是BMS的基石,看似简单,但细节很多。下一章咱们聊聊电流采集与库仑积分,那又是另一番天地。

公众号:蓝海资料掘金营,微信deep3321