Introduction to Feedback Control Using Design Studies

Randal W. Beard, Timothy W. McLain Cammy Peterson Marc Killpack

Hardcopy available on Amazon

PDF Version of Book - A PDF version of the book is available at this link. - When typos are found, they will be fixed and the most recent version of the book will be posted here. - Please send typos and other suggestions to beard@byu.edu.

LECTURE MATERIAL

(Under construction) The following lecture materials are included as a resource for instructors. The slides closely follow the book. We welcome suggestions on how these slides might be improved.

Chapter PDF Slides Powerpoint Last Modified
Chapter 1 - Introduction chapter1.pdf chapter1.pptx Sept 2019
Chapter 2 - Kinetic Energy chapter2.pdf chapter2.pptx Sept 2021
Chapter 3 - Euler Lagrange chapter3.pdf chapter3.pptx Sept 2021
Equations of Motion + Physics Engine eom.pdf eom.pptx Jan 2023
Chapter 4 - Linearization chapter4.pdf chapter4.pptx Sept 2021
Chapter 5 - Transfer Function Models chapter5.pdf chapter5.pptx Jan 2023
Chapter 6 - State Space Models chapter6.pdf chapter6.pptx Jan 2023
Chapter 7 - Second Order Systems chapter7.pdf chapter7.pptx Jan 2023
Chapter 8 - Second Order Design chapter8.pdf chapter8.pptx Jan 2023
Chapter 9 - Integrators chapter9.pdf chapter9.pptx Feb 2023
Chapter 10 - Digital PID chapter10.pdf chapter10.pptx Feb 2023
Chapter 11 - Full State Feedback chapter11.pdf chapter11.pptx Feb 2023
Chapter 12 - Full State with Integrators chapter12.pdf chapter12.pptx Feb 2023
Chapter 13 - Observers chapter13.pdf chapter13.pptx March 2023
Chapter 14 - Disturbance Observers chapter14.pdf chapter14.pptx March 2023
Chapter 15 - Frequency Response chapter15.pdf chapter15.pptx March 2023
Chapter 16 - Frequency Specifications chapter16.pdf chapter16.pptx March 2023
Chapter 17 - Robustness Margins chapter17.pdf chapter17.pptx April 2023
Chapter 18 - Compensator Design chapter18.pdf chapter18.pptx Nov 2021

Homework Solutions

This Gitlab account contains complete python, matlab, and simulink solutions to the three design problems presented in the book. We will be actively maintaining the Python solutions.

Hummingbird Lab

The lab description and assignments are described in the hummingbird lab manual, which can be accessed below. During Winter 2023, the manual will be under construction and will be updated frequently. You should re-download the manual before doing each lab.

PDF Lab Manual

Template files for the hummingbird simulation are contained in the GitHub directory "_hummingbird_sim."

Template files for the hummingbird hardware lab are contained in the GitHub directory "_hummingbird_lab."

Prerequisites

You will need to install a version of python 3 on your computer. Download the latest version of python from https://www.python.org.

You will also want to install an IDE. We recommend either:

Python packages

Install the following python packages:

  • numpy
  • slipy
  • matplotlib
  • control
  • pyqtgraph
  • pyqt6
  • pyopengl

In linux or macos, you can install a python package using the command

pip3 install numpy

If you are using pycharm, open Settings>Project:python>Python Interpreter. Make sure that the latest python interpreter is selected at the top, and then click "+" do add a package and search for the needed package. For example, my system is set up as shown below.

Alt text

Alternatively, you may use this requirements file to download all the necessary dependencies: requirements.txt

To install these dependencies, simply use the command:

pip3 install -r requirements.txt

Jupyter Notebooks

The Jupyter notebooks in this repository were developed by Dr. Robert Leishman at Air Force Institute of Technology.

They are designed to be run in google colab.