Table of Contents

Li-ion and BMS modeling for controlling fault events

JOIN US ON WHATSAPP TO RECEIVE DAILY UPDATES AND JOB NOTIFICATIONS

Table of Contents

Project Description

We were given the project “Li-ion and BMS modeling for controlling fault events”. The main purpose of the study is to determine the fault events caused by over charge, over discharge, under voltage, over voltage, low temperature and high temperature situations and detect these anomalies and accordingly break the circuit for further escalation of the event. These anomalies will cause the battery to explode and can lead to disasters. We are using Matlab software to create a li-ion battery and Battery management system. Using the software we can simulate the conditions of the fault events and make a logic to break the circuit when the faults occur. By the end of the project we would have made a working simulation of Li-ion battery and BMS in Matlab.

Research Methodology

Steps to complete the Project:
1. Researching about the faults occurred during the working of EV and determining on which fault we are going to work.
2. Designing a li-ion Battery using the data acquired after testing real battery parameters for different conditions.
3. Determining the Limit of the Battery parameters at fault events , to design the BMS accordingly.
4. Designing a BMS that detects a fault and accordingly breaks the circuit and tells about the fault occurring in the system.

Tools Required

The tools required for completing this project are:
1. Matlab
2. QSS toolbox

Matlab Design

Li-ion cell modeling

For Li – Ion cell modeling we took help from the DIY-guru course on Li – ion cell modeling. We designed a Kokam cell of 31Ah [Cell Type High Powered NMC (SLPB78216216H)]. The experimental data was given in the course and we designed our li-ion cell accordingly. Steps
used to create the Li – ion model are as below.

Step 1: Creating current profile

To create a current profile we first decided on a drive cycle which we chose as “FTP75”. Using this drive cycle we obtained the distance, speed and acceleration values. The current profile of a vehicle is similar to the acceleration profile of the drive cycle. Hence we took the acceleration data to feed to our battery as current profile.

Step 2: Plotting graphs

Using the experimental data we plotted graphs for a better understanding of our Li-ion model.

Step 3: Modeling Li – ion cell block

To make a LI-ion cell block we had to make different blocks for calculation of different parameters of the cell such as SOC, OCV, R0, R1, Capacitance, Temperature etc.

Calculating SOC and OCV

For calculating state of charge we used coulomb counting method using current and temperature as our input and for calculating open circuit voltage we used the SOC and Temperature as input to a 2 – D lookup table block. The temperature data is the output of the temperature block.

Calculating R0, R1, and Capacitance

From the experimental data we calculate the R0, R1, and Capacitance using SOC, Temperature as
input to a 2 – D lookup table. For calculating R1 we also use current at R1 which is calculated
while calculating the terminal voltage. We calculate these parameters so that we can calculate
power loss and terminal voltage.

Calculating Temperature

To calculate Temperature we need total power loss which is the sum of power loss in R0 and R1, and we need an initial temperature / ambient temperature as input. We use the experimental cell data like cell area, heat transmitted by convection, cell specific heat and cell mass to calculate the temperature.

Calculating Terminal Voltage

To calculate terminal voltage, we put OCV, R0, R1, C1 and current as input and calculate voltage across R0, R1 and C1 which we subtract from the OCV to get our final terminal voltage.

Step 4: Plotting the values

As current as our input we put a saturation block and gain block before we connect it to the main Li – ion cell block. We used a saturation block to only take the negative values of current so that the battery doesn’t charge due to positive acceleration (Eg. regenerative braking, etc.). We also used gain so that we can get the battery to discharge for such a short time.

Battery pack BMS

Here we have designed a battery management system for a two wheeler battery pack of configuration 14S3P. The BMS model we designed in simulink contains five main subsystems.

1. Mode selection switch.
2. Drive cycle generation system.
3. Charging / Discharging circuit.
4. Battery pack model.
5. Battery management system.
6. Display console.

Mode selection switch

It is through this rotary switch which we provide the input command to select between the available two modes of operation. Either driving mode or charging mode.

Driving mode

In this mode, the battery pack will be connected to a controlled current source. The FTP-75 drive cycle profile is fed into the controlled current source as the control signal and hence this source will be generating current proportional to the FTP-75 drive profile.

Charging mode

In this mode, a constant current is provided into the battery pack within the limits of the maximum cell charging current parameter.

Drive cycle generation system

We have used the drive cycle block from the QSS toolbox and considered FTP-75 as our drive cycle. Since acceleration is directly proportional to the current drawn, we have considered the acceleration profile as our current profile. We have also considered a regenerative braking efficiency of 20% here..

Charging / Discharging circuit

The output signals from charging and discharging subsystems are fed to the controlled current source as a control signal through a controlled switch. This switch is controlled by the signal from the mode selection rotary switch. The current source fed positive/negative current to the battery pack according to the control signal(charge/drive mode commands).

Charging system

The charging system provides a control signal to the controlled current source. The control signal would be either a changing current constant value which is under the maximum charging current limit for the cells or zero depending on the feedback signals from BMS(fault signal and SOC information) and the mode selection command input.

 

Discharging System

The discharging system also provides a control signal to the controlled current source. The control signal would be either the drive cycle current profile or zero depending on the feedback signals from BMS(fault signal and SOC information) and the mode selection command input.

Battery pack model

We have considered a two wheeler battery pack of configuration 14S3P. The pack consists of 3 modules connected in parallel with each module consisting of 14 cells connected in series. The parameters like cell SOCs, cell temperature, cell voltage, cell currents from each module are collected at one point using vector concatenate elements and are then fed to the bus creator. These bus signals are the input signals to the BMS subsystem where those are processed and analyzed for fault detection algorithms.

Inside battery modules

