TuningGoal.StepRejection
Step disturbance rejection requirement for control system tuning
Description
Use TuningGoal.StepRejection
to specify how
a step disturbance injected at a specified location in your control system affects the
signal at a specified output location. Use this tuning goal with control system tuning
commands such as systune
or looptune
.
You can specify the desired response in time-domain terms of peak value, settling time, and damping ratio. Alternatively, you can specify the response as a stable reference model having DC-gain. In that case, the tuning goal is to reject the disturbance as well as or better than the reference model.
To specify disturbance rejection in terms of a frequency-domain attenuation profile,
use TuningGoal.Rejection
.
Creation
Syntax
Description
creates a tuning goal that constrains how a step disturbance injected at a
location Req
= TuningGoal.StepRejection(inputname
,outputname
,refsys
)inputname
affects the response at
outputname
. The tuning goal is that the disturbance
be rejected as well as or better than the reference system.
inputname
and outputname
can
describe a SISO or MIMO response of your control system. For MIMO responses,
the number of inputs must equal the number of outputs.
specifies an oscillation-free response in terms of a peak value and a
settling time. Req
= TuningGoal.StepRejection(inputname
,outputname
,peak
,tSettle
)
allows for damped oscillations with a damping ratio of at least
Req
= TuningGoal.StepRejection(inputname
,outputname
,peak
,tSettle
,zeta
)zeta
.
Input Arguments
Properties
Examples
Tips
This tuning goal imposes an implicit stability constraint on the closed-loop transfer function from
Input
toOutput
, evaluated with loops opened at the points identified inOpenings
. The dynamics affected by this implicit constraint are the stabilized dynamics for this tuning goal. TheMinDecay
andMaxRadius
options ofsystuneOptions
control the bounds on these implicitly constrained dynamics. If the optimization fails to meet the default bounds, or if the default bounds conflict with other requirements, usesystuneOptions
to change these defaults.
Algorithms
When you tune a control system using a TuningGoal
, the software
converts the tuning goal into a normalized scalar value
f(x), where 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.
TuningGoal.StepRejection
aims to keep the gain from disturbance to
output below the gain of the reference model. The scalar value of the tuning goal
f(x) is given by:
or its discrete-time equivalent. Here,
Tdy(s,x)
is the closed-loop transfer function from Input
to
Output
, and denotes the H∞ norm
(see norm
). WF is a
frequency weighting function derived from the step-rejection profile you specify in the
tuning goal. The gains of WF and
1/ReferenceModel
roughly match for gain values within 60 dB of
the peak gain. For numerical reasons, the weighting function levels off outside this
range, unless you specify a reference model that changes slope outside this range. This
adjustment is called regularization. Because poles of
WF close to s = 0
or s = Inf
might lead to poor numeric conditioning
of the systune
optimization problem, it is not recommended to
specify reference models with very low-frequency or very high-frequency dynamics.
To obtain WF, use:
WF = getWeight(Req,Ts)
where Req
is the tuning goal, and Ts
is the
sample time at which you are tuning (Ts = 0
for continuous time). For
more information about regularization and its effects, see Visualize Tuning Goals.
Version History
Introduced in R2016aSee Also
looptune
| systune
| systune (for slTuner)
(Simulink Control Design) | looptune (for slTuner)
(Simulink Control Design) | viewGoal
| evalGoal
| TuningGoal.Gain
| TuningGoal.LoopShape
| slTuner
(Simulink Control Design)