Skip to content

Commit 2c8d02e

Browse files
authored
2026.01.0.rc7 (#514)
* update README.md * Implemented check op AWS (only AWS stations have irradiance data, reported by @steynovich, issue * Fix error calculating charge-power "new style" (reported by @Mirabis) * 2026.01.0.rc7 * correct typo's
1 parent 2cdb5f4 commit 2c8d02e

File tree

5 files changed

+37
-10
lines changed

5 files changed

+37
-10
lines changed

README.md

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,13 +13,19 @@ berekeningen en bewerkingen uit:
1313
* ophalen van meteogegevens bij Meteoserver
1414
* berekenen van de optimale inzet van een aanwezige batterij, wp-boiler en elektrische auto.<br>
1515

16-
Het programma draait alleen als addon op HA installaties met een arm64 processor (bijv Raspberry Pi4) of
17-
een intel 64 bit processor (amd64)
16+
Het programma draait alleen als addon op HA-installaties met een arm64 processor (bijv Raspberry Pi4) of
17+
een intel 64 bit processor (amd64). Maar het kan ook separate Docker-container worden geinstalleerd
1818

1919
---
20+
## Documentatie
21+
In de loop van 2025 is begonnen met het verhuizen en actualiseren van de documentie vanaf DOCS.md
22+
naar de wiki-pagina's op github: https://github.com/corneel27/day-ahead/wiki
23+
---
24+
2025
## Installatie
21-
Deze is uitgebreid beschreven in DOCS.md:
22-
https://github.com/corneel27/day-ahead/blob/main/dao/DOCS.md
26+
Deze is uitgebreid beschreven in de wiki: https://github.com/corneel27/day-ahead/wiki/2.-Installatie-en-basis-configuratie
27+
28+
2329

2430
---
2531
## Optimization
@@ -43,7 +49,7 @@ Aan de hand van de gekozen strategie kan met behulp van het algoritme de meest o
4349
variabelen worden berekend. Dit zijn:
4450
* per uur verbruik en kosten op de inkoopmeter
4551
* per uur teruglevering en opbrengst op de inkoopmeter
46-
* per uur laad- cq ontlaadvermogen van de batterij en de SoC aan het einde van het uur
52+
* per uur laad- c.q. ontlaadvermogen van de batterij en de SoC aan het einde van het uur
4753
* tijdstip waarop de boiler moet worden opgewarmd
4854
* uurvakken waarin de elektrische auto moet worden geladen
4955

dao/prog/da_meteo.py

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -181,6 +181,22 @@ def get_dif_rad_factor(self, utc_time):
181181
value = 0.0
182182
return value
183183

184+
@staticmethod
185+
def is_aws(station:str):
186+
"""
187+
station :code van een knmi station
188+
:return: boolean
189+
"""
190+
start = datetime.date.today() - datetime.timedelta(days=4)
191+
end = datetime.date.today() - datetime.timedelta(days=1)
192+
knmi_df = knmi.get_hour_data_dataframe(
193+
[station],
194+
start=start,
195+
end=end,
196+
variables=["Q"],
197+
)
198+
return len(knmi_df) > 0
199+
184200
def which_station(self) -> str:
185201
"""
186202
berekent welk weerstation het dichtst bij is
@@ -196,7 +212,7 @@ def which_station(self) -> str:
196212
afstand = (self.latitude - station.latitude) ** 2 + (
197213
self.longitude - station.longitude
198214
) ** 2
199-
if result is None or afstand < distance:
215+
if (result is None or afstand < distance) and self.is_aws(key):
200216
distance = afstand
201217
result = key
202218
return str(result)

dao/prog/day_ahead.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -54,8 +54,8 @@ def __init__(self, file_name=None):
5454
def calc_optimum(
5555
self, _start_dt: dt.datetime | None = None, _start_soc: float | None = None
5656
):
57-
# _start_dt = datetime.datetime(year=2026, month=1, day=8, hour=18, minute=0)
58-
# _start_soc = 18.8
57+
# _start_dt = datetime.datetime(year=2026, month=1, day=13, hour=23, minute=0)
58+
# _start_soc = 11.0
5959
if _start_dt is not None or _start_soc is not None:
6060
self.debug = True
6161
logging.info(f"Debug = {self.debug}")
@@ -3729,7 +3729,7 @@ def calc_optimum(
37293729
sum_weight_factor = 0
37303730
sum_power = 0 # in W
37313731
for cs in range(CS[b]):
3732-
wf = ac_to_dc_w[b][0][ds].x
3732+
wf = ac_to_dc_w[b][0][cs].x
37333733
if wf > 0:
37343734
sum_weight_factor += wf
37353735
sum_power += wf * charge_stages[b][cs]["power"]

release-testing/CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
# Changelog 刀 DAO
22
# Day Ahead Optimizer
3+
# 2026.01.0.rc7
4+
- Updated several python packages
5+
- Update README.md, link to wiki: https://github.com/corneel27/day-ahead/wiki
6+
- Implemented check op AWS (only AWS stations have irradiance data, reported by @steynovich)
7+
- Fix error calculating charge-power "new style" (reported by @mirabis)
38

49
# 2026.01.0.rc6
510
Fixed not starting ml-training from run-menu (reported by @balk)

release-testing/config.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
name: 刀 Day Ahead Optimizer (TESTING)
3-
version: 2026.01.0.rc6
3+
version: 2026.01.0.rc7
44
stage: experimental
55
slug: day_ahead_opt-testing
66
description: Beta version of DAO. Use only for testing!

0 commit comments

Comments
 (0)