第一章:SOC基础——电池模型与SOC定义
各位同学,欢迎来到《从SOC到SOH:电池管理算法进阶之路》。我是你们的老朋友,一个在BMS领域摸爬滚打了十几年的工程师。
今天咱们聊聊最基础,也最容易被忽视的东西——SOC。说白了,SOC就是电池还剩多少电。但你别小看它,我见过太多项目因为SOC算不准,最后整个系统崩掉的案例。
1.1 电池模型:你总得知道电池长什么样
要算SOC,首先得有个电池模型。模型不对,后面全白费。
我个人习惯把电池模型分成三类:
- 理想模型:把电池当成一个理想电压源。简单,但误差大到没法用。
- 内阻模型:在理想模型基础上串个电阻。嗯,比理想模型好点,但动态响应还是差。
- RC模型:用电阻电容网络模拟电池的极化效应。这是工程中最常用的。
我在项目中遇到过最坑的事,就是有人用内阻模型去做快充策略。结果呢?电压跳变严重,SOC估计直接飘了10%。
核心观点:模型精度决定算法上限。你后面用再牛的卡尔曼滤波,模型本身不准,结果也是白搭。
1.2 SOC定义:别以为这很简单
SOC的全称是State of Charge,荷电状态。公式很简单:
SOC = (剩余容量 / 额定容量) × 100%
但这里有个坑——额定容量怎么定义?
有的厂家用1C放电容量,有的用0.33C,还有的用1/20C。你想想看,同一个电池,不同标准下额定容量能差20%。
注意:SOC定义必须统一。我建议项目一开始就定好:以0.33C(约3小时率)放电容量为基准。否则后面团队吵架都吵不完。
1.3 OCV-SOC曲线标定:这是BMS的命根子
OCV(开路电压)和SOC的关系,说白了就是电池的“身份证”。每款电池都有自己的OCV-SOC曲线。
标定方法通常有两种:
- 静置法:充到满,放一点电,静置2小时,测电压。重复直到放空。
- 小电流法:用极小的电流(比如0.02C)放电,近似认为端电压≈OCV。
我个人更推荐静置法,虽然慢,但数据可靠。我曾经用静置法标定一款三元锂电池,整整花了3天时间。但换来的是后续SOC估计误差小于2%。
| SOC (%) | OCV (V) - 磷酸铁锂 | OCV (V) - 三元锂 |
|---|---|---|
| 100 | 3.65 | 4.20 |
| 80 | 3.40 | 4.00 |
| 50 | 3.30 | 3.70 |
| 20 | 3.20 | 3.50 |
| 0 | 2.50 | 3.00 |
看到没?磷酸铁锂的OCV曲线在中间段非常平缓。这意味着什么?意味着你靠电压查SOC,在30%-70%区间基本查不准。嗯,这里要注意,磷酸铁锂的BMS必须用安时积分法做主力。
经验之谈:标定OCV-SOC曲线时,温度一定要控制好。25℃和0℃测出来的曲线能差不少。我建议至少做25℃、0℃、45℃三组数据。
1.4 安时积分法:原理与误差分析
安时积分法,也叫库仑计数法。原理简单到令人发指:
SOC(t) = SOC(0) - (∫I dt) / Q_n
说白了,就是电流对时间积分,算出用了多少电量,然后从初始SOC里减掉。
但为什么这么简单的方法,实际用起来却一堆坑?
误差来源主要有三个:
- 电流测量误差:传感器有偏置和增益误差。0.5%的电流误差,跑1小时就能累积出0.5%的SOC误差。
- 初始SOC不准:如果初始值就错了,后面再怎么积分也是错的。
- 容量衰减:电池老化后额定容量会下降,但你的算法还在用新电池的容量算。
我曾经在一个储能项目里,就因为电流传感器温漂太大,导致SOC误差在一天内累积到15%。最后不得不加了个定期校准的机制——每次电池充满时强制把SOC设为100%。
避坑指南:安时积分法必须配合校准机制。我建议至少做到:
- 每次充满电时重置SOC为100%
- 每次放空时重置SOC为0%
- 定期用OCV查表法做修正
好了,第一章的内容就到这里。安时积分法虽然简单,但它是所有高级算法的基础。你想想看,卡尔曼滤波也好,神经网络也罢,本质上都是在安时积分法的基础上做修正。
下一章咱们聊聊卡尔曼滤波——怎么用数学方法把SOC误差压到1%以内。到时候见。