Pump mass flow rate and Chiller supervisory actuators didn't work

asked 2020-04-16 11:51:24 -0600

edward's avatar

updated 2020-04-17 10:24:09 -0600

I am trying to use EMS to control pump mass flow rate or branch, chiller on/off. However, no matter what mass flow rate I set, the output value in "eplusout.eso" didn't change just like the output of "autosize". And when I set "Supply Side Branch" or "the chiller" supervisory actuator to 0.0, the chiller was still working because the value of power and intlet/outlet temperature of the chiller were the same as the values when the actuators were set to 1.0.

Does anybody have an idea for this? Did I make some mistakes here?

Thank you very much

In my scenario, there are several parallel branches in the supply side of chilled water loop, and each branch like this:


I can see the available actuators in "eplusout.edd" file:

EnergyManagementSystem:Actuator Available,CHILLER EVAP PUMP 1,Pump,Pump Mass Flow Rate,[kg/s]
EnergyManagementSystem:Actuator Available,CHILLED WATER LOOP SUPPLY BRANCH 2,Supply Side Branch,On/Off Supervisory,[on/off]
EnergyManagementSystem:Actuator Available,CHILLER 1,Plant Component Chiller:Electric:EIR,On/Off Supervisory,[W]

Please find below my EMS snippet:

  Chiller Evap Pump 1,
  Pump Mass Flow Rate;

!  Ch_On_1,
!  Plant Component Chiller:Electric:EIR,
!  On/Off Supervisory;

!  Ch_Supply_On_1,
!  Chilled Water Loop Supply Branch 2,
!  Supply Side Branch,
!  On/Off Supervisory;

  ExtCtrl-Based Setpoint Manager,             !- Name
  AfterPredictorAfterHVACManagers,         !- EnergyPlus Model Calling Point
  ExtCtrlBasedSetpointManager;                !- Program Name 1

   ExtCtrlBasedSetpointManager,                !- Name
   IF (WarmupFlag == 0.0),
     SET Ch_Evap_Pump_Flow_1= 5.0,
   !  SET Ch_On_1 = 0,0,
   !  SET Ch_Supply_On_1 = 0.0,
edit retag flag offensive close merge delete


Have you got a bypass loop in the system ? The water has to go somewhere. Also try different EMS program calling points - setting the pump flow rate after everything is done is probably to late.

TomB's avatar TomB  ( 2020-04-21 21:53:00 -0600 )edit

Yes, there is a bypass loop. I have ever tried other calling points such as "InsideHVACSystemIterationLoop" and "BeginTimestepBeforePredictor". The results are the same. Thanks for your answer!

edward's avatar edward  ( 2020-04-23 01:51:19 -0600 )edit

@edward Are you able to link your IDF using Dropbox, Box, Google Drive, etc. for others to review and give help?

Aaron Boranian's avatar Aaron Boranian  ( 2020-06-17 08:32:58 -0600 )edit