modelModularExpansionValveController
Model of an internal controller for modular expansion valves
Extends from BaseClasses.PartialModularController (Base model used for all modular controllers).
Information
This a controller block used for modular expansion valve models as
presented in
AixLib.Fluid.Actuators.Valves.ExpansionValves.ModularExpansionValves.
The controller block consists of simple PID controllers for each
expansion valve and no further control strategy is implemented.
However, these PID controller are only initialised and activated if
no external controller is provided (i.g. if useExt =
false).
Implementation
If the controller block is implemented, appropriate values must be applied for all parameters describing the PID controller.
- October 17, 2017, by Mirko Engelpracht, Christian Vering:
First implementation (see issue 457).
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| General › Modular approach | |||
| Integer | nCom (from PartialModularController) | 1 | Number of components |
| Boolean | useExt (from PartialModularController) | true | = true, if external signal is used instead of internal controllers |
| Controller › General | |||
| Modelica.Blocks.Types.SimpleController[nCom] | controllerType (from PartialModularController) | fill(Modelica.Blocks.Types.SimpleController.PID, nCom) | Type of controller |
| Boolean[nCom] | reverseAction (from PartialModularController) | fill(false, nCom) | = true, if medium flow rate is throttled through cooling coil controller |
| AixLib.Types.Reset[nCom] | reset (from PartialModularController) | fill(AixLib.Types.Reset.Disabled, nCom) | Type of controller output reset |
| Controller › Proportional term | |||
| Real[nCom] | k (from PartialModularController) | fill(1, nCom) | Gain of controller |
| Controller › Integral term | |||
| Modelica.Units.SI.Time[nCom] | Ti (from PartialModularController) | fill(0.5, nCom) | Time constant of integrator block |
| Real[nCom] | Ni (from PartialModularController) | fill(0.9, nCom) | Ni*Ti is time constant of anti-windup compensation |
| Controller › Derivative term | |||
| Modelica.Units.SI.Time[nCom] | Td (from PartialModularController) | fill(0.1, nCom) | Time constant of derivative block |
| Real[nCom] | Nd (from PartialModularController) | fill(10, nCom) | The higher Nd, the more ideal the derivative block |
| Controller › Wheightning | |||
| Real[nCom] | wp (from PartialModularController) | fill(1, nCom) | Set-point weight for Proportional block (0..1) |
| Real[nCom] | wd (from PartialModularController) | fill(0, nCom) | Set-point weight for Derivative block (0..1) |
| Controller › Controller limits | |||
| Real[nCom] | yMax (from PartialModularController) | fill(1, nCom) | Upper limit of output |
| Real[nCom] | yMin (from PartialModularController) | fill(0, nCom) | Lower limit of output |
| Initialisation › General | |||
| Modelica.Blocks.Types.Init[nCom] | initType (from PartialModularController) | fill(Modelica.Blocks.Types.Init.InitialState, nCom) | Init: (1: no init, 2: steady state, 3: initial state, 4: initial output) |
| Initialisation › Start values | |||
| Real[nCom] | xi_start (from PartialModularController) | fill(0, nCom) | Initial or guess value value for integrator output (= integrator state) |
| Real[nCom] | xd_start (from PartialModularController) | fill(0, nCom) | Initial or guess value for state of derivative block |
| Real[nCom] | y_start (from PartialModularController) | fill(0, nCom) | Initial value of output |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Blocks.Interfaces.BooleanOutput | useExtBlo (from PartialModularController) | Boolean block used to set data bus' useExt-signal | |
| Modelica.Blocks.Interfaces.RealOutput[nCom] | manVarThr (from PartialModularController) | Input connector to pass controller's manipualted signals through if activated | |
| Modelica.Blocks.Interfaces.RealInput[nCom] | curManVar (from PartialModularController) | Array of signals with current manipulated variables of controlled components | |
| Modelica.Blocks.Interfaces.RealOutput[nCom] | manVar (from PartialModularController) | Array of manipulated variables for controlled components | |
| Interfaces.ModularHeatPumpControlBus | dataBus (from PartialModularController) | Data bus with control signals |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| Continuous.LimPID[nCom] | intCon (from PartialModularController) | Internal controller if internal controller is required | |
| Modelica.Blocks.Sources.BooleanConstant[nCom] | tri | Boolean block to provide dummy signal to controllers' trigger signals | |
| Modelica.Blocks.Sources.Constant[nCom] | triVal | Real block to provide dummy signal to controllers' rest signals |