主要内容

本页采用了机器翻译。点击此处可查看最新英文版本。

SOC Estimator (Coulomb Counting)

库仑计数荷电状态估计器

自 R2022b 起

库:
Simscape / Battery / BMS / Estimators

描述

SOC Estimator (Coulomb Counting) 模块实现了一个估计器,该估计器使用库仑计数法计算电池的荷电状态 (SOC)。

SOC 是释放容量 C 可释放与额定容量 C 额定的比值。制造商提供每块电池的额定容量值,该值代表电池的最大充电量:

SOC=CreleasableCrated.

此模块支持单精度和双精度浮点仿真。

注意

要启用继承的单精度浮点仿真,除采样时间(-1 表示继承) 参数外,所有输入和参数的数据类型必须为 single

您可以使用采样时间(-1 表示继承) 参数在模块的连续实现和离散实现之间进行切换。要将模块配置为连续时间模式,请将采样时间(-1 表示继承) 参数设置为 0。要配置离散时间模块,将采样时间(-1 表示继承) 参数设置为正值且不为零,或设置为 -1 以从上游模块继承采样时间。

注意

此模块的连续时间实现仅适用于双精度浮点仿真。如果您提供单精度浮点参数和输入,此模块会将它们转换为双精度浮点值,以防止出现错误。

下图显示了模块的结构:

方程

为了计算电池的 SOC,SOC Estimator (Coulomb Counting) 模块计算安培小时和电流积分:

SOC=SOC(t0)+1Cratedt0t0+τIbatt,

其中 C rated 是标称电池容量,I batt 是电池电流。

示例

假设与限制

电池的额定容量不考虑老化因素。

端口

输入

全部展开

电池电流(以安培为单位),指定为标量(对于单个电芯)或向量(对于多个电芯)。要将此输入指定为电芯电流向量,请选择指定电流输入作为电芯电流参数。

初始荷电状态,指定为范围为 [0, 1] 的标量或向量。该输入端口的大小必须等于电流输入端口的大小。

输出

全部展开

电池的荷电状态,以标量或向量形式返回。该输出端口的大小与电流InitialSOC 输入端口的大小相同。

参数

全部展开

自 R2023b 起

以电芯电流向量的形式指定电流输入端口值的选项。如果选择此参数,电流输入端口的值可以是标量或向量,其大小与模块输入的大小相等。

电芯的容量,单位为安培小时。该模块通过将累积电荷除以该值来计算荷电状态。该模块通过积分电池电流来计算累积电荷。

连续模块执行之间的时间。在执行过程中,模块会产生输出,并酌情更新其内部状态。有关详细信息,请参阅什么是采样时间?指定采样时间

对于继承的离散时间运行,请将此参数指定为 -1。对于离散时间操作,请将该参数指定为正整数。对于连续时间运行,将该参数指定为 0

如果此模块位于支持在连续操作和离散操作之间切换的封装子系统或变体子系统中,则提升采样时间参数。提升采样时间参数可确保在模块的连续实现和离散实现之间正确切换。有关详细信息,请参阅Promote Block Parameters to a Mask

自 R2025a 起

选择模块算法的数据类型的选项,指定为以下值之一:

  • 继承: 自动 - 您可以采用 singledouble 两种精度仿真模块。您必须以 singledouble 的形式明确提供输入和参数。

  • double - 模块算法将所有输入和参数转换为 double 数据类型。

  • single - 模块算法将所有输入和参数转换为 single 数据类型。

  • <数据类型表达式> - 模块算法将所有输入和参数转换为您指定的数据类型对象。

点击显示数据类型助手按钮 以显示数据类型助手,它可以帮助您设置数据类型属性。有关详细信息,请参阅使用数据类型助手指定数据类型控制信号的数据类型

扩展功能

全部展开

C/C++ 代码生成
使用 Simulink® Coder™ 生成 C 代码和 C++ 代码。

版本历史记录

在 R2022b 中推出

全部展开