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

Potential for total load vs component load discrepancies #1728

Open
shorowit opened this issue May 23, 2024 · 4 comments
Open

Potential for total load vs component load discrepancies #1728

shorowit opened this issue May 23, 2024 · 4 comments
Labels
bug Something isn't working priority low

Comments

@shorowit
Copy link
Contributor

In some less common situations, it is possible for there to be moderate discrepancies between the total heating (or cooling) load and the sum of its components loads after A) changing the component load methodology and B) using a temperature capacitance multiplier (TCM) of 7.

For example, with this HPXML, you get a situation like so:
image

(The first option in the list is cases with a TCM=1, second is TCM=7.)

Note that the cooling setpoint is equal to the heating setpoint (other than during setbacks) for this home. During the 5F heating setback, the indoor temperature remains closer to the cooling setpoint for a period of time w/ TCM=7 and thus the component energy transfers are assigned to cooling instead of heating. (If the cooling setpoint was even just 1 degree higher, it would prevent the issue -- for this home anyway.)

Perhaps some additional sophisticated component load logic could prevent this, but need to be careful that it is robust and works for many different situations.

cc @jmaguire1 @aspeake

@shorowit shorowit added the bug Something isn't working label May 23, 2024
@shorowit
Copy link
Contributor Author

Maybe something like.... if the heating setpoint decreased in the past hour (?) and indoor temperature is trending downward, assign to heating (because there would have been a heating load if not for the heating setback). And vice versa for cooling.

We should probably avoid using e.g. outdoor temperature in the logic. (For example, it could be 40F outside, but if you have a high performance home with lots of solar gains, you could easily be cooling.)

@jmaguire1
Copy link
Collaborator

Mild temperatures are also a problem if we just use OAT. That was my first inclination, but Scott talked me out of it. Too many potential issues.

The actual EMS program here might get tricky, I think you'd need trend variables to know that the setpoint changed 30 minutes ago if you want to want to use this approach with subhourly timesteps, and that could get to be kinda onerous with say 1 minute timesteps.

Still the best idea I can think of now, but when we revisit this I'll do some more brainstorming on how we might approach this.

@shorowit
Copy link
Contributor Author

You could probably use a global EMS variable that stores the time of the year when the setpoint last changed, and then compare the current time of the year to that to see if more than e.g. an hour has elapsed. That should allow one to avoid using a trend variable.

joseph-robertson added a commit to NREL/resstock that referenced this issue May 24, 2024
…d0329

af5aa8d0329 Merge pull request #1729 from NREL/msgpack_num_decimal
3613b3a118e Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into msgpack_num_decimal
0464d0f2a1b Merge pull request #1668 from NREL/tcm
92461e0dd85 Allow specifying the number of decimal places in the msgpack timeseries output file if desired.
885ca266360 Update Changelog.md [ci skip]
2aaeea43fe6 Merge branch 'tcm' of https://github.com/NREL/OpenStudio-HPXML into tcm
84b537c5b65 Address FIXME.
cf34e930f47 Latest results.
d69047cd470 Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into tcm
ff7edc61146 Increase cooling setpoint by 1F to avoid NREL/OpenStudio-HPXML#1728.
1c8fec2b53b Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into tcm
e33fd4ab605 Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into tcm
3cf79029b58 Latest results.
40cf39be6f3 Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into tcm
1fde6c94bc8 Latest results.
8a424ac348e Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into tcm
4d683d214ef Skip test for now.
65e9873dd06 update measure.xml
1c8a6d382ab Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into tcm
c5ccab5eb07 Make rubocop happy.
0d4064ecd40 Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into tcm
a4640da4cc8 Fix a CI test.
c364d15971a Updates default temperature capacitance multiplier to 7.

git-subtree-dir: resources/hpxml-measures
git-subtree-split: af5aa8d03298b86af8f96317c5303647553a17d3
shorowit added a commit to NREL/OpenStudio-ERI that referenced this issue May 24, 2024
af5aa8d032 Merge pull request #1729 from NREL/msgpack_num_decimal
3613b3a118 Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into msgpack_num_decimal
0464d0f2a1 Merge pull request #1668 from NREL/tcm
92461e0dd8 Allow specifying the number of decimal places in the msgpack timeseries output file if desired.
885ca26636 Update Changelog.md [ci skip]
2aaeea43fe Merge branch 'tcm' of https://github.com/NREL/OpenStudio-HPXML into tcm
84b537c5b6 Address FIXME.
cf34e930f4 Latest results.
d69047cd47 Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into tcm
ff7edc6114 Increase cooling setpoint by 1F to avoid NREL/OpenStudio-HPXML#1728.
9a9e161fe7 Merge pull request #1725 from NREL/mshp-ductless-int-backup-adv-defrost
c78534179b Latest results.
abeec11218 fix advanced defrost backup fuel for integrated ductless systems
4488d4def8 Merge pull request #1724 from NREL/timeseries_ec_adj
718cb03ca8 Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into timeseries_ec_adj
63ea849b57 Merge pull request #1722 from NREL/report-monthly-bills
e400e5c636 Add failing sample file.
e92fbaa92d Latest results.
eb50a8eeaa Handle warmup period.
6deaa23444 Update Changelog.md
e02ba50e2f Align timeseries EC_adj with hot water energy use.
8f7fb113d6 Merge branch 'master' into report-monthly-bills
6b49fea0be Update measure xml.
2b06defbd9 Merge branch 'master' into report-monthly-bills
410751cef0 Update the changelog. [ci skip]
6c8d607ce9 Additional checks and updates.
ea77953b3e Remove the temporary fixme.
8f4950f1ac Update bills tests to check for reported monthly.
66a2a8d205 Add arguments and report monthly bills.
1c8fec2b53 Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into tcm
e33fd4ab60 Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into tcm
3cf79029b5 Latest results.
40cf39be6f Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into tcm
1fde6c94bc Latest results.
8a424ac348 Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into tcm
4d683d214e Skip test for now.
65e9873dd0 update measure.xml
1c8a6d382a Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into tcm
c5ccab5eb0 Make rubocop happy.
0d4064ecd4 Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into tcm
a4640da4cc Fix a CI test.
c364d15971 Updates default temperature capacitance multiplier to 7.

git-subtree-dir: hpxml-measures
git-subtree-split: af5aa8d03298b86af8f96317c5303647553a17d3
@aspeake
Copy link
Collaborator

aspeake commented May 30, 2024

Maybe something like.... if the heating setpoint decreased in the past hour (?) and indoor temperature is trending downward, assign to heating (because there would have been a heating load if not for the heating setback). And vice versa for cooling.

We should probably avoid using e.g. outdoor temperature in the logic. (For example, it could be 40F outside, but if you have a high performance home with lots of solar gains, you could easily be cooling.)

This sounds like the most robust approach to me. Instead of relying on the trend of the indoor temperature, maybe we just maintain the original setpoint average (70F in your example) as the threshold for 1 or 2 hours after the setback, so if it is trending downward then it is a heating load, since it is < the original TSP average.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working priority low
Projects
Status: Backlog
Development

No branches or pull requests

3 participants