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

Revision history [back]

Outdoor Air Reset for Domestic Water Heater Supply Water Setpoint

Please help me determine what I'm doing wrong in my EnergyManagementSystem implementation of outdoor air reset for the supply water setpoint of my central domestic water heater. I started with the WaterHeaterDHWPlantLoop example IDF file. I tried using SetpointManager:OutdoorAirReset first, but couldn't get that to work.

Below is an excerpt from my IDF file. The simulation runs without errors, but the EMS code doesn't change the supply water setpoint.

EnergyManagementSystem:Program,
myTempManager, !- Name
SET myTempControl=(-2/3)OutdoorTemp+64.81, !- Program Line 1
IF myTempControl>54.444, !- Program Line 2
SET myTempControl=54.444,!- A4
ENDIF, !- A5
IF myTempControl<48.8888,!- A6
SET myTempControl=48.8888, !- A7
ENDIF; !- A8

EnergyManagementSystem:ProgramCallingManager,
myEMS Custom Controls, !- Name
AfterPredictorAfterHVACManagers, !- EnergyPlus Model Calling Point
myTempManager; !- Program Name 1

Output:EnergyManagementSystem,
Verbose, !- Actuator Availability Dictionary Reporting
Verbose, !- Internal Variable Availability Dictionary Reporting
Verbose; !- EMS Runtime Language Debug Output Level

Output:Variable,
,Site Outdoor Air Drybulb Temperature ,Timestep;
Output:Variable,*,Water Heater Use Side Outlet Temperature ,Timestep;

EnergyManagementSystem:Sensor,
OutdoorTemp, !- Name
Environment, !- Output:Variable or Output:Meter Index Key Name
Site Outdoor Air Drybulb Temperature ; !- Output:Variable or Output:Meter Name

SetpointManager:Scheduled,
Manager, !- Name
Temperature, !- Control Variable
Hot Water Set Point Temp Schedule, !- Schedule Name
Water Heater Use Loop Outlet Node; !- Setpoint Node or NodeList Name

EnergyManagementSystem:Actuator,
myTempControl, !- Name
WATER HEATER USE LOOP OUTLET NODE, !- Actuated Component Unique Name
System Node Setpoint, !- Actuated Component Type
Temperature Setpoint; !- Actuated Component Control Type

RunPeriod,
, !- Name
1, !- Begin Month
1, !- Begin Day of Month
12, !- End Month
31, !- End Day of Month
UseWeatherFile, !- Day of Week for Start Day
Yes, !- Use Weather File Holidays and Special Days
Yes, !- Use Weather File Daylight Saving Period
No, !- Apply Weekend Holiday Rule
Yes, !- Use Weather File Rain Indicators
Yes; !- Use Weather File Snow Indicators

SimulationControl,
NO, !- Do Zone Sizing Calculation
NO, !- Do System Sizing Calculation
NO, !- Do Plant Sizing Calculation
NO, !- Run Simulation for Sizing Periods
YES; !- Run Simulation for Weather File Run Periods

Site:WaterMainsTemperature,
CORRELATION, !- Calculation Method
, !- Temperature Schedule Name
16.8166666666667, !- Annual Average Outdoor Air Temperature {C}
6.3; !- Maximum Difference In Monthly Average Outdoor Air Temperatures {deltaC}

ScheduleTypeLimits,
Any Number; !- Name

Schedule:Compact,
Ambient Temp Schedule, !- Name
Any Number, !- Schedule Type Limits Name
THROUGH: 12/31, !- Field 1
FOR: AllDays, !- Field 2
UNTIL: 24:00, 22.0; !- Field 4

Schedule:Compact,
Hot Water Set Point Temp Schedule, !- Name
Any Number, !- Schedule Type Limits Name
THROUGH: 12/31, !- Field 1
FOR: AllDays, !- Field 2
UNTIL: 24:00, 60; !- Field 4

