blockLimPIDReset
Extends from TransiEnt.Basics.Icons.Block.
Information
1. Purpose of model
This model extends the MSL LimPID Controller by a reset functionality which allows to trigger a reset of the integrator state. See documentation of LimPID for more details.
2. Level of detail, physical effects considered, and physical insight
(Purely technical component without physical modeling.)
3. Limits of validity
(Purely technical component without physical modeling.)
4. Interfaces
Modelica BooleanInput: trigger to reset integrator value
Modelica RealInput: connector of setpoint input signal
Modelica RealInput: connector of measurement input signal
Modelica RealOutput: connector of actuator output signal
5. Nomenclature
(no elements)
6. Governing Equations
(no equations)
7. Remarks for Usage
(no remarks)
8. Validation
(no remarks)
9. References
(no remarks)
10. Version History
Model created by Pascal Dubucq (dubucq@tuhh.de), Aug 2014
Model revised by Pascal Dubucq (dubucq@tuhh.de), Apr 2017 : code conventions
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| SI.Time | unitTime | 1 | |
| .Modelica.Blocks.Types.SimpleController | controllerType | .Modelica.Blocks.Types.SimpleController.PID | Type of controller |
| Real | k | 1 | Gain of controller |
| SI.Time | Ti | 0.5 | Time constant of Integrator block |
| SI.Time | Td | 0.1 | Time constant of Derivative block |
| Real | yMax | Upper limit of output | |
| Real | yMin | -yMax | Lower limit of output |
| Real | wp | 1 | Set-point weight for Proportional block (0..1) |
| Real | wd | 0 | Set-point weight for Derivative block (0..1) |
| Real | Ni | 0.9 | Ni*Ti is time constant of anti-windup compensation |
| Real | Nd | 10 | The higher Nd, the more ideal the derivative block |
| Advanced | |||
| Boolean | strict | false | = true, if strict limits with noEvent(..) |
| Initialization | |||
| .Modelica.Blocks.Types.Init | initType | .Modelica.Blocks.Types.Init.InitialState | Type of initialization (1: no init, 2: steady state, 3: initial state, 4: initial output) |
| Boolean | limitsAtInit | true | = false, if limits are ignored during initialization |
| Real | xi_start | 0 | Initial or guess value value for integrator output (= integrator state) |
| Real | xd_start | 0 | Initial or guess value for state of derivative block |
| Real | y_start | 0 | Initial value of output |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Blocks.Interfaces.BooleanInput | trigger | Trigger to reset integrator value | |
| Modelica.Blocks.Interfaces.RealInput | u_s | Connector of setpoint input signal | |
| Modelica.Blocks.Interfaces.RealInput | u_m | Connector of measurement input signal | |
| Modelica.Blocks.Interfaces.RealOutput | y | Connector of actuator output signal |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Blocks.Sources.Constant | Dzero | ||
| Modelica.Blocks.Sources.Constant | Izero | ||
| Modelica.Blocks.Math.Add | addP | ||
| Modelica.Blocks.Math.Add | addD | ||
| Modelica.Blocks.Math.Gain | P | ||
| IntegratorReset | I | ||
| Modelica.Blocks.Continuous.Derivative | D | ||
| Modelica.Blocks.Math.Gain | gainPID | ||
| Modelica.Blocks.Math.Add3 | addPID | ||
| Modelica.Blocks.Math.Add3 | addI | ||
| Modelica.Blocks.Math.Add | addSat | ||
| Modelica.Blocks.Math.Gain | gainTrack | ||
| Modelica.Blocks.Nonlinear.Limiter | limiter | ||
| Real | controlError | u_s - u_m | Control error (set point - measurement) |