modelTableData2DLoadDepSHCVariable
Extends from Modelica.Icons.Example.
Information
This model validates the load calculation and staging logic of the block Buildings.Fluid.HeatPumps.ModularReversible.RefrigerantCycle.BaseClasses.TableData2DLoadDepSHC.
The model represents a three-module system.
The operating mode switches between simultaneous heating and cooling,
heating only, and cooling only.
The on/off command starts as true and is switched to
false at the end of the simulated period.
The validation is carried out by computing the tracked temperature using the heat flow rate calculated by the block, and feeding back this variable as input to the heat pump model. It is then expected that the tracked temperature matches the setpoint, under the constraints of step-by-step staging and minimum stage runtime. Note that a filtered value of the tracked temperature is used to avoid creating an algebraic loop.
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Nominal condition | |||
| Modelica.Units.SI.Temperature | THwSup_nominal | 50 + 273.15 | HW supply temperature |
| Modelica.Units.SI.Temperature | THwRet_nominal | 42 + 273.15 | HW return temperature |
| Modelica.Units.SI.Temperature | TChwSup_nominal | 7 + 273.15 | CHW supply temperature |
| Modelica.Units.SI.Temperature | TChwRet_nominal | 12 + 273.15 | CHW return temperature |
| Modelica.Units.SI.MassFlowRate | mHw_flow_nominal | QHea_flow_nominal/(THwSup_nominal - THwRet_nominal)/Buildings.Media.Water.cp_const | HW mass flow rate |
| Modelica.Units.SI.MassFlowRate | mChw_flow_nominal | QCoo_flow_nominal/(TChwSup_nominal - TChwRet_nominal)/Buildings.Media.Water.cp_const | CHW mass flow rate |
| Nominal condition - Heating mode | |||
| Modelica.Units.SI.Temperature | TAmbHea_nominal | -5 + 273.15 | OA temperature |
| Modelica.Units.SI.HeatFlowRate | QHea_flow_nominal | 58E3 | Heating heat flow rate - Heating mode |
| Modelica.Units.SI.HeatFlowRate | QHeaShc_flow_nominal | 85E3 | Heating heat flow rate - SHC mode |
| Nominal condition - Cooling mode | |||
| Modelica.Units.SI.Temperature | TAmbCoo_nominal | 35 + 273.15 | Ambient side fluid temperature — Entering or leaving depending on use_TAmbOutForTab |
| Modelica.Units.SI.HeatFlowRate | QCoo_flow_nominal | -73E3 | Cooling heat flow rate - Cooling mode |
| Modelica.Units.SI.HeatFlowRate | QCooShc_flow_nominal | -65E3 | Cooling heat flow rate - SHC mode |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| Buildings.Controls.OBC.CDL.Reals.Sources.TimeTable | TChiWatSet | CHW supply or return temperature setpoint | |
| Buildings.Controls.OBC.CDL.Reals.Sources.Sin | THwSet | HW supply or return temperature setpoint | |
| Buildings.Controls.OBC.CDL.Reals.Sources.Constant | THwEnt | Condenser entering HW temperature | |
| Buildings.Controls.OBC.CDL.Reals.Sources.Constant | TChwEnt | Evaporator entering CHW temperature | |
| Buildings.Controls.OBC.CDL.Reals.Sources.Constant | mChw_flow | CHW mass flow rate | |
| Buildings.Controls.OBC.CDL.Reals.Sources.Constant | mHw_flow | HW mass flow rate | |
| Buildings.Controls.OBC.CDL.Reals.Sources.Constant | cp | Specific heat capacity of load side fluid | |
| Buildings.Fluid.HeatPumps.ModularReversible.RefrigerantCycle.BaseClasses.TableData2DLoadDepSHC | hpSup | Heat pump with supply temperature control | |
| Modelica.Blocks.Sources.RealExpression | TConLvgHpSup | Calculate condenser leaving temperature | |
| Modelica.Blocks.Sources.RealExpression | TEvaLvgHpSup | Calculate evaporator leaving temperature | |
| Buildings.Controls.OBC.CDL.Reals.Sources.Constant | TOut | OA temperature | |
| Modelica.Blocks.Continuous.Filter | filter | Filter to avoid algebraic loop | |
| Modelica.Blocks.Continuous.Filter | filter1 | Filter to avoid algebraic loop | |
| Buildings.Controls.OBC.CDL.Reals.Min | min1 | Keep HW temperature setpoint below design value | |
| Buildings.Controls.OBC.CDL.Reals.Sources.Constant | TSwSupNom | Design HW supply temperature | |
| Buildings.Controls.OBC.CDL.Logical.Sources.TimeTable | mode | Operating mode command | |
| Buildings.Controls.OBC.CDL.Logical.Sources.TimeTable | onHea | Heating on/off command | |
| Buildings.Controls.OBC.CDL.Integers.MultiSum | sumNumUni | Total number of enabled modules | |
| Buildings.Controls.OBC.CDL.Utilities.Assert | assMes | Assert condition on number of enabled modules | |
| Buildings.Controls.OBC.CDL.Integers.LessEqualThreshold | intLesEquThr | True if number of enabled modules lower or equal to number of modules |
Revisions
-
March 23, 2026, by Antoine Gautier:
Refactored with two separate connectors for heating and cooling on/off commands.
This is for #4507. -
July 1, 2025, by Antoine Gautier:
First implementation.