Description
This course can also be taken for academic credit as ECEA 5732, part of CU Boulder’s Master of Science in Electrical Engineering degree.
In this course, you will learn how to implement different state-of-charge estimation methods and to evaluate their relative merits. By the end of the course, you will be able to:
– Implement simple voltage-based and current-based state-of-charge estimators and understand their limitations
– Explain the purpose of each step in the sequential-probabilistic-inference solution
– Execute provided Octave/MATLAB script for a linear Kalman filter and evaluate results
– Execute provided Octave/MATLAB script for state-of-charge estimation using an extended Kalman filter on lab-test data and evaluate results
– Execute provided Octave/MATLAB script for state-of-charge estimation using a sigma-point Kalman filter on lab-test data and evaluate results
– Implement method to detect and discard faulty voltage-sensor measurements
What you will learn
The importance of a good SOC estimator
This week, you will learn some rigorous definitions needed when discussing SOC estimation and some simple but poor methods to estimate SOC. As background to learning some better methods, we will review concepts from probability theory that are needed to be able to deal with the impact of uncertain noises on a system’s internal state and measurements made by a BMS.
Introducing the linear Kalman filter as a state estimator
This week, you will learn how to derive the steps of the Gaussian sequential probabilistic inference solution, which is the basis for all Kalman-filtering style state estimators. While this content is highly theoretical, it is important to have a solid foundational understanding of these topics in practice, since real applications often violate some of the assumptions that are made in the derivation, and we must understand the implication this has on the process. By the end of the week, you will know how to derive the linear Kalman filter.
Coming to understand the linear Kalman filter
The steps of a Kalman filter may appear abstract and mysterious. This week, you will learn different ways to think about and visualize the operation of the linear Kalman filter to give better intuition regarding how it operates. You will also learn how to implement a linear Kalman filter in Octave code, and how to evaluate outputs from the Kalman filter.
Cell SOC estimation using an extended Kalman filter
A linear Kalman filter can be used to estimate the internal state of a linear system. But, battery cells are nonlinear systems. This week, you will learn how to approximate the steps of the Gaussian sequential probabilistic inference solution for nonlinear systems, resulting in the “extended Kalman filter” (EKF). You will learn how to implement the EKF in Octave code, and how to use the EKF to estimate battery-cell SOC.