Documentation

This is machine translation

Translated by Microsoft
Mouse over text to see original. Click the button below to return to the English verison of the page.

review

Examine MPC controller for design errors and stability problems at run time

Syntax

review(mpcobj)

Description

review(mpcobj) checks for potential design issues in the model predictive controller, mpcobj, and generates a report. review performs the following diagnostic tests:

  • Is the optimal control problem well defined?

  • Is the controller internally stable?

  • Is the closed loop system stable when no constraints are active and there is no model mismatch?

  • Is the controller able to eliminate steady-state tracking error when no constraints are active?

  • Is there a likelihood that constraint definitions will result in an ill-conditioned or infeasible optimization problem?

  • If the controller were used in a real-time environment, what memory capacity would be needed?

Use review iteratively to check your initial MPC design or whenever you make substantial changes to your controller. Make the recommended changes to your controller to eliminate potential problems. review does not modify mpcobj.

Input Arguments

mpcobj

Non-empty Model Predictive Controller (mpc) object

Examples

collapse all

Define a plant model and create an MPC controller.

plant = tf(1, [10 1]);
Ts = 2;
MPCobj = mpc(plant,Ts);
-->The "PredictionHorizon" property of "mpc" object is empty. Trying PredictionHorizon = 10.
-->The "ControlHorizon" property of the "mpc" object is empty. Assuming 2.
-->The "Weights.ManipulatedVariables" property of "mpc" object is empty. Assuming default 0.00000.
-->The "Weights.ManipulatedVariablesRate" property of "mpc" object is empty. Assuming default 0.10000.
-->The "Weights.OutputVariables" property of "mpc" object is empty. Assuming default 1.00000.

Set hard upper and lower bounds on the manipulated variable and its rate-of-change.

MV = MPCobj.MV;
MV.Min = -2;
MV.Max =  2;
MV.RateMin = -4;
MV.RateMax =  4;
MPCobj.MV = MV;

Review the controller design.

review(MPCobj)
-->Converting the "Model.Plant" property of "mpc" object to state-space.
-->Converting model to discrete time.
-->Assuming output disturbance added to measured output channel #1 is integrated white noise.
-->The "Model.Noise" property of the "mpc" object is empty. Assuming white noise on each measured output channel.

review flags the potential constraint conflict that could result if this controller was used to control a real process.

Alternatives

review automates certain tests that you can perform at the command line.

  • To test for steady-state tracking errors, use cloffset.

  • To test the internal stability of a controller, check the eigenvalues of the mpc object. Use ss to convert the mpc object to a state-space model, and call isstable.

More About

collapse all

Tips

  • You can review your controller design in the MPC Designer app. On the Tuning tab, in the Analysis section, click Review Design.

  • Test your controller design using techniques such as simulations, since review cannot detect all possible performance factors.

See Also

| |

Introduced in R2011b

Was this topic helpful?