Battery Management System (BMS) for Electric Vehicles

Published  December 5, 2018   0
Aswinth Raj
Battery Management System (BMS) for Electric Vehicles

On 7th January 2013, a Boeing 787 flight was parked for maintenance, during that a mechanic noticed flames and smoke coming from the Auxiliary power unit (Lithium battery Pack) of the flight, which is used to power the electronic flight systems. Efforts were taken to put the fire off, but 10 days later before this issue could be resolved, on 16th January another battery failure occurred in a 787 flight operated by All Nippon Airways which caused an emergency landing at the Japanese airport. These two frequent catastrophic battery failures made the Boeing 787 Dreamliners flight to be grounded indefinitely which tarnished the manufacturer’s reputation causing tremendous financial losses.


After a series of joint investigation by the US and Japanese, the Lithium battery Pack of B-787 went through a CT scan and revealed that one of the eight Li-ion cell was damaged causing a short circuit which triggered a thermal runaway with fire. This incident could have been easily avoided if the Battery management system of the Li-ion battery pack was designed to detect/prevent short circuits. After some design changes and safety regulations the B-787 started flying again, but still the incident remains as an evidence to prove how dangerous lithium batteries could get if not handled properly.


Fast forward 15 years, today we have Electric cars using the same Li-ion batteries which are packed together in hundred if not thousands in number. These massive battery packs with a voltage rating of around 300V sits in the car and supplies as high as 300A (rough figures) current during operation. Any mishap here would end up in a big disaster, which is why the Battery Management system is always stressed upon in EVs. So in this article we will learn more about this Battery Management System (BMS) and break down to understand its design and functions to understand it much better. Since the batteries and BMS are closely related it is highly advised go through our previous articles about Electric Vehicles and EV’s batteries.


Why do we need a Battery Management System (BMS)?

The Lithium-ion batteries have proved to be the battery of interest for Electric Vehicle manufacturers because of its high charge density and low weight. Even though these batteries pack in a lot of punch for its size they are highly unstable in nature. It is very important that these batteries should never be over charged or under discharge at any circumstance which brings in the need to monitor its voltage and current. This process gets a bit tougher since there are a lot of cells put together to form a battery pack in EV and every cell should be individually monitored for its safety and efficient operation which requires a special dedicated system called the Battery Management System. Also to get the maximum efficiency from a battery pack, we should completely charge and discharge all the cells at the same time at the same voltage which again calls in for a BMS. Apart from this the BMS is held responsible for many other functions which will be discussed below.


Battery Management system (BMS) Design Considerations

There are lot of factors that are to be considered while designing a BMS. The complete considerations depend on the exact end application in which the BMS will be used. Apart from EV’s BMS are also used wherever a lithium battery pack is involved such as a solar panel array, windmills, power walls etc. Irrespective of the application a BMS design should consider all or many of the following factors.


Discharging Control: The primary function of a BMS is to maintain the lithium cells within the safe operating region. For example a typical Lithium 18650 cell will have an under voltage rating of around 3V. It is the responsibility of the BMS to make sure that none of the cells in the pack get discharged below 3V.


Charging Control: Apart from the discharging the charging process should also be monitored by the BMS. Most batteries tend to get damaged or get reduced in lifespan when charged inappropriately. For lithium battery charger a 2-stage charger is used. The first stage is called the Constant Current (CC) during which the charger outputs a constant current to charge the battery. When the battery gets nearly full the second stage called the Constant Voltage (CV) stage is used during which a constant voltage is supplied to the battery at a very low current. The BMS should make sure both the voltage and current during charging does not exceed permeable limits so as to not over charge or fast charge the batteries.  The maximum permissible charging voltage and charging current can be found in the datasheet of the battery.


State-of-Charge (SOC) Determination: You can think of SOC as the fuel indicator of the EV. It actually tells us the battery capacity of the pack in percentage. Just like the one in our mobile phone. But it is not as easy as it sounds. The voltage and charge/discharge current of the pack should always be monitored to predict the capacity of the battery. Once the voltage and current is measured there are a lot of algorithms that can be used to calculate the SOC of the Battery pack. The most commonly used method is the coulomb counting method; we will discuss more on this later in the article. Measuring the values and calculating the SOC is also the responsibility of a BMS.


State-of-Health (SOC) Determination: The capacity of the battery not only depends on its voltage and current profile but also on its age and operating temperature. The SOH measurement tells us about the age and expected life cycle of the battery based on its usage history. This way we can know how much the mileage (distance covered after full charge) of the EV reduces as the battery ages and also we can know when the battery pack should be replaced. The SOH should also be calculated and kept in track by the BMS.


Cell Balancing: Another vital function of a BMS is to maintain cell balancing. For example, in a pack of 4 cells connected in series the voltage of all the four cells should always have equal. If one cell is less or high voltage than the other it will affect the entire pack, say if one cell is at 3.5V while the other three is at 4V. During charging these three cells will attain 4.2V while the other one would have just reached 3.7V similarly this cell will be the first to discharge to 3V before the other three. This way, because of this single cell all the other cells in the pack cannot be used to its maximum potential thus compromising the efficiency.


