WK 2026: Scoor de beste deals! Stel jouw winnende opstelling samen met behulp van ons advies.

  • simnet
  • Registratie: Januari 2020
  • Laatst online: 03-06 10:14
Dus een gebruik voorspelling?

Je zit dan te kijken naar features zoals: Buiten temperatuur, binnen temperatuur, setpoint temperatuur, windsnelheid, luchtvochtigheid, dag vh jaar, weekdag.

Je hebt met deze systemen echter wel een trage factor, namelijk opwarm snelheid. Alle features zijn niet direct afhankelijk van elkaar maar er zit een lag in.
Dat is wel wat lastiger modelleren.

Nog meer ideeen?

  • thomvh
  • Registratie: September 2013
  • Laatst online: 02-06 11:21
Opzich nu met de zomermaanden zou ik eigenlijk een koel functie voor de WP willen. Verwarmen kan DAO al maar koelen niet. Wordt ook lastig om dat met de verwarmings module te doen aangezien die naar de buiten temperatuur kijkt.

  • arro3038
  • Registratie: November 2023
  • Laatst online: 07:10
simnet schreef op maandag 20 april 2026 @ 20:07:
Dus een gebruik voorspelling?

Je zit dan te kijken naar features zoals: Buiten temperatuur, binnen temperatuur, setpoint temperatuur, windsnelheid, luchtvochtigheid, dag vh jaar, weekdag.

Je hebt met deze systemen echter wel een trage factor, namelijk opwarm snelheid. Alle features zijn niet direct afhankelijk van elkaar maar er zit een lag in.
Dat is wel wat lastiger modelleren.

Nog meer ideeen?
Ik kan me zo voorstellen dat stand van de zon en of die schijnt of niet (instraling door de ramen) ook interessant is?

  • Dogooder
  • Registratie: April 2004
  • Laatst online: 09:21

Dogooder

dus...

Dat van die lag is wel een goed punt, daar had ik nog niet zo goed over nagedacht. Ik heb zelf slechts data sinds december vorig jaar dus dat is niet heel veel. Ik zal, als ik tijd heb, eens kijken of ik ergens een correlatie kan spotten.

  • hemertje
  • Registratie: Juli 2015
  • Laatst online: 08:31
simnet schreef op maandag 20 april 2026 @ 19:31:
[...]


Wat zou je willen voorspellen van je WP?
ik heb een Panasonic WP en gebruik @edterbak's Node Red dashboard voor HeisHamon

Heishamon <> Node Red voor Panasonic warmtepompen

https://github.com/edterbak/HeishaMoNR

voor de ML denk ik dan aan het verwachte verbruik van de CV en warmtapwater n.a.v. het jaargetijde en de weersverwachting i.c.m. het warmteverlies van de woning en de dynamische energietarieven

via de Scheduler kan je enigszins sturen

@edterbak heb jij nog ideeën hoe we de Panasonic nog enigszins kunnen sturen?

Gasloos 2019 + WP Panasonic H-serie 7kW + 300 liter boilervat + PV 12.415Wp + Home Assistant + Hyundai Ioniq 6 First Edition + Zaptec laadpaal


  • hemertje
  • Registratie: Juli 2015
  • Laatst online: 08:31
simnet schreef op maandag 20 april 2026 @ 20:07:
Dus een gebruik voorspelling?

Je zit dan te kijken naar features zoals: Buiten temperatuur, binnen temperatuur, setpoint temperatuur, windsnelheid, luchtvochtigheid, dag vh jaar, weekdag.

Je hebt met deze systemen echter wel een trage factor, namelijk opwarm snelheid. Alle features zijn niet direct afhankelijk van elkaar maar er zit een lag in.
Dat is wel wat lastiger modelleren.

Nog meer ideeen?
in de goedkope dynamische perioden een graadje warmer stoken om tijdens de dure periodes de WP uit te kunnen zetten?

warm tapwater maken tijdens de goedkopere uren, in de zomer overdag op je overschot PV en in de winter afhankelijk van de dynamische tarieven i.c.m. de COP

nadeel is dat je ' s nachts tijdens de goedkopere periodes een slechte COP hebt wanneer je die ook mee wil nemen...

Gasloos 2019 + WP Panasonic H-serie 7kW + 300 liter boilervat + PV 12.415Wp + Home Assistant + Hyundai Ioniq 6 First Edition + Zaptec laadpaal


  • Lasoul
  • Registratie: November 2001
  • Laatst online: 00:39
Ik zie hem eigenlijk heel simpel. Laat de WP gewoon zijn werk doen met lange runs en laad de batterij op, op de goedkoopste momenten zodat de WP altijd goedkoop draait.
WP is eigenlijk te traag om bij te sturen met graadje meer of minder.

  • simnet
  • Registratie: Januari 2020
  • Laatst online: 03-06 10:14
Ik denk dat het aansturen van een WP beter overgelaten kan worden aan het regelsysteem van het apparaat zelf.

Op zich is bijstoken een optie (je kunt een hoop thermische energie kwijt in een huis), maar ik vraag me sterk af of je daar heel veel winst uit kunt behalen, gezien de traagheid van het systeem. Even 15min, met lage prijzen, full power heeft niet zoveel nut (denk ik).

Ik ben totaal geen expert op dat gebied, maar voor zover ik heb begrepen is het beter om hem (bij wijze van spreke) 24x7 op lage temperatuur te laten draaien, dan te pendelen met eventuele compressor start/stops tot gevolg.

  • Hippe Lip
  • Registratie: Februari 2011
  • Laatst online: 09:36

Hippe Lip

Er valt altijd wat te leren

offtopic:
Juist met de traagheid van een WP (ik heb betonnen vloeren en vloerverwarming door het hele huis) kan ik heel eenvoudig besparen. Sinds januari heb ik een dynamisch contract en zet nu gedurende de 24 (!) duurste kwartieren van het etmaal de WP op non-actief. De temperatuur varieerde minder dan 1 graad piek-piek (dus +/-0,5°).
Dat bespaart toch behoorlijk!

Verdraagzaamheid is het hoogste gebod
en wie dat niet eert die schoppen we rot.
<John O`Mill>


  • simnet
  • Registratie: Januari 2020
  • Laatst online: 03-06 10:14
Hippe Lip schreef op dinsdag 21 april 2026 @ 06:59:
offtopic:
Juist met de traagheid van een WP (ik heb betonnen vloeren en vloerverwarming door het hele huis) kan ik heel eenvoudig besparen. Sinds januari heb ik een dynamisch contract en zet nu gedurende de 24 (!) duurste kwartieren van het etmaal de WP op non-actief. De temperatuur varieerde minder dan 1 graad piek-piek (dus +/-0,5°).
Dat bespaart toch behoorlijk!
Ik ben wel benieuwd hoe je dit hebt gedaan. Moeten die kwartieren aaneengesloten zijn? Of mag (in theorie) bij jou de WP 24x een start/stop doen?

Afgezien daarvan, denk ik niet dat DAO of een ML hier veel toegevoegde waarde heeft. Uitrekenen wat de duurste 1/3 van de dag is kan een simpele automation ook.

Ik vraag me ook wel een beetje af of je echt wel bespaart op energie of dat het alleen maar zo voelt. Maar dat is volledig ongenuanceerd :)

[ Voor 8% gewijzigd door simnet op 21-04-2026 08:29 ]


  • djoenez
  • Registratie: April 2007
  • Laatst online: 09:31
Waar het vooral bij zou kunnen helpen als het echt meerdaags zou zijn. Mijn WP (Panasonic via heishamon) zet ik al met de scheduler lager bij de dure Ochtend en avond momenten. Maar hij kan best wel forse overshoots doen als het morgen toch al zonnig wordt

  • simnet
  • Registratie: Januari 2020
  • Laatst online: 03-06 10:14
Ja, meerdaags kan ik me wel de voordelen bedenken. Het wordt wel lastig zonder lange termijn tarieven voor energie.

  • Hippe Lip
  • Registratie: Februari 2011
  • Laatst online: 09:36

Hippe Lip

Er valt altijd wat te leren

simnet schreef op dinsdag 21 april 2026 @ 08:26:
Ik ben wel benieuwd hoe je dit hebt gedaan. Moeten die kwartieren aaneengesloten zijn? Of mag (in theorie) bij jou de WP 24x een start/stop doen?
Heel eenvoudig met de Dynamisch-HA van @gielz. Daar stel ik in dat ik de 24 duurste kwartieren wil markeren. Een automatisering zorgt er vervolgens voor dat als duur=ja, dat de WP op non-actief gaat (en daarna weer terug ;) )
Afgezien daarvan, denk ik niet dat DAO of een ML hier veel toegevoegde waarde heeft. Uitrekenen wat de duurste 1/3 van de dag is kan een simpele automation ook.
Eens, en dat is dus ook wat ik doe.
Ik vraag me ook wel een beetje af of je echt wel bespaart op energie of dat het alleen maar zo voelt. Maar dat is volledig ongenuanceerd :)
Natuurlijk bespaart het. De warmtebehoefte (kWh) per 24 uur blijft gelijk: het warmteverlies van het huis. En die vul ik in tijdens de 72 goedkoopste kwartieren van de dag. Ik mijd de piek in de prijzen en bespaar dus.

Maar we gaan hiermee wel erg offtopic… 😱

Verdraagzaamheid is het hoogste gebod
en wie dat niet eert die schoppen we rot.
<John O`Mill>


  • Torch1969
  • Registratie: Juni 2013
  • Laatst online: 09:33
Hippe Lip schreef op dinsdag 21 april 2026 @ 08:51:
[...]

Natuurlijk bespaart het. De warmtebehoefte (kWh) per 24 uur blijft gelijk: het warmteverlies van het huis. En die vul ik in tijdens de 72 goedkoopste kwartieren van de dag. Ik mijd de piek in de prijzen en bespaar dus.

Maar we gaan hiermee wel erg offtopic… 😱
Daar verschillen we over van mening. Een WP of cv die rustig door kan pruttelen verbruikt ter compensatie van dat warmteverlies minder energie (kan met betere lagere aanvoertemperatuur en daarmee betere COP of rendement) dan als die moet hollen en stilstaan.
Vergelijk met auto. Een afstand van 100 km kan ik in een auto die 2 uur lang 50km/u rijdt zuiniger overbruggen dan met een auto die een kwartier stilstaat en daarna een kwartier 100km/u rijdt. Zelfde afstand, zelfde tijd, maar ander verbruik….

  • thomvh
  • Registratie: September 2013
  • Laatst online: 02-06 11:21
Wel grappig, DAO heeft vandaag berekend dat zelfverbruik de meest financieel voordelige optie is:

Afbeeldingslocatie: https://tweakers.net/i/wAo83PxRSKP8cGO2zefxiKLSK38=/x800/filters:strip_exif()/f/image/3XmWLrdrYZKrUJcwBvfG9ZKZ.png?f=fotoalbum_large

Eerste dag dat die niet volle bak gaat bijladen gedurende de middag uren.

  • axelb96
  • Registratie: Juli 2014
  • Laatst online: 23:49
Dogooder schreef op maandag 20 april 2026 @ 19:51:
Mijn warmtepomp, een Itho Daalderop bodem warmtepomp, laat zich niet sturen of inplannen. Die doet automatisch zijn ding, ook met het maken van warm water.
Dit is bij mij wel ongeveer de grootste energieverbruiker die ik nu maar meeneem in de baseload.
De boiler zou ik misschien nog wel in dao kunnen zetten, ik kan de boiler temperatuur wel uitlezen. Maar warmtevraag van het huis is gewoon afhankelijk van de buitentemperatuur en wellicht de windsnelheid. Ik denk dat daar nog wel wat voorspellingen in te vinden is.
Ik heb zelf helaas nog geen 4 seizoenen aan specifiek warmtepomp verbruik, home wizard meter te laat geïnstalleerd, anders had ik er wellicht zelf al mee geëxperimenteerd.
Wat voor Itho heb je?

Mijn Itho WPU-5g (aluhoedje) werkt op zich prima in DAO. Het verwarmen van het boilervat wordt netjes aangestuurd, alleen de legionella-run lijkt een eigen leven te leiden.

Voor de warmtevraag maak ik momenteel nog gebruik van de on/off van DAO; buiten de goedkope uren om blokkeer ik het verwarmen. Toch levert dat niet altijd het gewenste resultaat op, omdat de warmtepomp dan nog steeds de regie houdt. Met de nieuwe trapsgewijze off/eco/max-sturing vanuit DAO verwacht ik dit een stuk beter onder controle te krijgen.

Koeling laat ik bewust 24/7 toe vanwege het comfort en het minimale verbruik.

Misschien kan @arjenhiemstra hier nog extra inzicht in geven. Zonder zijn module had ik dit namelijk ook nooit voor elkaar gekregen _/-\o_ Aan zijn bijdragen in dit topic te zien, is hij mogelijk ook DAO-gebruiker.

  • arjenhiemstra
  • Registratie: Oktober 2003
  • Laatst online: 09:26
axelb96 schreef op dinsdag 21 april 2026 @ 15:43:
[...]

Wat voor Itho heb je?

Mijn Itho WPU-5g (aluhoedje) werkt op zich prima in DAO. Het verwarmen van het boilervat wordt netjes aangestuurd, alleen de legionella-run lijkt een eigen leven te leiden.

Voor de warmtevraag maak ik momenteel nog gebruik van de on/off van DAO; buiten de goedkope uren om blokkeer ik het verwarmen. Toch levert dat niet altijd het gewenste resultaat op, omdat de warmtepomp dan nog steeds de regie houdt. Met de nieuwe trapsgewijze off/eco/max-sturing vanuit DAO verwacht ik dit een stuk beter onder controle te krijgen.

Koeling laat ik bewust 24/7 toe vanwege het comfort en het minimale verbruik.

Misschien kan @arjenhiemstra hier nog extra inzicht in geven. Zonder zijn module had ik dit namelijk ook nooit voor elkaar gekregen _/-\o_ Aan zijn bijdragen in dit topic te zien, is hij mogelijk ook DAO-gebruiker.
Ik ben zeker een tevreden DAO gebruiker :)

Ik heb (helaas) geen grond gebonden Itho warmtepomp maar een L/W WeHeat (die ik vooralsnog niet goed kan aansturen buiten de WeHeat app om)

@Dogooder
Er loopt een eigen topic voor WPU bezitters waarin een hoop info staat over wat er te besturen valt aan de WPU als je gebruik maakt van de add-on.
Itho WPU5G water/water-warmtepomp ervaringen

  • Dogooder
  • Registratie: April 2004
  • Laatst online: 09:21

Dogooder

dus...

Het is hier wel offtopic, maar @axelb96 @arjenhiemstra ik ben al jaren zeer tevreden gebruiker van de addon. Echter heb ik de wpu4g en die kan je wel uitlezen, maar laat zich niet temmen.

  • thewhi
  • Registratie: April 2021
  • Laatst online: 09:15
Hippe Lip schreef op dinsdag 21 april 2026 @ 08:51:
[...]

Heel eenvoudig met de Dynamisch-HA van @gielz. Daar stel ik in dat ik de 24 duurste kwartieren wil markeren. Een automatisering zorgt er vervolgens voor dat als duur=ja, dat de WP op non-actief gaat (en daarna weer terug ;) )

[...]

Eens, en dat is dus ook wat ik doe.

[...]

Natuurlijk bespaart het. De warmtebehoefte (kWh) per 24 uur blijft gelijk: het warmteverlies van het huis. En die vul ik in tijdens de 72 goedkoopste kwartieren van de dag. Ik mijd de piek in de prijzen en bespaar dus.

Maar we gaan hiermee wel erg offtopic… 😱
Je creëert hiermee extra starts en stops voor je warmtepompcompressor. "Onnnodige/ongewenste" start/stop zorgt voor meer slijtage dan een de machine lekker laten doortuffen. Het bespaart wellicht op elektrakosten maar je zult waarschijnlijk flink eerder je warmtepomp (of hopelijk enkel je compressor) moeten vervangen.

