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

Heating setpoint has a huge impact on hourly heating power output #117

Closed
kuhnal opened this issue Dec 16, 2020 · 8 comments
Closed

Heating setpoint has a huge impact on hourly heating power output #117

kuhnal opened this issue Dec 16, 2020 · 8 comments
Labels
bug Something isn't working

Comments

@kuhnal
Copy link
Collaborator

kuhnal commented Dec 16, 2020

The following heating power in kW were calculated with specific heating setpoints (in brackets):

  • hourly: 39.6, monthly 43.4 (20°)
  • hourly: 83.5, monthly 43.4 (21°)
  • hourly: 216.1, monthly 43.4 (23°)

Here the calculated cooling power in kW for different cooling setpoints:

  • hourly: 99.6, monthly: 29.7 (24°)
  • hourly: 96.8 , monthly: 29.7 (26°)
  • hourly: 94.4, monthly: 29.7 (28°)

It seems that the effect is rather small with cooling power dim. (Which is generally overestimated).
It should also be noted that the Norm-Heizlast according to SIA 384.201 (monthly calc.) is only correct for norm temperature, so 20° room temperature. One could though simplify the adaption to a diverging indoor temperature by using (/ 20 * setpoint). This is not highly important to adapt, as the embodied heater emissions are only calculated for scenario 0. One should keep in mind to put 20° as heating setpoint for scenario 0.

I could imagine a possible solution for the hourly calculation issue by using yearly "Volllaststunden", for example from SIA 2024 (this is available for cooling as well as for heating). Therefore, the heating/cooling power is directly proportional with heating/cooling energy demand.
I will test this and let you know if that could be a possible option.

@kuhnal kuhnal added the bug Something isn't working label Dec 16, 2020
@kuhnal
Copy link
Collaborator Author

kuhnal commented Dec 17, 2020

Update:

Heating power calculated with SIA 384.201 (monthly) and Volllaststunden (hourly)

  • hourly: 35.6, monthly 43.4 (20°)
  • hourly: 42.8, monthly 43.4 (21°)
  • hourly: 59.1, monthly 43.4 (23°)

Here the calculated cooling power in kW, monthly as well as hourly by Volllaststunden:

  • hourly: 135.4, monthly: 152.9 (24°)
  • hourly: 107.3 , monthly: 120.6 (26°)
  • hourly: 83.0, monthly: 91.5 (28°)

The issue is not solved by using Volllaststunden, neither for heating nor cooling. The yearly Volllaststunden probably only work for standard values. As soon as diverging temperature levels are used for the calculation, the power is overestimated or underestimated. The same for cooling. As most of the time, cooling would not be necessary (according to SIA), the assumed Volllaststunden are rather on the lower side which again, overestimates the needed power.

In a next step, I would like to try an other approach, for example by using a certain percentile of energy demands.

@kuhnal
Copy link
Collaborator Author

kuhnal commented Dec 17, 2020

Calculation with percentiles, always for 20° (heating) and 28° (cooling) (power demand cooling and heating; hourly calculation):
Comparison value (monthly calculations): 43.4kW for heating (SIA 384.201), 29.7kW for cooling (hardcoded 10W/m2)

Heating (all values taken into account | only values with heating demand >0.001W):
max: 39.6kW
95%: 23.9kW | 31.8kW
90%: 16.5kW | 28.8kW
85%: 9.9kW | 26.8kW
80%: 0.152kW | 25.4kW
75%: 0kW | 23.8kW
70%: 0kW | 22.5kW
50%: 0kW | 16.5kW
25%: 0kW | 9.8kW

Cooling (all values taken into account | only values with cooling demand <-0.001W ): #64
max: 94kW
95%: 47.9kW | 71.4kW
90%: 27.9kW | 64.3kW
85%: 10.9kW | 59.2kW
80%: 0kW | 54.2kW
75%: 0kW | 49.4kW
70%: 0kW | 44.9kW (with a shading factor of 0.5 instead of 0.855, here a value of 29.6kW was achieved)
50%: 0kW | 30.6kW
25%: 0kW | 14.5kW

Whereas for heating, the heating power seems to be most accurate with max. hourly value, for cooling a percentile of somewhere between 50% and 25% seems most reliable.
I hoped that outliers caused these high cooling powers, which is not the case.
Maybe shading should be taken into account more precisely. @Linwal what do you think?
Edit: solving this issue will also help with issue #109

@Linwal
Copy link
Collaborator

Linwal commented Dec 18, 2020

Thank you for this analysis. This seems to be a tricky issue. I have to dig a bit deeper into your analysis, right now, here is what comes to my mind. I'll add more information once I looked at it.

