Main Content

When you tune a control system with `systune`

or **Control System
Tuner**, the software provides reports that give you an overview of how well the tuned
control system meets your design requirements. Interpreting these reports requires
understanding how the tuning algorithm optimizes the system to satisfy your tuning goals. (The
software also provides visualizations of the tuning goals and system responses to help you see
where and by how much your requirements are not satisfied. For information about using these
plots, see Visualize Tuning Goals.)

The tuning software converts each tuning goal into a normalized
scalar value which it then constrains (hard goals) or minimizes (soft
goals). Let *f _{i}*(

Minimize $$\underset{i}{\mathrm{max}}{f}_{i}\left(x\right)$$ subject to $$\underset{j}{\mathrm{max}}{g}_{j}\left(x\right)<1$$, for $${x}_{\mathrm{min}}<x<{x}_{\mathrm{max}}$$.

*x _{min}* and

When you use both soft and hard tuning goals, the software solves the optimization as a sequence of subproblems of the form:

$$\underset{x}{\mathrm{min}}\text{\hspace{0.17em}}\text{\hspace{0.17em}}\mathrm{max}\left(\alpha f\left(x\right),g\left(x\right)\right).$$

The software adjusts the multiplier *α* so
that the solution of the subproblems converges to the solution of
the original constrained optimization problem.

The tuning software reports the final scalar values for each
tuning goal. When the final value of *f _{i}*(

The form in which the software presents the optimized tuning-goal values depends on whether
you are tuning with **Control System Tuner** or at the command line.

The `systune`

command returns the control system model or
`slTuner`

interface with the tuned parameter values.
`systune`

also returns the best achieved values of each
*f _{i}*(

`fSoft`

and `gHard`

, respectively. See
the `systune`

reference page for more information. (To obtain the final tuning goal
values on their own, use `evalGoal`

.)By default, `systune`

displays the best achieved
final values of the tuning goals in the command window. For instance,
in the example PID Tuning for Setpoint Tracking vs. Disturbance Rejection, `systune`

is
called with one soft requirement, `R1`

, and two hard
requirements `R2`

and `R3`

.

T1 = systune(T0,R1,[R2 R3]);

Final: Soft = 1.12, Hard = 0.99988, Iterations = 143

This display indicates that the largest optimized value of the hard tuning goals is less than 1, so both hard goals are satisfied. The soft goal value is slightly greater than one, indicating that the soft goal is nearly satisfied. You can use tuning-goal plots to see in what regimes and by how much the tuning goals are violated. (See Visualize Tuning Goals.)

You can obtain additional information about the optimization
progress and values using the `info`

output of `systune`

.
To make `systune`

display additional information
during tuning, use `systuneOptions`

.

In **Control System Tuner**, when you click , the app compiles a Tuning Report summarizing the best
achieved values of *f _{i}*(

The tuning report displays the final *f _{i}*(

The **Hard Goals** area shows the minimized *g _{i}*(

**Tip**

You can view a report from the most recent tuning run at any time. In the
**Tuning** tab, click
**Tune**, and select `Tuning Report`

.

If the tuning results do not adequately meet your design requirements, adjust your set of tuning goals to improve the results. For example:

Designate tuning goals that are must-have requirements as hard goals. Or, relax tuning goals that are not absolute requirements by designating them as soft goals.

Limit the frequency range in which frequency-domain goals are enforced.

In

**Control System Tuner**, use the**Enforce goal in frequency range**field of the tuning goal dialog box.At the command line, use the

`Focus`

property of the`TuningGoal`

object.

If the tuning results do satisfy your design requirements, you can validate the tuned control system as described in Validate Tuned Control System.

`evalGoal`

| `systune`

| `systune (for slTuner)`

| `viewGoal`