Use EMS to Control Cooling Tower

asked 2025-02-24 02:39:37 -0500

Yun's avatar

I am trying to use EnergyPlus's EMS system to control the on/off operation of a cooling tower. I would like to first try turning off the cooling tower with the ID CT-A3 in April. I checked the eplus.edd file to confirm which actuators I can use, and the following is my relevant code:

EnergyManagementSystem:Actuator,
CTA3_EMS_Actuator,       !- Name
CT-A3,                   !- Actuated Component Unique Name
Plant Component CoolingTower:SingleSpeed,  !- Actuated Component Type
On/Off Supervisory;      !- Actuated Component Control Type

EnergyManagementSystem:Actuator,
CTA3Branch_EMS_Actuator, !- Name
CT-A3 CONDENSER LOOP SUPPLY SIDE BRANCH,  !- Actuated Component Unique Name
Supply Side Branch,      !- Actuated Component Type
On/Off Supervisory;      !- Actuated Component Control Type

EnergyManagementSystem:Actuator,
CTA3Pump_EMS_Actuator,   !- Name
CONDENSER LOOP_400RT-2 SUPPLY PUMP,  !- Actuated Component Unique Name
Pump,                    !- Actuated Component Type
Pump Mass Flow Rate;     !- Actuated Component Control Type

EnergyManagementSystem:ProgramCallingManager,
CTA3_EMS_CallingManager, !- Name
InsideHVACSystemIterationLoop,  !- EnergyPlus Model Calling Point
CTA3_EMSProgram;         !- Program Name 1

EnergyManagementSystem:Program,
CTA3_EMSProgram,         !- Name
IF (Month == 4),         !- Program Line 1
SET CTA3_EMS_Actuator = 0.0,  !- Program Line 2
SET CTA3Branch_EMS_Actuator = 0.0,  !- A4
SET CTA3Pump_EMS_Actuator = 0.0,  !- A5
SET EMSOperateConditionReport = 1.0,  !- A6
ELSE,                    !- A7
SET CTA3_EMS_Actuator = Null,  !- A8
SET CTA3Branch_EMS_Actuator = Null,  !- A9
SET CTA3Pump_EMS_Actuator = Null,  !- A10
SET EMSOperateConditionReport = 0.0,  !- A11
ENDIF;                   !- A12

EnergyManagementSystem:GlobalVariable,
EMSOperateConditionReport;  !- Erl Variable 1 Name

EnergyManagementSystem:GlobalVariable,
EMSOperateConditionReport;  !- Erl Variable 1 Name

I output a global variable to verify whether EMS is set up correctly. As shown in the figure, even though EMSOperateConditionReport equals 1 in April, the cooling tower still has not been turned off as configured.

image description

I have also tried using different ProgramCallingManagers, but still haven't been able to turn off the cooling tower.

May I ask what might be causing this issue? Thank you very much for your assistance.

edit retag flag offensive close merge delete

Comments

Similar post attempting this without EMS.

Aaron Boranian's avatar Aaron Boranian  ( 2025-02-24 06:33:54 -0500 )edit