Temperature Set Point Calculator

The input pins for the function block are EffOccCurrentState, ScheduleNextState, ScheduleTUNCOS, Setpoint, HeatRampRate, CoolRampRate and ManualOverrideState. The output pins are EFF_HEAT_SETPT and EFF_COOL_SETPT. This function calculates the current Effective Heat setpoint and Effective Cool setpoint based on the current schedule information, occupancy override, and intelligent recovery information.

Inputs

Range
Input Name Low High Input Value Description
EffOccCurrentState 0 3 unconnected Eff Occ Current State = 0 (OCC)
invalid Eff Occ Current State = 0 (OCC)
VAL < low Eff Occ Current State = 0 (OCC)
VAL > high Eff Occ Current State = 0 (OCC)
ScheduleNextState 0 1, 3, 255 unconnected Schedule Next State = 255 (OCCNUL)
invalid Schedule Next State = 255 (OCCNUL)
VAL < low Schedule Next State = 255 (OCCNUL)
VAL > high Schedule Next State = 255 (OCCNUL)
ScheduleTUNCOS 0 11520 unconnected Schedule TUNCOS = 11520
(min) invalid Schedule TUNCOS = 11520
VAL < low Schedule TUNCOS = 0
VAL > high Schedule TUNCOS = 11520
Setpoint >=-Infinity <+Infinity unconnected Setpoint = 0
invalid Setpoint = 0
VAL < low Setpoint = 0
VAL > high Setpoint = 0
HeatRampRate 0 <+Infinity unconnected Heat Ramp Rate = 0
invalid Heat Ramp Rate = 0
VAL < low Heat Ramp Rate = 0
VAL > high Heat Ramp Rate = 0
CoolRampRate 0 <+Infinity unconnected Cool Ramp Rate = 0
invalid Cool Ramp Rate = 0
VAL < low Cool Ramp Rate = 0
VAL > high Cool Ramp Rate = 0
ManualOverrideState 0 3,255 unconnected Manual Override State = 255 (OCCNUL)
invalid Manual Override State = 255 (OCCNUL)
VAL < low Manual Override State = 255 (OCCNUL)
VAL > high Manual Override State = 255 (OCCNUL)

Occ = 0, Unocc=1, Bypass =2, Standby = 3, Null = 255.

Outputs

Output Name Range Description
EFF_HEAT_SETPT Any floating point number Effective Heat Setpoint
EFF_COOL_SETPT Any floating point number Effective Cool Setpoint

SetpointType

Property Value Description
Global For Lon devices, setpoints are taken from the nciTempSetpoints, which is created in NV configuration view during drag and drop action of the function block on the wiresheet. For BACnet devices, setpoints are taken from the six objects (AV_occupieedCool, AV_standbyCool, AV_unoccupiedCool, AV_occupiedHeat, AV_standbyHeat, AV_unoccupiedHeat) created in Object Configuration view during drag and drop action of the function block on the wiresheet
Custom Applicable only to Spyder Relay models. Applies setpoints to that function block alone. In the Function block, the following six extra inputs appear that are available for connection:
  • occupiedCool
  • standbyCool
  • unoccupiedCool
  • occupiedHeat
  • standbyHeat
  • unocupiedHeat

Configuration

Specify the 6 setpoints. When the TempSPCalc Function Block is used, nciSetpoints (SNVT temp setpt) is added by the Spyder Tool. nciTempSetpoints is mapped by the Tool to the first 6 Public variables under Control non-volatile. The order is:

Occupied Cool
Standby Cool
Unoccupied Cool
Occupied Heat
Standby Heat
Unoccupied Heat

You may have more than one TempSPCalc Function Block, however all blocks use the same nciSetpoints network variable and map to the same 6 public variables. The input parameters provided to TempSPCalc are EffOccCurrentState, ScheduleNextState, ScheduleTUNCOS, Setpoint, HeatRampRate, CoolRampRate and ManualOverrideState.

The valid values for each of these parameters are given below:

Parameter Valid values
EffOccCurrentState Occ, Stdby, Byp, Unocc
ScheduleNextState Occ, Stdby, Unocc, Null
ScheduleTUNCOS 0 to 11520
Setpoint Float
HeatRampRate 0 to +infinity
CoolRampRate 0 to +infinity
ManualOverrideState Occ, Stdby, Byp, Unocc, Null

Temperature Setpoint Calculator

The Temperature Setpoint Calculator uses the following 6 programmed setpoints to determine the effective heat setpoint and effective cool setpoint:

The algorithm:

  1. Verifies if inputs are within range.
  2. Computes the occupied and standby heat and cool setpoints based on the setpoint input and programmed setpoints.

Programmed Set Points

The controller is programmed with six setpoints. There are three setpoints of occupied, standby and unoccupied for heating and the same for cooling. All six can be changed from the Network via nciSetpoints. The Temperature Setpoint calculator does not place any restrictions on relationships between the setpoints and other inputs and the resulting calculations. This function block depends on the Tools writing nciSetpoints to enforce the range and relationship.

