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

Revision history [back]

First off, your EMS Actuator should change the second input field for Actuated Component Unique Name. EMS_Heat_Living is incorrect, this should match with the name of the schedule object that sets the thermostat heating setpoint temperature that you want to override.

Normally, you would use an EMS internal variable to be associated with a static parameter that is set once at the beginning of the simulation (such as radiant panel heating capacity). However, EnergyPlus can only work with a pre-set list of internal variables, and the heating capacity of low-temp electric radiant panels isn't one of them (water flow rates through low-temp hydronic radiant panels does). It looks like your radiant heating capacity is set to 240 $W$ in the first object you pasted, so your EMS program would need to set the EMS actuator to fractions of that maximum for the different ranges of zone mean air temperature. You should also be sure to account for situations in the IF / ELSE logic of the EMS program where you DO want full capacity (see below).

EnergyManagementSystem:Program,
  Living_HeatingProgram,   !- Name
  IF Livingroom_Tair < 19.5,  !- Program Line 1
  Set EMS_Heat_Living_Override = 240,  !- Program Line 2
  ELSEIF Livingroom_Tair < 20.2,  !- Program Line 3
  Set EMS_Heat_Living_Override = 0.50 * 240,  !- Program Line 4
  ELSEIF Livingroom_Tair >= 20.2,  !- A5
  Set EMS_Heat_Living_Override = 0,  !- A6
  ENDIF;                   !- A7

This would be a discrete control approach where heating capacity is only 0%, 50%, or 100%. You can alter program line 4 to use continuous linear interpolation to set capacity based upon mean air temperature, like so.

  Set EMS_Heat_Living_Override = 240 * (1 - (Livingroom_Tair - 19.5) / (20.2 - 19.5)),  !- Program Line 4