modelThreeWayLinear

Three way valve with linear characteristics

Extends from BaseClasses.PartialThreeWayValve (Partial three way valve).

Information

Three way valve with linear opening characteristic.

This model is based on the partial valve models Buildings.Fluid.Actuators.BaseClasses.PartialThreeWayValve and Buildings.Fluid.Actuators.BaseClasses.PartialTwoWayValve. See Buildings.Fluid.Actuators.BaseClasses.PartialThreeWayValve for the implementation of the three way valve and see Buildings.Fluid.Actuators.BaseClasses.PartialTwoWayValve for the implementation of the regularization near the origin.

Parameters

TypeNameDefaultDescription
BooleanhomotopyInitialization (from PartialThreeWayValve)true= true, use homotopy method
RealfraK (from PartialThreeWayValve)0.7Fraction Kv(port_3→port_2)/Kv(port_1→port_2)
Reall (from PartialThreeWayValve){0.0001, 0.0001}Valve leakage, l=Kv(y=0)/Kv(y=1)
Dynamics › Conservation equations
Modelica.Fluid.Types.DynamicsenergyDynamics (from LumpedVolumeDeclarations)Modelica.Fluid.Types.Dynamics.DynamicFreeInitialType of energy balance: dynamic (3 initialization options) or steady state
Modelica.Fluid.Types.DynamicssubstanceDynamics (from LumpedVolumeDeclarations)energyDynamicsType of independent mass fraction balance: dynamic (3 initialization options) or steady state
Modelica.Fluid.Types.DynamicstraceDynamics (from LumpedVolumeDeclarations)energyDynamicsType of trace substance balance: dynamic (3 initialization options) or steady state
Modelica.Units.SI.MassFlowRatemDyn_flow_nominal (from PartialThreeWayResistance)Nominal mass flow rate for dynamic momentum and energy balance
Advanced › Dynamics
Modelica.Fluid.Types.DynamicsmassDynamics (from LumpedVolumeDeclarations)energyDynamicsType of mass balance: dynamic (3 initialization options) or steady state, must be steady state if energyDynamics is steady state
Initialization
Medium.AbsolutePressurep_start (from LumpedVolumeDeclarations)Medium.p_defaultStart value of pressure
Medium.TemperatureT_start (from LumpedVolumeDeclarations)Medium.T_defaultStart value of temperature
Medium.MassFraction[Medium.nX]X_start (from LumpedVolumeDeclarations)Medium.X_defaultStart value of mass fractions m_i/m
Medium.ExtraProperty[Medium.nC]C_start (from LumpedVolumeDeclarations)fill(0, Medium.nC)Start value of trace substances
Medium.ExtraProperty[Medium.nC]C_nominal (from LumpedVolumeDeclarations)fill(1E-2, Medium.nC)Nominal value of trace substances. (Set to typical order of magnitude.)
Dynamics
RealmSenFac (from LumpedVolumeDeclarations)1Factor for scaling the sensible thermal mass of the volume
Dynamics › Nominal condition
Modelica.Units.SI.Timetau (from PartialThreeWayResistance)10Time constant at nominal flow for dynamic energy and momentum balance
Advanced
Booleanfrom_dp (from PartialThreeWayResistance)true= true, use m_flow = f(dp) else dp = f(m_flow)
Modelica.Fluid.Types.PortFlowDirectionportFlowDirection_1 (from PartialThreeWayResistance)Modelica.Fluid.Types.PortFlowDirection.BidirectionalFlow direction for port_1
Modelica.Fluid.Types.PortFlowDirectionportFlowDirection_2 (from PartialThreeWayResistance)Modelica.Fluid.Types.PortFlowDirection.BidirectionalFlow direction for port_2
Modelica.Fluid.Types.PortFlowDirectionportFlowDirection_3 (from PartialThreeWayResistance)Modelica.Fluid.Types.PortFlowDirection.BidirectionalFlow direction for port_3
BooleanverifyFlowReversal (from PartialThreeWayResistance)false=true, to assert that the flow does not reverse when portFlowDirection_* does not equal Bidirectional
Modelica.Units.SI.MassFlowRatem_flow_small (from PartialThreeWayResistance)Small mass flow rate for checking flow reversal
Booleanlinearized (from PartialThreeWayValve){false, false}= true, use linear relation between m_flow and dp for any flow rate
Dynamics › Actuator position
Booleanuse_strokeTime (from ActuatorSignal)trueSet to true to continuously open and close valve using strokeTime
Modelica.Units.SI.TimestrokeTime (from ActuatorSignal)120Time needed to fully open or close actuator
Modelica.Blocks.Types.Initinit (from ActuatorSignal)Modelica.Blocks.Types.Init.InitialOutputType of initialization (no init/steady state/initial state/initial output)
Realy_start (from ActuatorSignal)1Initial position of actuator
Flow Coefficient
Buildings.Fluid.Types.CvTypesCvData (from ValveParameters)Buildings.Fluid.Types.CvTypes.OpPointSelection of flow coefficient
RealKv (from ValveParameters)Kv (metric) flow coefficient [m3/h/(bar)^(1/2)]
RealCv (from ValveParameters)Cv (US) flow coefficient [USG/min/(psi)^(1/2)]
Modelica.Units.SI.AreaAv (from ValveParameters)Av (metric) flow coefficient
Pressure-flow linearization
RealdeltaM (from ValveParameters)0.02Fraction of nominal flow rate where linearization starts, if y=1
Nominal condition
Modelica.Units.SI.MassFlowRatem_flow_nominal (from ValveParameters)Nominal mass flow rate
Modelica.Units.SI.PressureDifferencedpValve_nominal (from ValveParameters)Nominal pressure drop of fully open valve, used if CvData=Buildings.Fluid.Types.CvTypes.OpPoint
Modelica.Units.SI.PressureDifference[2]dpFixed_nominal (from PartialThreeWayValve){0, 0}Nominal pressure drop of pipes and other equipment in flow legs at port_1 and port_3
Advanced › Nominal condition
Modelica.Units.SI.DensityrhoStd (from ValveParameters)Inlet density for which valve coefficients are defined

