All Courses
All Courses
Courses by Software
Courses by Semester
Courses by Domain
Tool-focused Courses
Machine learning
POPULAR COURSES
Success Stories
Objective:- For a 10 cell series lithium ion battery model, simulate the thermal effects and compare life cycle performance at various temperatures, charge & discharge rates using MATLAB. Result:- Introduction:- This example shows how to simulate a battery pack consisting of multiple series-connected…
Abhishek kumar singh
updated on 04 Apr 2022
Objective:- For a 10 cell series lithium ion battery model, simulate the thermal effects and compare life cycle performance at various temperatures, charge & discharge rates using MATLAB.
Result:-
Introduction:- This example shows how to simulate a battery pack consisting of multiple series-connected cells in an efficient manner. It also shows how a fault can be introduced into one of the cells to see the impact on battery performance and cell temperatures.
For efficiency, identical series-connected cells are not just simply modeled by connecting cell models in series. Instead a single cell is used, and the terminal voltage scaled up by the number of cells. The fault is represented by changing the parameters for the Cell 10 Fault subsystem, reducing both capacity and open-circuit voltage, and increasing the resistance values.
We have taken the same model but decresed no of cells. Instead of no of cell which was 20 we have made it 10 cells. Also we have done some modifications in the model which will be discussed one by one.
Simulink model:-
So here as we can see we have used 10 cells of lithium ion battery using matlab and simulink to find the thermal effect and life cycle performances related to temperature, charge and discharge and also conduction and convection blocks are used to show how the heat transfer takes place in battery packs.
This model also shows how a fault can be introduced into one of the cells to the impact on battery performance and cell temperature. For faulty cells just we have increased the resistance value of the cell and increased the capacity and open circuit voltage.
Connection:-
10 lithium cells are connected in series with three segments. In first segment we have used 1-4 Cells. In the second segment we have used the faulty one which is 5th cell and the third segment we have used cell 6-10.
The heat transfer is observed between the cells by heat transfer blocks which is conduction and convection blocks.
Ambient temperature source is attached with temperature sensor to show the value also installed the display.
The battery pack is connected to AC current source to observe the cyclic charge and discharge rate graph. Also we added a current sensor between the battery pack and the AC current source to calculate the SOC of the battery.
Also all three segments cells temprature is showing in the scope.
Cell 1_4 Subsystem:-
The cell subsystem basically consist of a thermal model and lithium cell 1RC block which calculate the temperature and thermal effect for cells and overall calculate the battery pack.
We have used PS gain block which multiplies the input physical signal by a constant y=u*gain, Another block are voltage sensor and voltage source.
The voltage sensor block represents an ideal voltage sensor. This is a device that converts voltage measured between any electric connection into a physical signal propotional to the voltages.
The voltage source represents an ideal voltage source that is powerful enough to maintain the specified voltage at its output regardless of the current passing through it.The output voltage is V=Vs, Where Vs is the numeric value represents at its physical signal port.
For this thermal model we have used some blocks which are Thermal reference, Controlled themrature source, Thermal mass, Themrature sensor etc.
Lithium Cell 1RC subsystem:-
For cell 1_4:-
In this cell configuration we have used 4 nos in series.
Initial temperature is 293.1K.
For Cell 5:-
In the electrical parameter we have changed some value to make it faulty cell.
For cell 6_10:-
Temperature source:-
This block represents an ideal source of thermal energy that is powerful enough to maintain a specified temperature at its outlet regardless of the heat flow consumed by the system.
The source generates constant absolute temperature defined by temeprature parameter value.
Here for the ambient temperature block used 293.1K.
Conductive heat transfer:-
The Conductive Heat Transfer block represents a heat transfer by conduction between two layers of the same material. The transfer is governed by the Fourier law and is described with the following equation:
Q=k·AD(TA−TB)
where
Q | Heat flow |
k | Material thermal conductivity |
A | Area normal to the heat flow direction |
D | Distance between layers (thickness of material) |
TA,TB | Temperatures of the layers |
Port A & B are thermal conserving port assosiated with material layers. The block positive direction is port A - port B. Flow rate from A to B.
Convective heat transfer:-
The Convective Heat Transfer block represents a heat transfer by convection between two bodies by means of fluid motion. The transfer is governed by the Newton law of cooling and is described with the following equation:
Q=k·A·(TA−TB)
where
Q | Heat flow |
k | Convection heat transfer coefficient |
A | Surface area |
TA,TB | Temperatures of the bodies |
Here we have used three convective port and two nos conductive port.
For 1-4 Cell, For cell 5 & For 6-10 cell.
Temperature sensor:-
The Temperature Sensor block represents an ideal temperature sensor, that is, a device that determines the temperature differential measured between two points without drawing any heat.
Connections A and B are thermal conserving ports that connect to the two points where temperature is being monitored. Port T is a physical signal port that outputs the temperature differential value.
The block positive direction is from port A to port B. The measured temperature is determined as T = TA – TB.
Port A- Thermal conserving port associated with the sensor positive probe.
Port B- Thermal conserving port associated with the sensor negative probe.
Port C- Physical signal output port for temperature.
AC Current source:-
The AC Current Source block represents an ideal current source that maintains sinusoidal current through it, independent of the voltage across its terminals.
The output current is defined by the following equation:
I=I0⋅sin(2π⋅f⋅t+φ)
where
I | Current |
I0 | Peak amplitude |
f | Frequency |
φ | Phase shift |
t | Time |
For the SOC Calclation:-
For the calculation of SOC we have arranged a mathmatical model to get he SOC graph. Here we have used rate transition block, Discrete time integrator, gain block etc.
Rate transition:-
The Rate Transition block transfers data from the output of a block operating at one rate to the input of a block operating at a different rate. Use the block parameters to trade data integrity and deterministic transfer for faster response or lower memory requirements. To learn about data integrity and deterministic data transfer
Discrete time integrator:-
Use the Discrete-Time Integrator block in place of the integrator block to create a purely discrete model. With the Discrete-Time Integrator block, you can:
Define initial conditions on the block dialog box or as input to the block
Define an input gain (K) value
Output the block state
Define upper and lower limits on the integral
Reset the state with an additional reset input
Result Analysis:-
Here we can see the graph of all Cells combination
Where,
Cell 1_4 & Cell 6_10 has lower value of temprature which is 317K to 325K.
Now if we talk about the faulty cell, cell 5 the temperature is 324K to 334K.
Here we have SOC result
where,
For first 300 Secs our SOC reaches to 95% during charging then 300 secs for discharging with the same value. in one hour it has completed the 6 complete cycles with charging and discharging.
Here we have taken another model and we have used a driving cycle current profile by controoled current source to see the cell behaviour over it. for this model we have just dona a littile bit modification.
We have used controlled current source. And the controlled value is feeding by driving cycle.
Matlab Script code:- (For temp & SOC of the cell)
% Plotting script for example battery model ssc_lithium_battery_with_fault.
% This example shows how to model a series of lithium-ion cells where one
% of the cells develops a fault. The data used for each cell is the same
% as for the ssc_lithium_cell_1RC example model, and is based on T. Huria,
% M. Ceraolo, J. Gazzarri, R. Jackey. "High Fidelity Electrical Model with
% Thermal Dependence for Characterization and Simulation of High Power
% Lithium Battery Cells," IEEE International Electric Vehicle Conference,
% March 2012.
% Copyright 2014 The MathWorks, Inc.
try
figure(h1_ssc_lithium_battery_with_fault)
catch
h1_ssc_lithium_battery_with_fault=figure('Name', 'ssc_lithium_battery_with_fault');
end
if ~exist('simlog_ssc_lithium_battery_with_fault','var')
sim('ssc_lithium_battery_with_fault')
end
temp_data = simlog_ssc_lithium_battery_with_fault;
temp_time = temp_data.Cell_01_to_09.Thermal_Model.Battery_Thermal_Mass.T.series.time;
% Extract cell temperature data
temp_T1 = temp_data.Cell_01_to_09.Thermal_Model.Battery_Thermal_Mass.T.series.values;
temp_T2 = temp_data.Cell_10_Fault.Thermal_Model.Battery_Thermal_Mass.T.series.values;
temp_T3 = temp_data.Cell_11_to_20.Thermal_Model.Battery_Thermal_Mass.T.series.values;
% Extract SOC data
temp_SOC1 = temp_data.Cell_01_to_09.Lithium_Cell_1RC.Em_table.SOC.series.values;
temp_SOC2 = temp_data.Cell_10_Fault.Lithium_Cell_1RC.Em_table.SOC.series.values;
temp_SOC3 = temp_data.Cell_11_to_20.Lithium_Cell_1RC.Em_table.SOC.series.values;
ah(1) = subplot(2,1,1);
temp_lh = plot(temp_time/60,[temp_T1 temp_T2 temp_T3],'LineWidth',1);
set(temp_lh(3),'LineStyle','--');
title('Battery Cell Temperature')
ylabel('Temperature (K)')
legend({'Cell 1-9','Cell 10 (Fault)','Cell 11-20'},'Location','SouthEast')
ah(2) = subplot(2,1,2);
temp_lh = plot(temp_time/60,[temp_SOC1 temp_SOC2 temp_SOC3],'LineWidth',1);
set(temp_lh(3),'LineStyle','--');
title('Battery Cell State of Charge')
xlabel('Time (minutes)')
ylabel('State of Charge (0-1)')
legend({'Cell 1-9','Cell 10 (Fault)','Cell 11-20'},'Location','SouthEast')
linkaxes(ah,'x');
% Remove temporary variables
clear temp_data temp_T1 temp_T2 temp_T3 temp_SOC1 temp_SOC2 temp_SOC3 temp_lh ah
Controlled current source:-
The Controlled Current Source block represents an ideal current source that is powerful enough to maintain the specified current through it regardless of the voltage across the source.
The output current is I = Is, where Is is the numerical value presented at the physical signal port.
The positive direction of the current flow is indicated by the arrow.
Result:-
As per this temperature graph we can say that cell1_4 & cell6_10 has temprature rising low as compare to cell5.
In first and third segments of cell configuration we have max temp is 293.19K. where cell 5 max temp is 293.22K.
Also in the SOC we have used drive cycle to SOC just define the how drive cycle works.
Model link:-
https://drive.google.com/file/d/1584lYKpsZMG_59Nfz8QI9ZyuJ8ho5-N1/view?usp=sharing
https://drive.google.com/file/d/1NPZ7oLLN4ZSO_4-DeDLhS_cBj1zLZmag/view?usp=sharing
Leave a comment
Thanks for choosing to leave a comment. Please keep in mind that all the comments are moderated as per our comment policy, and your email will not be published for privacy reasons. Please leave a personal & meaningful conversation.
Other comments...
Project 2 Adaptive Cruise Control
Objective of Main Project: Developing Adaptive Cruise Control feature as per the Requirement Document using MATLAB Simulink. Follow all the MBD related processes: Requirement Tagging & Traceability, SLDD creation, Configuration Parameter changes, Model Advisor check & Code Generation. In Configuration Parameters:…
16 May 2022 03:12 PM IST
Project 1 (Mini Project on Vehicle Direction Detection
Objective of Mini Project:- Development of MATLAB Simulink model as per requirement. Tag the requirements to the simulink model; tagging requirement 1 & requirement 2 to their corresponding subsystems is fine. MBD compliant changes, Data Dictionary creation & code generation is added advantage, and that is not…
16 May 2022 12:48 PM IST
Project-1: Modelling an electric Car with Li-ion battery
Objective:- Create a MATLAB model of electric car which uses lithium ion battery and suitable motor. Choose suitable blocks from Simscape or Powertrain block set. Implement the vehicle speed control using PI controller and generate brake and accelerator commands. Avoid using readymade driver block for speed control. Prepare…
27 Apr 2022 08:08 AM IST
Final Project: Electric Rickshaw modelling
Objective:- Create a detailed MATLAB model of an electric rickshaw (three wheel passenger vehicle) as per details below: Rear wheels driven by PM brushed type motor Assume efficiency points of motor controller and motor Make an excel sheet of all input and assumed data Results: For any three standard driving…
21 Apr 2022 07:13 AM IST
Related Courses
Skill-Lync offers industry relevant advanced engineering courses for engineering students by partnering with industry experts.
© 2025 Skill-Lync Inc. All Rights Reserved.