This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English version of the page.

Note: This page has been translated by MathWorks. Click here to see
To view all translated materials including this page, select Country from the country navigator on the bottom of this page.

Discrete PI Controller with Integral Anti-Windup

Discrete-time PI control with integral anti-windup

  • Library:
  • Simscape / Electrical / Control / General Control

Description

The Discrete PI Controller with Integral Anti-Windup block implements discrete PI control with internal anti-windup. The figure shows the equivalent circuit for the controller with internal anti-windup.

Equations

The block calculates the control signal using the backward Euler discretization method:

u(k)=sat(Kpe(k)+sat(KiTszz1e(k),A,B),A,B),

 sat(x,A,B)=min(max(x,A),B),

where:

  • u is the control signal.

  • Kp is the proportional gain coefficient.

  • e is the error signal.

  • Ki is the integral gain coefficient.

  • Ts is the sampling period.

  • A is the lower limit for saturation.

  • B is the upper limit for saturation.

Ports

Input

expand all

Error signal, e(k), obtained as the difference between the reference, r(k), and measurement y(k) signals.

Data Types: single | double

External reset (rising edge) signal for the integrator.

Data Types: single | double

Output

expand all

Control signal, u(k).

Data Types: single | double

Parameters

expand all

Proportional gain, Kp, of the PI controller.

Integral gain, Ki, of the PI controller.

Upper limit, B, of the output for the PI controller.

Upper limit, A, of the output for the PI controller.

Value of the integrator at simulation start time.

Time between consecutive block executions. During execution, the block produces outputs and, if appropriate, updates its internal state. For more information, see What Is Sample Time? (Simulink) and Specify Sample Time (Simulink).

For inherited discrete-time operation, specify -1. For discrete-time operation, specify a positive integer. For continuous-time operation, specify 0.

If this block is in a masked subsystem, or other variant subsystem that allows you to switch between continuous operation and discrete operation, promote the sample time parameter. Promoting the sample time parameter ensures correct switching between the continuous and discrete implementations of the block. For more information, see Promote Parameter to Mask (Simulink).

Model Examples

References

[1] IEEE Recommended Practice for Excitation System Models for Power System Stability Studies. IEEE Std 421.5/D39. Piscataway, NJ: IEEE-SA, 2015.

Extended Capabilities

C/C++ Code Generation
Generate C and C++ code using Simulink® Coder™.

Introduced in R2017b