Course Overview
Control Algorithms - From PID to Model Predictive Control
Course Overview
Control algorithms are the brain behind autonomous systems, robots, drones, and industrial processes. This course takes you from classical PID control to advanced Model Predictive Control (MPC), giving you the tools to design, tune, and implement controllers for real-world applications.
Learning Outcomes
By the end of this course, you will be able to:
- ✅ Understand control system fundamentals and stability analysis
- ✅ Design and tune PID controllers for various systems
- ✅ Implement state-space control methods
- ✅ Apply Model Predictive Control (MPC) to complex systems
- ✅ Simulate and validate controllers in Python/MATLAB
- ✅ Implement control algorithms on real hardware
Prerequisites
- Basic calculus and linear algebra
- Python programming fundamentals
- Understanding of differential equations (helpful)
Course Structure
📚 Chapters
| Chapter | Topic | Description |
|---|---|---|
| 1 | Introduction to Control Systems | Open-loop vs closed-loop, stability, transfer functions |
| 2 | PID Control Fundamentals | P, PI, PD, PID controllers and their characteristics |
| 3 | PID Tuning Methods | Ziegler-Nichols, Cohen-Coon, auto-tuning techniques |
| 4 | State-Space Representation | Modern control theory, state variables, controllability |
| 5 | Full State Feedback Control | Pole placement, LQR optimal control |
| 6 | Model Predictive Control (MPC) | Fundamentals, constraints, optimization |
| 7 | Advanced MPC Techniques | Nonlinear MPC, robust MPC, adaptive MPC |
| 8 | Real-World Applications | Drone control, robot arms, autonomous vehicles |
🧪 Hands-On Labs
| Lab | Topic | Skills |
|---|---|---|
| 1 | Control System Simulation Setup | Python, scipy, control library |
| 2 | PID Controller Implementation | Discrete PID, anti-windup |
| 3 | PID Tuning on a DC Motor | Real-world tuning techniques |
| 4 | State-Space Controller Design | Observer design, pole placement |
| 5 | LQR Controller Implementation | Optimal control, cost function design |
| 6 | MPC for a Linear System | Quadratic programming, constraints |
| 7 | MPC for Autonomous Driving | Path tracking, obstacle avoidance |
| 8 | Final Project: Drone Altitude Control | Complete control system design |
Tools & Software
- Python with numpy, scipy, control, cvxpy
- MATLAB/Simulink (optional)
- Simulation environments (custom or Gazebo)
Control System Diagram
graph LR
R[Reference] --> S((+))
S --> C[Controller]
C --> P[Plant/System]
P --> Y[Output]
Y --> M[Sensor]
M --> S
style C fill:#C9B59C,color:#fff
style P fill:#A89478,color:#fff
Why Study Control Algorithms?
Control algorithms are essential for:
- 🤖 Robotics: Motion control, trajectory tracking
- 🚁 Drones: Stabilization, autonomous flight
- 🚗 Autonomous Vehicles: Lane keeping, adaptive cruise control
- 🏭 Industrial Automation: Process control, quality assurance
- 🎮 Gaming: Physics simulations, AI behavior
Schedule
| Week | Content |
|---|---|
| 1-2 | Control fundamentals + PID basics |
| 3-4 | PID tuning + State-space intro |
| 5-6 | State feedback + LQR |
| 7-8 | MPC fundamentals + advanced MPC |
| 9-10 | Applications + Final project |
Ready to master control algorithms? Start with Chapter 1! 🎯
Course Information
- Instructor: Dr. Lahcen Boulbalah
- Term: 2024-2025
- Chapters: 8
- Labs: 8
Chapters
Introduction to Control Systems
Fundamentals of control systems, feedback, and stability
PID Control Fundamentals
Understanding proportional, integral, and derivative control
PID Tuning Methods
Systematic approaches to tuning PID controllers
State-Space Representation
Modern control theory and state-space models
Full State Feedback Control
Pole placement and LQR optimal control
Model Predictive Control (MPC)
Fundamentals of MPC, constraints, and optimization
Advanced MPC Techniques
Nonlinear MPC, robust MPC, and adaptive methods
Real-World Applications
Applying control algorithms to drones, robots, and vehicles