Week 7 State of charge estimation
Aim : To solve the questions for Week 7 State of charge (SOC) estimation :
Objective:
- Simulate the 3 test cases from harness dashboard and write a detailed report on the results
- What is coulomb counting? Refer to the above model and explain how BMS implements coulomb counting for SOC estimation ?
Solution1: By the given downloaded the file Provided by the link (https://in.mathworks.com/matlabcentral/fileexchange/72865-design-and-test-lithium-ion-battery-management-algorithms)in the Questions and hence Extracted the data for solving the Questions;
Simulate the three test cases from harness dashboard and write a detailed report on the results
Now to simulate the three harness Dashboards of different condition The BMS closed loop Harness is opened , Below shows the image of the model
The above model shows the Closed loop harness model. It holds three test cases and has been executed in the below report. The model holds the Test sequence variant to change the test cases and Lamps are connected to report the execution.
Test Case 1:
Here, we go for the the test case 1 to verify it by , Running time 20000 seconds and results are plotted.

The Test case is to execute the below criteria:-
- Driving for 3000 seconds
- Balancing for 1000 seconds
- Charging and balancing for 5000 seconds
- Post charge balancing for later.

Block parameters are chosen

- Results and Observations:
Observations from the Plot.
1.The results are plotted for Cell voltages, cell temperature, SOC, Pack Current, BMS state.
- The Plot shows that the vehicle is initially in driving state.
- Here charging it as Constant Current constant voltage mode.
- Then it is in standby mode.
- Now while driving , the battery reached the SOC of 45% and then while charging, it reached to 98%.
Case 2: The test is performed for the second case AS the Driving for 10000 seconds and the it is made to run for observing the results.
Block parameters are chosen
Here second case is to drive for 10000 seconds and later charged.

- Results and Observations:
Observing the results in the Plot:
Observing the results in the plot:
- From the graph, It is seen shows that for 10000 seconds the system is in driving state.
- The SOC of the system is continuously decreasing and temperature is increasing continuously.
Test Case 3: Condition is continuously charging.

Block parameters are chosen

Results and observations:
Observing the results in the plot:
- It shows that system is continuously in charging mode, reaching 100% and stand down.
- Temperature increases while charging and reaching the stand point and decreasing gradually.
Solution 2.
What is coulomb counting? Refer to the above model and explain how BMS implements coulomb counting for SOC estimation ?
As per the Question
Algorithms used for SOC and SOH Estimation are:
- Coulomb counting, OCV
- Kalman filter
Coulomb Counting:
The Coulomb counting method is associated with monitoring the input and the output current continuously. Since capacity is the integral of current with respect to time, by measuring the input and the output current, change in capacity or capacity degradation of a battery can be measured easily. During the estimation of SoC, at some random OCV and temperature ,modeling of cell characteristics was done by ANFIS. The assessment was done on the cell level instead of the pack level for better precision. The coulomb counting method, also known as ampere hour counting and current integration, is the most common technique for calculating the SOC. This method employs battery current readings mathematically integrated over the usage period to calculate SOC values given by
where SOC(t0) is the initial SOC, Crated is the rated capacity, Ib is the battery current, and Iloss is the current consumed by the loss reactions. The coulomb counting method then calculates the remaining capacity simply by accumulating the charge transferred in or out of the battery. The accuracy of this method resorts primarily to a precise measurement of the battery current and accurate estimation of the initial SOC.
The BMS closed loop model is shown below:
The Coulomb Counting method has the Simulink blocks as the Gain , capacity integrator.
The system is given with the Two inputs the Current and temperature ,
Here the Current input is given to the gain block,
And the Temperature input is given to the capacity also after integrating the SOC is evaluated and estimated.
The above model shows the charge estimation for the SOC.
The Current and Temperature is taken as an input to the model. The Current multiplied with gain and the Temperature has wide range of capacity , so given to the capacity block. The temperature and the Current are given to the integrator block and integrated with respect to time. Thus the SOC is analysed from the block diagram.
Although this is one of the most common ways of measuring SOC, it still suffers from a lack of reference point.
The SOC needs to be recalibrated regularly back to 100 % everytime a battery is fully charged, and this is dependent on how accurately the sensor determines a fully charged cell.
This method also does not consider the changing efficiency of the cell, which is dependent on how much is the charging and discharging current.
With greater charge discharge current, the temperature of the cell increases, which affects efficiency.
In addition, over time, the pre-declared capacity (Q) and efficiency of a cell reduces, so reduction in cycle life also affects the SOC measurement.
Steps for coulomb counting in BMS implementation.
Develop the algorithm for the coulomb counting method
2. Transfer the algorithm to the BMS (microprocessor)
The BMS is the hardware in PCB consisting of a processor, many sensors, connectors, indication lights, etc. Actually, BMS has many responsibilities like battery balancing, SOC, SOH, DOD estimation, under & over-voltage protection, thermal protection, providing battery pack cooling, calculating duty cycle, etc.

Here our main aim is to implement the coulomb counting method in BMS to develop the algorithm according to the battery voltage capacity
- The initial value of SOC is mainly by the OCV method.
- Also by based on the voltage level and charging mode the algorithm will execute.
- So in our case of soc estimation, there will be a separate unit in the BMS for the estimation.
- Implementing the algorithm in the hardware(processor), make the necessary connection to batteries and sensors, and analyse the result for charging and discharging.
CONCLUSION:
- In the Question 1 we learnt about SOC test for BMS and performed test on the model with three Stages of simulation from harness dashboard and showed their plots.
- In question 2. We have studied about coulomb counting and about how BMS implements coulomb counting for SOC estimation.