modelDpControlled_dp

Pump or fan including pressure control (constant or variable)

Extends from AixLib.Fluid.Interfaces.LumpedVolumeDeclarations, AixLib.Fluid.Interfaces.PartialTwoPortInterface.

Information

This model represents a pump or fan which includes already a controller. Be aware that this model does not only represent the physical behavior of an HVAC component but also controls this HVAC component.

In addition to the standard characteristic curve (should equal per.pressure), the controller is able to store two further characteristic/control curves. This enables the user to quickly select between the two common control modes constant pressure (dpConst) and variable pressure (dpVar). The common control modes of pumps are concisely explained in the referenced white paper [1].

Often, the AixLib.Fluid.Movers.FlowControlled_dp. This means no speed control is possible. Please use AixLib.Fluid.Movers.SpeedControlled_y for this application.

The model has a standard parametrization for the three curves basing on the parameter m_flow_nominal and dp_nominal. See the figure and table below.

1

m_flow

dp_total

dp_constCtrl

dp_varCtrl

0

1.3

1

0.5

1

1

1

1

1.5

0.75

0.75

0.75

2

0

0

0

References

[1] Robinson, Reece. 2019. Pumping Control Methods and Their Impact on System Effciency. Link to PDF.

Parameters

TypeNameDefaultDescription
BooleanaddPowerToMediumtrueSet to false to avoid any power (=heat and flow work) being added to medium (may give simpler equations)
BooleannominalValuesDefineDefaultPressureCurvefalseSet to true to avoid warning if m_flow_nominal and dp_nominal are used to construct the default pressure curve
Machine characteristics
AixLib.Fluid.Movers.Data.GenericperRecord with performance data
AixLib.Fluid.Movers.BaseClasses.Characteristics.flowParameterspressureCurve_defaultGeneral mover curve: volume flow rate vs. total pressure head
Nominal condition
Modelica.Units.SI.PressureDifferencedp_nominalif rho_default < 500 then 500 else 10000Nominal pressure raise, used to normalized the filter if use_riseTime=true, to set default values of constantHead and heads, and and for default pressure curve if not specified in record per
Control characteristics
AixLib.Fluid.Movers.DpControlledMovers.Types.CtrlTypectrlTypeAixLib.Fluid.Movers.DpControlledMovers.Types.CtrlType.dpTotalType of mover control
AixLib.Fluid.Movers.BaseClasses.Characteristics.flowParameterspressureCurve_dpConstdpConst control: volume flow rate vs. total pressure head
AixLib.Fluid.Movers.BaseClasses.Characteristics.flowParameterspressureCurve_dpVardpVar control: volume flow rate vs. total pressure head
Advanced
BooleanprescribeSystemPressurefalse=true, to control mover such that pressure difference is obtained across two remote points in system
Dynamics › Nominal condition
Modelica.Units.SI.TimetauMov1Time constant in mover (pump or fan) of fluid volume for nominal flow, used if energy or mass balance is dynamic
Dynamics › Filtered speed
Booleanuse_riseTimetrue= true, if speed is filtered with a 2nd order CriticalDamping filter
Modelica.Units.SI.TimeriseTime30Rise time of the filter (time to reach 99.6 % of the speed)
Modelica.Blocks.Types.InitinitModelica.Blocks.Types.Init.InitialOutputType of initialization (no init/steady state/initial state/initial output)
Realy_start0Initial value of speed
Modelica.Units.SI.PressureDifferencedp_start0Initial value of pressure raise
Sensor
Modelica.Units.SI.TimetauSen0Time constant at nominal flow rate (use tau=0 for steady-state sensor, but see user guide for potential problems)
Sensor › Initialization
Modelica.Blocks.Types.InitinitTypeModelica.Blocks.Types.Init.InitialStateType of initialization (InitialState and InitialOutput are identical)
Modelica.Media.Interfaces.Types.Densityd_startMedium.density(Medium.setState_pTX(senVolFlo.p_start, senVolFlo.T_start, senVolFlo.X_start))Initial or guess value of density
Curve / Table › Table data interpretation
Modelica.Blocks.Types.SmoothnesssmoothnessModelica.Blocks.Types.Smoothness.LinearSegmentsSmoothness of table interpolation
BooleanverboseExtrapolationfalse= true, if warning messages are to be printed if table input is outside the definition range

Components

TypeNameDefaultDescription
Modelica.Blocks.Interfaces.RealInputdpMeaMeasurement of pressure difference between two points where the set point should be obtained
Modelica.Thermal.HeatTransfer.Interfaces.HeatPort_aheatPortHeat dissipation to environment
AixLib.Fluid.Sensors.VolumeFlowRatesenVolFloSensor to measure volume flow rate
Modelica.Blocks.Tables.CombiTable1DvpressureCurveSelectedTable with points of selected curve to calculate dp from V_flow
AixLib.Fluid.Movers.FlowControlled_dpmovMover: pump or fan
Modelica.Blocks.Interfaces.RealOutputPElectrical power consumed
Modelica.Blocks.Interfaces.RealOutputy_actualActual normalised pump speed that is used for computations
Modelica.Blocks.Interfaces.RealOutputdp_actualPressure difference between the mover inlet and outlet

Contents

NameDescription
checkDpCurvesprotected

Revisions

  • October 28, 2021, by Philipp Mehrfeld:
    #1151 Added model to library.