I have some Ideas that I need to check where the high hourly max power could come from:

  1. In the very first hour, RC initializes at 20°C then the whole building is heated to the heating set point within one hour.
  2. In case of free cooling by increased ventilation, it could be that the building cools down below that heating set point and then has to heat up (not sure about this one, have to check how the code is written)
  3. Depending on the ventilation rate, low ambient temperature could leat do high hourly ventilation losses. Does your building have a high thermal mass?

If dimensioning is always done with 20°C, then we can just fix that in the dimensioning function in simulation_engine.py Then Scenario 0 can also be different from 20.

Shading can be an issue, especially with low thermal mass, however, for the swiss context, increased ventilation rates should/could often be enough to counter overheating. There is an issue on shading. #88 Eventually this can be implemented.

@kuhnal
Copy link
Collaborator Author

kuhnal commented Dec 22, 2020

The building I used has high thermal mass and ventilation according to SIA. Increased ventilation at a rate of 1.38 instead of 0.7 (max. capacity of ventilation system).

@Linwal
Copy link
Collaborator

Linwal commented Jan 4, 2021

@kuhnal, ok then let me add shading. To not get too much into control strategies, do you think, a monthly shading factor would make sense. Basically representing the multiplication of f, fs etc from SIA. SIA uses annual factors, but in my opinion this does not represent the situation well enough.

@kuhnal
Copy link
Collaborator Author

kuhnal commented Jan 4, 2021

I agree that annual factors do not make sense. Therefore, I would also prefer monthly factors. For input simplification, maybe even seasonal factors would make sense.

@kuhnal
Copy link
Collaborator Author

kuhnal commented Feb 5, 2021

Update after implementing shading

Weatherfile: Zurich_historic
Cooling power at 70% percentile (hourly), Heating Power at 100% percentile (hourly).
Remember the comparison values (from monthly calculation): cooling power of 29.7kW (hardcoded 10W/m2), heating power of 43.4kW (nom. heating power at 20°C)
Edit: Viola and Wyss et al. : 40.8kW heating power

Settings
Cooling setting: 28°
Heating setting: 20°
Results
Shading (1 1 1 1): 44.9kW cooling, 39.6kW heating
Shading (1 0.75 0.5 0.75): 28.2kW cooling, 39.6kW heating
Shading (0.5 0.5 0.5 0.5): 27.4kW cooling, 42.9kW heating
--> Cooling and heating seems to make sense.

Settings
Cooling setting: 25°
Heating setting: 23°
Results
Shading (1 1 1 1): 47.8kW cooling, 216.1kW heating
Shading (1 0.75 0.5 0.75): 33.7kW cooling, 216.1kW heating
Shading (0.5 0.5 0.5 0.5): 31.2kW cooling, 216.1kW heating
-->Cooling seems to make sense to me. With a percentile of 100%, heating power is clearly overestimated

Settings
Heating setting: 23°
Results
Shading (1 1 1 1), percentile: 99.9%: 152.2kW
Shading (1 1 1 1), percentile: 99.8%: 109.9kW
Shading (1 1 1 1), percentile: 99.7%: 83.2kW
Shading (1 1 1 1), percentile: 99.6%: 62.6kW
*Shading (1 1 1 1), percentile: 99.5%: 46.7kW
Shading (1 1 1 1), percentile: 99%: 41.6kW
Shading (1 1 1 1), percentile: 98%: 39.7kW
Shading (1 1 1 1), percentile: 95%: 36.6kW
--> There are very little amount of values causing this huge heating power

Settings
Heating setting: 20°
Results
Shading (1 1 1 1), percentile: 100%: 39.6kW
*Shading (1 1 1 1), percentile: 99.5%: 36.6kW
--> That is not the case at lower heating settings

Settings
Heating setting: 25°
Results
Shading (1 1 1 1), percentile: 100%: 348.8kW
*Shading (1 1 1 1), percentile: 99.5%: 47.7kW
--> There, again, are very little amount of values causing this huge heating power

Conclusion: Cooling seems to make sense with shading at a percentile of 70%. Heating power however, only gives reliable results at 100% percentile at a heating setpoint of 20°C. At higher temperatures, there are very few outliers generating huge heating powers. It can be still discussed, which percentile should be chosen (I would suggest 99.5%). Already a difference of 0.1% can make a big impact.

@kuhnal kuhnal mentioned this issue Feb 9, 2021
1 task
@kuhnal
Copy link
Collaborator Author

kuhnal commented Feb 24, 2021

By implementing the percentile calculation for cooling and heating power (70% for cooling and 99.5% for heating) and the possibility to implement different shading strategies, this issue could be solved.

@kuhnal kuhnal closed this as completed Feb 24, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants