主要内容

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

Passive Cell Balancing

被动电池电芯均衡算法

自 R2022b 起

库:
Simscape / Battery / BMS / Cell Balancing

描述

此模块实现了一种被动式电池电芯均衡算法。被动式电芯均衡技术通过在泄放电阻上消散多余电荷,使所有电芯保持相似的荷电状态值。

u 输入端口值的取值可以是电芯电压或电芯荷电状态 (SOC) 值。使能输入端口作为平衡程序的触发器。当使能变为 1 时,此模块开始平衡电池,直至电池完全平衡。

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

注意

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

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

注意

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

下图显示了模块的结构:

方程

使能输入端口值的值为 1 时,此模块开始对电池进行平衡处理,直至电池完全平衡。为平衡电池,该算法会对部分电芯进行放电,直至其电压或荷电状态与最低值电芯持平。

命令输出端口将平衡命令指定为由 0 或 1 元素组成的向量。该方程确定命令:

Command={0ifumin(u)ThresholdHysteresisBandCommandoldifThresholdHysteresisBand<umin(u)<Threshold1ifumin(u)Threshold

的每个元素,其中 Threshold平衡阈值参数的值,HysteresisBand停止平衡的滞后带参数的值,Commandold 是前一步的命令。

要指定命令输出端口的数据类型,请使用命令数据类型参数。

当电池中任何电芯的电压超过阈值值时,BalancingActive 输出端口为真。

示例

端口

输入

全部展开

电芯电压或电芯 SOC 值,以向量形式指定。

注意

输入端口 u 预期接收来自真实传感器的电芯电压。若需仿真传感器并解决代数回路问题,当输入模型仿真输出时,请添加单位延迟、传递函数或其他滤波器。

是否启用被动电芯均衡功能,通过 1(启用)或 0(禁用)进行指定。

输出

全部展开

平衡指令,返回值为一个向量,其元素等于 01。该向量的大小等于 u 输入的大小。

平衡程序是否处于活动状态,返回一个标量值。

参数

全部展开

模块用于平衡的阈值。

自 R2023b 起

用于关闭被动电芯均衡的滞后带。此参数的值必须小于或等于平衡阈值参数的值。

激活电芯均衡功能前的延迟时间(单位:秒)

模块完成平衡程序后的时间延迟,单位为秒。

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

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

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

信号属性

指定指令输出的数据类型。您可以直接指定类型,也可以将其表示为数据类型对象,例如 Simulink.NumericType

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

参考

[1] Daowd, Mohamed, Noshin Omar, Peter Van Den Bossche, and Joeri Van Mierlo. "Passive and active battery balancing comparison based on MATLAB simulation." 2011 IEEE Vehicle Power and Propulsion Conference (October 2011): 1-7. https://doi.org/10.1109/VPPC.2011.6043010.

扩展功能

全部展开

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

版本历史记录

在 R2022b 中推出