WaterHeater:Stratified,
Water Heater, !- Name
Water Heater, !- End-Use Subcategory
0.1893, !- Tank Volume {m3}
1.4, !- Tank Height {m}
VerticalCylinder, !- Tank Shape
, !- Tank Perimeter {m}
82.2222, !- Maximum Temperature Limit {C}
MasterSlave, !- Heater Priority Control
Hot Water Set Point Temp Schedule, !- Heater 1 Setpoint Temperature Schedule Name
2.0, !- Heater 1 Deadband Temperature Difference {deltaC}
4500, !- Heater 1 Capacity {W}
1.0, !- Heater 1 Height {m}
Hot Water Set Point Temp Schedule, !- Heater 2 Setpoint Temperature Schedule Name
5.0, !- Heater 2 Deadband Temperature Difference {deltaC}
4500, !- Heater 2 Capacity {W}
0.0, !- Heater 2 Height {m}
NaturalGas, !- Heater Fuel Type
0.98, !- Heater Thermal Efficiency
10, !- Off Cycle Parasitic Fuel Consumption Rate {W}
NaturalGas, !- Off Cycle Parasitic Fuel Type
0, !- Off Cycle Parasitic Heat Fraction to Tank
, !- Off Cycle Parasitic Height {m}
10, !- On Cycle Parasitic Fuel Consumption Rate {W}
NaturalGas, !- On Cycle Parasitic Fuel Type
0, !- On Cycle Parasitic Heat Fraction to Tank
, !- On Cycle Parasitic Height {m}
Schedule, !- Ambient Temperature Indicator
Ambient Temp Schedule, !- Ambient Temperature Schedule Name
, !- Ambient Temperature Zone Name
, !- Ambient Temperature Outdoor Air Node Name
0.846, !- Uniform Skin Loss Coefficient per Unit Area to Ambient Temperature {W/m2-K}
, !- Skin Loss Fraction to Zone
, !- Off Cycle Flue Loss Coefficient to Ambient Temperature {W/K}
, !- Off Cycle Flue Loss Fraction to Zone
, !- Peak Use Flow Rate {m3/s}
, !- Use Flow Rate Fraction Schedule Name
, !- Cold Water Supply Temperature Schedule Name
Water Heater Use Inlet Node, !- Use Side Inlet Node Name
Water Heater Use Outlet Node, !- Use Side Outlet Node Name
1.0, !- Use Side Effectiveness
, !- Use Side Inlet Height {m}
, !- Use Side Outlet Height {m}
, !- Source Side Inlet Node Name
, !- Source Side Outlet Node Name
, !- Source Side Effectiveness
, !- Source Side Inlet Height {m}
, !- Source Side Outlet Height {m}
FIXED, !- Inlet Mode
autosize, !- Use Side Design Flow Rate {m3/s}
, !- Source Side Design Flow Rate {m3/s}
, !- Indirect Water Heating Recovery Time {hr}
6, !- Number of Nodes
0.1, !- Additional Destratification Conductivity {W/m-K}
0.15, !- Node 1 Additional Loss Coefficient {W/K}
, !- Node 2 Additional Loss Coefficient {W/K}
, !- Node 3 Additional Loss Coefficient {W/K}
, !- Node 4 Additional Loss Coefficient {W/K}
, !- Node 5 Additional Loss Coefficient {W/K}
0.1; !- Node 6 Additional Loss Coefficient {W/K}

WaterUse:Connections,
Domestic Hot Water, !- Name
Domestic Hot Water Inlet Node, !- Inlet Node Name
Domestic Hot Water Outlet Node, !- Outlet Node Name
, !- Supply Water Storage Tank Name
, !- Reclamation Water Storage Tank Name
, !- Hot Water Supply Temperature Schedule Name
, !- Cold Water Supply Temperature Schedule Name
NONE, !- Drain Water Heat Exchanger Type
, !- Drain Water Heat Exchanger Destination
, !- Drain Water Heat Exchanger U-Factor Times Area {W/K}
Sinks, !- Water Use Equipment 1 Name
Showers, !- Water Use Equipment 2 Name
Showers2, !- Water Use Equipment 3 Name
Showers3, !- Water Use Equipment 4 Name
Showers4, !- Water Use Equipment 5 Name
Sinks2, !- Water Use Equipment 6 Name
Sinks3, !- Water Use Equipment 7 Name
Sinks4; !- Water Use Equipment 8 Name

Outdoor Air Reset for Domestic Water Heater Supply Water Setpoint

Please help me determine what I'm doing wrong in my EnergyManagementSystem implementation of outdoor air reset for the supply water setpoint of my central domestic water heater. I started with the WaterHeaterDHWPlantLoop example IDF file. I tried using SetpointManager:OutdoorAirReset first, but couldn't get that to work.

Below is an excerpt from my IDF file. The simulation runs without errors, but the EMS code doesn't change the supply water setpoint.

