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

Adding Setpoint Manager for Air to Air Heat Exchanger

asked 2015-09-14 12:02:56 -0500

Alec's avatar

I'm tying to write an OpenStudio measure to add a HeatExchangerAirToAirSensibleAndLatent object to an outdoor air system attached to a unitary system on an air loop. The engineering reference for the heat exchanger indicates that I need to add a SetpointManagerScheduled on the unit’s supply air outlet node. I'm having trouble writing the code to place the setpoint manager on the correct node as there doesn't seem to be a method to identify the proper node. I'm looking for suggestions on how to find this node in the measure. Also, any advice on creating the schedule for this setpoint manager would be appreciated.

Here is the air loop as it stands currently:

image description

edit retag flag offensive close merge delete

3 Answers

Sort by » oldest newest most voted

answered 2015-09-14 12:45:51 -0500

Calling primaryAirOutletModelObject on the HeatExchangerAirToAirSensibleAndLatent will return an optional ModelObject that should correspond to your Supply Air Outlet Node.

edit flag offensive delete link more



Eric nailed it, but note that you will want to get the primaryAirOutletModelObject (which is "optional" because the HX might not be connected to anything) and cast it to a node. Your Measure will then look something like this...

# These calls to "get" are only safe if you know the HX is connected to a system
node = hx.primaryAirOutletModelObject.get.to_Node.get
spm =
Kyle Benne's avatar Kyle Benne  ( 2015-09-14 12:56:31 -0500 )edit

Ah, thanks for the terminology for describing the "to_Foo" process!

ericringold's avatar ericringold  ( 2015-09-14 13:26:02 -0500 )edit

Thank you for all of your input! Calling primaryAirOutletModelObject worked great, and that is good information on OS taking care of the SPM for you.

Alec's avatar Alec  ( 2015-09-17 14:40:12 -0500 )edit

answered 2015-09-14 13:01:23 -0500

OpenStudio now takes care of these "intermediate" setpoint managers for you if you don't provide one. As long as there is an SPM on the last node (supply outlet node) OpenStudio will either clone that SPM or insert an SPM mixed air depending on the fan placement detected by OS.

You might want your ERV to control to a different temperature than your supply outlet control point, in that case you'd want to insert a custom SPM like SetpointManagerScheduled, but to keep things simple I'd just skip adding a SPM and let OS do its thing. Eric's answer is right on if you don't want to go with the OS defaulting.

edit flag offensive delete link more


When will Openstudio clone when supply outlet SPM is assigned ? before or after click "run" ? What happen if we assign other SPM to coil outlet node before supply outlet SPM is assigned ?

ngkhanh's avatar ngkhanh  ( 2016-01-29 02:40:08 -0500 )edit
  1. clone (and all setpoint defaulting) happens after you click "run"

  2. There is no difference in behavior If you assign other SPMs to coil outlet before the supply outlet SPM. You are free to assign SPMs wherever you want them and OpenStudio will leave them alone and not overwrite them with any defaulting on run.

Kyle Benne's avatar Kyle Benne  ( 2016-01-29 09:40:53 -0500 )edit

answered 2015-09-14 12:28:48 -0500

Hi, I use the heat exchanger object in EnergyPlus a lot and I don't put a setpoint:Scheduled on it ever. I do however need to make sure that the OA supply node is marked as an outdoorair node and often I will need a Setpoint:MixedAir Which will allow the outdoor air controller to understand what to do according to the temperature setpoints on the coils in the system. Have you tried the measure without putting a setpoint on and seeing what errors come out?

edit flag offensive delete link more

Your Answer

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

Add Answer


Question Tools

1 follower


Asked: 2015-09-14 12:02:56 -0500

Seen: 580 times

Last updated: Sep 14 '15