Battery Builder Error When Creating a Library

I have been working on making a battery in the Battery Builder app for a thermal simulation I want to run and when I go to create a library for any level of the heirarchy above a parallel assembly it returns an error that says:
The points input must only create line connections that follow connection rules of the appropriate Physical Modeling domains.
I have tested so many of the settings and it doesn't seem to go anywhere, this results in me not getting my module assembly block nor my pack block that I want to pull into a Simulink/Simscape model. Any idea of what settings might be causing this?

4 Comments

Hello Patrick,
Could you please confirm the MATLAB release you are using and specify the properties set in the App prior to building the library? With this information, I will be able to investigate potential solutions.
Thank you and have a nice day,
~Lucas
Patrick
Patrick on 6 Feb 2025
Edited: Patrick on 7 Feb 2025
@Lucas Lebert Hey thanks for helping Lucas! My MATLAB release is 2024a, I also attempted my battery on 2024b, but primarily 2024a.
For my cell:
Geomrety: Cylindrical, Radius: 0.00915, Height: 0.065
Cell Properties: Mass: 0.048, Capacity 2.5, Energy: 9
Parametrization: None for both
Cell Model Options: CellModelBlockPath: batt_lib/Cells/Battery (Table Based), T_dependence: yes, prm_age_capacity: disabled, prm_age_modeling: equation, prm_age_resistance: disabled, prm_age_OCV: SOC, prm_dir: Current Directionality, prm_dyn: rc1, prm_fade: disabled, prm_leak: disabled, Thermal Port: model
For my parallel assembly:
Arranged in a hexagonal 10p1s configuration with 2 rows of 5.
Model Resolution: Lumped, Cell Parameter Variation: No Variation, Non Cell Resistance: Checked, Balancing Strategy: External, Inter Cell Thermal Path: Check, Inter Cell Radiative Thermal Path: Unchecked, Coolant Thermal PathL Cell Based Thermal Resistance, Cooling Plate: No Top and No Bottom, Serpentine Cooling Plate: None, Ambient Thermal Path: Cell Based Thermal Resistance, Thermal Nodes all Vectorized
As for my Fraction of Heat Exchange: 0.5 and 0.9
And for the rest of my heirarchy the settings stay the same, though levels are added. I hope this helps add some context...
Hello Patrick,
Thank you for the detailed insight.
Unfortunately, I couldn't reproduce the issue on my end. If possible, could you please export the Battery into a .mat file and share it with me?
To do this, select the battery in question in the Battery Browser, then choose "Export to mat file" from the Export dropdown menu in the toolstrip.
I appreciate your help with this.
Have a nice day,
Lucas
Hello, I am having the same issue.When I attempt to create a library from my battery pack, I get the error: "The points input must only create line connections that follow connection rules of the appropriate Physical Modeling domains." I have attached the .MAT file that I am working on.

Sign in to comment.

Answers (1)

Hello Patrick and Jordan,
I've pinpointed the root cause and reported it internally, so it will be addressed. The issue arises when the NonCellResistance for a Module Assembly is enabled, and either the XmaxThermalNodes/YmaxThermalNodes are set to something other than "None" or the cell balancing is configured to "external".
As a temporary workaround you can disable the non-cell resistance for the Module Assembly and add the resistors after exporting the battery.
Using Jordan's example battery:
load("testpack4","Testpack02");
Testpack02 = Testpack02.modifyModuleAssembly("NonCellResistance","off"); % Disable non-cell resistance for the Module Assembly
buildBattery(Testpack02); % Export the battery
% Open the module Assembly
open_system("Batteries")
open_system("Batteries/ModuleAssemblies/ModuleAssemblyType1");
% Note, that the resistors between the + Connection port and the first
% Module Assembly as well as the - Connection port and the last Module
% Assembly are not modeled. If needed they can be added manually to the
% Module Assembly
% If the pack block is intended to be used with the non-cell resistance on
% the Module Assembly level each of the Module Assembly blocks inside the
% Pack subsystem would need to be modified in the same way.
open_system("Batteries/Testpack02");
I am sorry for the dalay caused by this.
Have a nice day,
~Lucas

Categories

Products

Release

R2024a

Asked:

on 5 Feb 2025

Commented:

on 13 Feb 2025

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!