EnergyManagementSystem:Program,
  
myTempManager, !- Name
!- Name SET myTempControl=(-2/3)OutdoorTemp+64.81, myTempControl=(-2/3)*OutdoorTemp+64.81, !- Program Line 1
IF myTempControl>54.444, !- Program Line 2
SET myTempControl=54.444,!- A4
ENDIF, !- A5
IF myTempControl<48.8888,!- A6
SET myTempControl=48.8888, !- A7
ENDIF; !- A8

EnergyManagementSystem:ProgramCallingManager,
myEMS Custom Controls, !- Name
AfterPredictorAfterHVACManagers, !- EnergyPlus Model Calling Point
myTempManager; !- Program Name 1

Output:EnergyManagementSystem,
Verbose, !- Actuator Availability Dictionary Reporting
Verbose, !- Internal Variable Availability Dictionary Reporting
Verbose; !- EMS Runtime Language Debug Output Level

Output:Variable,
,Site Output:Variable,*,Site Outdoor Air Drybulb Temperature ,Timestep;
Output:Variable,*,Water Heater Use Side Outlet Temperature ,Timestep;

EnergyManagementSystem:Sensor,
OutdoorTemp, !- Name
!- Name Environment, !- Output:Variable or Output:Meter Index Key Name
Site Outdoor Air Drybulb Temperature ; !- Output:Variable or Output:Meter Name

SetpointManager:Scheduled,
Manager, !- Name
!- Name Temperature, !- Control Variable
Hot Water Set Point Temp Schedule, !- Schedule Name
Water Heater Use Loop Outlet Node; !- Setpoint Node or NodeList Name

EnergyManagementSystem:Actuator,
myTempControl, !- Name
!- Name WATER HEATER USE LOOP OUTLET NODE, !- Actuated Component Unique Name
System Node Setpoint, !- Actuated Component Type
Temperature Setpoint; !- Actuated Component Control Type

RunPeriod,
, !- Name
, !- Name 1, !- Begin Month
1, !- Begin Day of Month
12, !- End Month
31, !- End Day of Month
UseWeatherFile, !- Day of Week for Start Day
Yes, !- Use Weather File Holidays and Special Days
Yes, !- Use Weather File Daylight Saving Period
No, !- Apply Weekend Holiday Rule
Yes, !- Use Weather File Rain Indicators
Yes; !- Use Weather File Snow Indicators

SimulationControl,
NO, !- Do Zone Sizing Calculation
NO, !- Do System Sizing Calculation
NO, !- Do Plant Sizing Calculation
NO, !- Run Simulation for Sizing Periods
YES; !- Run Simulation for Weather File Run Periods

Site:WaterMainsTemperature,
CORRELATION, !- Calculation Method
,
, !- Temperature Schedule Name
16.8166666666667, !- Annual Average Outdoor Air Temperature {C}
6.3; !- Maximum Difference In Monthly Average Outdoor Air Temperatures {deltaC}

ScheduleTypeLimits,
Any Number; !- Name
!- Name
Schedule:Compact,
Ambient Temp Schedule, !- Name
Any Number, !- Schedule Type Limits Name
THROUGH: 12/31, !- Field 1
FOR: AllDays, !- Field 2
UNTIL: 24:00, 22.0; !- Field 4

Schedule:Compact,
Hot Water Set Point Temp Schedule, !- Name
Any Number, !- Schedule Type Limits Name
THROUGH: 12/31, !- Field 1
FOR: AllDays, !- Field 2
UNTIL: 24:00, 60; !- Field 4

