modelSystem6

6th part of the system model, which adds weather data and changes to PI control

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

Information

This part of the system model adds to the model that is implemented in Buildings.Examples.Tutorial.Boiler.System5 weather data, and it changes the control to PI control.

Implementation

This model was built as follows:

  1. First, we copied the model Buildings.Examples.Tutorial.Boiler.System5 and called it Buildings.Examples.Tutorial.Boiler.System6.

  2. Next, we added the weather data as shown in the figure below.

    image

    The weather data reader is implemented using

      BoundaryConditions.WeatherData.ReaderTMY3 weaDat(
        filNam="resources/Buildings/Resources/weatherdata/USA_IL_Chicago-OHare.Intl.AP.725300_TMY3.mos")
        "Weather data reader";
    

    The yellow icon in the middle of the figure is an instance of Buildings.BoundaryConditions.WeatherData.Bus. This is required to extract the dry bulb temperature from the weather data bus.

    Note that we changed the instance TOut from Modelica.Thermal.HeatTransfer.Sources.FixedTemperature to Modelica.Thermal.HeatTransfer.Sources.PrescribedTemperature in order to use the dry-bulb temperature as an input signal.

This completes the closed loop control. When simulating the model for 2 days, or 172800 seconds, the response shown below should be seen.

image image

The figure shows that the boiler temperature is regulated between 70°C and 90°C, that the boiler inlet temperature is above 60°C, and that the room temperature and the supply water temperature are maintained at their set point.

Parameters

TypeNameDefaultDescription
Modelica.Units.SI.HeatFlowRateQ_flow_nominal20000Nominal heat flow rate of radiator
Modelica.Units.SI.TemperatureTRadSup_nominal273.15 + 50Radiator nominal supply water temperature
Modelica.Units.SI.TemperatureTRadRet_nominal273.15 + 40Radiator nominal return water temperature
Modelica.Units.SI.MassFlowRatemRad_flow_nominalQ_flow_nominal/4200/(TRadSup_nominal - TRadRet_nominal)Radiator nominal mass flow rate
Modelica.Units.SI.TemperatureTBoiSup_nominal273.15 + 70Boiler nominal supply water temperature
Modelica.Units.SI.TemperatureTBoiRet_min273.15 + 60Boiler minimum return water temperature
Modelica.Units.SI.MassFlowRatemBoi_flow_nominalQ_flow_nominal/4200/(TBoiSup_nominal - TBoiRet_min)Boiler nominal mass flow rate
Modelica.Units.SI.MassFlowRatemRadVal_flow_nominalQ_flow_nominal/4200/(TBoiSup_nominal - TRadRet_nominal)Radiator nominal mass flow rate
Modelica.Units.SI.VolumeV6*10*3Room volume
Modelica.Units.SI.MassFlowRatemA_flow_nominalV*1.2*6/3600Nominal mass flow rate
Modelica.Units.SI.HeatFlowRateQRooInt_flow4000Internal heat gains of the room

Connectors

TypeNameDefaultDescription
BoundaryConditions.WeatherData.BusweaBus

Components

