Buildings.Controls.OBC.ASHRAE.G36.AHUs.MultiZone.VAV.SetPoints.OutdoorAirFlow.Title24.Validation

Collection of validation models

Information

This package contains validation models for the classes in Buildings.Controls.OBC.ASHRAE.G36.AHUs.MultiZone.VAV.SetPoints.OutdoorAirFlow.Title24.

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.

Package Content

Name Description
Buildings.Controls.OBC.ASHRAE.G36.AHUs.MultiZone.VAV.SetPoints.OutdoorAirFlow.Title24.Validation.OutdoorAirFlow OutdoorAirFlow Validate the sequences of setting AHU level minimum outdoor airflow rate

Buildings.Controls.OBC.ASHRAE.G36.AHUs.MultiZone.VAV.SetPoints.OutdoorAirFlow.Title24.Validation.OutdoorAirFlow Buildings.Controls.OBC.ASHRAE.G36.AHUs.MultiZone.VAV.SetPoints.OutdoorAirFlow.Title24.Validation.OutdoorAirFlow

Validate the sequences of setting AHU level minimum outdoor airflow rate

Buildings.Controls.OBC.ASHRAE.G36.AHUs.MultiZone.VAV.SetPoints.OutdoorAirFlow.Title24.Validation.OutdoorAirFlow

Information

This model shows how to compose the subsequences to find the minimum outdoor airflow setpoint of an AHU unit that serves three zones.

Modelica definition

model OutdoorAirFlow "Validate the sequences of setting AHU level minimum outdoor airflow rate" Buildings.Controls.OBC.ASHRAE.G36.AHUs.MultiZone.VAV.SetPoints.OutdoorAirFlow.Title24.AHU ahu( final minOADes=Buildings.Controls.OBC.ASHRAE.G36.Types.OutdoorAirSection.DedicatedDampersAirflow, final have_CO2Sen=have_CO2Sen, final VAbsOutAir_flow=0.5, final VDesOutAir_flow=1) "AHU level minimum outdoor airflow setpoint"; Buildings.Controls.OBC.ASHRAE.G36.AHUs.MultiZone.VAV.SetPoints.OutdoorAirFlow.Title24.SumZone zonToAhu( final nZon=nZon, final nGro=nGro, final zonGroMat=zonGroMat, final have_CO2Sen=have_CO2Sen) "From zone level to AHU level"; protected parameter Boolean have_CO2Sen=true "True: there are zones have CO2 sensor"; parameter Integer nZon=4 "Total number of zones"; parameter Integer nGro=2 "Total number of groups"; parameter Integer zonGroMat[nGro,nZon]={{1,1,0,0},{0,0,1,1}} "Zone matrix with zone group as row index and zone as column index. It flags which zone is grouped in which zone group"; Buildings.Controls.OBC.CDL.Integers.Sources.Constant opeMod[nGro]( final k={Buildings.Controls.OBC.ASHRAE.G36.Types.OperationModes.occupied, Buildings.Controls.OBC.ASHRAE.G36.Types.OperationModes.unoccupied}) "AHU operation mode is Occupied"; Buildings.Controls.OBC.CDL.Reals.Sources.Constant zonAbsMinFlo[nZon]( final k={0.1,0.12,0.2,0.15}) "Zone absolute minimum flow"; Buildings.Controls.OBC.CDL.Reals.Sources.Constant zonDesMinFlo[nZon]( final k={0.15,0.2,0.25,0.3}) "Adjusted area component flow"; Buildings.Controls.OBC.CDL.Reals.Sources.Constant co2Loo[nZon]( final k={0.3,0.25,0.4,0.5}) "Zone CO2 loop signal"; Buildings.Controls.OBC.CDL.Reals.Sources.Constant outAirFlo(final k=1) "Adjusted area component flow"; equation connect(opeMod.y, zonToAhu.uOpeMod); connect(zonAbsMinFlo.y, zonToAhu.VZonAbsMin_flow); connect(zonDesMinFlo.y, zonToAhu.VZonDesMin_flow); connect(co2Loo.y, zonToAhu.uCO2); connect(zonToAhu.VSumZonAbsMin_flow, ahu.VSumZonAbsMin_flow); connect(zonToAhu.VSumZonDesMin_flow, ahu.VSumZonDesMin_flow); connect(zonToAhu.yMaxCO2, ahu.uCO2Loo_max); connect(outAirFlo.y, ahu.VAirOut_flow); end OutdoorAirFlow;