3. 电阻分压采样

电阻分压采样,说白了就是最朴素、最直接的电压测量方法。你想想看,电池电压动不动几十伏甚至上百伏,ADC的输入范围通常只有3.3V或5V。怎么办?用两个电阻一串,把高压按比例降下来。

这个方法简单到让人怀疑——真的靠谱吗?嗯,我做了十几年BMS,可以负责任地告诉你:简单不等于容易做好。分压电阻网络的设计,里面门道不少。

3.1 分压网络的基本原理

先看最基础的结构。两个电阻串联,从中间抽头取电压:

Vout = Vin × R2 / (R1 + R2)

这个公式大家都会。但实际工程中,我习惯把分压比写成:

K = R2 / (R1 + R2)

那么 Vout = Vin × K。K值的选择,我个人建议留出20%~30%的余量。比如ADC满量程是3.3V,那最高采样电压设计在2.5V左右比较安全。为什么?因为电池电压在充电时会有纹波,低温下电压也会偏高,留点余量心里踏实。

关键设计原则:分压后的电压最大值,不超过ADC参考电压的80%。

3.2 电阻网络设计——选型与匹配

电阻选型,我踩过不少坑。这里直接说结论:

  • 精度:至少0.1%,最好0.05%。我见过有人用1%的电阻做分压,结果采样误差直接飙到2%以上。
  • 温漂:选±25ppm/℃或更低。±50ppm的电阻,温度变化50℃时,阻值漂移0.25%,这误差你受得了?
  • 阻值:一般在几十kΩ到几MΩ之间。太小了功耗大,太大了噪声和漏电流问题突出。

这里有个表格,是我个人常用的电阻选型参考:

电池电压范围 推荐总阻值 分压比K 典型R1/R2
12V~16V 100kΩ 0.2 80kΩ / 20kΩ
24V~30V 200kΩ 0.1 180kΩ / 20kΩ
48V~60V 500kΩ 0.05 475kΩ / 25kΩ
100V~150V 1MΩ 0.02 980kΩ / 20kΩ

我的小技巧:R2尽量取整数值,比如20kΩ、10kΩ。这样更换不同分压比时,只需要换R1,R2可以通用。备料方便,生产也省事。

3.3 精度分析——误差从哪来?

精度分析,说白了就是搞清楚你的测量到底准不准。我遇到过不少工程师,算完分压比就觉得万事大吉,结果实际测试差了一大截。

误差来源主要有三个:

  1. 电阻本身的精度误差:0.1%的电阻,两个串联,最坏情况误差接近0.2%。
  2. 温度漂移:两个电阻的温漂系数不一致,温度变化时分压比会变。
  3. ADC输入阻抗的影响:这个很多人忽略。ADC的输入阻抗不是无穷大,它会和R2并联,等效改变了分压比。

举个例子,我曾经在一个项目中用100kΩ+20kΩ的分压网络,ADC输入阻抗只有100kΩ。你算算看,R2实际变成了20kΩ//100kΩ ≈ 16.7kΩ,分压比直接偏了16%!

警告:ADC输入阻抗必须远大于R2,一般要求至少100倍以上。否则必须加电压跟随器做缓冲。

完整的误差计算公式如下:

总误差 = sqrt(δR1² + δR2² + δT² + δADC²)

其中:
δR1 = R1的精度误差
δR2 = R2的精度误差  
δT = 温度漂移引起的误差
δADC = ADC输入阻抗引入的误差

嗯,这里要注意,误差是平方和开根号,不是简单相加。但实际工程中,我习惯按最坏情况估算,也就是直接相加,留足余量。

3.4 功耗与热管理——别小看那点热量

功耗问题,说白了就是电阻上会发热。你想想看,高压电池组上几百个分压电阻同时发热,那可不是闹着玩的。

功耗计算公式很简单:

P = V² / R_total

比如400V电池,用1MΩ总阻值,功耗是:

P = 400² / 1,000,000 = 0.16W

单个电阻0.16W看起来不大,但如果是96串电池,96个电阻同时工作,总功耗就是15.36W。这些热量散在电池模组内部,会加速电池老化。

我个人的设计经验:

  • 单电阻功耗控制在0.1W以下,选用0805或1206封装的贴片电阻。
  • 高压场景(>100V),建议用两个电阻串联代替R1,既分压又分功耗。
  • 热耦合设计:R1和R2尽量靠近放置,保持温度一致,减小温漂差异。

避坑指南:我曾经在一个项目中,R1用了0805封装,功耗0.15W。夏天高温时,电阻表面温度达到85℃,阻值漂了0.3%,采样误差直接超标。后来换成两个1206电阻串联,问题解决。

3.5 分压网络的SVG示意图

下面这张图,展示了一个典型的分压采样网络结构:

电阻分压采样网络原理图 电池组 Vbat+ R1 上拉电阻 R2 下拉电阻 GND Vout ADC输入 C1 滤波电容 分压比 K = R2 / (R1 + R2) Vout = Vbat × K 注意事项: 1. R1、R2选用0.1%精度、±25ppm温漂电阻 2. C1用于滤除高频噪声,典型值0.1μF 3. ADC输入阻抗需远大于R2(建议100倍以上) 4. 单电阻功耗控制在0.1W以下

3.6 实际设计中的避坑指南

做了这么多年BMS,我总结了几条分压采样的铁律:

  • 千万别用可调电阻做分压。我曾经见过有人用3296可调电阻调分压比,振动几下就偏了,后果很严重。
  • 高压侧电阻要留爬电距离。两个焊盘之间至少2mm,不然高压打火直接烧板子。
  • 采样线要短,远离功率回路。我吃过亏,采样线跟MOS管的驱动线并行走,结果采样电压被耦合得一塌糊涂。
  • 每个采样通道加RC滤波。电阻100Ω~1kΩ,电容0.1μF,截止频率1.6kHz左右,够用。

我的习惯做法:在PCB布局时,把分压电阻放在电池采样接口附近,走线不超过10mm。ADC芯片放在另一侧,中间用地线隔离。这样噪声最小,精度最高。