WaterHeater:Stratified,
Water Heater, !- Name
!- Name Water Heater, !- End-Use Subcategory
0.1893, !- Tank Volume {m3}
1.4, !- Tank Height {m}
VerticalCylinder, !- Tank Shape
,
, !- Tank Perimeter {m}
82.2222, !- Maximum Temperature Limit {C}
MasterSlave, !- Heater Priority Control
Hot Water Set Point Temp Schedule, !- Heater 1 Setpoint Temperature Schedule Name
2.0, !- Heater 1 Deadband Temperature Difference {deltaC}
4500, !- Heater 1 Capacity {W}
1.0, !- Heater 1 Height {m}
Hot Water Set Point Temp Schedule, !- Heater 2 Setpoint Temperature Schedule Name
5.0, !- Heater 2 Deadband Temperature Difference {deltaC}
4500, !- Heater 2 Capacity {W}
0.0, !- Heater 2 Height {m}
NaturalGas, !- Heater Fuel Type
0.98, !- Heater Thermal Efficiency
10, !- Off Cycle Parasitic Fuel Consumption Rate {W}
NaturalGas, !- Off Cycle Parasitic Fuel Type
0, !- Off Cycle Parasitic Heat Fraction to Tank
,
, !- Off Cycle Parasitic Height {m}
10, !- On Cycle Parasitic Fuel Consumption Rate {W}
NaturalGas, !- On Cycle Parasitic Fuel Type
0, !- On Cycle Parasitic Heat Fraction to Tank
,
, !- On Cycle Parasitic Height {m}
Schedule, !- Ambient Temperature Indicator
Ambient Temp Schedule, !- Ambient Temperature Schedule Name
,
, !- Ambient Temperature Zone Name
,
, !- Ambient Temperature Outdoor Air Node Name
0.846, !- Uniform Skin Loss Coefficient per Unit Area to Ambient Temperature {W/m2-K}
,
, !- Skin Loss Fraction to Zone
,
, !- Off Cycle Flue Loss Coefficient to Ambient Temperature {W/K}
,
, !- Off Cycle Flue Loss Fraction to Zone
,
, !- Peak Use Flow Rate {m3/s}
,
, !- Use Flow Rate Fraction Schedule Name
,
, !- Cold Water Supply Temperature Schedule Name
Water Heater Use Inlet Node, !- Use Side Inlet Node Name
Water Heater Use Outlet Node, !- Use Side Outlet Node Name
1.0, !- Use Side Effectiveness
,
, !- Use Side Inlet Height {m}
,
, !- Use Side Outlet Height {m}
,
, !- Source Side Inlet Node Name
,
, !- Source Side Outlet Node Name
,
, !- Source Side Effectiveness
,
, !- Source Side Inlet Height {m}
,
, !- Source Side Outlet Height {m}
FIXED, !- Inlet Mode
autosize, !- Use Side Design Flow Rate {m3/s}
,
, !- Source Side Design Flow Rate {m3/s}
,
, !- Indirect Water Heating Recovery Time {hr}
6, !- Number of Nodes
0.1, !- Additional Destratification Conductivity {W/m-K}
0.15, !- Node 1 Additional Loss Coefficient {W/K}
,
, !- Node 2 Additional Loss Coefficient {W/K}
,
, !- Node 3 Additional Loss Coefficient {W/K}
,
, !- Node 4 Additional Loss Coefficient {W/K}
,
, !- Node 5 Additional Loss Coefficient {W/K}
0.1; !- Node 6 Additional Loss Coefficient {W/K}

WaterUse:Connections,
Domestic Hot Water, !- Name
!- Name Domestic Hot Water Inlet Node, !- Inlet Node Name
Domestic Hot Water Outlet Node, !- Outlet Node Name
,
, !- Supply Water Storage Tank Name
,
, !- Reclamation Water Storage Tank Name
,
, !- Hot Water Supply Temperature Schedule Name
,
, !- Cold Water Supply Temperature Schedule Name
NONE, !- Drain Water Heat Exchanger Type
,
, !- Drain Water Heat Exchanger Destination
,
, !- Drain Water Heat Exchanger U-Factor Times Area {W/K}
Sinks, !- Water Use Equipment 1 Name
Showers, !- Water Use Equipment 2 Name
Showers2, !- Water Use Equipment 3 Name
Showers3, !- Water Use Equipment 4 Name
Showers4, !- Water Use Equipment 5 Name
Sinks2, !- Water Use Equipment 6 Name
Sinks3, !- Water Use Equipment 7 Name
Sinks4; !- Water Use Equipment 8 Name

Outdoor Air Reset for Domestic Water Heater Supply Water Setpoint

Please help me determine what I'm doing wrong in my EnergyManagementSystem implementation of outdoor air reset for the supply water setpoint of my central domestic water heater. I started with the WaterHeaterDHWPlantLoop example IDF file. I tried using SetpointManager:OutdoorAirReset first, but couldn't get that to work.

Below is an excerpt from my IDF file. The simulation runs without errors, but the EMS code doesn't change the supply water setpoint.

