blockController
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, Part 5.18.
The sequences consist of the following subsequences.
Supply fan speed control
The fan speed control is implemented according to PART 5.18.4. It outputs
the control signal yFan to adjust the speed of the supply fan.
See
Buildings.Obsolete.Controls.OBC.ASHRAE.G36_PR1.AHUs.SingleZone.VAV.SetPoints.Supply
for more detailed description.
Supply air temperature setpoints
The supply air temperature setpoints control sequences are implemented based on PART 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.Obsolete.Controls.OBC.ASHRAE.G36_PR1.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.
Optionally, there is also an override for freeze protection, which is not part of Guideline 36.
See
Buildings.Obsolete.Controls.OBC.ASHRAE.G36_PR1.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.Obsolete.Controls.OBC.ASHRAE.G36_PR1.AHUs.SingleZone.VAV.SetPoints.OutsideAirFlow.
Zone air heating and cooling setpoints
Zone air heating and cooling setpoints as well as system operation modes are detailed at Buildings.Obsolete.Controls.OBC.ASHRAE.G36_PR1.AHUs.SingleZone.VAV.SetPoints.ModeAndSetPoints.
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Boolean | have_winSen | Check if the zone has window status sensor | |
| Boolean | have_occSen | Set to true if zones have occupancy sensor | |
| Zone setpoints | |||
| Real | TZonHeaOn | 293.15 | Heating setpoint during on |
| Real | TZonHeaOff | 285.15 | Heating setpoint during off |
| Real | TZonCooOn | 297.15 | Cooling setpoint during on |
| Real | TZonCooOff | 303.15 | Cooling setpoint during off |
| Cooling loop control | |||
| Buildings.Controls.OBC.CDL.Types.SimpleController | controllerTypeCoo | Buildings.Controls.OBC.CDL.Types.SimpleController.PI | Type of controller |
| Real | kCoo | 0.1 | Gain for cooling control loop signal |
| Real | TiCoo | 900 | Time constant of integrator block for cooling control loop signal |
| Real | TdCoo | 0.1 | Time constant of derivative block for cooling control loop signal |
| Heating loop control | |||
| Buildings.Controls.OBC.CDL.Types.SimpleController | controllerTypeHea | Buildings.Controls.OBC.CDL.Types.SimpleController.PI | Type of controller |
| Real | kHea | 0.1 | Gain for heating control loop signal |
| Real | TiHea | 900 | Time constant of integrator block for heating control loop signal |
| Real | TdHea | 0.1 | Time constant of derivative block for heating control loop signal |
| Cooling coil control | |||
| Buildings.Controls.OBC.CDL.Types.SimpleController | controllerTypeCooCoi | Buildings.Controls.OBC.CDL.Types.SimpleController.PI | Type of controller |
| Real | kCooCoi | 0.1 | Gain for cooling coil control signal |
| Real | TiCooCoil | 900 | Time constant of integrator block for cooling coil control signal |
| Real | TdCooCoil | 0.1 | Time constant of derivative block for cooling coil control signal |
| VAV Setpoints › Temperature limits | |||
| Real | TSupSetMax | Maximum supply air temperature for heating | |
| Real | TSupSetMin | Minimum supply air temperature for cooling | |
| VAV Setpoints › Speed | |||
| Real | yHeaMax | Maximum fan speed for heating | |
| Real | yMin | Minimum fan speed | |
| Real | yCooMax | 1 | Maximum fan speed for cooling |
| Outside Air Flow › Nominal condition | |||
| Real | VOutPerAre_flow | 3e-4 | Outdoor air rate per unit area |
| Real | VOutPerPer_flow | 2.5e-3 | Outdoor air rate per person |
| Real | AFlo | Floor area | |
| Outside Air Flow › Occupancy | |||
| Real | occDen | 0.05 | Default number of person in unit area |
| Real | zonDisEffHea | 0.8 | Zone air distribution effectiveness during heating |
| Real | zonDisEffCoo | 1.0 | Zone air distribution effectiveness during cooling |
| Economizer › General | |||
| Boolean | use_enthalpy | false | Set to true if enthalpy measurement is used in addition to temperature measurement |
| Boolean | use_fixed_plus_differential_drybulb | false | Set to true to only evaluate fixed plus differential dry bulb temperature high limit cutoff; shall not be used with enthalpy |
| Boolean | use_TMix | true | Set to true if mixed air temperature measurement is enabled |
| Boolean | use_G36FrePro | false | Set to true if G36 freeze protection is implemented |
| Real | uMin | 0.1 | Lower limit of controller output uTSup at which the dampers are at their limits |
| Real | uMax | 0.9 | Upper limit of controller output uTSup at which the dampers are at their limits |
| Economizer › Advanced | |||
| Real | delEntHis | 1000 | Delta between the enthalpy hysteresis high and low limits |
| Economizer › Modulation | |||
| Buildings.Controls.OBC.CDL.Types.SimpleController | controllerTypeMod | Buildings.Controls.OBC.CDL.Types.SimpleController.PI | Type of controller |
| Real | kMod | 1 | Gain of modulation controller |
| Real | TiMod | 300 | Time constant of modulation controller integrator block |
| Real | TdMod | 0.1 | Time constant of derivative block for modulation controller |
| Economizer › Freeze protection | |||
| Buildings.Controls.OBC.CDL.Types.SimpleController | controllerTypeFre | Buildings.Controls.OBC.CDL.Types.SimpleController.PI | Type of controller |
| Real | kFre | 0.1 | Gain for mixed air temperature tracking for freeze protection, used if use_TMix=true |
| Real | TiFre | 120 | Time constant of controller for mixed air temperature tracking for freeze protection. Require TiFre < TiMinOut |
| Real | TdFre | 0.1 | Time constant of derivative block for freeze protection |
| Real | TFreSet | 277.15 | Lower limit for mixed air temperature for freeze protection, used if use_TMix=true |
| Economizer › Commissioning | |||
| Real | VOutMin_flow | 1.0 | Calculated minimum outdoor airflow rate |
| Real | VOutDes_flow | 2.0 | Calculated design outdoor airflow rate |
| Real | yDam_VOutMin_minSpe | 0.4 | OA damper position to supply minimum outdoor airflow at minimum fan speed |
| Real | yDam_VOutMin_maxSpe | 0.3 | OA damper position to supply minimum outdoor airflow at maximum fan speed |
| Real | yDam_VOutDes_minSpe | 0.9 | OA damper position to supply design outdoor airflow at minimum fan speed |
| Real | yDam_VOutDes_maxSpe | 0.8 | OA damper position to supply design outdoor airflow at maximum fan speed |
| Real | outDamPhyPosMax | 1.0 | Physically fixed maximum position of the outdoor air damper |
| Real | outDamPhyPosMin | 0.0 | Physically fixed minimum position of the outdoor air damper |
| Real | retDamPhyPosMax | 1.0 | Physically fixed maximum position of the return air damper |
| Real | retDamPhyPosMin | 0.0 | Physically fixed minimum position of the return air damper |
| Adjust temperature setpoint › General | |||
| Boolean | cooAdj | false | Flag, set to true if both cooling and heating setpoint are adjustable separately |
| Boolean | heaAdj | false | Flag, set to true if heating setpoint is adjustable |
| Boolean | sinAdj | false | Flag, set to true if both cooling and heating setpoint are adjustable through a single common knob |
| Boolean | ignDemLim | false | Flag, set to true to exempt individual zone from demand limit setpoint adjustment |
| Adjust temperature setpoint › Limits | |||
| Real | TZonCooOnMax | 300.15 | Maximum cooling setpoint during on |
| Real | TZonCooOnMin | 295.15 | Minimum cooling setpoint during on |
| Real | TZonHeaOnMax | 295.15 | Maximum heating setpoint during on |
| Real | TZonHeaOnMin | 291.15 | Minimum heating setpoint during on |
| Real | TZonCooSetWinOpe | 322.15 | Cooling setpoint when window is open |
| Real | TZonHeaSetWinOpe | 277.15 | Heating setpoint when window is open |
| Adjust temperature setpoint › Demand control adjustment | |||
| Real | incTSetDem_1 | 0.56 | Cooling setpoint increase value (degC) when cooling demand limit level 1 is imposed |
| Real | incTSetDem_2 | 1.1 | Cooling setpoint increase value (degC) when cooling demand limit level 2 is imposed |
| Real | incTSetDem_3 | 2.2 | Cooling setpoint increase value (degC) when cooling demand limit level 3 is imposed |
| Real | decTSetDem_1 | 0.56 | Heating setpoint decrease value (degC) when heating demand limit level 1 is imposed |
| Real | decTSetDem_2 | 1.1 | Heating setpoint decrease value (degC) when heating demand limit level 2 is imposed |
| Real | decTSetDem_3 | 2.2 | Heating setpoint decrease value (degC) when heating demand limit level 3 is imposed |
| Advanced | |||
| Real | uLow | -0.1 | Low limit of the hysteresis for checking temperature difference |
| Real | uHigh | 0.1 | High limit of the hysteresis for checking temperature difference |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| Buildings.Controls.OBC.CDL.Interfaces.RealInput | TOut | Outside air temperature | |
| Buildings.Controls.OBC.CDL.Interfaces.RealInput | warUpTim | Warm-up time retrieved from optimal warm-up block | |
| Buildings.Controls.OBC.CDL.Interfaces.RealInput | cooDowTim | Cool-down time retrieved from optimal cool-down block | |
| Buildings.Controls.OBC.CDL.Interfaces.RealInput | tNexOcc | Time to next occupied period | |
| Buildings.Controls.OBC.CDL.Interfaces.RealInput | TZon | Measured zone temperatures | |
| Buildings.Controls.OBC.CDL.Interfaces.BooleanInput | uOcc | Current occupancy period, true if it is in occupant period | |
| Buildings.Controls.OBC.CDL.Interfaces.IntegerInput | uCooDemLimLev | Cooling demand limit level | |
| Buildings.Controls.OBC.CDL.Interfaces.IntegerInput | uHeaDemLimLev | Heating demand limit level | |
| Buildings.Controls.OBC.CDL.Interfaces.RealInput | TSup | Measured supply air temperature | |
| Buildings.Controls.OBC.CDL.Interfaces.RealInput | TCut | Economizer high limit cutoff. Fixed dry bulb or differential dry bulb temeprature | |
| Buildings.Controls.OBC.CDL.Interfaces.RealInput | TMix | Measured mixed air temperature, used for freeze protection if use_TMix is true | |
| Buildings.Controls.OBC.CDL.Interfaces.RealInput | nOcc | Number of occupants | |
| Buildings.Controls.OBC.CDL.Interfaces.BooleanInput | uWin | Window status, true if open, false if closed | |
| Buildings.Controls.OBC.CDL.Interfaces.RealInput | hOut | Outdoor air enthalpy | |
| Buildings.Controls.OBC.CDL.Interfaces.RealInput | hCut | Economizer enthalpy high limit cutoff. Fixed enthalpy or differential enthalpy | |
| Buildings.Controls.OBC.CDL.Interfaces.RealInput | TRet | Used only for fixed plus differential dry bulb temperature high limit cutoff | |
| Buildings.Controls.OBC.CDL.Interfaces.IntegerInput | uFreProSta | Freeze protection status, used if use_G36FrePro=true | |
| Buildings.Controls.OBC.CDL.Interfaces.RealOutput | TSupHeaEco | Temperature setpoint for heating coil and for economizer | |
| Buildings.Controls.OBC.CDL.Interfaces.RealOutput | TSupCoo | Cooling supply air temperature setpoint | |
| Buildings.Controls.OBC.CDL.Interfaces.RealOutput | yFan | Fan speed | |
| Buildings.Controls.OBC.CDL.Interfaces.RealOutput | TZonHeaSet | Heating setpoint temperature | |
| Buildings.Controls.OBC.CDL.Interfaces.RealOutput | TZonCooSet | Cooling setpoint temperature | |
| Buildings.Controls.OBC.CDL.Interfaces.RealOutput | yHeaCoi | Heating coil control signal | |
| Buildings.Controls.OBC.CDL.Interfaces.RealOutput | yCooCoi | Cooling coil control signal | |
| Buildings.Controls.OBC.CDL.Interfaces.RealOutput | yOutDamPos | Outdoor air damper position | |
| Buildings.Controls.OBC.CDL.Interfaces.RealOutput | yRetDamPos | Return air damper position |
Components
Revisions
-
March 1, 2023, by Michael Wetter:
Changed constants from0to0.0and1to1.0.
This is for #3267. -
June 20, 2020, by Jianjun Hu:
Updated the block of specifying operating mode and setpoints.
This is for #1893. -
March 10, 2020, by Jianjun Hu:
Replaced the block for calculating the operation mode and setpoint temperature with the one from the terminal unit package. The new block does not have vector-valued calculations.
This is for #1709. -
August 3, 2019, by David Blum & Kun Zhang:
First implementation.