Tune Controller Against Set of Plant Models

systune can simultaneously tune the parameters of multiple models or control configurations. For example you can:

  • Tune a single controller against a range of plant models, to help ensure that the tuned control system is robust against parameter variations

  • Tune for reliable control by simultaneously to multiple plant configurations that represent different failure modes of a system

In either case, systune finds values for tunable parameters that best satisfy the specified tuning objectives for all models.

To tune a controller parameters against a set of plant models:

  1. Create an array of genss models that represent the control systems or configurations to tune against.

  2. Specify your tuning objectives using TuningGoal requirements objects such as TuningGoal.Tracking, TuningGoal.Gain, or TuningGoal.Margins. If you want to limit a tuning requirement to a subset of the models in the model array, set the Models property of the TuningGoal requirement.

    For example, suppose you have a model array whose first entry represents your control system under normal operating conditions, and whose second entry represents the system in a failure mode. Suppose further that Req is a TuningGoal.Tracking requirement that only applies to the normally operating system. To enforce the requirement only on the first entry, use the following command:

    Req.Models = [1];
  3. Provide the model array and tuning requirements as input argument to systune.

systune jointly tunes the tunable parameters for all models in the array to best meet the tuning requirements as you specify them. systune returns an array containing the corresponding tuned models. You can use getBlockValue or showTunable to access the tuned values of the control elements.

Was this topic helpful?