## Documentation Center |

The linear model used in Model Predictive Control Toolbox™ software for prediction and optimization is depicted in the following figure.

The model consists of:

A model of the

*plant*to be controlled, whose inputs are the manipulated variables, the measured disturbances, and the unmeasured disturbancesA model generating the unmeasured

*disturbances***Note**When defining a model predictive controller, you must specify a plant model. You do not need to specify a model generating the disturbances, as the controller setup assumes by default that unmeasured disturbances are generated by integrators driven by white noise (see Output Disturbance Model and`setindist`).

The model of the plant is a linear time-invariant system described by the equations

Model Predictive Control Toolbox software accepts plant models specified as LTI objects and identified linear models obtained from input/output data using System Identification Toolbox™, see Identify Plant from Data.

In the above equations, *d*(*k*)
collects state disturbances (*B _{d}*≠0)
and output disturbances (

The unmeasured disturbance *d*(*k*)
is modeled as the output of the linear time invariant system:

The system described by the above equations is driven by the
random Gaussian noise *n _{d}*(

In many practical applications, the model matrices *A*, *B*, *C*, *D* are
obtained by linearizing a nonlinear dynamical system, such as

*y* = *h*(*x*, *u*, *v*, *d*)

at some nominal value *x*=*x*_{0}, *u*=*u*_{0},* v*=*v*_{0}, *d*=*d*_{0}.
In these equations *x*´ denotes either the
time derivative (continuous time model) or the successor *x*(*k*+1)
(discrete time model). As an example, *x*_{0}, *u*_{0}, *v*_{0}, *d*_{0} may
be obtained by using `findop` on
a Simulink^{®} model describing the nonlinear dynamical equations,
and *A*, *B*, *C*, *D* by
using `linearize`. The linearized
model has the form:

The model matrices *A*, *B*, *C*, *D* are
readily obtained from the Jacobian matrices appearing in the equations
above.

The linearized dynamics are affected by the constant terms *F*=*f*(*x*_{0}, *u*_{0},* v*_{0}, *d*_{0})
and *H*=*h*(*x*_{0}, *u*_{0},* v*_{0},* d*_{0}).
For this reason the model predictive control algorithm internally
adds a measured disturbance *v*=1, so that *F* and *H* can
be embedded into *B _{v}* and

Nonzero offset values *d*_{0} for
unmeasured disturbances, while relevant for obtaining the linearized
model matrices, are not relevant for the model predictive control
problem setup. In fact, only *d*–*d*_{0} can
be estimated from output measurements.

Was this topic helpful?