Challenge

Week 7 State of charge estimation

Objective:

  • The main objective of this challenge is to understand how the BMS (Battery Management System) will work and how to simulate the BMS model in Simulink, understanding the results obtained from the Simulink model.
  • How to calculate the SOC (State of Charge) in Coulomb counting method and how BMS will implements Coulomb counting for SOC estimation.

Q-1: Simulate the 3 test cases from harness dashboard and write a detailed report on the results.

Model: (before running the test cases).

In the above given model, we need to give the test case number in the 'Test Sequence Variant' by double clicking on the sub-system. Once we selected the test case number in the Test Sequence Variant subsystem run the model, now the model will run 20000 seconds (time duration is default). When the simulation starts the output result graphs will open,

In the output results we can visualize 6 different graphs, those are

  1. Cell voltage.
  2. Cell temperature.
  3. Cell temperature.
  4. Pack current.
  5. BMS (battery manageent syestem) state.
  6. Balancing Command.

1stTest Case:

In the test sequence variant above, we chose the first test case that runs the model. You can imagine that after a successful model run, all lights show green, indicating that there were no errors in the model run. If the lamp turns red, the model has some problems while driving. In this case, all lamp blocks show green when the simulation is complete. This means there is nothing wrong with your model.

The post-simulation dashboard and output charts are shown below.

The above Dashboard model visualizes the first test case results with green colour in all the lamp blocks.

  • The first plot, Cell Voltage, visualizes the cell voltages of all cells throughout the battery pack, and the model simulates the cell voltages as they change with current flow (on and off). In the early stages of the simulation, the model simulation was initialized with a small voltage imbalance (varying from 3.1V to 3.9V), so the voltages are slightly different and the time span is 0.3*10^4 seconds. Now we can visualize the steady state voltage of each cell until the cell voltage reaches 4.2V and is maintained until the end of the simulation. Since the system is in standby mode, we see a slight voltage difference in the voltage, which is between 4V and 4.2V.
  • Now let's move on to cell temperature. The temperature starts at 289 degrees and increases gradually. All cells have different temperatures. The temperature traces show significant differences between the highest and lowest temperature cells due to the symmetry of the melt layer with respect to thermal properties and behavior. 6 cells are hot cells, 1 cell is cold, and one side is insulated. In the graph, we can visualize the temperature of the cells gradually increasing up to 0.6*10^4 seconds, and then gradually decreasing the temperature of all cells. At the end of the simulation, all cell temperatures are 293, 297, 302, 304.95, 307 and 308 degrees.
  • The SOC (state of charge) graph visualizes the differnt battery cell performances corresponding to coulomb count method, corresponding to ukf and ekf. The initial SOC is 75%, the starts at 80% to set their capability to recover. It is apparent that coulomb counting never does, because it has no way to get feedback to understand it is wrong due to its absence of voltage information. Both the algorithms recover on the other hand, from the initial error within the first hour of simulated time. With the ekf slightly outperforming than ukf.
  • In the charging state, due to the constant current phase, the current ranges from 19A to -70A for a time range of 0.3*10^4 seconds due to the high maximum cell voltage. After 0.3*104^4 seconds, the current stays at 0A until 0.4*10^4 seconds, then increases until the current reaches 30A, then the current stays at 30A for 0.49*10^4 seconds. Here the current gradually starts to decrease to about 2A. The current remains at 0A from 0.7*10^4 seconds to the end of the simulation.
  • The other two scopes in result output visualizes the BMS (battery management system) and the balancing command signals respectvely.

2nd test case:

In the above given Test Sequence Variant, I selected the first test case to run the model. After the running the model successfully, in the dashboard we can visualize that the two lamp blocks will shows red color instead showing green color. That means, while running the test case two the simulationgone through some errors.

