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.