To deal with this problem the BMS has to implement something called cell balancing. There are many types of cell balancing techniques, but the commonly used ones are the active and passive type cell balancing. In passive balancing the idea is that the cells with excess voltage will be forced discharge through a load like resistor to reach the voltage value of the other cells. While in active balancing the stronger cells will be used to charge the weaker cells to equalize their potentials. We will learn more about cell balancing later in a different article.


Thermal Control: The life and efficiency of a Lithium battery pack greatly depends on the operating temperature. The battery tends to discharge faster in hot climates compared with normal room temperatures. Adding to this the consumption of high current would further increase the temperature. This calls for a Thermal system (mostly oil) in a battery pack. This thermal system should only be able to decrease the temperature but should also be able to increase the temperature in cold climates if needed. The BMS is responsible for measuring the individual cell temperature and control the thermal system accordingly to maintain the overall temperature of the battery pack.


Powered from the Battery itself: The only power source available in the EV is the battery itself. So a BMS should be designed to be powered by the same battery which it is supposed to protect and maintain. This might sound simple but it does increase the difficulty of the design of the BMS.


Less Ideal Power: A BMS should be active and running even if the car is running or charging or in ideal mode. This makes the BMS circuit to be powered continuously and hence it is mandatory that the BMS consumes a very less power so as not to drain the battery much. When a EV is left uncharged for weeks or months the BMS and other circuitry tend to drain the battery by themselves and eventually requires to be cranked or charged before next use. This problem still remains common with even popular cars like Tesla.


Galvanic Isolation: The BMS acts as a bridge between the Battery pack and the ECU of the EV. All the information collected by the BMS has to be sent to the ECU to be displayed on the instrument cluster or on the dashboard. So the BMS and the ECU should be continuously communicating most through the standard protocol like CAN communication or LIN bus. The BMS design should be capable of providing a galvanic isolation between the battery pack and the ECU.


Data Logging: It is important for the BMS to have a large memory bank since it has to store a lot of data. Values like the Sate-of-health SOH can be calculated only if the charging history of the battery is known. So the BMS has to track of the charge cycles and charge time of the battery pack from the date of installation, and interrupt these data when required. This also aids in providing after sales service or analyzing a problem with the EV for the engineers.


Accuracy: When a cell is being charged or discharged the voltage across it increases or decreases gradually. Unfortunately the discharge curve (Voltage vs time) of a lithium battery has flat regions hence the change in voltage is very less. This change has to be measured accurately to calculate the value of SOC or to use it for cell balancing. A well designed BMS could have accuracy as high as ±0.2mV but it should minimum have an accuracy of 1mV-2mV. Normally a 16-bit ADC is used in the process.


Processing Speed: The BMS of an EV has to do a lot of number crunching to calculate the value of SOC, SOH etc. There are many algorithms to do this, and some even uses machine learning to get the task done. This makes the BMS a processing hungry device. Apart from this it also has to measure the cell voltage across hundreds of cells and notice the subtle changes almost immediately.


Building Blocks of a BMS

There are many different types of BMS available in the market, you can either design one on your own or even purchase the Integrated IC that is readily available. From a hardware structure perspective there are only three types of BMS based on its topology they are Centralized BMS, distributed BMS and Modular BMS. However the function of these BMS is all similar. A generic Battery Management system is illustrated below.

Building-Blocks of a Battery Management System


BMS Data Acquisition

Let’s analyze the above function block from its core. The primary function of the BMS is to monitor the Battery for which it needs to measure three vital parameters such as the voltage, current and temperature from every cell in the battery pack. We know that Battery packs are formed by connecting many cells in series or parallel configuration, like the Tesla has 8,256 cells in which 96 cells are connected in series and 86 are connected in parallel to form a pack. If a set of cells are connected in series then we have to measure voltage across each cell but current for the entire set will be same since current will be same in a series circuit. Similarly when a set of cells are connected in parallel we have to measure only the entire voltage since the voltage across each cell will be same when connected in parallel. The below image shows a set of cells connected in series, you can notice the voltage and temperature being measured for individual cells and pack current is measured as a whole.

Battery Management System Data Acquisition


“How to measure cell voltage in BMS?”

Since a typical EV has a large number of cells connected together, it is a bit challenging to measure the individual cell voltage of a battery pack. But only if we know the individual cell voltage we can perform cell balancing and provide cell protection. To read the voltage value of a cell an ADC is used. But the complexity involved is high since the batteries are connected in series. Meaning the terminals across which the voltage is measured has to be changed every time. There are many ways to do this involving relays, muxes etc. Apart from this there is also some battery management IC like MAX14920 which can be used to measure individual cell voltages of multiple cells (12-16) connected in series.


“How to measure cell Temperature for BMS?”

Apart from cell temperature, sometimes the BMS also have to measure the bus temperature and motor temperature since everything works on a high current. The most common element used to measure the temperature is called a NTC, which stands for Negative temperature Co-efficient (NTC). It is similar to a resistor but it changes (decreases) its resistance based on the temperature around it. By measuring the voltage across this device and by using a simple ohms law we can calculate the resistance and thus the temperature.