After simulation the dashboard and output graph are given below,

  • The voltage of a cell in a battery pack depends on the current supplied to the cell. The cell voltage remained in the range of 3.18V to 3.9V until about 1400 seconds, and after 1400 seconds the voltage of each cell became constant and remained constant until 2000 seconds. After 0.2*10^4 seconds, the cell voltage varies from 3.1V to 3.85V until the simulation time exceeds 3800 seconds, and after the voltage is kept constant, this constant voltage for each cell is maintained will be Up to about 4500 seconds, then the voltage changes from 3.1 V to 3.75 V, up to 4500 seconds. After 4500 seconds, the voltage gradually increases to 4.1 V until over 6200 seconds. The voltage then suddenly drops to 3.85 V and remains constant until the end of the simulation.
  • Battery pack cell temperatures vary from individual cell to cell. Cell number 6 has the highest temperature and cell number 1 has the lowest temperature. Cell 1 is cooler because it has insulation on one side. The process starts at 289 degrees and gradually increases the temperature of the cell until the simulation process reaches over 6200 seconds and the temperature ranges from 306 degrees to 323 degrees. After 6200 seconds, the temperature curve begins to gradually decrease until the end of the simulation. The temperature values ​​at 20000 seconds for each cell are 294 degrees, 300 degrees, 304.5 degrees, 308 degrees, 311 degrees, and 313 degrees.
  • The state of charge of the cell initializes the simulation at 80%, and the percentage of state of charge gradually decreases until 4500 seconds, where the state of charge is 35%. After 4500 seconds, the state of charge begins to increase until the SOC reaches 69%, 70%, and 76% until the simulation time exceeds 6200 seconds. After that, the state of charge remains the same until the simulation ends.
  • The packet current initializes the simulation process at 0A, the current ramps up and down from 10A to -70A, and remains at 0A until the simulation reaches 2000 seconds. After 2000 seconds, the current oscillates up and down from 9A to -65A until the simulation reaches 3900 seconds. After 4200 seconds, the current fluctuates between 9A and -60A for 800 seconds, then increases to 30A for 1000 seconds. After 6000 seconds, the current drops to 0A and remains at 0A until the end of the simulation.The
    battery management system starts the process in the BMS_Standby state and switches to charging and driving state. The BMS will be in driving state for up to 5000 seconds, then the BMS will return to standby state and be charged for up to 6200 seconds. After 6200 seconds, BMS displays BMS_fault due to insufficient current and voltage. Also, the process hangs in BMS_fault until the simulation finishes.
  • The balancing command graph visualizes that, the cell on will remains at 0 from initial state to end of the simulation. The cell six will starts at 0 and it will remains at 0 till 5000 seconds, after it will reaches to 1 and it will remains at 1 till the end of the simulation.
  • The main reason to show the red flags on the lamp block in the dashboard is due to lack of current and voltage in the cells. With respect to current the voltage will vary, the temperature and SOC will vary with respect to the current and voltage. So the cell temperature reaches very high. Due to lack of voltage and current the BMS will shows the fault in the simulation process.

3rd Test case:

In the above given Test Sequence Variant, I selected the first test case to run the model. After the running the model successfully, in the dashboard all the lamp blocks shows green colour. That means while simulating the model the simulation process doesn't face any errors or difficulties.

After simulation the dashboard and output graph are given below,

  • All cells are initiated with different voltages, cell number six having higher voltage of 4.2V and cell number one having lower voltage of 4.1V and the remaining cells are falling under the range of BMS on charging state throughout the simulation and the voltage graph starts at 3.83V. Due to continuous voltage supply the graph is moving like a straight line, and we can visualize a very less amount of deflections in voltage of different cells. At the end of simulation the battery management system balances the voltage deflection in among the battery cells.
  • The Cell Temperature graph starts at 288 degrees and the temperature will increase gradually till the time of around 1200 seconds and the maximum temperature at 1200 seconds is 293 degrees. And we can visualize the slight depletion in temperature till 0.4*10^4 seconds. After 4000 seconds the temperature is moves like a straight line, all the cells have different temperature ranges. The temperature traces shows the discrepancy in between the highest and lowest temperature cells, due to symmetry in the merged layer in terms of the cell thermal character and behaviour. Cell number six has highest temperature and cell number one has lowest temperature because the cell one has thermal insulation at one end. The active battery managements system will maintains a very less temperature difference between the cells.
  • The State of charge for the cells starts at 80% and when the system under goes in a charging state, the yellow cell state of charge is will increase gradually to 100% and the remaining two cells are at 92% and 93%. The ukf and ekf initially having different charging rates, after 0.4*10^4 seconds the ukf and ekf are equal and the SOC is remains at 92% and the state of charge percentage is maintained through out the entire simulation. It is apparent that coulomb counting never does, because it has no way to get feedback to understand it is wrong due to its absence of voltage information. Both the algorithms recover on the other hand, from the initial error within the first hour of simulated time. With the ekf slightly outperforming than ukf.
  • The battery pack current initialize the process at 20A and it depletes gradually 1A at the time range of 0.2*10^4 seconds. After 2000 seconds the current depletes to 0A, and it will remains at 0A till the end of simulation time.
  • The other two scopes in result output visualizes the BMS (battery management system) and the balancing command signals respectvely. The Battery management system on charging state and Battery command passing signal between 0 to 1.

