Function Reference | ![]() ![]() |
Form LQG regulator given state-feedback gain and Kalman estimator
Syntax
rlqg = lqgreg(kest,k) rlqg = lqgreg(kest,k,'current') % discrete-time only rlqg = lqgreg(kest,k,controls)
Description
lqgreg
forms the LQG regulator by connecting the Kalman estimator designed with kalman
and the optimal state-feedback gain designed with lqr
, dlqr
, or lqry
. The LQG regulator minimizes some quadratic cost function that trades off regulation performance and control effort. This regulator is dynamic and relies on noisy output measurements to generate the regulating commands.
In continuous time, the LQG regulator generates the commands
where is the Kalman state estimate. The regulator state-space equations are
where is the vector of plant output measurements (see
kalman
for background and notation). The diagram below shows this dynamic regulator in relation to the plant.
In discrete time, you can form the LQG regulator using either the prediction of
based on measurements up to
, or the current state estimate
based on all available measurements including
. While the regulator
is always well-defined, the current regulator
is causal only when is invertible (see
kalman
for the notation). In addition, practical implementations of the current regulator should allow for the processing time required to compute once the measurements
become available (this amounts to a time delay in the feedback loop).
Usage
rlqg = lqgreg(kest,k)
returns the LQG regulator rlqg
(a state-space model) given the Kalman estimator kest
and the state-feedback gain matrix k
. The same function handles both continuous- and discrete-time cases. Use consistent tools to design kest
and k
:
lqr
or lqry
and kalman
.
dlqr
or lqry
and kalman
.
lqrd
and kalmd
.
In discrete time, lqgreg
produces the regulator
by default (see "Description"). To form the "current" LQG regulator
instead, use the syntax
This syntax is meaningful only for discrete-time problems.
rlqg = lqgreg(kest,k,controls)
handles estimators that have access to additional known plant inputs . The index vector
controls
then specifies which estimator inputs are the controls , and the resulting LQG regulator
rlqg
has and
as inputs (see figure below).
Example
See the example LQG Regulation.
See Also
kalman
Kalman estimator design
kalmd
Discrete Kalman estimator for continuous plant
lqr
, dlqr
State-feedback LQ regulator
lqrd
Discrete LQ regulator for continuous plant
lqry
LQ regulator with output weighting
reg
Form regulator given state-feedback and estimator
gains
![]() | lft | lqr | ![]() |