H_{∞} tuning of fixedstructure controllers
CL = hinfstruct(CL0)
[CL,gamma,info]
= hinfstruct(CL0)
[CL,gamma,info]
= hinfstruct(CL0,options)
[C,gamma,info]
= hinfstruct(P,C0,options)
tunes
the free parameters of the tunable CL
= hinfstruct(CL0
)genss
model CL0
.
This tuning minimizes the H_{∞} norm
of the closedloop transfer function modeled by CL0
.
The model CL0
represents a closedloop control
system that includes tunable components such as controllers or filters.
CL0
can also include weighting functions that
capture design requirements.
[
returns CL
,gamma
,info
]
= hinfstruct(CL0
)gamma
(the
minimum H_{∞} norm)
and a data structure info
with additional information
about each optimization run.
[
allows
you to specify additional options for the optimizer using CL
,gamma
,info
]
= hinfstruct(CL0
,options
)hinfstructOptions
.
[
tunes
the parametric controller blocks C
,gamma
,info
]
= hinfstruct(P
,C0
,options
)C0
. This tuning
minimizes the H_{∞} norm
of the closedloop system CL0 = lft(P,C0)
.
To use this syntax, express your control system and design requirements
as a Standard Form model, as in the following illustration:
P
is a numeric LTI model that includes
the fixed elements of the control architecture. P
can
also include weighting functions that capture design requirements. C0
can
be a single tunable component (for example, a Control
Design Block (Control System Toolbox) or a genss
model)
or a cell array of multiple tunable components. C
is
a parametric model or array of parametric models of the same types
as C0
.

Generalized statespace (


Numeric LTI model representing the fixed elements of the control
architecture to be tuned.


Single tunable component or cell array of tunable components of the control structure. Each entry in For more information and examples of creating tunable models, see Models with Tunable Coefficients (Control System Toolbox) in the Control System Toolbox™ User's Guide.


Set of options for 

Tuned version of the generalized statespace ( The To access the tuned parameter values, use 

Tuned versions of the parametric models When When 

Best achieved value for the closedloop H_{∞} norm. In some cases, 

Data structure array containing results from each optimization
run. The fields of

hinfstruct
is related to hinfsyn
, which also uses H_{∞} techniques
to design a controller for a MIMO plant. However, unlike hinfstruct
, hinfsyn
imposes
no restriction on the structure and order of the controller. For that
reason, hinfsyn
always returns a smaller gamma
than hinfstruct
.
You can therefore use hinfsyn
to obtain a lower
bound on the best achievable performance.
Using hinfstruct
requires some
familiarity with H_{∞} techniques.
It requires expressing your design requirements as frequencyweighting
functions on plant inputs and outputs, as described in Formulating Design Requirements as HInfinity Constraints.
For a simpler approach to fixedstructure tuning, use systune
or looptune
.
hinfstruct
uses specialized nonsmooth optimization
techniques to enforce closedloop stability and minimize the H_{∞} norm
as a function of the tunable parameters. These techniques are based
on the work in [1].
hinfstruct
computes the H_{∞}
norm using the algorithm of [2] and structurepreserving eigensolvers from the SLICOT library. For more information about the
SLICOT library, see http://slicot.org.
[1] P. Apkarian and D. Noll, "Nonsmooth Hinfinity Synthesis," IEEE Transactions on Automatic Control, Vol. 51, Number 1, 2006, pp. 7186.
[2] Bruisma, N.A. and M. Steinbuch, "A Fast Algorithm to Compute the H_{∞}Norm of a Transfer Function Matrix," System Control Letters, 14 (1990), pp. 287293.