Each module consists of 14 cells connected in series. The cell parameters such as SOC, temperature, voltage and current are collected at one point using vector concatenate elements and provided as output from each module. We have used the predefined cell models available in
simulink library to build our pack.

BMS(Battery Management System)

The Battery Management System (BMS) is responsible for safe operation, Performance, and battery life under diverse charge-discharge and environmental conditions. When designing a BMS, We develop feedback and supervisory control that:
1. Monitor cell Voltage, cell current, cell Temperature, and cell SOC
2. Limits power input and output for thermal and overcharge protection
3. Controls the charging profile
4. Isolate the battery pack from the load when necessary
Here, The output of the battery pack is fed into the BMS model and subsystem (fault detection algorithm) as the input.
The BMS model it consists of Two Subsystem namely,
● Fault detection algorithm and
● BMS fault signal generation

Fault detection algorithm

It include four subsystem as Over discharge/charge protection, Over charging current / over discharging current protection, Over / under voltage protection, Over / under temperature protection and to this four subsystem the inputs are BMS input. Cell SOC, BMS input. Cell current, BMS input. Cell voltage, BMS input. Cell temperature respectively.

Over discharge/charge protection

The logic we have used for over-discharge/ charge protection is that when the SOC is less than 15% the action subsystem block generates output as 1 when the SOC is greater than 95% the action subsystem block generates output as 2, and when the SOC is between 15% and 95% the action subsystem block generate output as 3.

Over charging current / over discharging current protection

The logic we have used for over-discharge/ charge protection is that when the charging current is less than -48Amp the action subsystem block generates output as 1 when the discharging current is greater than 60Amp the action subsystem block generates output as 2, and when the current is between -48Amp and 60Amp the action subsystem block generate output as 3.

Over / under voltage protection

The logic we have used for over-discharge/ charge protection is that when the cell voltage is less than 2.5V the action subsystem block generates output as 1 when the voltage is greater than 4V the action subsystem block generates output as 2, and when the voltage is between 2.5V and 4V the action subsystem block generate output as 3.

Over / under temperature protection

The logic we have used for over-discharge/ charge protection is that when the Temperature is less than 20C the action subsystem block generates output as 1 when the Temperature is greater than 30C the action subsystem block generates output as 2, and when the voltage is between 20C and 30C the action subsystem block generate output as 3.

BMS fault signal generation

As we know the input is fed from Fault detection algorithm subsystem block to the BMS fault signal generation subsystem block, In this BMS fault signal generation subsystem block the logic we have used is that it checks whether the output from the Fault detection algorithm subsystem block is 12 or not.. As per the fault detection algorithm at safe conditions always the output from the block will be 12 and during any fault condition it will be less than 12.. So whenever the gate signal is not equal to 12 then the fault signal will be high (value binary 1).

Display console

The display console helps the driver to get notified or informed about the fault events as well as the instantaneous output/information from BMS fault detection algorithms. It consists of four lamps to indicate the different fault/safe conditions.

1. Lamp
Green – SOC in safe range
Red – Over discharged(SOC < 15%)
Blue – Overcharged(SOC > 95%)
2. Lamp1
Green – Cell current in safe range
Red – Over discharging current(I > 60A)
Blue – Over charging current(I < -48A)
3. Lamp2
Green – Cell voltage in safe range
Red – Over cell voltage(V > 4V)
Blue – Under cell voltage(V < 2.2V)
4. Lamp3
Green – Cell temperature in safe range
Red – high cell temperature(T > 30 degree celsius)
Blue – low cell temperature(T < 20 degree celsius)

Results

Li-ion cell modeling

The below are the graphs which show the characteristics of our Li-ion Battery.

The above graph shows that the SOC is decreasing, OCV is decreasing, Temperature is increasing and power loss is increasing the required output for our Li – ion model.

Battery pack BMS

Test run for over charged/over discharged fault detection

Set below values as per assumptions
Initial cell SOC = 18% (all cells equal SOC)
Lower SOC limit = 17%
Upper SOC limit = 19%
Mode selected at start of simulation = Charging mode

Now we changed the mode to driving mode so that SOC start to decrease

From the above simulation result we observed that the BMS accurately sensed the overcharge/over discharge fault conditions and generated fault signals and disconnected the battery pack from input supply/load. Also the vehicle driver was promptly alerted about the
fault in the display console..

 

 

JOIN US ON TELEGRAM TO RECEIVE DAILY UPDATES AND JOB NOTIFICATIONS

Share on Facebook
Share on Twitter
Share on Linkdin
Share on Whatsapp

Over 1.2 Million+ learners impacted worldwide

Learners from 170+ countries have grown in their career through our programs

Explore Programs  

Global Presence

Get in touch to learn more about how you can make the best of your talent

Spend less time worrying about job availability, and more time growing your knowledge. Join DIYguru Program today.

If you’re a current student, please get in touch through the DIYguru dashboard to ask about more details of this Program.

Please note, eligibility for this course is reserved to students who have done related projects and have relevant profiles matching with the pre-requisite of this course.

The DIYguru team hold the right to cancel your admisssion into the program without any explanation via email if found unsuitable and unfit.

Our 7-day money-back guarantee starts from the moment of signup and runs through the free week. Cancellations between days 7 and 30 will get a prorated refund.

Fees for the program is charged only when the admission is approved.

Flag
PARTNERSHIP

Colleges and Institutions

We're growing rapidly across the country, don’t miss out.

Partner with Us

Fog
UPSKILL

Corporates and Industries

Have workforce requirement or employee upskilling!

Get in Touch

Folder-solid
OPPORTUNITY

Career@DIYguru

Work with a team that’s transforming future mobility.

DIY with Us

Book Your Free Session Now

Avail free Guidebook and Expert Mentorship in EV domain curated by Industry experts.

Register to continue..