Challenge

Project 2 Thermal modeling of battery pack

Aim: To simulate 10 cell series Li-ion battery model thermal effects and compare life cycle performance at various temperatures, charge & discharge rates

The Lithium-ion batteries are widely used as energy sources in different hybrid and electric vehicle, however, the operation characteristics of the battery in such vehicle are strongly dependent on the operation temperature and therefore, with purpose to improve these characteristics a good thermal control system should be utilized.
The temperature of a Lithium battery cell is important for its performance, efficiency, safety, and capacity and is influenced by the environmental temperature and by the charging and discharging process itself. Therefore, a thermal model of the battery is used in order to calculate and estimate the cell temperature.
So, for 10-cell series lithium ion battery here I used MATLAB Simulink for finding thermal effect and life cycle performance related to temperature, charge and discharge.
Lithium-Ion Battery Pack with Fault is 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 modelled 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 5 Fault subsystem, reducing both capacity and open-circuit voltage, and increasing the resistance values.
A default MATLAB Simulink Model of Battery Pack which I used for 10-cell battery pack thermal modelling

The model can be converted into given challenge as follows. The cells 01-04 are connected in series, 05 cell is faulted battery and 06-10 cells series connected batteries.

The model is used for SoC calculating using Coulomb Counting method.

Thermal Model Subsystem


The important block which is inside the thermal model subsystem are:


Thermal Reference: This block represents a reference point in a thermal network where the temperature is equal to absolute zero.


Controlled heat flow rate source: This block represents an ideal energy source in a thermal network that can maintain a controlled heat flow rate regardless of the temperature difference. The heat flow rate is set by the physical signal port S. A positive heat flow rate flows from port A to port B.


Thermal Mass: This block models internal energy storage in a thermal network. The rate of temperature increase is proportional to the heat flow rate into the material and inversely proportional to the mass and specific heat of the material.


Temperature Sensor: This block measures temperature in a thermal network. There is no heat flow through the sensor. The physical signal port T reports the temperature difference across the sensor. The measurement is positive when the temperature at port A is greater than the temperature at port B.

Lithium Cell 1RC Subsystem


This block basically consists of capacitance value © table which depends on an external physical signal inputs SOC and T. It is assumed that the capacitance value is slowly varying with time, and hence the equation i = C*dv/dt holds.
Resistance value (R) table which depends on an external physical signal inputs SOC and T.
Voltage value (EM) which implements the cell's main branch voltage source, and determines values for capacity (C) and state of
charge (SOC). The defining equations depend on cell temperature, T

Thermal Behaviour and Fault setup


Lithium Ion cell one RC-Branch equivalent circuit detail for 10 cells

For cell 01 to 04
Number of series-connected cells are 4
Initial Temperature is 299.1 K
For cell 05 (fault setup) In this cell I have done some changes in Electrical system of cell so that we can see the fault.
Number of series-connected cells are 1
Initial Temperature is 299.1 K
Capacity (A*hr) = Capacity_LUT*0.95
Em open-circuit voltage (volts) = Em_LUT*0.9
R0 terminal resistance (ohms) = R0_LUT*5
R1 cell resistance (ohms) = R1_LUT*5
C1 capacitance (farads) = C1_LUT*0.95
For cell 06 to 10
Number of series-connected cells are 5
Initial Temperature is 299.1 K

Here the output of one cell is connected with the SOC calculation whereas other output is connected with AC current source for
cyclic charge/discharge profile.
The peak amplitudes set to 50 A for cyclic charge and discharge. A basic parameter of AC current source is as:

The ideal AC current source maintains the sinusoidal current through it, independent of the voltage across its terminals. The
output current is defined by I = I0 * sin(2*pi*f*t + PHI), where I0 is the peak amplitude, f is the frequency in Hz, and PHI is the
phase shift in radians.
The other block which are used in lithium ion battery pack are as:


Temperature Source: This block represents an ideal energy source in a thermal network that can maintain a constant
absolute temperature at the port regardless of the heat flow rate. Here I used this block for ambient temperature and which I set as 299.1 K or 25.95 C.

Convective Heat Transfer: This block models heat transfer in a thermal network by convection due to fluid motion. The
rate of heat transfer is proportional to the temperature difference, heat transfer coefficient, and surface area in contact
with the fluid.
Here I use 3 blocks for convection.

The conduction is done from the 2 set of blocks, 1 block is used for 01-04 and other is used for cell 06-10.

The code is varying as per the changes in the simulink model

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_04.Thermal_Model.Battery_Thermal_Mass.T.series.time;

% Extract cell temperature data
temp_T1 = temp_data.Cell_01_to_04.Thermal_Model.Battery_Thermal_Mass.T.series.values;
temp_T2 = temp_data.Cell_5_Fault.Thermal_Model.Battery_Thermal_Mass.T.series.values;
temp_T3 = temp_data.Cell_6_to_10.Thermal_Model.Battery_Thermal_Mass.T.series.values;

% Extract SOC data
temp_SOC1 = temp_data.Cell_01_to_04.Lithium_Cell_1RC.Em_table.SOC.series.values;
temp_SOC2 = temp_data.Cell_5_Fault.Lithium_Cell_1RC.Em_table.SOC.series.values;
temp_SOC3 = temp_data.Cell_6_to_10.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-4','Cell 5 (Fault)','Cell 6-10'},'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-4','Cell 5 (Fault)','Cell 6-10'},'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

Results:

The charging/discharging profile is connected through sinusodal signal with 50 hz frequency. The SoC and temperature variations are shown as follows

The results has two sections

The files are attached which simulink model and m file for showing results.

1. Temperature

2. SoC

Temperature:

The process is started with 298.5 k ambient temperature the cell temperature is varying as per charging and discharging charge profile.

The Temperature plot has three graphs which are cell1-4, cell5 and cell 6-10. The series string 1-4, 6-10 are helathy strings and cell 5 is faulted so the cell 5 temperature is varying with charging and discharging profile. the maximuym tempeature reaches to 322 k. The healthy cells temperature increases to 309.6 K so the two healthy series strings are varying equally.

SOC:

Cell 5 has intial SoC is 0.95*0.5 and other cells initial SoC is 0.5 SoC. Since the cell 5 has faulted condition so its SoC varies differently with other cells.

The results are shown as follows

Cell 1-04 results

cell 5 results

Cells 6-10

Conduction 1-4 cells

Convection

Conclusion:

The report presents the simulation for a 10 cell series lithium ion battery model, and simulated the thermal effects and compare life cycle performance at various temperatures, charge & discharge rates using MATLAB.

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.