16642: Manipulation, Estimation, and Control

Robotics Institute, Carnegie Mellon University, Fall 2024

Last update: 10-22-2024

More details can be found in course canvas.

Course Introduction

Overview:

This course provides an overview of the current techniques that allow robots to move around, interact with the world, and keep track of where they are. The kinematics and dynamics of electromechanical systems will be covered with a particular focus on their application to robotic arms. Some basic principles of robot control will be discussed, ranging from independent-joint PID tracking to coupled computed torque approaches. State estimation techniques including the Kalman filter will be covered, especially as they are used in solving common problems faced in robotics applications.

Textbook:

There is no assigned textbook for this class. However, there are some books that you might find useful as reference material for various parts of the class:

Prerequisite knowledge:

There are no formal prerequisites for this class. Informally, a year of calculus, a year of programming, and familiarity with matrix algebra will greatly increase your chances of success in this class. Also helpful, but not required, is a course on classical mechanics.

Course Activities and Grading

  
Problem sets (4)60%
Exam 120%
Exam 220%

Schedule

Time: Mondays and Wednesdays 9:30am-10:50am

DateFormatTopics
08/26Lecture 0Overview and Matrix Algebra Refresher
08/28Lecture 1State Space Systems: State-space models; numerical integration
09/02Labor DayNo Class
09/04Lecture 2State Space Systems: MATLAB tutorial; equilibrium points; stability;
09/09Lecture 3Linear State Feedback: Stability analysis; linearization;
09/11Lecture 4Linear State Feedback: Controllability; linear-state feedback; eigenvalue placement
09/16Lecture 5Linear State Feedback: LQR; tracking controllers; state observer
09/18Lecture 6Classical Control: LTI system; transfer functions
09/23Lecture 7Classical Control: State-space realizations; block diagrams; stability
09/25Lecture 8Classical Control: Step response for second-order systems; Design of poles and zeros
09/30Lecture 9PID: Root locus; PID control; PID tuning
10/02Lecture 10Estimation Basics: Intuition; Discrete-time systems; Multivariate Gaussian distribution
10/07Lecture 11Review 1
10/09Exam 1 
10/14Fall BreakNo Class
10/16Fall BreakNo Class
10/21Lecture 12Kalman Filter: Kalman filter; Extended Kalman filter
10/23Lecture 13Bayes Filter and Particle Filter: Conditional probability; Bayes filter; Particle filter
10/28Lecture 14SLAM: Formulation and examples
10/30Lecture 15Foundations of Manipulation: Manipulator modeling; task, joint, and configuration space; rotation matrices
11/04Lecture 16Homogeneous Transformation: Rotation transformation; other rotation representations; basic displacements; composing displacements
11/06Lecture 17Forward Kinematics: Using geometry and trigonometry on simple examples; Denavit-Hartenberg convention; DH Example
11/11Lecture 18Inverse Kinematics: Setting up the problem; kinematic decoupling; numerical approach
11/13Lecture 19Velocity Kinematics: Angular velocity; building Jacobians in SE(3); examples
11/18Lecture 20Velocity Kinematics: Tool velocity; analytical Jacobian; singularities; inverse velocity
11/20Lecture 21Euler Lagrange Dynamics: EL equations; planar example; Inertia tensor and kinetic energy; n-link manipulator cookbook method
11/25Lecture 22Robotic Manipulator Control: Independent PID control, gravity compensation, inverse dynamics control
11/27Thanksgiving BreakNo Class
12/02Lecture 23Review 2
12/04Exam 2