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
| Type | Name | Default | Description |
|---|---|---|---|
| Real | k | 1 | Gain |
| SI.Time | T | Time Constant (T>0 required) | |
| Initialization | |||
| Init | initType | Init.NoInit | Type of initialization (1: no init, 2: steady state, 3: initial state, 4: initial output) |
| Real | x_start | 0 | Initial or guess value of state |
| Real | y_start | 0 | Initial value of output |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| RealInput | u (from SISO) | Connector of Real input signal | |
| RealOutput | y (from SISO) | Connector of Real output signal |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| Real | x | State of block |