| Description | Lectures | Text | Software | Syllabus |
Application of modern, nonlinear control design techniques to physical systems. The goal of this course is to teach students how to design and implement nonlinear feedback controllers on physical systems, and to allow students to evaluate different control design methodologies on experimental hardware.
Suggested pre-requisites: CDS 110ab, CDS 111, CDS 140
The lectures will be split between covering the theoretical material from the course text and discussing the computational approaches to solving the problem. Students in the class will be expected to give selected lectures to illustrate the course material in the context of their research. A course syllabus is given below.
The text for the course will be Khalil's book on nonlinear systems, which is an excellent reference text for nonlinear and adaptive control. The second edition also contains chapters on geometric methods in nonlinear control, which I will supplement with my own lecture notes as well as articles from the literature.
We will make use of a variety of software packages throughout the course. Students should be familiar with the use of Matlab, which will be a primary interface to the software the we use (and develop). A major goal of the course is to develop new software packages for nonlinear control analysis and design, building on some of the existing infrastructure at Caltech.
Here are some pointers to the software that we will be using:
Matlab. A general purpose engineering analysis package that is widely used in industry. Caltech has a site license to Matlab and it should be available on most campus computing systems.
Modelica. A object-oriented modeling language that has been developed by a consortium in Europe. This will be the primary language for all modeling in this class. CDS has a license for classroom use of Modelica on both Sun and Windows NT platforms.
Modelica: A Language for Physical System Modeling. Presentation by Hubertus Tummenscheit (Lund), 24 May 2000. Good overview presentation on Modelica.
Download (CDS 221 only)
DFA (Discrete Function Approximation). A locally written package for Matlab that represents functions by local Taylor series approximations on a non-uniform grid of points. This will be the main analysis and synthesis tool for nonlinear control.
Matlab library (tar file) - untar and put in your Matlab path. See README file for more details.
User's guide (postscript) - description of the software and how to use it
Technical report (postscript) - description of the main ideas behind the software, with a feedback linearization example
NTG (Nonlinear Trajectory Generation). This package was written by Mark Milam and uses a collocation technique to generate optimal trajectories for constrained nonlinear systems.
dSPACE. A real-time control package consisting of dedicated DSP hardware and a real-time software kernel. This is the system that we are migrating to for all real-time control experiments in my labs.
Sparrow. A real-time control package that runs on PCs. We are slowly migrating away from this software, but it is in use in multiple places around the campus and so we might write some software that is compatible with this for legacy experiments.
Course projects: here is some of the software that was produced by the students in the course.
DFA Model Reduction Tool (Martha Gallivan)
| Week | Date | Lecturer | Topic | Reading |
| 1 | 20 June 22 June |
Murray Dunbar |
Course overview, Lyapunov stability (autonomous) Modelica |
Khalil 3.1-3.3 Handouts |
| 2 | 27 June 29 June |
Murray -- |
Lyapunov stability (non-autonomous) No class -- ACC conference |
Khalil 3.4 -- |
| 3 | 4 Jul 6 Jul |
-- Rathinam |
No class -- Independence day DFA |
-- Handouts |
| 4 | 11 Jul 13 Jul |
Murray Murray |
Lyapunov stability, ctd Computational infrastructure discussion |
Khalil 3.5-3.6 -- |
| 5 | 18 Jul 20 Jul |
Murray -- |
Stability of perturbed systems No class |
Khalil 4.3, 5.1-5.2 -- |
| 6 | 25 Jul 27 Jul |
Murray Murray |
Stability of perturbed systems (ctd) Project assignments |
|
| 7 | 1 Aug 3 Aug |
Murray All |
Lyapunov-based control synthesis Project proposals |
|
| 8 | 8 Aug 10 Aug |
Murray All |
Stability of interconnected systems Project proposals |
|
| 9 | 15 Aug 17 Aug |
Murray | Adaptive control | |
| 10 | 22 Aug 24 Aug |
-- | No class -- AFOSR Contractor's meeting No class -- MURI review |
|
| 11 | 29 Aug 1 Sep |
Murray | Topological restrictions | |
| 12 | 6 Sep 8 Sep |
All | Project presentations |