# Control Systems

## Reference

* Norman S. Nise, Control Systems Engineering \[[website](https://bcs.wiley.com/he-bcs/Books?action=index\&bcsId=11568\&itemId=1119474221)]
* Katsuhiko Ogata, Modern Control Engineering
* Richard C. Dorf and Robert H. Bishop, Modern Control Systems \[[website](https://www.pearson.com/us/higher-education/program/Dorf-Modern-Control-Systems-13th-Edition/PGM328731.html?tab=resources)]
* Farid Golnaraghi and Benjamin C. Kuo, Automatic Control Systems \[[website](https://www.accessengineeringlibrary.com/content/book/9781259643835)]
* Brian Douglas, The Fundamentals of Control Theory \[[website](https://www.patreon.com/briandouglas)]\[[ebook](https://bit.ly/2XLlAKl)]
* Pao C. Chau, Process Control: A First Course With MATLAB \[[website](https://www.cambridge.org/id/academic/subjects/engineering/chemical-engineering/process-control-first-course-matlab?format=PB)]
* Karl J. Åström and Richard M. Murray, Feedback Systems: An Introduction for Scientists and Engineers \[[website](https://www.cds.caltech.edu/~murray/amwiki/index.php?title=Main_Page)]
* R.V. Dukkipati, Analysis and Design of Control Systems using MATLAB

## Online Book

* [CSA - Your Controls Resource](https://www.controlsystemsacademy.com/)
* [Book: Introduction to Control Systems (Iqbal) - Engineering LibreTexts](https://eng.libretexts.org/Bookshelves/Industrial_and_Systems_Engineering/Book%3A_Introduction_to_Control_Systems_\(Iqbal\)) License: CC-BY-NC
* [Book: Chemical Process Dynamics and Controls (Woolf) - Engineering LibreTexts](https://eng.libretexts.org/Bookshelves/Industrial_and_Systems_Engineering/Book%3A_Chemical_Process_Dynamics_and_Controls_\(Woolf\)) License: CC-BY
* [Linear Physical Systems Analysis](https://lpsa.swarthmore.edu/)

## Interactive Learning

* [Interactive Course for Control Theory](https://icct.riteh.hr/hub/login)
* [Umich Control Tutorials](https://ctms.engin.umich.edu/CTMS/index.php?aux=Home)

## Specific Topics

* [Linear Physical Systems - Erik Cheever](https://lpsa.swarthmore.edu/)
* [Root Locus Overview - Erik Cheever](https://lpsa.swarthmore.edu/Root_Locus/RootLocus.html)

## Control Theory Map

![Control Theory Map](https://static1.squarespace.com/static/5b2d76525cfd790c4a218093/t/5f3845ab3384b2337c3214b9/1597523382325/Control_Map_ver4.png)

## Software

* [Octave Online](https://octave-online.net/)

## Interactive Control Systems Learning

* [ICCT: Interactive course for control theory](https://icct.cafre.unipi.it/home), [ICCT Interactive Course in Jupyter](https://icct.riteh.hr/hub/login)
* [Umich Control Tutorials](https://ctms.engin.umich.edu/CTMS/index.php?aux=Home)

## Online Video Course

* [Brian Douglas Youtube Control System Lectures](https://www.youtube.com/user/ControlLectures/playlists)
  * [Routh Horwitz Criterion](https://www.youtube.com/watch?v=WBCZBOB3LCA\&list=PLUMWjy5jgHK0zTjna57eZX4RoZlJtG3L4)
  * [Root Locus](https://www.youtube.com/playlist?list=PLUMWjy5jgHK3-ca6GP6PL0AgcNGHqn33f)
  * [Bode Plots](https://www.youtube.com/watch?v=_eh1conN6YM\&list=PLUMWjy5jgHK24TCFwngV5MeiruHxt1BQR)
  * [Lead Lag Compensator](https://www.youtube.com/playlist?list=PLUMWjy5jgHK0WzmjRViTYtlSVSE_zP6yR)
  * [PID Control](https://www.youtube.com/watch?v=UR0hOmjaHp0\&list=PLUMWjy5jgHK20UW0yM22HYEUTMJfla7Mb)
  * [Discrete Control](https://www.youtube.com/watch?v=14cMhrp5wlk\&list=PLUMWjy5jgHK0MLv6Ksf-NHi7Ur8NRNU4Z)
* [Steve Brunton Control System Bootcamp](https://www.youtube.com/watch?v=Pi7l8mMjYVE\&list=PLMrJAkhIeNNR20Mz-VpzgfQs5zrYi085m)
* [MATLAB Control System](https://www.youtube.com/playlist?list=PLn8PRpmsu08q8CE0pbZ-cSrMm_WYJfVGd)
* [MATLAB Channel: Control System in Practice](https://www.youtube.com/playlist?list=PLn8PRpmsu08pFBqgd_6Bi7msgkWFKL33b)
* [MATLAB Channel: Understanding Control System](https://www.youtube.com/playlist?list=PLn8PRpmsu08q8CE0pbZ-cSrMm_WYJfVGd)
* [MATLAB Channel: Understanding PID Control](https://www.youtube.com/playlist?list=PLn8PRpmsu08pQBgjxYFXSsODEF3Jqmm-y)

## Control Learning Videos

* [Christopher Lum - YouTube](https://www.youtube.com/c/ChristopherLum/videos)
* [katkimshow - YouTube](https://www.youtube.com/c/katkimshow/featured)
* [Control Theory in Practice - YouTube](https://www.youtube.com/channel/UCV3CS_ygnzwGzjBXKjVdQIQ)

## Control Theory Interactive

[ICCT](https://icct.cafre.unipi.it/)

* Control Systems Academy - <https://www.controlsystemsacademy.com/>
* CBE30338: <https://jckantor.github.io/CBE30338/>
* Linear Physica l Systems Analysis: <https://lpsa.swarthmore.edu/>
* Python in Education (Institute of Control Theory): <https://tu-dresden.de/ing/elektrotechnik/rst/studium/python-in-der-lehre?set_language=en>\
  [Computational Methods for Control of Infinite-dimensional Systems - Institute for Mathematics and its Applications](https://www.ima.umn.edu/2015-2016/W3.14-18.16#schedule)

## Python Control

* [Python Control Systems Library—Python Control Systems Library dev documentation](https://python-control.readthedocs.io/en/latest/)
* [mpc.pytorch: A fast and differentiable MPC solver for PyTorch](https://locuslab.github.io/mpc.pytorch/)

## Intelligent Control

* [About the Book - DATA DRIVEN SCIENCE & ENGINEERING](https://www.databookuw.com/)
  * [dynamicslab/databook\_matlab: Matlab files with demo code intended as a companion to the book "Data-Driven Science and Engineering: Machine Learning, Dynamical Systems, and Control" by J. Nathan Kutz and Steven L. Brunton https://www.databookuw.com/](https://github.com/dynamicslab/databook_matlab)
  * [dylewsky/Data\_Driven\_Science\_Python\_Demos: IPython notebooks with demo code intended as a companion to the book "Data-Driven Science and Engineering: Machine Learning, Dynamical Systems, and Control" by J. Nathan Kutz and Steven L. Brunton](https://github.com/dylewsky/Data_Driven_Science_Python_Demos)

## Control Systems Online Curriculum

**Level 1:**

1. Math basics:
   1. Algebra 1: <https://www.khanacademy.org/math/algebra> and <https://www.khanacademy.org/math/algebra2>
   2. Trig: <https://www.khanacademy.org/math/trigonometry>
   3. Basic Calculus: <https://www.khanacademy.org/math/ap-calculus-ab> and <https://www.khanacademy.org/math/ap-calculus-bc>
2. Physics Basics:
   1. General Physics: <https://www.khanacademy.org/science/physics>
   2. More "advanced" general physics: <https://www.khanacademy.org/science/ap-physics-1> and <https://www.khanacademy.org/science/ap-physics-2>
3. MATLAB Basics:
   1. <https://ocw.mit.edu/courses/mathematics/18-s997-introduction-to-matlab-programming-fall-2011/index.htm>

**Level 2:**

1. Intermediate Math:
   1. Linear Algebra: <https://www.khanacademy.org/math/linear-algebra>
   2. Differential Equations: <https://www.khanacademy.org/math/differential-equations>
2. Intermediate Physics:
   1. Calculus based Mechanics at the college level: <https://ocw.mit.edu/courses/physics/8-012-physics-i-classical-mechanics-fall-2008/index.htm>
   2. E\&M: <https://ocw.mit.edu/courses/physics/8-02-physics-ii-electricity-and-magnetism-spring-2007/index.htm>
   3. Waves and vibrations: <https://ocw.mit.edu/courses/physics/8-03-physics-iii-spring-2003/index.htm>
3. Intro to Simulink: <https://ctms.engin.umich.edu/CTMS/index.php?example=Introduction&section=SimulinkModeling>

**Level 3:**

1. More rigorous math courses:
   1. Multivariable Calculus: <https://www.khanacademy.org/math/multivariable-calculus>
   2. Higher level linear algebra: <https://ocw.mit.edu/courses/mathematics/18-06-linear-algebra-spring-2010/index.htm>
   3. Higher level differential equations: <https://ocw.mit.edu/courses/mathematics/18-03-differential-equations-spring-2010/>
2. More rigorous physics:
   1. Mechanics 2: <https://ocw.mit.edu/courses/physics/8-223-classical-mechanics-ii-january-iap-2017/>
   2. Mechanics 3: <https://ocw.mit.edu/courses/physics/8-09-classical-mechanics-iii-fall-2014/>
3. Beginning Engineering:
   1. Electrical:
      1. Circuits: <https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-002-circuits-and-electronics-spring-2007/>
      2. Signals: <https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-003-signals-and-systems-fall-2011/>
   2. Mechanical:
      1. Beginning dynamics: <https://ocw.mit.edu/courses/mechanical-engineering/2-003sc-engineering-dynamics-fall-2011/syllabus/>
      2. More Dynamics and intro to control: <https://ocw.mit.edu/courses/mechanical-engineering/2-003j-dynamics-and-control-i-spring-2007/index.htm>

**Level 4:**

1. Helpful Math:
   1. Beginning Stats: <https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-041sc-probabilistic-systems-analysis-and-applied-probability-fall-2013/>
2. Signal Processing:
   1. Signals and systems: <https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-011-signals-systems-and-inference-spring-2018/syllabus/>
3. Control:
   1. Dynamics and control 2: <https://ocw.mit.edu/courses/mechanical-engineering/2-004-dynamics-and-control-ii-spring-2008/index.htm>
   2. More systems and control: <https://ocw.mit.edu/courses/mechanical-engineering/2-04a-systems-and-controls-spring-2013/index.htm>
   3. Feedback Control: <https://ocw.mit.edu/courses/aeronautics-and-astronautics/16-30-feedback-control-systems-fall-2010/index.htm>
   4. More intro control: <https://www.edx.org/course/introduction-control-system-design-first-mitx-6-302-0x?utm_source=OCW&utm_medium=CHP&utm_campaign=OCW>
   5. More state space intro: <https://www.edx.org/course/introduction-state-space-control-mitx-6-302-1x?utm_source=OCW&utm_medium=CHP&utm_campaign=OCW>
   6. Recommended Resources for this level in addition/ to help with the courses above, these will also help with some of the "higher" level stuff:
      1. katkimshow Intro to control: <https://www.youtube.com/playlist?list=PLmK1EnKxphikZ4mmCz2NccSnHZb7v1wV->
      2. Brian Douglas Control System Lectures: <https://www.youtube.com/playlist?list=PLUMWjy5jgHK3j74Z5Tq6Tso1fSfVWZC8L>
      3. Steve Brunton Control Bootcamp: <https://www.youtube.com/playlist?list=PLMrJAkhIeNNR20Mz-VpzgfQs5zrYi085m>

**Level 5:**

1. Optional Math:
   1. Complex Variable: <https://ocw.mit.edu/courses/mathematics/18-04-complex-variables-with-applications-fall-2003/>
   2. A course designed to help intuition: <https://ocw.mit.edu/courses/mathematics/18-098-street-fighting-mathematics-january-iap-2008/index.htm>
2. More rigorous practice in signals and systems:
   1. Graduate signals processing: <https://ocw.mit.edu/courses/mechanical-engineering/2-161-signal-processing-continuous-and-discrete-fall-2008/lecture-notes/>
3. Control:
   1. Higher level dynamics and control: <https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-241j-dynamic-systems-and-control-spring-2011/index.htm>
   2. Higher level feedback control: <https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-302-feedback-systems-spring-2007/calendar/>
   3. Slightly higher level control: <https://ocw.mit.edu/courses/mechanical-engineering/2-14-analysis-and-design-of-feedback-control-systems-spring-2014/index.htm>
   4. Multi-variable control systems: <https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-245-multivariable-control-systems-spring-2004/index.htm>

**Level 6:**

1. Optional Nonlinear Dynamics:
   1. Chaos: <https://ocw.mit.edu/courses/mathematics/18-353j-nonlinear-dynamics-i-chaos-fall-2012/index.htm>
   2. Continuum: <https://ocw.mit.edu/courses/mathematics/18-354j-nonlinear-dynamics-ii-continuum-systems-spring-2015/>
2. Non-Linear control:
   1. More theory based: <https://web.mit.edu/nsl/www/videos/lectures.html>
   2. More practice based: <https://www.youtube.com/watch?v=9xDZy5mE-3I&list=PLrxYXaxBXgRoqgaBlitaAA_sgVZ8V6Teg> (note, videos in english except introduction)
      1. Resources for these videos: <https://sites.google.com/a/g2.nctu.edu.tw/nonlinear-control-systems-2017-fall/course-materials>

**Level 7:**

1. More advanced, but optional, non-linear dynamics:
   1. Chaos: <https://ocw.mit.edu/courses/mathematics/18-385j-nonlinear-dynamics-and-chaos-fall-2014/index.htm>
   2. Waves: <https://ocw.mit.edu/courses/mechanical-engineering/2-034j-nonlinear-dynamics-and-waves-spring-2007/index.htm>
2. Control:
   1. Sliding mode: <https://www.youtube.com/watch?v=x9WxwM6Ebvo> (Note, this is the only videos or online materials I can find in a course-manner on sliding mode, please suggest more if you find them)
   2. Optimal and Robust control: <https://www.youtube.com/watch?v=z64cXTZKw4I&list=PLMLojHoA_QPmRiPotD_TnfdUkglTexuqm>\\

## Control eBook

* [calcmogul/controls-engineering-in-frc: Controls Engineering in the FIRST Robotics Competition: Graduate-level control theory for high schoolers.](https://github.com/calcmogul/controls-engineering-in-frc) License: CC-BY
* <https://github.com/calcmogul/control-theory-poster>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://irosyadi.gitbook.io/irosyadi/course/control-systems.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
