A Simscape-Battery-Library

A Li-ion battery library written in Matlab Simscape language. Battery models include electrochemical models with ageing and ECMs.
1.0K 次下载
更新时间 2023/6/21

Simscape-Battery-Library Open in MATLAB Online View A Simscape-Battery-Library on File Exchange

A Li-ion battery library written in Matlab Simscape language (Matlab 2023a). Battery library includes:

  1. A thermally coupled Equivalent Circuit Model (first order) with look-up-tables for the parameters (TECM)
  2. A thermally coupled Equivalent Circuit Model with Diffusion (TECMD)
  3. A thermally coupled Single Particle Model with electrolyte (TSPMe)
  4. A thermally coupled Single Particle Model with electrolyte and Ageing (TSPMeA). Ageing includes SEI growth, Li-plating and negative electrode porosity reduction.
  • A few utility components to define the interface conditions with the battery models
    • a simple battery cycler with CCCV charging,
    • a general electrical source - I/V/P
    • a controlled electrical source - I/V/P
  • Two general purpose functions getVariables() and plotVariables() in the +Utilities folder. BatteryLibrary.Utilities.getVariables() will extract the relevant time and distributed variables of any of the Battery Library models and BatteryLibrary.Utilities.plotVariables() plots the signals. See "gettingStarted.mlx" in the "Examples\viaMatlabCode" directory on how to use these two functions.

Installation

  • Clone (or download) the repository.
  • Add the top level directory ("BatterySimscape_Library") in to the Matlab path (you can do this via the Matlab command >>addpath(path to BatterySimscape_Library)).
  • Once added to the path, to start using the libarary componets from any location in Matlab, run the command >>BatteryLibrary_lib which will open the battery library and the blocks can be dragged into a Simulink template (.slx or .mdl) file
  • You can also try all the examples online if you have a MathWorks account from here Open in MATLAB Online. Make sure to add the repo folder to the Matalb path online as well. You should have a folder called 'Simscape-Battery-Library', right click, go to 'Add to path' and select 'Selected Folder(s) and Subfolders'.

Usage

  • See "simpleExamples" folder for running the models with utility components directly in Simulink
  • See "viaMatlabCode" for examples that call the model to perform various simulations, e.g. Power discharge, Remaining Useful-Energy calculations, cycle ageing, etc
  • A parameter estimation example of the TECMD model is also provided (can be a lot further improved, requires Simulink Design Optimisation Toolbox)

Dependencies

  • Simulink Design Optimisation Toolbox is required for the parameter estimation example

Model references

The TSPMe and TSPMeA models are result of the following two papers done in collaboration with Ferran Brosa-Planella.

The Parameters for the physcial models are from the work done in collaboration with University of Birmingham

The TECMD is a simplified version (only a single OCV + diffusion) of the work done in collaboration with Chuanxin Fan

引用格式

W. D. Widanage (2021). A Simscape-Battery-Library (https://github.com/WDWidanage/Simscape-Battery-Library/releases/tag/v1.0.0), GitHub. Retrieved November 16, 2021.

MATLAB 版本兼容性
创建方式 R2023a
兼容任何版本
平台兼容性
Windows macOS Linux

Community Treasure Hunt

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

Start Hunting!

+BatteryLibrary/+Models

+BatteryLibrary/+Utilities

Examples/parameterEstimation_TECMD

Examples/parameterEstimation_TECMD

Examples/viaMatlabCode

版本 已发布 发行说明
2.0.0.0

See release notes for this release on GitHub: https://github.com/WDWidanage/Simscape-Battery-Library/releases/tag/v2.0.0

1.0.2.0

See release notes for this release on GitHub: https://github.com/WDWidanage/Simscape-Battery-Library/releases/tag/v1.0.2

1.0.1

See release notes for this release on GitHub: https://github.com/WDWidanage/Simscape-Battery-Library/releases/tag/v1.0.1

要查看或报告此来自 GitHub 的附加功能中的问题,请访问其 GitHub 仓库
要查看或报告此来自 GitHub 的附加功能中的问题,请访问其 GitHub 仓库