TuningGoal.Poles class
Package: TuningGoal
Constraint on control system dynamics
Description
Use TuningGoal.Poles
to constrain the closed-loop
dynamics of a control system or of specific feedback loops within
the control system. You can use this tuning goal for control system
tuning with tuning commands, such as systune
or looptune
.
A TuningGoal.Poles
goal can ensure a minimum decay
rate or minimum damping of the poles of the control system or loop.
It can also eliminate fast dynamics in the tuned system.
Construction
creates
a default template for constraining the closed-loop pole locations.
The minimum decay rate, minimum damping constant, and maximum natural
frequency define a region of the complex plane in which poles of the
component must lie. Set Req
= TuningGoal.Poles(mindecay
,mindamping
,maxfreq
)mindecay
= 0, mindamping
=
0, or maxfreq
= Inf
to skip
any of the three constraints.
constrains
the poles of the sensitivity function measured at a specified location
in the control system. (See Req
= TuningGoal.Poles(location
,mindecay
,mindamping
,maxfreq
)getSensitivity
(Simulink Control Design)
for information about sensitivity functions.) Use this syntax to narrow
the scope of the tuning goal to a particular feedback loop.
If you want to constrain the poles of the system with one or
more feedback loops opened, set the Openings
property.
To limit the enforcement of this tuning goal to poles having natural
frequency within a specified frequency range, set the Focus
property.
(See Properties.)
Input Arguments
|
Minimum decay rate of poles of tunable component, specified as a nonnegative scalar value in the frequency units of the control system model you are tuning. When you tune the control system using this tuning goal, the closed-loop poles of the control system are constrained to satisfy:
Set |
|
Desired minimum damping ratio of the closed-loop poles, specified as a value between 0 and 1. Poles that depend on the tunable parameters are constrained
to satisfy Set |
|
Desired maximum natural frequency of closed-loop poles, specified as a scalar value in the frequency units of the control system model you are tuning. Poles are constrained to satisfy Set |
|
Location at which poles are assessed, specified as a character
vector or cell array of character vectors that identify one or more
locations in the control system to tune. When you use this input,
the tuning goal constrains the poles of the sensitivity function measured
at this location. (See
If |
Properties
|
Minimum decay rate of closed-loop poles of tunable component,
specified as a positive scalar value in the frequency units of the
control system you are tuning. The initial value of this property
is set by the When you tune the control system using this tuning goal, closed-loop
poles are constrained to satisfy You can use dot notation to change the value of this property
after you create the tuning goal. For example, suppose Req.MinDecay = 0.001; Default: 0 |
|
Desired minimum damping ratio of closed-loop poles, specified
as a value between 0 and 1. The initial value of this property is
set by the Poles that depend on the tunable parameters are constrained
to satisfy Default: 0 |
|
Desired maximum natural frequency of closed-poles, specified
as a scalar value in the frequency units of the control system model
you are tuning. The initial value of this property is set by the Poles of the block are constrained to satisfy You can use dot notation to change the value of this property
after you create the tuning goal. For example, suppose Req.MaxFrequency = 1000; Default: |
|
Frequency band in which tuning goal is enforced, specified as
a row vector of the form Set the Req.Focus = [1,100]; Default: |
|
Location at which poles are assessed, specified as a cell array
of character vectors that identify one or more analysis points in
the control system to tune. For example, if The initial value of the |
|
Models to which the tuning goal applies, specified as a vector of indices. Use the Req.Models = 2:4; When Default: |
|
Feedback loops to open when evaluating the tuning goal, specified as a cell array of character vectors that identify loop-opening locations. The tuning goal is evaluated against the open-loop configuration created by opening feedback loops at the locations you identify. If you are using the tuning goal to tune a Simulink model
of a control system, then If you are using the tuning goal to tune a generalized state-space
( For example, if Default: |
|
Name of the tuning goal, specified as a character vector. For example, if Req.Name = 'LoopReq'; Default: |
Examples
Tips
TuningGoal.Poles
restricts the closed-loop dynamics of the tuned control system. To constrain the dynamics or ensure the stability of a single tunable component, useTuningGoal.ControllerPoles
.
Algorithms
When you tune a control system using a TuningGoal
,
the software converts the tuning goal into a normalized scalar value f(x). x is
the vector of free (tunable) parameters in the control system. The
software then adjusts the parameter values to minimize f(x),
or to drive f(x) below 1 if
the tuning goal is a hard constraint.
For TuningGoal.Poles
, f(x)
reflects the relative satisfaction or violation of the goal. For example,
if you attempt to constrain the closed-loop poles of a feedback loop
to a minimum damping of ζ = 0.5, then:
f(x) = 1 means the smallest damping among the constrained poles is ζ = 0.5 exactly.
f(x) = 1.1 means the smallest damping ζ = 0.5/1.1 = 0.45, roughly 10% less than the target.
f(x) = 0.9 means the smallest damping ζ = 0.5/0.9 = 0.55, roughly 10% better than the target.
Version History
Introduced in R2016aSee Also
looptune
| systune
| looptune
(for slTuner)
(Simulink Control Design) | systune (for slTuner)
(Simulink Control Design) | viewGoal
| evalGoal
| tunableTF
| tunableSS
| TuningGoal.ControllerPoles