Jan 4th 2016

Introduction to Feedback Control Theory (edX)

Created by:Delivered by:

Learn the theory and practice of controller design and build an electronic propeller-levitated arm in the Arduino platform.

Have you wondered about the design strategies behind temperature controllers, quad-copters, or self-balancing scooters? Are you interested in robotics, and have heard of, or tried, “line-following" or “PID control” and want to understand more?

Feedback control is a remarkably pervasive engineering principle. Feedback control uses sensor data (e.g. brightness, temperature, or velocity) to adjust or correct actuation (e.g. steering angle, motor acceleration, or heater output), and you use it all the time, like when you steer a bicycle, catch a ball, or stand upright. But even though applications of feedback are very common, the subject is an uncommonly compelling example of mathematical theory guiding practical design. In this engineering course we will introduce you to the theory and practice of feedback control and provide a glimpse into this rich and beautiful subject.

Each week we will begin with a mathematical description of a fundamental feedback concept, combined with on-line exercises to test your understanding, and will finish with you designing, implementing, measuring, and exchanging video of your own propellor-levitated arm feedback system. You will not need a background in calculus or software engineering to succeed in this class but you should be comfortable with algebra, mechanical forces, and modifying mathematical formulas in short computer programs.


As this is a lab course, in order to participate, learners will need to collect a set of items to build the propeller arm. Learners will be responsible for purchasing items themselves and should have the items prior to the start of the course. We have created shopping lists via Amazon and Digikey listing all necessary items for simple purchase, but many of these items should be available through other vendors, or found locally.

What you'll learn:

- How to set up a control system and understand and optimize its performance (the Arduino-controlled propeller-levitated arm)

- Modeling Feedback Control systems Using Difference Equations

- What unstable systems are like, practically and mathematically

- How to measure control system performance

- How proportional, delta (aka derivative) and summation (aka integral) feedback reduce tracking errors and increase disturbance rejection