Wel zou je (bijvoorbeeld er voor kunnen kiezen om je kloktijden op andere momenten te zetten, waardoor je bijv enkele uren eerder gaat voorverwarmen, maar schakel vooral niet op kwartierbasis, zeker niet als je nog garantie hebt op je machine of van je installateur..

  • thesaxofonist
  • Registratie: November 2016
  • Laatst online: 09:50
nvm

[ Voor 99% gewijzigd door thesaxofonist op 21-04-2026 21:07 ]


  • Karpertje
  • Registratie: Januari 2013
  • Laatst online: 29-05 23:12
Ben aardig tevreden over de add-on, dus echt complimenten voor hoe goed dit is doordacht en hoeveel tijd hierin is gaan zitten!

Vanmiddag kreeg ik wel een foutmelding, waardoor DAO na 15:00 niet meer opnieuw heeft berekend kwam ik net achter, dus heeft het net ons een poosje van stroom voorzien....

Ik krijg normaal een melding wanneer de laatste activiteit van DAO meer dan een uur geleden is, maar die “laatste activiteit” lijkt elke minuut geüpdatet te worden. Daardoor leek het alsof alles nog draaide, terwijl de echte calculatie niet meer plaatsvond na 15:00 uur.

Laatste succesvolle berekening die ik terugzie:
**DAO calc afgerond 21-04-2026 15:00:17**
getriggerd door:
**actie Tekstinvoer: Set input text value**

Na een herstart werkte alles weer gewoon goed. Ik dacht, ik meld het even, misschien heb je er wat aan @KC27

Hierbij de log, vooral laatste deel:
2026-04-21 15:13:00 info: Day Ahead Optimalisering versie: 2026.4.3.rc1
2026-04-21 15:13:00 info: Day Ahead Optimalisering gestart op: 21-04-2026 15:13:00
2026-04-21 15:13:00 info: Day Ahead Optimalisatie gestart: 21-04-2026 15:13:00 taak: get_day_ahead_prices
2026-04-21 15:13:00 info: Day ahead data already present
2026-04-21 15:15:00 info: Day Ahead Optimalisering versie: 2026.4.3.rc1
2026-04-21 15:15:00 info: Day Ahead Optimalisering gestart op: 21-04-2026 15:15:00
2026-04-21 15:15:00 info: Day Ahead Optimalisatie gestart: 21-04-2026 15:15:00 taak: calc_optimum
2026-04-21 15:15:00 info: Debug = False
2026-04-21 15:15:00 info: Zelf berekende baseload
2026-04-21 15:15:00 info: ML prediction PV_stal
date_time prediction
0 2026-04-21 15:00:00+02:00 40.775
1 2026-04-21 16:00:00+02:00 38.991
2 2026-04-21 17:00:00+02:00 33.284
3 2026-04-21 18:00:00+02:00 22.442
4 2026-04-21 19:00:00+02:00 10.963
5 2026-04-21 20:00:00+02:00 1.127
6 2026-04-21 21:00:00+02:00 0.117
7 2026-04-21 22:00:00+02:00 0.117
8 2026-04-21 23:00:00+02:00 0.117
9 2026-04-22 00:00:00+02:00 0.111
10 2026-04-22 01:00:00+02:00 0.111
11 2026-04-22 02:00:00+02:00 0.002
12 2026-04-22 03:00:00+02:00 0.000
13 2026-04-22 04:00:00+02:00 0.000
14 2026-04-22 05:00:00+02:00 0.000
15 2026-04-22 06:00:00+02:00 0.567
16 2026-04-22 07:00:00+02:00 4.372
17 2026-04-22 08:00:00+02:00 7.973
18 2026-04-22 09:00:00+02:00 17.392
19 2026-04-22 10:00:00+02:00 27.981
20 2026-04-22 11:00:00+02:00 35.945
21 2026-04-22 12:00:00+02:00 39.577
22 2026-04-22 13:00:00+02:00 41.794
23 2026-04-22 14:00:00+02:00 41.555
24 2026-04-22 15:00:00+02:00 40.909
25 2026-04-22 16:00:00+02:00 39.125
26 2026-04-22 17:00:00+02:00 33.689
27 2026-04-22 18:00:00+02:00 24.775
28 2026-04-22 19:00:00+02:00 11.569
29 2026-04-22 20:00:00+02:00 1.127
30 2026-04-22 21:00:00+02:00 0.117
31 2026-04-22 22:00:00+02:00 0.117
32 2026-04-22 23:00:00+02:00 0.117
2026-04-21 15:15:00 info: ML prediction PV_loods
date_time prediction
0 2026-04-21 15:00:00+02:00 4.947
1 2026-04-21 16:00:00+02:00 4.638
2 2026-04-21 17:00:00+02:00 3.891
3 2026-04-21 18:00:00+02:00 2.723
4 2026-04-21 19:00:00+02:00 1.303
5 2026-04-21 20:00:00+02:00 0.130
6 2026-04-21 21:00:00+02:00 0.009
7 2026-04-21 22:00:00+02:00 0.009
8 2026-04-21 23:00:00+02:00 0.009
9 2026-04-22 00:00:00+02:00 0.009
10 2026-04-22 01:00:00+02:00 0.009
11 2026-04-22 02:00:00+02:00 0.006
12 2026-04-22 03:00:00+02:00 0.006
13 2026-04-22 04:00:00+02:00 0.006
14 2026-04-22 05:00:00+02:00 0.006
15 2026-04-22 06:00:00+02:00 0.065
16 2026-04-22 07:00:00+02:00 0.340
17 2026-04-22 08:00:00+02:00 0.892
18 2026-04-22 09:00:00+02:00 2.035
19 2026-04-22 10:00:00+02:00 3.166
20 2026-04-22 11:00:00+02:00 4.294
21 2026-04-22 12:00:00+02:00 5.028
22 2026-04-22 13:00:00+02:00 5.415
23 2026-04-22 14:00:00+02:00 5.516
24 2026-04-22 15:00:00+02:00 5.049
25 2026-04-22 16:00:00+02:00 4.808
26 2026-04-22 17:00:00+02:00 3.947
27 2026-04-22 18:00:00+02:00 2.912
28 2026-04-22 19:00:00+02:00 1.332
29 2026-04-22 20:00:00+02:00 0.130
30 2026-04-22 21:00:00+02:00 0.011
31 2026-04-22 22:00:00+02:00 0.009
32 2026-04-22 23:00:00+02:00 0.009
2026-04-21 15:15:00 info: ML prediction Windmolen
date_time prediction
0 2026-04-21 15:00:00+02:00 6.159
1 2026-04-21 16:00:00+02:00 7.081
2 2026-04-21 17:00:00+02:00 7.627
3 2026-04-21 18:00:00+02:00 4.997
4 2026-04-21 19:00:00+02:00 2.043
5 2026-04-21 20:00:00+02:00 2.043
6 2026-04-21 21:00:00+02:00 5.243
7 2026-04-21 22:00:00+02:00 4.625
8 2026-04-21 23:00:00+02:00 4.625
9 2026-04-22 00:00:00+02:00 2.027
10 2026-04-22 01:00:00+02:00 0.532
11 2026-04-22 02:00:00+02:00 0.388
12 2026-04-22 03:00:00+02:00 1.709
13 2026-04-22 04:00:00+02:00 1.709
14 2026-04-22 05:00:00+02:00 0.388
15 2026-04-22 06:00:00+02:00 1.709
16 2026-04-22 07:00:00+02:00 0.388
17 2026-04-22 08:00:00+02:00 0.314
18 2026-04-22 09:00:00+02:00 0.323
19 2026-04-22 10:00:00+02:00 1.282
20 2026-04-22 11:00:00+02:00 1.173
21 2026-04-22 12:00:00+02:00 1.062
22 2026-04-22 13:00:00+02:00 1.076
23 2026-04-22 14:00:00+02:00 3.388
24 2026-04-22 15:00:00+02:00 1.151
25 2026-04-22 16:00:00+02:00 0.273
26 2026-04-22 17:00:00+02:00 0.504
27 2026-04-22 18:00:00+02:00 1.902
28 2026-04-22 19:00:00+02:00 2.011
29 2026-04-22 20:00:00+02:00 2.043
30 2026-04-22 21:00:00+02:00 2.043
31 2026-04-22 22:00:00+02:00 2.027
32 2026-04-22 23:00:00+02:00 2.027
2026-04-21 15:15:00 info: ML prediction pv_Huawei_1
date_time prediction
0 2026-04-21 15:00:00+02:00 18.235
1 2026-04-21 16:00:00+02:00 12.738
2 2026-04-21 17:00:00+02:00 18.611
3 2026-04-21 18:00:00+02:00 11.127
4 2026-04-21 19:00:00+02:00 6.294
5 2026-04-21 20:00:00+02:00 0.794
6 2026-04-21 21:00:00+02:00 0.004
7 2026-04-21 22:00:00+02:00 0.004
8 2026-04-21 23:00:00+02:00 0.004
9 2026-04-22 00:00:00+02:00 0.001
10 2026-04-22 01:00:00+02:00 0.017
11 2026-04-22 02:00:00+02:00 0.014
12 2026-04-22 03:00:00+02:00 0.000
13 2026-04-22 04:00:00+02:00 0.000
14 2026-04-22 05:00:00+02:00 0.014
15 2026-04-22 06:00:00+02:00 0.468
16 2026-04-22 07:00:00+02:00 4.664
17 2026-04-22 08:00:00+02:00 9.504
18 2026-04-22 09:00:00+02:00 18.820
19 2026-04-22 10:00:00+02:00 16.969
20 2026-04-22 11:00:00+02:00 24.541
21 2026-04-22 12:00:00+02:00 28.381
22 2026-04-22 13:00:00+02:00 23.133
23 2026-04-22 14:00:00+02:00 19.198
24 2026-04-22 15:00:00+02:00 21.596
25 2026-04-22 16:00:00+02:00 15.068
26 2026-04-22 17:00:00+02:00 18.136
27 2026-04-22 18:00:00+02:00 13.603
28 2026-04-22 19:00:00+02:00 6.475
29 2026-04-22 20:00:00+02:00 0.918
30 2026-04-22 21:00:00+02:00 0.001
31 2026-04-22 22:00:00+02:00 0.001
32 2026-04-22 23:00:00+02:00 0.001
2026-04-21 15:15:00 info: ML prediction pv_Huawei_2
date_time prediction
0 2026-04-21 15:00:00+02:00 15.267
1 2026-04-21 16:00:00+02:00 19.993
2 2026-04-21 17:00:00+02:00 22.913
3 2026-04-21 18:00:00+02:00 13.012
4 2026-04-21 19:00:00+02:00 6.143
5 2026-04-21 20:00:00+02:00 0.870
6 2026-04-21 21:00:00+02:00 0.000
7 2026-04-21 22:00:00+02:00 0.000
8 2026-04-21 23:00:00+02:00 0.000
9 2026-04-22 00:00:00+02:00 0.000
10 2026-04-22 01:00:00+02:00 0.000
11 2026-04-22 02:00:00+02:00 0.004
12 2026-04-22 03:00:00+02:00 0.004
13 2026-04-22 04:00:00+02:00 0.004
14 2026-04-22 05:00:00+02:00 0.004
15 2026-04-22 06:00:00+02:00 0.459
16 2026-04-22 07:00:00+02:00 5.658
17 2026-04-22 08:00:00+02:00 10.497
18 2026-04-22 09:00:00+02:00 20.490
19 2026-04-22 10:00:00+02:00 24.783
20 2026-04-22 11:00:00+02:00 24.151
21 2026-04-22 12:00:00+02:00 23.145
22 2026-04-22 13:00:00+02:00 19.470
23 2026-04-22 14:00:00+02:00 17.074
24 2026-04-22 15:00:00+02:00 18.119
25 2026-04-22 16:00:00+02:00 20.221
26 2026-04-22 17:00:00+02:00 19.487
27 2026-04-22 18:00:00+02:00 15.767
28 2026-04-22 19:00:00+02:00 6.331
29 2026-04-22 20:00:00+02:00 1.098
30 2026-04-22 21:00:00+02:00 0.000
31 2026-04-22 22:00:00+02:00 0.000
32 2026-04-22 23:00:00+02:00 0.000
2026-04-21 15:15:00 info: Start waarden:
uur tijd spot p_l p_t base pv_ac pv_dc
0 15:15 2026-04-21 15:15:00 -0.004 0.127 -0.029 5.346 21.407 0
1 15:30 2026-04-21 15:30:00 -0.002 0.129 -0.027 5.279 21.285 0
2 15:45 2026-04-21 15:45:00 -0.002 0.129 -0.027 5.263 21.164 0
3 16:00 2026-04-21 16:00:00 -0.002 0.129 -0.027 5.245 20.967 0
4 16:15 2026-04-21 16:15:00 -0.001 0.130 -0.026 5.229 20.845 0
5 16:30 2026-04-21 16:30:00 0.000 0.131 -0.025 5.214 20.724 0
6 16:45 2026-04-21 16:45:00 0.037 0.168 0.012 5.362 20.904 0
7 17:00 2026-04-21 17:00:00 0.024 0.155 -0.001 5.724 21.856 0
8 17:15 2026-04-21 17:15:00 0.054 0.185 0.029 5.872 22.037 0
9 17:30 2026-04-21 17:30:00 0.076 0.207 0.051 6.021 22.217 0
10 17:45 2026-04-21 17:45:00 0.091 0.222 0.066 5.812 20.216 0
11 18:00 2026-04-21 18:00:00 0.072 0.203 0.047 5.280 16.508 0
12 18:15 2026-04-21 18:15:00 0.083 0.214 0.058 5.071 14.506 0
13 18:30 2026-04-21 18:30:00 0.106 0.237 0.081 4.862 12.505 0
14 18:45 2026-04-21 18:45:00 0.121 0.252 0.096 4.872 10.782 0
15 19:00 2026-04-21 19:00:00 0.102 0.233 0.077 5.112 9.179 0
16 19:15 2026-04-21 19:15:00 0.117 0.248 0.092 5.122 7.457 0
17 19:30 2026-04-21 19:30:00 0.125 0.256 0.100 5.133 5.735 0
18 19:45 2026-04-21 19:45:00 0.141 0.272 0.116 4.889 4.374 0
19 20:00 2026-04-21 20:00:00 0.137 0.268 0.112 4.456 2.936 0
20 20:15 2026-04-21 20:15:00 0.134 0.265 0.109 4.212 1.575 0
21 20:30 2026-04-21 20:30:00 0.130 0.261 0.105 3.967 0.461 0
22 20:45 2026-04-21 20:45:00 0.122 0.253 0.097 3.714 0.661 0
23 21:00 2026-04-21 21:00:00 0.133 0.264 0.108 3.408 1.321 0
24 21:15 2026-04-21 21:15:00 0.122 0.253 0.097 3.155 1.347 0
25 21:30 2026-04-21 21:30:00 0.115 0.246 0.090 2.902 1.470 0
26 21:45 2026-04-21 21:45:00 0.114 0.244 0.088 2.836 1.432 0
27 22:00 2026-04-21 22:00:00 0.119 0.250 0.094 2.900 1.237 0
28 22:15 2026-04-21 22:15:00 0.114 0.245 0.089 2.835 1.198 0
29 22:30 2026-04-21 22:30:00 0.113 0.244 0.088 2.769 1.160 0
30 22:45 2026-04-21 22:45:00 0.109 0.240 0.084 2.751 1.160 0
31 23:00 2026-04-21 23:00:00 0.106 0.237 0.081 2.765 1.229 0
32 23:15 2026-04-21 23:15:00 0.106 0.237 0.081 2.747 1.229 0
33 23:30 2026-04-21 23:30:00 0.100 0.231 0.075 2.728 1.229 0
34 23:45 2026-04-21 23:45:00 0.096 0.227 0.071 2.717 1.066 0
35 00:00 2026-04-22 00:00:00 0.100 0.231 0.075 2.701 0.764 0
36 00:15 2026-04-22 00:15:00 0.099 0.230 0.074 2.689 0.601 0
37 00:30 2026-04-22 00:30:00 0.098 0.229 0.073 2.678 0.438 0
38 00:45 2026-04-22 00:45:00 0.094 0.225 0.069 2.707 0.346 0
39 01:00 2026-04-22 01:00:00 0.098 0.229 0.073 2.781 0.287 0
40 01:15 2026-04-22 01:15:00 0.096 0.227 0.071 2.810 0.194 0
41 01:30 2026-04-22 01:30:00 0.095 0.226 0.070 2.840 0.102 0
42 01:45 2026-04-22 01:45:00 0.094 0.225 0.069 2.812 0.086 0
43 02:00 2026-04-22 02:00:00 0.101 0.232 0.076 2.741 0.103 0
44 02:15 2026-04-22 02:15:00 0.096 0.227 0.071 2.714 0.087 0
45 02:30 2026-04-22 02:30:00 0.096 0.227 0.071 2.686 0.076 0
46 02:45 2026-04-22 02:45:00 0.092 0.223 0.067 2.665 0.157 0
47 03:00 2026-04-22 03:00:00 0.094 0.225 0.069 2.638 0.328 0
48 03:15 2026-04-22 03:15:00 0.094 0.225 0.069 2.617 0.409 0
49 03:30 2026-04-22 03:30:00 0.099 0.230 0.074 2.596 0.492 0
50 03:45 2026-04-22 03:45:00 0.099 0.230 0.074 2.619 0.492 0
51 04:00 2026-04-22 04:00:00 0.094 0.225 0.069 2.679 0.450 0
52 04:15 2026-04-22 04:15:00 0.094 0.225 0.069 2.702 0.450 0
53 04:30 2026-04-22 04:30:00 0.096 0.227 0.071 2.725 0.450 0
54 04:45 2026-04-22 04:45:00 0.102 0.233 0.077 2.732 0.368 0
55 05:00 2026-04-22 05:00:00 0.093 0.224 0.068 2.641 0.180 0
56 05:15 2026-04-22 05:15:00 0.101 0.232 0.076 2.648 0.098 0
57 05:30 2026-04-22 05:30:00 0.108 0.239 0.083 2.655 0.015 0
58 05:45 2026-04-22 05:45:00 0.121 0.252 0.096 3.001 0.176 0
59 06:00 2026-04-22 06:00:00 0.112 0.243 0.087 3.696 0.406 0
60 06:15 2026-04-22 06:15:00 0.121 0.252 0.096 4.043 0.583 0
61 06:30 2026-04-22 06:30:00 0.132 0.263 0.107 4.389 0.761 0
62 06:45 2026-04-22 06:45:00 0.132 0.263 0.107 4.360 1.521 0
63 07:00 2026-04-22 07:00:00 0.155 0.286 0.130 4.045 2.691 0
64 07:15 2026-04-22 07:15:00 0.143 0.274 0.118 4.016 3.451 0
65 07:30 2026-04-22 07:30:00 0.129 0.260 0.104 3.986 4.210 0
66 07:45 2026-04-22 07:45:00 0.111 0.242 0.086 3.975 5.070 0
67 08:00 2026-04-22 08:00:00 0.135 0.266 0.110 3.973 5.753 0
68 08:15 2026-04-22 08:15:00 0.129 0.260 0.104 3.962 6.613 0
69 08:30 2026-04-22 08:30:00 0.116 0.247 0.091 3.951 7.473 0
70 08:45 2026-04-22 08:45:00 0.073 0.204 0.048 3.962 9.341 0
71 09:00 2026-04-22 09:00:00 0.130 0.261 0.105 3.970 12.194 0
72 09:15 2026-04-22 09:15:00 0.099 0.230 0.074 3.981 14.062 0
73 09:30 2026-04-22 09:30:00 0.070 0.201 0.045 3.992 15.930 0
74 09:45 2026-04-22 09:45:00 0.035 0.166 0.010 4.084 16.875 0
75 10:00 2026-04-22 10:00:00 0.058 0.189 0.033 4.227 17.115 0
76 10:15 2026-04-22 10:15:00 0.016 0.147 -0.009 4.319 18.060 0
77 10:30 2026-04-22 10:30:00 0.000 0.131 -0.025 4.411 19.005 0
78 10:45 2026-04-22 10:45:00 -0.002 0.129 -0.027 4.537 20.000 0
79 11:00 2026-04-22 11:00:00 -0.000 0.131 -0.025 4.663 21.171 0
80 11:15 2026-04-22 11:15:00 -0.001 0.130 -0.026 4.790 22.166 0
81 11:30 2026-04-22 11:30:00 -0.001 0.130 -0.026 4.917 23.162 0
82 11:45 2026-04-22 11:45:00 -0.005 0.126 -0.030 5.152 23.605 0
83 12:00 2026-04-22 12:00:00 -0.002 0.129 -0.027 5.546 23.843 0
84 12:15 2026-04-22 12:15:00 -0.005 0.126 -0.030 5.782 24.286 0
85 12:30 2026-04-22 12:30:00 -0.007 0.124 -0.032 6.017 24.729 0
86 12:45 2026-04-22 12:45:00 -0.012 0.119 -0.037 5.949 24.335 0
87 13:00 2026-04-22 13:00:00 -0.013 0.118 -0.038 5.596 23.279 0
88 13:15 2026-04-22 13:15:00 -0.017 0.114 -0.042 5.528 22.885 0
89 13:30 2026-04-22 13:30:00 -0.024 0.107 -0.049 5.459 22.491 0
90 13:45 2026-04-22 13:45:00 -0.024 0.107 -0.049 5.620 22.231 0
91 14:00 2026-04-22 14:00:00 -0.027 0.104 -0.052 5.998 22.006 0
92 14:15 2026-04-22 14:15:00 -0.021 0.110 -0.046 6.159 21.746 0
93 14:30 2026-04-22 14:30:00 -0.014 0.117 -0.039 6.320 21.487 0
94 14:45 2026-04-22 14:45:00 -0.010 0.121 -0.035 6.300 21.492 0
95 15:00 2026-04-22 15:00:00 -0.009 0.122 -0.034 6.192 21.813 0
96 15:15 2026-04-22 15:15:00 -0.005 0.126 -0.030 6.173 21.819 0
97 15:30 2026-04-22 15:30:00 -0.002 0.129 -0.027 6.153 21.825 0
98 15:45 2026-04-22 15:45:00 -0.001 0.130 -0.026 5.945 21.367 0
99 16:00 2026-04-22 16:00:00 -0.001 0.130 -0.026 5.535 20.505 0
100 16:15 2026-04-22 16:15:00 -0.001 0.130 -0.026 5.326 20.046 0
101 16:30 2026-04-22 16:30:00 0.000 0.131 -0.025 5.118 19.588 0
102 16:45 2026-04-22 16:45:00 0.003 0.134 -0.022 5.150 19.355 0
103 17:00 2026-04-22 17:00:00 0.004 0.135 -0.021 5.358 19.495 0
104 17:15 2026-04-22 17:15:00 0.026 0.157 0.001 5.391 19.262 0
105 17:30 2026-04-22 17:30:00 0.073 0.204 0.048 5.423 19.028 0
106 17:45 2026-04-22 17:45:00 0.100 0.231 0.075 5.475 17.978 0
107 18:00 2026-04-22 18:00:00 0.066 0.197 0.041 5.574 16.541 0
108 18:15 2026-04-22 18:15:00 0.084 0.215 0.059 5.626 15.491 0
109 18:30 2026-04-22 18:30:00 0.105 0.236 0.080 5.679 14.440 0
110 18:45 2026-04-22 18:45:00 0.119 0.250 0.094 5.609 12.488 0
111 19:00 2026-04-22 19:00:00 0.100 0.231 0.075 5.487 9.720 0
112 19:15 2026-04-22 19:15:00 0.120 0.251 0.095 5.418 7.768 0
113 19:30 2026-04-22 19:30:00 0.131 0.262 0.106 5.348 5.815 0
114 19:45 2026-04-22 19:45:00 0.169 0.300 0.144 5.121 4.415 0
115 20:00 2026-04-22 20:00:00 0.157 0.288 0.132 4.789 3.128 0
116 20:15 2026-04-22 20:15:00 0.148 0.279 0.123 4.562 1.728 0
117 20:30 2026-04-22 20:30:00 0.148 0.279 0.123 4.334 0.559 0
118 20:45 2026-04-22 20:45:00 0.138 0.269 0.113 4.050 0.512 0
119 21:00 2026-04-22 21:00:00 0.138 0.269 0.113 3.674 0.789 0
120 21:15 2026-04-22 21:15:00 0.115 0.246 0.090 3.389 0.592 0
121 21:30 2026-04-22 21:30:00 0.111 0.242 0.086 3.105 0.511 0
122 21:45 2026-04-22 21:45:00 0.108 0.239 0.083 3.011 0.510 0
123 22:00 2026-04-22 22:00:00 0.114 0.245 0.089 3.036 0.540 0
124 22:15 2026-04-22 22:15:00 0.112 0.243 0.087 2.942 0.539 0
125 22:30 2026-04-22 22:30:00 0.110 0.241 0.085 2.848 0.538 0
126 22:45 2026-04-22 22:45:00 0.104 0.235 0.079 2.851 0.538 0
127 23:00 2026-04-22 23:00:00 0.109 0.240 0.084 2.926 0.539 0
128 23:15 2026-04-22 23:15:00 0.107 0.238 0.082 2.929 0.539 0
129 23:30 2026-04-22 23:30:00 0.104 0.235 0.079 2.931 0.539 0
130 23:45 2026-04-22 23:45:00 0.100 0.231 0.075 2.934 0.539 0
2026-04-21 15:15:00 info: No reduced hours applied for Accu 1
2026-04-21 15:15:00 info: No reduced power applied during discharging at low soc
2026-04-21 15:15:00 info: No reduced power applied during charging at high soc
2026-04-21 15:15:00 info: Startwaarde SoC Accu 1: 98.0%
2026-04-21 15:15:00 info: Boiler niet aanwezig of staat uit, boiler wordt niet ingepland
2026-04-21 15:15:00 info: Warmtepomp niet aanwezig - warmtepomp wordt niet ingepland
2026-04-21 15:15:00 info: Strategie: minimale levering
python3: /project/Cgl/src/CglPreProcess/CglPreProcess.cpp:1693: OsiSolverInterface* CglPreProcess::preProcessNonDefault(OsiSolverInterface&, int, int, int): Assertion `numberProhibited_ == originalModel_->getNumCols()' failed.
ERROR while running Cbc. Signal SIGABRT caught. Getting stack trace.
/root/dao/venv/day_ahead/lib/python3.13/site-packages/cbcbox/cbc_dist_avx2/lib/libCbc.so(_Z15CbcCrashHandleri+0x126) [0x7f6bc3babf46]
/lib/x86_64-linux-gnu/libc.so.6(+0x3fdf0) [0x7f6c0ebdddf0]
/lib/x86_64-linux-gnu/libc.so.6(+0x9495c) [0x7f6c0ec3295c]
/lib/x86_64-linux-gnu/libc.so.6(gsignal+0x12) [0x7f6c0ebddcc2]
/lib/x86_64-linux-gnu/libc.so.6(abort+0x22) [0x7f6c0ebc64ac]
/lib/x86_64-linux-gnu/libc.so.6(__assert_perror_fail+0) [0x7f6c0ebc6420]
/root/dao/venv/day_ahead/lib/python3.13/site-packages/cbcbox/cbc_dist_avx2/lib/libCgl.so.0(_ZN13CglPreProcess20preProcessNonDefaultER18OsiSolverInterfaceiii+0x8685) [0x7f6bc39e5b55]
/root/dao/venv/day_ahead/lib/python3.13/site-packages/cbcbox/cbc_dist_avx2/lib/libCbc.so(_Z8CbcMain1St5dequeISsSaISsEER8CbcModelR13CbcParametersPFiPS2_iEP9ampl_info+0x2c165) [0x7f6bc3be37f5]
/root/dao/venv/day_ahead/lib/python3.13/site-packages/cbcbox/cbc_dist_avx2/lib/libCbc.so(Cbc_solve+0x1a51) [0x7f6bc3c45251]
/root/dao/venv/day_ahead/lib/python3.13/site-packages/_cffi_backend.cpython-313-x86_64-linux-gnu.so(+0x2d052) [0x7f6bf0a3e052]
/root/dao/venv/day_ahead/lib/python3.13/site-packages/_cffi_backend.cpython-313-x86_64-linux-gnu.so(+0x2b978) [0x7f6bf0a3c978]
/root/dao/venv/day_ahead/lib/python3.13/site-packages/_cffi_backend.cpython-313-x86_64-linux-gnu.so(cffistatic_ffi_call+0x178) [0x7f6bf0a3caf3]
/root/dao/venv/day_ahead/lib/python3.13/site-packages/_cffi_backend.cpython-313-x86_64-linux-gnu.so(+0x135e7) [0x7f6bf0a245e7]
python3(_PyObject_MakeTpCall+0x27b) [0x54726b]
python3(_PyEval_EvalFrameDefault+0xfce) [0x56270e]
python3(PyEval_EvalCode+0xcc) [0x55d48c]
python3() [0x6ab8d1]
python3() [0x6a899c]
python3() [0x6b9943]
python3() [0x6b93e3]
python3() [0x6b921e]
python3(Py_RunMain+0x3c1) [0x6b86f1]
python3(Py_BytesMain+0x2b) [0x6838eb]
/lib/x86_64-linux-gnu/libc.so.6(+0x29ca8) [0x7f6c0ebc7ca8]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0x85) [0x7f6c0ebc7d65]
python3(_start+0x21) [0x682c81]
/root/dao/venv/day_ahead/lib/python3.13/site-packages/joblib/externals/loky/backend/resource_tracker.py:359: UserWarning: resource_tracker: There appear to be 6 leaked semlock objects to clean up at shutdown
warnings.warn(
/root/dao/venv/day_ahead/lib/python3.13/site-packages/joblib/externals/loky/backend/resource_tracker.py:359: UserWarning: resource_tracker: There appear to be 10 leaked folder objects to clean up at shutdown
warnings.warn(
[22:49:31] INFO: => directory dao_data exist
[22:49:31] INFO: => /root/dao/data doesn't exist, made
[22:49:31] INFO: => /root/dao/webserver/app/static/data exist
2026-04-21 22:49:33 INFO: Loaded 6 secrets from ../data/secrets.json
2026-04-21 22:49:33 INFO: Validating configuration with ConfigurationV0
Setting up watches.
Watches established.
[2026-04-21 22:49:33 +0200] [35] [INFO] Starting gunicorn 25.3.0
[2026-04-21 22:49:33 +0200] [35] [INFO] Listening at: http://0.0.0.0:5000 (35)
[2026-04-21 22:49:33 +0200] [35] [INFO] Using worker: sync
[2026-04-21 22:49:33 +0200] [45] [INFO] Booting worker with pid: 45
[2026-04-21 22:49:33 +0200] [46] [INFO] Booting worker with pid: 46
[2026-04-21 22:49:33 +0200] [35] [INFO] Control socket listening at /root/.gunicorn/gunicorn.ctl
2026-04-21 22:49:36 INFO: Loaded 6 secrets from ../data/secrets.json
2026-04-21 22:49:36 INFO: Validating configuration with ConfigurationV0
@hemertje
hemertje in "Het grote day ahead / dynamische energieprijzen topic."
Je post zit in het verkeerde topic.
Misschien hier ook posten?
Om te zien wat er fout gaat beter de hele config tussen quote- en code-tags posten.

[ Voor 19% gewijzigd door KC27 op 22-04-2026 22:26 ]

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer

Karpertje schreef op dinsdag 21 april 2026 @ 23:52:
Ben aardig tevreden over de add-on, dus echt complimenten voor hoe goed dit is doordacht en hoeveel tijd hierin is gaan zitten!

Vanmiddag kreeg ik wel een foutmelding, waardoor DAO na 15:00 niet meer opnieuw heeft berekend kwam ik net achter, dus heeft het net ons een poosje van stroom voorzien....

Ik krijg normaal een melding wanneer de laatste activiteit van DAO meer dan een uur geleden is, maar die “laatste activiteit” lijkt elke minuut geüpdatet te worden. Daardoor leek het alsof alles nog draaide, terwijl de echte calculatie niet meer plaatsvond na 15:00 uur.

Laatste succesvolle berekening die ik terugzie:
**DAO calc afgerond 21-04-2026 15:00:17**
getriggerd door:
**actie Tekstinvoer: Set input text value**

Na een herstart werkte alles weer gewoon goed. Ik dacht, ik meld het even, misschien heb je er wat aan @KC27

Hierbij de log, vooral laatste deel:


[...]
Ik snap ook niet wat er fout gaat.
Hij gaat fout in de optimalisering berekening, maar waarom is mij niet duidelijk.
Maar in je waarschuwingsautomation moet je niet alleen kijken naar de verandering in die entity, maar ook filteren op "DAO calc afgerond".

[ Voor 3% gewijzigd door KC27 op 22-04-2026 22:33 ]

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer


  • hemertje
  • Registratie: Juli 2015
  • Laatst online: 08:31
vandaag begonnen met de config vullen na maanden hier gelezen te hebben
ik wil beginnen met het makkelikste

mijn solarsysteem:

ik heb 5 dakvlakken met panelen, 1x 8kW Solaredge omvormer met een optimizer per paneel, maar wellicht maak ik ergens een denkfout?


Plat dak aanbouw
- Declination: 10
- Azimuth: 225
- Totall Watt peak: 4800
- Damping factor morning: 0
- Damping factor evening: 0
- Interver size (Watt): 8000


Schuin dak achter
- Declination: 32
- Azimuth: 136
- Totall Watt peak: 1675
- Damping factor morning: 0
- Damping factor evening: 0
- Interver size (Watt): 8000


Schuin dak voor
- Declination: 32
- Azimuth: 283
- Totall Watt peak: 2050
- Damping factor morning: 0
- Damping factor evening: 0
- Interver size (Watt): 8000


Schuin dak zijkant
- Declination: 37
- Azimuth: 202
- Totall Watt peak: 3000
- Damping factor morning: 0
- Damping factor evening: 0
- Interver size (Watt): 8000


Verticaal muur zijkant
- Declination: 90
- Azimuth: 202
- Totall Watt peak: 890
- Damping factor morning: 0
- Damping factor evening: 0
- Interver size (Watt): 8000
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
"solar": [
  {
    "name": "SolarEdge 8kW",
    "max power": 8.0,
    "entity pv switch": "",
    "strings": [
      { "tilt": 10, "orientation":  45, "capacity": 4.80, "yield": 0.01020 },
      { "tilt": 32, "orientation": -44, "capacity": 1.675, "yield": 0.00356 },
      { "tilt": 32, "orientation": 103, "capacity": 2.05, "yield": 0.00436 },
      { "tilt": 37, "orientation":  22, "capacity": 3.00, "yield": 0.00638 },
      { "tilt": 90, "orientation":  22, "capacity": 0.89, "yield": 0.00189 }
    ]
  }
]
Optimaliseringsberekening met Debug geeft vervolgens de volgende melding:
code:
1
2
3
4
5
6
7
8
9
10
11
2026-04-22 22:02:33 ERROR: Configuratie kon niet worden geladen: Expecting ',' delimiter: line 133 column 3 (char 2885)
Traceback (most recent call last):
  File "/root/dao/webserver/../prog/day_ahead.py", line 4709, in <module>
    main()
    ~~~~^^
  File "/root/dao/webserver/../prog/day_ahead.py", line 4669, in main
    da_calc = DaCalc("../data/options.json")
  File "/root/dao/webserver/../prog/day_ahead.py", line 30, in __init__
    if self.config is None:
       ^^^^^^^^^^^
AttributeError: 'DaCalc' object has no attribute 'config'. Did you mean: '_config'?
de volledige config
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
{
  "config_version": 0,
  "homeassistant": {
    "ip_address": "supervisor",
    "protocol_api": "http"
  },
  "database_ha": {
    "engine": "sqlite",
    "db_path": "/homeassistant",
    "database": "home-assistant_v2.db"
  },
  "database_da": {
    "engine": "sqlite",
    "db_path": "../data",
    "database": "day_ahead.db"
  },
  "meteoserver_key": "!secret meteoserver-key",
  "meteoserver_model": "harmonie",
  "meteoserver_attemps": 2,
  "prices": {
    "source_day_ahead": "nordpool",
    "energy_taxes_consumption": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.1088,
      "2025-01-01": 0.10154
    },
    "energy_taxes_production": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.1088,
      "2025-01-01": 0.10154
    },
    "cost_supplier_consumption": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496
    },
    "cost_supplier_production": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496,
      "2026-01-01": 0.0
    },
    "vat_consumption": {
      "2022-01-01": 21.0,
      "2022-07-01": 9.0,
      "2023-01-01": 21.0
    },
    "vat_production": {
      "2022-01-01": 21.0,
      "2022-07-01": 9.0,
      "2023-01-01": 21.0
    },
    "last_invoice": "2025-09-01",
    "tax_refund": true,
    "regular high": 0.5,
    "regular low": 0.4,
    "switch to low": 23
  },
  "logging_level": "info",
  "use_calc_baseload": false,
  "baseload_calc_periode": 56,
  "baseload": [
    0.14,
    0.38,
    0.26,
    0.42,
    0.15,
    0.12,
    0.13,
    0.15,
    0.23,
    0.26,
    0.31,
    0.32,
    0.31,
    0.23,
    0.26,
    0.21,
    0.21,
    0.54,
    0.26,
    0.26,
    0.22,
    0.19,
    0.18,
    0.16
  ],
  "graphical_backend": "",
  "graphics": {
    "style": "Solarize_Light2",
    "battery_balance": true,
    "prices_consumption": true,
    "prices_production": false,
    "prices_spot": true,
    "average_consumption": true,
    "show": "true"
  },
  "interval": "15min",
  "strategy": "minimize cost",
  "max_gap": 0.005,
  "notifications": {
    "opstarten": false,
    "berekening": false
  },
  "grid": {
    "max_power": 17.0
  },
  "history": {
    "save_days": 7
  },
  "dashboard": {
    "port": 5000
  },
  "battery": [],
  "solar": [
  {
    "name": "SolarEdge 8kW",
    "max power": 8.0,
    "entity pv switch": "",
    "strings": [
      { "tilt": 10, "orientation":  45, "capacity": 4.80, "yield": 0.01020 },
      { "tilt": 32, "orientation": -44, "capacity": 1.675, "yield": 0.00356 },
      { "tilt": 32, "orientation": 103, "capacity": 2.05, "yield": 0.00436 },
      { "tilt": 37, "orientation":  22, "capacity": 3.00, "yield": 0.00638 },
      { "tilt": 90, "orientation":  22, "capacity": 0.89, "yield": 0.00189 }
    ]
  }
  ]
  "electric_vehicle": [],
  "machines": [],
  "boiler": {
    "boiler_present": false,
    "entity actual temp.": "sensor.boiler_gemeten",
    "entity setpoint": "sensor.boiler_ingesteld",
    "entity hysterese": "sensor.hysterese_hot_water",
    "cop": 2.9,
    "cooling rate": 0.4,
    "volume": 180,
    "heating allowed below": 44,
    "elec. power": 1500,
    "activate service": "press",
    "activate entity": "input_button.hw_trigger"
  },
  "heating": {
    "heater_present": false,
    "degree days factor": 3.6,
    "stages": [
      {
        "max_power": 225,
        "cop": 7.1
      },
      {
        "max_power": 300,
        "cop": 7.0
      },
      {
        "max_power": 400,
        "cop": 6.5
      },
      {
        "max_power": 500,
        "cop": 6.0
      },
      {
        "max_power": 600,
        "cop": 5.5
      },
      {
        "max_power": 750,
        "cop": 5.0
      },
      {
        "max_power": 1000,
        "cop": 4.5
      },
      {
        "max_power": 1250,
        "cop": 4.0
      }
    ],
    "entity adjust heating curve": "input_number.stooklijn_verschuiving_day_ahead",
    "adjustment factor": 0.04
  },
  "tibber": {
    "api_token": "!secret tibber_api_token",
    "api_url": "https://api.tibber.com/v1-beta/gql"
  },
  "xgboost": {
    "tune_hyperparameters": true
  },
  "report": {
    "entities_grid_consumption": [
      "sensor.grid_consumption_low",
      "sensor.grid_consumption_high"
    ],
    "entities_grid_production": [
      "sensor.grid_production_low",
      "sensor.grid_production_high"
    ],
    "entities_solar_production_ac": [
      "sensor.solaredge_woning_ac_energy_kwh"
    ],
    "entities_solar_production_dc": [],
    "entities_ev_consumption": [
      "sensor.laadpunt_total_energy"
    ],
    "entities_wp_consumption": [],
    "entities_boiler_consumption": [],
    "entities_battery_consumption": [
      "sensor.ess_grid_consumption"
    ],
    "entities_battery_production": [
      "sensor.ess_grid_production"
    ],
    "entities_machine_consumption": []
  },
  "scheduler": {
    "active": true,
    "schedule": [
      {
        "time": "0435",
        "action": "get_meteo_data"
      },
      {
        "time": "1035",
        "action": "get_meteo_data"
      },
      {
        "time": "1635",
        "action": "get_meteo_data"
      },
      {
        "time": "2235",
        "action": "get_meteo_data"
      },
      {
        "time": "1335",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1415",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1515",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1615",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1715",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "xx00",
        "action": "calc_optimum"
      },
      {
        "time": "2359",
        "action": "clean_data"
      }
    ]
  }
}
kan iemand mij uitleggen wat hier gebeurd of wat er fout gaat?

Gasloos 2019 + WP Panasonic H-serie 7kW + 300 liter boilervat + PV 12.415Wp + Home Assistant + Hyundai Ioniq 6 First Edition + Zaptec laadpaal

hemertje schreef op woensdag 22 april 2026 @ 22:34:
vandaag begonnen met de config vullen na maanden hier gelezen te hebben
ik wil beginnen met het makkelikste

mijn solarsysteem:

ik heb 5 dakvlakken met panelen, 1x 8kW Solaredge omvormer met een optimizer per paneel, maar wellicht maak ik ergens een denkfout?


Plat dak aanbouw
- Declination: 10
- Azimuth: 225
- Totall Watt peak: 4800
- Damping factor morning: 0
- Damping factor evening: 0
- Interver size (Watt): 8000


Schuin dak achter
- Declination: 32
- Azimuth: 136
- Totall Watt peak: 1675
- Damping factor morning: 0
- Damping factor evening: 0
- Interver size (Watt): 8000


Schuin dak voor
- Declination: 32
- Azimuth: 283
- Totall Watt peak: 2050
- Damping factor morning: 0
- Damping factor evening: 0
- Interver size (Watt): 8000


Schuin dak zijkant
- Declination: 37
- Azimuth: 202
- Totall Watt peak: 3000
- Damping factor morning: 0
- Damping factor evening: 0
- Interver size (Watt): 8000


Verticaal muur zijkant
- Declination: 90
- Azimuth: 202
- Totall Watt peak: 890
- Damping factor morning: 0
- Damping factor evening: 0
- Interver size (Watt): 8000
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
"solar": [
  {
    "name": "SolarEdge 8kW",
    "max power": 8.0,
    "entity pv switch": "",
    "strings": [
      { "tilt": 10, "orientation":  45, "capacity": 4.80, "yield": 0.01020 },
      { "tilt": 32, "orientation": -44, "capacity": 1.675, "yield": 0.00356 },
      { "tilt": 32, "orientation": 103, "capacity": 2.05, "yield": 0.00436 },
      { "tilt": 37, "orientation":  22, "capacity": 3.00, "yield": 0.00638 },
      { "tilt": 90, "orientation":  22, "capacity": 0.89, "yield": 0.00189 }
    ]
  }
]
Optimaliseringsberekening met Debug geeft vervolgens de volgende melding:
code:
1
2
3
4
5
6
7
8
9
10
11
2026-04-22 22:02:33 ERROR: Configuratie kon niet worden geladen: Expecting ',' delimiter: line 133 column 3 (char 2885)
Traceback (most recent call last):
  File "/root/dao/webserver/../prog/day_ahead.py", line 4709, in <module>
    main()
    ~~~~^^
  File "/root/dao/webserver/../prog/day_ahead.py", line 4669, in main
    da_calc = DaCalc("../data/options.json")
  File "/root/dao/webserver/../prog/day_ahead.py", line 30, in __init__
    if self.config is None:
       ^^^^^^^^^^^
AttributeError: 'DaCalc' object has no attribute 'config'. Did you mean: '_config'?
de volledige config


[...]


kan iemand mij uitleggen wat hier gebeurd of wat er fout gaat?
Regel 132 moet je afsluiten met een komma: ","
Die mag je ook aan het begin van regel 133 zetten, maar dat staat zo slordig.

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer


  • hemertje
  • Registratie: Juli 2015
  • Laatst online: 08:31
krijg nog een melding over een komma op regel 129 die ik niet kan plaatsen
code:
1
2
3
4
5
6
7
8
9
10
11
2026-04-22 22:57:42 ERROR: Configuratie kon niet worden geladen: Expecting ',' delimiter: line 129 column 3 (char 2867)
Traceback (most recent call last):
  File "/root/dao/webserver/../prog/day_ahead.py", line 4709, in <module>
    main()
    ~~~~^^
  File "/root/dao/webserver/../prog/day_ahead.py", line 4669, in main
    da_calc = DaCalc("../data/options.json")
  File "/root/dao/webserver/../prog/day_ahead.py", line 30, in __init__
    if self.config is None:
       ^^^^^^^^^^^
AttributeError: 'DaCalc' object has no attribute 'config'. Did you mean: '_config'?
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
{
  "config_version": 0,
  "homeassistant": {
    "ip_address": "supervisor",
    "protocol_api": "http"
  },
  "database_ha": {
    "engine": "sqlite",
    "db_path": "/homeassistant",
    "database": "home-assistant_v2.db"
  },
  "database_da": {
    "engine": "sqlite",
    "db_path": "../data",
    "database": "day_ahead.db"
  },
  "meteoserver_key": "!secret meteoserver-key",
  "meteoserver_model": "harmonie",
  "meteoserver_attemps": 2,
  "prices": {
    "source_day_ahead": "nordpool",
    "energy_taxes_consumption": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.1088,
      "2025-01-01": 0.10154
    },
    "energy_taxes_production": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.1088,
      "2025-01-01": 0.10154
    },
    "cost_supplier_consumption": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496
    },
    "cost_supplier_production": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496,
      "2026-01-01": 0.0
    },
    "vat_consumption": {
      "2022-01-01": 21.0,
      "2022-07-01": 9.0,
      "2023-01-01": 21.0
    },
    "vat_production": {
      "2022-01-01": 21.0,
      "2022-07-01": 9.0,
      "2023-01-01": 21.0
    },
    "last_invoice": "2025-09-01",
    "tax_refund": true,
    "regular high": 0.5,
    "regular low": 0.4,
    "switch to low": 23
  },
  "logging_level": "info",
  "use_calc_baseload": false,
  "baseload_calc_periode": 56,
  "baseload": [
    0.14,
    0.38,
    0.26,
    0.42,
    0.15,
    0.12,
    0.13,
    0.15,
    0.23,
    0.26,
    0.31,
    0.32,
    0.31,
    0.23,
    0.26,
    0.21,
    0.21,
    0.54,
    0.26,
    0.26,
    0.22,
    0.19,
    0.18,
    0.16
  ],
  "graphical_backend": "",
  "graphics": {
    "style": "Solarize_Light2",
    "battery_balance": true,
    "prices_consumption": true,
    "prices_production": false,
    "prices_spot": true,
    "average_consumption": true,
    "show": "true"
  },
  "interval": "15min",
  "strategy": "minimize cost",
  "max_gap": 0.005,
  "notifications": {
    "opstarten": false,
    "berekening": false
  },
  "grid": {
    "max_power": 17.0
  },
  "history": {
    "save_days": 7
  },
  "dashboard": {
    "port": 5000
  },
  "battery": [],
  "solar": {
    "name": "SolarEdge 8kW",
    "max power": 8.0,
    "entity pv switch": "",
    "strings": [
      { "tilt": 10, "orientation":  45, "capacity": 4.80, "yield": 0.01020 },
      { "tilt": 32, "orientation": -44, "capacity": 1.675, "yield": 0.00356 },
      { "tilt": 32, "orientation": 103, "capacity": 2.05, "yield": 0.00436 },
      { "tilt": 37, "orientation":  22, "capacity": 3.00, "yield": 0.00638 },
      { "tilt": 90, "orientation":  22, "capacity": 0.89, "yield": 0.00189 }
  },
  "electric_vehicle": [],
  "machines": [],
  "boiler": {
    "boiler_present": false,
    "entity actual temp.": "sensor.boiler_gemeten",
    "entity setpoint": "sensor.boiler_ingesteld",
    "entity hysterese": "sensor.hysterese_hot_water",
    "cop": 2.9,
    "cooling rate": 0.4,
    "volume": 180,
    "heating allowed below": 44,
    "elec. power": 1500,
    "activate service": "press",
    "activate entity": "input_button.hw_trigger"
  },
  "heating": {
    "heater_present": false,
    "degree days factor": 3.6,
    "stages": [
      {
        "max_power": 225,
        "cop": 7.1
      },
      {
        "max_power": 300,
        "cop": 7.0
      },
      {
        "max_power": 400,
        "cop": 6.5
      },
      {
        "max_power": 500,
        "cop": 6.0
      },
      {
        "max_power": 600,
        "cop": 5.5
      },
      {
        "max_power": 750,
        "cop": 5.0
      },
      {
        "max_power": 1000,
        "cop": 4.5
      },
      {
        "max_power": 1250,
        "cop": 4.0
      }
    ],
    "entity adjust heating curve": "input_number.stooklijn_verschuiving_day_ahead",
    "adjustment factor": 0.04
  },
  "tibber": {
    "api_token": "!secret tibber_api_token",
    "api_url": "https://api.tibber.com/v1-beta/gql"
  },
  "xgboost": {
    "tune_hyperparameters": true
  },
  "report": {
    "entities_grid_consumption": [
      "sensor.grid_consumption_low",
      "sensor.grid_consumption_high"
    ],
    "entities_grid_production": [
      "sensor.grid_production_low",
      "sensor.grid_production_high"
    ],
    "entities_solar_production_ac": [
      "sensor.solaredge_woning_ac_energy_kwh"
    ],
    "entities_solar_production_dc": [],
    "entities_ev_consumption": [
      "sensor.laadpunt_total_energy"
    ],
    "entities_wp_consumption": [],
    "entities_boiler_consumption": [],
    "entities_battery_consumption": [
      "sensor.ess_grid_consumption"
    ],
    "entities_battery_production": [
      "sensor.ess_grid_production"
    ],
    "entities_machine_consumption": []
  },
  "scheduler": {
    "active": true,
    "schedule": [
      {
        "time": "0435",
        "action": "get_meteo_data"
      },
      {
        "time": "1035",
        "action": "get_meteo_data"
      },
      {
        "time": "1635",
        "action": "get_meteo_data"
      },
      {
        "time": "2235",
        "action": "get_meteo_data"
      },
      {
        "time": "1335",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1415",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1515",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1615",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1715",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "xx00",
        "action": "calc_optimum"
      },
      {
        "time": "2359",
        "action": "clean_data"
      }
    ]
  }
}

Gasloos 2019 + WP Panasonic H-serie 7kW + 300 liter boilervat + PV 12.415Wp + Home Assistant + Hyundai Ioniq 6 First Edition + Zaptec laadpaal

hemertje schreef op woensdag 22 april 2026 @ 22:58:
krijg nog een melding over een komma op regel 129 die ik niet kan plaatsen


[...]


[...]
Je moet je "strings" afsluiten met een "]"
dus zo:
code:
1
2
3
4
5
6
7
8
9
10
11
12
"solar": {
    "name": "SolarEdge 8kW",
    "max power": 8.0,
    "entity pv switch": "",
    "strings": [
      { "tilt": 10, "orientation":  45, "capacity": 4.80, "yield": 0.01020 },
      { "tilt": 32, "orientation": -44, "capacity": 1.675, "yield": 0.00356 },
      { "tilt": 32, "orientation": 103, "capacity": 2.05, "yield": 0.00436 },
      { "tilt": 37, "orientation":  22, "capacity": 3.00, "yield": 0.00638 },
      { "tilt": 90, "orientation":  22, "capacity": 0.89, "yield": 0.00189 }
   ]
  },
Het gaat om het teken op regel 11,hij verwacht of een komma (voor een volgende regel) of een "vierkante haak" om de "lijst" af te sluiten.

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer


  • hemertje
  • Registratie: Juli 2015
  • Laatst online: 08:31
KC27 schreef op woensdag 22 april 2026 @ 23:47:
[...]

Je moet je "strings" afsluiten met een "]"
dus zo:
code:
1
2
3
4
5
6
7
8
9
10
11
12
"solar": {
    "name": "SolarEdge 8kW",
    "max power": 8.0,
    "entity pv switch": "",
    "strings": [
      { "tilt": 10, "orientation":  45, "capacity": 4.80, "yield": 0.01020 },
      { "tilt": 32, "orientation": -44, "capacity": 1.675, "yield": 0.00356 },
      { "tilt": 32, "orientation": 103, "capacity": 2.05, "yield": 0.00436 },
      { "tilt": 37, "orientation":  22, "capacity": 3.00, "yield": 0.00638 },
      { "tilt": 90, "orientation":  22, "capacity": 0.89, "yield": 0.00189 }
   ]
  },
Het gaat om het teken op regel 11,hij verwacht of een komma (voor een volgende regel) of een "vierkante haak" om de "lijst" af te sluiten.
duidelijk!
toch blijf ik meldingen houden?
code:
1
2
3
4
5
6
7
8
9
10
11
2026-04-22 22:57:42 ERROR: Configuratie kon niet worden geladen: Expecting ',' delimiter: line 129 column 3 (char 2867)
Traceback (most recent call last):
  File "/root/dao/webserver/../prog/day_ahead.py", line 4709, in <module>
    main()
    ~~~~^^
  File "/root/dao/webserver/../prog/day_ahead.py", line 4669, in main
    da_calc = DaCalc("../data/options.json")
  File "/root/dao/webserver/../prog/day_ahead.py", line 30, in __init__
    if self.config is None:
       ^^^^^^^^^^^
AttributeError: 'DaCalc' object has no attribute 'config'. Did you mean: '_config'?
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
{
  "config_version": 0,
  "homeassistant": {
    "ip_address": "supervisor",
    "protocol_api": "http"
  },
  "database_ha": {
    "engine": "sqlite",
    "db_path": "/homeassistant",
    "database": "home-assistant_v2.db"
  },
  "database_da": {
    "engine": "sqlite",
    "db_path": "../data",
    "database": "day_ahead.db"
  },
  "meteoserver_key": "!secret meteoserver-key",
  "meteoserver_model": "harmonie",
  "meteoserver_attemps": 2,
  "prices": {
    "source_day_ahead": "nordpool",
    "energy_taxes_consumption": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.1088,
      "2025-01-01": 0.10154
    },
    "energy_taxes_production": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.1088,
      "2025-01-01": 0.10154
    },
    "cost_supplier_consumption": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496
    },
    "cost_supplier_production": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496,
      "2026-01-01": 0.0
    },
    "vat_consumption": {
      "2022-01-01": 21.0,
      "2022-07-01": 9.0,
      "2023-01-01": 21.0
    },
    "vat_production": {
      "2022-01-01": 21.0,
      "2022-07-01": 9.0,
      "2023-01-01": 21.0
    },
    "last_invoice": "2025-09-01",
    "tax_refund": true,
    "regular high": 0.5,
    "regular low": 0.4,
    "switch to low": 23
  },
  "logging_level": "info",
  "use_calc_baseload": false,
  "baseload_calc_periode": 56,
  "baseload": [
    0.14,
    0.38,
    0.26,
    0.42,
    0.15,
    0.12,
    0.13,
    0.15,
    0.23,
    0.26,
    0.31,
    0.32,
    0.31,
    0.23,
    0.26,
    0.21,
    0.21,
    0.54,
    0.26,
    0.26,
    0.22,
    0.19,
    0.18,
    0.16
  ],
  "graphical_backend": "",
  "graphics": {
    "style": "Solarize_Light2",
    "battery_balance": true,
    "prices_consumption": true,
    "prices_production": false,
    "prices_spot": true,
    "average_consumption": true,
    "show": "true"
  },
  "interval": "15min",
  "strategy": "minimize cost",
  "max_gap": 0.005,
  "notifications": {
    "opstarten": false,
    "berekening": false
  },
  "grid": {
    "max_power": 17.0
  },
  "history": {
    "save_days": 7
  },
  "dashboard": {
    "port": 5000
  },
  "battery": [],
"solar": {
    "name": "SolarEdge 8kW",
    "max power": 8.0,
    "entity pv switch": "",
    "strings": [
      { "tilt": 10, "orientation":  45, "capacity": 4.80, "yield": 0.01020 },
      { "tilt": 32, "orientation": -44, "capacity": 1.675, "yield": 0.00356 },
      { "tilt": 32, "orientation": 103, "capacity": 2.05, "yield": 0.00436 },
      { "tilt": 37, "orientation":  22, "capacity": 3.00, "yield": 0.00638 },
      { "tilt": 90, "orientation":  22, "capacity": 0.89, "yield": 0.00189 }
   ]
  },
  "electric_vehicle": [],
  "machines": [],
  "boiler": {
    "boiler_present": false,
    "entity actual temp.": "sensor.boiler_gemeten",
    "entity setpoint": "sensor.boiler_ingesteld",
    "entity hysterese": "sensor.hysterese_hot_water",
    "cop": 2.9,
    "cooling rate": 0.4,
    "volume": 180,
    "heating allowed below": 44,
    "elec. power": 1500,
    "activate service": "press",
    "activate entity": "input_button.hw_trigger"
  },
  "heating": {
    "heater_present": false,
    "degree days factor": 3.6,
    "stages": [
      {
        "max_power": 225,
        "cop": 7.1
      },
      {
        "max_power": 300,
        "cop": 7.0
      },
      {
        "max_power": 400,
        "cop": 6.5
      },
      {
        "max_power": 500,
        "cop": 6.0
      },
      {
        "max_power": 600,
        "cop": 5.5
      },
      {
        "max_power": 750,
        "cop": 5.0
      },
      {
        "max_power": 1000,
        "cop": 4.5
      },
      {
        "max_power": 1250,
        "cop": 4.0
      }
    ],
    "entity adjust heating curve": "input_number.stooklijn_verschuiving_day_ahead",
    "adjustment factor": 0.04
  },
  "tibber": {
    "api_token": "!secret tibber_api_token",
    "api_url": "https://api.tibber.com/v1-beta/gql"
  },
  "xgboost": {
    "tune_hyperparameters": true
  },
  "report": {
    "entities_grid_consumption": [
      "sensor.grid_consumption_low",
      "sensor.grid_consumption_high"
    ],
    "entities_grid_production": [
      "sensor.grid_production_low",
      "sensor.grid_production_high"
    ],
    "entities_solar_production_ac": [
      "sensor.solaredge_woning_ac_energy_kwh"
    ],
    "entities_solar_production_dc": [],
    "entities_ev_consumption": [
      "sensor.laadpunt_total_energy"
    ],
    "entities_wp_consumption": [],
    "entities_boiler_consumption": [],
    "entities_battery_consumption": [
      "sensor.ess_grid_consumption"
    ],
    "entities_battery_production": [
      "sensor.ess_grid_production"
    ],
    "entities_machine_consumption": []
  },
  "scheduler": {
    "active": true,
    "schedule": [
      {
        "time": "0435",
        "action": "get_meteo_data"
      },
      {
        "time": "1035",
        "action": "get_meteo_data"
      },
      {
        "time": "1635",
        "action": "get_meteo_data"
      },
      {
        "time": "2235",
        "action": "get_meteo_data"
      },
      {
        "time": "1335",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1415",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1515",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1615",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1715",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "xx00",
        "action": "calc_optimum"
      },
      {
        "time": "2359",
        "action": "clean_data"
      }
    ]
  }
}
ik gebruik versie Day Ahead Optimizer version: 2026.04.3

ik lees uit de melding dat DAO een komma verwacht op regel 129?
plaats ik achter deze regel een komma dan krijg ik deze melding:
code:
1
2
3
4
5
6
7
8
9
10
11
2026-04-23 08:00:51 ERROR: Configuratie kon niet worden geladen: Illegal trailing comma before end of object: line 129 column 5 (char 2867)
Traceback (most recent call last):
  File "/root/dao/webserver/../prog/day_ahead.py", line 4709, in <module>
    main()
    ~~~~^^
  File "/root/dao/webserver/../prog/day_ahead.py", line 4669, in main
    da_calc = DaCalc("../data/options.json")
  File "/root/dao/webserver/../prog/day_ahead.py", line 30, in __init__
    if self.config is None:
       ^^^^^^^^^^^
AttributeError: 'DaCalc' object has no attribute 'config'. Did you mean: '_config'?

Gasloos 2019 + WP Panasonic H-serie 7kW + 300 liter boilervat + PV 12.415Wp + Home Assistant + Hyundai Ioniq 6 First Edition + Zaptec laadpaal

@hemertje
Volgens mij is jouw config helemaal goed.
Als je jouw config online checkt met een json-validator (bijvoorbeeld: https://jsonchecker.com/) zegt die dat het allemaal ok is.
Weet je zeker dat je niets meer aan de code hebt veranderd?

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer


  • hemertje
  • Registratie: Juli 2015
  • Laatst online: 08:31
ja,

heb vorige week de oude installatie compleet verwijderd en Day Ahead Optimizer version: 2026.04.3 opnieuw geïnstalleerd zoals je eerder aangaf

gisteren dus begonnen met Solar in de config op te nemen
meteo-server en tibber werkt, deze heb ik eerder getest en gedraaid volgens de wiki

Gasloos 2019 + WP Panasonic H-serie 7kW + 300 liter boilervat + PV 12.415Wp + Home Assistant + Hyundai Ioniq 6 First Edition + Zaptec laadpaal


  • hemertje
  • Registratie: Juli 2015
  • Laatst online: 08:31
ah, krijg in de https://jsonchecker.com/ deze melding
code:
1
2
3
4
Parse error on line 156:
...    }    ],      },  "electric_vehic
--------------------^
Expecting 'STRING', got '}'
dat is de komma achter ]

haal ik die komma weg , dan hou ik deze melding over
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2026-04-23 09:12:04 INFO: Loaded 6 secrets from ../data/secrets.json
2026-04-23 09:12:04 INFO: Validating configuration with ConfigurationV0
2026-04-23 09:12:04 ERROR: Configuratie kon niet worden geladen: Configuration validation failed:
  • solar: Input should be a valid list
Traceback (most recent call last):
  File "/root/dao/webserver/../prog/day_ahead.py", line 4709, in <module>
    main()
    ~~~~^^
  File "/root/dao/webserver/../prog/day_ahead.py", line 4669, in main
    da_calc = DaCalc("../data/options.json")
  File "/root/dao/webserver/../prog/day_ahead.py", line 30, in __init__
    if self.config is None:
       ^^^^^^^^^^^
AttributeError: 'DaCalc' object has no attribute 'config'. Did you mean: '_config'?

[ Voor 69% gewijzigd door hemertje op 23-04-2026 09:13 ]

Gasloos 2019 + WP Panasonic H-serie 7kW + 300 liter boilervat + PV 12.415Wp + Home Assistant + Hyundai Ioniq 6 First Edition + Zaptec laadpaal

Kun je dan de code zoals die in de online checker staat hier posten?

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer


  • hemertje
  • Registratie: Juli 2015
  • Laatst online: 08:31
het vreemde is dat https://jsonchecker.com/ 307 regels weergeeft en DAO editor 268

https://jsonchecker.com/ :
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
{
  "config_version": 0,
  "homeassistant": {
    "ip_address": "supervisor",
    "protocol_api": "http"
  },
  "database_ha": {
    "engine": "sqlite",
    "db_path": "/homeassistant",
    "database": "home-assistant_v2.db"
  },
  "database_da": {
    "engine": "sqlite",
    "db_path": "../data",
    "database": "day_ahead.db"
  },
  "meteoserver_key": "!secret meteoserver-key",
  "meteoserver_model": "harmonie",
  "meteoserver_attemps": 2,
  "prices": {
    "source_day_ahead": "nordpool",
    "energy_taxes_consumption": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.1088,
      "2025-01-01": 0.10154
    },
    "energy_taxes_production": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.1088,
      "2025-01-01": 0.10154
    },
    "cost_supplier_consumption": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496
    },
    "cost_supplier_production": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496,
      "2026-01-01": 0.0
    },
    "vat_consumption": {
      "2022-01-01": 21.0,
      "2022-07-01": 9.0,
      "2023-01-01": 21.0
    },
    "vat_production": {
      "2022-01-01": 21.0,
      "2022-07-01": 9.0,
      "2023-01-01": 21.0
    },
    "last_invoice": "2025-09-01",
    "tax_refund": true,
    "regular high": 0.5,
    "regular low": 0.4,
    "switch to low": 23
  },
  "logging_level": "info",
  "use_calc_baseload": false,
  "baseload_calc_periode": 56,
  "baseload": [
    0.14,
    0.38,
    0.26,
    0.42,
    0.15,
    0.12,
    0.13,
    0.15,
    0.23,
    0.26,
    0.31,
    0.32,
    0.31,
    0.23,
    0.26,
    0.21,
    0.21,
    0.54,
    0.26,
    0.26,
    0.22,
    0.19,
    0.18,
    0.16
  ],
  "graphical_backend": "",
  "graphics": {
    "style": "Solarize_Light2",
    "battery_balance": true,
    "prices_consumption": true,
    "prices_production": false,
    "prices_spot": true,
    "average_consumption": true,
    "show": "true"
  },
  "interval": "15min",
  "strategy": "minimize cost",
  "max_gap": 0.005,
  "notifications": {
    "opstarten": false,
    "berekening": false
  },
  "grid": {
    "max_power": 17.0
  },
  "history": {
    "save_days": 7
  },
  "dashboard": {
    "port": 5000
  },
  "battery": [
    
  ],
  "solar": {
    "name": "SolarEdge 8kW",
    "max power": 8.0,
    "entity pv switch": "",
    "strings": [
      {
        "tilt": 10,
        "orientation": 45,
        "capacity": 4.80,
        "yield": 0.01020
      },
      {
        "tilt": 32,
        "orientation": -44,
        "capacity": 1.675,
        "yield": 0.00356
      },
      {
        "tilt": 32,
        "orientation": 103,
        "capacity": 2.05,
        "yield": 0.00436
      },
      {
        "tilt": 37,
        "orientation": 22,
        "capacity": 3.00,
        "yield": 0.00638
      },
      {
        "tilt": 90,
        "orientation": 22,
        "capacity": 0.89,
        "yield": 0.00189
      }
    ]  
  },
  "electric_vehicle": [
    
  ],
  "machines": [
    
  ],
  "boiler": {
    "boiler_present": false,
    "entity actual temp.": "sensor.boiler_gemeten",
    "entity setpoint": "sensor.boiler_ingesteld",
    "entity hysterese": "sensor.hysterese_hot_water",
    "cop": 2.9,
    "cooling rate": 0.4,
    "volume": 180,
    "heating allowed below": 44,
    "elec. power": 1500,
    "activate service": "press",
    "activate entity": "input_button.hw_trigger"
  },
  "heating": {
    "heater_present": false,
    "degree days factor": 3.6,
    "stages": [
      {
        "max_power": 225,
        "cop": 7.1
      },
      {
        "max_power": 300,
        "cop": 7.0
      },
      {
        "max_power": 400,
        "cop": 6.5
      },
      {
        "max_power": 500,
        "cop": 6.0
      },
      {
        "max_power": 600,
        "cop": 5.5
      },
      {
        "max_power": 750,
        "cop": 5.0
      },
      {
        "max_power": 1000,
        "cop": 4.5
      },
      {
        "max_power": 1250,
        "cop": 4.0
      }
    ],
    "entity adjust heating curve": "input_number.stooklijn_verschuiving_day_ahead",
    "adjustment factor": 0.04
  },
  "tibber": {
    "api_token": "!secret tibber_api_token",
    "api_url": "https://api.tibber.com/v1-beta/gql"
  },
  "xgboost": {
    "tune_hyperparameters": true
  },
  "report": {
    "entities_grid_consumption": [
      "sensor.grid_consumption_low",
      "sensor.grid_consumption_high"
    ],
    "entities_grid_production": [
      "sensor.grid_production_low",
      "sensor.grid_production_high"
    ],
    "entities_solar_production_ac": [
      "sensor.solaredge_woning_ac_energy_kwh"
    ],
    "entities_solar_production_dc": [
      
    ],
    "entities_ev_consumption": [
      "sensor.laadpunt_total_energy"
    ],
    "entities_wp_consumption": [
      
    ],
    "entities_boiler_consumption": [
      
    ],
    "entities_battery_consumption": [
      "sensor.ess_grid_consumption"
    ],
    "entities_battery_production": [
      "sensor.ess_grid_production"
    ],
    "entities_machine_consumption": [
      
    ]
  },
  "scheduler": {
    "active": true,
    "schedule": [
      {
        "time": "0435",
        "action": "get_meteo_data"
      },
      {
        "time": "1035",
        "action": "get_meteo_data"
      },
      {
        "time": "1635",
        "action": "get_meteo_data"
      },
      {
        "time": "2235",
        "action": "get_meteo_data"
      },
      {
        "time": "1335",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1415",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1515",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1615",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1715",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "xx00",
        "action": "calc_optimum"
      },
      {
        "time": "2359",
        "action": "clean_data"
      }
    ]
  }
}
Afbeeldingslocatie: https://tweakers.net/i/-i6DKqb_MhCGm4dRvB6a-krmarM=/800x/filters:strip_exif()/f/image/nkARAW8orpt5am1X0YyxdXOW.png?f=fotoalbum_large


DAO:
Afbeeldingslocatie: https://tweakers.net/i/xy3UWDZWzWwsB7lGbLkyb1HTyzk=/x800/filters:strip_exif()/f/image/hsxfV0ZBs57A3J77V5HNoxmO.png?f=fotoalbum_large

Gasloos 2019 + WP Panasonic H-serie 7kW + 300 liter boilervat + PV 12.415Wp + Home Assistant + Hyundai Ioniq 6 First Edition + Zaptec laadpaal

Die json checker formatteert alles ook en trekt jouw solar regels uit elkaar (zoals het eigenlijk hoort) en zet alles onder elkaar.

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer

@hemertje
Wat je kunt doen: alles laten kloppen in de online checker en dan alles kopiëren naar de json-editor van DAO.

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer


  • hemertje
  • Registratie: Juli 2015
  • Laatst online: 08:31
oke, de code vanuit https://jsonchecker.com/ gekopieerd naar de DAO editor zodat we daar ook 307 regels hebben

helaas nog steeds een melding
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2026-04-23 10:27:54 INFO: Loaded 6 secrets from ../data/secrets.json
2026-04-23 10:27:54 INFO: Validating configuration with ConfigurationV0
2026-04-23 10:27:54 ERROR: Configuratie kon niet worden geladen: Configuration validation failed:
  • solar: Input should be a valid list
Traceback (most recent call last):
  File "/root/dao/webserver/../prog/day_ahead.py", line 4709, in <module>
    main()
    ~~~~^^
  File "/root/dao/webserver/../prog/day_ahead.py", line 4669, in main
    da_calc = DaCalc("../data/options.json")
  File "/root/dao/webserver/../prog/day_ahead.py", line 30, in __init__
    if self.config is None:
       ^^^^^^^^^^^
AttributeError: 'DaCalc' object has no attribute 'config'. Did you mean: '_config'?
DAO
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
{
  "config_version": 0,
  "homeassistant": {
    "ip_address": "supervisor",
    "protocol_api": "http"
  },
  "database_ha": {
    "engine": "sqlite",
    "db_path": "/homeassistant",
    "database": "home-assistant_v2.db"
  },
  "database_da": {
    "engine": "sqlite",
    "db_path": "../data",
    "database": "day_ahead.db"
  },
  "meteoserver_key": "!secret meteoserver-key",
  "meteoserver_model": "harmonie",
  "meteoserver_attemps": 2,
  "prices": {
    "source_day_ahead": "nordpool",
    "energy_taxes_consumption": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.1088,
      "2025-01-01": 0.10154
    },
    "energy_taxes_production": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.1088,
      "2025-01-01": 0.10154
    },
    "cost_supplier_consumption": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496
    },
    "cost_supplier_production": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496,
      "2026-01-01": 0.0
    },
    "vat_consumption": {
      "2022-01-01": 21.0,
      "2022-07-01": 9.0,
      "2023-01-01": 21.0
    },
    "vat_production": {
      "2022-01-01": 21.0,
      "2022-07-01": 9.0,
      "2023-01-01": 21.0
    },
    "last_invoice": "2025-09-01",
    "tax_refund": true,
    "regular high": 0.5,
    "regular low": 0.4,
    "switch to low": 23
  },
  "logging_level": "info",
  "use_calc_baseload": false,
  "baseload_calc_periode": 56,
  "baseload": [
    0.14,
    0.38,
    0.26,
    0.42,
    0.15,
    0.12,
    0.13,
    0.15,
    0.23,
    0.26,
    0.31,
    0.32,
    0.31,
    0.23,
    0.26,
    0.21,
    0.21,
    0.54,
    0.26,
    0.26,
    0.22,
    0.19,
    0.18,
    0.16
  ],
  "graphical_backend": "",
  "graphics": {
    "style": "Solarize_Light2",
    "battery_balance": true,
    "prices_consumption": true,
    "prices_production": false,
    "prices_spot": true,
    "average_consumption": true,
    "show": "true"
  },
  "interval": "15min",
  "strategy": "minimize cost",
  "max_gap": 0.005,
  "notifications": {
    "opstarten": false,
    "berekening": false
  },
  "grid": {
    "max_power": 17.0
  },
  "history": {
    "save_days": 7
  },
  "dashboard": {
    "port": 5000
  },
  "battery": [
    
  ],
  "solar": {
    "name": "SolarEdge 8kW",
    "max power": 8.0,
    "entity pv switch": "",
    "strings": [
      {
        "tilt": 10,
        "orientation": 45,
        "capacity": 4.80,
        "yield": 0.01020
      },
      {
        "tilt": 32,
        "orientation": -44,
        "capacity": 1.675,
        "yield": 0.00356
      },
      {
        "tilt": 32,
        "orientation": 103,
        "capacity": 2.05,
        "yield": 0.00436
      },
      {
        "tilt": 37,
        "orientation": 22,
        "capacity": 3.00,
        "yield": 0.00638
      },
      {
        "tilt": 90,
        "orientation": 22,
        "capacity": 0.89,
        "yield": 0.00189
      }
    ]  
  },
  "electric_vehicle": [
    
  ],
  "machines": [
    
  ],
  "boiler": {
    "boiler_present": false,
    "entity actual temp.": "sensor.boiler_gemeten",
    "entity setpoint": "sensor.boiler_ingesteld",
    "entity hysterese": "sensor.hysterese_hot_water",
    "cop": 2.9,
    "cooling rate": 0.4,
    "volume": 180,
    "heating allowed below": 44,
    "elec. power": 1500,
    "activate service": "press",
    "activate entity": "input_button.hw_trigger"
  },
  "heating": {
    "heater_present": false,
    "degree days factor": 3.6,
    "stages": [
      {
        "max_power": 225,
        "cop": 7.1
      },
      {
        "max_power": 300,
        "cop": 7.0
      },
      {
        "max_power": 400,
        "cop": 6.5
      },
      {
        "max_power": 500,
        "cop": 6.0
      },
      {
        "max_power": 600,
        "cop": 5.5
      },
      {
        "max_power": 750,
        "cop": 5.0
      },
      {
        "max_power": 1000,
        "cop": 4.5
      },
      {
        "max_power": 1250,
        "cop": 4.0
      }
    ],
    "entity adjust heating curve": "input_number.stooklijn_verschuiving_day_ahead",
    "adjustment factor": 0.04
  },
  "tibber": {
    "api_token": "!secret tibber_api_token",
    "api_url": "https://api.tibber.com/v1-beta/gql"
  },
  "xgboost": {
    "tune_hyperparameters": true
  },
  "report": {
    "entities_grid_consumption": [
      "sensor.grid_consumption_low",
      "sensor.grid_consumption_high"
    ],
    "entities_grid_production": [
      "sensor.grid_production_low",
      "sensor.grid_production_high"
    ],
    "entities_solar_production_ac": [
      "sensor.solaredge_woning_ac_energy_kwh"
    ],
    "entities_solar_production_dc": [
      
    ],
    "entities_ev_consumption": [
      "sensor.laadpunt_total_energy"
    ],
    "entities_wp_consumption": [
      
    ],
    "entities_boiler_consumption": [
      
    ],
    "entities_battery_consumption": [
      "sensor.ess_grid_consumption"
    ],
    "entities_battery_production": [
      "sensor.ess_grid_production"
    ],
    "entities_machine_consumption": [
      
    ]
  },
  "scheduler": {
    "active": true,
    "schedule": [
      {
        "time": "0435",
        "action": "get_meteo_data"
      },
      {
        "time": "1035",
        "action": "get_meteo_data"
      },
      {
        "time": "1635",
        "action": "get_meteo_data"
      },
      {
        "time": "2235",
        "action": "get_meteo_data"
      },
      {
        "time": "1335",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1415",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1515",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1615",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1715",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "xx00",
        "action": "calc_optimum"
      },
      {
        "time": "2359",
        "action": "clean_data"
      }
    ]
  }
}
Afbeeldingslocatie: https://tweakers.net/i/SLeHiJWqV1_A5LeGqh6Ip26p984=/x800/filters:strip_exif()/f/image/0yPBYQy1yUtoWiQMKyl5M38Z.png?f=fotoalbum_large

Gasloos 2019 + WP Panasonic H-serie 7kW + 300 liter boilervat + PV 12.415Wp + Home Assistant + Hyundai Ioniq 6 First Edition + Zaptec laadpaal


  • hemertje
  • Registratie: Juli 2015
  • Laatst online: 08:31
is het aantal dakvlakken gelimiteerd in de DAO code?

Gasloos 2019 + WP Panasonic H-serie 7kW + 300 liter boilervat + PV 12.415Wp + Home Assistant + Hyundai Ioniq 6 First Edition + Zaptec laadpaal


  • Dogooder
  • Registratie: April 2004
  • Laatst online: 09:21

Dogooder

dus...

hemertje schreef op donderdag 23 april 2026 @ 10:32:
oke, de code vanuit https://jsonchecker.com/ gekopieerd naar de DAO editor zodat we daar ook 307 regels hebben

helaas nog steeds een melding
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2026-04-23 10:27:54 INFO: Loaded 6 secrets from ../data/secrets.json
2026-04-23 10:27:54 INFO: Validating configuration with ConfigurationV0
2026-04-23 10:27:54 ERROR: Configuratie kon niet worden geladen: Configuration validation failed:
  • solar: Input should be a valid list
Traceback (most recent call last):
  File "/root/dao/webserver/../prog/day_ahead.py", line 4709, in <module>
    main()
    ~~~~^^
  File "/root/dao/webserver/../prog/day_ahead.py", line 4669, in main
    da_calc = DaCalc("../data/options.json")
  File "/root/dao/webserver/../prog/day_ahead.py", line 30, in __init__
    if self.config is None:
       ^^^^^^^^^^^
AttributeError: 'DaCalc' object has no attribute 'config'. Did you mean: '_config'?
DAO


[...]


[Afbeelding]
"solar": verwacht een lijst, dus "solar": [ ], bij jou begint hij met een {.

uit de voorbeeldcode
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
  "solar": [
    {
      "name": "woning",
      "entity pv switch": "input_boolean.pv_woning_aan_uit",
      "ml_prediction": "true",
      "entities sensors": "sensor.solaredge_woning_ac_energy_kwh",
      "strings": [
        {
          "tilt": 40,
          "orientation": 5,
          "capacity": 3.3,
          "yield": 0.0065
        },
        {
          "tilt": 15,
          "orientation": 5,
          "capacity": 0.9,
          "yield": 0.0025
        }
      ]
    },
    {
      "name": "garage",
      "ml_prediction": "true",
      "entities sensors": [
        "sensor.solaredge_garage_ac_energy_kwh_2"
      ],
      "tilt": 45,
      "orientation": 5,
      "capacity": 1.8,
      "yield": 0.005,
      "entity pv switch": "input_boolean.pv_garage_aan_uit"
    }
  ],

  • hemertje
  • Registratie: Juli 2015
  • Laatst online: 08:31
scherp!

met https://jsonchecker.com/ en jouw aanwijzing is het gelukt
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
{
  "config_version": 0,
  "homeassistant": {
    "ip_address": "supervisor",
    "protocol_api": "http"
  },
  "database_ha": {
    "engine": "sqlite",
    "db_path": "/homeassistant",
    "database": "home-assistant_v2.db"
  },
  "database_da": {
    "engine": "sqlite",
    "db_path": "../data",
    "database": "day_ahead.db"
  },
  "meteoserver_key": "!secret meteoserver-key",
  "meteoserver_model": "harmonie",
  "meteoserver_attemps": 2,
  "prices": {
    "source_day_ahead": "nordpool",
    "energy_taxes_consumption": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.1088,
      "2025-01-01": 0.10154
    },
    "energy_taxes_production": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.1088,
      "2025-01-01": 0.10154
    },
    "cost_supplier_consumption": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496
    },
    "cost_supplier_production": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496,
      "2026-01-01": 0.0
    },
    "vat_consumption": {
      "2022-01-01": 21.0,
      "2022-07-01": 9.0,
      "2023-01-01": 21.0
    },
    "vat_production": {
      "2022-01-01": 21.0,
      "2022-07-01": 9.0,
      "2023-01-01": 21.0
    },
    "last_invoice": "2025-09-01",
    "tax_refund": true,
    "regular high": 0.5,
    "regular low": 0.4,
    "switch to low": 23
  },
  "logging_level": "info",
  "use_calc_baseload": false,
  "baseload_calc_periode": 56,
  "baseload": [
    0.14,
    0.38,
    0.26,
    0.42,
    0.15,
    0.12,
    0.13,
    0.15,
    0.23,
    0.26,
    0.31,
    0.32,
    0.31,
    0.23,
    0.26,
    0.21,
    0.21,
    0.54,
    0.26,
    0.26,
    0.22,
    0.19,
    0.18,
    0.16
  ],
  "graphical_backend": "",
  "graphics": {
    "style": "Solarize_Light2",
    "battery_balance": true,
    "prices_consumption": true,
    "prices_production": false,
    "prices_spot": true,
    "average_consumption": true,
    "show": "true"
  },
  "interval": "15min",
  "strategy": "minimize cost",
  "max_gap": 0.005,
  "notifications": {
    "opstarten": false,
    "berekening": false
  },
  "grid": {
    "max_power": 17.0
  },
  "history": {
    "save_days": 7
  },
  "dashboard": {
    "port": 5000
  },
  "battery": [
    
  ],
  "solar": [
    {
      "name": "SolarEdge 8kW",
      "entities sensors": "sensor.solaredge_woning_ac_energy_kwh",
      "strings": [
        {
          "tilt": 10,
          "orientation": 45,
          "capacity": 4.80,
          "yield": 0.01020
        },
        {
          "tilt": 32,
          "orientation": -44,
          "capacity": 1.675,
          "yield": 0.00356
        },
        {
          "tilt": 32,
          "orientation": 103,
          "capacity": 2.05,
          "yield": 0.00436
        },
        {
          "tilt": 37,
          "orientation": 22,
          "capacity": 3.00,
          "yield": 0.00638
        },
        {
          "tilt": 90,
          "orientation": 22,
          "capacity": 0.89,
          "yield": 0.00189
        }
      ]
     }
    ],
    "electric_vehicle": [
      
    ],
    "machines": [
      
    ],
    "boiler": {
      "boiler_present": false,
      "entity actual temp.": "sensor.boiler_gemeten",
      "entity setpoint": "sensor.boiler_ingesteld",
      "entity hysterese": "sensor.hysterese_hot_water",
      "cop": 2.9,
      "cooling rate": 0.4,
      "volume": 180,
      "heating allowed below": 44,
      "elec. power": 1500,
      "activate service": "press",
      "activate entity": "input_button.hw_trigger"
    },
    "heating": {
      "heater_present": false,
      "degree days factor": 3.6,
      "stages": [
        {
          "max_power": 225,
          "cop": 7.1
        },
        {
          "max_power": 300,
          "cop": 7.0
        },
        {
          "max_power": 400,
          "cop": 6.5
        },
        {
          "max_power": 500,
          "cop": 6.0
        },
        {
          "max_power": 600,
          "cop": 5.5
        },
        {
          "max_power": 750,
          "cop": 5.0
        },
        {
          "max_power": 1000,
          "cop": 4.5
        },
        {
          "max_power": 1250,
          "cop": 4.0
        }
      ],
      "entity adjust heating curve": "input_number.stooklijn_verschuiving_day_ahead",
      "adjustment factor": 0.04
    },
    "tibber": {
      "api_token": "!secret tibber_api_token",
      "api_url": "https://api.tibber.com/v1-beta/gql"
    },
    "xgboost": {
      "tune_hyperparameters": true
    },
    "report": {
      "entities_grid_consumption": [
        "sensor.grid_consumption_low",
        "sensor.grid_consumption_high"
      ],
      "entities_grid_production": [
        "sensor.grid_production_low",
        "sensor.grid_production_high"
      ],
      "entities_solar_production_ac": [
        "sensor.solaredge_woning_ac_energy_kwh"
      ],
      "entities_solar_production_dc": [
        
      ],
      "entities_ev_consumption": [
        "sensor.laadpunt_total_energy"
      ],
      "entities_wp_consumption": [
        
      ],
      "entities_boiler_consumption": [
        
      ],
      "entities_battery_consumption": [
        "sensor.ess_grid_consumption"
      ],
      "entities_battery_production": [
        "sensor.ess_grid_production"
      ],
      "entities_machine_consumption": [
        
      ]
    },
    "scheduler": {
      "active": true,
      "schedule": [
        {
          "time": "0435",
          "action": "get_meteo_data"
        },
        {
          "time": "1035",
          "action": "get_meteo_data"
        },
        {
          "time": "1635",
          "action": "get_meteo_data"
        },
        {
          "time": "2235",
          "action": "get_meteo_data"
        },
        {
          "time": "1335",
          "action": "get_day_ahead_prices"
        },
        {
          "time": "1415",
          "action": "get_day_ahead_prices"
        },
        {
          "time": "1515",
          "action": "get_day_ahead_prices"
        },
        {
          "time": "1615",
          "action": "get_day_ahead_prices"
        },
        {
          "time": "1715",
          "action": "get_day_ahead_prices"
        },
        {
          "time": "xx00",
          "action": "calc_optimum"
        },
        {
          "time": "2359",
          "action": "clean_data"
        }
      ]
    }
  }
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
2026-04-23 11:28:09 INFO: Loaded 6 secrets from ../data/secrets.json
2026-04-23 11:28:09 INFO: Validating configuration with ConfigurationV0
2026-04-23 11:28:10 info: Day Ahead Optimalisering versie: 2026.04.3
2026-04-23 11:28:10 info: Day Ahead Optimalisering gestart op: 23-04-2026 11:28:10
2026-04-23 11:28:10 info: Day Ahead Optimalisatie gestart: 23-04-2026 11:28:10 taak: calc_optimum_met_debug
2026-04-23 11:28:10 info: Debug = True
2026-04-23 11:28:10 info: Baseload uit instellingen
2026-04-23 11:28:11 info: Start waarden: 
      uur                tijd   spot   p_l   p_t  base  pv_ac  pv_dc
0   11:15 2026-04-23 11:15:00  0.005 0.154 0.129 0.080  0.327      0
1   11:30 2026-04-23 11:30:00 -0.001 0.146 0.122 0.081  2.749      0
2   11:45 2026-04-23 11:45:00 -0.008 0.138 0.113 0.080  2.825      0
3   12:00 2026-04-23 12:00:00 -0.010 0.136 0.111 0.080  2.912      0
4   12:15 2026-04-23 12:15:00 -0.024 0.119 0.094 0.079  2.988      0
5   12:30 2026-04-23 12:30:00 -0.032 0.109 0.084 0.078  3.064      0
6   12:45 2026-04-23 12:45:00 -0.046 0.092 0.068 0.073  3.096      0
7   13:00 2026-04-23 13:00:00 -0.040 0.099 0.075 0.063  3.107      0
8   13:15 2026-04-23 13:15:00 -0.050 0.088 0.063 0.058  3.138      0
9   13:30 2026-04-23 13:30:00 -0.051 0.085 0.061 0.053  3.170      0
10  13:45 2026-04-23 13:45:00 -0.057 0.079 0.054 0.055  3.149      0
11  14:00 2026-04-23 14:00:00 -0.056 0.080 0.055 0.063  3.102      0
12  14:15 2026-04-23 14:15:00 -0.051 0.086 0.061 0.065  3.081      0
13  14:30 2026-04-23 14:30:00 -0.048 0.090 0.065 0.067  3.060      0
14  14:45 2026-04-23 14:45:00 -0.039 0.100 0.075 0.064  2.987      0
15  15:00 2026-04-23 15:00:00 -0.039 0.101 0.076 0.056  2.883      0
16  15:15 2026-04-23 15:15:00 -0.028 0.114 0.089 0.053  2.810      0
17  15:30 2026-04-23 15:30:00 -0.015 0.130 0.105 0.050  2.736      0
18  15:45 2026-04-23 15:45:00 -0.009 0.137 0.112 0.050  2.629      0
19  16:00 2026-04-23 16:00:00 -0.006 0.140 0.115 0.047  2.501      0
20  16:15 2026-04-23 16:15:00 -0.001 0.146 0.121 0.047  2.393      0
21  16:30 2026-04-23 16:30:00 -0.000 0.148 0.123 0.047  2.286      0
22  16:45 2026-04-23 16:45:00  0.000 0.148 0.123 0.068  2.161      0
23  17:00 2026-04-23 17:00:00 -0.000 0.148 0.123 0.114  2.029      0
24  17:15 2026-04-23 17:15:00  0.000 0.148 0.123 0.134  1.903      0
25  17:30 2026-04-23 17:30:00  0.007 0.157 0.132 0.155  1.778      0
26  17:45 2026-04-23 17:45:00  0.080 0.245 0.220 0.137  1.621      0
27  18:00 2026-04-23 18:00:00  0.048 0.205 0.180 0.087  1.440      0
28  18:15 2026-04-23 18:15:00  0.084 0.249 0.225 0.069  1.283      0
29  18:30 2026-04-23 18:30:00  0.114 0.285 0.260 0.052  1.126      0
30  18:45 2026-04-23 18:45:00  0.147 0.325 0.301 0.052  0.969      0
31  19:00 2026-04-23 19:00:00  0.095 0.262 0.237 0.066  0.764      0
32  19:15 2026-04-23 19:15:00  0.117 0.289 0.264 0.066  0.568      0
33  19:30 2026-04-23 19:30:00  0.128 0.303 0.278 0.066  0.395      0
34  19:45 2026-04-23 19:45:00  0.153 0.333 0.309 0.063  0.277      0
35  20:00 2026-04-23 20:00:00  0.131 0.306 0.282 0.059  0.176      0
36  20:15 2026-04-23 20:15:00  0.142 0.320 0.295 0.056  0.090      0
37  20:30 2026-04-23 20:30:00  0.137 0.314 0.289 0.054  0.006      0
38  20:45 2026-04-23 20:45:00  0.129 0.304 0.279 0.052  0.000      0
39  21:00 2026-04-23 21:00:00  0.165 0.347 0.322 0.050  0.019      0
40  21:15 2026-04-23 21:15:00  0.170 0.354 0.329 0.048  0.004      0
41  21:30 2026-04-23 21:30:00  0.148 0.327 0.302 0.046  0.000      0
42  21:45 2026-04-23 21:45:00  0.125 0.299 0.274 0.046  0.000      0
43  22:00 2026-04-23 22:00:00  0.178 0.363 0.339 0.046  0.000      0
44  22:15 2026-04-23 22:15:00  0.152 0.332 0.307 0.045  0.000      0
45  22:30 2026-04-23 22:30:00  0.126 0.300 0.276 0.045  0.000      0
46  22:45 2026-04-23 22:45:00  0.120 0.293 0.268 0.044  0.000      0
47  23:00 2026-04-23 23:00:00  0.154 0.335 0.310 0.042  0.000      0
48  23:15 2026-04-23 23:15:00  0.125 0.299 0.275 0.041  0.000      0
49  23:30 2026-04-23 23:30:00  0.115 0.287 0.262 0.039  0.000      0
50  23:45 2026-04-23 23:45:00  0.107 0.278 0.253 0.038  0.000      0
2026-04-23 11:28:13 info: Boiler niet aanwezig of staat uit, boiler wordt niet ingepland
2026-04-23 11:28:13 info: Warmtepomp niet aanwezig - warmtepomp wordt niet ingepland
2026-04-23 11:28:13 info: Strategie: minimale kosten
2026-04-23 11:28:13 info: Maximale fout (maximal gap): 0.005000 euro
2026-04-23 11:28:13 info: Rekentijd: 0.05  sec
2026-04-23 11:28:13 info: Het programma heeft een optimale oplossing gevonden.
2026-04-23 11:28:13 info: Berekende prognoses zijn niet opgeslagen.
2026-04-23 11:28:14 info: Berekende prognoses: 
   uur  bat_in  bat_out   cons   prod   base   boil     wp     ev  pv_ac   cost  profit  b_tem
 11:15    0.00     0.00   0.00   0.32   0.08   0.00   0.00   0.00   0.33   0.00   -0.04  20.00
 11:30    0.00     0.00   0.00   2.67   0.08   0.00   0.00   0.00   2.75   0.00   -0.32  20.00
 11:45    0.00     0.00   0.00   2.75   0.08   0.00   0.00   0.00   2.83   0.00   -0.31  20.00
 12:00    0.00     0.00   0.00   2.83   0.08   0.00   0.00   0.00   2.91   0.00   -0.31  20.00
 12:15    0.00     0.00   0.00   2.91   0.08   0.00   0.00   0.00   2.99   0.00   -0.27  20.00
 12:30    0.00     0.00   0.00   2.99   0.08   0.00   0.00   0.00   3.06   0.00   -0.25  20.00
 12:45    0.00     0.00   0.00   3.02   0.07   0.00   0.00   0.00   3.10   0.00   -0.20  20.00
 13:00    0.00     0.00   0.00   3.04   0.06   0.00   0.00   0.00   3.11   0.00   -0.23  20.00
 13:15    0.00     0.00   0.00   3.08   0.06   0.00   0.00   0.00   3.14   0.00   -0.19  20.00
 13:30    0.00     0.00   0.00   3.12   0.05   0.00   0.00   0.00   3.17   0.00   -0.19  20.00
 13:45    0.00     0.00   0.00   3.09   0.06   0.00   0.00   0.00   3.15   0.00   -0.17  20.00
 14:00    0.00     0.00   0.00   3.04   0.06   0.00   0.00   0.00   3.10   0.00   -0.17  20.00
 14:15    0.00     0.00   0.00   3.02   0.07   0.00   0.00   0.00   3.08   0.00   -0.19  20.00
 14:30    0.00     0.00   0.00   2.99   0.07   0.00   0.00   0.00   3.06   0.00   -0.19  20.00
 14:45    0.00     0.00   0.00   2.92   0.06   0.00   0.00   0.00   2.99   0.00   -0.22  20.00
 15:00    0.00     0.00   0.00   2.83   0.06   0.00   0.00   0.00   2.88   0.00   -0.22  20.00
 15:15    0.00     0.00   0.00   2.76   0.05   0.00   0.00   0.00   2.81   0.00   -0.25  20.00
 15:30    0.00     0.00   0.00   2.69   0.05   0.00   0.00   0.00   2.74   0.00   -0.28  20.00
 15:45    0.00     0.00   0.00   2.58   0.05   0.00   0.00   0.00   2.63   0.00   -0.29  20.00
 16:00    0.00     0.00   0.00   2.45   0.05   0.00   0.00   0.00   2.50   0.00   -0.28  20.00
 16:15    0.00     0.00   0.00   2.35   0.05   0.00   0.00   0.00   2.39   0.00   -0.28  20.00
 16:30    0.00     0.00   0.00   2.24   0.05   0.00   0.00   0.00   2.29   0.00   -0.27  20.00
 16:45    0.00     0.00   0.00   2.09   0.07   0.00   0.00   0.00   2.16   0.00   -0.26  20.00
 17:00    0.00     0.00   0.00   1.92   0.11   0.00   0.00   0.00   2.03   0.00   -0.24  20.00
 17:15    0.00     0.00   0.00   1.77   0.13   0.00   0.00   0.00   1.90   0.00   -0.22  20.00
 17:30    0.00     0.00   0.00   1.62   0.15   0.00   0.00   0.00   1.78   0.00   -0.21  20.00
 17:45    0.00     0.00   0.00   1.48   0.14   0.00   0.00   0.00   1.62   0.00   -0.33  20.00
 18:00    0.00     0.00   0.00   1.35   0.09   0.00   0.00   0.00   1.44   0.00   -0.24  20.00
 18:15    0.00     0.00   0.00   1.21   0.07   0.00   0.00   0.00   1.28   0.00   -0.27  20.00
 18:30    0.00     0.00   0.00   1.07   0.05   0.00   0.00   0.00   1.13   0.00   -0.28  20.00
 18:45    0.00     0.00   0.00   0.92   0.05   0.00   0.00   0.00   0.97   0.00   -0.28  20.00
 19:00    0.00     0.00   0.00   0.70   0.07   0.00   0.00   0.00   0.76   0.00   -0.17  20.00
 19:15    0.00     0.00   0.00   0.50   0.07   0.00   0.00   0.00   0.57   0.00   -0.13  20.00
 19:30    0.00     0.00   0.00   0.33   0.07   0.00   0.00   0.00   0.40   0.00   -0.09  20.00
 19:45    0.00     0.00   0.00   0.21   0.06   0.00   0.00   0.00   0.28   0.00   -0.07  20.00
 20:00    0.00     0.00   0.00   0.12   0.06   0.00   0.00   0.00   0.18   0.00   -0.03  20.00
 20:15    0.00     0.00   0.00   0.03   0.06   0.00   0.00   0.00   0.09   0.00   -0.01  20.00
 20:30    0.00     0.00   0.05   0.00   0.05   0.00   0.00   0.00   0.01   0.01   -0.00  20.00
 20:45    0.00     0.00   0.05   0.00   0.05   0.00   0.00   0.00   0.00   0.02   -0.00  20.00
 21:00    0.00     0.00   0.03   0.00   0.05   0.00   0.00   0.00   0.02   0.01   -0.00  20.00
 21:15    0.00     0.00   0.04   0.00   0.05   0.00   0.00   0.00   0.00   0.02   -0.00  20.00
 21:30    0.00     0.00   0.05   0.00   0.05   0.00   0.00   0.00   0.00   0.02   -0.00  20.00
 21:45    0.00     0.00   0.05   0.00   0.05   0.00   0.00   0.00   0.00   0.01   -0.00  20.00
 22:00    0.00     0.00   0.05   0.00   0.05   0.00   0.00   0.00   0.00   0.02   -0.00  20.00
 22:15    0.00     0.00   0.05   0.00   0.05   0.00   0.00   0.00   0.00   0.02   -0.00  20.00
 22:30    0.00     0.00   0.04   0.00   0.04   0.00   0.00   0.00   0.00   0.01   -0.00  20.00
 22:45    0.00     0.00   0.04   0.00   0.04   0.00   0.00   0.00   0.00   0.01   -0.00  20.00
 23:00    0.00     0.00   0.04   0.00   0.04   0.00   0.00   0.00   0.00   0.01   -0.00  20.00
 23:15    0.00     0.00   0.04   0.00   0.04   0.00   0.00   0.00   0.00   0.01   -0.00  20.00
 23:30    0.00     0.00   0.04   0.00   0.04   0.00   0.00   0.00   0.00   0.01   -0.00  20.00
 23:45    0.00     0.00   0.04   0.00   0.04   0.00   0.00   0.00   0.00   0.01   -0.00  20.00
Totaal    0.00     0.00   0.61  75.01   3.27   0.00   0.00   0.00  77.60   0.19   -7.96    NaN

2026-04-23 11:28:14 info: Consumption               0.61 (kWh)
2026-04-23 11:28:14 info: Cost consumption          0.19 (€)
2026-04-23 11:28:14 info: Tariff consumption        0.317 (€/kWh)
2026-04-23 11:28:14 info: Production               75.01 (kWh)
2026-04-23 11:28:14 info: Profit production        -7.96 (€)
2026-04-23 11:28:14 info: Tariff production         0.106 (€/kWh)

2026-04-23 11:28:14 info: 
Calculation profit after optimize in €
Cost before optimize             -7.76
Cost consumption      0.19
Cycle cost            0.00
Penalty cost          0.00
Battery storage       0.00
Boiler storage        0.00
Profit production    -7.96
Total                -7.77
Cost after optimize              -7.77
Profit:                           0.01
2026-04-23 11:28:14 info: Onderstaande settings worden NIET doorgezet naar HA (debug-run)

Gasloos 2019 + WP Panasonic H-serie 7kW + 300 liter boilervat + PV 12.415Wp + Home Assistant + Hyundai Ioniq 6 First Edition + Zaptec laadpaal


  • hemertje
  • Registratie: Juli 2015
  • Laatst online: 08:31
vraagje mbt de thuisbatterijen

heeft het de voorkeur om 3 batterijen apart te configureren of als 1 grote virtuele batterij?

Gasloos 2019 + WP Panasonic H-serie 7kW + 300 liter boilervat + PV 12.415Wp + Home Assistant + Hyundai Ioniq 6 First Edition + Zaptec laadpaal


  • tmbreuker
  • Registratie: Juni 2009
  • Nu online
hemertje schreef op donderdag 23 april 2026 @ 12:28:
vraagje mbt de thuisbatterijen

heeft het de voorkeur om 3 batterijen apart te configureren of als 1 grote virtuele batterij?
als de batterijen allen via dezelfde omvormer worden gestuurd, zou ik een grote virtuele batterij aanraden. Dus per omvormer een batterij.

  • hemertje
  • Registratie: Juli 2015
  • Laatst online: 08:31
heb drie sets met ieder 3 batterijen

Gasloos 2019 + WP Panasonic H-serie 7kW + 300 liter boilervat + PV 12.415Wp + Home Assistant + Hyundai Ioniq 6 First Edition + Zaptec laadpaal


  • wmc
  • Registratie: November 2012
  • Laatst online: 09:35

wmc

Ik heb ook drie sets op drie verschillende fases. De distributie van het vermogen naar de batterijen doet een andere integratie, omdat DAO alleen maar een setpoint geeft per 15 minuten. Voor NOM, wat soms een uitkomst is van DAO moet dit sneller. De integratie die dit regelt heeft directe kennis van het vermogen dat de P1 meter uitleest.

Tenzij je batterijen heel verschillende efficienties hebben zie ik het voordeel van meerdere sets aanmaken niet direct.

  • hemertje
  • Registratie: Juli 2015
  • Laatst online: 08:31
heb je een voorbeeld van de integratie voor me?

Gasloos 2019 + WP Panasonic H-serie 7kW + 300 liter boilervat + PV 12.415Wp + Home Assistant + Hyundai Ioniq 6 First Edition + Zaptec laadpaal


  • timscheffers
  • Registratie: November 2009
  • Laatst online: 01-06 19:14
Sinds afgelopen weekend heb ik mijn batterij mogen ontvangen en gekoppeld middels een multiplus. De plugin had ik al een tijdje draaien en werkt perfect!
Nu vroeg ik me af of er een makkelijke manier is om onderstaande te detecteren. Hier wil DAO dat ik al mijn solar voor de batterij gebruik. In werkelijkheid kan de productie lager liggen, dus ik zou hier graag 0 op de meter in willen schakelen. Is hier een vlaggetje voor? Afbeeldingslocatie: https://tweakers.net/i/NxtWzGHng-sQhp5J4NOAszSjbt0=/fit-in/4000x4000/filters:no_upscale():strip_exif()/f/image/bljQdrImj5YMrBnmNSjUrYwD.png?f=user_large
timscheffers schreef op donderdag 23 april 2026 @ 17:48:
Sinds afgelopen weekend heb ik mijn batterij mogen ontvangen en gekoppeld middels een multiplus. De plugin had ik al een tijdje draaien en werkt perfect!
Nu vroeg ik me af of er een makkelijke manier is om onderstaande te detecteren. Hier wil DAO dat ik al mijn solar voor de batterij gebruik. In werkelijkheid kan de productie lager liggen, dus ik zou hier graag 0 op de meter in willen schakelen. Is hier een vlaggetje voor? [Afbeelding]
Ja daar is inderdaad een vlag voor: entity_balance_switch. Als je daar een input_boolean aan hangt kun je met een automation nom gaan regelen.
Dat kan rechtstreeks naar je Victron als deze de inkoop(meter) direct of indirect uitleest, maar het kan ook met een pid regeling. Deze heb ik:
Simple PID Controller - Share your Projects! / Custom Integrations - Home Assistant Community https://community.home-as...ple-pid-controller/918392
Ik zal vanavond mijn instellingen daarvan delen.

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer


  • timscheffers
  • Registratie: November 2009
  • Laatst online: 01-06 19:14
KC27 schreef op donderdag 23 april 2026 @ 17:59:
[...]

Ja daar is inderdaad een vlag voor: entity_balance_switch. Als je daar een input_boolean aan hangt kun je met een automation nom gaan regelen.
Dat kan rechtstreeks naar je Victron als deze de inkoop(meter) direct of indirect uitleest, maar het kan ook met een pid regeling. Deze heb ik:
Simple PID Controller - Share your Projects! / Custom Integrations - Home Assistant Community https://community.home-as...ple-pid-controller/918392
Ik zal vanavond mijn instellingen daarvan delen.
Oh top, bedankt voor het snelle antwoord! Ik had de instelling wel gezien maar niet direct de link gelegd 😄 ben wel benieuwd naar je PID regeling. Ik was zelf van plan ess mode van victron te gebruiken

  • pimNH
  • Registratie: Mei 2011
  • Laatst online: 23-05 20:34
KC27 schreef op donderdag 23 april 2026 @ 17:59:
[...]

Ja daar is inderdaad een vlag voor: entity_balance_switch. Als je daar een input_boolean aan hangt kun je met een automation nom gaan regelen.
Dat kan rechtstreeks naar je Victron als deze de inkoop(meter) direct of indirect uitleest, maar het kan ook met een pid regeling. Deze heb ik:
Simple PID Controller - Share your Projects! / Custom Integrations - Home Assistant Community https://community.home-as...ple-pid-controller/918392
Ik zal vanavond mijn instellingen daarvan delen.
Zou hier wellicht een aparte geen import flag van gemaakt kunnen worden? Het komt bij mij namelijk ook wel eens voor dat als de geprognotiseerde accu lading lager is dan de voorspelde zonne energie er evengoed nog wel eens geimporteerd wordt terwijl dit niet de bedoeling is van dao (de balance flag staat dan ook niet aan). Maar ik kan me ook voorstellen dat het op dat moment niet nodig is om lading uit de accu te halen om te balanceren als de stroom prijs toch laag is.

Ik had eerst in mijn charge automation het zo geregeld dat er nooit stroom geimporteerd wordt, maar dat is in de winter niet helemaal ideaal kan ik mij voorstellen.

[ Voor 7% gewijzigd door pimNH op 23-04-2026 18:56 ]


  • wmc
  • Registratie: November 2012
  • Laatst online: 09:35

wmc

hemertje schreef op donderdag 23 april 2026 @ 16:46:
heb je een voorbeeld van de integratie voor me?
Ik gebruik de Fireson integratie voor mijn Zendure batterijen. Te downloaden via HACS

  • rescla
  • Registratie: November 2012
  • Laatst online: 09:37
pimNH schreef op donderdag 23 april 2026 @ 18:55:
[...]


Zou hier wellicht een aparte geen import flag van gemaakt kunnen worden? Het komt bij mij namelijk ook wel eens voor dat als de geprognotiseerde accu lading lager is dan de voorspelde zonne energie er evengoed nog wel eens geimporteerd wordt terwijl dit niet de bedoeling is van dao (de balance flag staat dan ook niet aan). Maar ik kan me ook voorstellen dat het op dat moment niet nodig is om lading uit de accu te halen om te balanceren als de stroom prijs toch laag is.

Ik had eerst in mijn charge automation het zo geregeld dat er nooit stroom geimporteerd wordt, maar dat is in de winter niet helemaal ideaal kan ik mij voorstellen.
Wat ik persoonlijk nu gedaan heb, is een node-red flow die kijkt of de batterij moet/mag inverten of laden als de balance flag aan staat.

Als DAO PV productie verwacht, en de batterij zou moeten laden, en er geen levering door het net wordt verwacht, dan moet de batterij alleen laden, en niet inverten. Want hij is het PV overschot aan het opslaan, en als er een wolk voor de zon komt moet hij dat niet gaan compenseren, dat mag het net leveren.

Als DAO geen teruglevering aan het net verwacht, en de batterij zou moeten gaan ontladen, dan mag de omvormer alleen inverten en niet laden. Ik verwacht dat dit minder vaak voorkomt, maar als er opeens meer PV is dan verwacht dan mag dat gewoon het net op, ipv dat de batterij dan moet gaan laden om NOM te behouden.

Deze flags verwerk ik vervolgens in m'n NOM control loop, in alle andere gevallen volg ik gewoon de vermogens die DAO in de entities zet.

  • pimNH
  • Registratie: Mei 2011
  • Laatst online: 23-05 20:34
rescla schreef op donderdag 23 april 2026 @ 20:08:
[...]

Wat ik persoonlijk nu gedaan heb, is een node-red flow die kijkt of de batterij moet/mag inverten of laden als de balance flag aan staat.

Als DAO PV productie verwacht, en de batterij zou moeten laden, en er geen levering door het net wordt verwacht, dan moet de batterij alleen laden, en niet inverten. Want hij is het PV overschot aan het opslaan, en als er een wolk voor de zon komt moet hij dat niet gaan compenseren, dat mag het net leveren.

Als DAO geen teruglevering aan het net verwacht, en de batterij zou moeten gaan ontladen, dan mag de omvormer alleen inverten en niet laden. Ik verwacht dat dit minder vaak voorkomt, maar als er opeens meer PV is dan verwacht dan mag dat gewoon het net op, ipv dat de batterij dan moet gaan laden om NOM te behouden.

Deze flags verwerk ik vervolgens in m'n NOM control loop, in alle andere gevallen volg ik gewoon de vermogens die DAO in de entities zet.
Welke flags zijn dit, is er meer beschikbaar naast de balance flag en batterij aan/uit? Of heb je deze flags zelf aangemaakt met onderliggende data uit DAO?

  • rescla
  • Registratie: November 2012
  • Laatst online: 09:37
pimNH schreef op donderdag 23 april 2026 @ 21:19:
[...]


Welke flags zijn dit, is er meer beschikbaar naast de balance flag en batterij aan/uit? Of heb je deze flags zelf aangemaakt met onderliggende data uit DAO?
Dat laatste, ik roep de API aan die op de wiki beschreven staat.

  • Lasoul
  • Registratie: November 2001
  • Laatst online: 00:39
Lasoul schreef op zondag 19 april 2026 @ 15:45:
Heb nu al een tijdje ML aanstaan voor een aantal dakvlakken maar bij mij wordt de gemeten straling nooit ingevuld.

Iemand enig idee waarom niet?

[Afbeelding]
Ik kom niet verder waarom mijn gemeten J/cm2 niet wordt gevuld. Al verschillende dingen geprobeerd.
Hopelijk heeft iemand een idee hoe ik dit kan oplossen.

  • rescla
  • Registratie: November 2012
  • Laatst online: 09:37
Lasoul schreef op donderdag 23 april 2026 @ 22:28:
[...]


Ik kom niet verder waarom mijn gemeten J/cm2 niet wordt gevuld. Al verschillende dingen geprobeerd.
Hopelijk heeft iemand een idee hoe ik dit kan oplossen.
Nee, los van dat ik ook geen waardes heb voor instraling. Die zou ik ook alleen indirect kunnen meten, dus ik weet niet het toe zou voegen.
Lasoul schreef op donderdag 23 april 2026 @ 22:28:
[...]


Ik kom niet verder waarom mijn gemeten J/cm2 niet wordt gevuld. Al verschillende dingen geprobeerd.
Hopelijk heeft iemand een idee hoe ik dit kan oplossen.
Heel simpel: de gemeten straling wordt opgehaald bij het knmi na de dag dat deze gemeten zijn.
Dat gebeurt met het opnieuw berekenen (=trainen) van de voorspelling(en). Deze zijn bij het knmi pas in de loop van de volgende dag beschikbaar..
Dus als je terugbladert naar gisteren of eergisteren dan zie je ze in het overzicht:
Afbeeldingslocatie: https://tweakers.net/i/V-wBVHLzs2KDGb_ium4lTKXb0EM=/fit-in/4000x4000/filters:no_upscale():strip_exif()/f/image/yyXyaQf1AR1sN0lJAOgRF1kV.png?f=user_large

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer

Bij deze - zoals beloofd - mijn instellingen van de pid-regeling.
Je installeert via HACS deze custom-integratie: https://github.com/bvweerd/simple_pid_controller
Daarna ga je in HA via Instellingen\Apparaten naar Integraties.
Daar kies je (onderaan) Integratie toevoegen.
Zoek op "pid" en selecteer pid-regeling.
Je krijgt dan dit venster:
Afbeeldingslocatie: https://tweakers.net/i/bnhod481v8tRdiRWFQF2R3p_zZk=/fit-in/4000x4000/filters:no_upscale():strip_exif()/f/image/STAQE6qC4kKV8TbflTI2FJAL.png?f=user_large
Eenmalige instellingen:
Belangrijk is dat je de goede sensor kiest, want die kun je niet meer aanpassen. Ik meet het grid-vermogen met een P1-device op mijn slimme meter. Die geeft iedere seconde het actuele vermogen in W door van mijn aansluiting.
Bij mij varieert het input vermogen tussen -4500 en +4500 Watt.
De output varieert eveneens tussen -4500 en +4500 Watt, dat is het vermogen waarmee mijn thuisbatterij gaat laden (plus) of ontladen (min).
Pas deze vermogens aan voor jouw situatie en maak de integratie aan

Via Instellingen/Apparaten en diensten/Integraties klik je op aangemaakte PID-regeling om deze verder te configureren of bij te stellen:
Afbeeldingslocatie: https://tweakers.net/i/FDCcMkVP0MONIn0MweNhxRUZgbo=/fit-in/4000x4000/filters:no_upscale():strip_exif()/f/image/toS5PGHtaLtdXXG1tklBmkcJ.png?f=user_large
Hier kun je je setpoint bijstellen. Deze is ook als entity beschikbaar dus kun je die met een automation bijstellen.
De output is ook als entity beschikbaar en daar heb ik een automation (zie hierna) aan "hangen", die de waarde doorzet richting mijn Victron-installatie.

Afbeeldingslocatie: https://tweakers.net/i/8ia6K2UvSn2pseUDbId5Uzv77BM=/x800/filters:strip_exif()/f/image/mcpVWBdAUEhDFincki15AKsb.png?f=fotoalbum_large
De auto-mode gaat aan als de regelaar moet gaan regelen. Dus de input_boolean die DAO op true zet als er gebalanceerd moet worden triggert een automation die auto_mode op true zet.
Ki, Kd en Kp zijn de pid-factoren die voor de goede werking van de regeling moeten zorgen(niet te traag, geen overshoot, geen geslinger enz).
Deze waarden werken goed voor mij maar die moet je wellicht voor jouw situatie aanpassen.
Als je een batterij hebt die met een negatieve waarde gaat laden dan dien je de pid-factoren negatief te maken.
Ik heb gekozen voor:
- propertioneel of measurement (maar dat hoeft niet, dan gaat ie alleen trager reageren)
- windup-protection (dat is wel zo veilig)

Dit is de automation die de output doorzet naar een entity die zijn verandering via modbus doorzet naar de omvormer:
YAML:
1
2
3
4
5
6
7
8
9
10
alias: Apply PID Battery Charging Control
triggers:
  - entity_id: sensor.grid_vermogen_pid_output
    trigger: state
actions:
  - target:
      entity_id: input_number.dao_setpoint_feedin_ess
    data:
      value: "{{ states('sensor.grid_vermogen_pid_output') | float }}"
    action: input_number.set_value

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer


  • balk
  • Registratie: Januari 2000
  • Laatst online: 02-06 16:21
pimNH schreef op donderdag 23 april 2026 @ 18:55:
[...]


Zou hier wellicht een aparte geen import flag van gemaakt kunnen worden? Het komt bij mij namelijk ook wel eens voor dat als de geprognotiseerde accu lading lager is dan de voorspelde zonne energie er evengoed nog wel eens geimporteerd wordt terwijl dit niet de bedoeling is van dao (de balance flag staat dan ook niet aan).
Ik ben ook wel geïnteresseerd in een 'geforceceerd laden/ontladen' entity. Ik heb kWhtjes gereserveerd voor noodstroom. Indien de SoC onder 10% komt ga ik laden, ongeacht wat de prijs op dat moment is of wat DAO wil. Mijn accu corrigeert soms zijn nul punt en 'verliest' dan ineens 20%. Storend. Ik zou niet weten wat ik met geforceerd ontladen zou moeten, maar misschien iemand anders wel.

  • timscheffers
  • Registratie: November 2009
  • Laatst online: 01-06 19:14
KC27 schreef op donderdag 23 april 2026 @ 23:24:
Bij deze - zoals beloofd - mijn instellingen van de pid-regeling.
Je installeert via HACS deze custom-integratie: https://github.com/bvweerd/simple_pid_controller
Daarna ga je in HA via Instellingen\Apparaten naar Integraties.
Daar kies je (onderaan) Integratie toevoegen.
Zoek op "pid" en selecteer pid-regeling.
Je krijgt dan dit venster:
[Afbeelding]
Eenmalige instellingen:
Belangrijk is dat je de goede sensor kiest, want die kun je niet meer aanpassen. Ik meet het grid-vermogen met een P1-device op mijn slimme meter. Die geeft iedere seconde het actuele vermogen in W door van mijn aansluiting.
Bij mij varieert het input vermogen tussen -4500 en +4500 Watt.
De output varieert eveneens tussen -4500 en +4500 Watt, dat is het vermogen waarmee mijn thuisbatterij gaat laden (plus) of ontladen (min).
Pas deze vermogens aan voor jouw situatie en maak de integratie aan

Via Instellingen/Apparaten en diensten/Integraties klik je op aangemaakte PID-regeling om deze verder te configureren of bij te stellen:
[Afbeelding]
Hier kun je je setpoint bijstellen. Deze is ook als entity beschikbaar dus kun je die met een automation bijstellen.
De output is ook als entity beschikbaar en daar heb ik een automation (zie hierna) aan "hangen", die de waarde doorzet richting mijn Victron-installatie.

[Afbeelding]
De auto-mode gaat aan als de regelaar moet gaan regelen. Dus de input_boolean die DAO op true zet als er gebalanceerd moet worden triggert een automation die auto_mode op true zet.
Ki, Kd en Kp zijn de pid-factoren die voor de goede werking van de regeling moeten zorgen(niet te traag, geen overshoot, geen geslinger enz).
Deze waarden werken goed voor mij maar die moet je wellicht voor jouw situatie aanpassen.
Als je een batterij hebt die met een negatieve waarde gaat laden dan dien je de pid-factoren negatief te maken.
Ik heb gekozen voor:
- propertioneel of measurement (maar dat hoeft niet, dan gaat ie alleen trager reageren)
- windup-protection (dat is wel zo veilig)

Dit is de automation die de output doorzet naar een entity die zijn verandering via modbus doorzet naar de omvormer:
YAML:
1
2
3
4
5
6
7
8
9
10
alias: Apply PID Battery Charging Control
triggers:
  - entity_id: sensor.grid_vermogen_pid_output
    trigger: state
actions:
  - target:
      entity_id: input_number.dao_setpoint_feedin_ess
    data:
      value: "{{ states('sensor.grid_vermogen_pid_output') | float }}"
    action: input_number.set_value
Bedankt voor het delen! Hoe dichtbij de 0 kom je met je PID regelaar?
timscheffers schreef op vrijdag 24 april 2026 @ 06:54:
[...]

Bedankt voor het delen! Hoe dichtbij de 0 kom je met je PID regelaar?
Als er even geen fluctuaties zijn in verbruik/productie is ie in een paar seconden op 0.
Afhankelijk van de grootte van de fluctuaties volgt hij met max 100 W de verandering.
Hier heeft hij vannacht tussen 4:40 en 6:15 op nul geregeld:
Afbeeldingslocatie: https://tweakers.net/i/UYP7PuYMZYdRdhep5DrAFxY4v6s=/800x/filters:strip_exif()/f/image/d1U7v3r0R0VpL3P8BdqA0snO.png?f=fotoalbum_large
Het verbruik tussen 5:00 en 6:00 uur was 7 Wh en de productie was 5 Wh:
Afbeeldingslocatie: https://tweakers.net/i/UhtM-dmDcIcIpUOHQqHpiqyy3F4=/800x/filters:strip_exif()/f/image/gK7o84982gn5QQQSNsIPxllG.png?f=fotoalbum_large
Ik ben hier heel tevreden mee.

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer


  • Lasoul
  • Registratie: November 2001
  • Laatst online: 00:39
KC27 schreef op vrijdag 24 april 2026 @ 09:03:
[...]

Als er even geen fluctuaties zijn in verbruik/productie is ie in een paar seconden op 0.
Afhankelijk van de grootte van de fluctuaties volgt hij met max 100 W de verandering.
Hier heeft hij vannacht tussen 4:40 en 6:15 op nul geregeld:
[Afbeelding]
Het verbruik tussen 5:00 en 6:00 uur was 7 Wh en de productie was 5 Wh:
[Afbeelding]
Ik ben hier heel tevreden mee.
Als ik het goed begrijp is de PID regelaar vooral nodig voor de omvormers die zelf niet kunnen sturen op 0-op-de-meter, correct?

Op mijn Deye omvormer kan ik het vinkje zetten zero-export-to-grid en dan probeert de Deye omvormer 0 op de meter te houden in een bandbreedte van -20W tot 20W. Als DOA het vinkje "balance switch" aanzet dan zet ik op mijn Deye de zero-export-to-grid mode aan.

  • JanWatt
  • Registratie: November 2025
  • Laatst online: 03-06 13:14
KC27 schreef op donderdag 23 april 2026 @ 23:24:
Bij deze - zoals beloofd - mijn instellingen van de pid-regeling.
Je installeert via HACS deze custom-integratie: https://github.com/bvweerd/simple_pid_controller
Daarna ga je in HA via Instellingen\Apparaten naar Integraties.
Daar kies je (onderaan) Integratie toevoegen.
Zoek op "pid" en selecteer pid-regeling.
Je krijgt dan dit venster:
[Afbeelding]
Eenmalige instellingen:
Belangrijk is dat je de goede sensor kiest, want die kun je niet meer aanpassen.
Even kleine toevoeging.
Sensor is achteraf wel aan te passen:
settings - devices & services - simple PID controller > - configure (het tandwieltje) - sensor entity

  • Maikie18
  • Registratie: Augustus 2008
  • Laatst online: 03-06 18:09
Wil vandaag ook eens de tijd nemen om DAO te installeren en in te stellen. Net de add-on toegevoegd aan HA en gestart, inmiddels de meteo api ingesteld en gegevens opgehaald. Dat lijkt te werken. Volgende stap heb ik een vraag over, in de standaard config wordt nordpol gebruikt voor ophalen dynamische energieprijzen. Ik heb in mijn HA ENTSOE al in gebruik voor inzicht in de prijzen en bepalen wanneer ik de auto moet laden. Ik kan die api key natuurlijk in de config gebruiken maar dan ga ik dubbele calls doen elke dag, wellicht geen issue maar vroeg me af of dit dan niet anders kon? Alles blijft natuurlijk binnen DAO dus daar ENTSOE gebruiken zal me niet meer in staat stellen om ook nog een tegel te maken op een HA dashboard maar wellicht kan dit wel andersom?

WH-MDC09J + PAW-TD30C1E5-HI | 10.44 kWp O/W | Venus v3 - 5.12kWh V148 - CT003 V116 - BMS 112 - Modi:NOM


  • Lasoul
  • Registratie: November 2001
  • Laatst online: 00:39
Wat is het verschil tussen de onderstaande settings en waar kun je beter op sturen?

entity set power feedin
Entiteit in HA van type "input_number". Hiermee stuurt DAO aan met hoeveel vermogen (W) de batterij moet laden (positief) of ontladen (negatief)
entity from batterij
Optioneel. Entiteit in HA van type "input_number". DAO berekent voor het eerstkomende uur het dc-vermogen (in W) waarmee de batterij wordt ontladen (+) of geladen (-) en plaatst dit na de berekening in deze entiteit

Momenteel stuur ik op entity set power feedin
entity set power feedin < 0 => Batterij ontladen tot target SOC
entity set power feedin > 0 => Batterij laden tot target SOC

Echter ik zie ook situaties waarbij entity set power feedin < 0 en entity from batterij < 0. Dit lijkt tegenstrijdig omdat de ene aangeeft ontladen en de andere laden. Als ik naar de target-soc kijk dan is die wel hoger dan wat het was.

Voorbeeld vandaag om 11:30:
entity set power feedin = -7500 (ontladen)
entity from batterij = -1398 (laden)
target soc = 8% (huidig is 5%)

Moet ik dit dan als volgt interpreteren:
Probeer een gedeelte van de PV opbrengst (1398W) naar de batterij te brengen totdat de target-soc van 8% is gehaald?

  • thomvh
  • Registratie: September 2013
  • Laatst online: 02-06 11:21
Lasoul schreef op vrijdag 24 april 2026 @ 12:49:
Wat is het verschil tussen de onderstaande settings en waar kun je beter op sturen?

entity set power feedin
Entiteit in HA van type "input_number". Hiermee stuurt DAO aan met hoeveel vermogen (W) de batterij moet laden (positief) of ontladen (negatief)
entity from batterij
Optioneel. Entiteit in HA van type "input_number". DAO berekent voor het eerstkomende uur het dc-vermogen (in W) waarmee de batterij wordt ontladen (+) of geladen (-) en plaatst dit na de berekening in deze entiteit

Momenteel stuur ik op entity set power feedin
entity set power feedin < 0 => Batterij ontladen tot target SOC
entity set power feedin > 0 => Batterij laden tot target SOC

Echter ik zie ook situaties waarbij entity set power feedin < 0 en entity from batterij < 0. Dit lijkt tegenstrijdig omdat de ene aangeeft ontladen en de andere laden. Als ik naar de target-soc kijk dan is die wel hoger dan wat het was.

Voorbeeld vandaag om 11:30:
entity set power feedin = -7500 (ontladen)
entity from batterij = -1398 (laden)
target soc = 8% (huidig is 5%)

Moet ik dit dan als volgt interpreteren:
Probeer een gedeelte van de PV opbrengst (1398W) naar de batterij te brengen totdat de target-soc van 8% is gehaald?
From battery is zoals ik het begrepen heb het vermogen op de busbar van je batterijen. Dus DC vermogen.

Feedin is eigenlijk wat er op de meter gemeten wordt.

Dus bij jou dumpt die wat uit de accu en de rest komt van de PV.

Al loop ik hier ook mee te strugglen dus het kan ook heel goed zijn dat ik die from battery verkeerd begrijo en dat het inderdaad is dat die ene stuk van de solar wil opslaan in de batterij. Dat zou je in de grafiek moeten kunnen zien.

[ Voor 6% gewijzigd door thomvh op 24-04-2026 15:22 ]


  • konehead
  • Registratie: Januari 2005
  • Laatst online: 02-06 14:24
Morgen hebben we zwaar negatieve prijzen. Ik had verwacht dat DAO Zon uit zou zetten van 13-15 en maximaal zou importeren van het net. Zoals je ziet is het 50/50%. Wat doe ik fout?

Afbeeldingslocatie: https://tweakers.net/i/Jn2wSal82ZQnfmBQGOQ6C3bzUjY=/x800/filters:strip_exif()/f/image/UUuogHosvXP1lCmC4mIcp9oa.png?f=fotoalbum_large
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
{
  "config_version": 0,
  "homeassistant": {
    "ip_address": "supervisor",
    "protocol_api": "http"
  },
  "database_ha": {
    "engine": "mysql",
    "server": "core-mariadb",
    "port": 3306,
    "database": "homeassistant",
    "username": "homeassistant",
    "password": "!secret db_da_password"
  },
  "database_da": {
    "engine": "sqlite",
    "db_path": "../data",
    "database": "day_ahead.db"
  },
  "meteoserver_key": "!secret meteoserver-key",
  "meteoserver_model": "harmonie",
  "meteoserver_attemps": 2,
  "prices": {
    "source_day_ahead": "nordpool",
    "entsoe_api_key": "!secret entsoe-api-key",
    "energy_taxes_consumption": {
      "2023-01-01": 0.12599,
      "2024-01-01": 0.1088,
      "2025-01-01": 0.12286,
      "2026-01-01": 0.09157
    },
    "energy_taxes_production": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.1088,
      "2025-01-01": 0.12286,
      "2026-01-01": 0.09157
    },
    "cost_supplier_consumption": {
      "2024-04-01": 0.02923,
      "2025-08-01": 0.02398,
      "2025-11-20": 0.0248,
      "2026-01-01": 0.020496,
      "2026-04-15": 0.02
    },
    "cost_supplier_production": {
      "2024-04-01": 0.02923,
      "2025-08-01": 0.020496,
      "2025-11-20": 0.0248,
      "2026-01-01": 0.0,
      "2026-04-15": 0.02
    },
    "vat_consumption": {
      "2024-01-01": 21.0
    },
    "vat_production": {
      "2024-01-01": 21.0
    },
    "last_invoice": "2025-07-19",
    "tax_refund": true
  },
  "logging_level": "info",
  "use_calc_baseload": true,
  "baseload_calc_periode": 30,
  "baseload": [
    0.28,
    0.25,
    0.29,
    0.26,
    0.25,
    0.61,
    0.28,
    0.39,
    0.34,
    0.47,
    0.39,
    0.4,
    0.69,
    0.59,
    0.54,
    0.37,
    0.29,
    0.33,
    0.73,
    0.67,
    0.46,
    0.48,
    0.38,
    0.22
  ],
  "graphical_backend": "",
  "graphics": {
    "style": "Solarize_Light2",
    "battery_balance": true,
    "prices_consumption": true,
    "prices_production": true,
    "prices_spot": true,
    "average_consumption": true,
    "show": "true"
  },
  "interval": "1hour",
  "strategy": "minimize cost",
  "max_gap": 0.005,
  "notifications": {
    "opstarten": false,
    "berekening": false,
    "last_activity_entity": "input_datetime.dao_last_activity"
  },
  "grid": {
    "max_power": 17.0
  },
  "history": {
    "save_days": 7
  },
  "dashboard": {
    "port": 5000
  },
  "battery": [
    {
      "name": "Growatt ARK",
      "entity_actual_level": "sensor.growatt2_battery_soc",
      "capacity": 12.8,
      "upper_limit": 100,
      "lower_limit": 10,
      "penalty_low_soc": 0.0025,
      "charge_stages": [
        {
          "power": 0.0,
          "efficiency": 1.0
        },
        {
          "power": 1000.0,
          "efficiency": 0.95
        },
        {
          "power": 2000.0,
          "efficiency": 0.94
        },
        {
          "power": 3000.0,
          "efficiency": 0.93
        },
        {
          "power": 4000.0,
          "efficiency": 0.91
        },
        {
          "power": 4500.0,
          "efficiency": 0.9
        }
      ],
      "discharge_stages": [
        {
          "power": 0.0,
          "efficiency": 1.0
        },
        {
          "power": 1000.0,
          "efficiency": 0.94
        },
        {
          "power": 2000.0,
          "efficiency": 0.93
        },
        {
          "power": 3000.0,
          "efficiency": 0.92
        },
        {
          "power": 4000.0,
          "efficiency": 0.91
        },
        {
          "power": 4500.0,
          "efficiency": 0.9
        }
      ],
      "reduce_power_low_soc": [],
      "reduce_power_high_soc": [],
      "minimum_power": 500,
      "dc_to_bat_efficiency": 0.98,
      "dc_to_bat_max_power": 4600,
      "bat_to_dc_efficiency": 0.99,
      "bat_to_dc_max_power": 4600,
      "cycle_cost": 0.01,
      "entity_set_power_feedin": "input_number.dao_set_power_feedin",
      "entity_set_operating_mode": "input_select.dao_bat_sim_operating_mode",
      "entity_set_operating_mode_on": "Aan",
      "entity_set_operating_mode_off": "Uit",
      "entity_stop_inverter": "input_datetime.dao_stop_inverter",
      "entity_balance_switch": "input_boolean.dao_balance_switch",
      "entity_from_battery": "input_number.dao_from_battery",
      "entity_from_pv": "input_number.dao_from_pv",
      "entity_from_ac": "input_number.battery_charge_from_ac",
      "entity_calculated_soc": "input_number.dao_entity_calculated_soc",
      "solar": [
        {
          "name": "Dak Woning",
          "tilt": 31.0,
          "orientation": 0.0,
          "capacity": 3.12,
          "yield_factor": 0.00571,
          "strings": [],
          "ml_prediction": true,
          "entities_sensors": [
            "sensor.growatt2_total_production_pv2"
          ]
        }
      ]
    }
  ],
  "solar": [],
  "electric_vehicle": [],
  "machines": [],
  "boiler": {
    "boiler_present": false
  },
  "heating": {
    "heater_present": false
  },
  "tibber": {
    "api_token": "!secret tibber_api_token",
    "api_url": "https://api.tibber.com/v1-beta/gql"
  },
  "xgboost": {
    "tune_hyperparameters": true
  },
  "report": {
    "entities_grid_consumption": [
      "sensor.growatt2_total_from_grid"
    ],
    "entities_grid_production": [
      "sensor.growatt2_total_to_grid"
    ],
    "entities_solar_production_ac": [
      "sensor.growatt2_total_production_pv2"
    ],
    "entities_solar_production_dc": [
      "sensor.growatt2_pv2_power"
    ],
    "entities_ev_consumption": [
      "sensor.peblar_ev_charger_power"
    ],
    "entities_wp_consumption": [],
    "entities_boiler_consumption": [],
    "entities_battery_consumption": [
      "sensor.growatt2_total_battery_charge"
    ],
    "entities_battery_production": [
      "sensor.growatt2_total_battery_discharge"
    ],
    "entities_machine_consumption": []
  },
  "scheduler": {
    "active": true,
    "schedule": [
      {
        "time": "1151",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1255",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1355",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1455",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1554",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1630",
        "action": "get_meteo_data"
      },
      {
        "time": "1655",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "2230",
        "action": "get_meteo_data"
      },
      {
        "time": "2359",
        "action": "clean_data"
      },
      {
        "time": "0544",
        "action": "get_meteo_data"
      },
      {
        "time": "1144",
        "action": "get_meteo_data"
      },
      {
        "time": "1745",
        "action": "get_meteo_data"
      },
      {
        "time": "2345",
        "action": "get_meteo_data"
      },
      {
        "time": "0930",
        "action": "calc_baseloads"
      },
      {
        "time": "xx00",
        "action": "calc_optimum"
      },
      {
        "time": "xx15",
        "action": "calc_optimum"
      },
      {
        "time": "xx30",
        "action": "calc_optimum"
      },
      {
        "time": "xx45",
        "action": "calc_optimum"
      },
      {
        "time": "0300",
        "action": "train_ml_predictions"
      }
    ]
  }
}

  • Lasoul
  • Registratie: November 2001
  • Laatst online: 00:39
thomvh schreef op vrijdag 24 april 2026 @ 15:20:
[...]

From battery is zoals ik het begrepen heb het vermogen op de busbar van je batterijen. Dus DC vermogen.

Feedin is eigenlijk wat er op de meter gemeten wordt.

Dus bij jou dumpt die wat uit de accu en de rest komt van de PV.
Dat klopt volgens mij niet aangezien er in dit geval juist geladen moet worden door de batterij.
entity from batterij is namelijk negatief en dat betekent dat de batterij moet worden geladen.
entity set power feedin is positief en dat betekent dat de batterij moet worden ontladen of PV naar grid (mijn interpretatie).

Je ziet ook dat in dat specifieke uur de target soc van de batterij van 5% naar 8% gaat dus dat betekent dat de batterij iets zou moeten laden.

  • Torch1969
  • Registratie: Juni 2013
  • Laatst online: 09:33
konehead schreef op vrijdag 24 april 2026 @ 15:23:
Morgen hebben we zwaar negatieve prijzen. Ik had verwacht dat DAO Zon uit zou zetten van 13-15 en maximaal zou importeren van het net. Zoals je ziet is het 50/50%. Wat doe ik fout?

[Afbeelding]


[...]
Bij solar geen switch gedefinieerd om de panelen uit te schakelen? Dan denkt DAO dat dat niet kan en rekent de Zonopbrengst gewoon mee.
konehead schreef op vrijdag 24 april 2026 @ 15:23:
Morgen hebben we zwaar negatieve prijzen. Ik had verwacht dat DAO Zon uit zou zetten van 13-15 en maximaal zou importeren van het net. Zoals je ziet is het 50/50%. Wat doe ik fout?

[Afbeelding]


[...]
Precies wat @Torch1969 zegt:
Er is een optionele entity: entity_pv_switch.
Als je je panelen kunt uitzetten vanuit HA met een switch dan kun je aan die entity_pv_switch een input_boolean hangen die met een automation jouw panelen uitzet.

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer


  • konehead
  • Registratie: Januari 2005
  • Laatst online: 02-06 14:24
Torch1969 schreef op vrijdag 24 april 2026 @ 15:48:
[...]

Bij solar geen switch gedefinieerd om de panelen uit te schakelen? Dan denkt DAO dat dat niet kan en rekent de Zonopbrengst gewoon mee.
Ai ai ai!! dank!!

  • Kees Schilder
  • Registratie: April 2005
  • Laatst online: 02-06 20:45
Werkt bij jullie het ophalen van de data bij Meteoserver nog?
Ik krijg onderstaande error, zie debuglog.
GPS-locatie heb ik even weggehaald ;-)
Gaat hier volgens mij mis:
2026-04-24 20:57:26 debug: https://data.meteoserver.nl:443 "GET /api/uurverwachting.php?lat=XX&long=YY&key=meteoserver-key HTTP/1.1" 200 None

Maar het vreemde is, ik heb de meteoserver-key wel ingevoerd.
Sterker nog, het heeft altijd gewoon gewerkt.
Als ik zelf de link kopieer en mijn apikey erachter zet, werkt het gewoon, maar het lijkt erop dat DAO nu meteoserver-key gebruikt als apikey, ipv de daadwerkelijke apikey.

Config:
"latitude": xx,
"longitude": yy,
"meteoserver_key": "meteoserver-key",
"meteoserver_model": "harmonie",
"meteoserver_attemps": 2,

Secrets:
{
"entsoe-api-key": "key entsoe api",
"ha_api_token": "token ha api",
"meteoserver-key": "bladibla",
"db_da_password": "da wachtwoord",
"db_ha_password": "ha wachtwoord",
"tibber_api_token": "tiber token"
}
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
2026-04-24 20:57:26 info: Day Ahead Optimalisering versie: 2026.4.3.rc1
2026-04-24 20:57:26 info: Day Ahead Optimalisering gestart op: 24-04-2026 20:57:26
2026-04-24 20:57:26 debug: Locatie: latitude XX longitude: YY
2026-04-24 20:57:26 info: Day Ahead Optimalisatie gestart: 24-04-2026 20:57:26 taak: get_meteo_data
2026-04-24 20:57:26 debug: Connection status Pool size: 5  Connections in pool: 1 Current Overflow: -4 Current Checked out connections: 0 at line 693 in /root/dao/prog/da_base.py
2026-04-24 20:57:26 debug: Starting new HTTPS connection (1): data.meteoserver.nl:443
2026-04-24 20:57:26 debug: https://data.meteoserver.nl:443 "GET /api/uurverwachting.php?lat=52.5104163&long=5.0791521&key=meteoserver-key HTTP/1.1" 200 None
2026-04-24 20:57:26 debug: { "api_key_invalid": "Vraag eerst een API-key op, zie https://meteoserver.nl/account.php"}
2026-04-24 20:57:26 debug: Starting new HTTPS connection (1): data.meteoserver.nl:443
2026-04-24 20:57:26 debug: https://data.meteoserver.nl:443 "GET /api/uurverwachting.php?lat=52.5104163&long=5.0791521&key=meteoserver-key HTTP/1.1" 200 None
2026-04-24 20:57:26 debug: { "api_key_invalid": "Vraag eerst een API-key op, zie https://meteoserver.nl/account.php"}
2026-04-24 20:57:26 debug: Starting new HTTPS connection (1): data.meteoserver.nl:443
2026-04-24 20:57:26 debug: https://data.meteoserver.nl:443 "GET /api/uurverwachting.php?lat=52.5104163&long=5.0791521&key=meteoserver-key HTTP/1.1" 200 None
2026-04-24 20:57:26 debug: { "api_key_invalid": "Vraag eerst een API-key op, zie https://meteoserver.nl/account.php"}
2026-04-24 20:57:26 fout: No harmonie-data recieved from meteoserver
2026-04-24 20:57:26 debug: Meteo data records 
Empty DataFrame
Columns: [time, code, value, tijd]
Index: []
2026-04-24 20:57:26 debug: Opslaan dataframe:
Empty DataFrame
Columns: [time, code, value, tijd]
Index: []
2026-04-24 20:57:26 debug: Connection status Pool size: 5  Connections in pool: 0 Current Overflow: -4 Current Checked out connections: 1 at line 254 in /root/dao/lib/db_manager.py
2026-04-24 20:57:26 debug: Connection status Pool size: 5  Connections in pool: 2 Current Overflow: -3 Current Checked out connections: 0 at line 314 in /root/dao/lib/db_manager.py
2026-04-24 20:57:26 debug: Connection status Pool size: 5  Connections in pool: 2 Current Overflow: -3 Current Checked out connections: 0 at line 696 in /root/dao/prog/da_base.py
2026-04-24 20:57:26 debug: Connection status Pool size: 5  Connections in pool: 2 Current Overflow: -3 Current Checked out connections: 0 at line 4705 in /root/dao/webserver/../prog/day_ahead.py

  • sailor_dg
  • Registratie: Januari 2019
  • Laatst online: 08:48
Kees Schilder schreef op vrijdag 24 april 2026 @ 21:04:
Werkt bij jullie het ophalen van de data bij Meteoserver nog?
Ik krijg onderstaande error, zie debuglog.
GPS-locatie heb ik even weggehaald ;-)
Gaat hier volgens mij mis:
2026-04-24 20:57:26 debug: https://data.meteoserver.nl:443 "GET /api/uurverwachting.php?lat=XX&long=YY&key=meteoserver-key HTTP/1.1" 200 None

Maar het vreemde is, ik heb de meteoserver-key wel ingevoerd.
Sterker nog, het heeft altijd gewoon gewerkt.
Als ik zelf de link kopieer en mijn apikey erachter zet, werkt het gewoon, maar het lijkt erop dat DAO nu meteoserver-key gebruikt als apikey, ipv de daadwerkelijke apikey.

Config:
"latitude": xx,
"longitude": yy,
"meteoserver_key": "meteoserver-key",
"meteoserver_model": "harmonie",
"meteoserver_attemps": 2,

Secrets:
{
"entsoe-api-key": "key entsoe api",
"ha_api_token": "token ha api",
"meteoserver-key": "bladibla",
"db_da_password": "da wachtwoord",
"db_ha_password": "ha wachtwoord",
"tibber_api_token": "tiber token"
}


[...]
Ben je door je gratis api calls heen? Hoevaak haal je data op?

All-electric | Deye 12KSG04LP3 met 2x Yixiang V2, 32x MB31 314 Ah | Panasonic Aquarea J 5kW | Tesla MY, SmartEVSE | 8,8 kWp PV | Proxmox met HomeAssistant, Docker host, PfSense, TrueNas & Mailcow


  • Kees Schilder
  • Registratie: April 2005
  • Laatst online: 02-06 20:45
sailor_dg schreef op vrijdag 24 april 2026 @ 21:08:
[...]

Ben je door je gratis api calls heen? Hoevaak haal je data op?
Twee dataverzoeken deze maand, dus waarschijnlijk werkt ie al een maand niet.

  • Kees Schilder
  • Registratie: April 2005
  • Laatst online: 02-06 20:45
Kees Schilder schreef op vrijdag 24 april 2026 @ 21:04:

Config:
"latitude": xx,
"longitude": yy,
"meteoserver_key": "meteoserver-key",
"meteoserver_model": "harmonie",
"meteoserver_attemps": 2,
[...]
"meteoserver_key": "meteoserver-key",

moet (tegenwoordig) zijn:
"meteoserver-key": "!secret meteoserver-key",

Daarna werkt het weer. Vreemd.

  • thomvh
  • Registratie: September 2013
  • Laatst online: 02-06 11:21
Lasoul schreef op vrijdag 24 april 2026 @ 15:24:
[...]


Dat klopt volgens mij niet aangezien er in dit geval juist geladen moet worden door de batterij.
entity from batterij is namelijk negatief en dat betekent dat de batterij moet worden geladen.
entity set power feedin is positief en dat betekent dat de batterij moet worden ontladen of PV naar grid (mijn interpretatie).

Je ziet ook dat in dat specifieke uur de target soc van de batterij van 5% naar 8% gaat dus dat betekent dat de batterij iets zou moeten laden.
Betekent het niet gedeelte van de PV naar de Accu en gedeeltelijk ontladen naar de grid?

  • Knielen
  • Registratie: December 2009
  • Laatst online: 09:40
Wat blijft dit toch een mooi stukje software. In andere topics blijven velen tobben met raar gedrag van modellen, weinig zelf kunnen bijsturen en niet alles uit je situatie kunnen halen. Ik voeg zojuist gewoon even een pv switch toe en heb in 5 minuten het voor elkaar dat mijn panelen zodadelijk uitschakelen.
Nogmaals hartelijk dank voor de ontwikkelaars!

  • arjenhiemstra
  • Registratie: Oktober 2003
  • Laatst online: 09:26
KC27 schreef op vrijdag 24 april 2026 @ 15:57:
[...]

Precies wat @Torch1969 zegt:
Er is een optionele entity: entity_pv_switch.
Als je je panelen kunt uitzetten vanuit HA met een switch dan kun je aan die entity_pv_switch een input_boolean hangen die met een automation jouw panelen uitzet.
Als DAO de panelen uit wil zetten, wat is dan de waarde van de input boolean? (ik denk dat ik het precies verkeerd heb maar kan het zo niet vinden in documentatie)

  • rescla
  • Registratie: November 2012
  • Laatst online: 09:37
arjenhiemstra schreef op zaterdag 25 april 2026 @ 13:27:
[...]


Als DAO de panelen uit wil zetten, wat is dan de waarde van de input boolean? (ik denk dat ik het precies verkeerd heb maar kan het zo niet vinden in documentatie)
Standaard on, bij mij is ie nu off.

  • arjenhiemstra
  • Registratie: Oktober 2003
  • Laatst online: 09:26
rescla schreef op zaterdag 25 april 2026 @ 13:33:
[...]

Standaard on, bij mij is ie nu off.
Thanks! Dan gaat er hier iets niet goed blijkbaar

  • Lasoul
  • Registratie: November 2001
  • Laatst online: 00:39
Bij mij gaat het ook niet goed.
Ik zie dat mijn AC gekoppelde omvormer wel wordt uitgezet (input_boolean gaat naar off) maar mijn DC gekoppelde panelen worden niet uitgezet en staan nog steeds op on.

@arjenhiemstra zijn het bij jou ook DC-gekoppelde panelen in je config?
@KC27 kan dat het verschil zijn?
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
      "entity_set_power_feedin": "input_number.day_ahead_optimizer_set_power_feedin",
      "entity_set_operating_mode_on": "Aan",
      "entity_set_operating_mode_off": "Uit",
      "entity_from_battery": "input_number.day_ahead_optimizer_from_battery",
      "entity balance switch": "input_boolean.day_ahead_optimizer_balance_switch",
      "entity calculated soc": "input_number.day_ahead_optimizer_calculated_soc",
      "solar": [
        {
          "name": "pv 11 10 woning zuid",
          "max power": 24,
          "strings": [
            {
              "capacity": 3.41,
              "tilt": 45,
              "orientation": 25,
              "yield": 0.009765
            },
            {
              "capacity": 3.65,
              "tilt": 45,
              "orientation": 25,
              "yield": 0.009765
            }
          ],
          "entity pv switch": "input_boolean.day_ahead_optimizer_enable_pv_11_10",
          "ml_prediction": true,
          "entities_sensors": [
            "sensor.pv_11_10_meter_electric_production_kwh"
          ]
        }
      ],
      "optimal lower limit": 10
    }
  ],
  "solar": [
    {
      "name": "pv 6 5 woning garage zuid en west",
      "max power": 3.575,
      "strings": [
        {
          "capacity": 2.62,
          "tilt": 15,
          "orientation": 25,
          "yield": 0.00524
        },
        {
          "capacity": 2.1,
          "tilt": 15,
          "orientation": 115,
          "yield": 0.002625
        }
      ],
      "ml_prediction": true,
      "entities_sensors": [
        "sensor.envoy_6p_5p_lifetime_energy_production"
      ]
    },
    {
      "name": "pv 8 woning noord",
      "tilt": 45.0,
      "orientation": -155.0,
      "capacity": 3.64,
      "yield_factor": 0.00546,
      "strings": [],
      "entity pv switch": "input_boolean.day_ahead_optimizer_enable_pv_8",
      "ml_prediction": true,
      "entities_sensors": [
        "sensor.pv_8_meter_electric_production_kwh"
      ]
    },

[ Voor 77% gewijzigd door Lasoul op 25-04-2026 13:49 ]


  • arjenhiemstra
  • Registratie: Oktober 2003
  • Laatst online: 09:26
Lasoul schreef op zaterdag 25 april 2026 @ 13:45:
Bij mij gaat het ook niet goed.
Ik zie dat mijn AC gekoppelde omvormer wel wordt uitgezet (input_boolean gaat naar off) maar mijn DC gekoppelde panelen worden niet uitgezet en staan nog steeds op on.

@arjenhiemstra zijn het bij jou ook DC-gekoppelde panelen in je config?
@KC27 kan dat het verschil zijn?
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
      "entity_set_power_feedin": "input_number.day_ahead_optimizer_set_power_feedin",
      "entity_set_operating_mode_on": "Aan",
      "entity_set_operating_mode_off": "Uit",
      "entity_from_battery": "input_number.day_ahead_optimizer_from_battery",
      "entity balance switch": "input_boolean.day_ahead_optimizer_balance_switch",
      "entity calculated soc": "input_number.day_ahead_optimizer_calculated_soc",
      "solar": [
        {
          "name": "pv 11 10 woning zuid",
          "max power": 24,
          "strings": [
            {
              "capacity": 3.41,
              "tilt": 45,
              "orientation": 25,
              "yield": 0.009765
            },
            {
              "capacity": 3.65,
              "tilt": 45,
              "orientation": 25,
              "yield": 0.009765
            }
          ],
          "entity pv switch": "input_boolean.day_ahead_optimizer_enable_pv_11_10",
          "ml_prediction": true,
          "entities_sensors": [
            "sensor.pv_11_10_meter_electric_production_kwh"
          ]
        }
      ],
      "optimal lower limit": 10
    }
  ],
  "solar": [
    {
      "name": "pv 6 5 woning garage zuid en west",
      "max power": 3.575,
      "strings": [
        {
          "capacity": 2.62,
          "tilt": 15,
          "orientation": 25,
          "yield": 0.00524
        },
        {
          "capacity": 2.1,
          "tilt": 15,
          "orientation": 115,
          "yield": 0.002625
        }
      ],
      "ml_prediction": true,
      "entities_sensors": [
        "sensor.envoy_6p_5p_lifetime_energy_production"
      ]
    },
    {
      "name": "pv 8 woning noord",
      "tilt": 45.0,
      "orientation": -155.0,
      "capacity": 3.64,
      "yield_factor": 0.00546,
      "strings": [],
      "entity pv switch": "input_boolean.day_ahead_optimizer_enable_pv_8",
      "ml_prediction": true,
      "entities_sensors": [
        "sensor.pv_8_meter_electric_production_kwh"
      ]
    },
Yes, ook DC gekoppeld (onder batterij btw)

Config:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
  "battery": [
    {
      "name": "Dyness T35",
      "entity_actual_level": "sensor.deye_sunsynk_sol_ark_3_phase_hv_battery_state_of_charge",
      "capacity": 35.0,
      "upper_limit": 100,
      "lower_limit": 10,
      "optimal_lower_level": 40,
      "penalty_low_soc": 0.0025,
      "entity_min_soc_end_opt": "input_number.dao_min_soc_einde_opt",
      "entity_max_soc_end_opt": "input_number.dao_max_soc_einde_opt",
      "charge_stages": [
        {
          "power": 0.0,
          "efficiency": 1.0
        },
        {
          "power": 30.0,
          "efficiency": 0.5
        },
        {
          "power": 90.0,
          "efficiency": 0.5
        },
        {
          "power": 150.0,
          "efficiency": 0.5
        },
        {
          "power": 600.0,
          "efficiency": 0.8
        },
        {
          "power": 1200.0,
          "efficiency": 0.9
        },
        {
          "power": 4000.0,
          "efficiency": 0.95
        },
        {
          "power": 16000.0,
          "efficiency": 0.97
        }
      ],
      "discharge_stages": [
        {
          "power": 0.0,
          "efficiency": 1.0
        },
        {
          "power": 30.0,
          "efficiency": 0.5
        },
        {
          "power": 600.0,
          "efficiency": 0.8
        },
        {
          "power": 10000.0,
          "efficiency": 0.94
        },
        {
          "power": 16000.0,
          "efficiency": 0.94
        }
      ],
      "reduced_hours": {},
      "reduce_power_low_soc": [],
      "reduce_power_high_soc": [],
      "minimum_power": 7000,
      "dc_to_bat_efficiency": 0.98,
      "dc_to_bat_max_power": 16000,
      "bat_to_dc_efficiency": 0.98,
      "bat_to_dc_max_power": 16000,
      "cycle_cost": 0.015,
      "entity_set_power_feedin": "input_number.feedin_grid",
      "entity_set_operating_mode": "input_select.ess_operating_mode",
      "entity_set_operating_mode_on": "Aan",
      "entity_set_operating_mode_off": "Uit",
      "entity_stop_inverter": "input_datetime.stop_deye_ess",
      "entity_balance_switch": "input_boolean.balanceer_grid",
      "entity_from_battery": "input_number.deye_from_battery",
      "entity_from_pv": "input_number.deye_from_pv",
      "entity_from_ac": "input_number.deye_from_ac",
      "solar": [
        {
          "name": "woning",
          "entity_pv_switch": "input_boolean.pv_woning_aan_uit",
          "tilt": 45.0,
          "orientation": 75.0,
          "capacity": 9.9,
          "yield_factor": 0.008,
          "strings": [],
          "ml_prediction": false,
          "entities_sensors": []
        }
      ]
    }
  ],

  • Lasoul
  • Registratie: November 2001
  • Laatst online: 00:39
arjenhiemstra schreef op zaterdag 25 april 2026 @ 13:59:
[...]


Yes, ook DC gekoppeld (onder batterij btw)

Config:

[...]
Dan denk ik dat, dat het probleem is.

  • arjenhiemstra
  • Registratie: Oktober 2003
  • Laatst online: 09:26
Lasoul schreef op zaterdag 25 april 2026 @ 14:12:
[...]


Dan denk ik dat, dat het probleem is.
Er gebeurt wel iets overigens;
Afbeeldingslocatie: https://tweakers.net/i/MWATqZs8oCX-IqMtMv2Up5T-YOo=/800x/filters:strip_exif()/f/image/j4N7ffl0RUFXcuQyEOAlpQIF.png?f=fotoalbum_large

Elk kwartier gaat de switch heel even uit en direct weer aan
arjenhiemstra schreef op zaterdag 25 april 2026 @ 15:18:
[...]


Er gebeurt wel iets overigens;
[Afbeelding]

Elk kwartier gaat de switch heel even uit en direct weer aan
Staan er ook twee wijzigingen in de logging van DAO?
Wellicht is er een andere automation of integratie die de actie van DAO overrult?
Wat gebeurt er als je die input_boolean met de hand op off zet?

[ Voor 5% gewijzigd door KC27 op 25-04-2026 16:08 ]

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer


  • Lasoul
  • Registratie: November 2001
  • Laatst online: 00:39
KC27 schreef op zaterdag 25 april 2026 @ 16:07:
[...]

Staan er ook twee wijzigingen in de logging van DAO?
Wellicht is er een andere automation of integratie die de actie van DAO overrult?
Ik zie bij mij exact hetzelfde gedrag bij de DC input boolean

Afbeeldingslocatie: https://tweakers.net/i/CFqj5YX4jX4CGuhSoRwPNZTfQyk=/fit-in/4000x4000/filters:no_upscale():strip_exif()/f/image/CoXfyZOf8PrlcEFywaRtpvYb.png?f=user_large
Lasoul schreef op zaterdag 25 april 2026 @ 16:09:
[...]


Ik zie bij mij exact hetzelfde gedrag bij de DC input boolean

[Afbeelding]
Jullie hebben toch beiden een Deye omvormer?
Doet die integratie nog wat met die input_ boolean?

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer


  • Lasoul
  • Registratie: November 2001
  • Laatst online: 00:39
KC27 schreef op zaterdag 25 april 2026 @ 16:12:
[...]

Jullie hebben toch beiden een Deye omvormer?
Doet die integratie nog wat met die input_ boolean?
Ik heb de input_boolean nog niet gekoppeld dat wou ik vanmiddag doen maar zag dat hij niet werd uitgezet. Ik heb verder geen automation lopen die iets met de input_boolean doet

  • wwouter1000
  • Registratie: Februari 2026
  • Laatst online: 03-06 16:38
Bij mij hetzelfde probleem, ook de zonnepanelen op DC. Aan het begin van het uur wordt hij een keer uit en aan gezet. Ik kan wel handmatig de input_boolean bedienen (dat dus ook maar gedaan). Als hij handmatig uit staat, blijft hij wel uit staan en andersom.
Dan zal ik toch nog eens naar de code kijken.

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer


  • Torch1969
  • Registratie: Juni 2013
  • Laatst online: 09:33
KC27 schreef op zaterdag 25 april 2026 @ 16:56:
Dan zal ik toch nog eens naar de code kijken.
Bij mij zonnepanelen op AC, die gaat wel goed.

Jullie hebben morgen herkansing om te testen :o

  • timscheffers
  • Registratie: November 2009
  • Laatst online: 01-06 19:14
Torch1969 schreef op zaterdag 25 april 2026 @ 17:05:
[...]

Bij mij zonnepanelen op AC, die gaat wel goed.

Jullie hebben morgen herkansing om te testen :o
Hier gaat het ook goed op AC. Mijn zonneplan gaat komende vrijdag pas in, kak! 😅

  • Lasoul
  • Registratie: November 2001
  • Laatst online: 00:39
Ik heb zowel zonnepanelen op AC als op DC.
De AC gaat wel goed maar de DC gaat niet goed.

  • arjenhiemstra
  • Registratie: Oktober 2003
  • Laatst online: 09:26
Ik zie dat er al een PR is gemaakt om een verdwaalde
code:
1
self.turn_on(entity_pv_switch)
te verwijderen

_/-\o_

Morgen kunnen we gelukkig nog een keer testen 8)
Dank aan @paultheu.
Er komt vanavond een nieuwe (test)versie, zodat iedereen morgen met nog lagere prijzen dan vandaag kan testen of het nu allemaal goed gaat.

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer

De nieuwe versies 2026.4.4 en en 2026.4.4.rc1 zijn gepubliceerd;
Changelog:
  • Fix error closing pv_dc
  • Fix error datepicker on android
Excuses voor al het ongemak.
Ik hoor morgen graag of het allemaal werkt.

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer


  • TheMystery
  • Registratie: Februari 2004
  • Laatst online: 07:34
Net begonnen met het inrichten van doa om te kijken hoe het werkt en of het wat is als ik volgende maand mijn alphaess krijg, heb volgens mij nu alle basis zaken erin zitten alleen werken de tabbladen reports, savings en solar niet krijg de fout:
Internal Server Error
The server encountered an internal error and was unable to complete your request. Either the server is overloaded or there is an error in the application.

Config;
JSON:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
{
  "config_version": 0,
  "homeassistant": {
    "ip_address": "supervisor",
    "protocol_api": "http"
  },
  "database_ha": {
    "password": "!secret db_ha_password"
  },
  "database_da": {
    "engine": "sqlite",
    "db_path": "../data",
    "database": "day_ahead.db"
  },
  "meteoserver_key": "!secret meteoserver-key",
  "meteoserver_model": "harmonie",
  "meteoserver_attemps": 2,
  "prices": {
    "source_day_ahead": "nordpool",
    "energy_taxes_consumption": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.1088,
      "2025-01-01": 0.10154
    },
    "energy_taxes_production": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.1088,
      "2025-01-01": 0.10154
    },
    "cost_supplier_consumption": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496
    },
    "cost_supplier_production": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496,
      "2026-01-01": 0.0
    },
    "vat_consumption": {
      "2022-01-01": 21.0,
      "2022-07-01": 9.0,
      "2023-01-01": 21.0
    },
    "vat_production": {
      "2022-01-01": 21.0,
      "2022-07-01": 9.0,
      "2023-01-01": 21.0
    },
    "last_invoice": "2025-09-01",
    "tax_refund": true,
    "regular high": 0.5,
    "regular low": 0.4,
    "switch to low": 23
  },
  "logging_level": "info",
  "use_calc_baseload": false,
  "baseload_calc_periode": 56,
  "baseload": [
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45
  ],
  "graphical_backend": "",
  "graphics": {
    "style": "Solarize_Light2",
    "battery_balance": true,
    "prices_consumption": true,
    "prices_production": false,
    "prices_spot": true,
    "average_consumption": true,
    "show": "true"
  },
  "interval": "1hour",
  "strategy": "minimize cost",
  "max_gap": 0.005,
  "notifications": {
    "opstarten": false,
    "berekening": false
  },
  "grid": {
    "max_power": 17.0
  },
  "history": {
    "save_days": 7
  },
  "dashboard": {
    "port": 5000
  },
  "battery": [],
  "solar": [
    {
      "name": "SolarEdge SE10K",
      "entity pv switch": "input_boolean.pv_woning_aan_uit",
      "ml_prediction": "true",
      "strings": [
        {
          "tilt": 45,
          "orientation": -35,
          "capacity": 6.00,
          "yield": 0.01125
        },
        {
          "tilt": 10,
          "orientation": 59,
          "capacity": 6.16,
          "yield": 0.01125
        }
      ]
     }
    ],
  "electric_vehicle": [],
  "machines": [],
  "boiler": {
    "boiler_present": false,
    "entity actual temp.": "sensor.boiler_gemeten",
    "entity setpoint": "sensor.boiler_ingesteld",
    "entity hysterese": "sensor.hysterese_hot_water",
    "cop": 2.9,
    "cooling rate": 0.4,
    "volume": 180,
    "heating allowed below": 44,
    "elec. power": 1500,
    "activate service": "press",
    "activate entity": "input_button.hw_trigger"
  },
  "heating": {
    "heater_present": false,
    "degree days factor": 3.6,
    "stages": [
      {
        "max_power": 225,
        "cop": 7.1
      },
      {
        "max_power": 300,
        "cop": 7.0
      },
      {
        "max_power": 400,
        "cop": 6.5
      },
      {
        "max_power": 500,
        "cop": 6.0
      },
      {
        "max_power": 600,
        "cop": 5.5
      },
      {
        "max_power": 750,
        "cop": 5.0
      },
      {
        "max_power": 1000,
        "cop": 4.5
      },
      {
        "max_power": 1250,
        "cop": 4.0
      }
    ],
    "entity adjust heating curve": "input_number.stooklijn_verschuiving_day_ahead",
    "adjustment factor": 0.04
  },
  "tibber": {
    "api_token": "!secret tibber_api_token",
    "api_url": "https://api.tibber.com/v1-beta/gql"
  },
  "xgboost": {
    "tune_hyperparameters": true
  },
  "report": {
    "entities_grid_consumption": [
      "sensor.energy_production_tarif_1",
      "sensor.energy_production_tarif_2"
    ],
    "entities_grid_production": [
      "sensor.energy_consumption_tarif_1",
      "sensor.energy_consumption_tarif_2"
    ],
    "entities_solar_production_ac": [
      "sensor.solaredge_lifetime_energy"
    ],
    "entities_solar_production_dc": [],
    "entities_ev_consumption": [
      "sensor.easee_laadpaal_levensduur_verbruik"
    ],
    "entities_wp_consumption": [
      "sensor.stroomverbruik_warmtepomp"
    ],
    "entities_boiler_consumption": [],
    "entities_battery_consumption": [],
    "entities_battery_production": [],
    "entities_machine_consumption": []
  },
  "scheduler": {
    "active": true,
    "schedule": [
      {
        "time": "0430",
        "action": "get_meteo_data"
      },
      {
        "time": "1030",
        "action": "get_meteo_data"
      },
      {
        "time": "1630",
        "action": "get_meteo_data"
      },
      {
        "time": "2230",
        "action": "get_meteo_data"
      },
      {
        "time": "1255",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1355",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1455",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1554",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1655",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "xx00",
        "action": "calc_optimum"
      },
      {
        "time": "2359",
        "action": "clean_data"
      }
    ]
  }
}
Wat zou het probleem kunnen zijn? JSON is goed volgens de checker en zie verder niet wat fout zou kunnen zijn.

  • Maikie18
  • Registratie: Augustus 2008
  • Laatst online: 03-06 18:09
TheMystery schreef op zaterdag 25 april 2026 @ 22:24:
Net begonnen met het inrichten van doa om te kijken hoe het werkt en of het wat is als ik volgende maand mijn alphaess krijg, heb volgens mij nu alle basis zaken erin zitten alleen werken de tabbladen reports, savings en solar niet krijg de fout:
Internal Server Error
The server encountered an internal error and was unable to complete your request. Either the server is overloaded or there is an error in the application.

Config;
JSON:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
{
  "config_version": 0,
  "homeassistant": {
    "ip_address": "supervisor",
    "protocol_api": "http"
  },
  "database_ha": {
    "password": "!secret db_ha_password"
  },
  "database_da": {
    "engine": "sqlite",
    "db_path": "../data",
    "database": "day_ahead.db"
  },
  "meteoserver_key": "!secret meteoserver-key",
  "meteoserver_model": "harmonie",
  "meteoserver_attemps": 2,
  "prices": {
    "source_day_ahead": "nordpool",
    "energy_taxes_consumption": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.1088,
      "2025-01-01": 0.10154
    },
    "energy_taxes_production": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.1088,
      "2025-01-01": 0.10154
    },
    "cost_supplier_consumption": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496
    },
    "cost_supplier_production": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496,
      "2026-01-01": 0.0
    },
    "vat_consumption": {
      "2022-01-01": 21.0,
      "2022-07-01": 9.0,
      "2023-01-01": 21.0
    },
    "vat_production": {
      "2022-01-01": 21.0,
      "2022-07-01": 9.0,
      "2023-01-01": 21.0
    },
    "last_invoice": "2025-09-01",
    "tax_refund": true,
    "regular high": 0.5,
    "regular low": 0.4,
    "switch to low": 23
  },
  "logging_level": "info",
  "use_calc_baseload": false,
  "baseload_calc_periode": 56,
  "baseload": [
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45
  ],
  "graphical_backend": "",
  "graphics": {
    "style": "Solarize_Light2",
    "battery_balance": true,
    "prices_consumption": true,
    "prices_production": false,
    "prices_spot": true,
    "average_consumption": true,
    "show": "true"
  },
  "interval": "1hour",
  "strategy": "minimize cost",
  "max_gap": 0.005,
  "notifications": {
    "opstarten": false,
    "berekening": false
  },
  "grid": {
    "max_power": 17.0
  },
  "history": {
    "save_days": 7
  },
  "dashboard": {
    "port": 5000
  },
  "battery": [],
  "solar": [
    {
      "name": "SolarEdge SE10K",
      "entity pv switch": "input_boolean.pv_woning_aan_uit",
      "ml_prediction": "true",
      "strings": [
        {
          "tilt": 45,
          "orientation": -35,
          "capacity": 6.00,
          "yield": 0.01125
        },
        {
          "tilt": 10,
          "orientation": 59,
          "capacity": 6.16,
          "yield": 0.01125
        }
      ]
     }
    ],
  "electric_vehicle": [],
  "machines": [],
  "boiler": {
    "boiler_present": false,
    "entity actual temp.": "sensor.boiler_gemeten",
    "entity setpoint": "sensor.boiler_ingesteld",
    "entity hysterese": "sensor.hysterese_hot_water",
    "cop": 2.9,
    "cooling rate": 0.4,
    "volume": 180,
    "heating allowed below": 44,
    "elec. power": 1500,
    "activate service": "press",
    "activate entity": "input_button.hw_trigger"
  },
  "heating": {
    "heater_present": false,
    "degree days factor": 3.6,
    "stages": [
      {
        "max_power": 225,
        "cop": 7.1
      },
      {
        "max_power": 300,
        "cop": 7.0
      },
      {
        "max_power": 400,
        "cop": 6.5
      },
      {
        "max_power": 500,
        "cop": 6.0
      },
      {
        "max_power": 600,
        "cop": 5.5
      },
      {
        "max_power": 750,
        "cop": 5.0
      },
      {
        "max_power": 1000,
        "cop": 4.5
      },
      {
        "max_power": 1250,
        "cop": 4.0
      }
    ],
    "entity adjust heating curve": "input_number.stooklijn_verschuiving_day_ahead",
    "adjustment factor": 0.04
  },
  "tibber": {
    "api_token": "!secret tibber_api_token",
    "api_url": "https://api.tibber.com/v1-beta/gql"
  },
  "xgboost": {
    "tune_hyperparameters": true
  },
  "report": {
    "entities_grid_consumption": [
      "sensor.energy_production_tarif_1",
      "sensor.energy_production_tarif_2"
    ],
    "entities_grid_production": [
      "sensor.energy_consumption_tarif_1",
      "sensor.energy_consumption_tarif_2"
    ],
    "entities_solar_production_ac": [
      "sensor.solaredge_lifetime_energy"
    ],
    "entities_solar_production_dc": [],
    "entities_ev_consumption": [
      "sensor.easee_laadpaal_levensduur_verbruik"
    ],
    "entities_wp_consumption": [
      "sensor.stroomverbruik_warmtepomp"
    ],
    "entities_boiler_consumption": [],
    "entities_battery_consumption": [],
    "entities_battery_production": [],
    "entities_machine_consumption": []
  },
  "scheduler": {
    "active": true,
    "schedule": [
      {
        "time": "0430",
        "action": "get_meteo_data"
      },
      {
        "time": "1030",
        "action": "get_meteo_data"
      },
      {
        "time": "1630",
        "action": "get_meteo_data"
      },
      {
        "time": "2230",
        "action": "get_meteo_data"
      },
      {
        "time": "1255",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1355",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1455",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1554",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1655",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "xx00",
        "action": "calc_optimum"
      },
      {
        "time": "2359",
        "action": "clean_data"
      }
    ]
  }
}
Wat zou het probleem kunnen zijn? JSON is goed volgens de checker en zie verder niet wat fout zou kunnen zijn.
Heb je production en consumption niet omgewisseld? Niet dat dit het probleem veroorzaakt denk ik maar viel me op

WH-MDC09J + PAW-TD30C1E5-HI | 10.44 kWp O/W | Venus v3 - 5.12kWh V148 - CT003 V116 - BMS 112 - Modi:NOM


  • TheMystery
  • Registratie: Februari 2004
  • Laatst online: 07:34
Maikie18 schreef op zaterdag 25 april 2026 @ 22:39:
[...]

Heb je production en consumption niet omgewisseld? Niet dat dit het probleem veroorzaakt denk ik maar viel me op
Klopt ja, maar dat is idd niet het probleem.
TheMystery schreef op zaterdag 25 april 2026 @ 22:24:
Net begonnen met het inrichten van doa om te kijken hoe het werkt en of het wat is als ik volgende maand mijn alphaess krijg, heb volgens mij nu alle basis zaken erin zitten alleen werken de tabbladen reports, savings en solar niet krijg de fout:
Internal Server Error
The server encountered an internal error and was unable to complete your request. Either the server is overloaded or there is an error in the application.

Config;
JSON:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
{
  "config_version": 0,
  "homeassistant": {
    "ip_address": "supervisor",
    "protocol_api": "http"
  },
  "database_ha": {
    "password": "!secret db_ha_password"
  },
  "database_da": {
    "engine": "sqlite",
    "db_path": "../data",
    "database": "day_ahead.db"
  },
  "meteoserver_key": "!secret meteoserver-key",
  "meteoserver_model": "harmonie",
  "meteoserver_attemps": 2,
  "prices": {
    "source_day_ahead": "nordpool",
    "energy_taxes_consumption": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.1088,
      "2025-01-01": 0.10154
    },
    "energy_taxes_production": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.1088,
      "2025-01-01": 0.10154
    },
    "cost_supplier_consumption": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496
    },
    "cost_supplier_production": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496,
      "2026-01-01": 0.0
    },
    "vat_consumption": {
      "2022-01-01": 21.0,
      "2022-07-01": 9.0,
      "2023-01-01": 21.0
    },
    "vat_production": {
      "2022-01-01": 21.0,
      "2022-07-01": 9.0,
      "2023-01-01": 21.0
    },
    "last_invoice": "2025-09-01",
    "tax_refund": true,
    "regular high": 0.5,
    "regular low": 0.4,
    "switch to low": 23
  },
  "logging_level": "info",
  "use_calc_baseload": false,
  "baseload_calc_periode": 56,
  "baseload": [
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45,
    0.45
  ],
  "graphical_backend": "",
  "graphics": {
    "style": "Solarize_Light2",
    "battery_balance": true,
    "prices_consumption": true,
    "prices_production": false,
    "prices_spot": true,
    "average_consumption": true,
    "show": "true"
  },
  "interval": "1hour",
  "strategy": "minimize cost",
  "max_gap": 0.005,
  "notifications": {
    "opstarten": false,
    "berekening": false
  },
  "grid": {
    "max_power": 17.0
  },
  "history": {
    "save_days": 7
  },
  "dashboard": {
    "port": 5000
  },
  "battery": [],
  "solar": [
    {
      "name": "SolarEdge SE10K",
      "entity pv switch": "input_boolean.pv_woning_aan_uit",
      "ml_prediction": "true",
      "strings": [
        {
          "tilt": 45,
          "orientation": -35,
          "capacity": 6.00,
          "yield": 0.01125
        },
        {
          "tilt": 10,
          "orientation": 59,
          "capacity": 6.16,
          "yield": 0.01125
        }
      ]
     }
    ],
  "electric_vehicle": [],
  "machines": [],
  "boiler": {
    "boiler_present": false,
    "entity actual temp.": "sensor.boiler_gemeten",
    "entity setpoint": "sensor.boiler_ingesteld",
    "entity hysterese": "sensor.hysterese_hot_water",
    "cop": 2.9,
    "cooling rate": 0.4,
    "volume": 180,
    "heating allowed below": 44,
    "elec. power": 1500,
    "activate service": "press",
    "activate entity": "input_button.hw_trigger"
  },
  "heating": {
    "heater_present": false,
    "degree days factor": 3.6,
    "stages": [
      {
        "max_power": 225,
        "cop": 7.1
      },
      {
        "max_power": 300,
        "cop": 7.0
      },
      {
        "max_power": 400,
        "cop": 6.5
      },
      {
        "max_power": 500,
        "cop": 6.0
      },
      {
        "max_power": 600,
        "cop": 5.5
      },
      {
        "max_power": 750,
        "cop": 5.0
      },
      {
        "max_power": 1000,
        "cop": 4.5
      },
      {
        "max_power": 1250,
        "cop": 4.0
      }
    ],
    "entity adjust heating curve": "input_number.stooklijn_verschuiving_day_ahead",
    "adjustment factor": 0.04
  },
  "tibber": {
    "api_token": "!secret tibber_api_token",
    "api_url": "https://api.tibber.com/v1-beta/gql"
  },
  "xgboost": {
    "tune_hyperparameters": true
  },
  "report": {
    "entities_grid_consumption": [
      "sensor.energy_production_tarif_1",
      "sensor.energy_production_tarif_2"
    ],
    "entities_grid_production": [
      "sensor.energy_consumption_tarif_1",
      "sensor.energy_consumption_tarif_2"
    ],
    "entities_solar_production_ac": [
      "sensor.solaredge_lifetime_energy"
    ],
    "entities_solar_production_dc": [],
    "entities_ev_consumption": [
      "sensor.easee_laadpaal_levensduur_verbruik"
    ],
    "entities_wp_consumption": [
      "sensor.stroomverbruik_warmtepomp"
    ],
    "entities_boiler_consumption": [],
    "entities_battery_consumption": [],
    "entities_battery_production": [],
    "entities_machine_consumption": []
  },
  "scheduler": {
    "active": true,
    "schedule": [
      {
        "time": "0430",
        "action": "get_meteo_data"
      },
      {
        "time": "1030",
        "action": "get_meteo_data"
      },
      {
        "time": "1630",
        "action": "get_meteo_data"
      },
      {
        "time": "2230",
        "action": "get_meteo_data"
      },
      {
        "time": "1255",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1355",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1455",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1554",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "1655",
        "action": "get_day_ahead_prices"
      },
      {
        "time": "xx00",
        "action": "calc_optimum"
      },
      {
        "time": "2359",
        "action": "clean_data"
      }
    ]
  }
}
Wat zou het probleem kunnen zijn? JSON is goed volgens de checker en zie verder niet wat fout zou kunnen zijn.
De logging van de webserver kun je opvragen via HA Instellingen/Apps/DAO en dan het tabblad Logboek.
Misschien kun je (een deel van) die logging hier delen (tussen quote- en code-tags zodat je post kort blijft 😉).
Om de ml-prediction goed te laten werken is er minimaal één ha-sensor nodig waarin de productie van de laatste maanden (liefst minimaal 12) wordt bijgehouden ( zie wiki).

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer


  • TheMystery
  • Registratie: Februari 2004
  • Laatst online: 07:34
KC27 schreef op zaterdag 25 april 2026 @ 23:46:
[...]

De logging van de webserver kun je opvragen via HA Instellingen/Apps/DAO en dan het tabblad Logboek.
Misschien kun je (een deel van) die logging hier delen (tussen quote- en code-tags zodat je post kort blijft 😉).
Om de ml-prediction goed te laten werken is er minimaal één ha-sensor nodig waarin de productie van de laatste maanden (liefst minimaal 12) wordt bijgehouden ( zie wiki).
Ik had dezelfde entiteit bij solar al toegevoegd als bij de reports entities staat, hier zit voor jaren data in.
JSON:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
  "solar": [
    {
      "name": "SolarEdge SE10K",
      "ml_prediction": "true",
      "entities sensors": "sensor.solaredge_lifetime_energy",
      "strings": [
        {
          "tilt": 45,
          "orientation": -35,
          "capacity": 6.00,
          "yield": 0.01125
        },
        {
          "tilt": 10,
          "orientation": 59,
          "capacity": 6.16,
          "yield": 0.01125
        }
      ]
     }
    ],
Log
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
2026-04-25 22:30:00 info: Day Ahead Optimalisering versie: 2026.04.3
2026-04-25 22:30:00 info: Day Ahead Optimalisering gestart op: 25-04-2026 22:30:00
2026-04-25 22:30:00 info: Day Ahead Optimalisatie gestart: 25-04-2026 22:30:00 taak: get_meteo_data
2026-04-25 22:30:03 info: Meteodata model harmonie
2026-04-25 22:30:03 info: Aantal uitgevoerde ophaalpogingen: 3 van maximaal: 2
2026-04-25 22:30:03 info: Aantal records: 50
2026-04-25 22:30:03 info: Data harmonie: 
          tijd           tijd_nl   gr temp winds neersl
0   1777150800  25-04-2026 23:00    0   10     2      0
1   1777154400  26-04-2026 00:00    0    8     2      0
2   1777158000  26-04-2026 01:00    0    7     2      0
3   1777161600  26-04-2026 02:00    0    6     3      0
4   1777165200  26-04-2026 03:00    0    6     2      0
5   1777168800  26-04-2026 04:00    0    5     2      0
6   1777172400  26-04-2026 05:00    0    5     2      0
7   1777176000  26-04-2026 06:00    5    4     2      0
8   1777179600  26-04-2026 07:00   39    5     2      0
9   1777183200  26-04-2026 08:00   90    6     3      0
10  1777186800  26-04-2026 09:00  150    8     3      0
11  1777190400  26-04-2026 10:00  196   10     3      0
12  1777194000  26-04-2026 11:00  262   11     3      0
13  1777197600  26-04-2026 12:00  295   13     3      0
14  1777201200  26-04-2026 13:00  308   14     3      0
15  1777204800  26-04-2026 14:00  300   15     3      0
16  1777208400  26-04-2026 15:00  278   16     3      0
17  1777212000  26-04-2026 16:00  234   16     3      0
18  1777215600  26-04-2026 17:00  168   16     3      0
19  1777219200  26-04-2026 18:00  117   16     3      0
20  1777222800  26-04-2026 19:00   59   16     3      0
21  1777226400  26-04-2026 20:00   11   14     2      0
22  1777230000  26-04-2026 21:00    0   12     2      0
23  1777233600  26-04-2026 22:00    0   11     2      0
24  1777237200  26-04-2026 23:00    0   10     2      0
25  1777240800  27-04-2026 00:00    0    9     2      0
26  1777244400  27-04-2026 01:00    0    8     2      0
27  1777248000  27-04-2026 02:00    0    7     2      0
28  1777251600  27-04-2026 03:00    0    6     2      0
29  1777255200  27-04-2026 04:00    0    6     2      0
30  1777258800  27-04-2026 05:00    0    6     2      0
31  1777262400  27-04-2026 06:00    5    6     1      0
32  1777266000  27-04-2026 07:00   38    7     1      0
33  1777269600  27-04-2026 08:00   86    9     1      0
34  1777273200  27-04-2026 09:00  120   11     1      0
35  1777276800  27-04-2026 10:00  120   12     1      0
36  1777280400  27-04-2026 11:00  121   13     2      0
37  1777284000  27-04-2026 12:00  259   15     2      0
38  1777287600  27-04-2026 13:00  309   16     2      0
39  1777291200  27-04-2026 14:00  300   17     2      0
40  1777294800  27-04-2026 15:00  262   18     3      0
41  1777298400  27-04-2026 16:00  216   19     3      0
42  1777302000  27-04-2026 17:00  116   19     3      0
43  1777305600  27-04-2026 18:00   65   18     4      0
44  1777309200  27-04-2026 19:00   35   17     4      0
45  1777312800  27-04-2026 20:00    8   16     4      0
46  1777316400  27-04-2026 21:00    0   15     3      0
47  1777320000  27-04-2026 22:00    0   14     3      0
48  1777323600  27-04-2026 23:00    0   13     3      0
49  1777327200  28-04-2026 00:00    0   12     3      0
../data/options.json MODIFY 
Setting up watches.
Watches established.
2026-04-25 22:34:38 INFO: Loaded 6 secrets from ../data/secrets.json
2026-04-25 22:34:38 INFO: Validating configuration with ConfigurationV0
[22:34:51] INFO: [32m=> directory dao_data exist[0m
[22:34:51] INFO: [32m=> /root/dao/data doesn't exist, made[0m
[22:34:51] INFO: [32m=> /root/dao/webserver/app/static/data exist[0m
2026-04-25 22:34:55 INFO: Loaded 6 secrets from ../data/secrets.json
2026-04-25 22:34:55 INFO: Validating configuration with ConfigurationV0
Setting up watches.
Watches established.
[2026-04-25 22:34:56 +0200] [35] [INFO] Starting gunicorn 25.3.0
[2026-04-25 22:34:56 +0200] [35] [INFO] Listening at: http://0.0.0.0:5000 (35)
[2026-04-25 22:34:56 +0200] [35] [INFO] Using worker: sync
[2026-04-25 22:34:56 +0200] [45] [INFO] Booting worker with pid: 45
[2026-04-25 22:34:56 +0200] [46] [INFO] Booting worker with pid: 46
[2026-04-25 22:34:56 +0200] [35] [INFO] Control socket listening at /root/.gunicorn/gunicorn.ctl
2026-04-25 22:34:59 INFO: Loaded 6 secrets from ../data/secrets.json
2026-04-25 22:34:59 INFO: Validating configuration with ConfigurationV0
../data/options.json MODIFY 
Setting up watches.
Watches established.
2026-04-25 22:37:22 INFO: Loaded 6 secrets from ../data/secrets.json
2026-04-25 22:37:22 INFO: Validating configuration with ConfigurationV0
[22:37:33] INFO: [32m=> directory dao_data exist[0m
[22:37:33] INFO: [32m=> /root/dao/data doesn't exist, made[0m
[22:37:33] INFO: [32m=> /root/dao/webserver/app/static/data exist[0m
2026-04-25 22:37:36 INFO: Loaded 6 secrets from ../data/secrets.json
2026-04-25 22:37:36 INFO: Validating configuration with ConfigurationV0
Setting up watches.
Watches established.
[2026-04-25 22:37:36 +0200] [34] [INFO] Starting gunicorn 25.3.0
[2026-04-25 22:37:36 +0200] [34] [INFO] Listening at: http://0.0.0.0:5000 (34)
[2026-04-25 22:37:36 +0200] [34] [INFO] Using worker: sync
[2026-04-25 22:37:36 +0200] [44] [INFO] Booting worker with pid: 44
[2026-04-25 22:37:36 +0200] [45] [INFO] Booting worker with pid: 45
[2026-04-25 22:37:36 +0200] [34] [INFO] Control socket listening at /root/.gunicorn/gunicorn.ctl
2026-04-25 22:37:40 INFO: Loaded 6 secrets from ../data/secrets.json
2026-04-25 22:37:40 INFO: Validating configuration with ConfigurationV0
../data/options.json MODIFY 
Setting up watches.
Watches established.
2026-04-25 22:40:17 INFO: Loaded 6 secrets from ../data/secrets.json
2026-04-25 22:40:17 INFO: Validating configuration with ConfigurationV0
[22:40:29] INFO: [32m=> directory dao_data exist[0m
[22:40:29] INFO: [32m=> /root/dao/data doesn't exist, made[0m
[22:40:29] INFO: [32m=> /root/dao/webserver/app/static/data exist[0m
2026-04-25 22:40:32 INFO: Loaded 6 secrets from ../data/secrets.json
2026-04-25 22:40:32 INFO: Validating configuration with ConfigurationV0
Setting up watches.
Watches established.
[2026-04-25 22:40:32 +0200] [35] [INFO] Starting gunicorn 25.3.0
[2026-04-25 22:40:32 +0200] [35] [INFO] Listening at: http://0.0.0.0:5000 (35)
[2026-04-25 22:40:32 +0200] [35] [INFO] Using worker: sync
[2026-04-25 22:40:32 +0200] [45] [INFO] Booting worker with pid: 45
[2026-04-25 22:40:32 +0200] [46] [INFO] Booting worker with pid: 46
[2026-04-25 22:40:32 +0200] [35] [INFO] Control socket listening at /root/.gunicorn/gunicorn.ctl
2026-04-25 22:40:36 INFO: Loaded 6 secrets from ../data/secrets.json
2026-04-25 22:40:36 INFO: Validating configuration with ConfigurationV0
../data/options.json MODIFY 
Setting up watches.
Watches established.
2026-04-25 22:45:00 INFO: Loaded 6 secrets from ../data/secrets.json
2026-04-25 22:45:00 INFO: Validating configuration with ConfigurationV0
../data/options.json MODIFY 
Setting up watches.
Watches established.
2026-04-25 22:46:21 INFO: Loaded 6 secrets from ../data/secrets.json
2026-04-25 22:46:21 INFO: Validating configuration with ConfigurationV0
[22:46:41] INFO: [32m=> directory dao_data exist[0m
[22:46:41] INFO: [32m=> /root/dao/data doesn't exist, made[0m
[22:46:41] INFO: [32m=> /root/dao/webserver/app/static/data exist[0m
2026-04-25 22:46:44 INFO: Loaded 6 secrets from ../data/secrets.json
2026-04-25 22:46:44 INFO: Validating configuration with ConfigurationV0
Setting up watches.
Watches established.
[2026-04-25 22:46:45 +0200] [35] [INFO] Starting gunicorn 25.3.0
[2026-04-25 22:46:45 +0200] [35] [INFO] Listening at: http://0.0.0.0:5000 (35)
[2026-04-25 22:46:45 +0200] [35] [INFO] Using worker: sync
[2026-04-25 22:46:45 +0200] [38] [INFO] Booting worker with pid: 38
[2026-04-25 22:46:45 +0200] [46] [INFO] Booting worker with pid: 46
[2026-04-25 22:46:45 +0200] [35] [INFO] Control socket listening at /root/.gunicorn/gunicorn.ctl
2026-04-25 22:46:49 INFO: Loaded 6 secrets from ../data/secrets.json
2026-04-25 22:46:49 INFO: Validating configuration with ConfigurationV0
[22:48:11] INFO: [32m=> directory dao_data exist[0m
[22:48:11] INFO: [32m=> /root/dao/data doesn't exist, made[0m
[22:48:11] INFO: [32m=> /root/dao/webserver/app/static/data exist[0m
2026-04-25 22:48:14 INFO: Loaded 6 secrets from ../data/secrets.json
2026-04-25 22:48:14 INFO: Validating configuration with ConfigurationV0
Setting up watches.
Watches established.
[2026-04-25 22:48:15 +0200] [35] [INFO] Starting gunicorn 25.3.0
[2026-04-25 22:48:15 +0200] [35] [INFO] Listening at: http://0.0.0.0:5000 (35)
[2026-04-25 22:48:15 +0200] [35] [INFO] Using worker: sync
[2026-04-25 22:48:15 +0200] [45] [INFO] Booting worker with pid: 45
[2026-04-25 22:48:15 +0200] [46] [INFO] Booting worker with pid: 46
[2026-04-25 22:48:15 +0200] [35] [INFO] Control socket listening at /root/.gunicorn/gunicorn.ctl
2026-04-25 22:48:19 INFO: Loaded 6 secrets from ../data/secrets.json
2026-04-25 22:48:19 INFO: Validating configuration with ConfigurationV0
[22:50:15] INFO: [32m=> directory dao_data exist[0m
[22:50:15] INFO: [32m=> /root/dao/data doesn't exist, made[0m
[22:50:15] INFO: [32m=> /root/dao/webserver/app/static/data exist[0m
2026-04-25 22:50:18 INFO: Loaded 6 secrets from ../data/secrets.json
2026-04-25 22:50:18 INFO: Validating configuration with ConfigurationV0
Setting up watches.
Watches established.
[2026-04-25 22:50:19 +0200] [35] [INFO] Starting gunicorn 25.3.0
[2026-04-25 22:50:19 +0200] [35] [INFO] Listening at: http://0.0.0.0:5000 (35)
[2026-04-25 22:50:19 +0200] [35] [INFO] Using worker: sync
[2026-04-25 22:50:19 +0200] [45] [INFO] Booting worker with pid: 45
[2026-04-25 22:50:19 +0200] [46] [INFO] Booting worker with pid: 46
[2026-04-25 22:50:19 +0200] [35] [INFO] Control socket listening at /root/.gunicorn/gunicorn.ctl
2026-04-25 22:50:22 INFO: Loaded 6 secrets from ../data/secrets.json
2026-04-25 22:50:22 INFO: Validating configuration with ConfigurationV0
../data/options.json MODIFY 
Setting up watches.
Watches established.
2026-04-25 22:54:01 INFO: Loaded 6 secrets from ../data/secrets.json
2026-04-25 22:54:01 INFO: Validating configuration with ConfigurationV0
[22:54:14] INFO: [32m=> directory dao_data exist[0m
[22:54:14] INFO: [32m=> /root/dao/data doesn't exist, made[0m
[22:54:14] INFO: [32m=> /root/dao/webserver/app/static/data exist[0m
2026-04-25 22:54:17 INFO: Loaded 6 secrets from ../data/secrets.json
2026-04-25 22:54:17 INFO: Validating configuration with ConfigurationV0
Setting up watches.
Watches established.
[2026-04-25 22:54:18 +0200] [35] [INFO] Starting gunicorn 25.3.0
[2026-04-25 22:54:18 +0200] [35] [INFO] Listening at: http://0.0.0.0:5000 (35)
[2026-04-25 22:54:18 +0200] [35] [INFO] Using worker: sync
[2026-04-25 22:54:18 +0200] [45] [INFO] Booting worker with pid: 45
[2026-04-25 22:54:18 +0200] [46] [INFO] Booting worker with pid: 46
[2026-04-25 22:54:18 +0200] [35] [INFO] Control socket listening at /root/.gunicorn/gunicorn.ctl
2026-04-25 22:54:22 INFO: Loaded 6 secrets from ../data/secrets.json
2026-04-25 22:54:22 INFO: Validating configuration with ConfigurationV0
2026-04-25 23:00:00 info: Day Ahead Optimalisering versie: 2026.4.4
2026-04-25 23:00:00 info: Day Ahead Optimalisering gestart op: 25-04-2026 23:00:00
2026-04-25 23:00:00 info: Day Ahead Optimalisatie gestart: 25-04-2026 23:00:00 taak: calc_optimum
2026-04-25 23:00:00 info: Using Python-MIP package version 1.17.6
2026-04-25 23:00:02 info: Loaded 6 secrets from ../data/secrets.json
2026-04-25 23:00:02 info: Validating configuration with ConfigurationV0
2026-04-25 23:00:02 info: Debug = False
2026-04-25 23:00:02 info: Baseload uit instellingen
2026-04-25 23:00:02 waarschuwing: Er is geen model aanwezig voor SolarEdge_SE10K,svp eerst trainen.
2026-04-25 23:00:02 info: Voor SolarEdge SE10K is geen model en dus wordt DAO-predictor gebruikt
2026-04-25 23:00:02 info: Start waarden: 
      uur                tijd   spot    p_l    p_t  base  pv_ac  pv_dc
0   23:00 2026-04-25 23:00:00  0.139  0.316  0.292 0.450  0.000      0
1   00:00 2026-04-26 00:00:00  0.120  0.293  0.268 0.450  0.000      0
2   01:00 2026-04-26 01:00:00  0.100  0.269  0.244 0.450  0.000      0
3   02:00 2026-04-26 02:00:00  0.098  0.267  0.242 0.450  0.000      0
4   03:00 2026-04-26 03:00:00  0.112  0.283  0.258 0.450  0.000      0
5   04:00 2026-04-26 04:00:00  0.119  0.292  0.267 0.450  0.000      0
6   05:00 2026-04-26 05:00:00  0.113  0.284  0.259 0.450  0.000      0
7   06:00 2026-04-26 06:00:00  0.120  0.293  0.268 0.450  0.112      0
8   07:00 2026-04-26 07:00:00  0.116  0.288  0.263 0.450  0.851      0
9   08:00 2026-04-26 08:00:00  0.080  0.244  0.219 0.450  2.222      0
10  09:00 2026-04-26 09:00:00  0.000  0.148  0.123 0.450  3.896      0
11  10:00 2026-04-26 10:00:00 -0.028  0.114  0.089 0.450  5.045      0
12  11:00 2026-04-26 11:00:00 -0.127 -0.006 -0.031 0.450  6.791      0
13  12:00 2026-04-26 12:00:00 -0.260 -0.167 -0.191 0.450  7.519      0
14  13:00 2026-04-26 13:00:00 -0.413 -0.352 -0.377 0.450  7.657      0
15  14:00 2026-04-26 14:00:00 -0.413 -0.352 -0.377 0.450  7.211      0
16  15:00 2026-04-26 15:00:00 -0.235 -0.137 -0.162 0.450  6.401      0
17  16:00 2026-04-26 16:00:00 -0.037  0.103  0.078 0.450  5.066      0
18  17:00 2026-04-26 17:00:00  0.012  0.162  0.137 0.450  3.341      0
19  18:00 2026-04-26 18:00:00  0.118  0.291  0.266 0.450  2.004      0
20  19:00 2026-04-26 19:00:00  0.159  0.340  0.315 0.450  1.072      0
21  20:00 2026-04-26 20:00:00  0.166  0.348  0.323 0.450  0.241      0
22  21:00 2026-04-26 21:00:00  0.145  0.323  0.298 0.450  0.000      0
23  22:00 2026-04-26 22:00:00  0.128  0.302  0.277 0.450  0.000      0
24  23:00 2026-04-26 23:00:00  0.119  0.292  0.267 0.450  0.000      0
2026-04-25 23:00:03 info: Boiler niet aanwezig of staat uit, boiler wordt niet ingepland
2026-04-25 23:00:03 info: Warmtepomp niet aanwezig - warmtepomp wordt niet ingepland
2026-04-25 23:00:03 info: Strategie: minimale kosten
2026-04-25 23:00:03 info: Maximale fout (maximal gap): 0.005000 euro
2026-04-25 23:00:03 info: Rekentijd: 0.01  sec
2026-04-25 23:00:03 info: Het programma heeft een optimale oplossing gevonden.
2026-04-25 23:00:03 info: Berekende prognoses: 
   uur  bat_in  bat_out   cons   prod   base   boil     wp     ev  pv_ac   cost  profit  b_tem
 23:00    0.00     0.00   0.45   0.00   0.45   0.00   0.00   0.00   0.00   0.14   -0.00  20.00
 00:00    0.00     0.00   0.45   0.00   0.45   0.00   0.00   0.00   0.00   0.13   -0.00  20.00
 01:00    0.00     0.00   0.45   0.00   0.45   0.00   0.00   0.00   0.00   0.12   -0.00  20.00
 02:00    0.00     0.00   0.45   0.00   0.45   0.00   0.00   0.00   0.00   0.12   -0.00  20.00
 03:00    0.00     0.00   0.45   0.00   0.45   0.00   0.00   0.00   0.00   0.13   -0.00  20.00
 04:00    0.00     0.00   0.45   0.00   0.45   0.00   0.00   0.00   0.00   0.13   -0.00  20.00
 05:00    0.00     0.00   0.45   0.00   0.45   0.00   0.00   0.00   0.00   0.13   -0.00  20.00
 06:00    0.00     0.00   0.34   0.00   0.45   0.00   0.00   0.00   0.11   0.10   -0.00  20.00
 07:00    0.00     0.00   0.00   0.40   0.45   0.00   0.00   0.00   0.85   0.00   -0.11  20.00
 08:00    0.00     0.00   0.00   1.77   0.45   0.00   0.00   0.00   2.22   0.00   -0.39  20.00
 09:00    0.00     0.00   0.00   3.45   0.45   0.00   0.00   0.00   3.90   0.00   -0.43  20.00
 10:00    0.00     0.00   0.00   4.60   0.45   0.00   0.00   0.00   5.05   0.00   -0.41  20.00
 11:00    0.00     0.00   0.00   6.34   0.45   0.00   0.00   0.00   6.79  -0.00    0.20  20.00
 12:00    0.00     0.00   0.00   7.07   0.45   0.00   0.00   0.00   7.52  -0.00    1.35  20.00
 13:00    0.00     0.00   0.00   7.21   0.45   0.00   0.00   0.00   7.66  -0.00    2.72  20.00
 14:00    0.00     0.00   0.00   6.76   0.45   0.00   0.00   0.00   7.21  -0.00    2.55  20.00
 15:00    0.00     0.00   0.00   5.95   0.45   0.00   0.00   0.00   6.40  -0.00    0.96  20.00
 16:00    0.00     0.00   0.00   4.62   0.45   0.00   0.00   0.00   5.07   0.00   -0.36  20.00
 17:00    0.00     0.00   0.00   2.89   0.45   0.00   0.00   0.00   3.34   0.00   -0.40  20.00
 18:00    0.00     0.00   0.00   1.55   0.45   0.00   0.00   0.00   2.00   0.00   -0.41  20.00
 19:00    0.00     0.00   0.00   0.62   0.45   0.00   0.00   0.00   1.07   0.00   -0.20  20.00
 20:00    0.00     0.00   0.21   0.00   0.45   0.00   0.00   0.00   0.24   0.07   -0.00  20.00
 21:00    0.00     0.00   0.45   0.00   0.45   0.00   0.00   0.00   0.00   0.15   -0.00  20.00
 22:00    0.00     0.00   0.45   0.00   0.45   0.00   0.00   0.00   0.00   0.14   -0.00  20.00
 23:00    0.00     0.00   0.45   0.00   0.45   0.00   0.00   0.00   0.00   0.13   -0.00  20.00
Totaal    0.00     0.00   5.05  53.23  11.25   0.00   0.00   0.00  59.43   1.49    5.09    NaN

2026-04-25 23:00:03 info: Consumption               5.05 (kWh)
2026-04-25 23:00:03 info: Cost consumption          1.49 (€)
2026-04-25 23:00:03 info: Tariff consumption        0.294 (€/kWh)
2026-04-25 23:00:03 info: Production               53.23 (kWh)
2026-04-25 23:00:03 info: Profit production         5.09 (€)
2026-04-25 23:00:03 info: Tariff production         0.096 (€/kWh)

2026-04-25 23:00:03 info: 
Calculation profit after optimize in €
Cost before optimize              6.58
Cost consumption      1.49
Cycle cost            0.00
Penalty cost          0.00
Battery storage       0.00
Boiler storage        0.00
Profit production     5.09
Total                 6.58
Cost after optimize               6.58
Profit:                           0.00
2026-04-25 23:00:03 info: Doorzetten van alle settings naar HA
2026-04-25 23:59:00 info: Day Ahead Optimalisering versie: 2026.4.4
2026-04-25 23:59:00 info: Day Ahead Optimalisering gestart op: 25-04-2026 23:59:00
2026-04-25 23:59:00 info: Day Ahead Optimalisatie gestart: 25-04-2026 23:59:00 taak: clean_data
2026-04-25 23:59:00 info: Start removing files in ../data/log with pattern *.log
2026-04-25 23:59:00 info: Start removing files in ../data/log with pattern dashboard.log.*
2026-04-25 23:59:00 info: Start removing files in ../data/images with pattern *.png
2026-04-26 00:00:00 info: Day Ahead Optimalisering versie: 2026.4.4
2026-04-26 00:00:00 info: Day Ahead Optimalisering gestart op: 26-04-2026 00:00:00
2026-04-26 00:00:00 info: Day Ahead Optimalisatie gestart: 26-04-2026 00:00:00 taak: calc_optimum
2026-04-26 00:00:00 info: Debug = False
2026-04-26 00:00:00 info: Baseload uit instellingen
2026-04-26 00:00:00 waarschuwing: Er is geen model aanwezig voor SolarEdge_SE10K,svp eerst trainen.
2026-04-26 00:00:00 info: Voor SolarEdge SE10K is geen model en dus wordt DAO-predictor gebruikt
2026-04-26 00:00:00 info: Start waarden: 
      uur                tijd   spot    p_l    p_t  base  pv_ac  pv_dc
0   00:00 2026-04-26 00:00:00  0.120  0.293  0.268 0.450  0.000      0
1   01:00 2026-04-26 01:00:00  0.100  0.269  0.244 0.450  0.000      0
2   02:00 2026-04-26 02:00:00  0.098  0.267  0.242 0.450  0.000      0
3   03:00 2026-04-26 03:00:00  0.112  0.283  0.258 0.450  0.000      0
4   04:00 2026-04-26 04:00:00  0.119  0.292  0.267 0.450  0.000      0
5   05:00 2026-04-26 05:00:00  0.113  0.284  0.259 0.450  0.000      0
6   06:00 2026-04-26 06:00:00  0.120  0.293  0.268 0.450  0.112      0
7   07:00 2026-04-26 07:00:00  0.116  0.288  0.263 0.450  0.851      0
8   08:00 2026-04-26 08:00:00  0.080  0.244  0.219 0.450  2.222      0
9   09:00 2026-04-26 09:00:00  0.000  0.148  0.123 0.450  3.896      0
10  10:00 2026-04-26 10:00:00 -0.028  0.114  0.089 0.450  5.045      0
11  11:00 2026-04-26 11:00:00 -0.127 -0.006 -0.031 0.450  6.791      0
12  12:00 2026-04-26 12:00:00 -0.260 -0.167 -0.191 0.450  7.519      0
13  13:00 2026-04-26 13:00:00 -0.413 -0.352 -0.377 0.450  7.657      0
14  14:00 2026-04-26 14:00:00 -0.413 -0.352 -0.377 0.450  7.211      0
15  15:00 2026-04-26 15:00:00 -0.235 -0.137 -0.162 0.450  6.401      0
16  16:00 2026-04-26 16:00:00 -0.037  0.103  0.078 0.450  5.066      0
17  17:00 2026-04-26 17:00:00  0.012  0.162  0.137 0.450  3.341      0
18  18:00 2026-04-26 18:00:00  0.118  0.291  0.266 0.450  2.004      0
19  19:00 2026-04-26 19:00:00  0.159  0.340  0.315 0.450  1.072      0
20  20:00 2026-04-26 20:00:00  0.166  0.348  0.323 0.450  0.241      0
21  21:00 2026-04-26 21:00:00  0.145  0.323  0.298 0.450  0.000      0
22  22:00 2026-04-26 22:00:00  0.128  0.302  0.277 0.450  0.000      0
23  23:00 2026-04-26 23:00:00  0.119  0.292  0.267 0.450  0.000      0
2026-04-26 00:00:00 info: Boiler niet aanwezig of staat uit, boiler wordt niet ingepland
2026-04-26 00:00:00 info: Warmtepomp niet aanwezig - warmtepomp wordt niet ingepland
2026-04-26 00:00:00 info: Strategie: minimale kosten
2026-04-26 00:00:00 info: Maximale fout (maximal gap): 0.005000 euro
2026-04-26 00:00:00 info: Rekentijd: 0.01  sec
2026-04-26 00:00:00 info: Het programma heeft een optimale oplossing gevonden.
2026-04-26 00:00:00 info: Berekende prognoses: 
   uur  bat_in  bat_out   cons   prod   base   boil     wp     ev  pv_ac   cost  profit  b_tem
 00:00    0.00     0.00   0.45   0.00   0.45   0.00   0.00   0.00   0.00   0.13   -0.00  20.00
 01:00    0.00     0.00   0.45   0.00   0.45   0.00   0.00   0.00   0.00   0.12   -0.00  20.00
 02:00    0.00     0.00   0.45   0.00   0.45   0.00   0.00   0.00   0.00   0.12   -0.00  20.00
 03:00    0.00     0.00   0.45   0.00   0.45   0.00   0.00   0.00   0.00   0.13   -0.00  20.00
 04:00    0.00     0.00   0.45   0.00   0.45   0.00   0.00   0.00   0.00   0.13   -0.00  20.00
 05:00    0.00     0.00   0.45   0.00   0.45   0.00   0.00   0.00   0.00   0.13   -0.00  20.00
 06:00    0.00     0.00   0.34   0.00   0.45   0.00   0.00   0.00   0.11   0.10   -0.00  20.00
 07:00    0.00     0.00   0.00   0.40   0.45   0.00   0.00   0.00   0.85   0.00   -0.11  20.00
 08:00    0.00     0.00   0.00   1.77   0.45   0.00   0.00   0.00   2.22   0.00   -0.39  20.00
 09:00    0.00     0.00   0.00   3.45   0.45   0.00   0.00   0.00   3.90   0.00   -0.43  20.00
 10:00    0.00     0.00   0.00   4.60   0.45   0.00   0.00   0.00   5.05   0.00   -0.41  20.00
 11:00    0.00     0.00   0.00   6.34   0.45   0.00   0.00   0.00   6.79  -0.00    0.20  20.00
 12:00    0.00     0.00   0.00   7.07   0.45   0.00   0.00   0.00   7.52  -0.00    1.35  20.00
 13:00    0.00     0.00   0.00   7.21   0.45   0.00   0.00   0.00   7.66  -0.00    2.72  20.00
 14:00    0.00     0.00   0.00   6.76   0.45   0.00   0.00   0.00   7.21  -0.00    2.55  20.00
 15:00    0.00     0.00   0.00   5.95   0.45   0.00   0.00   0.00   6.40  -0.00    0.96  20.00
 16:00    0.00     0.00   0.00   4.62   0.45   0.00   0.00   0.00   5.07   0.00   -0.36  20.00
 17:00    0.00     0.00   0.00   2.89   0.45   0.00   0.00   0.00   3.34   0.00   -0.40  20.00
 18:00    0.00     0.00   0.00   1.55   0.45   0.00   0.00   0.00   2.00   0.00   -0.41  20.00
 19:00    0.00     0.00   0.00   0.62   0.45   0.00   0.00   0.00   1.07   0.00   -0.20  20.00
 20:00    0.00     0.00   0.21   0.00   0.45   0.00   0.00   0.00   0.24   0.07   -0.00  20.00
 21:00    0.00     0.00   0.45   0.00   0.45   0.00   0.00   0.00   0.00   0.15   -0.00  20.00
 22:00    0.00     0.00   0.45   0.00   0.45   0.00   0.00   0.00   0.00   0.14   -0.00  20.00
 23:00    0.00     0.00   0.45   0.00   0.45   0.00   0.00   0.00   0.00   0.13   -0.00  20.00
Totaal    0.00     0.00   4.60  53.23  10.80   0.00   0.00   0.00  59.43   1.34    5.09    NaN

2026-04-26 00:00:00 info: Consumption               4.60 (kWh)
2026-04-26 00:00:00 info: Cost consumption          1.34 (€)
2026-04-26 00:00:00 info: Tariff consumption        0.292 (€/kWh)
2026-04-26 00:00:00 info: Production               53.23 (kWh)
2026-04-26 00:00:00 info: Profit production         5.09 (€)
2026-04-26 00:00:00 info: Tariff production         0.096 (€/kWh)

2026-04-26 00:00:00 info: 
Calculation profit after optimize in €
Cost before optimize              6.43
Cost consumption      1.34
Cycle cost            0.00
Penalty cost          0.00
Battery storage       0.00
Boiler storage        0.00
Profit production     5.09
Total                 6.43
Cost after optimize               6.43
Profit:                          -0.00
2026-04-26 00:00:00 info: Doorzetten van alle settings naar HA
Ondertussen werkt het tabblad reports en savings wel maar dan alleen voor vandaag, als ik morgen of gisteren selecteer krijg ik nog de internal server error.

Solar tab werkt nog niet.

Zie weinig fouten in de log, en na aanpassing werkt Bereken de baseloads en ML modellen trainen niet.

Bij baseloads krijg ik deze fout:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
2026-04-26 00:17:06 INFO: Loaded 6 secrets from ../data/secrets.json
2026-04-26 00:17:06 INFO: Validating configuration with ConfigurationV0
2026-04-26 00:17:06 info: Day Ahead Optimalisering versie: 2026.4.4
2026-04-26 00:17:06 info: Day Ahead Optimalisering gestart op: 26-04-2026 00:17:06
2026-04-26 00:17:06 info: Day Ahead Optimalisatie gestart: 26-04-2026 00:17:06 taak: calc_baseloads
2026-04-26 00:17:08 fout: Er is een fout opgetreden, zie de fout-tracering
Traceback (most recent call last):
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/sql/base.py", line 1725, in __getattr__
    return self._index[key][1]
           ~~~~~~~~~~~^^^^^
KeyError: 'start_ts'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/root/dao/prog/da_base.py", line 694, in run_task_function
    getattr(self, run_task["function"])()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/root/dao/prog/da_base.py", line 553, in calc_baseloads
    report.calc_save_baseloads()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/root/dao/prog/da_report.py", line 2949, in calc_save_baseloads
    baseload = self.calc_weekday_baseload(weekday)
  File "/root/dao/prog/da_report.py", line 2843, in calc_weekday_baseload
    grid_consumption = self.get_sensor_week_sum(
        self.grid_consumption_sensors,
    ...<2 lines>...
        "grid_consumption",
    )
  File "/root/dao/prog/da_report.py", line 2819, in get_sensor_week_sum
    df = self.get_sensor_week_data(sensor, weekday, vanaf, tot, col_name)
  File "/root/dao/prog/da_report.py", line 2755, in get_sensor_week_data
    t2.c.start_ts.label("tijd"),
    ^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/sql/base.py", line 1727, in __getattr__
    raise AttributeError(key) from err
AttributeError: start_ts
Traceback (most recent call last):
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/sql/base.py", line 1725, in __getattr__
    return self._index[key][1]
           ~~~~~~~~~~~^^^^^
KeyError: 'start_ts'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/root/dao/webserver/../prog/day_ahead.py", line 4708, in <module>
    main()
    ~~~~^^
  File "/root/dao/webserver/../prog/day_ahead.py", line 4699, in main
    da_calc.run_task_function("calc_baseloads")
    ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^
  File "/root/dao/prog/da_base.py", line 694, in run_task_function
    getattr(self, run_task["function"])()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/root/dao/prog/da_base.py", line 553, in calc_baseloads
    report.calc_save_baseloads()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/root/dao/prog/da_report.py", line 2949, in calc_save_baseloads
    baseload = self.calc_weekday_baseload(weekday)
  File "/root/dao/prog/da_report.py", line 2843, in calc_weekday_baseload
    grid_consumption = self.get_sensor_week_sum(
        self.grid_consumption_sensors,
    ...<2 lines>...
        "grid_consumption",
    )
  File "/root/dao/prog/da_report.py", line 2819, in get_sensor_week_sum
    df = self.get_sensor_week_data(sensor, weekday, vanaf, tot, col_name)
  File "/root/dao/prog/da_report.py", line 2755, in get_sensor_week_data
    t2.c.start_ts.label("tijd"),
    ^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/sql/base.py", line 1727, in __getattr__
    raise AttributeError(key) from err
AttributeError: start_ts
En dit voor ml modellen:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
2026-04-26 00:19:52 INFO: Loaded 6 secrets from ../data/secrets.json
2026-04-26 00:19:52 INFO: Validating configuration with ConfigurationV0
2026-04-26 00:19:52 info: Day Ahead Optimalisering versie: 2026.4.4
2026-04-26 00:19:52 info: Day Ahead Optimalisering gestart op: 26-04-2026 00:19:52
2026-04-26 00:19:52 info: Day Ahead Optimalisatie gestart: 26-04-2026 00:19:52 taak: train_ml_predictions
2026-04-26 00:19:52 info: KNMI-weerstation: 377 ELL
2026-04-26 00:19:52 info: Er zijn knmi-data aanwezig vanaf 2023-04-24 02:00:00 tot 2026-04-24 01:00:00
2026-04-26 00:19:52 info: Er zijn data van het KNMI binnengekomen vanaf 2026-04-23 00:00:00+02:00 tot en met 2026-04-24 23:00:00+02:00
2026-04-26 00:19:53 fout: Er is een fout opgetreden, zie de fout-tracering
Traceback (most recent call last):
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/sql/base.py", line 1725, in __getattr__
    return self._index[key][1]
           ~~~~~~~~~~~^^^^^
KeyError: 'start_ts'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/root/dao/prog/da_base.py", line 694, in run_task_function
    getattr(self, run_task["function"])()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/root/dao/prog/da_base.py", line 644, in train_ml_predictions
    solar_predictor.run_train()
    ~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/root/dao/prog/solar_predictor.py", line 983, in run_train
    self.train_solar_option(weather_data, solar_option, start)
    ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/prog/solar_predictor.py", line 962, in train_solar_option
    solar_data = self.get_solar_data(start=start, entities=self.solar_entities)
  File "/root/dao/prog/solar_predictor.py", line 932, in get_solar_data
    df_sensor = report.get_sensor_data(
        sensor, col_name="solar_kwh", vanaf=start, tot=tot, agg="uur"
    )
  File "/root/dao/prog/da_report.py", line 976, in get_sensor_data
    column = self.db_ha.hour(t2.c.start_ts).label("uur")
                             ^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/sql/base.py", line 1727, in __getattr__
    raise AttributeError(key) from err
AttributeError: start_ts
Traceback (most recent call last):
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/sql/base.py", line 1725, in __getattr__
    return self._index[key][1]
           ~~~~~~~~~~~^^^^^
KeyError: 'start_ts'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/root/dao/webserver/../prog/day_ahead.py", line 4708, in <module>
    main()
    ~~~~^^
  File "/root/dao/webserver/../prog/day_ahead.py", line 4702, in main
    da_calc.run_task_function("train_ml_predictions")
    ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/prog/da_base.py", line 694, in run_task_function
    getattr(self, run_task["function"])()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/root/dao/prog/da_base.py", line 644, in train_ml_predictions
    solar_predictor.run_train()
    ~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/root/dao/prog/solar_predictor.py", line 983, in run_train
    self.train_solar_option(weather_data, solar_option, start)
    ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/prog/solar_predictor.py", line 962, in train_solar_option
    solar_data = self.get_solar_data(start=start, entities=self.solar_entities)
  File "/root/dao/prog/solar_predictor.py", line 932, in get_solar_data
    df_sensor = report.get_sensor_data(
        sensor, col_name="solar_kwh", vanaf=start, tot=tot, agg="uur"
    )
  File "/root/dao/prog/da_report.py", line 976, in get_sensor_data
    column = self.db_ha.hour(t2.c.start_ts).label("uur")
                             ^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/sql/base.py", line 1727, in __getattr__
    raise AttributeError(key) from err
AttributeError: start_ts
Edit: moesten volgens mij nog haakjes omheen maar ook hiermee zelfde fouten:
"entities sensors": ["sensor.solaredge_lifetime_energy"],

Ook deze nog aangepast zonder quotes omdat het een Boolean is als staat in documentatie met quotes:
"ml_prediction": true,

  • Impossibl3
  • Registratie: November 2012
  • Laatst online: 07:24
KC27 schreef op zaterdag 25 april 2026 @ 23:46:
[...]
Om de ml-prediction goed te laten werken is er minimaal één ha-sensor nodig waarin de productie van de laatste maanden (liefst minimaal 12) wordt bijgehouden ( zie wiki).
Ik vroeg mij gisteren nog af. Hoe gaat de ML er mee om dat door de prijzen de zonnepanelen uitgeschakeld worden? Worden die momenten mee genomen in de ml berekening of eruit gelaten?

PV 5.590 Wp Enphase, 2.700 Wp Growatt - Easee laadpaal - Itho Amber 95 WP

Pagina: 1 ... 37 ... 42 Laatste