blockController

Single Zone AHU controller that composes subsequences for controlling fan speed, economizer, and supply air temperature

Information

Block for single zone VAV control. It outputs supply fan speed, supply air temperature setpoints for heating, economizer and cooling, zone air heating and cooling setpoints, outdoor and return air damper positions, and valve positions of heating and cooling coils. It is implemented according to the ASHRAE Guideline 36, Section 5.18.

The sequences consist of the following subsequences.

Supply fan speed control

The fan speed control is implemented according to Section 5.18.4. It outputs the control signal yFan to adjust the speed of the supply fan. See Buildings.Controls.OBC.ASHRAE.G36.AHUs.SingleZone.VAV.SetPoints.Supply for more detailed description.

Supply air temperature setpoints

The supply air temperature setpoints control sequences are implemented based on Section 5.18.4. They are implemented in the same control block as the supply fan speed control. The supply air temperature setpoint for heating and economizer is the same; while the supply air temperature setpoint for cooling has a separate control loop. See Buildings.Controls.OBC.ASHRAE.G36.AHUs.SingleZone.VAV.SetPoints.Supply for more detailed description.

Economizer control

The Economizer control block outputs outdoor and return air damper position, i.e. yOutDamPos and yRetDamPos, as well as control signal for heating coil yHeaCoi. See Buildings.Controls.OBC.ASHRAE.G36.AHUs.SingleZone.VAV.Economizers.Controller for more detailed description.

Minimum outdoor airflow

Control sequences are implemented to compute the minimum outdoor airflow setpoint, which is used as an input for the economizer control. More detailed information can be found at Buildings.Controls.OBC.ASHRAE.G36.VentilationZones.ASHRAE62_1.Setpoints.

Zone air heating and cooling setpoints

Zone air heating and cooling setpoints as well as system operation modes are detailed at Buildings.Controls.OBC.ASHRAE.G36.AHUs.SingleZone.VAV.SetPoints.ModeAndSetPoints.

Coil valve control

The subsequence retrieves supply air temperature setpoint from previous sequence. Along with the measured supply air temperature and the supply fan status, it generates coil valve positions. See Buildings.Controls.OBC.ASHRAE.G36.AHUs.SingleZone.VAV.SetPoints.CoolingCoil for more detailed description.

Freeze protection

Based on the Section 5.18.11, the sequence enables freeze protection if the measured supply air temperature belows certain thresholds. There are three protection stages. See Buildings.Controls.OBC.ASHRAE.G36.AHUs.SingleZone.VAV.SetPoints.FreezeProtection for more detailed description.

Building pressure control

By selecting different building pressure control designs, which includes using actuated relief dampers without fans, using actuated relief dampers with relief fan, using return fans. See belows sequences for more detailed description:

Plant request

According to the Section 5.18.15, the sequence send out heating or cooling plant requests if the supply air temperature is below or above threshold value, or the heating or cooling valves have been widely open for certain times. See Buildings.Controls.OBC.ASHRAE.G36.AHUs.SingleZone.VAV.SetPoints.PlantRequests for more detailed description.

Parameters

