Challenge

Project 2 Thermal modeling of battery pack

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.

  • In the controlled temprature source we have three ports. Which is A, B and S. Where port A & B work as a source inlet and outlet. Port s is the physical signal port.
  • The thermal mass block represents a thermal mass which reflects the ability of a material or a combination of material to store internal energy. The property is charcterized by the mass of the matarial and its specific heat. the thermal mass is described with the following equation. Q=c.m*dT/dt
  • Themrature sensor block represents an ideal temprature sensor a device that determines the the temprature differential measured between two points without drawing any heat.

Lithium Cell 1RC subsystem:-

  • In this subsystem basically capacitor value table which depends upon an external physical signal input SOC and T. It is assumed that capacitor value is varying with the time and hence the equation i=CdV/dt holds.
  • Resistance value R table depends an external physical signal inputs SOC and T.
  • Voltage value EM implement the cell main branch voltage source determine value for capacity(C) and state of charge.The defining equation depends on cell temprature T.

For cell 1_4:-

In this cell configuration we have used 4 nos in series.

Initial temperature is 293.1K.

For Cell 5:-

  • For this segment we have only one cell which is cell no 5, Where we have declared it as a faulty cell.
  • Initial temperature is 293.1K.

In the electrical parameter we have changed some value to make it faulty cell.

  • Capacity reduced by 0.95 factor.
  • Open circuit voltage reduced by 0.9 factor.
  • Terminal resistance increased by 5 factor.
  • Cell resistance increased by 5 factor.
  • Capacitance reduced by 0.95 factor.

For cell 6_10:-

  • Here we have 5 nos cells are connected in series to make configuration of the setup.
  • Initial temp is 293.1K.
  • All parameters are same as Cell 1_4.

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

Your portfolio, next

Ship work like this
in your own course.

Talk to a career counsellor

Free 20-minute call. We'll map the right course to where you want to work.

By submitting you agree to our Terms and Privacy Policy.

Talk to a career counsellor

Free 20-minute call. We'll map the right course to where you want to work.

By submitting you agree to our Terms and Privacy Policy.