Model Predictive Control Toolbox™ provides functions, an app, and Simulink® blocks for designing and simulating model predictive controllers (MPCs). The toolbox lets you specify plant and disturbance models, horizons, constraints, and weights. By running closed-loop simulations, you can evaluate controller performance.
You can adjust the behavior of the controller by varying its weights and constraints at run time. To control a nonlinear plant, you can implement adaptive and gain-scheduled MPCs. For applications with fast sample rates, you can generate an explicit model predictive controller from a regular controller or implement an approximate solution.
For rapid prototyping and embedded system implementation, the toolbox supports automatic C-code and IEC 61131-3 Structured Text generation.
Design a model predictive controller for a continuous stirred-tank reactor (CSTR) using MPC Designer.
Design and simulate a model predictive controller for a Simulink model using MPC Designer.
Design and simulate a model predictive controller at the MATLAB® command line.
Create and simulate a model predictive controller for a SISO plant.
Create and simulate a model predictive controller for a plant with multiple inputs and a single output.
Create and simulate a model predictive controller for a MIMO plant.
Model predictive controllers use plant, disturbance, and noise models for prediction and state estimation.
MPC controllers use their current state as the basis for predictions. In general, the controller states are unmeasured and must be estimated.
Model predictive controllers compute optimal manipulated variable control moves by solving a quadratic program at each control interval.
The model predictive controller QP solver converts an MPC optimization problem to a general form quadratic programming problem.