3、电压采集技术:单体电压采集方案

电压采集是BMS最基础、也是最核心的功能。你想想看,SOC估算、SOH评估、均衡策略,哪一样离得开准确的单体电压数据?我在项目里见过不少因为电压采集不准导致的故障,轻则SOC跳变,重则电池过充起火。所以这一节,咱们好好聊聊单体电压采集的那些事儿。

3.1 单体电压采集方案:AFE芯片 vs 分立器件

做BMS设计,第一个要拍板的问题就是:用AFE芯片,还是用分立器件搭?

分立器件方案,说白了就是用运放、电阻、模拟开关、ADC自己拼。我早年做第一代BMS时就干过这事儿。当时觉得AFE芯片太贵,想省成本。结果呢?调试了三个月,精度还是搞不定。温度一漂,电压就跟着飘,搞得我头大。

分立器件的痛点很明显:

  • 电阻匹配问题:分压电阻的温漂系数不一致,导致采样误差随温度变化
  • 共模电压问题:串联电池组中,越靠上的电池共模电压越高,对运放的共模抑制比要求极高
  • 隔离问题:高压侧和低压侧的隔离设计复杂,一不小心就烧芯片
  • 通道一致性:每个通道的增益和偏置都不一样,需要逐个校准
注意: 我曾经见过一个团队用分立器件做48串的BMS,结果每串的采样误差都不一样,最大的偏差到了50mV。这样的数据,你拿去做SOC估算,结果可想而知。

AFE芯片方案,就是把上述所有功能集成到一颗芯片里。现在主流的AFE芯片,比如LTC6811、AD7280A、MAX17823,内部集成了高精度ADC、电压基准、隔离通信、甚至均衡驱动。我个人习惯,只要项目预算允许,首选AFE芯片。省心、可靠、精度高。

两种方案的对比,我整理了一张表:

对比项 AFE芯片方案 分立器件方案
采样精度 高(典型±1mV) 低(典型±10mV)
通道一致性 好(芯片内部匹配) 差(需逐个校准)
温度稳定性 优(内置温度补偿) 差(受外部器件影响)
设计复杂度
BOM成本 较高 较低
开发周期 短(2-4周) 长(3-6个月)
可靠性

所以我的建议是:量产项目,老老实实用AFE芯片。除非你做的只是实验室验证样机,或者对成本极度敏感的低端产品,否则别在分立器件上浪费时间。

3.2 AFE芯片选型:LTC6811 vs AD7280A vs MAX17823

市面上AFE芯片不少,但真正经过车规级验证的,也就那么几款。我重点说说我用过的三款:LTC6811、AD7280A、MAX17823。

3.2.1 LTC6811(Linear Technology / ADI)

这款芯片,可以说是BMS领域的「老大哥」了。我最早接触LTC6811是在2016年,当时给一家主机厂做BMS,选型时毫不犹豫就定了它。为什么?

  • 采样精度极高:典型误差±1.2mV,最大不超过±2.5mV。这个精度,做SOC估算绰绰有余
  • 支持最多12串:通过菊花链可以级联到上百串
  • 内置isoSPI隔离通信:不需要额外的隔离芯片,抗干扰能力很强
  • 可编程采样速率:最快能到1ms以内,适合做动态工况下的电压监测

不过它也有缺点:价格贵,一颗要十几美金。而且它的配置寄存器比较多,初次上手需要花点时间啃数据手册。

我的经验: LTC6811的isoSPI通信,建议用双绞线,线长控制在30cm以内。我之前有个项目,线长了50cm,结果通信时不时丢包,排查了两天才找到原因。

3.2.2 AD7280A(ADI)

AD7280A是ADI的另一款经典AFE。它的特点是:

  • 支持6串:比LTC6811少一半,但可以通过级联扩展
  • 内置库仑计:可以同时监测电流,省掉一颗电流检测芯片
  • 采样精度:典型±1.6mV,略逊于LTC6811
  • 价格相对便宜:大约是LTC6811的60%

但要注意,AD7280A的通信接口是SPI,没有隔离功能。你需要额外加隔离芯片,比如ADuM1401。这增加了BOM成本和PCB面积。

我有个朋友在做低速电动车BMS时用了AD7280A,反馈说整体表现不错,就是SPI通信在强电磁干扰环境下偶尔会出错。后来加了磁耦隔离,问题就解决了。

3.2.3 MAX17823(Maxim / ADI)

MAX17823是Maxim被ADI收购后的产品。它的亮点是:

  • 支持12串,和LTC6811一样
  • 采样精度:典型±1.0mV,三款里最高的
  • 内置UART通信:通过变压器隔离,比SPI更抗干扰
  • 支持高速采样:所有通道采样仅需1ms

不过MAX17823的软件配置比LTC6811还复杂。它的寄存器多达上百个,而且有些寄存器的位定义比较绕。我第一次用的时候,光初始化就写了三天。

参数 LTC6811 AD7280A MAX17823
支持串数 12 6 12
采样精度 ±1.2mV ±1.6mV ±1.0mV
通信接口 isoSPI SPI UART
内置隔离 是(变压器)
采样速率 1ms/12ch 2ms/6ch 1ms/12ch
典型价格 $$$ $$ $$$