TypeNameDefaultDescription
Buildings.Controls.OBC.ASHRAE.G36.Types.EnergyStandardeneStdEnergy standard, ASHRAE 90.1 or Title 24
Buildings.Controls.OBC.ASHRAE.G36.Types.VentilationStandardvenStdVentilation standard, ASHRAE 62.1 or Title 24
Buildings.Controls.OBC.ASHRAE.G36.Types.ControlEconomizerecoHigLimConBuildings.Controls.OBC.ASHRAE.G36.Types.ControlEconomizer.FixedDryBulbEconomizer high limit control device
Buildings.Controls.OBC.ASHRAE.G36.Types.ASHRAEClimateZoneashCliZonBuildings.Controls.OBC.ASHRAE.G36.Types.ASHRAEClimateZone.Not_SpecifiedASHRAE climate zone
Buildings.Controls.OBC.ASHRAE.G36.Types.Title24ClimateZonetit24CliZonBuildings.Controls.OBC.ASHRAE.G36.Types.Title24ClimateZone.Not_SpecifiedCalifornia Title 24 climate zone
Booleanhave_freProtrueTrue: enable freeze protection
Buildings.Controls.OBC.ASHRAE.G36.Types.FreezeStatfreStaBuildings.Controls.OBC.ASHRAE.G36.Types.FreezeStat.No_freeze_statType of freeze stat
Booleanhave_winSenfalseCheck if the zone has window status sensor
Booleanhave_occSenfalseCheck if the zone has occupancy sensor
Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoilcooCoiBuildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBasedCooling coil type
Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoilheaCoiBuildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBasedHeating coil type
Booleanhave_CO2SentrueTrue: the zone has CO2 sensor
Buildings.Controls.OBC.ASHRAE.G36.Types.PressureControlbuiPreConBuildings.Controls.OBC.ASHRAE.G36.Types.PressureControl.BarometricReliefType of building pressure control system
Booleanhave_ahuRelFantrueTrue: relief fan is part of AHU; False: the relief fans group that may associate multiple AHUs
Design conditions
RealVAreBreZon_flow0Design area component of the breathing zone outdoor airflow
RealVPopBreZon_flow0Design population component of the breathing zone outdoor airflow
Setpoints adjustment › Adjustable settings
Booleanhave_locAdjtrueTrue: the zone has local setpoint adjustment knob
BooleansepAdjtrueTrue: cooling and heating setpoint can be adjusted separately
BooleanignDemLimtrueFlag, set to true to exempt individual zone from demand limit setpoint adjustment
Setpoints adjustment › Limits
RealTActCoo_max300.15Maximum cooling setpoint during on
RealTActCoo_min295.15Minimum cooling setpoint during on
RealTActHea_max295.15Maximum heating setpoint during on
RealTActHea_min291.15Minimum heating setpoint during on
RealTWinOpeCooSet322.15Cooling setpoint when window is open
RealTWinOpeHeaSet277.15Heating setpoint when window is open
Setpoints adjustment › Demand control adjustment
RealincTSetDem_10.5Cooling setpoint increase value (degC) when cooling demand limit level 1 is imposed
RealincTSetDem_21Cooling setpoint increase value (degC) when cooling demand limit level 2 is imposed
RealincTSetDem_32Cooling setpoint increase value (degC) when cooling demand limit level 3 is imposed
RealdecTSetDem_10.5Heating setpoint decrease value (degC) when heating demand limit level 1 is imposed
RealdecTSetDem_21Heating setpoint decrease value (degC) when heating demand limit level 2 is imposed
RealdecTSetDem_32Heating setpoint decrease value (degC) when heating demand limit level 3 is imposed
Setpoints adjustment › Operation mode
RealpreWarCooTim10800Maximum cool-down or warm-up time
RealTZonFreProOn277.15Threshold temperature to activate the freeze protection mode
RealTZonFreProOff280.15Threshold temperature to end the freeze protection mode
Setpoints adjustment › Hysteresis
RealbouLim1Threshold of temperature difference for indicating the end of setback or setup mode
RealuLow-0.1Low limit of the hysteresis for checking temperature difference
RealuHigh0.1High limit of the hysteresis for checking temperature difference
Loops control › Cooling loop
Buildings.Controls.OBC.CDL.Types.SimpleControllercooLooConBuildings.Controls.OBC.CDL.Types.SimpleController.PICooling loop controller type
RealkCoo0.1Gain for cooling control loop signal
RealTiCoo900Time constant of integrator block for cooling control loop signal
RealTdCoo0.1Time constant of derivative block for cooling control loop signal
Loops control › Heating loop
Buildings.Controls.OBC.CDL.Types.SimpleControllerheaLooConBuildings.Controls.OBC.CDL.Types.SimpleController.PIHeating loop controller type
RealkHea0.1Gain for heating control loop signal
RealTiHea900Time constant of integrator block for heating control loop signal
RealTdHea0.1Time constant of derivative block for heating control loop signal
Supply setpoints › Temperature
RealTSup_max303.15Maximum supply air temperature for heating
RealTSup_min291.15Minimum supply air temperature for cooling
RealTSupDew_max290.15Maximum supply air dew-point temperature. It's typically only needed in humid type “A” climates. A typical value is 17°C. For mild and dry climates, a high set point (e.g. 24°C) should be entered for maximum efficiency
RealTSupDea_min294.15Minimum supply temperature when it is in deadband state
RealTSupDea_max297.15Maximum supply temperature when it is in deadband state
RealtemPoiOne0.5Point 1 on x-axis of control map for temperature control, when it is in heating state
RealtemPoiTwo0.25Point 2 on x-axis of control map for temperature control, when it is in cooling state
RealtemPoiThr0.5Point 3 on x-axis of control map for temperature control, when it is in cooling state
RealtemPoiFou0.75Point 4 on x-axis of control map for temperature control, when it is in cooling state
Supply setpoints › Fan speed
RealmaxHeaSpe1Maximum fan speed for heating
RealmaxCooSpe1Maximum fan speed for cooling
RealminSpe0.1Minimum fan speed
RealspePoiOne0.5Point 1 on x-axis of control map for speed control, when it is in heating state
RealspePoiTwo0.25Point 2 on x-axis of control map for speed control, when it is in cooling state
RealspePoiThr0.5Point 3 on x-axis of control map for speed control, when it is in cooling state
RealspePoiFou0.75Point 4 on x-axis of control map for speed control, when it is in cooling state
Supply setpoints › Hysteresis
ReallooHys0.05Loop output hysteresis below which the output will be seen as zero
Outdoor airflow › ASHRAE62.1
Booleanpermit_occStandbytrueTrue: occupied-standby mode is permitted
RealzonDisEff_cool1.0Zone cooling air distribution effectiveness
RealzonDisEff_heat0.8Zone heating air distribution effectiveness
Outdoor airflow › Title 24
RealVOccMin_flow0Zone minimum outdoor airflow for occupants
RealVAreMin_flow0Zone minimum outdoor airflow for building area
RealVZonMin_flow0Design zone minimum airflow setpoint
Economizer
RealuMin0.1Lower limit of controller output at which the dampers are at their limits
RealuMax0.9Upper limit of controller output at which the dampers are at their limits
Economizer › Modulation
Buildings.Controls.OBC.CDL.Types.SimpleControllerecoModConBuildings.Controls.OBC.CDL.Types.SimpleController.PIType of controller
RealkMod1Gain of modulation controller
RealTiMod300Time constant of modulation controller integrator block
RealTdMod0.1Time constant of derivative block for modulation controller
Economizer › Commissioning
RealsupFanSpe_min0.1Minimum supply fan operation speed
RealsupFanSpe_max0.9Maximum supply fan operation speed
RealVOutMin_flow1.0Calculated minimum outdoor airflow rate
RealVOutDes_flow2.0Calculated design outdoor airflow rate
RealoutDamMinFloMinSpe0.4Outdoor air damper position to supply minimum outdoor airflow at minimum fan speed
RealoutDamMinFloMaxSpe0.3Outdoor air damper position to supply minimum outdoor airflow at maximum fan speed
RealoutDamDesFloMinSpe0.9Outdoor air damper position to supply design outdoor airflow at minimum fan speed
RealoutDamDesFloMaxSpe0.8Outdoor air damper position to supply design outdoor airflow at maximum fan speed
RealoutDamPhy_max1.0Physically fixed maximum position of the outdoor air damper
RealoutDamPhy_min0.0Physically fixed minimum position of the outdoor air damper
RealretDamPhy_max1.0Physically fixed maximum position of the return air damper
RealretDamPhy_min0.0Physically fixed minimum position of the return air damper
Economizer › Hysteresis
RealdelTOutHys1Delta between the temperature hysteresis high and low limit
Cooling coil
Buildings.Controls.OBC.CDL.Types.SimpleControllercooCoiConBuildings.Controls.OBC.CDL.Types.SimpleController.PIType of controller
RealkCooCoi0.1Gain for cooling coil control loop signal
RealTiCooCoi900Time constant of integrator block for cooling coil control loop signal
RealTdCooCoi0.1Time constant of derivative block for cooling coil control loop signal
Freeze protection
IntegerminHotWatReq2Minimum heating hot-water plant request to active the heating plant
Freeze protection › Heating coil control
Buildings.Controls.OBC.CDL.Types.SimpleControllerfreHeaCoiConBuildings.Controls.OBC.CDL.Types.SimpleController.PIHeating coil controller
RealkFreHea1Gain of coil controller
RealTiFreHea0.5Time constant of integrator block
RealTdFreHea0.1Time constant of derivative block
RealyMaxFreHea1Upper limit of output
RealyMinFreHea0Lower limit of output
Pressure control › Relief damper
RealrelDam_min0.1Relief-damper position that maintains a building pressure of 12 Pa while the economizer damper is positioned to provide minimum outdoor air while the supply fan is at minimum speed
RealrelDam_max1Relief-damper position that maintains a building pressure of 12 Pa while the economizer damper is fully open and the fan speed is at cooling maximum
Pressure control › Return fan
RealspeDif-0.1Speed difference between supply and return fan to maintain building pressure at desired pressure
Pressure control
RealdpBuiSet12Building static pressure difference relative to ambient (positive to pressurize the building)
Pressure control › Relief fan
RealrelFanSpe_min0.1Relief fan minimum speed
RealkRelFan1Gain of relief fan controller, normalized using dpBuiSet
Advanced › Hysteresis
RealposHys0.01Hysteresis for damper position check
RealTHys0.25Hysteresis for checking temperature difference
RealdelEntHys1000Delta between the enthalpy hysteresis high and low limits
RealfloHys0.01*VOutMin_flowNear zero flow rate, below which the flow rate or difference will be seen as zero

