modelSubstationParallel

Extends from BaseClasses.SubstationParallelInterface.

Information

This is a model for a district heating substation with parallel domestic hot water and space heating stations. This substation contains a base station for domestic hot water (DHW) preparation and a base station for space heating (SH) together with an optional bypass valve.

Care must be taken when chosing the nominal values for differential presure, mass flow and/or heat load, as different issues might occure:

  • In cases where the differential pressure is below its nominal value, the nominal mass flow is not reached. Thus, in times of high heat demand, not enough heat might be delivered to the individual stations.
  • For differential pressure above the nominal value, the mass flow through the valve might be quite high. This, can lead to a flicker in the valve controllers in the base stations.
  • Nominal values of mass flow should be chosen such that the heat load can be satisfied (maybe even with supply and return temperatures away from their nominal value).
  • Nominal heat load should not be set too strict, as nominal values for supply and return temperature are used to derive nominal mass flow values.

Parameters

TypeNameDefaultDescription
Modelica.SIunits.MassFlowRatem1_flow_nominal (from SubstationParallelInterface)Nominal mass flow rate
Modelica.SIunits.MassFlowRatem2_flow_nominal (from SubstationParallelInterface)Nominal mass flow rate
Modelica.SIunits.MassFlowRatem3_flow_nominal (from SubstationParallelInterface)Nominal mass flow rate
Advanced
Medium.MassFlowRatem1_flow_small (from SubstationParallelInterface)1E-4*abs(m1_flow_nominal)Small mass flow rate for regularization of zero flow
Medium.MassFlowRatem2_flow_small (from SubstationParallelInterface)1E-4*abs(m2_flow_nominal)Small mass flow rate for regularization of zero flow
Medium.MassFlowRatem3_flow_small (from SubstationParallelInterface)1E-4*abs(m3_flow_nominal)Small mass flow rate for regularization of zero flow
Nominal condition
Modelica.SIunits.PressureDifferencedp1_nominal (from SubstationParallelInterface)Nominal pressure difference
Modelica.SIunits.TemperatureTemSup_nominalNominal supply temperature
Flow resistance › Primary side
Booleanfrom_dp1 (from SubstationParallelInterface)false= true, use m_flow = f(dp) else dp = f(m_flow)
BooleanlinearizeFlowResistance1 (from SubstationParallelInterface)false= true, use linear relation between m_flow and dp for any flow rate
Assumptions
BooleanallowFlowReversal1 (from SubstationParallelInterface)true= false to simplify equations, assuming, but not enforcing, no flow reversal
BooleanallowFlowReversal2 (from SubstationParallelInterface)true= false to simplify equations, assuming, but not enforcing, no flow reversal
BooleanallowFlowReversal3 (from SubstationParallelInterface)true= false to simplify equations, assuming, but not enforcing, no flow reversal
Advanced › Diagnostics
Booleanshow_T (from SubstationParallelInterface)false= true, if actual temperature at port is computed
Bypass
Booleanuse_bypasstrueUse a bypass valve

Connectors

TypeNameDefaultDescription
Modelica.Fluid.Interfaces.FluidPort_aport_a2 (from SubstationParallelInterface)Fluid connector a for station1 (positive design flow direction is from port_a2 to port_b2)
Modelica.Fluid.Interfaces.FluidPort_bport_b2 (from SubstationParallelInterface)Fluid connector b for station1 (positive design flow direction is from port_a2 to port_b2)
Modelica.Fluid.Interfaces.FluidPort_aport_a3 (from SubstationParallelInterface)Fluid connector a for station2 (positive design flow direction is from port_a3 to port_b3)
Modelica.Fluid.Interfaces.FluidPort_bport_b3 (from SubstationParallelInterface)Fluid connector b for station2 (positive design flow direction is from port_a3 to port_b3)
Modelica.Fluid.Interfaces.FluidPort_bport_b1 (from SubstationParallelInterface)Fluid connector b at primary side for district heating network (positive design flow direction is from port_a1 to port_b1)
Modelica.Fluid.Interfaces.FluidPort_aport_a1 (from SubstationParallelInterface)Fluid connector a for district heating network (positive design flow direction is from port_a1 to port_b1)
Modelica.Blocks.Interfaces.RealOutputP (from SubstationParallelInterface)Electric power
Modelica.Thermal.HeatTransfer.Interfaces.HeatPort_aport_htOutside temperature port

Components

TypeNameDefaultDescription
Medium.MassFlowRatem1_flow (from SubstationParallelInterface)port_a1.m_flowMass flow rate from port_a to port_b (m_flow > 0 is design flow direction)
Modelica.SIunits.PressureDifferencedp1 (from SubstationParallelInterface)port_a1.p - port_b1.pPressure difference between port_a and port_b
Medium.ThermodynamicStatesta_a1 (from SubstationParallelInterface)Medium.setState_phX(port_a1.p, noEvent(actualStream(port_a1.h_outflow)), noEvent(actualStream(port_a1.Xi_outflow)))Medium properties in port_a
Medium.ThermodynamicStatesta_b1 (from SubstationParallelInterface)Medium.setState_phX(port_b1.p, noEvent(actualStream(port_b1.h_outflow)), noEvent(actualStream(port_b1.Xi_outflow)))Medium properties in port_b
Medium.MassFlowRatem2_flow (from SubstationParallelInterface)port_a2.m_flowMass flow rate from port_a2 to port_b2 (m_flow > 0 is design flow direction)
Modelica.SIunits.PressureDifferencedp2 (from SubstationParallelInterface)port_a2.p - port_b2.pPressure difference between port_a2 and port_b2
Medium.ThermodynamicStatesta_a2 (from SubstationParallelInterface)Medium.setState_phX(port_a2.p, noEvent(actualStream(port_a2.h_outflow)), noEvent(actualStream(port_a2.Xi_outflow)))Medium properties in port_a2
Medium.ThermodynamicStatesta_b2 (from SubstationParallelInterface)Medium.setState_phX(port_b2.p, noEvent(actualStream(port_b2.h_outflow)), noEvent(actualStream(port_b2.Xi_outflow)))Medium properties in port_b2
Medium.MassFlowRatem_flow3 (from SubstationParallelInterface)port_a3.m_flowMass flow rate from port_a3 to port_b3 (m_flow > 0 is design flow direction)
Modelica.SIunits.PressureDifferencedp3 (from SubstationParallelInterface)port_a3.p - port_b3.pPressure difference between port_a3 and port_b3
Medium.ThermodynamicStatesta_a3 (from SubstationParallelInterface)Medium.setState_phX(port_a3.p, noEvent(actualStream(port_a3.h_outflow)), noEvent(actualStream(port_a3.Xi_outflow)))Medium properties in port_a3
Medium.ThermodynamicStatesta_b3 (from SubstationParallelInterface)Medium.setState_phX(port_b3.p, noEvent(actualStream(port_b3.h_outflow)), noEvent(actualStream(port_b3.Xi_outflow)))Medium properties in port_b3
Modelica.Blocks.Sources.RealExpressiontotal_power (from SubstationParallelInterface)sum of all power consumption/generation in component
IBPSA.Fluid.Sensors.RelativePressuresenRelPre (from SubstationParallelInterface)
BaseClasses.BaseStationbaseStation1
BaseClasses.BaseStationbaseStation2
IBPSA.Fluid.Sensors.TemperatureTwoPortsenTemSL
BaseClasses.Bypassbypass

Revisions

  • Feburary 27, 2019, by Benedikt Leitner:
    Implementation and added User's guide.