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 精度分析——误差从哪来?
精度分析,说白了就是搞清楚你的测量到底准不准。我遇到过不少工程师,算完分压比就觉得万事大吉,结果实际测试差了一大截。
误差来源主要有三个:
- 电阻本身的精度误差:0.1%的电阻,两个串联,最坏情况误差接近0.2%。
- 温度漂移:两个电阻的温漂系数不一致,温度变化时分压比会变。
- 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示意图
下面这张图,展示了一个典型的分压采样网络结构:
3.6 实际设计中的避坑指南
做了这么多年BMS,我总结了几条分压采样的铁律:
- 千万别用可调电阻做分压。我曾经见过有人用3296可调电阻调分压比,振动几下就偏了,后果很严重。
- 高压侧电阻要留爬电距离。两个焊盘之间至少2mm,不然高压打火直接烧板子。
- 采样线要短,远离功率回路。我吃过亏,采样线跟MOS管的驱动线并行走,结果采样电压被耦合得一塌糊涂。
- 每个采样通道加RC滤波。电阻100Ω~1kΩ,电容0.1μF,截止频率1.6kHz左右,够用。
我的习惯做法:在PCB布局时,把分压电阻放在电池采样接口附近,走线不超过10mm。ADC芯片放在另一侧,中间用地线隔离。这样噪声最小,精度最高。