SOC(state of charge)算法一直是电池管理系统(BMS)开发应用的关键技术之一。因此讨论SOC算法的技术文章很常见,企业对SOC估算的高精度也往往是宣传的亮点。而关于SOC详尽的解释和定义却不常被考虑,从而导致了SOC算法结果的参考价值大打折扣。显而易见若SOC的概念都是模糊的,又何来精确的SOC呢?因此作者希望通过本文分析几种维度下的SOC值,以及这些SOC值的作用。
粗率的说,SOC=剩余容量/额定容量,而要准确表述SOC的意义就要对计算的分母——额定容量(Total Capacity)和分子——剩余容量(Residual Capacity)进行更为严谨的定义。以下是某些企业和组织关于SOC的定义:
(1)美国先进电池联合会(USABC)在其《电动汽车电池实验手册》中定义SOC 为:电池在一定放电倍率下, 剩余电量与相同条件下额定电量(Ah)的比值。
(2)韩国起亚汽车公司定义SOC为:SOC= 剩余可用能量 / 总的可用能量(Wh)。
(3)日本本田公司电动汽车EV Plus定义SOC为:SOC = 剩余电量 / (额定电量 – 电量衰减);剩余电量(Ah)= 额定电量 – 净放电量 – 自放电量 – 温度补偿电量。
SOC算法首要的难点便是针对不同的“功能需求”进行额定容量和剩余容量的定义,同时这两个参数一旦从不同的性质维度、温度维度、电池生命周期维度去观察,则可能计算出不同的SOC值。首先解释什么是“功能需求”。在计算出电池组系统的SOC值后,有多个功能模块将调用SOC值作为其的输入,同时不同的功能模块调用SOC值的需求也不尽相同。大致可以将“功能需求”分为三类:
1.用户参考需求:
第一类是最常见的需求,即用户需要对电池系统剩余的可用能量进行评估,从而决策对产品的使用方式。因此用户更为在意的是与运行距离或使用时间对应的SOC关系。
2.整车控制策略参考需求:
第二类是整车控制策略需要参考的SOC值,从而对行驶策略进行管理。尤其是混动汽车需要将SOC值始终控制在适合的区域内,从而实现节能减排(SOC不能太高,确保刹车能量能尽可能多的回收),提升性能(SOC不能太低,确保加速过程的大功率输出),提高能量效率(保持在低内阻SOC区间运行),延长电池寿命(保持长期运行浅充浅放)的作用。因此整车控制器更为在意的是功率特性和寿命衰减对应的SOC关系。
3.电池管理算法参考需求:
第三类是电池管理算法中需要参考的SOC值,由于电池组系统将随着使用和搁置从BOL状态向EOL状态过渡,而BMS则需要对电池系统全生命周期进行管理。因此电池管理算法更为在意的是在内部有一个基准,使算法在BOL和EOL之间的任一状态找到可以互相等价的SOC关系。类似于工程经济学中利用时间价值模型将不同阶段的资金通过折现率算法(discount rate) 计算,从而进行转化或比较。
由此可见要满足不同“功能模块”对SOC值的参考需求,SOC值的含义需要更多元,对不同功能输出的SOC值要更精准。接下来我们就需要讨论该从哪几个维度去定义SOC值:
1.容量性质维度
进行容量积分运算的时候我们可以根据电荷守恒定律选择以安时(Ah)为单位,也可以根据能量守恒定律选择以瓦时(Wh)为单位。如下图所示,以容量C为X轴,以电压V为Y轴。不同温度下1C放电截止在X轴上的点为当前温度下电池的电量(mAh),而各个放电曲线与X、Y轴形成的面积为当前温度下电池的能量(wh)。从图中可以看出在低温环境下电池电压平台显著下降,因此在低温下即使总电量损失不明显,但总能量将大大降低。因此当SOC值被用于衡量续航的时候,显然用能量(Wh)这个维度表征更加适合。举例:如果用电量(Ah)的维度来计算,将会出现100%至50%的过程比50%至0%所释放的能量(wh)多的情况,用户可能会因此对续航做出过于乐观的判断,导致半路抛锚。这就是第一个要考虑的定义容量性质的维度。
2.温度状态维度
讨论温度维度之前,首先需要了解温度变化对于电量变化的影响。为了便于理解和想象我提出了一种用于描述电池状态的几何模型。如下图所示:为一个60Ah电池的模型。横坐标为电流(A),纵坐标为时间(S)。因此X=60 (A),Y=3600 (S)与坐标轴一同封闭的面积即使电池的电量60(Ah)。然后运用电流积分运算,就可以基于这个简单的模型计算SOC值,SOC= S2 /(S1 + S2)。
接下去我们来做一个可以完全凭借想象的实验。假设有一颗单体电池A在25℃环境下满电状态容量为60Ah;将其在25℃满充,然后在0℃充分搁置再放空,共放出50Ah。那么请想象:如果将该颗电池A在25℃调整SOC为50%(即剩余容量为30Ah),再将其放置于0℃充分搁置并放空。请问能放出的容量应该是多少?建议大家先不要往下看,先凭借想象力估算一下。
通常情况下我们可能会推测出以下几种情况。推测A认为60Ah的电池在SOC为50%的情况下可以放出30Ah,即温度对电量没有影响。推测B认为电池在0℃电量衰减至了50Ah,同时初始剩余了30Ah的电量,因此还能放出20Ah。推测C认为电池电量和温度是等比变化关系,满电状态下0℃与25℃比例关系为5:6,则目前50%状态下因保持该比例,则可放出的电量为25Ah。上述三个推测你认为哪一个是正确的呢?我通过实验来回答。
我采用航天LFP8000(mAh)电池进行了温度与电量的关系试验。选取了6颗同批次生产的电池,BOL(25℃)状态下电量约8500mAh。将这6颗电池在常温下调整SOC在四个状态,分别为100%,100%,75%,50%,50%,25%(为了确保试验的有效性,测试方案在100%和50%这两个关键状态上分别都设计了两颗电池便于参照和容错)。然后分别在-5℃,5℃,15℃,25℃,35℃,45℃这六个温度环境下充分搁置后放空,记录放出电量。
将该试验结果绘制成曲线图(如下)。从图中可见除35℃以外,其他温度环境下均能找到温度与电量变化的关系,即电池放电电量=额定电量*SOC*温度系数。初步证明假设C的结论。而35℃的"异常"却是我在试验前未曾预料到的。
通过进一步的试验数据分析可见,无论电池SOC处于何种状态,电池在35℃下的放电电量始终较25℃有着约400mAh的增长,从而导致SOC越低温度系数比例就越高的现象。
由此我又设计了另一个试验。试验采用航天LFP 60(Ah)的电池,将其在25℃充满(测定实际容量为64.8Ah),然后在0℃充分搁置后先放出25Ah,然后在室温25℃充分搁置,再将电池放空,共放出39.5Ah。通过试验可见,该电池并未因为曾在低温环境下搁置和放电导致总电量明显下降,即温度变化可改变当前可用电量,使部分电量被“冻结”,但总电量不变。因此我们可将最初的电池几何模型进一步优化,将温度对容量的影响添加到模型当中,得到如下V2.0版本。(需要注意的是几何模型的构建是通过试验获得电池外特性从而找到温度与电量的某种简单却并不一定精确的数学关系。若从化学反应的建模方式着手可以采用能斯特模型Nernst model。考虑到电池管理系统的运算能力以及对SOC值的精度要求,几何模型能较好的满足实际算法的要求。)
找到了温度变化和电量的关系,再回到SOC的问题上。我们在实时计算SOC的时候应该始终以常温25℃为基准,还是需要根据当前的实际温度求得剩余可用电量和总容量呢?这就是第二个要考虑的温度状态的维度。
原文链接:http://www.ilinki.net/news/detail/34536