modelModularCompressorController

Model of an internal controller for modular compressors

Extends from BaseClasses.PartialModularController (Base model used for all modular controllers).

Information

This a controller block used for modular compressor models as presented in AixLib.Fluid.Movers.Compressors.ModularCompressors. The controller block consists of simple PID controllers for each compressor and no further control strategy is implemented yet. However, these PID controller are only initialised a nd 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. Furthermore, a sensible control strategy must be applied to determine the set signals of the compressors if more than one compressor is used.

Parameters

TypeNameDefaultDescription
General › Modular approach
IntegernCom (from PartialModularController)1Number of components
BooleanuseExt (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

TypeNameDefaultDescription
Modelica.Blocks.Interfaces.BooleanOutputuseExtBlo (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.ModularHeatPumpControlBusdataBus (from PartialModularController)Data bus with control signals

Components

TypeNameDefaultDescription
Continuous.LimPID[nCom]intCon (from PartialModularController)Internal controller if internal controller is required
Modelica.Blocks.Sources.BooleanConstant[nCom]triggerBoolean block to provide dummy signal to controllers' trigger signals
Modelica.Blocks.Sources.Constant[nCom]triggerValReal block to provide dummy signal to controllers' rest signals

Revisions

  • October 29, 2017, by Mirko Engelpracht:
    First implementation (see issue 467).