Multiplexed Analog Front End (AFE) for Cell Voltage and Temperature Measurement

Measuring cell voltage can get complex since it requires high accuracy and might also inject switching noises from mux apart from this every cell is connected to a resistor through a switch for cell balancing. To overcome these problems an AFE – Analog Front end IC is used. An AFE has built-in Mux, buffer and ADC module with high accuracy. It could easily measure the voltage and temperature with common mode and transfer the information to the main microcontroller.


“How to measure pack current for BMS?”

EV Battery Pack can source a large value of current upto 250A or even high, apart from this we also have to measure the current of every module in the pack to make sure the load is distributed evenly. While designing the current sensing element we also have to provide isolation between the measuring and sensing device. The most commonly used method to sense current are the Shunt method and the Hall-sensor based method. Both methods have their pros and cons. Earlier shunt methods were considered less accurate, but with recent availability of high-precision shunts designs with isolated amplifiers and modulators they are more preferred than the hall-sensor based method.


Battery state Estimation

The major computational power of a BMS is dedicated to estimate the Battery state. This includes the measurement of SOC and SOH. SOC can be calculated using the cell voltage, current, charging profile and discharging profile. SOH can be calculated by using the number of charge cycle and performance of the battery.


“How to measure the SOC of a Battery?”

There are many algorithms to measure the SOC of a battery, each having its own input values. The most commonly used method for SOC is called the Coulomb Counting a.k.a book keeping method. We will discuss more on that later. Apart from that there are many other advanced and more sophisticated algorithms that are listed below.

Basic Methods

  • Coulomb Counting method
  • Ampere-hour (Ah) method
  • Open-Circuit Voltage (OCV) method
  • Impedance / IR Measurement Method 

Machine Learning Based Algorithms

  • Neural Network Fuzzy Logic
  • Support Vector Machine

Advanced Method

  • State-Space Model Estimation using Kalman Filter


Coulomb Counting Technique

By far the coulomb counting Technique is the most used and easy to understand algorithm. It is based on the fact that the ratio between the Total charge Input and the Maximum capacity of the battery will give us the SOC value. The formula for the same is given below.

SOC = Total Charge Input / Maximum Capacity


While the Maximum capacity of the battery will be mentioned in the datasheet of the battery, calculating the Total charge Input requires some mathematical approach. The total charge input is nothing but the product of the current and time, but the value of current varies based on time and hence we have to use current integration method to determine the Total charge Input. Discrete values of current are taken at regular internal and the integral of these values will give us the value of Total Charge Input.

For understanding purpose if we consider that the value of current is constant say 2A for 4 hours then the value of Total charge input will be 8Ah and if the maximum capacity of the battery is 25Ah then the SOC value is simply ((2*4)/25) 32%. But this method is not very reliable because the maximum capacity of the battery will get reduced as the battery ages. Hence many other algorithms were developed.


Battery Modeling

To use any of the above-discussed algorithms or to verify if your BMS is working as expected we need to develop a mathematical model for our battery pack.


“Why do we need Battery Modeling?”

A typical battery pack takes about 6 hours to get charge and another 6 hours to get discharged. The voltage and current profile of the cells will be different during charging and discharging based on the load, age, temperature and many such conditions. It is not practically possible to charge and discharge a battery in all required condition for the entire life cycle of the Battery pack to check if the BMS is working as expected. This is why Battery model is developed. This model can act as a virtual battery (Hardware in loop) during the developmental stage of the BMS.

The accuracy of the SOC and SOH also depends on the accuracy of the battery model; hence it should always provide high fidelity and robustness. A typical usage of battery model is shown below using the below image


In an ideal Battery model, the input voltage should be equal to the output voltage and the error value should be zero. But in practical this scenario is hard to achieve since there are many parameters like temperature, age etc which can affect the system. There are many battery models available they can be broadly classified as Lumped-Parameter Model, Equivalent Circuit Model and Electro-chemical model out all three the Electro-chemical model is the most hard and most accurate model.


BMS – Thermal Management

Apart from measuring the voltage, current and temperature and calculating SOC, SOH etc the BMS has another important task of regulating the battery temperature. A battery pack would drain faster if operated in higher or lower temperatures. To prevent this cooling systems are used in the battery. The Tesla for example uses liquid cooling where a tube is passed through the battery pack to get in contact with all the cells. A coolant like water or Glycol is then passed through the tubes. The temperature of the coolant is controlled by the BMS based on the cell temperatures. Apart from this the batteries also use air or chemicals to maintain the required temperature.


With this let us conclude the article here, there are still lots to know about BMS and how they work. Today many silicon companies like Renesas, Texas Instruments etc. have their own series of BMS IC’s and Tool kits which could do the hardware pulling for you and you can use it without diving deep into all this. With every new EV in the market the BMS evolves to get much smarter and easy to use.

Have any question realated to this Article?

Ask Our Community Members