Package: TuningGoal
Constraint on controller dynamics for control system tuning
Use TuningGoal.ControllerPoles
to constrain
the dynamics of a tunable component in a control system model. Use
this tuning goal for constraining the dynamics of tuned blocks identified
in a slTuner
interface to a Simulink^{®} model.
If you are tuning a genss
model of a control
system, use it to constrain tunable elements such as tunableTF
or tunableSS
.
The TuningGoal.ControllerPoles
requirement lets you
control the minimum decay rate, minimum damping, and maximum natural
frequency of the poles of the tunable element, ensuring that the controller
is free of fast or resonant dynamics. The tuning goal can also ensure
stability of the tuned value of the tunable element.
After you create a requirement object, you can further configure the tuning goal by setting Properties of the object.
creates
a tuning goal that constrains the dynamics of a tunable component
of a control system. 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. A nonnegative minimum decay
ensures stability of the tuned poles. The tuning goal applies to all
poles in the block except fixed integrators, such as the I term
of a PID controller.Req
= TuningGoal.ControllerPoles(blockID
,mindecay
,mindamping
,maxfreq
)

Tunable component to constrain, specified as a character vector.


Minimum decay rate of poles of tunable component, specified as a scalar value in the frequency units of the control system model you are tuning. Specify When you tune the control system using this tuning goal, all poles of the tunable component are constrained to satisfy:
Default: 0 

Desired minimum damping ratio of poles of the tunable block, specified as a value between 0 and 1. Poles of the block that depend on the tunable parameters are
constrained to satisfy Default: 0 

Desired maximum natural frequency of poles of the tunable block, specified as a scalar value in the units of the control system model you are tuning. Poles of the block are constrained to satisfy Default: 

Name of tunable component to constrain, specified as a character
vector. The 

Minimum decay rate of poles of tunable component, specified
as a 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, all
poles of the tunable component 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 poles of the tunable block,
specified as a value between 0 and 1. The initial value of this property
is set by the Poles of the block that depend on the tunable parameters are
constrained to satisfy Default: 0 

Desired maximum natural frequency of poles of the tunable block,
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: 

Name of the tuning goal, specified as a character vector. For example, if Req.Name = 'LoopReq'; Default: 
TuningGoal.ControllerPoles
restricts
the dynamics of a single tunable component of the control system.
To ensure the stability or restrict the overall dynamics of the tuned
control system, use TuningGoal.Poles
.
When you use a TuningGoal
object to specify
a tuning goal, 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.ControllerPoles
, f(x)
reflects the relative satisfaction or violation of the goal. For example,
if you attempt to constrain the pole of a tuned block to a minimum
damping of ζ = 0.5, then:
f(x) = 1 means the damping of the pole is ζ = 0.5 exactly.
f(x) = 1.1 means the damping is ζ = 0.5/1.1 = 0.45, roughly 10% less than the target.
f(x) = 0.9 means the damping is ζ = 0.5/0.9 = 0.55, roughly 10% better than the target.
TuningGoal.Poles
 evalGoal
 looptune
 looptune (for slTuner)
 systune
 systune
(for slTuner)
 tunableSS
 tunableTF
 viewGoal