4th course in the Algorithms for Battery Management Systems Specialization

Instructor: Gregory Plett, Ph.D., Professor

In this course, you will learn how to implement different state-of-health estimation methods and to evaluate their relative merits.

Prior knowledge needed: ECEA 5730, ECEA 5731, ECEA 5732, a Bachelor’s degree in Electrical, Computer, or Mechanical Engineering, or a B.S. degree with undergraduate-level competency in the following areas: Math: Differential and integral calculus, operations with vectors and matrices (mechanics of linear algebra), and basic differential equations, Engineering: Linear circuits (modeling resistors, capacitors, and sources), Programming: MATLAB, Octave, or similar scientific program environment

Learning Outcomes

  • Identify the primary degradation mechanisms that occur in lithium-ion cells and understand how they work.
  • Execute provided Octave/MATLAB script to estimate total capacity using WLS, WTLS, and AWTLS methods and lab-test data, and to evaluate results.
  • Compute confidence intervals on total-capacity estimates.
  • Compute estimates of a cell’s equivalent-series resistance using lab-test data.
  • Specify the tradeoffs between joint and dual estimation of state and parameters, and steps that must be taken to ensure robust estimates.


Duration: 4 hours

As battery cells age, their total capacities generally decrease and their resistances generally increase. In this week, you will learn WHY this happens. You will learn about the specific physical and chemical mechanisms that cause degradation to lithium-ion battery cells. You will also learn why it is relatively simple to estimate and track changes to resistance, but why it is difficult to track changes to total capacity accurately.

Duration: 4 hours

Total capacity is often estimated using ordinary-least-squares (OLS) methods. In this week, you will learn that this is a fundamentally incorrect approach, and will learn that a total-least-squares (TLS) method should be used instead. You will learn how to derive a weighted OLS solution, to use as a benchmark, and how to derive a weighted TLS solution also.

Duration: 4 hours

Unfortunately, the weighted TLS solution you learned in week 2 is not well suited for efficient computation on an embedded system like a BMS. As an intermediate step toward finding an efficient weighted TLS method, you will first learn a proportionally weighted TLS method in this week. You will then learn how to generalize this to an "approximate weighted TLS" (AWTLS) method, which gives good estimates, and is feasible to implement on a BMS.

Duration: 4 hours

So far this course, you have learned a number of methods for estimating total capacity. In this week, you will learn how to implement those methods in Octave code. You will also explore different simulation scenarios to benchmark how well each method works, in comparison with the others. The scenarios are representative of hybrid-electric-vehicle (HEV) and battery-electric-vehicle (BEV) applications, but the principles learned can be extrapolated to other similar application domains.

Duration: 3 hours

In the third course of the specialization, you learn how to use extended Kalman filters (EKFs) and sigma-point Kalman filters (SPKFs) to estimate the state of a battery cell. This week, you will learn how to extend those concepts to apply EKF and SPKF to estimating the parameters of a battery-cell model if the state is known, and also how to simultaneously estimate both the state and parameters of a cell model.

Duration: 4 hours

You have learned several different total-capacity estimation methods. Some of these methods work better than others in general, but any method is only as good as the data you give it. In this project, you will explore a different way to determine the "x" and "y" data you use as input to the total-capacity estimation methods.

Duration: 2 hours

Final exam for the course.

To learn about ProctorU's exam proctoring, system test links, and privacy policy, visit www.colorado.edu/ecee/online-masters/current-students/proctoru.


Percentage of Grade

Q​uiz for week 1


Q​uiz for week 2


Q​uiz for week 3


Q​uiz for week 4


Q​uiz for lesson 4.5.1


Q​uiz for lesson 4.5.2


Q​uiz for lesson 4.5.3 & 4.5.4


Q​uiz for lesson 4.5.5


P​rogramming project "Tuning xLS algorithms for total-capacity estimation" 10% 
F​inal exam 50%

Letter Grade Rubric

Letter Grade 
Minimum Percentage