Connectors

TypeNameDefaultDescription
Buildings.Controls.OBC.CDL.Interfaces.RealInputTOutOutside air temperature
Buildings.Controls.OBC.CDL.Interfaces.RealInputcooDowTimCool-down time retrieved from optimal cool-down block
Buildings.Controls.OBC.CDL.Interfaces.RealInputwarUpTimWarm-up time retrieved from optimal warm-up block
Buildings.Controls.OBC.CDL.Interfaces.BooleanInputu1OccCurrent occupancy period, true if it is in occupant period
Buildings.Controls.OBC.CDL.Interfaces.RealInputtNexOccTime to next occupied period
Buildings.Controls.OBC.CDL.Interfaces.RealInputTZonMeasured zone temperatures
Buildings.Controls.OBC.CDL.Interfaces.RealInputTOccHeaSetZone occupied heating setpoint temperatures
Buildings.Controls.OBC.CDL.Interfaces.RealInputTOccCooSetZone occupied cooling setpoint temperatures
Buildings.Controls.OBC.CDL.Interfaces.RealInputTUnoHeaSetZone unoccupied heating setpoint temperatures
Buildings.Controls.OBC.CDL.Interfaces.RealInputTUnoCooSetZone unoccupied cooling setpoint temperatures
Buildings.Controls.OBC.CDL.Interfaces.RealInputsetAdjSetpoint adjustment value
Buildings.Controls.OBC.CDL.Interfaces.RealInputcooSetAdjCooling setpoint adjustment value
Buildings.Controls.OBC.CDL.Interfaces.RealInputheaSetAdjHeating setpoint adjustment value
Buildings.Controls.OBC.CDL.Interfaces.BooleanInputu1OccSenOccupancy sensor (occupied=true, unoccupied=false)
Buildings.Controls.OBC.CDL.Interfaces.IntegerInputuCooDemLimLevCooling demand limit level
Buildings.Controls.OBC.CDL.Interfaces.IntegerInputuHeaDemLimLevHeating demand limit level
Buildings.Controls.OBC.CDL.Interfaces.RealInputppmCO2SetCO2 concentration setpoint
Buildings.Controls.OBC.CDL.Interfaces.RealInputppmCO2Detected CO2 concentration
Buildings.Controls.OBC.CDL.Interfaces.RealInputTAirSupMeasured supply air temperature
Buildings.Controls.OBC.CDL.Interfaces.BooleanInputu1WinWindow status, normally closed (true), when windows open, it becomes false
Buildings.Controls.OBC.CDL.Interfaces.RealInputhOutOutdoor air enthalpy
Buildings.Controls.OBC.CDL.Interfaces.RealInputhAirRetReturn air enthalpy
Buildings.Controls.OBC.CDL.Interfaces.RealInputTAirRetUsed only for fixed plus differential dry bulb temperature high limit cutoff
Buildings.Controls.OBC.CDL.Interfaces.BooleanInputu1FreStaFreeze protection stat signal. The stat is normally close (the input is normally true), when enabling freeze protection, the input becomes false
Buildings.Controls.OBC.CDL.Interfaces.BooleanInputu1SofSwiResFreeze protection reset signal from software switch
Buildings.Controls.OBC.CDL.Interfaces.RealInputdpBuiMeasured building static pressure difference, relative to ambient (positive if pressurized)
Buildings.Controls.OBC.CDL.Interfaces.BooleanInputu1RelFanRelief fan commanded on
Buildings.Controls.OBC.CDL.Interfaces.RealInputuRelFanRelief fan commanded speed
Buildings.Controls.OBC.CDL.Interfaces.RealInputTAirMixMeasured mixed air temperature, used for freeze protection
Buildings.Controls.OBC.CDL.Interfaces.RealInputuOutDamOutdoor damper position
Buildings.Controls.OBC.CDL.Interfaces.RealInputuSupFan_actualActual supply fan speed
Buildings.Controls.OBC.CDL.Interfaces.RealInputuCooCoi_actualCooling coil valve actual position
Buildings.Controls.OBC.CDL.Interfaces.RealInputuHeaCoi_actualHeating coil valve actual position
Buildings.Controls.OBC.CDL.Interfaces.RealOutputTSupHeaEcoSetTemperature setpoint for heating coil and for economizer
Buildings.Controls.OBC.CDL.Interfaces.RealOutputTSupCooSetCooling supply air temperature setpoint
Buildings.Controls.OBC.CDL.Interfaces.RealOutputTZonHeaSetZone heating setpoint temperature
Buildings.Controls.OBC.CDL.Interfaces.RealOutputTZonCooSetZone cooling setpoint temperature
Buildings.Controls.OBC.CDL.Interfaces.BooleanOutputy1EneCHWPumCommanded on to energize chilled water pump
Buildings.Controls.OBC.CDL.Interfaces.RealOutputyRetDamReturn air damper commanded position
Buildings.Controls.OBC.CDL.Interfaces.RealOutputyOutDamOutdoor air damper commanded position
Buildings.Controls.OBC.CDL.Interfaces.BooleanOutputy1SupFanSupply fan commanded on
Buildings.Controls.OBC.CDL.Interfaces.RealOutputySupFanSupply fan commanded speed
Buildings.Controls.OBC.CDL.Interfaces.BooleanOutputy1RetFanReturn fan commanded on
Buildings.Controls.OBC.CDL.Interfaces.RealOutputyRetFanReturn fan commanded speed
Buildings.Controls.OBC.CDL.Interfaces.BooleanOutputy1RelFanRelief fan commanded on
Buildings.Controls.OBC.CDL.Interfaces.RealOutputyRelFanRelief fan commanded speed
Buildings.Controls.OBC.CDL.Interfaces.RealOutputyCooCoiCooling coil valve commanded position
Buildings.Controls.OBC.CDL.Interfaces.RealOutputyHeaCoiHeating coil valve commanded position
Buildings.Controls.OBC.CDL.Interfaces.IntegerOutputyAlaAlarm level
Buildings.Controls.OBC.CDL.Interfaces.RealOutputyRelDamRelief damper commanded position
Buildings.Controls.OBC.CDL.Interfaces.BooleanOutputy1ExhDamExhaust damper command on
Buildings.Controls.OBC.CDL.Interfaces.IntegerOutputyChiWatResReqChilled water reset request
Buildings.Controls.OBC.CDL.Interfaces.IntegerOutputyChiPlaReqChiller plant request
Buildings.Controls.OBC.CDL.Interfaces.IntegerOutputyHotWatResReqHot water reset request
Buildings.Controls.OBC.CDL.Interfaces.IntegerOutputyHotWatPlaReqHot water plant request

