modelStratifiedUnloadAtMinimumTemperature

Example that demonstrates how to draw from a hot water tank at the minimum temperature

Extends from Modelica.Icons.Example (Icon for runnable examples).

Information

Example for tank model that has three outlets, each with a valve. The valve at the bottom opens when the temperature in that tank segment is sufficiently warm to serve the load. The tank in the middle also opens when its tank temperature is sufficiently high, but only if the valve below is closed. Finally, the valve at the top only opens if no other valve is open. Hence, there is always exactly one valve open. On the right-hand side of the model is a heater that adds heat to the bottom of the tank if the top tank segment is below the set point temperature.

Parameters

TypeNameDefaultDescription
Modelica.Units.SI.VolumeVTan3Tank volume
Modelica.Units.SI.MassFlowRatem_flow_nominal3*1000/3600Nominal mass flow rate
IntegernSeg5Number of volume segments

Components

TypeNameDefaultDescription
Buildings.Fluid.Storage.StratifiedtanHot water storage tank
Buildings.Fluid.Sources.Boundary_pTloaLoad (imposed by a constant pressure boundary condition and the flow of masSou)
Buildings.Fluid.Sources.MassFlowSource_TmasSouMass flow rate into the tank
Buildings.Fluid.Actuators.Valves.TwoWayLinearvalTopControl valve at top
Buildings.Fluid.Actuators.Valves.TwoWayLinearvalMidControl valve at middle
Buildings.Fluid.Actuators.Valves.TwoWayLinearvalBotControl valve at bottom
Modelica.Thermal.HeatTransfer.Sensors.TemperatureSensorTMidTemperature tank middle
Modelica.Thermal.HeatTransfer.Sensors.TemperatureSensorTBotTemperature tank bottom
Modelica.Blocks.Logical.HysteresisonOffBotController for valve at bottom
Buildings.Fluid.Sensors.TemperatureTwoPortsenTemOutflowing temperature
Modelica.Blocks.Logical.HysteresisonOffMidController for valve at middle of tank
Modelica.Blocks.Logical.Andand2And block to compute control action for middle valve
Modelica.Blocks.Math.BooleanToRealyMidBoolean to real conversion for valve at middle
Modelica.Blocks.Math.BooleanToRealyTopBoolean to real conversion for valve at top
Modelica.Blocks.Logical.NornorNor block for top-most control valve
Modelica.Blocks.Logical.Notnot1Not block to negate control action of upper level control
Modelica.Thermal.HeatTransfer.Sources.PrescribedHeatFlowheaHeat input at the bottom of the tank
Modelica.Thermal.HeatTransfer.Sensors.TemperatureSensorTTopTemperature tank top
Modelica.Blocks.Logical.HysteresisonOffHeaController for heater at bottom
Modelica.Blocks.Math.BooleanToRealyHeaBoolean to real for valve at bottom
Modelica.Blocks.Math.BooleanToRealyBotBoolean to real conversion for valve at bottom

Contents

NameDescription
MediumMedium model

Revisions

  • June 7, 2018 by Filip Jorissen:
    Copied model from Buildings and update the model accordingly by removing CDL blocks. This is for #314.
  • June 1, 2018, by Michael Wetter:
    First implementation.
    This is for issue 1182.