blockController
Information
Block for fan coil unit control. It outputs supply fan enable signal and speed signal, the supply air temperature setpoint, the zone air heating and cooling setpoints, and commanded valve positions for heating and cooling coils.
It is implemented according to the ASHRAE Guideline 36-2021, Part 5.22.
The sequences consist of the following subsequences.
Supply fan control
The supply fan control is implemented according to Part 5.22.4. It outputs
the control signals for supply fan enable yFan and the fan speed
yFanSpe.
See
Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnits.Subsequences.FanSpeed for a detailed
description.
Supply air temperature setpoint
The supply air temperature setpoint control sequences are implemented based on Part 5.22.4.
The block outputs a supply air temperature setpoint signal TSupSet,
and control signals for the heating coil yHeaCoi and the cooling coil
yCooCoi. See
Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnits.Subsequences.SupplyAirTemperature
for a detailed description.
Zone air heating and cooling setpoints
The zone air heating setpoint TZonHeaSetand cooling setpoint TZonHeaSet
as well as system operation mode signal modSetPoi.yOpeMod are described at
Buildings.Controls.OBC.ASHRAE.G36.AHUs.SingleZone.VAV.SetPoints.ModeAndSetPoints.
Plant requests
The plant requests are implemented based on Part 5.22.8.
The block outputs a chilled water plant request yChiPlaReq, chilled
water supply temperature reset request yChiWatResReq, hot water plant
request yHotWatPlaReq and hot water supply temperature reset request
yHotWatResReq. See
Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnits.Subsequences.PlantRequests
for a detailed description.
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Boolean | have_winSen | false | True if the zone has window status sensor |
| Boolean | have_occSen | false | True if the zone has occupancy sensor |
| Real | heaDea | 0.1 | Heating loop signal limit above which controller operation changes from deadband mode to heating mode |
| Real | cooDea | 0.1 | Cooling loop signal limit above which controller operation changes from deadband mode to cooling mode |
| System and building parameters | |||
| Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil | cooCoi | Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased | Cooling coil type |
| Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil | heaCoi | Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased | Heating coil type |
| PID parameters › Cooling loop control | |||
| Buildings.Controls.OBC.CDL.Types.SimpleController | cooConTyp | Buildings.Controls.OBC.CDL.Types.SimpleController.PI | Type of cooling loop signal 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 |
| PID parameters › Heating loop control | |||
| Buildings.Controls.OBC.CDL.Types.SimpleController | heaConTyp | Buildings.Controls.OBC.CDL.Types.SimpleController.PI | Type of heating loop signal 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 |
| PID parameters › Cooling coil control | |||
| Buildings.Controls.OBC.CDL.Types.SimpleController | cooCoiConTyp | Buildings.Controls.OBC.CDL.Types.SimpleController.PI | Type of cooling coil controller |
| Real | kCooCoi | 0.1 | Gain for cooling coil control signal |
| Real | TiCooCoi | 900 | Time constant of integrator block for cooling coil control signal |
| Real | TdCooCoi | 0.1 | Time constant of derivative block for cooling coil control signal |
| PID parameters › Heating coil control | |||
| Buildings.Controls.OBC.CDL.Types.SimpleController | heaCoiConTyp | Buildings.Controls.OBC.CDL.Types.SimpleController.PI | Type of heating coil controller |
| Real | kHeaCoi | 0.1 | Gain for heating coil control signal |
| Real | TiHeaCoi | 900 | Time constant of integrator block for heating coil control signal |
| Real | TdHeaCoi | 0.1 | Time constant of derivative block for heatinging coil control signal |
| Supply air setpoints | |||
| Real | uCooFan_min | 0.5 | Cooling loop signal limit at which supply air temperature is at minimum and fan speed starts to be modified |
| Real | uHeaFan_min | 0.5 | Heating loop signal limit at which supply air temperature is at maximum and fan speed starts to be modified |
| Supply air setpoints › Temperature limits | |||
| Real | TSupSet_max | Maximum supply air temperature for heating | |
| Real | TSupSet_min | Minimum supply air temperature for cooling | |
| Supply air setpoints › Fan speed | |||
| Real | deaSpe | 0.1 | Deadband mode fan speed |
| Supply air setpoints › Fan speed - Heating | |||
| Real | uHeaFan_max | 1 | Maximum heating loop signal at which fan speed is modified |
| Real | heaSpe_max | 1 | Maximum fan speed for heating |
| Real | heaSpe_min | 0.1 | Minimum fan speed for heating |
| Supply air setpoints › Fan speed - Cooling | |||
| Real | uCooFan_max | 1 | Maximum cooling loop signal at which fan speed is modified |
| Real | cooSpe_max | 1 | Maximum fan speed for cooling |
| Real | cooSpe_min | 0.1 | Minimum fan speed for cooling |
| Adjust temperature setpoint › General | |||
| Boolean | have_locAdj | true | Flag, set to true if both cooling and heating setpoint are adjustable through a single common knob |
| Boolean | sepAdj | false | True: cooling and heating setpoint can be adjusted separately |
| Boolean | ignDemLim | false | Flag, set to true to exempt individual zone from demand limit setpoint adjustment |
| Adjust temperature setpoint › Advanced | |||
| Real | bouLim | 1 | Threshold of temperature difference for indicating the end of setback or setup mode |
| Adjust temperature setpoint › Limits | |||
| Real | TActCoo_max | 300.15 | Maximum cooling setpoint during on |
| Real | TActCoo_min | 295.15 | Minimum cooling setpoint during on |
| Real | TActHea_max | 295.15 | Maximum heating setpoint during on |
| Real | TActHea_min | 291.15 | Minimum heating setpoint during on |
| Real | TWinOpeCooSet | 322.15 | Cooling setpoint when window is open |
| Real | TWinOpeHeaSet | 277.15 | Heating setpoint when window is open |
| Adjust temperature setpoint › Demand control adjustment | |||
| Real | incTSetDem_1 | 0.56 | Cooling setpoint increase value (degK) when cooling demand limit level 1 is imposed |
| Real | incTSetDem_2 | 1.1 | Cooling setpoint increase value (degK) when cooling demand limit level 2 is imposed |
| Real | incTSetDem_3 | 2.2 | Cooling setpoint increase value (degK) when cooling demand limit level 3 is imposed |
| Real | decTSetDem_1 | 0.56 | Heating setpoint decrease value (degK) when heating demand limit level 1 is imposed |
| Real | decTSetDem_2 | 1.1 | Heating setpoint decrease value (degK) when heating demand limit level 2 is imposed |
| Real | decTSetDem_3 | 2.2 | Heating setpoint decrease value (degK) when heating demand limit level 3 is imposed |
| Request limits › Chilled water plant requests | |||
| Real | chiWatPlaReqLim0 | 0.1 | Valve position limit below which zero chilled water plant requests are sent when one request was previously being sent |
| Real | chiWatPlaReqLim1 | 0.95 | Valve position limit above which one chilled water plant request is sent |
| Request limits › Chilled water temperature reset requests | |||
| Real | chiWatResReqLim0 | 0.85 | Valve position limit below which zero chilled water reset requests are sent when one request was previously being sent |
| Real | chiWatResReqLim2 | 2.78 | Temperature difference limit between setpoint and supply air temperature above which two chilled water reset requests are sent |
| Real | chiWatResReqTimLim2 | 300 | Time period for which chiWatResReqLim2 has to be exceeded before two chilled water reset requests are sent |
| Real | chiWatResReqLim3 | 5.56 | Temperature difference limit between setpoint and supply air temperature above which three chilled water reset requests are sent |
| Real | chiWatResReqTimLim3 | 300 | Time period for which chiWatResReqLim3 has to be exceeded before three chilled water reset requests are sent |
| Request limits › Hot water requests | |||
| Real | hotWatPlaReqLim0 | 0.1 | Valve position limit below which zero hot water plant requests are sent when one request was previously being sent |
| Real | hotWatResReqLim0 | 0.85 | Valve position limit below which zero hot water reset requests are sent when one request was previously being sent |
| Real | hotWatPlaReqLim1 | 0.95 | Valve position limit above which one hot water plant request is sent |
| Real | hotWatResReqLim2 | 8 | Temperature difference limit between setpoint and supply air temperature above which two hot water reset requests are sent |
| Real | hotWatResReqTimLim2 | 300 | Time period for which hotWatResReqLim2 has to be exceeded before two hot water reset requests are sent |
| Real | hotWatResReqLim3 | 17 | Temperature difference limit between setpoint and supply air temperature above which three hot water reset requests are sent |
| Real | hotWatResReqTimLim3 | 300 | Time period for which hotWatResReqLim3 has to be exceeded before three hot water reset requests are sent |
| Advanced | |||
| Real | uLow | -0.1 | Lower limit of the hysteresis for checking temperature difference |
| Real | uHigh | 0.1 | Higher limit of the hysteresis for checking temperature difference |
| Real | deaHysLim | 0.05 | Hysteresis limits for cooling and heating loop signals for deadband mode transitions |
| Real | THys | 0.1 | Hysteresis for checking temperature difference |
| Real | dFanSpe | 0.05 | Fan speed hysteresis difference |
| Advanced › Operation mode | |||
| Real | preWarCooTim | 10800 | Maximum cool-down or warm-up time |
Connectors
Components
Revisions
-
November 20, 2025, by Karthik Devaprasad:
Added error scaling factors to PI blocks for heating and cooling loop signal generation. -
March 22, 2022, by Karthik Devaprasad:
First implementation.