Battery State-of-Charge (SOC) Estimation (Coursera)

Battery State-of-Charge (SOC) Estimation (Coursera)

This course can also be taken for academic credit as ECEA 5732, part of CU Boulder’s Master of Science in Electrical Engineering degree.

Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

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 an 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

  • How to implement state-of-charge (SOC) estimators for lithium-ion battery cells

Course 3 of 5 in the Algorithms for Battery Management Systems Specialization.

Syllabus

Week 1
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.

Week 2
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.

Week 3
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.

Week 4
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.

Week 5
Cell SOC estimation using a sigma-point Kalman filter
The EKF is the best known and most widely used nonlinear Kalman filter. But, it has some fundamental limitations that limit its performance for "very nonlinear" systems. This week, you will learn how to derive the sigma-point Kalman filter (sometimes called an "unscented Kalman filter") from the Gaussian sequential probabilistic inference steps. You will also learn how to implement this filter in Octave code and how to use it to estimate battery cell SOC.

Week 6
Improving computational efficiency using the bar-delta method
Kalman filtering requires that noises have zero mean. What do we do if the current-sensor has a dc bias error, as is often the case? How can we implement Kalman-filter type SOC estimators in a computationally efficient way for a battery pack comprising many cells? This week you will learn how to compensate for current-sensor bias error and how to implement the bar-delta method for computational efficiency. You will also learn about desktop validation as an approach for initial testing and tuning of BMS algorithms.

Week 7
Capstone project
You have already learned that Kalman filters must be "tuned" by adjusting their process-noise, sensor-noise, and initial state-estimate covariance matrices in order to give acceptable performance over a wide range of operating scenarios. This final course module will give you some experience hand-tuning both an EKF and SPKF for SOC estimation.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Physics 102 - AC Circuits and Maxwell's Equations (Coursera) Coursera
Rice University

Physics 102 - AC Circuits and Maxwell's Equations (Coursera)

This course serves as an introduction to the physics of electricity and magnetism. Upon completion, learners will have an understanding of how the forces between electric charges are described by fields, and how these fields are related to electrical circuits. They will gain experience in solving physics problems with tools such as graphical analysis, algebra, vector analysis, and calculus. The course follows the typical progression of topics of a first-semester university physics course: charges, electric forces, electric fields potential, magnetic fields, currents, magnetic moments, electromagnetic induction, and circuits.

Nov 9th 2026
3 Weeks
State Estimation and Localization for Self-Driving Cars (Coursera) Coursera
University of Toronto

State Estimation and Localization for Self-Driving Cars (Coursera)

Welcome to State Estimation and Localization for Self-Driving Cars, the second course in University of Toronto’s Self-Driving Cars Specialization. We recommend you take the first course in the Specialization prior to taking this course. This course will introduce you to the different sensors and how we can use them for state estimation and localization in a self-driving car.

Nov 2nd 2026
5-12 Weeks
Introduction to Semiconductor Devices 1 (Coursera) Coursera
Korea Advanced Institute of Science and Technology - KAIST

Introduction to Semiconductor Devices 1 (Coursera)

This course aims to provide a general understanding of semiconductor devices. This course explores the principles and the operation mechanism of semiconductor, such as charge transfer, p-n junction, junction capacitors, and Metal-Oxide-Semiconductor Field Effect Transistors(MOSFETs).

Nov 16th 2026
5-12 Weeks
Interfacing with the Arduino (Coursera) Coursera
University of California, Irvine

Interfacing with the Arduino (Coursera)

Arduino senses the environment by receiving inputs from add-on devices such as sensors, and can control the world around it by adjusting lights, motors, and other actuators. In this class you will learn how and when to use the different types of sensors and how to connect them to the Arduino. Since the external world uses continuous or analog signals and the hardware is digital you will learn how these signals are converted back-and-forth and how this must be considered as you program your device. You'll also learn about the use of Arduino-specific shields and the shields software libraries to interface with the real world.

Nov 9th 2026
4 Weeks
Industrial Applications of AI (Coursera) Coursera
L&T EduTech

Industrial Applications of AI (Coursera)

The course Embarks on a transformative learning journey exploring the power of Artificial Intelligence across diverse fields such as electrical, mechanical, civil, and general applications. This course elevates the learner’s insight on AI towards the real-world practices by bridging the gap between theory and practical applications. It also provides hands-on experience of applying AI algorithms into potential applications.

Nov 2nd 2026
5-12 Weeks
Introduction to Satellite Communications (Coursera) Coursera
Institut Mines-Telecom

Introduction to Satellite Communications (Coursera)

How is a satellite built? How do they fly? How do they communicate and how does the network operate? You will get all the answers in this course from teachers and researchers from three schools associated with Institut Mines-Télécom. The course is made of : teaching videos, equipment demonstrations and simulation programs. They will guide you through the discovery of satellite communications. Professionals in the space field will share there vocation for this scientific and technical sector.

No sessions available
5-12 Weeks
Outsmarting intermittency (Coursera) Coursera
École Polytechnique

Outsmarting intermittency (Coursera)

Solar and wind offer clean and renewable ways to produce large amounts of electricity. They have boomed over the last few years, evolving from an eco-daydream to a major market and showing unprecedented growth rates. Yet, installing solar panels and wind turbines is by no means the end of the story. The electrical grid, which connects production means to the end-users’ sockets, is not a simple electron pipe. It is the beating heart of our electricity system and ensures its stability. Solar and wind raise specific challenges for the grid, and these challenges will have to be tackled if we want to deploy larger amounts of renewable sources.

Nov 23rd 2026
4 Weeks
Real-Time Mission-Critical Systems Design (Coursera) Coursera
University of Colorado Boulder

Real-Time Mission-Critical Systems Design (Coursera)

Upon completion of this course the learner will know the difference between systems you can bet your life on (mission critical) and those which provide predictable response and quality of service (reliable). This will be achieved not only by study of design methods and patterns for mission critical systems, but also through implementation of soft real-time systems and comparison to hard real-time. Methods of verification to determine ability to meet mission critical as well as soft real-time requirements will be learned so that the learner can properly assess risk, reliability and impact of failure in real-time systems.

Nov 2nd 2026
4 Weeks
Palo Alto Networks Security Operations Fundamentals (Coursera) Coursera
Palo Alto Networks

Palo Alto Networks Security Operations Fundamentals (Coursera)

In this Security Operations Fundamentals course you will gain an understanding of Security Operations (SecOps) and the role it plays in protecting our digital way of life, for businesses and customers. You will focus on continuous improvement processes to collect high-fidelity intelligence, contextual data, and automated prevention workflows that quickly identify and respond to fast-evolving threats.

Aug 10th 2026
4 Weeks