blockZoneTemperatures
Information
This sequence sets the thermal zone cooling and heating setpoints. The implementation is according to the ASHRAE Guideline 36 (G36), PART 5.B.3. The calculation is done following the steps below.
Each zone shall have separate occupied and unoccupied heating and cooling setpoints.
The active setpoints shall be determined by the Operation Mode of the zone group.
- The setpoints shall be the occupied setpoints during Occupied, Warm up, and Cool-down modes.
- The setpoints shall be the unoccupied setpoints during Unoccupied, Setback, and Setup modes.
The software shall prevent
- The heating setpoint from exceeding the cooling setpoint minus 0.56 °C (1 °F).
- The unoccupied heating setpoint from exceeding the occupied heating setpoint.
- The unoccupied cooling setpoint from being less than occupied cooling setpoint.
Where the zone has a local setpoint adjustment knob/button
- The setpoint adjustment offsets established by the occupant shall be software points that are persistent (e.g. not reset daily), but the actual offset used in control logic shall be adjusted based on limits and modes as described below.
- The adjustment shall be capable of being limited in softare. (a. As a default, the active occupied cooling setpoint shall be limited between 22 °C (72 °F) and 27 °C (80 °F); b. As a default, the active occupied heating setpoint shall be limited between 18 °C (65 °F) and 22 °C (72 °F);)
- The active heating and cooling setpoint shall be independently adjustable, respecting the limits and anti-overlap logic described above. If zone thermostat provides only a single setpoint adjustment, then the adjustment shall move both the same amount, within the limits described above.
- The adjustment shall only affect occupied setpoints in Occupied mode, and shall have no impact on setpoints in all other modes.
- At the onset of demand limiting, the local setpoint adjustment value shall be frozen. Further adjustment of the setpoint by local controls shall be suspended for the duration of the demand limit event.
Cooling demand limit setpoint adjustment
The active cooling setpoints for all zones shall be increased when a demand limit is imposed on the associated zone group. The operator shall have the ability to exempt individual zones from this adjustment through the normal Building Automation System (BAS) user interface. Changes due to demand limits are not cumulative.
- At Demand Limit Level 1, increase setpoint by 0.56 °C (1 °F).
- At Demand Limit Level 2, increase setpoint by 1.1 °C (2 °F).
- At Demand Limit Level 1, increase setpoint by 2.2 °C (4 °F).
Heating demand limit setpoint adjustment
The active heating setpoints for all zones shall be decreased when a demand limit is imposed on the associated zone group. The operator shall have the ability to exempt individual zones from this adjustment through the normal BAS user interface. Changes due to demand limits are not cumulative.
- At Demand Limit Level 1, decrease setpoint by 0.56 °C (1 °F).
- At Demand Limit Level 2, decrease setpoint by 1.1 °C (2 °F).
- At Demand Limit Level 1, decrease setpoint by 2.2 °C (4 °F).
Window switches
For zones that have operable windows with indicator switches, when the window switch indicates the window is open, the heating setpoint shall be temporarily set to 4.4 °C (40 °F) and the cooling setpoint shall be temporarily set to 49 °C (120 °F). When the window switch indicates the window is open during other than Occupied Mode, a Level 4 alarm shall be generated.
h. Occupancy sensor
- When the switch indicates the space has been unpopulated for 5 minutes continuously during the Occupied Mode, the active heating setpoint shall be decreased by 1.1 °C (2 °F) and the cooling setpoint shall be increased by 1.1 °C (2 °F).
- When the switch indicated that the space has been populated for 1 minute continuously, the active heating and cooling setpoints shall be restored to their previously values.
Hierarchy of setpoint adjustments: the following adjustment restrictions shall prevail in order from highest to lowest priority.
- Setpoint overlap restriction
- Absolute limits on local setpoint adjustment
- Window swtiches
- Demand limit (a. Occupancy sensors; b. Local setpoint adjustment)
- Scheduled setpoints based on zone group mode
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Sensors | |||
| Boolean | have_occSen | Check if the zone has occupancy sensor | |
| Boolean | have_winSen | Check if the zone has window status sensor | |
| Setpoint adjustable setting | |||
| 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 | true | Flag, set to true to exempt individual zone from demand limit setpoint adjustment |
| Setpoints limits setting | |||
| 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 |
| Demand control › Setpoint 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 |
Connectors
Components
| Type | Name | Default | Description |
|---|---|---|---|
| Buildings.Controls.OBC.CDL.Logical.Or | or2 | Check if there is cooling/heating demand limit being imposed | |
| Buildings.Controls.OBC.CDL.Logical.Edge | edg | If demand limit is imposed | |
| Buildings.Controls.OBC.CDL.Discrete.TriggeredSampler | cooSetFre | Freeze current cooling setpoint when demand limit is imposed | |
| Buildings.Controls.OBC.CDL.Logical.Not | not3 | Logical not | |
| Buildings.Controls.OBC.CDL.Logical.Or | or5 | Check if demand limit should be ignored or if there is no demand limit | |
| Buildings.Obsolete.Controls.OBC.CDL.Logical.Or3 | or1 | Check if cooling demand limit level is imposed | |
| Buildings.Controls.OBC.CDL.Logical.Not | not1 | Logic not | |
| Buildings.Controls.OBC.CDL.Reals.AddParameter | addPar3 | Increase setpoint by 2.2 degC | |
| Buildings.Controls.OBC.CDL.Reals.AddParameter | addPar1 | Increase setpoint by 1.1 degC | |
| Buildings.Controls.OBC.CDL.Reals.AddParameter | addPar2 | Increase setpoint by 0.56 degC | |
| Buildings.Controls.OBC.CDL.Reals.Multiply | pro6 | Output product of the two inputs | |
| Buildings.Controls.OBC.CDL.Reals.Multiply | pro | Output product of the two inputs | |
| Buildings.Controls.OBC.CDL.Reals.Multiply | pro1 | Output product of the two inputs | |
| Buildings.Controls.OBC.CDL.Reals.Multiply | pro2 | Output product of the two inputs | |
| Buildings.Controls.OBC.CDL.Discrete.TriggeredSampler | heaSetFre | Freeze current heating setpoint when demand limit is imposed | |
| Buildings.Obsolete.Controls.OBC.CDL.Logical.Or3 | or4 | Check if heating demand limit level is imposed | |
| Buildings.Controls.OBC.CDL.Logical.Not | not2 | Logical not | |
| Buildings.Controls.OBC.CDL.Reals.Multiply | pro7 | Output product of the two inputs | |
| Buildings.Controls.OBC.CDL.Reals.AddParameter | addPar6 | Decrease setpoint by 0.56 degC | |
| Buildings.Controls.OBC.CDL.Reals.AddParameter | addPar5 | Decrease setpoint by 1.1 degC | |
| Buildings.Controls.OBC.CDL.Reals.AddParameter | addPar4 | Decrease setpoint by 2.2 degC | |
| Buildings.Controls.OBC.CDL.Reals.Multiply | pro5 | Output product of the two inputs | |
| Buildings.Controls.OBC.CDL.Reals.Multiply | pro4 | Output product of the two inputs | |
| Buildings.Controls.OBC.CDL.Reals.Multiply | pro3 | Output product of the two inputs | |
| Buildings.Controls.OBC.CDL.Logical.Timer | tim | Check whether the zone has been unpopulated for 5 minutes continuously during occupied mode | |
| Buildings.Controls.OBC.CDL.Logical.TrueFalseHold | truHol | When the zone is unpopulated by more than 5 minute and then becomes populated, hold the change by 1 minute | |
| Buildings.Controls.OBC.CDL.Logical.Edge | edg1 | Instant when the zone becomes more than 5 minutes | |
| Buildings.Controls.OBC.CDL.Reals.AddParameter | heaSetDec | Heating setpoint decrease due to the 5 minutes unpopulation under occupied mode | |
| Buildings.Controls.OBC.CDL.Reals.AddParameter | cooSetInc | Heating setpoint increase due to the 5 minutes unpopulation under occupied mode | |
| Buildings.Controls.OBC.CDL.Discrete.TriggeredSampler | cooSetSam | Sample current cooling setpoint when zone becomes unpopulated by 5 minutes | |
| Buildings.Controls.OBC.CDL.Discrete.TriggeredSampler | heaSetSam | Sample current heating setpoint when zone becomes unpopulated by 5 minutes | |
| Buildings.Controls.OBC.CDL.Reals.Add | add1 | Adjust heating setpoint | |
| Buildings.Controls.OBC.CDL.Reals.Add | add2 | Adjust cooling setpoint | |
| Buildings.Controls.OBC.CDL.Reals.Limiter | cooSetLim | Limit occupied zone cooling setpoint | |
| Buildings.Controls.OBC.CDL.Reals.Limiter | heaSetLim | Limit occupied zone heating setpoint | |
| Buildings.Controls.OBC.CDL.Reals.AddParameter | addPar | Cooling setpoint minus 0.56 degC |
Revisions
-
October 11, 2017, by Michael Wetter:
Removed wrong conditional onyAla. -
August 17, 2017, by Jianjun Hu:
First implementation.