Buildings.Templates.Components.Chillers
Chiller models
Information
This package contains models for chillers.
Extends from Modelica.Icons.VariantsPackage (Icon for package containing variants).
Package Content
Name | Description |
---|---|
![]() |
Compression chiller |
![]() |
Package with validation models |
Buildings.Templates.Components.Chillers.Compression
Compression chiller
Information
Model of an electric compression chiller based on the reformulated DOE-2.1 model Buildings.Fluid.Chillers.ElectricReformulatedEIR.
Control points
The following input and output points are available.
-
On/off command
y1
: DO signal -
(Only if
have_switchover=true
) Operating mode commandy1Coo
: DO signal, true for cooling, false for heating -
Supply temperature setpoint
TSupSet
: AO signal corresponding to- CHW supply temperature setpoint if
have_switchover=false
or ifhave_switchover=true
andy1Coo=true
, or - HW supply temperature setpoint if
have_switchover=true
andy1Coo=false
.
- CHW supply temperature setpoint if
-
Chiller status
y1_actual
: DI signal -
CHW request
reqChiWat
: DI signal -
(Only if
typ=Buildings.Templates.Components.Types.Chiller.WaterCooled
) CW requestreqConWat
: DI signal
Model parameters
The design parameters and the chiller performance data are specified with an instance of Buildings.Templates.Components.Data.Chiller. The documentation of this record class provides further details on how to properly parameterize the model.
Extends from Buildings.Templates.Components.Interfaces.PartialChiller (Interface class for chiller models).
Parameters
Type | Name | Default | Description |
---|---|---|---|
replaceable package MediumChiWat | Water | CHW medium | |
replaceable package MediumCon | Water | Medium model for condenser cooling fluid | |
Chiller | dat | Design and operating parameters | |
Configuration | |||
Chiller | typ | Type of chiller | |
Boolean | have_switchover | false | Set to true for heat recovery chiller with built-in switchover |
Assumptions | |||
Boolean | allowFlowReversal1 | true | = false to simplify equations, assuming, but not enforcing, no flow reversal for medium 1 |
Boolean | allowFlowReversal2 | true | = false to simplify equations, assuming, but not enforcing, no flow reversal for medium 2 |
Boolean | have_dpChiWat | true | Set to true for CHW pressure drop computed by this model, false for external computation |
Boolean | have_dpCon | true | Set to true for condenser cooling fluid pressure drop computed by this model, false for external computation |
Advanced | |||
MassFlowRate | m1_flow_small | 1E-4*abs(m1_flow_nominal) | Small mass flow rate for regularization of zero flow [kg/s] |
MassFlowRate | m2_flow_small | 1E-4*abs(m2_flow_nominal) | Small mass flow rate for regularization of zero flow [kg/s] |
Diagnostics | |||
Boolean | show_T | false | = true, if actual temperature at port is computed |
Dynamics | |||
Nominal condition | |||
Time | tau | 30 | Time constant at nominal flow, used if energy or mass balance is dynamic [s] |
Conservation equations | |||
Dynamics | energyDynamics | Modelica.Fluid.Types.Dynamic... | Type of energy balance: dynamic (3 initialization options) or steady state |
Connectors
Type | Name | Description |
---|---|---|
FluidPort_a | port_a1 | Fluid connector a1 (positive design flow direction is from port_a1 to port_b1) |
FluidPort_b | port_b1 | Fluid connector b1 (positive design flow direction is from port_a1 to port_b1) |
FluidPort_a | port_a2 | Fluid connector a2 (positive design flow direction is from port_a2 to port_b2) |
FluidPort_b | port_b2 | Fluid connector b2 (positive design flow direction is from port_a2 to port_b2) |
Bus | bus | Control bus |
Modelica definition
model Compression
"Compression chiller"
extends Buildings.Templates.Components.Interfaces.PartialChiller;
Buildings.Fluid.Chillers.ElectricReformulatedEIR chi(
redeclare final package Medium1=MediumCon,
redeclare final package Medium2=MediumChiWat,
final m1_flow_nominal=mCon_flow_nominal,
final m2_flow_nominal=mChiWat_flow_nominal,
final dp1_nominal=if have_dpCon then dpCon_nominal else 0,
final dp2_nominal=if have_dpChiWat then dpChiWat_nominal else 0,
final have_switchover=have_switchover,
final per=dat.perSca,
final tau1=tau,
final tau2=tau,
final energyDynamics=energyDynamics,
final allowFlowReversal1=allowFlowReversal1,
final allowFlowReversal2=allowFlowReversal2,
final show_T=show_T,
final m1_flow_small=m1_flow_small,
final m2_flow_small=m2_flow_small)
"Chiller";
Controls.StatusEmulator y1_actual
"Compute chiller status";
Buildings.Controls.OBC.CDL.Routing.BooleanExtractSignal reqConWat(
final nin=1,
final nout=1,
final extract={1})
if typ == Buildings.Templates.Components.Types.Chiller.WaterCooled
"Compute CW request";
Buildings.Controls.OBC.CDL.Logical.Not off
"Return true if status is off";
Buildings.Controls.OBC.CDL.Logical.TrueDelay delOff(
delayTime=180)
"Delay off status";
Buildings.Controls.OBC.CDL.Logical.Not reqFlo
"Compute flow request";
equation
connect(port_a1, chi.port_a1);
connect(chi.port_b1, port_b1);
connect(port_b2, chi.port_b2);
connect(chi.port_a2, port_a2);
connect(bus.y1, chi.on);
connect(bus.TSupSet, chi.TSet);
connect(bus.y1Coo, chi.coo);
connect(bus.y1, y1_actual.y1);
connect(y1_actual.y1_actual, bus.y1_actual);
connect(reqConWat.y[1], bus.reqConWat);
connect(y1_actual.y1_actual, off.u);
connect(off.y, delOff.u);
connect(delOff.y, reqFlo.u);
connect(reqFlo.y, bus.reqChiWat);
connect(reqFlo.y, reqConWat.u[1]);
end Compression;