4. 安时积分法

安时积分法(Coulomb Counting)是BMS中最基础、最广泛使用的SOC估算方法。它的核心思想非常朴素:SOC的变化量等于流入或流出电池的电荷量与额定容量的比值。用公式表达为:

SOC(t) = SOC(t₀) - (1 / C_N) · ∫ η · I(t) dt

其中:
  SOC(t₀)  —— 初始荷电状态(%)
  C_N      —— 电池额定容量(Ah)
  η        —— 库仑效率(充电≈0.98~0.99,放电≈1.0)
  I(t)     —— 瞬时电流(A,充电为正,放电为负)

离散化后,工程上通常按固定周期累加:

SOC[k] = SOC[k-1] - (η · I[k] · Δt) / (C_N · 3600)

Δt 单位为秒,C_N 单位为 Ah,I 单位为 A

安时积分法的优势在于原理简单、实时性好、短时精度高,但它有两个致命弱点:一是依赖准确的初始SOC,二是电流采样误差会随时间累积。因此,工程实现的关键不在于公式本身,而在于如何获取初始SOC、如何抑制采样误差、如何设计累积误差补偿机制。

安时积分法工程实现信号链与误差补偿架构 电流采样 分流器 / 霍尔传感器 采样误差源 零漂 · 增益误差 · 温漂 安时积分累加器 Σ η·I·Δt / C_N 初始SOC获取 OCV查表 · 静置判定 · 上电策略 SOC输出 显示 / 整车控制器 累积误差补偿 OCV修正 · 满充校准 · 容量衰减 反馈修正 工程实现要点 电流采样:分流器+高精度ADC,零漂需定期校准,温漂需补偿 初始SOC:上电静置≥2h后OCV查表,否则用上次下电SOC+自放电修正 积分周期:典型100ms~1s,需与电流采样同步,避免时间抖动 误差补偿:静置OCV修正、满充/满放校准、容量衰减自适应更新 保护策略:SOC边界钳位、积分饱和处理、故障降级模式

一、核心原理与离散化实现

安时积分法的物理本质是电荷守恒。电池内部锂离子的嵌入和脱出量,宏观上表现为电流对时间的积分。工程实现时,BMS以固定周期Δt读取电流值,累加电荷量,再除以额定容量得到SOC变化量。

需要注意的是,充电和放电的库仑效率不同。充电时部分电荷用于副反应(如SEI膜生长),效率通常为0.98~0.99;放电时效率接近1.0。因此工程代码中通常对充电电流乘以η系数:

// 安时积分核心代码示例(C语言)
float soc = soc_init;          // 初始SOC,单位%
float cap_ah = 100.0f;         // 额定容量,单位Ah
float eta_chg = 0.985f;        // 充电库仑效率
float dt = 0.1f;               // 积分周期,单位s

void coulomb_count(float current_a) {
    float eta = (current_a > 0) ? eta_chg : 1.0f;
    float delta_ah = eta * current_a * dt / 3600.0f;
    soc -= (delta_ah / cap_ah) * 100.0f;
    if (soc > 100.0f) soc = 100.0f;
    if (soc < 0.0f)   soc = 0.0f;
}

二、初始SOC获取策略

初始SOC的准确性直接决定安时积分法的起点精度。工程上通常采用分层策略:

  • 长时间静置后上电:电池静置2小时以上,极化电压基本消失,此时开路电压(OCV)与SOC有稳定的对应关系。通过OCV查表法获取初始SOC,精度可达±3%以内。
  • 短时间下电再上电:若下电时间较短(如小于30分钟),极化尚未完全消退,OCV查表误差较大。此时应使用上次下电时的SOC减去自放电修正量作为初始值。
  • 异常掉电或首次上电:若BMS无历史SOC记录,可结合电池电压、温度、历史充放电特征进行粗估,并标记SOC为“未校准”状态,待后续OCV修正。
工程提示:静置判定条件通常为:|电流| < 0.01C 且持续时间 > 2小时。对于商用车等频繁启停场景,可适当缩短至1小时,但需增加温度补偿。

三、电流采样误差与累积效应

安时积分法最突出的工程问题是误差累积。假设电流采样存在1%的增益误差,对于100Ah电池,持续放电1小时后,SOC误差将达到1%×100Ah/100Ah=1%。若持续运行10小时,误差累积至10%,完全不可接受。

电流采样误差主要来源包括:

误差类型 典型值 影响 抑制措施
零点漂移 ±5~20mA 小电流长时间累积 定期零漂校准,上电自检
增益误差 ±0.5%~2% 大电流时比例偏差 高精度分流器,出厂标定
温度漂移 ±50~200ppm/℃ 宽温区精度下降 温度补偿算法,选用低温漂器件
量化误差 ±1LSB ADC分辨率不足 选用16位以上ADC,过采样

四、累积误差补偿机制

单纯依靠安时积分无法长期保持精度,必须引入多源修正。工程上常用的补偿手段包括:

  1. 静置OCV修正:当电池满足静置条件时,用OCV查表得到的SOC对积分SOC进行加权修正。修正权重根据静置时长和电流历史动态调整。
  2. 满充/满放校准:充电至截止电压且电流小于0.02C时,将SOC强制校准为100%;放电至截止电压时校准为0%。这是最可靠的绝对校准点。
  3. 容量衰减自适应:随着电池老化,实际可用容量下降。通过记录满充到满放的累计安时量,在线更新C_N,避免因容量偏差导致的SOC漂移。
  4. 卡尔曼滤波融合:将安时积分作为状态预测,OCV作为观测,通过EKF或UKF融合,可在动态工况下显著抑制误差。
常见误区:很多工程师认为“安时积分法简单,不需要标定”。实际上,安时积分法的长期精度完全依赖于补偿策略的设计。没有OCV修正和满充校准的纯安时积分,在实车运行一周后SOC误差可能超过15%。

五、工程实现要点与复盘

在实际BMS项目中,安时积分法的实现需要注意以下细节:

  • 积分周期与采样同步:积分周期应与电流采样周期严格同步,避免因任务调度抖动引入时间误差。建议使用硬件定时器触发。
  • 电流方向定义:充电为正、放电为负,需在代码中统一约定,避免符号错误导致SOC反向变化。
  • SOC边界处理:积分结果需钳位在0%~100%,同时设置“虚拟边界”(如2%~98%)用于触发校准逻辑。
  • 故障降级:当电流传感器故障时,应切换至电压估算或默认安全值,并上报故障码。
  • 数据记录:记录每次上电/下电的SOC、OCV、温度、累计安时量,用于售后分析和算法迭代。

复盘一个典型场景:某商用车BMS在运行3个月后SOC显示偏差达12%。排查发现,电流传感器零漂未定期校准,且系统从未触发满充校准(用户习惯在80%即停止充电)。改进措施:增加上电零漂自检,每500次充电循环强制一次满充校准提示,并将OCV修正的静置阈值从2小时调整为1.5小时。改进后SOC误差稳定在±5%以内。

安时积分法不是“落后”的方法,而是BMS SOC估算的基石。真正决定其工程精度的,是初始SOC获取的可靠性、电流采样链路的精度,以及累积误差补偿策略的完备性。只有将这三者协同设计,才能让安时积分法在实车全生命周期内保持可接受的SOC精度。