EnergyManagementSystem:Program,
  myTempManager,       !- Name
  SET myTempControl=(-2/3)*OutdoorTemp+64.81,   !- Program Line 1
  IF myTempControl>54.444, !- Program Line 2
  SET myTempControl=54.444,!- A4
  ENDIF,           !- A5
  IF myTempControl<48.8888,!- A6
  SET myTempControl=48.8888,  !- A7
  ENDIF;           !- A8

EnergyManagementSystem:ProgramCallingManager,
  myEMS Custom Controls,   !- Name
  AfterPredictorAfterHVACManagers,  !- EnergyPlus Model Calling Point
  myTempManager;       !- Program Name 1

Output:EnergyManagementSystem,
  Verbose,         !- Actuator Availability Dictionary Reporting
  Verbose,         !- Internal Variable Availability Dictionary Reporting
  Verbose;         !- EMS Runtime Language Debug Output Level

Output:Variable,*,Site Outdoor Air Drybulb Temperature ,Timestep;
Output:Variable,*,Water Heater Use Side Outlet Temperature ,Timestep;

EnergyManagementSystem:Sensor,
  OutdoorTemp,       !- Name
  Environment,       !- Output:Variable or Output:Meter Index Key Name
  Site Outdoor Air Drybulb Temperature ;  !- Output:Variable or Output:Meter Name

SetpointManager:Scheduled,
  Manager,         !- Name
  Temperature,       !- Control Variable
  Hot Water Set Point Temp Schedule,  !- Schedule Name
  Water Heater Use Loop Outlet Node;  !- Setpoint Node or NodeList Name

EnergyManagementSystem:Actuator,
  myTempControl,       !- Name
  WATER HEATER USE LOOP OUTLET NODE,  !- Actuated Component Unique Name
  System Node Setpoint,   !- Actuated Component Type
  Temperature Setpoint;   !- Actuated Component Control Type

RunPeriod,
  ,             !- Name
  1,             !- Begin Month
  1,             !- Begin Day of Month
  12,             !- End Month
  31,             !- End Day of Month
  UseWeatherFile,       !- Day of Week for Start Day
  Yes,           !- Use Weather File Holidays and Special Days
  Yes,           !- Use Weather File Daylight Saving Period
  No,             !- Apply Weekend Holiday Rule
  Yes,           !- Use Weather File Rain Indicators
  Yes;           !- Use Weather File Snow Indicators

SimulationControl,
  NO,             !- Do Zone Sizing Calculation
  NO,             !- Do System Sizing Calculation
  NO,             !- Do Plant Sizing Calculation
  NO,             !- Run Simulation for Sizing Periods
  YES;           !- Run Simulation for Weather File Run Periods

Site:WaterMainsTemperature,
  CORRELATION,       !- Calculation Method
  ,             !- Temperature Schedule Name
  16.8166666666667,     !- Annual Average Outdoor Air Temperature {C}
  6.3;           !- Maximum Difference In Monthly Average Outdoor Air Temperatures {deltaC}

ScheduleTypeLimits,
  Any Number;         !- Name

Schedule:Compact,
  Ambient Temp Schedule,   !- Name
  Any Number,         !- Schedule Type Limits Name
  THROUGH: 12/31,       !- Field 1
  FOR: AllDays,       !- Field 2
  UNTIL: 24:00, 22.0;     !- Field 4

Schedule:Compact,
  Hot Water Set Point Temp Schedule,  !- Name
  Any Number,         !- Schedule Type Limits Name
  THROUGH: 12/31,       !- Field 1
  FOR: AllDays,       !- Field 2
  UNTIL: 24:00, 60;     !- Field 4

