Question-and-Answer Resource for the Building Energy Modeling Community
Get started with the Help page
Ask Your Question

Revision history [back]

The final input field of the ZoneControl:Thermostat object in EnergyPlus sets a Temperature Difference Between Cutout And Setpoint. If you want the air conditioning to turn on when the indoor air temperature reaches 29 $^\circ{C}$, then that value should be used in the Cooling Setpoint Temperature Schedule Name referenced by the ThermostatSetpoint:DualSetpoint object. If you want the air conditioning to turn on until the indoor air temperature reaches 26 $^\circ{C}$, then you should set the Temperature Difference Between Cutout And Setpoint input to 3 $^\circ{C}$.

The ZoneControl:Thermostat:StagedDualSetpoint object is more complex with possible input fields for multiple stages of heating/cooling and throttling ranges of heating/cooling. It doesn't sound like that is what you want to simulate.

There is a very similar post on this topic for further reference.

The final input field of the ZoneControl:Thermostat object in EnergyPlus sets a Temperature Difference Between Cutout And Setpoint. This creates a temperature difference between the setpoint and the temperature when the equipment should turn off ("cutout" temperature). You can see an example applied to the cooling setpoint below.

2 - Single Cooling SetPoint
If ( MAT > ThermostatSetpoint:SingleCooling )
    ThermostatSetpoint:SingleCooling = ThermostatSetpoint:SingleCooling - DeltaT
Else
    No change
End If

As you can see, EnergyPlus will turn on cooling equipment when the indoor mean air temperature ($MAT$) is above the cooling setpoint. When that happens, the cooling equipment will "overcool" the zone down to the cutout temperature. The cutout temperature is equal to the setpoint temperature minus the temperature difference between cutout and setpoint ($DeltaT$).

This means that if you want the air conditioning to turn on when the indoor air temperature reaches 29 $^\circ{C}$, then that is the setpoint temperature value that should be used in the Cooling Setpoint Temperature Schedule Name referenced by the ThermostatSetpoint:DualSetpoint object. If you want the air conditioning to turn on until the indoor air temperature reaches 26 $^\circ{C}$, then that is the cutout temperature and you should set the Temperature Difference Between Cutout And Setpoint input to 3 $^\circ{C}$.

The ZoneControl:Thermostat:StagedDualSetpoint object is more complex with possible input fields for multiple stages of heating/cooling and throttling ranges of heating/cooling. It doesn't sound like that is what you want to simulate.

There is a very similar post on this topic for further reference.

The final input field of the ZoneControl:Thermostat object in EnergyPlus sets a Temperature Difference Between Cutout And Setpoint. This creates a temperature difference between the setpoint and the temperature when the equipment should turn off ("cutout" temperature). You can see an example applied to the cooling setpoint below.

2 - Single Cooling SetPoint
If ( MAT > ThermostatSetpoint:SingleCooling )
    ThermostatSetpoint:SingleCooling = ThermostatSetpoint:SingleCooling - DeltaT
Else
    No change
End If

As you can see, EnergyPlus will turn on cooling equipment when the indoor mean air temperature ($MAT$) is above the cooling setpoint. When that happens, the cooling equipment will "overcool" the zone down to the cutout temperature. The cutout temperature is equal to the setpoint temperature minus the temperature difference between cutout and setpoint ($DeltaT$).

This means that if you want the air conditioning to turn on when the indoor air temperature reaches 29 $^\circ{C}$, then that is the setpoint temperature value that should be used in the Cooling Setpoint Temperature Schedule Name referenced by the ThermostatSetpoint:DualSetpoint object. If you want the air conditioning to turn on until the indoor air temperature reaches 26 $^\circ{C}$, then that is the cutout temperature and you should set the Temperature Difference Between Cutout And Setpoint input to 3 $^\circ{C}$.

The ZoneControl:Thermostat:StagedDualSetpoint object is more complex with possible input fields for multiple stages of heating/cooling and throttling ranges of heating/cooling. It doesn't sound like that is what you want to simulate.

There is a very similar post on this topic for further reference.

UPDATE

