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

Control LowTemperatureRadiant using indoor and outdoor temperature with EMS?

asked 2018-12-26 11:57:57 -0500

kenny.c's avatar

Dear all

I'm using ZoneHVAC:LowTemperatureRadiant:ConstantFlow to simulate TABS (cooling and heating) in EnergyPlus. I want to control my TABS using the outdoor dry bulb and indoor operative temperature. Since ZoneHVAC:LowTemperatureRadiant:ConstantFlow only provides one control parameter, I thought of using the Energy Management System (EMS) inside EnergyPlus.

I have 15 different zones divided into two categories: Day zones and Night zones. All the Day zones are connected to one boiler and one chiller. The Night zones are connected to one boiler and one chiller as well (different from the Day Zones). So in total there are 2 boilers and 2 chillers.

In EMS:Sensor I've got 15 different object for zone operative temperatures and one object for the Outdoor Dry Bulb Temperature using 'AIR LOOP AHU OUTDOOR AIR INLET' as 'Output: Variable or Output: Meter Index Key Name' and 'System Node Temperature' as 'Output: Variable or Output:Meter Name'.

For the EMS:Actuator I've got 4 objects, these are the different schedules of my boilers (2x) and chillers (2x). The schedules are the same as in class 'PlantEquipmentOperationSchemes'. As 'Actuated Component Unique Name' I put the name of the schedule used in 'PlantEquipmentOperationSchemes'. As 'Actuated Component Type' I wrote 'Schedule: Compact' and as 'Actuated Component Control Type' I wrote 'Schedule Value'.

Then here's an example of the EMS: Program I wrote:

"Name: BoilerDayControl

IF (OutdoorT<5) && (Tapp1Day<20)

SET BoilerTABSday=1


SET BoilerTABSday=0


OutdoorT and Tapp1Day are objects from EMS:Sensor and BoilerTABSday is an object of the EMS:Actuator.

In the EMS:ProgramCallingManager, I used 'InsideHVACSystemIterationLoop' as 'EnergyPlus Model Calling Point'.

Now when I look at my output, I see that the water flow rate is still flowing through my TABS even if the Outdoor Dry Bulb is above 5°C or Tapp1Day is above 20°C...

So it seems that my program is not working at all. What do I do wrong? Or what can I do better? I want my TABS to cool and heat, taking 2 parameters (inside and outside temperature) into account. Thanks in advance!

edit retag flag offensive close merge delete

1 Answer

Sort by » oldest newest most voted

answered 2018-12-31 08:49:41 -0500

Disabling a boiler or chiller will not shut down the entire plant loop. Add an AvailabilityManager:Scheduled for each plant loop and act on the manager schedules.

edit flag offensive delete link more


Thank you very much! This works. I realized I have another problem now though. With the code above 'IF (OutdoorT<5) && (Tapp1Day<20)', I will control my TABS based on one zone (appartement 1 Dayzone) because I have one boiler for all the 15 day zones. If for example the temperature in appartment 2 Dayzone is above 20°C it will still set the AvailabilityManager to 1. I can't write different programs for all the zones because they'll just overwrite eachother. Is there a way to control the TABS of each zone separately? Thanks!

kenny.c's avatar kenny.c  ( 2019-01-03 09:06:59 -0500 )edit

What is "TABS"? I am not sure I understand the question, but here is a suggestion: SET BoilerTABSday=0, IF (OutdoorT<5) && (Tapp1Day<20), SET BoilerTABSday=1, ELSEIF (OutdoorT<5) && (Tapp2Day<20), SET BoilerTABSday=1, ... ENDIF;

MJWitte's avatar MJWitte  ( 2019-01-07 14:26:57 -0500 )edit

TABS stands for Thermally Activated Building Systems. It's like conrete core activation, so heating and cooling with the same tubes. Your suggestion won't work either because if one of the 'IF's' is a yes, the boiler/chiller will supply hot/cold water to all the zones. Thanks anyways! I think I'm going to do what you suggested first and make some assumptions for the rest of the zones, that will work too. I've stumbled across an other problem though. I ask my question here

kenny.c's avatar kenny.c  ( 2019-01-07 16:01:55 -0500 )edit

Oh, I see. You could use a unique availability schedule for each ZoneHVAC:LowTemperatureRadiant:ConstantFlow and then actuate these individually.

MJWitte's avatar MJWitte  ( 2019-01-08 17:16:27 -0500 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Training Workshops


Question Tools



Asked: 2018-12-26 11:57:57 -0500

Seen: 735 times

Last updated: Dec 31 '18