blockPI

Proportional-Integral controller

Extends from Interfaces.SISO (Single Input Single Output continuous control block).

Information

This blocks defines the transfer function between the input u and the output y as PI system:

              1
y = k * (1 + ---) * u
             T*s
        T*s + 1
  = k * ------- * u
          T*s

If you would like to be able to change easily between different transfer functions (FirstOrder, SecondOrder, ... ) by changing parameters, use the general model class TransferFunction instead and model a PI SISO system with parameters
b = {k*T, k}, a = {T, 0}.

Example:

   parameter: k = 0.3,  T = 0.4

   results in:
               0.4 s + 1
      y = 0.3 ----------- * u
                 0.4 s

It might be difficult to initialize the PI component in steady state due to the integrator part. This is discussed in the description of package Continuous.

Parameters

TypeNameDefaultDescription
Realk1Gain
SI.TimeTTime Constant (T>0 required)
Initialization
InitinitTypeInit.NoInitType of initialization (1: no init, 2: steady state, 3: initial state, 4: initial output)
Realx_start0Initial or guess value of state
Realy_start0Initial value of output

Connectors

TypeNameDefaultDescription
RealInputu (from SISO)Connector of Real input signal
RealOutputy (from SISO)Connector of Real output signal

Components

TypeNameDefaultDescription
RealxState of block