Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Add water heaters to supply side of different loops #4311

Closed
lymereJ opened this issue May 4, 2021 · 5 comments · Fixed by #4534
Closed

Add water heaters to supply side of different loops #4311

lymereJ opened this issue May 4, 2021 · 5 comments · Fixed by #4534

Comments

@lymereJ
Copy link

lymereJ commented May 4, 2021

Enhancement Request

Support adding a water heater to the supply side of different plant loops.

Detailed Description

In EnergyPlus, water heaters can be connected to the supply side of two different plant loops through the source/use side connections. It is currently not possible to do so in OpenStudio. One example of this configuration is heat recovery chiller through a ChillerElectricEIR object.

@lymereJ lymereJ added Enhancement Request Triage Issue needs to be assessed and labeled, further information on reported might be needed labels May 4, 2021
@tijcolem tijcolem removed the Triage Issue needs to be assessed and labeled, further information on reported might be needed label May 14, 2021
@tijcolem
Copy link
Collaborator

@jmarrec I think this would affect the OS app. Do you have any thoughts on this?

@jmarrec
Copy link
Collaborator

jmarrec commented Oct 1, 2021

Doesn't matter if it affects the OSApp or not, not the problem of the SDK (but yes, it's manageable on the App side).

I'm more worried about changing the way things are in terms of API. It might be confusing for users to have addToNode suddenly behave differently. Here is the way things work right now

m = Model.new
wh = WaterHeaterMixed.new(m)
p1 = PlantLoop.new(m)
p2 = PlantLoop.new(m)

wh.addToNode(p1.supplyInletNode)
raise if wh.plantLoop.empty?
raise if !wh.secondaryPlantLoop.empty?
raise if wh.plantLoop.get != p1
raise if p1.supplyComponents("OS:WaterHeater:Mixed".to_IddObjectType).size() != 1
raise if p2.supplyComponents("OS:WaterHeater:Mixed".to_IddObjectType).size() != 0

# Connect to another node on the supply side? It disconnects from the first plant loop and reconnects to another
wh.addToNode(p2.supplyInletNode)
raise if wh.plantLoop.empty?
raise if !wh.secondaryPlantLoop.empty?
raise if wh.plantLoop.get != p2
raise if p1.supplyComponents("OS:WaterHeater:Mixed".to_IddObjectType).size() != 0
raise if p2.supplyComponents("OS:WaterHeater:Mixed".to_IddObjectType).size() != 1

How do you deal with letting users connect to both sides without breaking the way addToNode / PlantLoop::addSupplyBranchForComponent worked historically?

The only sensible thing I can think of is to let those untouched completely, but add a new WaterHeater::addToSecondaryNode method that would let you do that and that the user will need to manually call. That will require the user to potentially do some workarounds to first add a branch onto the supply side of the plant loop, with a bypass pipe for eg, get the inlet node of that pipe, WeatherHeaterMixed::addToSecondaryNode to it, then remove pipe.

@kbenne thoughts please?

@mdahlhausen
Copy link
Collaborator

mdahlhausen commented Feb 7, 2022

@tijcolem @jmarrec bumping this enhancement request. Heat recovery chiller functionality is the top ask from Ladybug Tools for openstudio-standards.

@joseph-robertson
Copy link
Collaborator

@mdahlhausen Do you know of an idf test file with this configuration?

@lymereJ
Copy link
Author

lymereJ commented Feb 8, 2022

@joseph-robertson - The hospital prototype building models for 90.1-2019 should have it: https://www.energycodes.gov/prototype-building-models. Or, this file.

jmarrec added a commit that referenced this issue Feb 23, 2022
joseph-robertson added a commit that referenced this issue Feb 23, 2022
Review PR #4534 (for issue #4311) - Proposed changes
@tijcolem tijcolem added this to the OpenStudio SDK 3.4.0 milestone Feb 25, 2022
jmarrec added a commit that referenced this issue Feb 28, 2022
Addresses #4311, add water heaters to supply side of different loops
# for free to join this conversation on GitHub. Already have an account? # to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants