blockPI
Proportional-Integral controller (continuous or discrete block)
Extends from Interfaces.PartialSISO2 (Partial Single Input Single Output (continuous or discrete) control block of Controller library).
Information
This blocks defines the transfer function between the input u and the output y as integrator:
1
y = k * (1 + ------ ) * u
T*s
T*s + 1
= k * --------- * u
T*s
The block can be continuous or discrete (with continuous parameterization).
It is not possible to initialize a continuous integrator in steady state. For this reason, option "initType = SteadyState" is ignored for a continuous PI block and interpreted as "initType = InitialState".
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Boolean | continuous (from PartialSampledBlock) | blockType == Types.BlockTypeWithGlobalDefault.Continuous or blockType == Types.BlockTypeWithGlobalDefault.UseSampleClockOption and sampleClock.blockType == Types.BlockType.Continuous | True, if continuous block, otherwise discrete block |
| Types.Init | init (from PartialSampledBlock) | Modelica_LinearSystems2.Controllers.Internal.convertToInit(initType, sampleClock.initType) | Type of initialization (no init/steady state/initial state/initial output) |
| Real | k | 1 | Gain |
| Modelica.Units.SI.Time | T | 1 | Time Constant (T>0 required) |
| Advanced options | |||
| Types.BlockTypeWithGlobalDefault | blockType (from PartialSampledBlock) | Modelica_LinearSystems2.Controllers.Types.BlockTypeWithGlobalDefault.UseSampleClockOption | Type of block |
| Types.InitWithGlobalDefault | initType (from PartialSampledBlock) | Types.InitWithGlobalDefault.UseSampleClockOption | Type of initialization (no init/steady state/initial state/initial output) |
| Real | x_start | 0 | Initial or guess value of state |
| Real | y_start | 0 | Initial value of output |
| Advanced options › Discrete block parameters | |||
| Types.MethodWithGlobalDefault | methodType (from PartialSampledBlock) | Types.MethodWithGlobalDefault.UseSampleClockOption | Type of discretization if discrete block |
| Integer | sampleFactor (from PartialSampledBlock) | 1 | Sample factor (Ts = sampleFactor * sampleClock.sampleTime) |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Blocks.Interfaces.RealInput | u (from PartialSISO2) | Continuous or discrete input signal of block | |
| Modelica.Blocks.Interfaces.RealOutput | y (from PartialSISO2) | Continuous or discrete output signal of block | |
| Modelica.Blocks.Interfaces.RealOutput | x | State of block |