modelLoadThreeWayValveControl
Model of a load on hydronic circuit with flow rate modulation by three-way valve
Extends from PartialLoadValveControl (Partial model of a load on hydronic circuit with flow rate modulation by control valve).
Information
This is a model of a thermal load on a hydronic circuit that is composed of Buildings.Fluid.HydronicConfigurations.ActiveNetworks.Examples.BaseClasses.Load and a diversion circuit with a three-way valve that is used to modulate the flow rate through the load component.
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Buildings.Fluid.HydronicConfigurations.Types.Control | typ (from PartialLoadValveControl) | Load type | |
| Modelica.Units.SI.MassFlowRate | mLiq_flow_nominal (from PartialLoadValveControl) | 1 | Liquid mass flow rate at design conditions |
| Modelica.Units.SI.PressureDifference | dpTer_nominal (from PartialLoadValveControl) | 3E4 | Liquid pressure drop across terminal unit at design conditions |
| Modelica.Units.SI.MassFlowRate | mAir_flow_nominal (from PartialLoadValveControl) | abs(Q_flow_nominal)/10/1015 | Air mass flow rate at design conditions |
| Modelica.Units.SI.Temperature | TAirEnt_nominal (from PartialLoadValveControl) | if typ == Buildings.Fluid.HydronicConfigurations.Types.Control.Heating then 20 + 273.15 else 26 + 273.15 | Air entering temperature at design conditions |
| Modelica.Units.SI.Temperature | TAirEntChg_nominal (from PartialLoadValveControl) | 20 + 273.15 | Air entering temperature in change-over mode |
| Modelica.Units.SI.MassFraction | phiAirEnt_nominal (from PartialLoadValveControl) | 0.5 | Air entering relative humidity at design conditions |
| Modelica.Units.SI.Temperature | TLiqEnt_nominal (from PartialLoadValveControl) | if typ == Buildings.Fluid.HydronicConfigurations.Types.Control.Heating then 60 + 273.15 else 7 + 273.15 | Liquid entering temperature at design conditions |
| Modelica.Units.SI.Temperature | TLiqLvg_nominal (from PartialLoadValveControl) | TLiqEnt_nominal + (if typ == Buildings.Fluid.HydronicConfigurations.Types.Control.Heating then -10 else +5) | Liquid leaving temperature at design conditions |
| Modelica.Units.SI.Temperature | TLiqEntChg_nominal (from PartialLoadValveControl) | 60 + 273.15 | Liquid entering temperature in change-over mode |
| Modelica.Units.SI.HeatFlowRate | Q_flow_nominal (from PartialLoadValveControl) | (MediumLiq.specificEnthalpy_pTX(MediumLiq.p_default, TLiqEnt_nominal, X = MediumLiq.X_default) - MediumLiq.specificEnthalpy_pTX(MediumLiq.p_default, TLiqLvg_nominal, X = MediumLiq.X_default))*mLiq_flow_nominal | Transmitted heat flow rate at design conditions |
| Buildings.Controls.OBC.CDL.Types.SimpleController | controllerType (from PartialLoadValveControl) | Buildings.Controls.OBC.CDL.Types.SimpleController.PI | Type of controller |
| Assumptions | |||
| Boolean | allowFlowReversal (from PartialTwoPort) | true | = false to simplify equations, assuming, but not enforcing, no flow reversal |
| Nominal condition | |||
| Modelica.Units.SI.MassFlowRate | m_flow_nominal (from PartialTwoPortInterface) | Nominal mass flow rate | |
| Advanced | |||
| Modelica.Units.SI.MassFlowRate | m_flow_small (from PartialTwoPortInterface) | 1E-4*abs(m_flow_nominal) | Small mass flow rate for regularization of zero flow |
| Advanced › Diagnostics | |||
| Boolean | show_T (from PartialTwoPortInterface) | false | = true, if actual temperature at port is computed |
| Control valve | |||
| Modelica.Units.SI.PressureDifference | dpValve_nominal (from PartialLoadValveControl) | dpTer_nominal | Control valve pressure drop at design conditions |
| Balancing valves | |||
| Modelica.Units.SI.PressureDifference | dpBal1_nominal (from PartialLoadValveControl) | 0 | Balancing valve pressure drop at design conditions |
| Control gains | |||
| Real | k (from PartialLoadValveControl) | 0.1 | Gain of controller |
| Real | Ti (from PartialLoadValveControl) | 60 | Time constant of integrator block |
| Dynamics › Conservation equations | |||
| Modelica.Fluid.Types.Dynamics | energyDynamics (from PartialLoadValveControl) | Modelica.Fluid.Types.Dynamics.SteadyState | Type of energy balance: dynamic (3 initialization options) or steady state |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Fluid.Interfaces.FluidPort_a | port_a (from PartialTwoPort) | Fluid connector a (positive design flow direction is from port_a to port_b) | |
| Modelica.Fluid.Interfaces.FluidPort_b | port_b (from PartialTwoPort) | Fluid connector b (positive design flow direction is from port_a to port_b) | |
| Buildings.Controls.OBC.CDL.Interfaces.RealInput | u (from PartialLoadValveControl) | Load modulating signal | |
| Buildings.Controls.OBC.CDL.Interfaces.IntegerInput | mode (from PartialLoadValveControl) | Operating mode | |
| Buildings.Controls.OBC.CDL.Interfaces.RealOutput | yLoa_actual (from PartialLoadValveControl) | Actual load fraction met | |
| Buildings.Controls.OBC.CDL.Interfaces.RealOutput | Q_flow (from PartialLoadValveControl) | Total heat flow rate transferred to the load | |
| Buildings.Controls.OBC.CDL.Interfaces.RealOutput | yVal_actual (from PartialLoadValveControl) | Valve position feedback |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Units.SI.MassFlowRate | m_flow (from PartialTwoPortInterface) | port_a.m_flow | Mass flow rate from port_a to port_b (m_flow > 0 is design flow direction) |
| Modelica.Units.SI.PressureDifference | dp (from PartialTwoPortInterface) | port_a.p - port_b.p | Pressure difference between port_a and port_b |
| Medium.ThermodynamicState | sta_a (from PartialTwoPortInterface) | if allowFlowReversal then Medium.setState_phX(port_a.p, noEvent(actualStream(port_a.h_outflow)), noEvent(actualStream(port_a.Xi_outflow))) else Medium.setState_phX(port_a.p, noEvent(inStream(port_a.h_outflow)), noEvent(inStream(port_a.Xi_outflow))) | Medium properties in port_a |
| Medium.ThermodynamicState | sta_b (from PartialTwoPortInterface) | if allowFlowReversal then Medium.setState_phX(port_b.p, noEvent(actualStream(port_b.h_outflow)), noEvent(actualStream(port_b.Xi_outflow))) else Medium.setState_phX(port_b.p, noEvent(port_b.h_outflow), noEvent(port_b.Xi_outflow)) | Medium properties in port_b |
| Buildings.Fluid.HydronicConfigurations.ActiveNetworks.Examples.BaseClasses.Load | loa (from PartialLoadValveControl) | Load | |
| HydronicConfigurations.Interfaces.PartialHydronicConfiguration | con (from PartialLoadValveControl) |
Revisions
-
June 30, 2022, by Antoine Gautier:
First implementation.