TypeNameDefaultDescription
Buildings.Fluid.MixingVolumes.MixingVolumevol
Modelica.Thermal.HeatTransfer.Components.ThermalConductortheConThermal conductance with the ambient
Modelica.Thermal.HeatTransfer.Sources.PrescribedHeatFlowpreHeaPrescribed heat flow
Modelica.Thermal.HeatTransfer.Components.HeatCapacitorheaCapHeat capacity for furniture and walls
Buildings.Controls.OBC.CDL.Reals.Sources.TimeTabletimTabTime table for internal heat gain
Buildings.Fluid.HeatExchangers.Radiators.RadiatorEN442_2radRadiator
Buildings.Fluid.Sensors.TemperatureTwoPorttemSupSupply water temperature
Modelica.Thermal.HeatTransfer.Sensors.TemperatureSensortemRooRoom temperature
Buildings.Fluid.Movers.FlowControlled_m_flowpumRadPump for radiator
Buildings.Fluid.FixedResistances.JunctionmixMixer between valve and radiators
Buildings.Fluid.FixedResistances.JunctionsplSplitter of boiler loop bypass
Buildings.Fluid.FixedResistances.Junctionspl2
Buildings.Fluid.FixedResistances.Junctionmix2Mixer
Buildings.Fluid.FixedResistances.Junctionspl4Splitter for radiator loop valve bypass
Buildings.Fluid.Movers.FlowControlled_m_flowpumBoiPump for boiler
Buildings.Fluid.Boilers.BoilerPolynomialboiBoiler
Buildings.Fluid.Actuators.Valves.ThreeWayEqualPercentageLinearvalRadThree-way valve for radiator loop
Buildings.Fluid.Sources.Boundary_pTpreSouSource for pressure and to account for thermal expansion of water
Buildings.Fluid.Actuators.Valves.ThreeWayEqualPercentageLinearvalBoiThree-way valve for boiler
Buildings.Fluid.Sensors.TemperatureTwoPorttemRetReturn water temperature
Buildings.Fluid.FixedResistances.Junctionspl1Splitter
Buildings.Controls.OBC.CDL.Reals.HysteresishysTOutHysteresis for on/off based on outside temperature
Buildings.Controls.OBC.CDL.Logical.Notnot2
Modelica.Thermal.HeatTransfer.Sensors.TemperatureSensorsenTOutOutdoor temperature sensor
Buildings.Controls.OBC.CDL.Reals.HysteresishysTBoiHysteresis for on/off of boiler
Buildings.Controls.OBC.CDL.Logical.Notnot3
Buildings.Controls.OBC.CDL.Logical.Andand1
Buildings.Controls.OBC.CDL.Conversions.BooleanToRealbooToReaRad1Boiler pump signal
Buildings.Controls.OBC.CDL.Logical.Andand2
Buildings.Controls.OBC.CDL.Conversions.BooleanToRealbooToReaRad2Boiler signal
Buildings.Controls.OBC.CDL.Reals.HysteresishysPumPump hysteresis
Buildings.Controls.OBC.CDL.Conversions.BooleanToRealbooToReaRadRadiator pump signal
Buildings.Controls.OBC.CDL.Logical.Notnot1Negate output of hysteresis
Buildings.Controls.OBC.CDL.Reals.Sources.ConstantTSetBoiRetTemperature setpoint for boiler return
Buildings.Controls.OBC.CDL.Reals.PIDconPIDBoiController for valve in boiler loop
Buildings.Controls.OBC.CDL.Reals.PIDconPIDRadController for valve in radiator loop
Buildings.Controls.OBC.CDL.Reals.LineTSetSupSetpoint for supply water temperature
Buildings.Controls.OBC.CDL.Reals.Sources.ConstantTSupMinMinimum heating supply temperature
Buildings.Controls.OBC.CDL.Reals.Sources.ConstantTSupMaxMaximum heating supply temperature
Buildings.Controls.OBC.CDL.Reals.Sources.ConstantTRooMinMinimum room air temperature
BoundaryConditions.WeatherData.ReaderTMY3weaDatWeather data reader
Modelica.Thermal.HeatTransfer.Sources.PrescribedTemperatureTOutOutside temperature

Contents

NameDescription
MediumA
MediumWMedium model

Revisions

  • April 9, 2024, by Hongxiang Fu:
    Specified nominalValuesDefineDefaultPressureCurve=true in the mover component to suppress a warning. This is for #3819.
  • March 6, 2017, by Michael Wetter:
    Added missing density to computation of air mass flow rate.
    This is for #673.
  • July 2, 2015, by Michael Wetter:
    Changed control input for conPIDBoi and set reverseActing=false to address issue #436.
  • December 22, 2014 by Michael Wetter:
    Removed Modelica.Fluid.System to address issue #311.
  • March 1, 2013, by Michael Wetter:
    Added nominal pressure drop for valves as this parameter no longer has a default value.
  • January 27, 2012, by Michael Wetter:
    First implementation.