Buildings.Fluid.FMI.ExportContainers.Validation

Collection of validation models

Information

This package contains validation models for the classes in Buildings.Fluid.FMI.ExportContainers.

Note that most validation models contain simple input data which may not be realistic, but for which the correct output can be obtained through an analytic solution. The examples plot various outputs, which have been verified against these solutions. These model outputs are stored as reference data and used for continuous validation whenever models in the library change.

Extends from Modelica.Icons.ExamplesPackage (Icon for packages containing runnable examples).

Package Content

Name Description
Buildings.Fluid.FMI.ExportContainers.Validation.RoomHVAC RoomHVAC Validation model for connected single thermal zone and HVAC system
Buildings.Fluid.FMI.ExportContainers.Validation.FMUs FMUs Collection of validation models for FMU export

Buildings.Fluid.FMI.ExportContainers.Validation.RoomHVAC Buildings.Fluid.FMI.ExportContainers.Validation.RoomHVAC

Validation model for connected single thermal zone and HVAC system

Buildings.Fluid.FMI.ExportContainers.Validation.RoomHVAC

Information

This example validates the coupling of convective thermal zones with air-based HVAC systems. The model has the following three parts:

When the model is simulated, one sees that the air temperatures and the water vapor mass fraction in all four room models are the same. Note, however, that in Dymola 2017, the base case basCas reaches in the last cooling cylce of the day not quite the set point, and hence switches the cooling on time less than the other models. We attribute this to numerical approximation errors that causes a slightly different temperature trajectory. With Dymola 2017, we obtain the trajectories shown below.

Simulation results

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

Modelica definition

model RoomHVAC "Validation model for connected single thermal zone and HVAC system" extends Modelica.Icons.Example; Buildings.Fluid.FMI.ExportContainers.Examples.FMUs.HVACZone hvaCon(redeclare Buildings.Fluid.HeatExchangers.WetCoilCounterFlow cooCoi( UA_nominal=-hvaCon.QCoiC_flow_nominal/ Buildings.Fluid.HeatExchangers.BaseClasses.lmtd( T_a1=hvaCon.THeaRecLvg, T_b1=hvaCon.TASup_nominal, T_a2=hvaCon.TWSup_nominal, T_b2=hvaCon.TWRet_nominal), dp1_nominal=6000, dp2_nominal=200, show_T=true, energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial, allowFlowReversal1=hvaCon.allowFlowReversal, allowFlowReversal2=hvaCon.allowFlowReversal)) "Block that encapsulates the HVAC system"; Buildings.Fluid.FMI.ExportContainers.Examples.FMUs.ThermalZone rooCon "Block that encapsulates the thermal zone"; BaseCase baseCase; Examples.FMUs.HVACZones hvaCon2( redeclare Buildings.Fluid.HeatExchangers.WetCoilCounterFlow cooCoi( UA_nominal=-hvaCon2.QCoiC_flow_nominal/ Buildings.Fluid.HeatExchangers.BaseClasses.lmtd( T_a1=hvaCon2.THeaRecLvg, T_b1=hvaCon2.TASup_nominal, T_a2=hvaCon2.TWSup_nominal, T_b2=hvaCon2.TWRet_nominal), dp1_nominal=6000, dp2_nominal=200, show_T=true, energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial, allowFlowReversal1=hvaCon2.allowFlowReversal, allowFlowReversal2=hvaCon2.allowFlowReversal), UA=20E3, QRooInt_flow=2000, fan2(constantMassFlowRate=0)) "Block that encapsulates the HVAC system"; TwoRooms rooCon2 "Model with two rooms"; protected model BaseCase "Base case model used for the validation of the FMI interfaces" extends Buildings.Examples.Tutorial.SpaceCooling.System3( vol(energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial), fan(nominalValuesDefineDefaultPressureCurve=true), hex(dp1_nominal=200 + 10, dp2_nominal=200 + 200)); end BaseCase; model TwoRooms "Model with two simple thermal zones, each having three air flow paths" extends Buildings.Fluid.FMI.ExportContainers.Examples.FMUs.ThermalZones; end TwoRooms; equation connect(hvaCon.fluPor, rooCon.fluPor); connect(hvaCon2.fluPor, rooCon2.fluPor); connect(rooCon.TRad, hvaCon.TRadZon); connect(rooCon2.TRad1, hvaCon2.TRadZon[1]); connect(rooCon2.TRad2, hvaCon2.TRadZon[2]); end RoomHVAC;

Buildings.Fluid.FMI.ExportContainers.Validation.RoomHVAC.BaseCase Buildings.Fluid.FMI.ExportContainers.Validation.RoomHVAC.BaseCase

Base case model used for the validation of the FMI interfaces

