Buildings.Controls.OBC.ASHRAE.G36_PR1.TerminalUnits.Validation

Collection of validation models

Information

This package contains validation models for the classes in Buildings.Controls.OBC.ASHRAE.G36_PR1.TerminalUnits.

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_PR1.TerminalUnits.Validation.Controller Controller Validate model for controlling VAV terminal box with reheat

Buildings.Controls.OBC.ASHRAE.G36_PR1.TerminalUnits.Validation.Controller Buildings.Controls.OBC.ASHRAE.G36_PR1.TerminalUnits.Validation.Controller

Validate model for controlling VAV terminal box with reheat

Buildings.Controls.OBC.ASHRAE.G36_PR1.TerminalUnits.Validation.Controller

Information

This example validates Buildings.Controls.OBC.ASHRAE.G36_PR1.TerminalUnits.Controller.

Modelica definition

model Controller "Validate model for controlling VAV terminal box with reheat" Buildings.Controls.OBC.ASHRAE.G36_PR1.TerminalUnits.Controller con( AFlo=50, samplePeriod=120, V_flow_nominal=(50*3/3600)*6) "Controller for VAV terminal unit with reheat"; Buildings.Controls.OBC.ASHRAE.G36_PR1.TerminalUnits.Controller con1( AFlo=50, samplePeriod=120, V_flow_nominal=(50*3/3600)*6, have_occSen=true, have_winSen=true, have_CO2Sen=true) "Controller for VAV terminal unit with reheat"; Buildings.Controls.OBC.CDL.Continuous.Sources.Constant TSetRooCoo(k=273.15 + 24) "Room cooling setpoint "; Buildings.Controls.OBC.CDL.Continuous.Sources.Ramp disAirFlo( offset=0.02, height=0.0168, duration=3600) "Discharge airflow rate"; Buildings.Controls.OBC.CDL.Continuous.Sources.Ramp TZon( height=6, offset=273.15 + 17, duration=3600) "Measured room temperature"; Buildings.Controls.OBC.CDL.Continuous.Sources.Ramp TDis( height=4, duration=3600, offset=273.15 + 18) "Terminal unit discharge air temperature"; Buildings.Controls.OBC.CDL.Continuous.Sources.Ramp TSup( height=4, duration=3600, offset=273.15 + 14) "AHU supply air temperature"; Buildings.Controls.OBC.CDL.Integers.Sources.Constant opeMod( final k=Buildings.Controls.OBC.ASHRAE.G36_PR1.Types.OperationModes.occupied) "AHU operation mode is Occupied"; Buildings.Controls.OBC.CDL.Continuous.Sources.Constant TSetRooHea(k=273.15 + 20) "Room heating setpoint"; Buildings.Controls.OBC.CDL.Continuous.Sources.Ramp ppmCO2( duration=3600, height=800, offset=200) "CO2 concentration"; Buildings.Controls.OBC.CDL.Logical.Sources.Pulse winSta(period=3600) "WIndow status"; Buildings.Controls.OBC.CDL.Continuous.Sources.Ramp nOcc( height=5, duration=4800, offset=0) "Number of occupants"; Buildings.Controls.OBC.CDL.Continuous.Round rou(n=0) "Round the input"; Buildings.Controls.OBC.CDL.Discrete.ZeroOrderHold zerOrdHol( final samplePeriod=2) "Mimic damper position"; Buildings.Controls.OBC.CDL.Discrete.ZeroOrderHold zerOrdHol1( final samplePeriod=2) "Mimic damper position"; equation connect(TSetRooHea.y,con.TZonHeaSet); connect(TSetRooCoo.y, con.TZonCooSet); connect(disAirFlo.y, con.VDis_flow); connect(TZon.y, con.TZon); connect(TDis.y, con.TDis); connect(TSup.y, con.TSupAHU); connect(opeMod.y, con.uOpeMod); connect(nOcc.y, rou.u); connect(rou.y, con1.nOcc); connect(ppmCO2.y, con1.ppmCO2); connect(winSta.y, con1.uWin); connect(TSetRooHea.y,con1.TZonHeaSet); connect(TSetRooCoo.y, con1.TZonCooSet); connect(disAirFlo.y, con1.VDis_flow); connect(TZon.y, con1.TZon); connect(TDis.y, con1.TDis); connect(TSup.y, con1.TSupAHU); connect(opeMod.y, con1.uOpeMod); connect(con.yDam, zerOrdHol.u); connect(con1.yDam, zerOrdHol1.u); connect(zerOrdHol.y,con.yDam_actual); connect(zerOrdHol1.y,con1.yDam_actual); end Controller;