- Level Professional
- Duration 28 hours
- Course by University of Colorado Boulder
-
Offered by
About
This course can also be taken for academic credit as ECEA 5731, part of CU Boulder's Master of Science in Electrical Engineering degree. In this course, you will learn the purpose of each component in an equivalent-circuit model of a lithium-ion battery cell, how to determine their parameter values from lab-test data, and how to use them to simulate cell behaviors under different load profiles. By the end of the course, you will be able to: - State the purpose for each component in an equivalent-circuit model - Compute approximate parameter values for a circuit model using data from a simple lab test - Determine coulombic efficiency of a cell from lab-test data - Use provided Octave/MATLAB script to compute open-circuit-voltage relationship for a cell from lab-test data - Use provided Octave/MATLAB script to compute optimized values for dynamic parameters in model - Simulate an electric vehicle to yield estimates of range and to specify drivetrain components - Simulate battery packs to understand and predict behaviors when there is cell-to-cell variation in parameter valuesModules
2.1.1: Welcome to the course!
1
Videos
- 2.1.1: Welcome to the course!
7
Readings
- Notes for lesson 2.1.1
- Frequently asked questions
- Course resources
- How to use discussion forums
- Get help and meet other learners in this course. Join your discussion forums!
- Earn a course certificate
- Are you interested in earning an MSEE degree?
2.1.2: How do we model open-circuit voltage (OCV) and state-of-charge (SOC)?
1
Assignment
- Practice quiz for lesson 2.1.2
1
Videos
- 2.1.2: How do we model open-circuit voltage (OCV) and state-of-charge (SOC)?
1
Readings
- Notes for lesson 2.1.2
2.1.3: How do we model voltage polarization?
1
Assignment
- Practice quiz for lesson 2.1.3
1
Videos
- 2.1.3: How do we model voltage polarization?
1
Readings
- Notes for lesson 2.1.3
2.1.4: What is a "Warburg impedance" and how is it implemented?
1
Assignment
- Practice quiz for lesson 2.1.4
1
Videos
- 2.1.4: What is a "Warburg impedance" and how is it implemented?
1
Readings
- Notes for lesson 2.1.4
2.1.5: How do I convert a continuous-time model to a discrete-time model?
1
Assignment
- Practice quiz for lesson 2.1.5
1
Videos
- 2.1.5: How do I convert a continuous-time model to a discrete-time model?
1
Readings
- Notes for lesson 2.1.5
2.1.6: What is a quick way to get approximate model parameter values?
1
Assignment
- Practice quiz for lesson 2.1.6
1
Videos
- 2.1.6: What is a quick way to get approximate model parameter values?
1
Readings
- Notes for lesson 2.1.6
2.1.7: What is hysteresis in a lithium-ion cell and how can I model it?
1
Assignment
- Practice quiz for lesson 2.1.7
1
Videos
- 2.1.7: What is hysteresis in a lithium-ion cell and how can I model it?
1
Readings
- Notes for lesson 2.1.7
2.1.8: Summarizing an equivalent-circuit model of a lithium-ion cell
1
Assignment
- Practice quiz for lesson 2.1.8
1
Videos
- 2.1.8: Summarizing an equivalent-circuit model of a lithium-ion cell
1
Readings
- Notes for lesson 2.1.8
2.1.9: Summary of "Defining an ECM of a Li-ion cell" and next steps
1
Assignment
- Quiz for week 1
1
Videos
- 2.1.9: Summary of "Defining an ECM of a Li-ion cell" and next steps
1
Readings
- Notes for lesson 2.1.9
2.2.1: Lab equipment for cell characterization
1
Assignment
- Practice quiz for lesson 2.2.1
1
Videos
- 2.2.1: Lab equipment for cell characterization
1
Readings
- Notes for lesson 2.2.1
2.2.2: What cell tests are needed to determine open-circuit voltage?
1
Assignment
- Practice quiz for lesson 2.2.2
1
Videos
- 2.2.2: What cell tests are needed to determine open-circuit voltage?
1
Readings
- Notes for lesson 2.2.2
2.2.3: How to determine a cell's coulombic efficiency and total capacity
1
Assignment
- Practice quiz for lesson 2.2.3
1
Videos
- 2.2.3: How to determine a cell's coulombic efficiency and total capacity
1
Readings
- Notes for lesson 2.2.3
2.2.4: How do I determine a cell's temperature-dependent OCV?
1
Assignment
- Practice quiz for lesson 2.2.4
1
Videos
- 2.2.4: How do I determine a cell's temperature-dependent OCV?
1
Readings
- Notes for lesson 2.2.4
2.2.5: Introducing Octave code to determine static part of ECM
1
Assignment
- Practice quiz for lesson 2.2.5
1
Labs
- Jupyter notebook used in conjunction with practice quiz
1
Videos
- 2.2.5: Introducing Octave code to determine static part of ECM
2
Readings
- Notes for lesson 2.2.5
- Introducing a new element to the course!
2.2.6: Summary of "Identifying parameters of static model" and next steps
1
Assignment
- Quiz for week 2
1
Labs
- Jupyter notebook used in conjunction with week-2 quiz
1
Videos
- 2.2.6: Summary of "Identifying parameters of static model" and next steps
1
Readings
- Notes for lesson 2.2.6
2.3.1: What cell tests are needed to determine dynamic-model parameters?
1
Assignment
- Practice quiz for lesson 2.3.1
1
Videos
- 2.3.1: What cell tests are needed to determine dynamic-model parameters?
1
Readings
- Notes for lesson 2.3.1
2.3.2: How are cell data used to find dynamic-model parameter values?
1
Assignment
- Practice quiz for lesson 2.3.2
1
Videos
- 2.3.2: How are cell data used to find dynamic-model parameter values?
1
Readings
- Notes for lesson 2.3.2
2.3.3: Introducing Octave code to determine dynamic part of an ECM
1
Assignment
- Practice quiz for lesson 2.3.3
1
Labs
- Notebook to run before attempting practice quiz
1
Videos
- 2.3.3: Introducing Octave code to determine dynamic part of an ECM
1
Readings
- Notes for lesson 2.3.3
2.3.4: Introducing Octave toolbox to use ECM
1
Videos
- 2.3.4: Introducing Octave toolbox to use ECM
1
Readings
- Notes for lesson 2.3.4
2.3.5: Understanding Octave code to simulate an ECM
1
Assignment
- Practice quiz for lesson 2.3.5
1
Labs
- Notebook to run before attempting practice quiz
1
Videos
- 2.3.5: Understanding Octave code to simulate an ECM
1
Readings
- Notes for lesson 2.3.5
2.3.6: Understanding Octave code to look up model parameter value
1
Assignment
- Practice quiz for lesson 2.3.6
1
Labs
- Notebook to run before attempting practice quiz
1
Videos
- 2.3.6: Understanding Octave code to look up model parameter value
1
Readings
- Notes for lesson 2.3.6
2.3.7: Understanding Octave code to compute OCV
1
Assignment
- Practice quiz for lesson 2.3.7
1
Labs
- Notebook to run before attempting practice quiz
1
Videos
- 2.3.7: Understanding Octave code to compute OCV
1
Readings
- Notes for lesson 2.3.7
2.3.8: Some example results from using the Octave ESC toolbox
1
Videos
- 2.3.8: Some example results from using the Octave ESC toolbox
1
Readings
- Notes for lesson 2.3.8
2.3.9: Summary of "Identifying parameters of dynamic model" and next steps
1
Assignment
- Quiz for week 3
1
Videos
- 2.3.9: Summary of "Identifying parameters of dynamic model" and next steps
1
Readings
- Notes for lesson 2.3.9
2.4.1: How do I use the ECM to simulate constant voltage?
1
Assignment
- Practice quiz for lesson 2.4.1
1
Labs
- Notebook to run before attempting practice quiz
1
Videos
- 2.4.1: How do I use the ECM to simulate constant voltage?
1
Readings
- Notes for lesson 2.4.1
2.4.2: How do I use the ECM to simulate constant power?
1
Assignment
- Practice quiz for lesson 2.4.2
1
Labs
- Notebook to run before attempting practice quiz
1
Videos
- 2.4.2: How do I use the ECM to simulate constant power?
1
Readings
- Notes for lesson 2.4.2
2.4.3: How do I simulate battery packs?
1
Assignment
- Practice quiz for lesson 2.4.3
1
Videos
- 2.4.3: How do I simulate battery packs?
1
Readings
- Notes for lesson 2.4.3
2.4.4: Introducing Octave code to simulate PCMs
1
Assignment
- Practice quiz for lesson 2.4.4
1
Labs
- Notebook to run before attempting practice quiz
1
Videos
- 2.4.4: Introducing Octave code to simulate PCMs
1
Readings
- Notes for lesson 2.4.4
2.4.5: Introducing Octave code to simulate SCMs
1
Assignment
- Practice quiz for lesson 2.4.5
1
Labs
- Notebook to run before attempting practice quiz
1
Videos
- 2.4.5: Introducing Octave code to simulate SCMs
1
Readings
- Notes for lesson 2.4.5
2.4.6: Summary of "Simulating battery packs in different configurations" and next steps
1
Assignment
- Quiz for week 4
1
Videos
- 2.4.6: Summary of "Simulating battery packs in different configurations" and next steps
1
Readings
- Notes for lesson 2.4.6
2.5.1: Introduction to the problem
1
Assignment
- Quiz for lesson 2.5.1
1
Videos
- 2.5.1: Introduction to the problem
1
Readings
- Notes for lesson 2.5.1
2.5.2: Modeling ideal vehicle dynamics
1
Videos
- 2.5.2: Modeling ideal vehicle dynamics
1
Readings
- Notes for lesson 2.5.2
1
Quiz
- Quiz for lesson 2.5.2
2.5.3: Adding practical limits to model of vehicle dynamics
1
Assignment
- Quiz for lesson 2.5.3
1
Videos
- 2.5.3: Adding practical limits to model of vehicle dynamics
1
Readings
- Notes for lesson 2.5.3
2.5.4: Calculating electric-vehicle range
1
Assignment
- Quiz for lesson 2.5.4
1
Videos
- 2.5.4: Calculating electric-vehicle range
1
Readings
- Notes for lesson 2.5.4
2.5.5-2.5.7: Introducing Octave code to co-simulate EV and battery
1
Assignment
- Quiz for lessons 2.5.5 and 2.5.6
1
Labs
- Notebook for lessons 2.5.5 and 2.5.6
3
Videos
- 2.5.5: Introducing Octave code to set up EV simulation
- 2.5.6: Introducing Octave code to conduct EV simulation
- 2.5.7 Summary of "Co-simulating battery and electric vehicle load" and next steps
3
Readings
- Notes for lesson 2.5.5
- Notes for lesson 2.5.6
- Notes for lesson 2.5.7
2.6: Capstone project
- Manually tuning an ESC cell model
1
Labs
- Jupyter notebook for capstone project

Gregory Plett