Connectors

TypeNameDefaultDescription
Modelica.Fluid.Interfaces.FluidPort_aport_1 (from PartialThreeWayResistance)First port, typically inlet
Modelica.Fluid.Interfaces.FluidPort_bport_2 (from PartialThreeWayResistance)Second port, typically outlet
Modelica.Fluid.Interfaces.FluidPort_aport_3 (from PartialThreeWayResistance)Third port, can be either inlet or outlet
Modelica.Blocks.Interfaces.RealInputy (from ActuatorSignal)Actuator position (0: closed, 1: open)
Modelica.Blocks.Interfaces.RealOutputy_actual (from ActuatorSignal)Actual actuator position

Components

TypeNameDefaultDescription
Buildings.Fluid.Interfaces.PartialTwoPortInterfaceres1 (from PartialThreeWayResistance)
Buildings.Fluid.Interfaces.PartialTwoPortInterfaceres2 (from PartialThreeWayResistance)
Buildings.Fluid.Interfaces.PartialTwoPortInterfaceres3 (from PartialThreeWayResistance)
Buildings.Fluid.Delays.DelayFirstOrdervol (from PartialThreeWayResistance)Fluid volume to break algebraic loop

Revisions

  • March 7, 2022, by Michael Wetter:
    Set final massDynamics=energyDynamics.
    This is for #1542.
  • June 10, 2021, by Michael Wetter:
    Changed implementation of the filter and changed the parameter order to a constant as most users need not change this value.
    This is for #1498.
  • November 5, 2019, by Michael Wetter:
    Moved assignment of leakage from Buildings.Fluid.Actuators.BaseClasses.PartialThreeWayValve to the parent classes.
    This is for #1227.
  • February 20, 2012 by Michael Wetter:
    Renamed parameter dp_nominal to dpValve_nominal, and added new parameter dpFixed_nominal. See Buildings.Fluid.Actuators.UsersGuide.
  • February 14, 2012 by Michael Wetter:
    Added filter to approximate the travel time of the actuator.
  • March 25, 2011, by Michael Wetter:
    Added homotopy method.
  • June 16, 2008 by Michael Wetter:
    First implementation.