主要内容

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

CellModelBlock

Cell 对象的条件参数集

自 R2022b 起

说明

使用 CellModelBlock 来构建 Cell 对象的 CellModelOptions 属性。该属性包含您在 CellModelBlockPath 属性中指定的模块的条件参数。

默认情况下,CellModelBlockPath 属性使用 Battery Equivalent Circuit 模块,但您也可以使用 Battery (Table-Based) 模块,或者指定自己的自定义模块。有关详细信息,请参阅 CellModelBlockPath 属性。

注意

生成的电池模块始终使用您在电池对象的 CellModelBlockPath 属性中指定的电池电芯模块参数的默认值,无论您对其进行了何种修改。您可以修改的电芯模块参数仅限于 BlockParameters 属性中列出的条件参数。

创建对象

描述

注意

要快速创建 CellModelBlock 对象,请使用 batteryCellModelBlock 函数。使用此函数,您无需导入命名空间、使用完整类名或在创建对象时仅处理名称-值参量。 (自 R2024a 起)

若要在不使用 batteryCellModelBlock 函数的情况下创建 CellModelBlock 对象,请在 MATLAB® 命令行窗口中,每 MATLAB 会话至少执行一次以下命令:

import simscape.battery.builder.*; 
此对象的所有属性都以名称-值参量的形式公开。

cellModelOpt = CellModelBlockCell 对象设置默认模型选项。若要针对您的应用程序修改这些选项,请使用点表示法。

示例

属性

全部展开

指向 Simscape 电池电芯模块的库路径,以字符串形式指定。默认的组件模型模块是 Battery Equivalent Circuit 模块。

您也可以使用 Battery (Table-Based) 或指定自己的自定义模块,只要该自定义模块满足以下所有要求即可:

  • 该自定义模块必须提供恰好两个名为 np 的电量保存端口。

  • 所有变量必须是标量型。

  • 自定义模块中不能包含名为 power_dissipated 的变量或中间变量。

您可以将自定义模块连接到任意数量的热节点。该软件将所有节点并行连接起来。

如果您指定了自己的自定义模块,则 BlockParameters 结构的字段取决于您在自定义模块中指定的参数。若要针对您的应用程序修改这些选项,请使用点表示法。

有关如何基于自定义电池组件构建电池模型的更多信息,请参阅 基于自定义电芯组件构建电池模型 示例。 (自 R2026a 起)

Input and Output Ports of Custom Blocks

使用自定义模块作为电芯模型模块生成的电池模块,会暴露该自定义模块相同的输入端口 (自 R2026a 起)输出端口 (自 R2024b 起)。输入和输出按水平方向连接,对于由并行组装和模组生成的模块,它们是物理信号;对于由模组组件和封装生成的模块,它们是 Simulink® 信号。

注意

生成的电池模块不会暴露无类型的输入。有关组件输入的更多信息,请参阅 inputs

例如,创建一个带有电压 输出端口的自定义模块:

% ...
    outputs   
        voltageCell; %voltage
    end

    equations
        voltageCell == [ParallelAssembly1(:).voltageCell]';
    end
% ...
使用此自定义单元块创建 CellParallelAssemblyModuleModuleAssembly 对象,并利用 buildBattery 函数生成 ModuleAssembly 单元块。随后,生成的 ModuleAssembly 模块公开了电压端口:

A block diagram showing a battery module called “Module1”. The module outputs a signal called “voltage”.

您在 CellModelBlockPath 属性中指定的电芯模块的条件参数。这些条件参数控制单元模块中各组件(如参数、变量、节点、输入和输出)的可见性。

注意

该属性不包含指定模块的运行时参数。

以下是 Battery Equivalent Circuit 模块的条件参数:

以下是 Battery (Table-Based) 模块的条件参数:

如果您在 CellModelBlockPath 属性中指定了一个自定义模块,这些字段可能会有所不同。

示例: cellModelOpt.BlockParameters.thermal_port = "model"

自 R2024a 起

此 属性 为只读。

指示该模块是否暴露了至少一个热节点的标志,返回值为 truefalse。要更改条件性暴露的热节点,请在 BlockParameters 属性中更新相关属性。

示例

全部折叠

创建一个默认的 CellModelBlock 选项集。

import simscape.battery.builder.*; 
cellModelOpt = CellModelBlock
  CellModelBlock with properties:

    CellModelBlockPath: "batt_lib/Cells/Battery Equivalent Circuit"
       BlockParameters: [1×1 struct]

Show all properties

显示 BlockParameters 属性。

cellModelOpt.BlockParameters
struct with fields:
        CurrentDependence: Disabled
    SelfDischargeResistor: Disabled
                  RCPairs: noDynamics
       CyclingAgingMethod: disabled
    CalendarAgeResistance: Disabled
      CalendarAgeCapacity: Disabled
             ThermalModel: ConstantTemperature
          HysteresisModel: none
      ReversibleHeatModel: Disabled
      CalendarAgingMethod: equation
          StorageVariable: OCV

使用点表示法指定选项。

cellModelOpt.BlockParameters.ThermalModel = "LumpedThermalMass";

未指定的任何属性值将保留其默认值。

创建一个默认的 Cell 对象。

import simscape.battery.builder.*;
batteryCell = Cell
  batteryCell = 

    Cell with properties:

            Geometry: "None"
    CellModelOptions: [1×1 simscape.battery.builder.CellModelBlock]
                Mass: 0.1000 (kg)
            Capacity: 5 (A*hr)
              Energy: 50 (W*hr)

Show all properties

显示 Cell 对象内部的 CellModelOptions 对象的 BlockParameters 属性。

batteryCell.CellModelOptions.BlockParameters
   struct with fields:
        
    CurrentDependence: Disabled
    SelfDischargeResistor: Disabled
                  RCPairs: noDynamics
       CyclingAgingMethod: disabled
    CalendarAgeResistance: Disabled
      CalendarAgeCapacity: Disabled
             ThermalModel: ConstantTemperature
          HysteresisModel: none
      ReversibleHeatModel: Disabled
      CalendarAgingMethod: equation
          StorageVariable: OCV

使用点表示法指定选项。

batteryCell.CellModelOptions.BlockParameters.ThermalModel = "LumpedThermalMass";

版本历史记录

在 R2022b 中推出

全部展开