WaterHeater:Stratified,
  Water Heater,       !- Name
  Water Heater,       !- End-Use Subcategory
  0.1893,           !- Tank Volume {m3}
  1.4,           !- Tank Height {m}
  VerticalCylinder,     !- Tank Shape
  ,             !- Tank Perimeter {m}
  82.2222,         !- Maximum Temperature Limit {C}
  MasterSlave,       !- Heater Priority Control
  Hot Water Set Point Temp Schedule,  !- Heater 1 Setpoint Temperature Schedule Name
  2.0,           !- Heater 1 Deadband Temperature Difference {deltaC}
  4500,           !- Heater 1 Capacity {W}
  1.0,           !- Heater 1 Height {m}
  Hot Water Set Point Temp Schedule,  !- Heater 2 Setpoint Temperature Schedule Name
  5.0,           !- Heater 2 Deadband Temperature Difference {deltaC}
  4500,           !- Heater 2 Capacity {W}
  0.0,           !- Heater 2 Height {m}
  NaturalGas,         !- Heater Fuel Type
  0.98,           !- Heater Thermal Efficiency
  10,             !- Off Cycle Parasitic Fuel Consumption Rate {W}
  NaturalGas,         !- Off Cycle Parasitic Fuel Type
  0,             !- Off Cycle Parasitic Heat Fraction to Tank
  ,             !- Off Cycle Parasitic Height {m}
  10,             !- On Cycle Parasitic Fuel Consumption Rate {W}
  NaturalGas,         !- On Cycle Parasitic Fuel Type
  0,             !- On Cycle Parasitic Heat Fraction to Tank
  ,             !- On Cycle Parasitic Height {m}
  Schedule,         !- Ambient Temperature Indicator
  Ambient Temp Schedule,   !- Ambient Temperature Schedule Name
  ,             !- Ambient Temperature Zone Name
  ,             !- Ambient Temperature Outdoor Air Node Name
  0.846,           !- Uniform Skin Loss Coefficient per Unit Area to Ambient Temperature {W/m2-K}
  ,             !- Skin Loss Fraction to Zone
  ,             !- Off Cycle Flue Loss Coefficient to Ambient Temperature {W/K}
  ,             !- Off Cycle Flue Loss Fraction to Zone
  ,             !- Peak Use Flow Rate {m3/s}
  ,             !- Use Flow Rate Fraction Schedule Name
  ,             !- Cold Water Supply Temperature Schedule Name
  Water Heater Use Inlet Node,  !- Use Side Inlet Node Name
  Water Heater Use Outlet Node,  !- Use Side Outlet Node Name
  1.0,           !- Use Side Effectiveness
  ,             !- Use Side Inlet Height {m}
  ,             !- Use Side Outlet Height {m}
  ,             !- Source Side Inlet Node Name
  ,             !- Source Side Outlet Node Name
  ,             !- Source Side Effectiveness
  ,             !- Source Side Inlet Height {m}
  ,             !- Source Side Outlet Height {m}
  FIXED,           !- Inlet Mode
  autosize,         !- Use Side Design Flow Rate {m3/s}
  ,             !- Source Side Design Flow Rate {m3/s}
  ,             !- Indirect Water Heating Recovery Time {hr}
  6,             !- Number of Nodes
  0.1,           !- Additional Destratification Conductivity {W/m-K}
  0.15,           !- Node 1 Additional Loss Coefficient {W/K}
  ,             !- Node 2 Additional Loss Coefficient {W/K}
  ,             !- Node 3 Additional Loss Coefficient {W/K}
  ,             !- Node 4 Additional Loss Coefficient {W/K}
  ,             !- Node 5 Additional Loss Coefficient {W/K}
  0.1;           !- Node 6 Additional Loss Coefficient {W/K}

WaterUse:Connections,
  Domestic Hot Water,     !- Name
  Domestic Hot Water Inlet Node,  !- Inlet Node Name
  Domestic Hot Water Outlet Node,   !- Outlet Node Name
  ,             !- Supply Water Storage Tank Name
  ,             !- Reclamation Water Storage Tank Name
  ,             !- Hot Water Supply Temperature Schedule Name
  ,             !- Cold Water Supply Temperature Schedule Name
  NONE,           !- Drain Water Heat Exchanger Type
  ,             !- Drain Water Heat Exchanger Destination
  ,             !- Drain Water Heat Exchanger U-Factor Times Area {W/K}
  Sinks,           !- Water Use Equipment 1 Name
  Showers,         !- Water Use Equipment 2 Name
  Showers2,         !- Water Use Equipment 3 Name
  Showers3,         !- Water Use Equipment 4 Name
  Showers4,         !- Water Use Equipment 5 Name
  Sinks2,           !- Water Use Equipment 6 Name
  Sinks3,           !- Water Use Equipment 7 Name
  Sinks4;           !- Water Use Equipment 8 Name

Outdoor Air Reset for Domestic Water Heater Supply Water Setpoint

Please help me determine what I'm doing wrong in my EnergyManagementSystem implementation of outdoor air reset for the supply water setpoint of my central domestic water heater. I started with the WaterHeaterDHWPlantLoop example IDF file. I tried using SetpointManager:OutdoorAirReset first, but couldn't get that to work.

