This example shows how to constrain the poles of a control system tuned with
looptune commands tune the parameters of fixed-structure control systems subject to a variety of time- and frequency-domain requirements. The
TuningGoal package is the repository for such design requirements.
TuningGoal.Poles goal constrains the location of the closed-loop poles. You can enforce some minimum decay rate
impose some minimum damping ratio
or constrain the pole magnitude to
MinDecay = 0.5; MinDamping = 0.7; MaxFrequency = 10; R = TuningGoal.Poles(MinDecay,MinDamping,MaxFrequency);
constrains the closed-loop poles to lie in the white region below.
MinDecay value results in faster transients. Increasing the
MinDamping value results in better damped transients. Decreasing the
MaxFrequency value prevents fast dynamics.
TuningGoal.ControllerPoles goal constrains the pole locations for tuned elements such as filters and compensators. The tuning algorithm may produce unstable compensators for unstable plants. To prevent this, use the
TuningGoal.ControllerPoles goal to keep the compensator poles in the left-half plane. For example, if your compensator is parameterized as a second-order transfer function,
C = tunableTF('C',1,2);
you can force it to have stable dynamics by adding the requirement
MinDecay = 0; R = TuningGoal.ControllerPoles('C',MinDecay);