For reference, the LonMark Space Comfort Controller profile defines nciSetpoints as having a range of 10 Deg. C to 35 Deg. C with the following relationship unoccupied heat = standby heat = occupied heat = occupied cool = standby cool = unoccupied cool.

Setpoint Input

This input allows the temperature setpoint for the occupied and standby mode to be changed via the wall module and/or network. This input can be either center or offset setpoint. If the input is less than 10, then it is treated as offset setpoint. If the input is greater than or equal to 10, it is treated as center setpoint. It is the responsibility of the user to insure the results are within the desired range. That is, it is possible to combine the setpoint input and the programmed heat and cool setpoints and get an effective setpoint outside of the unoccupied setpoints.

Offset Setpoint

The setpoint acts in offset mode (that is, relative setpoint) when the value on the Setpoint input is less than 10. The setpoint input adjusts the programmed occupied and standby heating and cooling setpoints up and down by the amount on the input. The user must insure the input range is less than +10 for offset setpoint to be used. The setpoint input does not affect the unoccupied setpoints. During bypass, the occupied setpoints are adjusted. If the setpoint input is not connected or the sensor has failed, the offset is zero. You must insure consistent units. That is, if the Setpoint input is in degrees Fahrenheit, the programmed setpoints should also be in degrees Fahrenheit.

Center Setpoint

If the value on the Setpoint input is greater than or equal to 10, it is used as the center setpoint (that is, absolute setpoint). If an invalid setpoint is on the Setpoint input, then the programmed setpoints are used. The individual heat or cool setpoints for occupied and standby mode then derive from the Setpoint input minus/plus half the zero energy bands calculated from the programmed setpoints.

Example

zeb occ = programmed occupied cool - programmed occupied heat
zeb standby = programmed standby cool - programmed standby heat.
Occupied cool setpoint = setpoint + 1/2 zeb occ
Occupied heat setpoint = setpoint - 1/2 zeb occ
Standby cool setpoint = setpoint + 1/2 zeb standby
Standby heat setpoint = setpoint - 1/2 zeb standby

Manual Override State

The Manual Override State is required to turn off recovery if in manual mode. If the Manual Override State is any value other than null, then the algorithm does not know the scheduled next state and setpoint recovery is NOT done.

Note: Manual Override State does not affect the effective occupancy state. The OccArb function block already handles this. The effective setpoints never go to the state commanded by the Manual Override state input. Manual Override State just affects recovery as stated above.

Effective Occupied State

This is used by the algorithm to determine the setpoints for the current occupancy state. When the Effective Occupancy Current state is occupied or bypass, use the occupied setpoints. When the Effective Occupancy Current state is standby, use the standby setpoints. When the Effective Occupancy Current state is unoccupied, recover the setpoint to the next state of occupied or standby. No recovery is done if in manual mode. See Adaptive Intelligent Recovery section.

Heating and Cooling Ramp rates

These are used by the adaptive recovery algorithm to recover the heating and cooling setpoints from their unoccupied values.

Schedule Next state and TUNCOS

These are used by the adaptive recovery algorithm to recover the heating and cooling setpoints from their unoccupied values.

Adaptive Intelligent Recovery

Set point recovery applies to setpoint changes associated with the following schedule state changes:

Setpoint changes from occupied or standby to unoccupied state, changes from occupied to standby state, and changes from standby to occupied state use a step change in setpoint.

The heating or cooling recovery ramp begins before the next state transition time.

During the recovery ramps, the heating and cooling set points are ramped from the unoccupied setpoint to the next state setpoint. The setpoint ramps are at the target setpoint 10 minutes prior to the occupied/standby event time.

This allows the HVAC equipment an extra 10 minutes to get the space temperature to the target setpoint during recovery.

Note: Recovery is NOT done if manual occupancy is in effect.

You provide the heat and cool recovery ramp rates to the Temperature Setpoint Calculator. These can be constants, values calculated using the Ratio function block using outdoor air temperature, or some other method.

Heating and cooling recovery ramp rates can be any value greater than or equal to zero and have units of degree/Hr. A ramp rate of 0 degree/Hr means no recovery ramp for that mode. This means the setpoint steps from one setpoint to the other at the event time. (that is, No extra 10 minutes). The user must insure consistent units. That is, the ramp rates should be in the same units as the setpoints.

Note: If the user programs a rate of 1 degree/Hr and has more than 192 degree spread between OCC and UNOCC set points, the algorithm is in recovery immediately when going to UNOCC. This is because the maximum TUNCOS is 11520 minutes times 1 degree/Hr = 192 degree maximum delta.

TUNCOS Mesa

The controller implements the TUNCOS Mesa feature. This feature, also known as the Smith Mesa after Gary Smith implemented it in the T7300 series 1000. The TUNCOS Mesa was added to the algorithm to insure the HVAC equipment gets the space temperature up to setpoint by the occupied time. The recovery algorithm subtracts 10 minutes from the TUNCOS and uses that to calculate the setpoint ramps.

Effective Setpoint Limiting

This algorithm does nothing to insure the effective cooling setpoint does not go above the unoccupied cooling setpoint and the effective heating setpoint does not go below the unoccupied heating setpoint. No check is made to insure the effective heat and cool setpoints stay a minimum distance apart.