blockPI_Input

Proportional-Integral controller using input instead of connector

Extends from Modelica.Blocks.Interfaces.BlockIcon.

Information

This model is taken completely from Modelica.Blocks.Continuous.PI. The only difference is, that the values for u_s (setpoint value) and u_m (measurement signal) are submitted to the model via input variables and not using connectors. This approach is more suitable for the use of this controller in BaseColumn, since it avoids unnecessary generation of warnings in Dymola.

The following rest of the documentation is also from Modelica.Blocks.Continuous.PI:

This blocks defines the transfer function between the input u and the output y (element-wise) 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
Modelica.Blocks.Types.InitinitTypeModelica.Blocks.Types.Init.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

Components

TypeNameDefaultDescription
RealuConnector of Real input signal
Modelica.Blocks.Interfaces.RealOutputyConnector of Real output signal
RealxState of block