Q-2: What is coulomb counting? Refer to the above model and explain how BMS implements coulomb counting for SOC estimation ?

Coulomb counting is a technique used to track the state of charge of a battery pack. It works by integrating the active flowing current (measured in amps) over time to derive the total sum of energy entering or leaving the battery pack. This produces a capacity that is typically measured in Amph-hours.

SOC(State Of Charge) is defined as the rate of available capacity to its maximum capacity when a battery is fully charged, and describes the remaining percentage of the battery capacity. To find this SOC % we are using coulomb counting method. The coulomb counting method measures the discharging current of the battery and integrates the discharging current over time in order to estimate SOC, which can be estimated from discharrging current(I(t)), previously estimated SOC values(SOC(t-1)).The relation is given below,

Modified coulomb counting method: In this technidue discharge current is corrected with a function and corrected current is found out for accurate SOC estimation. The function is given below,

here K0, K1 and K2 are constant values obtained from the practice experimental data. The SOC relation is given below,

The “coulomb counting” or CoulCount method was developed by Schmitt et al. as a heuristic method, although the underlying theory is reasonably accessible . It depends on the recording of the current noise only. The signal is filtered with a high-pass filter with a cut-off frequency of 0.01 Hz. The filter may be either analogue (although the implementation of a good-quality 0.01 Hz analogue filter is difficult) or digital. The absolute value of the measured current samples is then summed over time. A steep slope is taken as an indication of rapid corrosion, although it is not possible to calibrate this in terms of an estimated corrosion rate.

It can be shown that this method is similar to integrating the standard deviation of current over time. The use of the integrating plot provides a form of low-pass filtering that may make it easier to see trends, but this can also be accomplished by digital filtering. The use of only the current noise restricts the value of the technique, as it does not allow for the estimation of the noise resistance (and hence the corrosion rate), and it is difficult to see what real advantages the method has over the conventional three-electrode method, although the use of integrating plots may be of value.

The flow chart to estimate the SOC state of charge is,

The SOC (state of charge) estimation model:

To see the SOC estimation model, we need open the different model block. The directions to open the SOC estimation modle is, BMS_ClosedLoop >> BMS ECU >>SOC_Estimation >> Coulomb Counting.

With the help of above mentioned directions, we can open the SOC estimation model and coulomb counting model.

In the coulomb counting model, the pack current and temperature are the inputs for this model. The pack current is fed to the gain block with the vlue of 1/3600 to convert current in to Amph hours. The temperature is fed to the 1-D lookup table to give the inputs to divide block from the temperature input block. The Amph hour pack current and temperature get divided in the devide block and the output from the devide block is connceted to the Discrete- time integrator block to integrate the devided current and temperature signals.

From the output of discrete-time integrator block we can get the desired final SOC (state of charge). The block parameters of coulomb counting method are gioven blow,

  • Input signals [Pack Current and Temperature (k)]:

The input signals are fed to the coulomb counting model from other blocks in the project. the block parameters of pack current and temperature are

* Pack current:

* Temperature (k):

Gain block:

Here the discharge current from battery fed to the gain block with value of 1/3600 to convert current to 'Ahr'. The value is divided by capacity due to temperature change, then integrated with a gain value of 1 with sample time -1 as we are using discrete integrator. The saturation limits are from 0 to 1. We will get the SOC values from 0 to 1 multiplied with 100 to get in percentage of SOC.

  • 1-D lookup table:

The 1-D lookup table is fed from the output of temperature input block. The lookup table is used to give the input to divide block.

Perform n-dimensional interpolated table lookup including index searches. The table is a sampled representation of a function in N variables. Breakpoint sets relate the input values to positions in the table. The first dimension corresponds to the top (or left) input port.

  • Devide block:

The divide block get the inputs from gain block pack current to multiply port and temperature from the 1-D lookup table to the divide port. the output from the divide block is fed to the discrete- time integrator block to integrate the divioded pack current and temperature signals to get the SOC.

  • Discrete-time integrator block:

The integrator block get the inputs from the divide block. The devided pack current and temperature values are integrated in the discrete -time integrator to get the desired final SOC ( state of charge). The output SOC from the integrator block is fed to the output block to visualize the SOC in the results graph.

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.