Components

TypeNameDefaultDescription
Buildings.Controls.OBC.ASHRAE.G36.AHUs.SingleZone.VAV.SetPoints.SupplysetPoiVAVSupply air set point and fan signal for single zone VAV system
Buildings.Controls.OBC.CDL.Reals.PIDWithResetcooPIZone cooling control signal
Buildings.Controls.OBC.CDL.Reals.PIDWithResetheaPIZone heating control signal
Buildings.Controls.OBC.ASHRAE.G36.AHUs.SingleZone.VAV.Economizers.ControllerconEcoEconomizer control sequence
Buildings.Controls.OBC.ASHRAE.G36.VentilationZones.ASHRAE62_1.SetpointsoutAirSetPoiOutput the minimum outdoor airflow rate setpoint, when using ASHRAE 62.1
Buildings.Controls.OBC.ASHRAE.G36.ThermalZones.ZoneStateszonStaZone state
Buildings.Controls.OBC.CDL.Integers.Sources.ConstantconIntUnoccupied mode
Buildings.Controls.OBC.CDL.Integers.EqualintEquCheck if current operation mode is unoccupied mode
Buildings.Controls.OBC.CDL.Logical.NotswitchIf in unoccupied mode, switch off
Buildings.Controls.OBC.ASHRAE.G36.AHUs.SingleZone.VAV.SetPoints.ModeAndSetPointsmodSetPoiOutput zone setpoint with operation mode selection
Buildings.Controls.OBC.ASHRAE.G36.AHUs.SingleZone.VAV.SetPoints.CoolingCoilcooCoiValController for cooling coil valve
Buildings.Controls.OBC.ASHRAE.G36.AHUs.SingleZone.VAV.SetPoints.FreezeProtectionfreProFreeze protection
Buildings.Controls.OBC.ASHRAE.G36.AHUs.SingleZone.VAV.SetPoints.PlantRequestsplaReqPlant request
Buildings.Controls.OBC.ASHRAE.G36.AHUs.SingleZone.VAV.SetPoints.ReliefDamperrelDamRelief damper control
Buildings.Controls.OBC.ASHRAE.G36.AHUs.SingleZone.VAV.SetPoints.ReturnFanretFanReturn fan control
Buildings.Controls.OBC.CDL.Integers.SwitchintSwiHot water plant request
Buildings.Controls.OBC.CDL.Integers.GreaterThresholdfreProModCheck if it is in freeze protection mode
Buildings.Controls.OBC.ASHRAE.G36.VentilationZones.Title24.SetpointsminFloOutput the minimum outdoor airflow rate setpoint, when using Title 24
Buildings.Controls.OBC.ASHRAE.G36.AHUs.SingleZone.VAV.SetPoints.ReliefFanrelFanConControl of relief fan when it is part of AHU

Revisions

  • September 26, 2025, by Jianjun Hu:
    Renamed the parameter Thys to THys.
    This is for issue 4374.
  • September 18, 2023, by Jianjun Hu:
    Added coil type enumeration so to avoid using flag parameters.
    This is for issue 3526.
  • March 1, 2023, by Michael Wetter:
    Changed constants from 0 to 0.0 and 1 to 1.0.
    This is for #3267.
  • August 1, 2020, by Jianjun Hu:
    First implementation.