Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Support for shared water heating systems #1045

Open
wants to merge 10 commits into
base: develop
Choose a base branch
from

Conversation

joseph-robertson
Copy link
Contributor

@joseph-robertson joseph-robertson commented Mar 7, 2023

Pull Request Description

Closes #1044.

Overall impact here is pretty minor, e.g.:
image

Here is the same plot, but I'm calculating piping length based on building CFA, NCfl, and presence of unconditioned basement Bsmnt:
image

Checklist

Not all may apply:

  • Tests (and test files) have been updated
  • Documentation has been updated
  • Changelog has been updated
  • openstudio tasks.rb update_measures has been run
  • No unexpected regression test changes on CI (checked comparison artifacts)

@joseph-robertson joseph-robertson added this to the ResStock v3.1.0 milestone Mar 7, 2023
@joseph-robertson joseph-robertson self-assigned this Mar 7, 2023
@joseph-robertson joseph-robertson marked this pull request as ready for review March 8, 2023 14:32
@afontani
Copy link
Contributor

afontani commented Mar 8, 2023

Looks like the argument water_heater_num_units_served distributes tank losses among the units served.

How are distribution losses handled with shared water heating systems?

@afontani
Copy link
Contributor

afontani commented Mar 8, 2023

During the Development Meeting, there was a discussion about distribution losses and arguments that might able to be used to account for distribution losses of shared water heating. I think @shorowit mentioned an argument related to the distance to the furthest fixture and an extension element for a shared recirculation system.

@joseph-robertson
Copy link
Contributor Author

Meaning any time we have a shared water heater, we'd want to use a shared recirculation system?

@shorowit
Copy link
Contributor

shorowit commented Mar 8, 2023

@afontani See PipingLength here: https://openstudio-hpxml.readthedocs.io/en/latest/workflow_inputs.html#standard

@joseph-robertson
Copy link
Contributor Author

@afontani @shorowit What's the action item here? Do we want to increase (using ResStockArguments) piping length for units with shared water heaters? For example, recalculate the following but using building CFA and building NCfl?

PipeL = 2.0 * (CFA / NCfl)^0.5 + 10.0 * NCfl + 5.0 * Bsmnt

@joseph-robertson
Copy link
Contributor Author

@afontani @shorowit What's the action item here? Do we want to increase (using ResStockArguments) piping length for units with shared water heaters? For example, recalculate the following but using building CFA and building NCfl?

PipeL = 2.0 * (CFA / NCfl)^0.5 + 10.0 * NCfl + 5.0 * Bsmnt

I tried this out, and put a plot in the description above. Now we are seeing more losses due to switching to shared water heaters vs a reduction in losses when maintaining the same pipe length.

@afontani afontani requested a review from jmaguire1 March 22, 2023 19:31
@afontani
Copy link
Contributor

@shorowit mentioned describing the water heater and the size would be larger than a single unit. Autosizing routines are used for an in-unit water heater. Suggests not distributing tank losses. Maybe the piping length update could be kept.

@jmaguire1 : mentioned Ecotrope has a tool to size shared water heating systems. The recirculation loop typically runs continuously. Are we capturing the energy (look at the uncontrolled recirculation loop arguments)?

@joseph-robertson joseph-robertson removed this from the ResStock v3.1.0 milestone May 12, 2023
@jmaguire1
Copy link
Contributor

Trying to revive this one. I think what we're proposing right now isn't quite right though. When you have a shared water heater, the most common scenario is that there's a single plant (might be multiple WHs in series/parallel, but we'd probably model as always a single large tank) that serves the load in each unit. Since the WH might be far away from some units, it's common to have a recirculation loop from the central WH to each unit, which then connects to the in unit distribution systems to go from the recirc loop to each end use. It's common for these loops to run 24/7 so hot water is always available, but that also introduces a small continuous load on the water heater. Roughly looks like this:

image

A couple of issues we'd have to deal with:

  • How do we introduce that recirc load onto the WH (apportioned to each unit)? We could assume a temperature loss and flow rate for the recirculation loop and use that to calculate the load from recirculation on the central WH and then apportion that to each unit. We'd want this to show up as an additional small but continuous hot water draw from the WH.
  • What temperature does the tank see? If we're modeling multifamily there'll be a lot of units where the only zone is the living space, so there isn't a zone representing the mechanical room.
  • If it's a HPWH, I'm not sure this approach will work. Central HPWHs look pretty different than in unit ones, with different performance maps, pumped condensers, multiple tanks, etc. So I'd just exclude this for now, Joe and I are doing some work on explicit modeling of this for another project but it requires modeling the whole building at once.

@lixiliu lixiliu mentioned this pull request Jan 31, 2024
6 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Support for shared water heating systems
4 participants