If you want to only apply this cutout temperature to cooling and not heating, then you will need to replace the ZoneControl:Thermostat object with a ZoneControl:StagedDualSetpoint object. Instead of defining one cutout temperature difference applied to both heating and cooling, this object allows you to define a Heating Throttling Temperature Range separately from a Cooling Throttling Temperature Range. These have different impacts on the thermostat control in the zone, and are based on zone mean air temperature from the previous timestep:

2 - Single Cooling SetPoint
If ( MAT_previous_timestep > ThermostatSetpoint:SingleCooling )
    ThermostatSetpoint:SingleCooling = ThermostatSetpoint:SingleCooling - 0.5 * Cooling Throttling Range
Else
    ThermostatSetpoint:SingleCooling = ThermostatSetpoint:SingleCooling + 0.5 * Cooling Throttling Range
End If

This means that if you want the air conditioning to turn on when the indoor air temperature reaches 29 $^\circ{C}$ and turn off when the indoor air temperature is cooled to 26 $^\circ{C}$, then your cooling temperature setpoint should be the average (27.5 $^\circ{C}$) and the cooling throttling temperature range should be 3 $^\circ{C}$. If you want to maintain the same heating setpoint without a cutout or throttling range, then set the heating throttline temperature range to 0 $^\circ{C}$.

The final input field of the ZoneControl:Thermostat object in EnergyPlus sets a Temperature Difference Between Cutout And Setpoint. This creates a temperature difference between the setpoint and the temperature when the equipment should turn off ("cutout" temperature). You can see an example applied to the cooling setpoint below.

2 - Single Cooling SetPoint
If ( MAT > ThermostatSetpoint:SingleCooling )
    ThermostatSetpoint:SingleCooling = ThermostatSetpoint:SingleCooling - DeltaT
Else
    No change
End If

As you can see, EnergyPlus will turn on cooling equipment when the indoor mean air temperature ($MAT$) is above the cooling setpoint. When that happens, the cooling equipment will "overcool" the zone down to the cutout temperature. The cutout temperature is equal to the setpoint temperature minus the temperature difference between cutout and setpoint ($DeltaT$).

This means that if you want the air conditioning to turn on when the indoor air temperature reaches 29 $^\circ{C}$, then that is the setpoint temperature value that should be used in the Cooling Setpoint Temperature Schedule Name referenced by the ThermostatSetpoint:DualSetpoint object. If you want the air conditioning to turn on until the indoor air temperature reaches 26 $^\circ{C}$, then that is the cutout temperature and you should set the Temperature Difference Between Cutout And Setpoint input to 3 $^\circ{C}$.

The ZoneControl:Thermostat:StagedDualSetpoint object is more complex with possible input fields for multiple stages of heating/cooling and throttling ranges of heating/cooling. It doesn't sound like that is what you want to simulate.

There is a very similar post on this topic for further reference.

UPDATE

If you want to only apply this cutout temperature to cooling and not heating, then you will need to replace the ZoneControl:Thermostat object with a ZoneControl:StagedDualSetpointZoneControl:Thermostat:StagedDualSetpoint object. Instead of defining one cutout temperature difference applied to both heating and cooling, this object allows you to define a Heating Throttling Temperature Range separately from a Cooling Throttling Temperature Range. These have different impacts on the thermostat control in the zone, and are based on zone mean air temperature from the previous timestep:

2 - Single Cooling SetPoint
If ( MAT_previous_timestep > ThermostatSetpoint:SingleCooling )
    ThermostatSetpoint:SingleCooling = ThermostatSetpoint:SingleCooling - 0.5 * Cooling Throttling Range
Else
    ThermostatSetpoint:SingleCooling = ThermostatSetpoint:SingleCooling + 0.5 * Cooling Throttling Range
End If

This means that if you want the air conditioning to turn on when the indoor air temperature reaches 29 $^\circ{C}$ and turn off when the indoor air temperature is cooled to 26 $^\circ{C}$, then your cooling temperature setpoint should be the average (27.5 $^\circ{C}$) and the cooling throttling temperature range should be 3 $^\circ{C}$. If you want to maintain the same heating setpoint without a cutout or throttling range, then set the heating throttline temperature range to 0 $^\circ{C}$.