Buildings.Fluid.FMI.ExportContainers.Validation.RoomHVAC.BaseCase

Information

This example is the base case model which is used to validate the coupling of a convective thermal zone with an air-based HVAC system.

It is based on Buildings.Examples.Tutorial.SpaceCooling.System3, and it assign some parameters to have the same configuration as Buildings.Fluid.FMI.ExportContainers.Examples.FMUs.HVACZone.

The model which is validated using this model is Buildings.Fluid.FMI.ExportContainers.Validation.RoomHVAC .

Extends from Buildings.Examples.Tutorial.SpaceCooling.System3 (Third part of the system model with air supply and closed loop control).

Parameters

TypeNameDefaultDescription
replaceable package MediumAAirMedium for air
replaceable package MediumWWaterMedium for water
VolumeV6*10*3Room volume [m3]
Realeps0.8Heat recovery effectiveness
TemperatureTASup_nominal273.15 + 18Nominal air temperature supplied to room [K]
TemperatureTRooSet273.15 + 24Nominal room air temperature [K]
TemperatureTOut_nominal273.15 + 30Design outlet air temperature [K]
TemperatureTHeaRecLvgTOut_nominal - eps*(TOut_nom...Air temperature leaving the heat recovery [K]
HeatFlowRateQRooInt_flow1000Internal heat gains of the room [W]
HeatFlowRateQRooC_flow_nominal-QRooInt_flow - 10E3/30*(TOu...Nominal cooling load of the room [W]
MassFlowRatemA_flow_nominal1.3*QRooC_flow_nominal/1006/...Nominal air mass flow rate, increased by factor 1.3 to allow for recovery after temperature setback [kg/s]
TemperatureDifferencedTFan2Estimated temperature raise across fan that needs to be made up by the cooling coil [K]
HeatFlowRateQCoiC_flow_nominal4*(QRooC_flow_nominal + mA_f...Cooling load of coil, taking into account economizer, and increased due to latent heat removal [W]
TemperatureTWSup_nominal273.15 + 16Water supply temperature [K]
TemperatureTWRet_nominal273.15 + 12Water return temperature [K]
MassFlowRatemW_flow_nominalQCoiC_flow_nominal/(TWRet_no...Nominal water mass flow rate [kg/s]

Connectors

TypeNameDescription
BusweaBus 

Modelica definition

model BaseCase "Base case model used for the validation of the FMI interfaces" extends Buildings.Examples.Tutorial.SpaceCooling.System3( vol(energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial), fan(nominalValuesDefineDefaultPressureCurve=true), hex(dp1_nominal=200 + 10, dp2_nominal=200 + 200)); end BaseCase;

Buildings.Fluid.FMI.ExportContainers.Validation.RoomHVAC.TwoRooms Buildings.Fluid.FMI.ExportContainers.Validation.RoomHVAC.TwoRooms

Model with two simple thermal zones, each having three air flow paths

Buildings.Fluid.FMI.ExportContainers.Validation.RoomHVAC.TwoRooms

Information

This model extends Buildings.Fluid.FMI.ExportContainers.Examples.FMUs.ThermalZones to implement two simple thermal zones.

Extends from Buildings.Fluid.FMI.ExportContainers.Examples.FMUs.ThermalZones (Declaration of an FMU that exports multiple thermal zones).

Parameters

TypeNameDefaultDescription
IntegernZon2Number of thermal zones in this container
IntegernPorts3Number of fluid ports for each zone (must be the same for every zone)
replaceable package MediumAAirMedium for air
VolumeV6*10*3Room volume [m3]
TemperatureTASup_nominal273.15 + 18Nominal air temperature supplied to room [K]
TemperatureTRooSet273.15 + 24Nominal room air temperature [K]
TemperatureTOut_nominal273.15 + 30Design outlet air temperature [K]
HeatFlowRateQRooInt_flow1000Internal heat gains of the room [W]
HeatFlowRateQRooC_flow_nominal-QRooInt_flow - 10E3/30*(TOu...Nominal cooling load of the room [W]
MassFlowRatemA_flow_nominal1.3*QRooC_flow_nominal/1006/...Nominal air mass flow rate, increased by factor 1.3 to allow for recovery after temperature setback [kg/s]

Connectors

TypeNameDescription
InletfluPor[nZon, nPorts]Fluid connectors
BusweaBusWeather data bus
output RealOutputTOutOutdoor temperature [K]
output RealOutputTRad1Radiative temperature [K]
output RealOutputTRad2Radiative temperature [K]

Modelica definition

model TwoRooms "Model with two simple thermal zones, each having three air flow paths" extends Buildings.Fluid.FMI.ExportContainers.Examples.FMUs.ThermalZones; end TwoRooms;