选型建议:

  • 追求极致精度和可靠性,预算充足 → LTC6811MAX17823
  • 成本敏感,且串数不多(≤6串) → AD7280A
  • 需要同时监测电流,不想额外加芯片 → AD7280A
  • 对通信抗干扰要求极高 → MAX17823(UART+变压器隔离)

3.3 采样精度与误差分析

采样精度,是AFE芯片的核心指标。但很多人只看数据手册上的「典型值」,忽略了实际应用中的误差来源。我在这里把常见的误差源掰开揉碎了讲清楚。

3.3.1 误差来源分析

1. ADC量化误差

这是ADC本身的固有误差。比如一个16位的ADC,参考电压为5V,那么它的LSB(最低有效位)就是5V / 2^16 ≈ 76μV。量化误差就是±0.5 LSB,约±38μV。这个误差很小,基本可以忽略。

2. 参考电压漂移

AFE芯片内部的电压基准会随温度变化。LTC6811的基准温漂典型值是±10ppm/°C。如果温度变化50°C,基准电压就会漂移±500ppm,也就是±2.5mV(以5V基准计算)。

嗯,这里要注意:温度变化是电压误差的最大来源。我在项目中遇到过,夏天和冬天的采样值能差5mV以上,后来排查发现就是基准温漂导致的。

3. 输入偏置电流和漏电流

AFE芯片的输入引脚会有微小的偏置电流,流过外部滤波电阻时会产生压降。比如偏置电流为1nA,滤波电阻为10kΩ,就会产生10μV的误差。这个一般可以忽略。但如果电池漏液或者PCB受潮,漏电流会急剧增大,误差就不可控了。

避坑指南: 我曾经在潮湿环境下做过测试,PCB表面漏电流能达到100nA以上,导致采样误差超过10mV。后来在PCB上做了三防漆涂覆,问题才解决。

4. 外部滤波电路的影响

为了抑制噪声,我们通常会在AFE芯片的输入端加RC低通滤波。但电阻和电容的精度、温漂都会影响采样精度。特别是电阻,如果用了精度1%的普通电阻,温漂100ppm/°C,那么在不同温度下,分压比会变化,导致误差。

5. 共模电压误差

对于串联电池组,越靠上的电池,其正极对地的共模电压越高。AFE芯片的共模抑制比(CMRR)是有限的。LTC6811的CMRR典型值为90dB,意味着共模电压每变化1V,会产生约31.6μV的误差。对于48串系统,最高共模电压可达200V,误差约为6.3mV。

3.3.2 误差预算与分配

做BMS设计时,我们需要做一个误差预算。假设系统要求单体电压采样精度为±5mV(全温度范围),那么我们可以这样分配:

误差源 分配值 说明
ADC量化误差 ±0.1mV 16位ADC,基本可忽略
基准电压漂移 ±2.5mV 温漂±10ppm/°C,温度变化50°C
输入漏电流 ±0.5mV 漏电流10nA,滤波电阻10kΩ
共模电压误差 ±1.0mV CMRR 90dB,共模电压100V
外部电阻温漂 ±0.5mV 电阻温漂50ppm/°C
噪声(随机误差) ±0.4mV 通过多次采样平均降低
总误差(RSS) ±2.8mV 平方和开根号,满足±5mV要求

你看,即使每个误差源都分配了,总误差也只有±2.8mV,远小于±5mV的要求。这就是为什么AFE芯片能做到高精度的原因——每个环节都控制得很好。

3.3.3 提高采样精度的实战技巧

最后,分享几个我在项目中用过的提高精度的技巧:

  1. 多次采样取平均:对于随机噪声,采样16次取平均,信噪比能提高12dB。我一般设置AFE芯片连续采样32次,然后软件做中值滤波+平均。
  2. 温度补偿:在BMS主板上放一个温度传感器,测量AFE芯片附近的温度。然后根据芯片的温漂曲线,在软件里做查表补偿。这个效果很明显,能把温度引起的误差从±2.5mV降到±0.5mV。
  3. 定期自校准:LTC6811和MAX17823都支持自校准功能。我习惯在每次上电时做一次自校准,消除芯片内部的偏置和增益误差。
  4. PCB布局注意:AFE芯片的模拟输入走线要远离数字信号和功率走线。我见过一个案例,AFE芯片的输入走线和PWM信号线平行走了5cm,结果采样值波动了±10mV。后来把走线分开,问题就解决了。
  5. 滤波电容选型:输入滤波电容建议用C0G/NP0材质的,温漂小。X7R材质的电容在直流偏压下容值会下降,影响滤波效果。
总结一下: 电压采集技术,选对方案是第一步,选对芯片是第二步,做好误差分析和补偿是第三步。这三步走稳了,你的BMS电压采集就不会出大问题。我见过太多项目,芯片选得挺好,但PCB布局和软件补偿没做好,最后精度一塌糊涂。所以,别只盯着芯片参数,系统设计才是关键。