Feedback Control
The course provides an extensive foundation in control engineering, covering both theoretical concepts and practical applications.
It is for second-year undergraduate students and anyone interested in understanding the principles of automatic controls.
Teaching semester: Spring 2024
Language of instruction: Italian and English
Course coordinator
Andrea Munafo
Lecturer(s)
Andrea Munafo
How to use
Each notebook is thought to be independent from every other, so it is possible to run them in any order you prefer.
Install
The notebooks run with python 3.9 and use the following python libraries: - python control - numpy - pandas - matplotlib
You can optionally install ‘sympy’ to do symbolic computations in Python.
Notebook 01_Getting_started_with_Python_and_Jupyter_Notebook.ipynb
provides a short introduction on how to set up an anaconda environment to get you started.
To use all notebooks you might need to install the feedback control package. You can do this entering this into your terminal:
pip install -e '.[dev]'
This is the recommended way to make a Python package importable from anywhere in your current environment:
-e
– short for “editable”, lets you immediately use changes made to your package during development..
– refers to the current directory.[dev]
– includes “development” requirements: other packages that your notebooks use solely for documentation or testing.
Acknowledgements and references
- Relevant textbooks used to prepare these notebooks are reported in
00_Syllabus.ipynb
.
Additional resources
- Control systems academy
- Process Dynamics and Control in Python
- Karl J. Åström and Richard M. Murray, Feedback Systems: An Introduction for Scientists and Engineers
- Lecture series on Control Engineering by Prof. Madan Gopal
- Designing Lead and Lag Compensators in Matlab and Simulink
- Control Systems Basics