瑞萨DA1469x电量计解读之SoC算法与实现过程

24072 2026-09-21

四、流程概述

4.1 整体流程

SoC算法特性化流程主要包括两大步骤:

1电池特性化。

2SoC算法测试。

86750da0-b184-11f1-90a1-92fbcf53809c.png

图 7:SoC算法特性化流程总览

4.2 电池特性化流程

电池特性化和SoC估算的实验台设置如图 8所示。

图 8:电池特性化实验台设置

电池特性化的目的是生成第2.1.1节详细描述的“电压-SoC”查找表。对于高电流负载的特定情况,电池特性化步骤如下:

1源表以0.5C/1C充电电流(视电池而定)对电池进行完全充电,直到充电电流降至5% EOC限值以下。

2以固定采样间隔记录Vbat,采样间隔等于LUT条目数(生成clut)。

3让电池静置15分钟,无任何负载。

4根据客户需求,以高负载曲线对电池放电。

5以固定采样间隔记录Vbat,采样间隔等于LUT条目数。等待15分钟让电池恢复,再次测量Vbat。第一个Vbat值放入hlut,第二个值放入llut(OCV)。

625°C下的基本llut、hlut和clut如图 9所示。

87728386-b184-11f1-90a1-92fbcf53809c.png

图 9:电池特性化流程

4.3 生成的查找表

SoC算法会生成若干查找表,如表 2所示。

表 2:生成的查找表

编号 名称 描述
1 llut 25°C下以5%容量步长测得的电池开路电压(OCV)对应的电压。
2 hlut 25°C下以5%容量步长测得的平均高负载电流恒定负载对应的电压。
3 clut 25°C下以5%容量步长测得的电池充电过程对应的电压。

这些查找表仅服务于固定温度下的放电和充电操作。此外,每个LUT中的样本数可以增加,以提高算法精度(目前为21个样本)。

注意:

如果负载需求小于0.2C,则不需要温度补偿。

五、SoC算法

5.1 概念

DA1469x SoC软件示例包含多个用于计算SoC的函数,可集成到客户应用中。SoC软件中使用的算法基于以下假设:

1电压降与放电电流近似线性关系。

2在恒定功耗下,每个SoC对应的电池电压是唯一的。

3在恒定放电电流下,SoC每变化5%时电压变化呈线性。

基本算法流程如图10所示。

图 10:SoC算法概念总览

算法输入参数包括:

1电池电压ADC_V(n):通过读取GPADC VBAT通道获得,单次读取提供10位数值。

2ADC_V(n)与ADC_V(n+1)之间的时间间隔T:通过硬件定时器实现,当前设置为1秒。

简而言之,思路是读取初始电池电压并假设一个初始SoC值,然后估算实际负载电流和电压下降速率。后两个参数可用于计算VBAT/SoC曲线上的下一点,从而得到SoC值。

5.2 SoC计算

每个查找表都可以表示为二维图上的若干点,X轴为SoC(%),Y轴为电池电压VBAT(V)。样本数由LUT生成时的步长决定,本例中步长为5%(每损失5%SoC读取一次VBAT),因此图中有21个样本。这21个样本定义了一条曲线,显示电池电压随SoC的下降。

88796380-b184-11f1-90a1-92fbcf53809c.png

图 11:SoC曲线

在同一图上绘制llut和hlut,结果如图11所示。绿线代表hlut,红线代表llut,实际电池电压与SoC的关系由蓝线定义。算法尝试预测llut曲线上的下一个点,将其投影到X轴即可得到下一个SoC估算值。算法的目标是利用所有可用信息将电池当前状态转换到llut曲线上,从而得到SoC估算值。

第一步是使用内/外插法估算实际负载电流。第二步是根据估算的负载电流计算电压下降速率(dV/T)。结合前一个电压值,可以计算估算曲线上的下一点。最后,将X坐标投影到SoC(llut)轴上,即可得到实际SoC。

如前所述,假设在恒定负载下,若电压变化较小,则SoC步长呈线性。

5.3 各种考虑

5.3.1 SoC报告误差

SoC测量软件已在不同负载曲线下进行了大量静态和动态测试。通过精确的电池特性化,报告的SoC与实际值误差在5%以内。

5.3.2 累积误差

由于第一次测量会估算SoC值,因此存在误差。初期误差可能较大,但会随时间平滑调整。

5.3.3 半电充电

即使已达到最高电池电压,但尚未达到EOC,算法最初会产生一些较大误差,但会逐渐调整,因为电压下降速率会相应移动到计算的llut曲线。实际测试中未观察到任何异常。

5.3.4 电池老化

算法已考虑电池老化,因为老化会影响初始电池容量。

六、结论

在恒定电池负载电流下,开路电压与SoC变化成正比。该算法能够利用电池特性化生成的查找表,以5%以内的精度估算SoC。