CDS 110/ChE 105, Spring 2024: Difference between revisions

From Murray Wiki
Jump to navigationJump to search
 
(119 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{| width=100%
{{Course
|-
|Course number=CDS 110
| colspan=2 align=center |
|Course title=Analysis and Design of Feedback Control Systems
<font color='blue' size='+2'>Analysis and Design of Feedback Control Systems</font>__NOTOC__
|Year=2024
|- valign=top
|Term=Spring
| width=50% |
|Lecture schedule=MWF, 2-3 pm, 106 Spalding
'''Instructors'''
|Instructors=Richard Murray (CDS/BE), murray@cds.caltech.edu
* Richard Murray (CDS/BE), murray@cds.caltech.edu
|Instructor office hours=Wed, 3-4 pm, Annenberg Lounge
* Lectures: MWF, 2-3 pm, TBD
|TAs=Natalie Bernat (CMS), Manisha Kapasiawala (BE)
| width=50% |
|TA office hours=<br> &nbsp; Mon, 3-4 pm, 111 Keck<br> &nbsp; Tue, 4-5 pm, 110 Steele
'''Teaching Assistants'''
}}
* TBD
This course is co-taught with ChE 105 (Dynamics and Control of Chemical Systems).
* Office hours: TBD
|}
 
This is the course homepage for CDS 110/ChE 105, Spring 2024.


=== Course Syllabus ===
=== Course Syllabus ===
Line 24: Line 20:
{| class="mw-collapsible wikitable" width=100% border=1 cellpadding=5
{| class="mw-collapsible wikitable" width=100% border=1 cellpadding=5
|-
|-
| '''Date'''
! width=10% | Date
| '''Topic'''
! Topic
| '''Reading'''
! Reading
| '''Homework'''
! width=20% | Homework
|- valign=top
|- valign=top
| '''Week 1'''<br>
| '''Week 1'''<br>
1 Apr <br>  3 Apr <br> 5 Apr
1 Apr <br>  3 Apr <br> 5 Apr
| TBD
| '''Introduction and review'''
* Course overview and logistics
* Course overview and logistics
* State space input/output modeling
* Introduction to feedback and control
* Introduction to python-control
* Introduction to [[http:python-control.org|python-control]]
| FBS2e, Ch 1-3
| [[http:fbswiki.org/wiki/index.php/FBS|FBS2e]] 1.1-1.5 (skim), 2.1-2.4
| HW #1
* Lecture materials: {{cds110 sp2024 pdf|L1-1_intro-01Apr2024.pdf|Mon}}, {{cds110 sp2024 pdf|L1-2_principles-03Apr2024.pdf|Wed}}
* Notebooks: [https://colab.research.google.com/drive/1EeGcyP6pTGeCNALloq2TqvMJv8Rn-7L- L1-3_servomech-python.ipynb] ({{cds110 sp2024 pdf|L1-3_servomech-python-05Apr2024.pdf|PDF}})
* [https://simons.berkeley.edu/control-theory Feedback Control Theory video tutorial (Simons Institute)]
| {{cds110 sp2024 pdf|hw1-sp2024.pdf|HW #1}}
* Out: 3 Apr 2024
* Due: 10 Apr 2024, 2 pm
* {{cds110 sp2024 pdf|caltech/hw1-sp2024_solns.pdf|Solutions}} (Caltech only)
|- valign=top
|- valign=top
| '''Week 2'''<br>
| '''Week 2'''<br>
8 Apr* <br> 10 Apr <br> 12 Apr
8 Apr* <br> 10 Apr <br> 12 Apr
| Linear systems
| '''Modeling, Stability'''
* Equilibrium points, linearization
* State space models
* LTI control systems
* Continuous and discrete time systems
* Convolution equation
* Phase portraits and stability
| FBS2e, Ch 5-6
| [[http:fbswiki.org/wiki/index.php/FBS|FBS2e]] 3.1-3.2, 4.1, 5.1-5.3
| HW #2
* Lecture materials: {{cds110 sp2024 pdf|L2-1_dynamics-08Apr2024.pdf|Mon}}, {{cds110 sp2024 pdf|L2-2_dynamics-10Apr2024.pdf|Wed}}
* Notebooks: [https://colab.research.google.com/drive/15w2lJFuVZCjP9TG-9PraYxOMx5BDAMgq#scrollTo=-MsMb5yfy2qX L2-3_invpend-dynamics-12Apr2024.ipynb] ({{cds110 sp2024 pdf|L2-3_invpend-dynamics-12Apr2024.pdf|PDF}})
| {{cds110 sp2024 pdf|hw2-sp2024.pdf|HW #2}}
* Out: 10 Apr 2024
* Due: 17 Apr 2024, 2 pm
* {{cds110 sp2024 pdf|caltech/hw2-sp2024_solns.pdf|Solutions}} (Caltech only)
|- valign=top
|- valign=top
| '''Week 3'''<br>
| '''Week 3'''<br>
15 Apr <br> 17 Apr <br> 19 Apr
15 Apr <br> 17 Apr <br> 19 Apr
| State feedback
| '''Linear Systems'''
* Stabilization
* Input/output response of LTI systems
* Eigenvalue placement
* Matrix exponential, convolution equation
* LQR, integral action
* Linearization around an equilibrium point
| FBS2e, Ch 7
| FBS2e 6.1-6.4
| HW #3
* Lecture materials: {{cds110 sp2024 pdf|L3-1_linsys-15Apr2024.pdf|Mon}}, {{cds110 sp2024 pdf|L3-2_linsys-17Apr2024.pdf|Wed}}
* Notebooks: [https://colab.research.google.com/drive/1ow5YkJ_TIE4nN-DFvgbYy0slAC0daMpa#scrollTo=FDfZkyk1ly0T L3-3_linsys-19Apr2024.ipynb] ({{cds110 sp2024 pdf|L3-3_linsys-19Apr2024.pdf|PDF}})
| {{cds110 sp2024 pdf|hw3-sp2024.pdf|HW #3}}
* Out: 17 Apr 2024
* Due: 24 Apr 2024, 2 pm
* {{cds110 sp2024 pdf|caltech/hw3-sp2024_solns.pdf|Solutions}} (Caltech only)
|- valign=top
|- valign=top
| '''Week 4'''<br>
| '''Week 4'''<br>
22 Apr <br> 24 Apr <br> 26 Apr
22 Apr <br> 24 Apr <br> 26 Apr*
| Optimization-based control
| '''State Feedback'''
* Trajectory generation
* State feedback and eigenvalue placement
* Optimal control
* Integral action
* Model predictive control
* Linear quadratic regulators (LQR)
| FBS2e, Ch 8
| FBS2e 7.2-7.5
| HW #4
* Lecture materials: {{cds110 sp2024 pdf|L4-1_statefbk-22Apr2024.pdf|Mon}}, {{cds110 sp2024 pdf|L4-2_statefbk-24Apr2024.pdf|Wed}}
* Notebooks: [https://colab.research.google.com/drive/1Fbf0zk7AKpsEvWi9rnak5Yuf6-kT5meo L4-1_predprey.ipynb], [https://colab.research.google.com/drive/1iROY3_wXCKaKEdNwCGsZ00EqC-AkpVCm L4-3_statefbk.ipynb] ({{cds110 sp2024 pdf|L4-3_statefbk-26Apr2024.pdf|PDF}})
| {{cds110 sp2024 pdf|hw4-sp2024.pdf|HW #4}}
* Out: 24 Apr 2024
* Due: 1 May 2024, 2 pm
* {{cds110 sp2024 pdf|caltech/hw4-sp2024_solns.pdf|Solutions}} (Caltech only)
|- valign=top
|- valign=top
| '''Week 5'''<br>
| '''Week 5'''<br>
29 Apr <br> 1 May <br> 3 May  
29 Apr <br> 1 May* <br> 3 May  
| Output feedback
| '''State estimation'''
* Observers, observability
* Observers, observability
* Control using estimated state
* Control using estimated state
* Midterm review (Fri)
* Kalman filtering (intro)
| FBS2e, Ch 8
| FBS2e 8.1-8.4
| Midterm
* Lecture materials: {{cds110 sp2024 pdf|L5-1_estimators-29Apr2024.pdf|Mon}}, {{cds110 sp2024 pdf|L5-2_outputfbk-01May2024.pdf|Wed}}
* Notebooks: [https://colab.research.google.com/drive/1BtNWAUY840s6MgRuzL8I2RuESowkTVOA#scrollTo=tk9GRiKFISSB L5-3_estimation.ipynb] ({{cds110 sp2024 pdf|L5-3_estimation-03May2024.pdf|PDF}})
| {{cds110 sp2024 pdf|hw5-sp2024.pdf|HW #5}}
* Out: 2 May 2024
* Due: 8 May 2024, 2 pm
* {{cds110 sp2024 pdf|caltech/hw5-sp2024_solns.pdf|Solutions}} (Caltech only)
|- valign=top
|- valign=top
| '''Week 6'''<br>
| '''Week 6'''<br>
6 May <br> 8 May <br> 10&nbsp;May
6 May <br> 8 May <br> 10&nbsp;May
| Trajectory tracking
| '''Trajectory generation and tracking'''
* Two degree of freedom design
* Two degree of freedom design
* Gain scheduling
* Gain scheduling
| OBC, Ch 2
* Receding horizon/model predictive control
| HW #5
| FBS2e, 7.1, 8.5 <br> OBC, Ch 1, 2.1, 2.2, 4.3
* Lecture materials: {{cds110 sp2024 pdf|L6-1_trajgen-06May2024.pdf|Mon}}, {{cds110 sp2024 pdf|L6-2_tracking-08May2024.pdf|Wed}}, {{cds110 sp2024 pdf|L6-3_rhc-10May2024.pdf|Fri}}
* Notebooks:
** [https://colab.research.google.com/drive/1VXvfvBvoMTkIdNoRY0k23Lg0CrKejSac L6-1_kincar-trajgen.ipynb] ({{cds110 sp2024 pdf|L6-1_kincar-trajgen-06May2024.pdf|PDF}})
** [https://colab.research.google.com/drive/1t4c7xCTY3FMFZRE4euME7qadXRZtr5Mv L6-2_kincar-tracking.ipynb] ({{cds110 sp2024 pdf|L6-2_kincar-tracking-08May2024.pdf|PDF}})
** [https://colab.research.google.com/drive/1gxGImMP92UUmEiRJyZrt0-STucmaSNfM L6-3_doubleint-rhc.ipynb] ({{cds110 sp2024 pdf|L6-3_doubleint-rhc-10May2024.pdf|PDF}})
| {{cds110 sp2024 pdf|hw6-sp2024.pdf|HW #6}}
* Out: 9 May 2024
* Due: 15 May 2024, 2 pm
* {{cds110 sp2024 pdf|caltech/hw6-sp2024_solns.pdf|Solutions}} (Caltech only)
|- valign=top
|- valign=top
| '''Week 7'''<br>
| '''Week 7'''<br>
13&nbsp;May <br> 15 May <br> 17 May
13&nbsp;May <br> 15 May <br> 17 May
| Frequency domain analysis
| '''Frequency domain analysis'''
* Bode and Nyquist plots
* Bode and Nyquist plots
* Stability margins
* Stability margins
| FBS2e, 9-10
| FBS2e 9.1-9.4, 10.1-10.3
| HW #6
* Lecture materials: {{cds110 sp2024 pdf|L7-1_smallsignal-13May2024.pdf|Mon}}, {{cds110 sp2024 pdf|L7-2_nyquist-15May2024.pdf|Wed}}
* Notebooks: [https://colab.research.google.com/drive/1VzGLqWRIsTrwlUQliYfusy7bTtUx3YhY L7-3_bode_nyquist.ipynb] ({{cds110 sp2024 pdf|L7-3_bode-nyquist-17May2024.pdf|PDF}})
| {{cds110 sp2024 pdf|hw7-sp2024.pdf|HW #7}}
* Out: 16 May 2024
* Due: 22 May 2024, 2 pm
* {{cds110 sp2024 pdf|caltech/hw7-sp2024_solns.pdf|Solutions}} (Caltech only)
|- valign=top
|- valign=top
| '''Week 8'''<br>
| '''Week 8'''<br>
20 May <br> 22 May <br> 24&nbsp;May
20 May <br> 22 May <br> 24&nbsp;May*
| Robustness and fundamental tradeoffs
| '''Robustness and fundamental tradeoffs'''
* Sensitivity functions
* Sensitivity functions, performance specifications
* Bode integral formula
* Bode integral formula
| FBS2e, 12-14
* Limits due to RHP poles/zeros via maximum modulus theory
| HW #7
| FBS2e, 12.1-12.3, 13.3, 14.2, 14.4
* Lecture materials: {{cds110 sp2024 pdf|L8-1_limits-20May2024.pdf|Mon}}, {{cds110 sp2024 pdf|L8-2_limits-22May2024.pdf|Wed}}
* Notebooks:
** [https://colab.research.google.com/drive/1-3rA7qYiAz0CP7Z3-lqgwzZic6k9RPI8 L8-3_maglev-limits.ipynb] ({{cds110 sp2024 pdf|L8-3_maglev-limits.pdf|PDF}})
** [https://colab.research.google.com/drive/1rLlz-UO7ElfW7oQoV69H0VGj2tMq_w_Y L8-3_pvtol-complete-limits.ipynb] ({{cds110 sp2024 pdf|L8-3_pvtol-complete-limits-24May2024.pdf|PDF}})
 
| {{cds110 sp2024 pdf|hw8-sp2024.pdf|HW #8}}
* Out: 23 May 2024
* Due: 31 May 2024, 2 pm
* {{cds110 sp2024 pdf|caltech/hw8-sp2024_solns.pdf|Solutions}} (Caltech only)
|- valign=top
|- valign=top
| '''Week 9'''<br>
| '''Week 9'''<br>
<s>27 May</s> <br> 29&nbsp;May* <br> 31&nbsp;May
<s>27 May</s> <br> 29&nbsp;May* <br> 31&nbsp;May <br> 3 Jun 
| PID control
| '''PID control'''
* Frequency domain design concepts
* Frequency domain design concepts
* Windup and anti-windup
* Windup and anti-windup
| FBS2e, 11
| FBS2e, 11.1-11.4
| HW #8 (Sophomores, Juniors)<br>Final (Seniors/Graduate students)
* Lecture materials: {{cds110 sp2024 pdf|L9-1_pid-29May2024.pdf|Wed}}, {{cds110 sp2024 pdf|L9-2_pid-31May2024.pdf|Fri}}
* Notebooks: [https://colab.research.google.com/drive/1H8rrEPeKZ7rm46-NjM0LYttUEbdChR1z L9-3_servomech-pid.ipynb] ({{cds110 sp2024 pdf|L9-3_servomech-pid-03Jun2024.pdf|PDF}})
| {{cds110 sp2024 pdf|hw9-sp2024.pdf|HW #9}} (Sophomores, Juniors)
* Out: 31 May 2024
* Due: 7 Jun 2024, 2 pm
* {{cds110 sp2024 pdf|caltech/hw9-sp2024_solns.pdf|Solutions}} (Caltech only)
|- valign=top
|- valign=top
| '''Week 10'''<br>
| '''Week 10'''<br>
3 Jun <br> 5 Jun <br> 7 Jun
5 Jun <br> 7 Jun
| Final Review + Demos
| '''Final review and applications'''
* Final exam review (Wed)
|
* {{cds110 sp2024 pdf|practice-sp2024.pdf|Practice final}}
* {{cds110 sp2024 pdf|caltech/practice-sp2024_solns.pdf|Solutions}} (Caltech only)
 
| Final exam (Seniors, Graduate Students)
* 7 Jun (Fri), 2-3 pm
|- valign=top
| '''Finals week (Sophomores, Juniors)'''<br>
| None
| None
| Final (Sophomores, Juniors)
|
| Final exam (Sophomores, Juniors)
* 12 Jun (Wed), 2-3 pm
|}
|}


Line 116: Line 177:
The final grade will be based on homework sets, a midterm exam, and a final exam:  
The final grade will be based on homework sets, a midterm exam, and a final exam:  


*''Homework (50%):'' Homework sets will be handed out weekly and due on Wednesdays by 2 pm either in class or in the labeled box across from 107 Steele Lab.  Each student is allowed up to two extensions of no more than 2 days each over the course of the term.  Homework turned in after Friday at 2 pm or after the two extensions are exhausted will not be accepted without a note from the health center or the Dean.  MATLAB/Python code and SIMULINK/Modelica diagrams are considered part of your solution and should be printed and turned in with the problem set (whether the problem asks for it or not).
*''Homework (60%):'' Homework sets will be handed out weekly and due on Wednesdays by 2 pm via Gradescope.  Each student is allowed up to two extensions of no more than 2 days each over the course of the term.  Homework turned in after Friday at 2 pm or after the two extensions are exhausted will receive 50% creditPython (or MATLAB) code is considered part of your solution and should be printed and turned in with the problem set (whether the problem asks for it or not).


* ''Midterm exam (20%):'' A midterm exam will be handed out at the beginning of midterms period (28 Oct) and due at the end of the midterm examination period (3 Nov). The midterm exam will be open book and computers will be allowed (though not required).  
:(Sophomores and juniors only) The lowest score on your homework sets will be dropped.


* ''Final exam (30%):''  The final exam will be handed out on the last day of class (4 Dec) and due at the end of finals week. It will be an open book exam and computers will be allowed (though not required).
* ''Final exam (40%):''  The final exam will be a 1-2 hour, in-class, closed-book exam.
** Seniors and graduate students: the final exam will be on 7 Jun (Fri), 2-4 pm
** Sophomores and juniors: the final exam will be on 12 Jun (Wed), 2-4 pm


=== Collaboration Policy ===
=== Collaboration Policy ===


Collaboration on homework assignments is encouraged. You may consult outside reference materials, other students, the TA, or the instructor, but you cannot consult homework solutions from prior years and you must cite any use of material from outside references. All solutions that are handed in should be written up individually and should reflect your own understanding of the subject matter at the time of writing.  MATLAB/Python scripts and plots are considered part of your writeup and should be done individually (you can share ideas, but not code).
Collaboration on homework assignments is encouraged. You may consult outside reference materials, other students, the TA, or the instructor, but you cannot consult homework solutions from prior years and you must cite any use of material from outside references. All solutions that are handed in should be written up individually and should reflect your own understanding of the subject matter at the time of writing.  Python (or MATLAB) scripts and plots are considered part of your writeup and should be done individually (you can share ideas, but not code).


No collaboration is allowed on the midterm or final exams.
ChatGPT and other AI tools may be used in the same manner as a fellow student in the class: you are allowed to consult online tools and use them to understand the topics, but all solutions should be written up individually.  You cannot use online tools to generate solutions for coding problems (cutting and pasting from templates or materials handed out in class and editing them as appropriate is OK).
 
No collaboration is allowed on the final exam.


=== Course Text and References ===
=== Course Text and References ===


The primary course text is  
The primary course text is  
* K. J. Astrom and Richard M. Murray, [http://fbsbook.org ''Feedback Systems: An Introduction for Scientists and Engineers''], Princeton University Press, 2008
This book is available via the Caltech online bookstore or via download from the [http://fbsbook.org companion web site].  Note that the second edition of this book is in preparation for publication and will serve as the primary text for the course (but almost all of the material we will cover is also in the first edition).


The following additional references may also be useful:
* <span id="OBC">[FBS2e]</span> K. J. Astrom and Richard M. Murray, [http://fbsbook.org ''Feedback Systems: An Introduction for Scientists and Engineers''], Second Edition.  Princeton University Press, 2021.
 
This book is available via free download.
 
The following additional references, also available for free, may also be useful:


* A. D. Lewis, ''A Mathematical Approach to Classical Control'', 2003. [http://www.mast.queensu.ca/~andrew/teaching/math332/notes.shtml Online access].
* [Lew], A. D. Lewis, ''A Mathematical Approach to Classical Control'', 2003. [https://mast.queensu.ca/~andrew/teaching/pdf/332-notes.pdf Online access].
* J. Distefano III, A. R. Stubberud and Ivan J. Williams (Author), ''Schaum's Outline of Feedback and Control Systems'', 2nd Edition, 2013.
* <span id="OBC">[OBC]</span> R. M. Murray, "Optimization-Based Control", 2023. [https://fbswiki.org/wiki/index.php/Supplement:_Optimization-Based_Control Online access]
* [LST] Richard M. Murray, [https://fbswiki.org/wiki/index.php/Supplement:_Linear_Systems_Theory Feedback Systems: Notes on Linear Systems Theory], 2020. (Updated 30 Oct 2020)


In addition to the books above, the textbooks below may also be useful.  They are available in the library (non-reserve), from other students, or you can order them online.
In addition to the books above, the textbooks below may also be useful.  They are available in the library (non-reserve), from other students, or you can order them online.

Latest revision as of 05:00, 10 June 2024

Analysis and Design of Feedback Control Systems

Instructors

  • Richard Murray (CDS/BE), murray@cds.caltech.edu
  • Lectures: MWF, 2-3 pm, 106 Spalding
  • Office hours: Wed, 3-4 pm, Annenberg Lounge

Teaching Assistants

  • Natalie Bernat (CMS), Manisha Kapasiawala (BE)
  • Office hours:
      Mon, 3-4 pm, 111 Keck
      Tue, 4-5 pm, 110 Steele

This is the course homepage for CDS 110, Spring 2024. This course is co-taught with ChE 105 (Dynamics and Control of Chemical Systems).

Course Syllabus

An introduction to analysis and design of feedback control systems in the time and frequency domain, with an emphasis on state space methods, robustness, and design tradeoffs. Linear input/output systems, including input/output response via convolution, reachability, and observability. State feedback methods, including eigenvalue placement, linear quadratic regulators, and model predictive control. Output feedback including estimators and two-degree of freedom design. Input/output modeling via transfer functions and frequency domain analysis of performance and robustness, including the use of Bode and Nyquist plots. Robustness, tradeoffs and fundamental limits, including the effects of external disturbances and unmodeled dynamics, sensitivity functions, and the Bode integral formula.

Lecture Schedule

Date Topic Reading Homework
Week 1

1 Apr
3 Apr
5 Apr

Introduction and review
  • Course overview and logistics
  • Introduction to feedback and control
  • Introduction to python-control
FBS2e 1.1-1.5 (skim), 2.1-2.4 HW #1
  • Out: 3 Apr 2024
  • Due: 10 Apr 2024, 2 pm
  • Solutions (Caltech only)
Week 2

8 Apr*
10 Apr
12 Apr

Modeling, Stability
  • State space models
  • Continuous and discrete time systems
  • Phase portraits and stability
FBS2e 3.1-3.2, 4.1, 5.1-5.3 HW #2
  • Out: 10 Apr 2024
  • Due: 17 Apr 2024, 2 pm
  • Solutions (Caltech only)
Week 3

15 Apr
17 Apr
19 Apr

Linear Systems
  • Input/output response of LTI systems
  • Matrix exponential, convolution equation
  • Linearization around an equilibrium point
FBS2e 6.1-6.4 HW #3
  • Out: 17 Apr 2024
  • Due: 24 Apr 2024, 2 pm
  • Solutions (Caltech only)
Week 4

22 Apr
24 Apr
26 Apr*

State Feedback
  • State feedback and eigenvalue placement
  • Integral action
  • Linear quadratic regulators (LQR)
FBS2e 7.2-7.5 HW #4
  • Out: 24 Apr 2024
  • Due: 1 May 2024, 2 pm
  • Solutions (Caltech only)
Week 5

29 Apr
1 May*
3 May

State estimation
  • Observers, observability
  • Control using estimated state
  • Kalman filtering (intro)
FBS2e 8.1-8.4 HW #5
  • Out: 2 May 2024
  • Due: 8 May 2024, 2 pm
  • Solutions (Caltech only)
Week 6

6 May
8 May
10 May

Trajectory generation and tracking
  • Two degree of freedom design
  • Gain scheduling
  • Receding horizon/model predictive control
FBS2e, 7.1, 8.5
OBC, Ch 1, 2.1, 2.2, 4.3
HW #6
  • Out: 9 May 2024
  • Due: 15 May 2024, 2 pm
  • Solutions (Caltech only)
Week 7

13 May
15 May
17 May

Frequency domain analysis
  • Bode and Nyquist plots
  • Stability margins
FBS2e 9.1-9.4, 10.1-10.3 HW #7
  • Out: 16 May 2024
  • Due: 22 May 2024, 2 pm
  • Solutions (Caltech only)
Week 8

20 May
22 May
24 May*

Robustness and fundamental tradeoffs
  • Sensitivity functions, performance specifications
  • Bode integral formula
  • Limits due to RHP poles/zeros via maximum modulus theory
FBS2e, 12.1-12.3, 13.3, 14.2, 14.4 HW #8
  • Out: 23 May 2024
  • Due: 31 May 2024, 2 pm
  • Solutions (Caltech only)
Week 9

27 May
29 May*
31 May
3 Jun

PID control
  • Frequency domain design concepts
  • Windup and anti-windup
FBS2e, 11.1-11.4 HW #9 (Sophomores, Juniors)
  • Out: 31 May 2024
  • Due: 7 Jun 2024, 2 pm
  • Solutions (Caltech only)
Week 10

5 Jun
7 Jun

Final review and applications
  • Final exam review (Wed)
Final exam (Seniors, Graduate Students)
  • 7 Jun (Fri), 2-3 pm
Finals week (Sophomores, Juniors)
None Final exam (Sophomores, Juniors)
  • 12 Jun (Wed), 2-3 pm

Grading

The final grade will be based on homework sets, a midterm exam, and a final exam:

  • Homework (60%): Homework sets will be handed out weekly and due on Wednesdays by 2 pm via Gradescope. Each student is allowed up to two extensions of no more than 2 days each over the course of the term. Homework turned in after Friday at 2 pm or after the two extensions are exhausted will receive 50% credit. Python (or MATLAB) code is considered part of your solution and should be printed and turned in with the problem set (whether the problem asks for it or not).
(Sophomores and juniors only) The lowest score on your homework sets will be dropped.
  • Final exam (40%): The final exam will be a 1-2 hour, in-class, closed-book exam.
    • Seniors and graduate students: the final exam will be on 7 Jun (Fri), 2-4 pm
    • Sophomores and juniors: the final exam will be on 12 Jun (Wed), 2-4 pm

Collaboration Policy

Collaboration on homework assignments is encouraged. You may consult outside reference materials, other students, the TA, or the instructor, but you cannot consult homework solutions from prior years and you must cite any use of material from outside references. All solutions that are handed in should be written up individually and should reflect your own understanding of the subject matter at the time of writing. Python (or MATLAB) scripts and plots are considered part of your writeup and should be done individually (you can share ideas, but not code).

ChatGPT and other AI tools may be used in the same manner as a fellow student in the class: you are allowed to consult online tools and use them to understand the topics, but all solutions should be written up individually. You cannot use online tools to generate solutions for coding problems (cutting and pasting from templates or materials handed out in class and editing them as appropriate is OK).

No collaboration is allowed on the final exam.

Course Text and References

The primary course text is

This book is available via free download.

The following additional references, also available for free, may also be useful:

In addition to the books above, the textbooks below may also be useful. They are available in the library (non-reserve), from other students, or you can order them online.

  • B. Friedland, Control System Design: An Introduction to State-Space Methods, McGraw-Hill, 1986.
  • G. F. Franklin, J. D. Powell, and A. Emami-Naeni, Feedback Control of Dynamic Systems, Addison-Wesley, 2002.