Below is an excerpt from my IDF file. The simulation runs without errors, but the EMS code doesn't change the supply water setpoint.

EnergyManagementSystem:Program,
  myTempManager,       !- Name
  SET myTempControl=(-2/3)*OutdoorTemp+64.81,   !- Program Line 1
  IF myTempControl>54.444, !- Program Line 2
  SET myTempControl=54.444,!- A4
  ENDIF,           !- A5
  IF myTempControl<48.8888,!- A6
  SET myTempControl=48.8888,  !- A7
  ENDIF;           !- A8

EnergyManagementSystem:ProgramCallingManager,
  myEMS Custom Controls,   !- Name
  AfterPredictorAfterHVACManagers,  !- EnergyPlus Model Calling Point
  myTempManager;       !- Program Name 1

Output:EnergyManagementSystem,
  Verbose,         !- Actuator Availability Dictionary Reporting
  Verbose,         !- Internal Variable Availability Dictionary Reporting
  Verbose;         !- EMS Runtime Language Debug Output Level

Output:Variable,*,Site Outdoor Air Drybulb Temperature ,Timestep;
Output:Variable,*,Water Heater Use Side Outlet Temperature ,Timestep;

EnergyManagementSystem:Sensor,
  OutdoorTemp,       !- Name
  Environment,       !- Output:Variable or Output:Meter Index Key Name
  Site Outdoor Air Drybulb Temperature ;  !- Output:Variable or Output:Meter Name

SetpointManager:Scheduled,
  Manager,         !- Name
  Temperature,       !- Control Variable
  Hot Water Set Point Temp Schedule,  !- Schedule Name
  Water Heater Use Loop Outlet Node;  !- Setpoint Node or NodeList Name

EnergyManagementSystem:Actuator,
  myTempControl,       !- Name
  WATER HEATER USE LOOP OUTLET NODE,  !- Actuated Component Unique Name
  System Node Setpoint,   !- Actuated Component Type
  Temperature Setpoint;   !- Actuated Component Control Type

RunPeriod,
  ,             !- Name
  1,             !- Begin Month
  1,             !- Begin Day of Month
  12,             !- End Month
  31,             !- End Day of Month
  UseWeatherFile,       !- Day of Week for Start Day
  Yes,           !- Use Weather File Holidays and Special Days
  Yes,           !- Use Weather File Daylight Saving Period
  No,             !- Apply Weekend Holiday Rule
  Yes,           !- Use Weather File Rain Indicators
  Yes;           !- Use Weather File Snow Indicators

SimulationControl,
  NO,             !- Do Zone Sizing Calculation
  NO,             !- Do System Sizing Calculation
  NO,             !- Do Plant Sizing Calculation
  NO,             !- Run Simulation for Sizing Periods
  YES;           !- Run Simulation for Weather File Run Periods

Site:WaterMainsTemperature,
  CORRELATION,       !- Calculation Method
  ,             !- Temperature Schedule Name
  16.8166666666667,     !- Annual Average Outdoor Air Temperature {C}
  6.3;           !- Maximum Difference In Monthly Average Outdoor Air Temperatures {deltaC}

ScheduleTypeLimits,
  Any Number;         !- Name

Schedule:Compact,
  Ambient Temp Schedule,   !- Name
  Any Number,         !- Schedule Type Limits Name
  THROUGH: 12/31,       !- Field 1
  FOR: AllDays,       !- Field 2
  UNTIL: 24:00, 22.0;     !- Field 4

Schedule:Compact,
  Hot Water Set Point Temp Schedule,  !- Name
  Any Number,         !- Schedule Type Limits Name
  THROUGH: 12/31,       !- Field 1
  FOR: AllDays,       !- Field 2
  UNTIL: 24:00, 60;     !- Field 4

