Revision history [back]
Use a simple EnergyPlus EMS Program
You'll need:
- A sensor that reads the outdoor air temperature
- A sensor that reads the zone mean air temperature
- An actuator that controls the cooling temperature setpoint schedule
- An actuator that controls the heating temperature setpoint schedule
- A program control object, probably set to run
- A program object that reads the two sensors and modifies the setpoint schedule via actuator
```
EnergyManagementSystem:Sensor,
OutdoorTempC, !- Name
Site, !- Output:Variable or Output:Meter Index Key Name
Site Outdoor Air Drybulb Temperature; !- Output:Variable or Output:Meter Name
EnergyManagementSystem:Sensor,
ZoneTempC, !- Name
My_Zone_Name, !- Output:Variable or Output:Meter Index Key Name
Zone Mean Air Temperature; !- Output:Variable or Output:Meter Name
EnergyManagementSystem:Actuator,
HtgSetPtSchAct, !- Name
Heating_Schedule_Name, !- Actuated Component Unique Name
Schedule:Compact, !- Actuated Component Type
Schedule Value; !- Actuated Component Control Type
EnergyManagementSystem:Actuator,
ClgSetPtSchAct, !- Name
Cooling_Schedule_Name, !- Actuated Component Unique Name
Schedule:Compact, !- Actuated Component Type
Schedule Value; !- Actuated Component Control Type
EnergyManagementSystem:ProgramCallingManager,
ChangeSetpointsProgramManager, !- Name
BeginTimestepBeforePredictor, !- EnergyPlus Model Calling Point
ChangeSetpointsProgram; !- Program Name 1
EnergyManagementSystem:Program,
ChangeSetpointsProgram, !- Name
...Logic goes here...
SET HtgSetPtSchAct = whatever,
SET ClgSetPtSchAct = whatever;
Use a simple EnergyPlus EMS Program
You'll need:
- A sensor that reads the outdoor air temperature
- A sensor that reads the zone mean air temperature
- An actuator that controls the cooling temperature setpoint schedule
- An actuator that controls the heating temperature setpoint schedule
- A program control object, probably set to run
- A program object that reads the two sensors and modifies the setpoint schedule via actuator
```
EnergyManagementSystem:Sensor,
OutdoorTempC, !- Name
Site, !- Output:Variable or Output:Meter Index Key Name
Site Outdoor Air Drybulb Temperature; !- Output:Variable or Output:Meter Name EnergyManagementSystem:Sensor,
ZoneTempC, !- Name
My_Zone_Name, !- Output:Variable or Output:Meter Index Key Name
Zone Mean Air Temperature; !- Output:Variable or Output:Meter Name
Name EnergyManagementSystem:Actuator,
HtgSetPtSchAct, !- Name
Heating_Schedule_Name, !- Actuated Component Unique Name
Schedule:Compact, !- Actuated Component Type
Schedule Value; !- Actuated Component Control Type EnergyManagementSystem:Actuator,
ClgSetPtSchAct, !- Name
Cooling_Schedule_Name, !- Actuated Component Unique Name
Schedule:Compact, !- Actuated Component
Type
EnergyManagementSystem:Actuator,
ClgSetPtSchAct, !- Name
Cooling_Schedule_Name, !- Actuated Component Unique Name
Schedule:Compact, !- Actuated Component Type
Schedule Value; !- Actuated Component Control Type
Type EnergyManagementSystem:ProgramCallingManager,
ChangeSetpointsProgramManager, !- Name
BeginTimestepBeforePredictor, !- EnergyPlus Model Calling Point
ChangeSetpointsProgram; !- Program Name 1
1 EnergyManagementSystem:Program,
ChangeSetpointsProgram, !- Name
...Logic goes here...
SET HtgSetPtSchAct = whatever,
SET ClgSetPtSchAct = whatever;
whatever;