blockPI

Discrete-time PI controller

Extends from Clocked.RealSignals.Interfaces.PartialClockedSISO (Block with clocked single input and clocked single output Real signals).

Information

This block defines a discrete-time PI controller by the formula:

// State space form:
   x(ti) = previous(x(ti)) + u(ti)/Td;
   y(ti) = kd*(x(ti) + u(ti));

// Transfer function form:
   y(z) = kd*(c*z-1)/(z-1)*u(z);
          c = 1 + 1/Td

where kd is the gain, Td is the time constant, ti is the time instant of the i-th clock tick and z is the inverse shift operator.

This discrete-time form has been derived from the continuous-time form of a PI controller by using the implicit Euler discretization formula.

Parameters

TypeNameDefaultDescription
RealkdGain of discrete PI controller
RealTdTime constant of discrete PI controller

Connectors

TypeNameDefaultDescription
Modelica.Blocks.Interfaces.RealInputu (from PartialClockedSISO)Connector of clocked, Real input signal
Modelica.Blocks.Interfaces.RealOutputy (from PartialClockedSISO)Connector of clocked, Real output signal

Components

TypeNameDefaultDescription
RealxDiscrete PI state