WaterHeater:Stratified,
  Water Heater,       !- Name
  Water Heater,       !- End-Use Subcategory
  0.1893,           !- Tank Volume {m3}
  1.4,           !- Tank Height {m}
  VerticalCylinder,     !- Tank Shape
  ,             !- Tank Perimeter {m}
  82.2222,         !- Maximum Temperature Limit {C}
  MasterSlave,       !- Heater Priority Control
  Hot Water Set Point Temp Schedule,  !- Heater 1 Setpoint Temperature Schedule Name
  2.0,           !- Heater 1 Deadband Temperature Difference {deltaC}
  4500,           !- Heater 1 Capacity {W}
  1.0,           !- Heater 1 Height {m}
  Hot Water Set Point Temp Schedule,  !- Heater 2 Setpoint Temperature Schedule Name
  5.0,           !- Heater 2 Deadband Temperature Difference {deltaC}
  4500,           !- Heater 2 Capacity {W}
  0.0,           !- Heater 2 Height {m}
  NaturalGas,         !- Heater Fuel Type
  0.98,           !- Heater Thermal Efficiency
  10,             !- Off Cycle Parasitic Fuel Consumption Rate {W}
  NaturalGas,         !- Off Cycle Parasitic Fuel Type
  0,             !- Off Cycle Parasitic Heat Fraction to Tank
  ,             !- Off Cycle Parasitic Height {m}
  10,             !- On Cycle Parasitic Fuel Consumption Rate {W}
  NaturalGas,         !- On Cycle Parasitic Fuel Type
  0,             !- On Cycle Parasitic Heat Fraction to Tank
  ,             !- On Cycle Parasitic Height {m}
  Schedule,         !- Ambient Temperature Indicator
  Ambient Temp Schedule,   !- Ambient Temperature Schedule Name
  ,             !- Ambient Temperature Zone Name
  ,             !- Ambient Temperature Outdoor Air Node Name
  0.846,           !- Uniform Skin Loss Coefficient per Unit Area to Ambient Temperature {W/m2-K}
  ,             !- Skin Loss Fraction to Zone
  ,             !- Off Cycle Flue Loss Coefficient to Ambient Temperature {W/K}
  ,             !- Off Cycle Flue Loss Fraction to Zone
  ,             !- Peak Use Flow Rate {m3/s}
  ,             !- Use Flow Rate Fraction Schedule Name
  ,             !- Cold Water Supply Temperature Schedule Name
  Water Heater Use Inlet Node,  !- Use Side Inlet Node Name
  Water Heater Use Outlet Node,  !- Use Side Outlet Node Name
  1.0,           !- Use Side Effectiveness
  ,             !- Use Side Inlet Height {m}
  ,             !- Use Side Outlet Height {m}
  ,             !- Source Side Inlet Node Name
  ,             !- Source Side Outlet Node Name
  ,             !- Source Side Effectiveness
  ,             !- Source Side Inlet Height {m}
  ,             !- Source Side Outlet Height {m}
  FIXED,           !- Inlet Mode
  autosize,         !- Use Side Design Flow Rate {m3/s}
  ,             !- Source Side Design Flow Rate {m3/s}
  ,             !- Indirect Water Heating Recovery Time {hr}
  6,             !- Number of Nodes
  0.1,           !- Additional Destratification Conductivity {W/m-K}
  0.15,           !- Node 1 Additional Loss Coefficient {W/K}
  ,             !- Node 2 Additional Loss Coefficient {W/K}
  ,             !- Node 3 Additional Loss Coefficient {W/K}
  ,             !- Node 4 Additional Loss Coefficient {W/K}
  ,             !- Node 5 Additional Loss Coefficient {W/K}
  0.1;           !- Node 6 Additional Loss Coefficient {W/K}

WaterUse:Connections,
  Domestic Hot Water,     !- Name
  Domestic Hot Water Inlet Node,  !- Inlet Node Name
  Domestic Hot Water Outlet Node,   !- Outlet Node Name
  ,             !- Supply Water Storage Tank Name
  ,             !- Reclamation Water Storage Tank Name
  ,             !- Hot Water Supply Temperature Schedule Name
  ,             !- Cold Water Supply Temperature Schedule Name
  NONE,           !- Drain Water Heat Exchanger Type
  ,             !- Drain Water Heat Exchanger Destination
  ,             !- Drain Water Heat Exchanger U-Factor Times Area {W/K}
  Sinks,           !- Water Use Equipment 1 Name
  Showers,         !- Water Use Equipment 2 Name
  Showers2,         !- Water Use Equipment 3 Name
  Showers3,         !- Water Use Equipment 4 Name
  Showers4,         !- Water Use Equipment 5 Name
  Sinks2,           !- Water Use Equipment 6 Name
  Sinks3,           !- Water Use Equipment 7 Name
  Sinks4;           !- Water Use Equipment 8 Name