Control and estimation

This is where the stack stops describing the arm and starts commanding it. The module has no formulas yet, on purpose: they will arrive with the controllers and the estimator, each with a numerical check, and neither is written yet. Until then, this page says what will be here and where to learn it in the meantime.

reading list · 10 sources · formulas and checks arrive with the code

What will be here

  1. One joint first

    Feedback control of the running example's pendulum: proportional and derivative terms, then a feedforward term from the model, each checked in MuJoCo before anything moves on the bench.[1][2]

  2. Then the arm

    Computed-torque control, which combines an approximate dynamics model of the arm with feedback that corrects for the model's errors: the better the model, the less the feedback has to do.[1]

  3. Estimating what is not measured

    A Kalman filter for joint angle and speed from encoder counts. The pendulum's model and a measured noise level give the filter something to be checked against.[3][4]

  4. The same rules as everywhere else

    Each formula will arrive with a numerical check, in simulation first and on the hardware once there is hardware, and with its sources marked read, listed or derived. Nothing appears here before its check.

Watch

Read

Sources

Numbered in order of first use on this page. read: checked against the claim. listed: exists and covers the topic, wording not checked. derived: worked out here and checked numerically.

  1. [1]

    Modern Robotics — Mechanics, Planning, and Control, Chapter 11: Robot Control (opens in a new tab)

    Kevin M. Lynch, Frank C. Park · Cambridge University Press, 2017. Free preprint for personal use at the book site

    Ch. 11 (p. 405): §11.1 Control System Overview (p. 406); §11.2.2 Linear Error Dynamics (p. 408); §11.4.1 Motion Control of a Single Joint (p. 423); §11.4.2 Motion Control of a Multi-joint Robot (p. 431)

    Chapter and section titles from the preprint’s table of contents. The book’s Chapter 1 preview of Chapter 11 describes controllers “such as computed torque control, that combine approximate dynamic modeling with feedback control.” The body of §11.4 was not read for this page.

    read
  2. [2]

    Understanding PID Control (MATLAB Tech Talks, 7 videos) (opens in a new tab)

    MathWorks

    Seven videos of 10 to 14 minutes: What Is PID Control?; Anti-windup for PID control; Expanding Beyond a Simple Derivative; A PID Tuning Guide; 3 Ways to Build a Model; Manual and Automatic Tuning Methods; Important PID Concepts. Titles read from the series page; videos not watched for this page.

    read
  3. [3]

    Feedback Systems: An Introduction for Scientists and Engineers, 2nd edition (opens in a new tab)

    Karl Johan Åström, Richard M. Murray · Princeton University Press, 2021. ISBN 978-0-691-19398-4. Free online with the publisher’s permission (the authors’ July 2020 PDFs)

    Ch. 7 State Feedback; Ch. 8 Output Feedback (observability, state estimation, Kalman filtering); Ch. 11 PID Control

    The complete book and its chapters are available as PDFs from the authors’ page, with the publisher’s permission; the page notes the site has moved to fbsbook.org. Chapter titles as listed there.

    read
  4. [4]

    Kalman and Bayesian Filters in Python (opens in a new tab)

    Roger R. Labbe Jr. · GitHub (Jupyter notebooks; text CC BY 4.0, code MIT)

    A free book in Jupyter notebooks that focuses on building intuition and experience rather than formal proofs, from the g-h filter through one-dimensional and multivariate Kalman filters to extended and unscented filters and particle filters; all exercises include solutions.

    read
  5. [5]

    Modern Robotics, Chapter 11.1: Control System Overview (opens in a new tab)

    Kevin M. Lynch · Northwestern University, Modern Robotics video series (YouTube)

    The book’s overview video for chapter 11, Robot Control. Linked from the book site’s chapter 11 video list.

    listed
  6. [6]

    Modern Robotics, Chapter 11.2.2: Linear Error Dynamics (opens in a new tab)

    Kevin M. Lynch · Northwestern University, Modern Robotics video series (YouTube)

    The book’s video on linear error dynamics (§11.2.2). Linked from the book site’s chapter 11 video list.

    listed
  7. [7]

    Modern Robotics, Chapter 11.2.2.2: Second-Order Error Dynamics (opens in a new tab)

    Kevin M. Lynch · Northwestern University, Modern Robotics video series (YouTube)

    The book’s video on second-order error dynamics (§11.2.2.2). Linked from the book site’s chapter 11 video list.

    listed
  8. [8]

    Modern Robotics, Chapter 11.4: Motion Control with Torque or Force Inputs (Part 1 of 3) (opens in a new tab)

    Kevin M. Lynch · Northwestern University, Modern Robotics video series (YouTube)

    The first of three videos on §11.4, motion control with torque or force inputs. Linked from the book site’s chapter 11 video list.

    listed
  9. [9]

    Understanding Kalman Filters (MATLAB Tech Talks, 7 videos) (opens in a new tab)

    MathWorks

    Seven videos of 5 to 9 minutes: Why Use Kalman Filters?; State Observers; An Optimal State Estimator; An Optimal State Estimator Algorithm; Nonlinear State Estimators; and two on using Kalman filters in Simulink. Titles read from the series page; videos not watched for this page.

    read
  10. [10]

    Underactuated Robotics, Chapter 2: The Simple Pendulum (opens in a new tab)

    Russ Tedrake · MIT course notes, Spring 2024 (online)

    Course notes on the pendulum’s dynamics, with damping and a control torque, the torque-limited pendulum, and energy-shaping feedback control.

    read