wmc schreef op dinsdag 27 januari 2026 @ 08:27:
[...]


Ik heb iets soortgelijks als ik de ML manueel start, zie code hieronder. Ik ging er vanuit dat het komt door een gebrek aan sensor informatie (ik heb de sensor vrij recent aangemaakt omdat de originele sensor wat raar gedrag vertoonde).
code:
1
2
3
4
5
6
7
Logging van bewerking "ML modellen trainen":
2026-01-27 08:25:14 info: Day Ahead Optimalisering versie: 2026.01.2
2026-01-27 08:25:14 info: Day Ahead Optimalisering gestart op: 27-01-2026 08:25:14
2026-01-27 08:25:14 info: Day Ahead Optimalisatie gestart: 27-01-2026 08:25:14 taak: train_ml_predictions
2026-01-27 08:25:14 info: KNMI-weerstation: 370 EINDHOVEN
2026-01-27 08:25:14 info: Er zijn knmi-data aanwezig vanaf 2023-01-22 01:00:00 tot 2026-01-26 00:00:00
2026-01-27 08:25:14 info: Er zijn data van het KNMI binnengekomen vanaf 2026-01-25 00:00:00+01:00 tot en met 2026-01-25 23:00:00+01:00
Draait het bij jou (net als bij @itavero in een aparte Docker container of als add-on van HA?

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

simnet schreef op dinsdag 27 januari 2026 @ 07:55:
Ik had vannacht een bijzondere situatie:

Om 5:00 ging de batterij (toen leeg, minimum is 11%) laden met 113W om een +0.5% SoC te bereiken. De eerstvolgende berekening was de SoC 1% gestegen en stopte het laden weer.

Ik vraag me af: als het economisch zinvol is om te laden, waarom dan maar 0.1kWh laden?


[...]
Je zou inderdaad verwachten: laden maar, omdat de overall-efficiency bij alle vermogens gelijk is, terwijl om 5:00 uur de prijzen echt lager zijn dan in de loop van de dag.
Kan het zijn dat hij overdag niet wil terugleveren (laag teruglevertarief), dus dan om 10:00 de batteriij leeg wil hebben?
Heb je ook het plaatje van 5:00? Dat interpreteert vaak makkelijker dan alle tabellen uit de logging.

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


  • simnet
  • Registratie: Januari 2020
  • Laatst online: 10:25
KC27 schreef op dinsdag 27 januari 2026 @ 10:08:
[...]

Je zou inderdaad verwachten: laden maar, omdat de overall-efficiency bij alle vermogens gelijk is, terwijl om 5:00 uur de prijzen echt lager zijn dan in de loop van de dag.
Kan het zijn dat hij overdag niet wil terugleveren (laag teruglevertarief), dus dan om 10:00 de batteriij leeg wil hebben?
Heb je ook het plaatje van 5:00? Dat interpreteert vaak makkelijker dan alle tabellen uit de logging.
Dit is het plaatje van 05:00. Je ziet dat hij plant om die 0.1kwh later in de ochtend weer te ontladen.

Afbeeldingslocatie: https://tweakers.net/i/8BPXYkUupChh1qL0jHEvujq1FSY=/800x/filters:strip_exif()/f/image/vV3tPMBVTRnFCXIEqC1RnjFv.png?f=fotoalbum_large

  • Bravo
  • Registratie: Augustus 2005
  • Laatst online: 13:51

Bravo

Second Best

simnet schreef op dinsdag 27 januari 2026 @ 10:21:
[...]


Dit is het plaatje van 05:00. Je ziet dat hij plant om die 0.1kwh later in de ochtend weer te ontladen.

[Afbeelding]
Ziet er uit alsof de penalty voor een te lage SOC (< optimal min) ervoor gezorgd heeft dat de batterij is bijgeladen. Voor optimaal rendement wordt die later nog verkocht als de penalty maar kortdurend is doordat er PV wordt geladen?

Ioniq 6 LR Lounge 20" @ Elli Pro
2700Wp SSW 30° @ SE2200 | 1720Wp SSW 5° @ HM-1500
Flickr | Canon 6D | 17-40mm f/4 + 50mm f/1.8 II + 70-200mm f/4 | 2x 430EX II | Sirui T005 + C10


  • simnet
  • Registratie: Januari 2020
  • Laatst online: 10:25
Bravo schreef op dinsdag 27 januari 2026 @ 11:00:
[...]

Ziet er uit alsof de penalty voor een te lage SOC (< optimal min) ervoor gezorgd heeft dat de batterij is bijgeladen. Voor optimaal rendement wordt die later nog verkocht als de penalty maar kortdurend is doordat er PV wordt geladen?
Ik heb even gekeken, maar mijn optimal soc is ook 11:
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
"capacity": 5.12,
      "upper limit": 100,
      "lower limit": 11,
      "optimal lower level": 11,
      "charge stages": [
        {
          "power": 0.0,
          "efficiency": 1
        },
        {
          "power": 2500.0,
          "efficiency": 0.95
        }
      ],
      "discharge stages": [
        {
          "power": 0.0,
          "efficiency": 1
        },
        {
          "power": 2500.0,
          "efficiency": 0.95
        }
      ],
      "minimum power": 15,
      "dc_to_bat efficiency": 0.95,
      "bat_to_dc efficiency": 0.95,
      "cycle cost": 0.01,
      "cycle cost_calculated": 0.029,
simnet schreef op dinsdag 27 januari 2026 @ 10:21:
[...]


Dit is het plaatje van 05:00. Je ziet dat hij plant om die 0.1kwh later in de ochtend weer te ontladen.

[Afbeelding]
Prima, maar ik ben ook benieuwd naar het plaatje van je energiebalans na optimalisering, als ik de tabel goed interpreteer vult hij de accu overdag met "lage" tarieven met "nul op de meter"

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


  • simnet
  • Registratie: Januari 2020
  • Laatst online: 10:25
KC27 schreef op dinsdag 27 januari 2026 @ 12:45:
[...]

Prima, maar ik ben ook benieuwd naar het plaatje van je energiebalans na optimalisering, als ik de tabel goed interpreteer vult hij de accu overdag met "lage" tarieven met "nul op de meter"
Ik weet niet precies welke je bedoelt, hier de hele ter referentie:

Afbeeldingslocatie: https://tweakers.net/i/2fUvi_SNV5VHcqsL4ZSSI1TQM-k=/x800/filters:strip_exif()/f/image/z79l1Ubtdcjs1snqEWhLVGpv.png?f=fotoalbum_large
simnet schreef op dinsdag 27 januari 2026 @ 13:13:
[...]

Ik weet niet precies welke je bedoelt, hier de hele ter referentie:

[Afbeelding]
De tweede grafiek van boven verduidelijkt veel:
Vanaf ca 10:30 gaat hij over op "nul op de meter", hij wil niet meer in de accu hebben dan nodig om vanaf 16:30 uur met "nom" terug te leveren (op de uren dat dat rendabel is).
Ik denk toch dat het algoritme slimmer is dan wij in eerste instantie bedenken.

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


  • simnet
  • Registratie: Januari 2020
  • Laatst online: 10:25
Ok. Dus eigenlijk zegt ie, "ik laad snachts goedkoop een beetje bij, zodat je overdag niet hoeft in te kopen. verkoop van energie is op dat moment echter niet gunstig, dus ik laad alleen het verschil tussen verwachte pv opbrengst en verwacht verbruik"
Zie ik het zo ongeveer goed?

P.S. ik heb belastingteruggave uit staan, dus vandaar dat hij waarscijnlijk niet volle bak gaat terugleveren...

  • The Source
  • Registratie: April 2000
  • Laatst online: 12:29
KC27 schreef op zondag 25 januari 2026 @ 11:31:
[...]

Waarschijnlijk is dit issue opgelost met versie 2026.01.2.
Mocht dat niet zo zijn dan moet je als volgt handelen:
- genereer de fout weer opnieuw
- ga in HA naar Instellingen/Addons/DAO klik daar op "logging"
- deel hier of via een dm de track-tracing van de fout
Ik heb/had hetzelfde probleem. Echter krijg ik de solar pagina af en toe te zien... 75% de internal server error en soms wel de solar tabel.

Als ik de tabel wel zie dan zijn sommige cellen leeg en het totaal (R2) ontbreekt, terwjil deze wel berekend wordt.

Afbeeldingslocatie: https://tweakers.net/i/zm48cP6BbLvNoQh5sDY3_RdC6PE=/x800/filters:strip_exif()/f/image/U8q9geL98EJLymG4SJGWMZQV.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
Logging van bewerking "ML modellen trainen":
2026-01-27 17:41:16 info: Day Ahead Optimalisering versie: 2026.01.2
2026-01-27 17:41:16 info: Day Ahead Optimalisering gestart op: 27-01-2026 17:41:16
2026-01-27 17:41:16 info: Day Ahead Optimalisatie gestart: 27-01-2026 17:41:16 taak: train_ml_predictions
2026-01-27 17:41:16 info: KNMI-weerstation: 370 EINDHOVEN
2026-01-27 17:41:16 info: Er zijn knmi-data aanwezig vanaf 2023-01-26 01:00:00 tot 2026-01-26 00:00:00
2026-01-27 17:41:17 info: Er zijn data van het KNMI binnengekomen vanaf 2026-01-25 00:00:00+01:00 tot en met 2026-01-25 23:00:00+01:00
2026-01-27 17:41:17 info: Starting solar prediction model for Zuid training...
2026-01-27 17:41:17 info: Loading and processing data...
2026-01-27 17:41:18 info: Merging weather and solar data...
2026-01-27 17:41:18 info: Merged dataset: 3416 records
2026-01-27 17:41:18 info: Date range: 2025-09-05 16:00:00+00:00 to 2026-01-25 23:00:00+00:00
2026-01-27 17:41:18 info: Detecting outliers...
2026-01-27 17:41:18 info: Outliers removed: 70 (2.0%)
2026-01-27 17:41:18 info: Clean dataset: 3346 records
2026-01-27 17:41:18 info: Training samples: 2676
2026-01-27 17:41:18 info: Testing samples: 670
2026-01-27 17:41:18 info: Tune hyperparameters: True
2026-01-27 17:41:18 info: Tuning hyperparameters...
2026-01-27 17:41:18 info: Parameter grid: {'n_estimators': [100, 200, 300], 'max_depth': [3, 4, 6], 'learning_rate': [0.05, 0.1, 0.15], 'subsample': [0.8, 0.9]}
2026-01-27 17:41:29 info: Best parameters: {'learning_rate': 0.05, 'max_depth': 6, 'n_estimators': 100, 'subsample': 0.8}
2026-01-27 17:41:29 info: Training final model...
2026-01-27 17:41:29 info: Parameters: {'learning_rate': 0.05, 'max_depth': 6, 'n_estimators': 100, 'subsample': 0.8}
2026-01-27 17:41:29 info: Model training van Zuid complete
2026-01-27 17:41:29 info: Model saved to: ../data/prediction/models/Zuid.pkl
2026-01-27 17:41:29 info: Training MAE: 0.0564 kWh
2026-01-27 17:41:29 info: Testing MAE: 0.1583 kWh
2026-01-27 17:41:29 info: Training R²: 0.9793
2026-01-27 17:41:29 info: Testing R²: 0.5080
2026-01-27 17:41:29 info: Sorted features:
2026-01-27 17:41:29 info:   1. irradiance: 0.661
2026-01-27 17:41:29 info:   2. month: 0.115
2026-01-27 17:41:29 info:   3. week_nr: 0.071
2026-01-27 17:41:29 info:   4. hour: 0.070
2026-01-27 17:41:29 info:   5. quarter: 0.034
2026-01-27 17:41:29 info:   6. day_of_week: 0.025
2026-01-27 17:41:29 info:   7. temperature: 0.024
2026-01-27 17:41:29 info:   8. season: 0.000

[ Voor 112% gewijzigd door The Source op 27-01-2026 17:44 ]

The Source schreef op dinsdag 27 januari 2026 @ 17:42:[/li]
• [...]

• Ik heb/had hetzelfde probleem. Echter krijg ik de solar pagina af en toe te zien... 75% de internal server error en soms wel de solar tabel.

• Als ik de tabel wel zie dan zijn sommige cellen leeg en het totaal (R2) ontbreekt, terwjil deze wel berekend wordt.

[Afbeelding]

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
[/li]
  [li]Logging van bewerking "ML modellen trainen":[/li]
  [li]2026-01-27 17:41:16 info: Day Ahead Optimalisering versie: 2026.01.2[/li]
  [li]2026-01-27 17:41:16 info: Day Ahead Optimalisering gestart op: 27-01-2026 17:41:16[/li]
  [li]2026-01-27 17:41:16 info: Day Ahead Optimalisatie gestart: 27-01-2026 17:41:16 taak: train_ml_predictions[/li]
  [li]2026-01-27 17:41:16 info: KNMI-weerstation: 370 EINDHOVEN[/li]
  [li]2026-01-27 17:41:16 info: Er zijn knmi-data aanwezig vanaf 2023-01-26 01:00:00 tot 2026-01-26 00:00:00[/li]
  [li]2026-01-27 17:41:17 info: Er zijn data van het KNMI binnengekomen vanaf 2026-01-25 00:00:00+01:00 tot en met 2026-01-25 23:00:00+01:00[/li]
  [li]2026-01-27 17:41:17 info: Starting solar prediction model for Zuid training...[/li]
  [li]2026-01-27 17:41:17 info: Loading and processing data...[/li]
  [li]2026-01-27 17:41:18 info: Merging weather and solar data...[/li]
  [li]2026-01-27 17:41:18 info: Merged dataset: 3416 records[/li]
  [li]2026-01-27 17:41:18 info: Date range: 2025-09-05 16:00:00+00:00 to 2026-01-25 23:00:00+00:00[/li]
  [li]2026-01-27 17:41:18 info: Detecting outliers...[/li]
  [li]2026-01-27 17:41:18 info: Outliers removed: 70 (2.0%)[/li]
  [li]2026-01-27 17:41:18 info: Clean dataset: 3346 records[/li]
  [li]2026-01-27 17:41:18 info: Training samples: 2676[/li]
  [li]2026-01-27 17:41:18 info: Testing samples: 670[/li]
  [li]2026-01-27 17:41:18 info: Tune hyperparameters: True[/li]
  [li]2026-01-27 17:41:18 info: Tuning hyperparameters...[/li]
  [li]2026-01-27 17:41:18 info: Parameter grid: {'n_estimators': [100, 200, 300], 'max_depth': [3, 4, 6], 'learning_rate': [0.05, 0.1, 0.15], 'subsample': [0.8, 0.9]}[/li]
  [li]2026-01-27 17:41:29 info: Best parameters: {'learning_rate': 0.05, 'max_depth': 6, 'n_estimators': 100, 'subsample': 0.8}[/li]
  [li]2026-01-27 17:41:29 info: Training final model...[/li]
  [li]2026-01-27 17:41:29 info: Parameters: {'learning_rate': 0.05, 'max_depth': 6, 'n_estimators': 100, 'subsample': 0.8}[/li]
  [li]2026-01-27 17:41:29 info: Model training van Zuid complete[/li]
  [li]2026-01-27 17:41:29 info: Model saved to: ../data/prediction/models/Zuid.pkl[/li]
  [li]2026-01-27 17:41:29 info: Training MAE: 0.0564 kWh[/li]
  [li]2026-01-27 17:41:29 info: Testing MAE: 0.1583 kWh[/li]
  [li]2026-01-27 17:41:29 info: Training R²: 0.9793[/li]
  [li]2026-01-27 17:41:29 info: Testing R²: 0.5080[/li]
  [li]2026-01-27 17:41:29 info: Sorted features:[/li]
  [li]2026-01-27 17:41:29 info:   1. irradiance: 0.661[/li]
  [li]2026-01-27 17:41:29 info:   2. month: 0.115[/li]
  [li]2026-01-27 17:41:29 info:   3. week_nr: 0.071[/li]
  [li]2026-01-27 17:41:29 info:   4. hour: 0.070[/li]
  [li]2026-01-27 17:41:29 info:   5. quarter: 0.034[/li]
  [li]2026-01-27 17:41:29 info:   6. day_of_week: 0.025[/li]
  [li]2026-01-27 17:41:29 info:   7. temperature: 0.024[/li]
  [li]2026-01-27 17:41:29 info:   8. season: 0.000[/li]
  [li]
Vooralsnog zijn jouw constateringen geen fouten maar features 😉:
  • De kolom gemeten straling komt van het knmi en die is voor vandaag pas morgen eind van de dag beschikbaar (als ze het halen en jij een ml training hebt gedaan)
  • De kolom geten productie wordt voor vandaag ieder uur aangevuld (de sensoren van ha kunnen niet vooruit meten)
  • De r2 waarden worden pas berekend als de referentie kolom helemaal gevuld is ( voor gisteren zijn er al wel r2 waarden).
Ik zou wel willen weten wanneer jij een Internal Server Error krijgt (liefst met logging van de track trace, via HA Instellingen/Addons/ DAO / pagina logboek).

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


  • itavero
  • Registratie: Oktober 2004
  • Laatst online: 12:21
Vandaag nogmaals de ML training geprobeerd en nu kwam er wel een model uit.
Het enige wat ik veranderd heb:
  • Ik heb het solar blok eerder in mijn config gezet (scheelde wat scrollen voor mij in de config editor). Hij komt nu na homeassistant, database ha, database da en scheduler
  • Home Assistant is geüpdatet van 2025.11.1 naar 2026.1.3
Beide lijken mij niet perse relevant, maar nu krijg ik in ieder geval wel de output die ik verwachtte.
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
2026-01-27 20:53:00 info: Day Ahead Optimalisering versie: 2026.01.2
2026-01-27 20:53:00 info: Day Ahead Optimalisering gestart op: 27-01-2026 20:53:00
2026-01-27 20:53:00 info: Day Ahead Optimalisatie gestart: 27-01-2026 20:53:00 taak: train_ml_predictions
2026-01-27 20:53:14 info: KNMI-weerstation: 356 HERWIJNEN
2026-01-27 20:53:14 info: Er zijn knmi-data aanwezig vanaf 2023-01-26 01:00:00 tot 2026-01-26 00:00:00
2026-01-27 20:53:14 info: Er zijn data van het KNMI binnengekomen vanaf 2026-01-25 00:00:00+01:00 tot en met 2026-01-25 23:00:00+01:00
2026-01-27 20:53:18 info: Starting solar prediction model for Dak_woning_Zuid training...
2026-01-27 20:53:18 info: Loading and processing data...
2026-01-27 20:53:23 info: Merging weather and solar data...
2026-01-27 20:53:23 info: Merged dataset: 2944 records
2026-01-27 20:53:23 info: Date range: 2025-09-25 08:00:00+00:00 to 2026-01-25 23:00:00+00:00
2026-01-27 20:53:23 info: Detecting outliers...
2026-01-27 20:53:24 info: Outliers removed: 63 (2.1%)
2026-01-27 20:53:24 info: Clean dataset: 2881 records
2026-01-27 20:53:24 info: Training samples: 2304
2026-01-27 20:53:24 info: Testing samples: 577
2026-01-27 20:53:24 info: Tune hyperparameters: True
2026-01-27 20:53:24 info: Tuning hyperparameters...
2026-01-27 20:53:24 info: Parameter grid: {'n_estimators': [100, 200, 300], 'max_depth': [3, 4, 6], 'learning_rate': [0.05, 0.1, 0.15], 'subsample': [0.8, 0.9]}
2026-01-27 20:54:29 info: Best parameters: {'learning_rate': 0.05, 'max_depth': 6, 'n_estimators': 100, 'subsample': 0.8}
2026-01-27 20:54:29 info: Training final model...
2026-01-27 20:54:29 info: Parameters: {'learning_rate': 0.05, 'max_depth': 6, 'n_estimators': 100, 'subsample': 0.8}
2026-01-27 20:54:30 info: Model training van Dak_woning_Zuid complete
2026-01-27 20:54:30 info: Model saved to: ../data/prediction/models/Dak_woning_Zuid.pkl
2026-01-27 20:54:30 info: Training MAE: 0.0284 kWh
2026-01-27 20:54:30 info: Testing MAE: 0.0752 kWh
2026-01-27 20:54:30 info: Training R²: 0.9761
2026-01-27 20:54:30 info: Testing R²: 0.7809
2026-01-27 20:54:30 info: Sorted features:
2026-01-27 20:54:30 info:   1. irradiance: 0.758
2026-01-27 20:54:30 info:   2. month: 0.073
2026-01-27 20:54:30 info:   3. week_nr: 0.066
2026-01-27 20:54:30 info:   4. hour: 0.038
2026-01-27 20:54:30 info:   5. temperature: 0.026
2026-01-27 20:54:30 info:   6. day_of_week: 0.025
2026-01-27 20:54:30 info:   7. quarter: 0.014
2026-01-27 20:54:30 info:   8. season: 0.000

  • Impossibl3
  • Registratie: November 2012
  • Laatst online: 09:49
Ik krijg ook een Internal Server Error sinds ik vandaag de "train_ml_predictions" heb toegevoegd. Als ik op "ML modellen trainen" klik onder "Run" na "Meteoprognoses ophalen" gaat het is.
quote: HA add-on 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
../data/options.json MODIFY 
Setting up watches.
Watches established.
[2026-01-27 21:27:52 +0100] [12] [CRITICAL] WORKER TIMEOUT (pid:23)
[2026-01-27 21:27:52 +0100] [23] [fout] Error handling request /
Traceback (most recent call last):
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/gunicorn/workers/sync.py", line 134, in handle
    self.handle_request(listener, req, client, addr)
    ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/gunicorn/workers/sync.py", line 177, in handle_request
    respiter = self.wsgi(environ, resp.start_response)
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 1536, in __call__
    return self.wsgi_app(environ, start_response)
           ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 1511, in wsgi_app
    response = self.full_dispatch_request()
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 917, in full_dispatch_request
    rv = self.dispatch_request()
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 902, in dispatch_request
    return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)  # type: ignore[no-any-return]
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/root/dao/webserver/app/routes.py", line 297, in menu
    return run_process()
  File "/root/dao/webserver/app/routes.py", line 431, in run_process
    proc = run(cmd, stdout=PIPE, stderr=PIPE)
  File "/usr/lib/python3.13/subprocess.py", line 556, in run
    stdout, stderr = process.communicate(input, timeout=timeout)
                     ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/subprocess.py", line 1222, in communicate
    stdout, stderr = self._communicate(input, endtime, timeout)
                     ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/subprocess.py", line 2128, in _communicate
    ready = selector.select(timeout)
  File "/usr/lib/python3.13/selectors.py", line 398, in select
    fd_event_list = self._selector.poll(timeout)
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/gunicorn/workers/base.py", line 204, in handle_abort
    sys.exit(1)
    ~~~~~~~~^^^
SystemExit: 1
[2026-01-27 21:27:52 +0100] [23] [info] Worker exiting (pid: 23)
[2026-01-27 21:27:52 +0100] [1739] [INFO] Booting worker with pid: 1739
2026-01-27 21:30:00 info: Day Ahead Optimalisering versie: 2026.01.2
2026-01-27 21:30:00 info: Day Ahead Optimalisering gestart op: 27-01-2026 21:30:00
2026-01-27 21:30:00 info: Day Ahead Optimalisatie gestart: 27-01-2026 21:30:00 taak: calc_optimum
2026-01-27 21:30:00 info: Using Python-MIP package version 1.16rc0
2026-01-27 21:30:03 info: Debug = False
2026-01-27 21:30:03 info: Baseload uit instellingen
2026-01-27 21:30:03 fout: Er is een fout opgetreden, zie de fout-tracering
Traceback (most recent call last):
  File "/root/dao/prog/da_base.py", line 648, in run_task_function
    getattr(self, run_task["function"])()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/root/dao/prog/da_base.py", line 579, in calc_optimum
    dacalc.calc_optimum()
    ~~~~~~~~~~~~~~~~~~~^^
  File "/root/dao/prog/day_ahead.py", line 251, in calc_optimum
    solar_prog = solar_predictor.predict_solar_device(
        self.solar[s], start_hour_dt, end_prog
    )
  File "/root/dao/prog/solar_predictor.py", line 1036, in predict_solar_device
    raise FileNotFoundError(
        f"Er is geen model aanwezig voor {self.solar_name},svp eerst trainen."
    )
FileNotFoundError: Er is geen model aanwezig voor pv_schuin_dak,svp eerst trainen.
Er is geen model aanwezig voor pv_schuin_dak,svp eerst trainen.
En hierbij mijn config:
quote: 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
{
  "homeassistant": {},
  "database ha": {
    "password": "!secret db_ha_password"
  },
  "database da": {
    "engine": "mysql",
    "server": "core-mariadb",
    "port": 3306,
    "database": "day_ahead",
    "username": "day_ahead",
    "password": "!secret db_da_password"
  },
  "meteoserver-key": "!secret meteoserver-key",
  "prices": {
    "source day ahead": "nordpool",
    "entsoe-api-key": "!secret entsoe-api-key",
    "regular high": 0.5,
    "regular low": 0.4,
    "switch to low": 23,
    "energy taxes consumption": {
      "2025-01-01": 0.10154
    },
    "energy taxes production": {
      "2025-01-01": 0.10154
    },
    "cost supplier consumption": {
      "2024-08-01": 0.02
    },
    "cost supplier production": {
      "2024-08-01": 0.02
    },
    "vat consumption": {
      "2023-01-01": 21
    },
    "vat production": {
      "2023-01-01": 21
    },
    "last invoice": "2025-07-18",
    "tax refund": "True"
  },
  "logging level": "info",
  "use_calc_baseload": "False",
  "baseload calc periode": 7,
  "baseload": [
    0.19, 0.18, 0.17, 0.17, 0.18, 0.17, 0.20, 0.22, 0.15, 0.18, 0.15, 0.28, 
    0.13, 0.25, 0.26, 0.36, 0.34, 0.34, 0.30, 0.29, 0.35, 0.32, 0.31, 0.23 
  ],
  "graphical backend": "",
  "graphics": {
    "style": "Solarize_Light2",
    "show": "true",
    "battery balance": "False",
    "prices consumption": "True",
    "prices production": "False",
    "prices spot": "True",
    "average consumption": "True"
  },
  
  "interval": "1hour", 
  "strategy": "minimize cost",
  "notifications": {
    "enabled": "False"
  },
  "grid": {
    "max_power": 17
  },
  "history": {
    "save days": 7
  },
  "dashboard": {
    "port": 5000
   },
  "boiler": {
    "boiler present": "True",
    "boiler heated by heatpump": "True",
    "entity boiler enabled": "input_boolean.dao_boiler_enabled",
    "entity instant start": "input_boolean.dao_dhw_start_run_now",
    "entity actual temp.": "sensor.ithodaalderop_amber_domestic_hot_water_temperature",
    "entity setpoint": "sensor.dhw_setpoint",
    "entity hysterese": "input_number.dao_boiler_hysterese",
    "cop": 3.4,
    "cooling rate": 0.2,
    "volume": 270,
    "heating allowed below": "input_number.dao_boiler_heating_allowed_below",
    "elec. power": 1750,
    "activate service": "press",
    "activate entity": "input_button.dao_dhw_active_run"
  },
  "heating": {
    "heater present": "True",
    "adjustment": "heating curve",
    "degree days factor": 4.1,
    "stages": [
     { "max_power": 1566, "cop": 3.80 },
     { "max_power": 1387, "cop": 4.05 },
     { "max_power": 1283, "cop": 4.34 },
     { "max_power":  988, "cop": 4.69 },
     { "max_power":  865, "cop": 5.05 },
     { "max_power":  748, "cop": 5.50 },
     { "max_power":  563, "cop": 5.87 },
     { "max_power":  436, "cop": 6.84 }
    ],
    "entity adjust heating curve": "input_number.dao_thermostaat_hysterese",
    "adjustment factor": 0.05
  },
  "battery": [],
  "solar": [
    {
      "name": "pv schuin dak",
      "entity pv switch": "",
      "ml_prediction": "true",
      "entities sensors": ["sensor.envoy_122320106024_lifetime_energy_production"],
      "strings": [
        { "tilt": 30, "orientation": 70, "capacity": 1.72, "max power": 1.32, "yield": 0.003655 },
        { "tilt": 30, "orientation": -20, "capacity": 2.15, "max power": 1.65, "yield": 0.00456875 },
        { "tilt": 30, "orientation": -70, "capacity": 1.72, "max power": 1.32, "yield": 0.003655 }
      ]
    },
    {
      "name": "pv garage",
      "tilt": 0,
      "orientation": -45,
      "capacity": 2.745,
      "max power": 2.5,
      "yield": 0.002667975,
      "entity pv switch": "",
      "ml_prediction": "true",
      "entities sensors": ["sensor.zonnepanelen_garage_energie_export"]
    }
  ],
  "electric vehicle": [],
  "machines": [],

  "report": {
    "entities grid consumption": [
      "sensor.p1_electricity_consumed_off_peak_cumulative",
      "sensor.p1_electricity_consumed_peak_cumulative"
    ],
    "entities grid production": [
      "sensor.p1_electricity_produced_off_peak_cumulative",
      "sensor.p1_electricity_produced_peak_cumulative"
    ],
    "entities solar production ac": [
      "sensor.zonnepanelen_garage_energie_export",
      "sensor.envoy_122320106024_lifetime_energy_production"
    ],
    "entities solar production dc": [],
    "entities ev consumption": ["sensor.easee_laadpaal_levensduur_verbruik"],
    "entities wp consumption": ["sensor.daily_wp_consumption_heating"],
    "entities boiler consumption": ["sensor.daily_wp_consumption_hot_water"],
    "entities battery consumption": [],
    "entities battery production": [],
    "entity co2-intensity": ["sensor.co2_signal_co2_intensity"]
  },
  "scheduler": {
    "active": "true",
    "0005": "train_ml_predictions",
    "0430": "get_meteo_data",
    "1030": "get_meteo_data",
    "1630": "get_meteo_data",
    "2230": "get_meteo_data",
    "1255": "get_day_ahead_prices",
    "1355": "get_day_ahead_prices",
    "1455": "get_day_ahead_prices",
    "1554": "get_day_ahead_prices",
    "1655": "get_day_ahead_prices",
    "xx00": "calc_optimum",
    "xx15": "calc_optimum",
    "xx30": "calc_optimum",
    "xx45": "calc_optimum",
    "2359": "clean_data"
  }
}
Hopelijk heb je wat aan deze gegevens voor de foutopsporing.

Ter info.
sensor.envoy_122320106024_lifetime_energy_production
state_class: total_increasing
unit_of_measurement: kWh
device_class: energy
friendly_name: Envoy 122320106024 Lifetime energy production

sensor.zonnepanelen_garage_energie_export
state_class: total_increasing
unit_of_measurement: kWh
device_class: energy
friendly_name: Zonnepanelen - Garage Energie export

Edit:
Na nog een paar keer klikken op train model:
quote: rapportage
code:
1
2
3
4
5
6
2026-01-27 21:50:33 info: Day Ahead Optimalisering versie: 2026.01.2
2026-01-27 21:50:33 info: Day Ahead Optimalisering gestart op: 27-01-2026 21:50:33
2026-01-27 21:50:33 info: Day Ahead Optimalisatie gestart: 27-01-2026 21:50:33 taak: train_ml_predictions
2026-01-27 21:50:33 info: KNMI-weerstation: 344 ROTTERDAM
2026-01-27 21:50:33 info: Er zijn nog geen knmi-data aanwezig
2026-01-27 21:50:34 info: Er zijn data van het KNMI binnengekomen vanaf 2023-01-26 00:00:00+01:00 tot en met 2026-01-25 23:00:00+01:00
Dat er nog geen data is voor de laatste twee dagen is bekend. Dat heb je al vaker mede gedeeld maar denk ik geef je alle info die ik kan geven.

Soms verdwijnt het tabblad solar ook bij mij.
Afbeeldingslocatie: https://tweakers.net/i/bYK-e99dN5ObiyDcMxuqWvYHOCU=/232x232/filters:strip_icc():strip_exif()/f/image/pj5b2ds0OwFXzxCFFAqlW8HN.jpg?f=fotoalbum_tileAfbeeldingslocatie: https://tweakers.net/i/7UCk8JKTYAbt1p84pqFPd7zN-rg=/232x232/filters:strip_icc():strip_exif()/f/image/zlL5sAzoYh5WzXzTXWCYGeyj.jpg?f=fotoalbum_tile
Maar ik de log kan ik hier helemaal niets over vinden...

Edit 2:

Ik heb de training in de log verplaatst naar 22:00 zodat het automatisch ging.
quote: HA add-on 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
../data/options.json MODIFY 
Setting up watches.
Watches established.
2026-01-27 22:00:00 info: Day Ahead Optimalisering versie: 2026.01.2
2026-01-27 22:00:00 info: Day Ahead Optimalisering gestart op: 27-01-2026 22:00:00
2026-01-27 22:00:00 info: Day Ahead Optimalisatie gestart: 27-01-2026 22:00:00 taak: train_ml_predictions
2026-01-27 22:00:03 info: KNMI-weerstation: 344 ROTTERDAM
2026-01-27 22:00:03 info: Er zijn nog geen knmi-data aanwezig
2026-01-27 22:00:05 info: Er zijn data van het KNMI binnengekomen vanaf 2023-01-26 00:00:00+01:00 tot en met 2026-01-25 23:00:00+01:00
2026-01-27 22:00:03 info: Er zijn nog geen knmi-data aanwezig
2026-01-27 22:00:05 info: Er zijn data van het KNMI binnengekomen vanaf 2023-01-26 00:00:00+01:00 tot en met 2026-01-25 23:00:00+01:00
2026-01-27 22:03:23 info: Er zijn data van het KNMI binnengekomen vanaf 2026-01-25 00:00:00+01:00 tot en met 2026-01-25 23:00:00+01:00
2026-01-27 22:03:38 info: Starting solar prediction model for pv_schuin_dak training...
2026-01-27 22:03:38 info: Loading and processing data...
2026-01-27 22:03:40 info: Merging weather and solar data...
2026-01-27 22:03:40 info: Merged dataset: 20747 records
2026-01-27 22:03:40 info: Date range: 2023-09-14 13:00:00+00:00 to 2026-01-25 23:00:00+00:00
2026-01-27 22:03:40 info: Detecting outliers...
2026-01-27 22:03:40 info: Outliers removed: 507 (2.4%)
2026-01-27 22:03:40 info: Clean dataset: 20240 records
2026-01-27 22:03:40 info: Training samples: 16192
2026-01-27 22:03:40 info: Testing samples: 4048
2026-01-27 22:03:40 info: Tune hyperparameters: True
2026-01-27 22:03:40 info: Tuning hyperparameters...
2026-01-27 22:03:40 info: Parameter grid: {'n_estimators': [100, 200, 300], 'max_depth': [3, 4, 6], 'learning_rate': [0.05, 0.1, 0.15], 'subsample': [0.8, 0.9]}
2026-01-27 22:03:55 info: Best parameters: {'learning_rate': 0.15, 'max_depth': 3, 'n_estimators': 300, 'subsample': 0.9}
2026-01-27 22:03:55 info: Training final model...
2026-01-27 22:03:55 info: Parameters: {'learning_rate': 0.15, 'max_depth': 3, 'n_estimators': 300, 'subsample': 0.9}
2026-01-27 22:03:55 info: Model training van pv_schuin_dak complete
2026-01-27 22:03:55 info: Model saved to: ../data/prediction/models/pv_schuin_dak.pkl
2026-01-27 22:03:55 info: Training MAE: 0.0001 kWh
2026-01-27 22:03:55 info: Testing MAE: 0.0001 kWh
2026-01-27 22:03:55 info: Training R²: 0.9694
2026-01-27 22:03:55 info: Testing R²: 0.9560
2026-01-27 22:03:55 info: Sorted features:
2026-01-27 22:03:55 info:   1. irradiance: 0.957
2026-01-27 22:03:55 info:   2. hour: 0.025
2026-01-27 22:03:55 info:   3. week_nr: 0.012
2026-01-27 22:03:55 info:   4. temperature: 0.006
2026-01-27 22:03:55 info:   5. day_of_week: 0.000
2026-01-27 22:03:55 info:   6. quarter: 0.000
2026-01-27 22:03:55 info:   7. month: 0.000
2026-01-27 22:03:55 info:   8. season: 0.000
2026-01-27 22:04:05 info: Starting solar prediction model for pv_garage training...
2026-01-27 22:04:05 info: Loading and processing data...
2026-01-27 22:04:07 info: Merging weather and solar data...
2026-01-27 22:04:07 info: Merged dataset: 15916 records
2026-01-27 22:04:07 info: Date range: 2024-04-02 20:00:00+00:00 to 2026-01-25 23:00:00+00:00
2026-01-27 22:04:07 info: Detecting outliers...
2026-01-27 22:04:07 info: Outliers removed: 263 (1.7%)
2026-01-27 22:04:07 info: Clean dataset: 15653 records
2026-01-27 22:04:07 info: Training samples: 12522
2026-01-27 22:04:07 info: Testing samples: 3131
2026-01-27 22:04:07 info: Tune hyperparameters: True
2026-01-27 22:04:07 info: Tuning hyperparameters...
2026-01-27 22:04:07 info: Parameter grid: {'n_estimators': [100, 200, 300], 'max_depth': [3, 4, 6], 'learning_rate': [0.05, 0.1, 0.15], 'subsample': [0.8, 0.9]}
Hier zie je geen foutmeldingen. Maar ik blijf de internal server error houden op het tabblad Solar (dat soms ook verdwenen is).

Edit 3:

Het probleem is boven gekomen volgens mij. Zodra een model getraind is, is de internal server error verdwenen. Maar alleen als je deze traint via de config op een bepaald tijdstip. Niet via Run -> ML modellen trainen. Ik krijg wel de internal server error als ik op pv_garage klik als daar het trainen nog niet gereed is.

Afbeeldingslocatie: https://tweakers.net/i/LHW3EcejF-VFLVLYmCmH2MqOhes=/fit-in/4920x3264/filters:max_bytes(3145728):no_upscale():strip_icc():strip_exif()/f/image/RngxqvugE7EKYlLnuK0UhlCz.jpg?f=user_large

[ Voor 44% gewijzigd door Impossibl3 op 27-01-2026 22:11 ]

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

Impossibl3 schreef op dinsdag 27 januari 2026 @ 21:39:
Ik krijg ook een Internal Server Error sinds ik vandaag de "train_ml_predictions" heb toegevoegd. Als ik op "ML modellen trainen" klik onder "Run" na "Meteoprognoses ophalen" gaat het is.


[...]


En hierbij mijn config:

[...]


Hopelijk heb je wat aan deze gegevens voor de foutopsporing.

Ter info.
sensor.envoy_122320106024_lifetime_energy_production
state_class: total_increasing
unit_of_measurement: kWh
device_class: energy
friendly_name: Envoy 122320106024 Lifetime energy production

sensor.zonnepanelen_garage_energie_export
state_class: total_increasing
unit_of_measurement: kWh
device_class: energy
friendly_name: Zonnepanelen - Garage Energie export

Edit:
Na nog een paar keer klikken op train model:


[...]


Dat er nog geen data is voor de laatste twee dagen is bekend. Dat heb je al vaker mede gedeeld maar denk ik geef je alle info die ik kan geven.

Soms verdwijnt het tabblad solar ook bij mij.
[Afbeelding][Afbeelding]
Maar ik de log kan ik hier helemaal niets over vinden...

Edit 2:

Ik heb de training in de log verplaatst naar 22:00 zodat het automatisch ging.


[...]


Hier zie je geen foutmeldingen. Maar ik blijf de internal server error houden op het tabblad Solar (dat soms ook verdwenen is).

Edit 3:

Het probleem is boven gekomen volgens mij. Zodra een model getraind is, is de internal server error verdwenen. Maar alleen als je deze traint via de config op een bepaald tijdstip. Niet via Run -> ML modellen trainen. Ik krijg wel de internal server error als ik op pv_garage klik als daar het trainen nog niet gereed is.

[Afbeelding]
Dank voor deze aanvulling en verheldering.
Ik ga een check inbouwen op de aanwezigheid van het model, zo niet dan volgt er een nette foutmelding.

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


  • wmc
  • Registratie: November 2012
  • Laatst online: 13:39

wmc

Is er iemand anders die vandaag ook tegen "geen oplossing gevonden voor: minimize cost" aanloopt?
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
2026-01-28 15:45:00 info: Day Ahead Optimalisering versie: 2026.01.2
2026-01-28 15:45:00 info: Day Ahead Optimalisering gestart op: 28-01-2026 15:45:00
2026-01-28 15:45:00 info: Day Ahead Optimalisatie gestart: 28-01-2026 15:45:00 taak: calc_optimum
2026-01-28 15:45:00 info: Debug = False
2026-01-28 15:45:00 info: Baseload uit instellingen
2026-01-28 15:45:00 info: Start waarden: 
       uur                tijd  spot   p_l   p_t  base  pv_ac  pv_dc
0    15:45 2026-01-28 15:45:00 0.145 0.311 0.287 0.075  0.039      0
1    16:00 2026-01-28 16:00:00 0.140 0.306 0.281 0.075  0.017      0
2    16:15 2026-01-28 16:15:00 0.143 0.309 0.284 0.075  0.013      0
3    16:30 2026-01-28 16:30:00 0.148 0.315 0.290 0.075  0.009      0
4    16:45 2026-01-28 16:45:00 0.157 0.325 0.301 0.075  0.006      0
5    17:00 2026-01-28 17:00:00 0.148 0.315 0.290 0.075  0.004      0
6    17:15 2026-01-28 17:15:00 0.168 0.339 0.315 0.075  0.001      0
7    17:30 2026-01-28 17:30:00 0.168 0.339 0.315 0.075  0.000      0
8    17:45 2026-01-28 17:45:00 0.170 0.341 0.316 0.075  0.000      0
9    18:00 2026-01-28 18:00:00 0.174 0.346 0.321 0.070  0.000      0
10   18:15 2026-01-28 18:15:00 0.172 0.343 0.318 0.070  0.000      0
11   18:30 2026-01-28 18:30:00 0.168 0.339 0.315 0.070  0.000      0
12   18:45 2026-01-28 18:45:00 0.168 0.339 0.314 0.089  0.000      0
13   19:00 2026-01-28 19:00:00 0.170 0.341 0.316 0.127  0.000      0
14   19:15 2026-01-28 19:15:00 0.167 0.337 0.313 0.145  0.000      0
15   19:30 2026-01-28 19:30:00 0.161 0.331 0.306 0.164  0.000      0
16   19:45 2026-01-28 19:45:00 0.147 0.314 0.289 0.164  0.000      0
17   20:00 2026-01-28 20:00:00 0.145 0.311 0.286 0.153  0.000      0
18   20:15 2026-01-28 20:15:00 0.136 0.300 0.275 0.153  0.000      0
19   20:30 2026-01-28 20:30:00 0.134 0.298 0.273 0.153  0.000      0
20   20:45 2026-01-28 20:45:00 0.121 0.282 0.257 0.141  0.000      0
21   21:00 2026-01-28 21:00:00 0.130 0.293 0.268 0.117  0.000      0
22   21:15 2026-01-28 21:15:00 0.119 0.280 0.255 0.105  0.000      0
23   21:30 2026-01-28 21:30:00 0.113 0.272 0.247 0.092  0.000      0
24   21:45 2026-01-28 21:45:00 0.110 0.269 0.244 0.086  0.000      0
25   22:00 2026-01-28 22:00:00 0.123 0.285 0.260 0.083  0.000      0
26   22:15 2026-01-28 22:15:00 0.115 0.275 0.250 0.077  0.000      0
27   22:30 2026-01-28 22:30:00 0.117 0.277 0.253 0.070  0.000      0
28   22:45 2026-01-28 22:45:00 0.109 0.267 0.243 0.070  0.000      0
29   23:00 2026-01-28 23:00:00 0.119 0.280 0.255 0.075  0.000      0
30   23:15 2026-01-28 23:15:00 0.110 0.269 0.244 0.075  0.000      0
31   23:30 2026-01-28 23:30:00 0.110 0.269 0.244 0.075  0.000      0
32   23:45 2026-01-28 23:45:00 0.104 0.261 0.237 0.075  0.000      0
33   00:00 2026-01-29 00:00:00 0.087 0.241 0.217 0.075  0.000      0
34   00:15 2026-01-29 00:15:00 0.101 0.257 0.233 0.075  0.000      0
35   00:30 2026-01-29 00:30:00 0.104 0.261 0.236 0.075  0.000      0
36   00:45 2026-01-29 00:45:00 0.102 0.259 0.234 0.075  0.000      0
37   01:00 2026-01-29 01:00:00 0.106 0.264 0.239 0.075  0.000      0
38   01:15 2026-01-29 01:15:00 0.104 0.261 0.237 0.075  0.000      0
39   01:30 2026-01-29 01:30:00 0.101 0.258 0.233 0.075  0.000      0
40   01:45 2026-01-29 01:45:00 0.102 0.260 0.235 0.075  0.000      0
41   02:00 2026-01-29 02:00:00 0.100 0.256 0.231 0.075  0.000      0
42   02:15 2026-01-29 02:15:00 0.099 0.256 0.231 0.075  0.000      0
43   02:30 2026-01-29 02:30:00 0.101 0.258 0.233 0.075  0.000      0
44   02:45 2026-01-29 02:45:00 0.100 0.257 0.232 0.075  0.000      0
45   03:00 2026-01-29 03:00:00 0.100 0.257 0.232 0.075  0.000      0
46   03:15 2026-01-29 03:15:00 0.100 0.257 0.232 0.075  0.000      0
47   03:30 2026-01-29 03:30:00 0.099 0.256 0.231 0.075  0.000      0
48   03:45 2026-01-29 03:45:00 0.098 0.255 0.230 0.075  0.000      0
49   04:00 2026-01-29 04:00:00 0.099 0.255 0.230 0.073  0.000      0
50   04:15 2026-01-29 04:15:00 0.099 0.255 0.231 0.073  0.000      0
51   04:30 2026-01-29 04:30:00 0.099 0.256 0.231 0.073  0.000      0
52   04:45 2026-01-29 04:45:00 0.103 0.260 0.235 0.080  0.000      0
53   05:00 2026-01-29 05:00:00 0.101 0.258 0.233 0.092  0.000      0
54   05:15 2026-01-29 05:15:00 0.102 0.259 0.234 0.098  0.000      0
55   05:30 2026-01-29 05:30:00 0.107 0.265 0.240 0.105  0.000      0
56   05:45 2026-01-29 05:45:00 0.107 0.265 0.240 0.105  0.000      0
57   06:00 2026-01-29 06:00:00 0.104 0.261 0.236 0.102  0.000      0
58   06:15 2026-01-29 06:15:00 0.102 0.259 0.234 0.102  0.000      0
59   06:30 2026-01-29 06:30:00 0.106 0.263 0.239 0.102  0.000      0
60   06:45 2026-01-29 06:45:00 0.115 0.275 0.250 0.095  0.000      0
61   07:00 2026-01-29 07:00:00 0.105 0.262 0.237 0.083  0.000      0
62   07:15 2026-01-29 07:15:00 0.124 0.286 0.261 0.077  0.000      0
63   07:30 2026-01-29 07:30:00 0.147 0.313 0.289 0.070  0.000      0
64   07:45 2026-01-29 07:45:00 0.153 0.320 0.295 0.070  0.001      0
65   08:00 2026-01-29 08:00:00 0.155 0.323 0.298 0.075  0.003      0
66   08:15 2026-01-29 08:15:00 0.149 0.316 0.291 0.075  0.004      0
67   08:30 2026-01-29 08:30:00 0.162 0.331 0.307 0.075  0.006      0
68   08:45 2026-01-29 08:45:00 0.163 0.333 0.308 0.075  0.017      0
69   09:00 2026-01-29 09:00:00 0.167 0.338 0.313 0.075  0.039      0
70   09:15 2026-01-29 09:15:00 0.156 0.324 0.300 0.075  0.051      0
71   09:30 2026-01-29 09:30:00 0.155 0.324 0.299 0.075  0.062      0
72   09:45 2026-01-29 09:45:00 0.155 0.324 0.299 0.075  0.069      0
73   10:00 2026-01-29 10:00:00 0.157 0.325 0.301 0.075  0.074      0
74   10:15 2026-01-29 10:15:00 0.154 0.322 0.297 0.075  0.080      0
75   10:30 2026-01-29 10:30:00 0.143 0.309 0.284 0.075  0.086      0
76   10:45 2026-01-29 10:45:00 0.139 0.304 0.279 0.075  0.083      0
77   11:00 2026-01-29 11:00:00 0.148 0.315 0.290 0.075  0.071      0
78   11:15 2026-01-29 11:15:00 0.140 0.304 0.280 0.075  0.068      0
79   11:30 2026-01-29 11:30:00 0.136 0.300 0.276 0.075  0.065      0
80   11:45 2026-01-29 11:45:00 0.136 0.300 0.275 0.075  0.068      0
81   12:00 2026-01-29 12:00:00 0.136 0.300 0.275 0.075  0.076      0
82   12:15 2026-01-29 12:15:00 0.131 0.294 0.269 0.075  0.079      0
83   12:30 2026-01-29 12:30:00 0.132 0.295 0.270 0.075  0.082      0
84   12:45 2026-01-29 12:45:00 0.124 0.285 0.261 0.075  0.086      0
85   13:00 2026-01-29 13:00:00 0.136 0.301 0.276 0.075  0.092      0
86   13:15 2026-01-29 13:15:00 0.127 0.289 0.264 0.075  0.096      0
87   13:30 2026-01-29 13:30:00 0.127 0.289 0.264 0.075  0.100      0
88   13:45 2026-01-29 13:45:00 0.129 0.291 0.267 0.075  0.103      0
89   14:00 2026-01-29 14:00:00 0.130 0.293 0.268 0.075  0.109      0
90   14:15 2026-01-29 14:15:00 0.128 0.291 0.266 0.075  0.115      0
91   14:30 2026-01-29 14:30:00 0.134 0.297 0.272 0.075  0.124      0
92   14:45 2026-01-29 14:45:00 0.136 0.301 0.276 0.075  0.121      0
93   15:00 2026-01-29 15:00:00 0.135 0.299 0.274 0.075  0.114      0
94   15:15 2026-01-29 15:15:00 0.139 0.304 0.279 0.075  0.119      0
95   15:30 2026-01-29 15:30:00 0.140 0.305 0.280 0.075  0.132      0
96   15:45 2026-01-29 15:45:00 0.146 0.312 0.288 0.075  0.109      0
97   16:00 2026-01-29 16:00:00 0.140 0.305 0.280 0.075  0.035      0
98   16:15 2026-01-29 16:15:00 0.146 0.312 0.287 0.075  0.024      0
99   16:30 2026-01-29 16:30:00 0.146 0.312 0.288 0.075  0.015      0
100  16:45 2026-01-29 16:45:00 0.155 0.323 0.298 0.075  0.009      0
101  17:00 2026-01-29 17:00:00 0.151 0.318 0.294 0.075  0.007      0
102  17:15 2026-01-29 17:15:00 0.154 0.322 0.297 0.075  0.001      0
103  17:30 2026-01-29 17:30:00 0.158 0.326 0.302 0.075  0.000      0
104  17:45 2026-01-29 17:45:00 0.159 0.328 0.303 0.075  0.000      0
105  18:00 2026-01-29 18:00:00 0.155 0.323 0.298 0.070  0.000      0
106  18:15 2026-01-29 18:15:00 0.156 0.324 0.299 0.070  0.000      0
107  18:30 2026-01-29 18:30:00 0.153 0.321 0.296 0.070  0.000      0
108  18:45 2026-01-29 18:45:00 0.154 0.322 0.297 0.089  0.000      0
109  19:00 2026-01-29 19:00:00 0.149 0.316 0.291 0.127  0.000      0
110  19:15 2026-01-29 19:15:00 0.149 0.316 0.291 0.145  0.000      0
111  19:30 2026-01-29 19:30:00 0.149 0.316 0.291 0.164  0.000      0
112  19:45 2026-01-29 19:45:00 0.131 0.294 0.269 0.164  0.000      0
113  20:00 2026-01-29 20:00:00 0.140 0.305 0.280 0.153  0.000      0
114  20:15 2026-01-29 20:15:00 0.121 0.282 0.257 0.153  0.000      0
115  20:30 2026-01-29 20:30:00 0.115 0.275 0.250 0.153  0.000      0
116  20:45 2026-01-29 20:45:00 0.110 0.269 0.244 0.141  0.000      0
117  21:00 2026-01-29 21:00:00 0.119 0.279 0.254 0.117  0.000      0
118  21:15 2026-01-29 21:15:00 0.113 0.273 0.248 0.105  0.000      0
119  21:30 2026-01-29 21:30:00 0.109 0.268 0.243 0.092  0.000      0
120  21:45 2026-01-29 21:45:00 0.104 0.262 0.237 0.086  0.000      0
121  22:00 2026-01-29 22:00:00 0.113 0.272 0.247 0.083  0.000      0
122  22:15 2026-01-29 22:15:00 0.109 0.267 0.243 0.077  0.000      0
123  22:30 2026-01-29 22:30:00 0.109 0.267 0.243 0.070  0.000      0
124  22:45 2026-01-29 22:45:00 0.105 0.263 0.238 0.070  0.000      0
125  23:00 2026-01-29 23:00:00 0.111 0.270 0.245 0.075  0.000      0
126  23:15 2026-01-29 23:15:00 0.101 0.258 0.233 0.075  0.000      0
127  23:30 2026-01-29 23:30:00 0.103 0.260 0.236 0.075  0.000      0
128  23:45 2026-01-29 23:45:00 0.095 0.251 0.226 0.075  0.000      0
2026-01-28 15:45:00 info: No reduced hours applied for Thuisbatterij
2026-01-28 15:45:00 info: Startwaarde SoC Thuisbatterij: 62.8%

2026-01-28 15:45:00 info: Boiler niet aanwezig of staat uit, boiler wordt niet ingepland
2026-01-28 15:45:00 info: Gewogen graaddagen vandaag: 14.1 K.day
2026-01-28 15:45:00 info: Gewogen graaddagen morgen: 17.1 K.day
2026-01-28 15:45:00 info: Gewogen graaddagen totaal: 31.3 K.day
2026-01-28 15:45:00 info: Degree days factor: 8.0 kWh/K.day
2026-01-28 15:45:00 info: Totaal benodigde warmte: 250.1 kWh
2026-01-28 15:45:00 info: Reeds geproduceerde warmte: 71.7 kWh
2026-01-28 15:45:00 info: Nog benodigde warmte: 178.4 kWh
2026-01-28 15:45:00 info: Regeling warmtepomp: on/off
2026-01-28 15:45:00 info: Actuele warmtevraag: Nee
2026-01-28 15:45:00 info: Minimale runlengte 2 uur
2026-01-28 15:45:00 info: Beschikbaar zijn: 32 uur
2026-01-28 15:45:00 info: On/off warmtepomp wordt ingepland
2026-01-28 15:45:00 info: Gem. buitentemperatuur vandaag: 3.2 °C
2026-01-28 15:45:00 info: Gem. buitentemperatuur morgen: 0.4 °C
2026-01-28 15:45:00 info: Voorspelde gemiddelde buiten temperatuur: 1.8 °C
2026-01-28 15:45:00 info: COP: 5.0
2026-01-28 15:45:00 info: Elektrisch vermogen: 2.2 kW-e
2026-01-28 15:45:00 info: Thermisch vermogen: 11.1 kW-th
2026-01-28 15:45:00 info: Ingepland worden: 17 uur
2026-01-28 15:45:00 info: Warmtepomp staat stil
2026-01-28 15:45:00 info: Eerste blok van 2 uur
2026-01-28 15:45:00 info: Tussenin 7 blokken van 2 uur
2026-01-28 15:45:00 info: Laatste blok van 1.0 uur
2026-01-28 15:45:00 info: Totaal aantal blokken: 9
2026-01-28 15:45:00 info: Strategie: minimale kosten
2026-01-28 15:45:00 info: Maximale fout (maximal gap): 0.010000 euro
2026-01-28 15:45:21 info: Rekentijd: 21.62 sec
2026-01-28 15:45:21 waarschuwing: Geen oplossing voor: minimize cost
Ik zie geen onhaalbare oplossing (17u pas in 31u voor de warmtepomp) en heb de maximale fout op de kosten al verhoogd naar 1 cent.

Edit: Het lijkt een beetje onvoorspelbaar, zowel 1530h en 1600h geven een oplossing 1545h niet. Dit was eerder op de dag ook al.
Testversie 2026.01.2.rc3 is gepubliceerd.
Dit staat in de changelog:
  • Adjustments in documentation (#521, @storeman )
  • Fix error calculation of pv-prognose in api should be done with ml_prediction if configured (reported by @Dogooder )
  • Fix error when HA-sensor has unit_of_measurement="MWh" (reported by @itavero )
  • Catched error when ml_prediction=true and there is no trained model: with warning-logging and use dao-prediction as fallback
  • Fixed groupby-error with mysql(with "ONLY_FULL_GROUP_BY") and postgresql
Ik verwacht dat hiermee ook de laatste "Internal Server Error"s voorbij zijn.

Ik hoop dat jullie weer tijd vinden om deze versie te testen en de resultaten terug te koppelen.

Edit:
Het gemelde probleem dat bij lage en hoge SoC het vermogen van de batterij beperkt is heb ik nog niet kunnen oplossen. Ik kan het wel makkelijk configureren maar softwarematig dat verwerken in extra constraints is mij nog niet gelukt. Ik blijf het verder bestuderen. Suggesties zijn welkom.
Ik hoop dat ik inmiddels toch een oplossing heb gevonden: ik ga het eerst testen.
Wordt binnenkort vervolgd.....

[ Voor 5% gewijzigd door KC27 op 30-01-2026 23:02 ]

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


  • Dogooder
  • Registratie: April 2004
  • Laatst online: 11:43

Dogooder

dus...

Versie 2026.01.2.rc3 geïnstalleerd en hij geeft ineens geen oplossing meer. Versie 2026.01.1 had dat een kwartier geleden nog wel. Na terugzetten van 2026.01.1 werkt het weer naar behoren.

Daarbij de volgende bug gespot:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2026-01-30 23:24:42,678 fout dao.webserver.app MainThread : Exception on /api/report/pv_dc/vandaag_en_morgen [GET]
Traceback (most recent call last):
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 1511, in wsgi_app
    response = self.full_dispatch_request()
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 919, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 917, in full_dispatch_request
    rv = self.dispatch_request()
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 902, in dispatch_request
    return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)  # type: ignore[no-any-return]
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/root/dao/webserver/app/routes.py", line 765, in api_report
    result = report.get_api_data(fld, periode, cumulate=cumulate)
  File "/root/dao/prog/da_report.py", line 3244, in get_api_data
    df_pv = self.get_pv_prognose(field, vanaf, tot)
  File "/root/dao/prog/da_report.py", line 3167, in get_pv_prognose
    solar_option = self.solar[s]
                   ~~~~~~~~~~^^^
IndexError: list index out of range
Dogooder schreef op vrijdag 30 januari 2026 @ 23:36:
Versie 2026.01.2.rc3 geïnstalleerd en hij geeft ineens geen oplossing meer. Versie 2026.01.1 had dat een kwartier geleden nog wel. Na terugzetten van 2026.01.1 werkt het weer naar behoren.

Daarbij de volgende bug gespot:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2026-01-30 23:24:42,678 fout dao.webserver.app MainThread : Exception on /api/report/pv_dc/vandaag_en_morgen [GET]
Traceback (most recent call last):
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 1511, in wsgi_app
    response = self.full_dispatch_request()
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 919, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 917, in full_dispatch_request
    rv = self.dispatch_request()
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 902, in dispatch_request
    return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)  # type: ignore[no-any-return]
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/root/dao/webserver/app/routes.py", line 765, in api_report
    result = report.get_api_data(fld, periode, cumulate=cumulate)
  File "/root/dao/prog/da_report.py", line 3244, in get_api_data
    df_pv = self.get_pv_prognose(field, vanaf, tot)
  File "/root/dao/prog/da_report.py", line 3167, in get_pv_prognose
    solar_option = self.solar[s]
                   ~~~~~~~~~~^^^
IndexError: list index out of range
Dank voor het testen!
Zie volgende post.

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

Er is een nieuwe testversie gepubliceerd: 2026.02.0.rc1
Changelog:
Fix error api predict pv_dc (reported by @Dogooder)

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


  • Jorisstomp1993
  • Registratie: Maart 2023
  • Laatst online: 04-02 13:33
Goedemiddag!

ik probeer de DAO in gebruik te nemen maar krijg hem niet aan de gang.

=> directory dao_data exist
=> /root/dao/data doesn't exist, made
=> /root/dao/webserver/app/static/data exist
./run.sh: line 50: 8 Illegal instruction (core dumped) python3 check_db.py
Setting up watches.
Watches established.

Iemand een idee?

versie: 2026.01.2

  • simnet
  • Registratie: Januari 2020
  • Laatst online: 10:25
Jorisstomp1993 schreef op zaterdag 31 januari 2026 @ 13:43:
Goedemiddag!

ik probeer de DAO in gebruik te nemen maar krijg hem niet aan de gang.

=> directory dao_data exist
=> /root/dao/data doesn't exist, made
=> /root/dao/webserver/app/static/data exist
./run.sh: line 50: 8 Illegal instruction (core dumped) python3 check_db.py
Setting up watches.
Watches established.

Iemand een idee?

versie: 2026.01.2
Illegal instruction betekend dat de software een instructie aanroept die de cpu niet ondersteunt.
Wat voor CPU gebruik je? Is het wel 64bit?
arjenhiemstra schreef op zondag 25 januari 2026 @ 12:05:
[...]


Zou echt super fijn zijn! Speelt bij mij ook, zowel bij laden als ontladen. Ik weet eigenlijk niet eens of ik dat terug zie in de data van de omvormer maar het is wel een voorspelbaar patroon. Ie. het zou super zijn als zoiets in te stellen is:
soccharge capacity (%)
070
580
1090
20100
8090
9080
9570
Percentage zou dan gerelateerd zijn aan de settings dc_to_bat max power en bat_to_dc_max power denk ik.
Andere optie zou zijn om per soc blok de max power direct in te kunnen stellen.
Nog twee vragen m.b.t. bovenstaande tabel:
  1. is de beperking bij de lage SoC alleen bij ontladen of ook bij laden?
  2. en vice versa: is de beperking bij de hoge SoC alleen bij laden of ook bij ontladen?

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


  • djoenez
  • Registratie: April 2007
  • Laatst online: 07:31
KC27 schreef op zondag 25 januari 2026 @ 11:31:
[...]

Waarschijnlijk is dit issue opgelost met versie 2026.01.2.
Mocht dat niet zo zijn dan moet je als volgt handelen:
- genereer de fout weer opnieuw
- ga in HA naar Instellingen/Addons/DAO klik daar op "logging"
- deel hier of via een dm de track-tracing van de fout
Eindelijk hier aan toegekomen, jammer genoeg wordt er niets in de log gegenereerd. de error is nog steeds hetzelfde: "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."

Ik draai de laatste stable: 2026.01.02
Kun je met samba bij je ha folders?
In de map addon-configs is een map van DAO.
Daarin zit een map met de naam "log" en daarin een bestand met de naam "dashboard.log" (zonder datum is van vandaag,). Wat staat daarin?

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


  • Jorisstomp1993
  • Registratie: Maart 2023
  • Laatst online: 04-02 13:33
simnet schreef op zaterdag 31 januari 2026 @ 14:39:
[...]


Illegal instruction betekend dat de software een instructie aanroept die de cpu niet ondersteunt.
Wat voor CPU gebruik je? Is het wel 64bit?
Ik maak gebruik van een thin client met een AMD G-T56N processor en 8GB ram

  • simnet
  • Registratie: Januari 2020
  • Laatst online: 10:25
Jorisstomp1993 schreef op zaterdag 31 januari 2026 @ 19:22:
[...]


Ik maak gebruik van een thin client met een AMD G-T56N processor en 8GB ram
Die is wel 64bit, maar een bijzondere instructieset (mist een hoop extensies en is al 15 jaar oud).
De vraag is welke python module de illegal instruction gebruikt.
Ik lees op fora posts over numpy, maar het kan ook de mip module zijn.
Je zou kunnen proberen om de mip module te compileren speciaal voor jouw cpu. Dat heeft wel wat voeten in de aarde, maar houdt in dat je het build script in je container draait.

Edit: het is echt een oud beestje. Een raspberry pi4 is ongeveer 2x zo snel. Wellicht een goed moment om eens een upgrade te overwegen?

[ Voor 13% gewijzigd door simnet op 31-01-2026 20:35 ]


  • Jorisstomp1993
  • Registratie: Maart 2023
  • Laatst online: 04-02 13:33
simnet schreef op zaterdag 31 januari 2026 @ 20:26:
[...]


Die is wel 64bit, maar een bijzondere instructieset (mist een hoop extensies en is al 15 jaar oud).
De vraag is welke python module de illegal instruction gebruikt.
Ik lees op fora posts over numpy, maar het kan ook de mip module zijn.
Je zou kunnen proberen om de mip module te compileren speciaal voor jouw cpu. Dat heeft wel wat voeten in de aarde, maar houdt in dat je het build script in je container draait.

Edit: het is echt een oud beestje. Een raspberry pi4 is ongeveer 2x zo snel. Wellicht een goed moment om eens een upgrade te overwegen?
Hmm dat gaat een beetje te ver voor mij! misschien tijd voor andere hardware! ;)

dankje!

  • sailor_dg
  • Registratie: Januari 2019
  • Laatst online: 12:53
mijn batterij doet weinig deze winter - dit is toch correct voor Tibber:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
"energy taxes consumption": {
      "2026-01-01": 0.09157
    },
    "energy taxes production": {
      "2026-01-01": 0.09157

    },
    "cost supplier consumption": {
      "2026-01-01": 0.0248

    },
    "cost supplier production": {
      "2026-01-01": 0.0

    },
    "vat consumption": {
      "2023-01-01": 21
    },
    "vat production": {
      "2023-01-01": 21
    },

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

sailor_dg schreef op zondag 1 februari 2026 @ 09:34:
mijn batterij doet weinig deze winter - dit is toch correct voor Tibber:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
"energy taxes consumption": {
      "2026-01-01": 0.09157
    },
    "energy taxes production": {
      "2026-01-01": 0.09157

    },
    "cost supplier consumption": {
      "2026-01-01": 0.0248

    },
    "cost supplier production": {
      "2026-01-01": 0.0

    },
    "vat consumption": {
      "2023-01-01": 21
    },
    "vat production": {
      "2023-01-01": 21
    },
Die instellingen zien er goed uit.
Mijn batterij doet ook weinig, omdat er weinig spreiding over de dag is in de day-ahead prijzen.
Het zal in de loop van deze maand wel meer gaan variëren als het zonnetje meer gaat schijnen.

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


  • jswinkels
  • Registratie: Oktober 1999
  • Laatst online: 11-02 22:53
Ik heb nog problemen met de ML modeling van mijn solar. Ik krijg de volgende error. Ik las eerder al dat er meer mensen met dit probleem zijn, is hier een oplossing voor?
code:
1
2
3
4
5
6
2026-02-01 12:00:03 info: Day Ahead Optimalisering versie: 2026.01.2
2026-02-01 12:00:03 info: Day Ahead Optimalisering gestart op: 01-02-2026 12:00:03
2026-02-01 12:00:03 info: Day Ahead Optimalisatie gestart: 01-02-2026 12:00:03 taak: train_ml_predictions
2026-02-01 12:00:03 info: KNMI-weerstation: 260 DE BILT
2026-02-01 12:00:03 info: Er zijn nog geen knmi-data aanwezig
2026-02-01 12:00:05 info: Er zijn data van het KNMI binnengekomen vanaf 2023-01-31 00:00:00+01:00 tot en met 2026-01-30 23:00:00+01:00

  • Impossibl3
  • Registratie: November 2012
  • Laatst online: 09:49
jswinkels schreef op zondag 1 februari 2026 @ 12:04:
Ik heb nog problemen met de ML modeling van mijn solar. Ik krijg de volgende error. Ik las eerder al dat er meer mensen met dit probleem zijn, is hier een oplossing voor?
code:
1
2
3
4
5
6
2026-02-01 12:00:03 info: Day Ahead Optimalisering versie: 2026.01.2
2026-02-01 12:00:03 info: Day Ahead Optimalisering gestart op: 01-02-2026 12:00:03
2026-02-01 12:00:03 info: Day Ahead Optimalisatie gestart: 01-02-2026 12:00:03 taak: train_ml_predictions
2026-02-01 12:00:03 info: KNMI-weerstation: 260 DE BILT
2026-02-01 12:00:03 info: Er zijn nog geen knmi-data aanwezig
2026-02-01 12:00:05 info: Er zijn data van het KNMI binnengekomen vanaf 2023-01-31 00:00:00+01:00 tot en met 2026-01-30 23:00:00+01:00
De knmi data loopt 2 dagen achter. Dat is geen fout in dat opzicht. Maar ergens vandaag komt de data van gisteren beschikbaar. Die van vandaag pas ergens morgen.

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


  • jswinkels
  • Registratie: Oktober 1999
  • Laatst online: 11-02 22:53
Impossibl3 schreef op zondag 1 februari 2026 @ 12:26:
[...]


De knmi data loopt 2 dagen achter. Dat is geen fout in dat opzicht. Maar ergens vandaag komt de data van gisteren beschikbaar. Die van vandaag pas ergens morgen.
Dat snap ik, alleen ik vraag me af wanneer ik de modeltraining dan moet doen. De data loopt altijd achter. Ik probeer het al een paar dagen. moet ik het dan ergens op een specifiek tijdstip doen?

  • mistral2
  • Registratie: November 2002
  • Laatst online: 13:01
Even ter info: de laatste tijd krijg ik in de productieversie steed een waarschuwing dat er geen oplossing gevonden kan worden vcor de optimalisatieberekeing.

Gelukkig werkt het in 2026.02.0.rc1 weer wel!

  • Impossibl3
  • Registratie: November 2012
  • Laatst online: 09:49
jswinkels schreef op zondag 1 februari 2026 @ 12:30:
[...]

Dat snap ik, alleen ik vraag me af wanneer ik de modeltraining dan moet doen. De data loopt altijd achter. Ik probeer het al een paar dagen. moet ik het dan ergens op een specifiek tijdstip doen?
De training vindt gewoon plaats. Alleen niet met de laatste 1,5-2 dagen aan data. Je kan het op ieder moment van de dag trainen.

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

jswinkels schreef op zondag 1 februari 2026 @ 12:30:
[...]

Dat snap ik, alleen ik vraag me af wanneer ik de modeltraining dan moet doen. De data loopt altijd achter. Ik probeer het al een paar dagen. moet ik het dan ergens op een specifiek tijdstip doen?
De eerste keer duurt altijd langer omdat hij dan data van 3 jaar bij het knmi moet ophalen en opslaan. Als hij blijft "hangen" kun je het beter via de scheduler laten lopen.

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


  • HomegrownBGP
  • Registratie: September 2005
  • Niet online
Ik probeer bij mij de baseloads te berekenen, maar DAO timet-out na verloop van tijd. Uit de logs:
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
[2026-01-31 18:12:15 +0100] [11] [CRITICAL] WORKER TIMEOUT (pid:677)
[2026-01-31 18:12:16 +0100] [677] [ERROR] Error handling request /
Traceback (most recent call last):
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/gunicorn/workers/sync.py", line 134, in handle
    self.handle_request(listener, req, client, addr)
    ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/gunicorn/workers/sync.py", line 177, in handle_request
    respiter = self.wsgi(environ, resp.start_response)
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 1536, in __call__
    return self.wsgi_app(environ, start_response)
           ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 1511, in wsgi_app
    response = self.full_dispatch_request()
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 917, in full_dispatch_request
    rv = self.dispatch_request()
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 902, in dispatch_request
    return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)  # type: ignore[no-any-return]
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/root/dao/webserver/app/routes.py", line 297, in menu
    return run_process()
  File "/root/dao/webserver/app/routes.py", line 431, in run_process
    proc = run(cmd, stdout=PIPE, stderr=PIPE)
  File "/usr/lib/python3.13/subprocess.py", line 556, in run
    stdout, stderr = process.communicate(input, timeout=timeout)
                     ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/subprocess.py", line 1222, in communicate
    stdout, stderr = self._communicate(input, endtime, timeout)
                     ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/subprocess.py", line 2128, in _communicate
    ready = selector.select(timeout)
  File "/usr/lib/python3.13/selectors.py", line 398, in select
    fd_event_list = self._selector.poll(timeout)
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/gunicorn/workers/base.py", line 204, in handle_abort
    sys.exit(1)
    ~~~~~~~~^^^
SystemExit: 1
[2026-01-31 18:12:16 +0100] [677] [INFO] Worker exiting (pid: 677)
<sys>:0: ResourceWarning: unclosed <socket.socket fd=5, family=2, type=1, proto=0, laddr=('0.0.0.0', 5000)>
[2026-01-31 18:12:17 +0100] [11] [ERROR] Worker (pid:677) was sent SIGKILL! Perhaps out of memory?
[2026-01-31 18:12:17 +0100] [746] [INFO] Booting worker with pid: 746
Memory is er genoeg (12GB), hij piekt in die zin ook niet (of de container zelf is op een manier gelimiteerd). Zijn er nog andere constraints aan het berekenen van de baseload?

  • Mirabis
  • Registratie: Juli 2013
  • Niet online
HomegrownBGP schreef op maandag 2 februari 2026 @ 10:13:
Ik probeer bij mij de baseloads te berekenen, maar DAO timet-out na verloop van tijd. Uit de logs:
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
[2026-01-31 18:12:15 +0100] [11] [CRITICAL] WORKER TIMEOUT (pid:677)
[2026-01-31 18:12:16 +0100] [677] [ERROR] Error handling request /
Traceback (most recent call last):
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/gunicorn/workers/sync.py", line 134, in handle
    self.handle_request(listener, req, client, addr)
    ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/gunicorn/workers/sync.py", line 177, in handle_request
    respiter = self.wsgi(environ, resp.start_response)
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 1536, in __call__
    return self.wsgi_app(environ, start_response)
           ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 1511, in wsgi_app
    response = self.full_dispatch_request()
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 917, in full_dispatch_request
    rv = self.dispatch_request()
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 902, in dispatch_request
    return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)  # type: ignore[no-any-return]
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/root/dao/webserver/app/routes.py", line 297, in menu
    return run_process()
  File "/root/dao/webserver/app/routes.py", line 431, in run_process
    proc = run(cmd, stdout=PIPE, stderr=PIPE)
  File "/usr/lib/python3.13/subprocess.py", line 556, in run
    stdout, stderr = process.communicate(input, timeout=timeout)
                     ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/subprocess.py", line 1222, in communicate
    stdout, stderr = self._communicate(input, endtime, timeout)
                     ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/subprocess.py", line 2128, in _communicate
    ready = selector.select(timeout)
  File "/usr/lib/python3.13/selectors.py", line 398, in select
    fd_event_list = self._selector.poll(timeout)
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/gunicorn/workers/base.py", line 204, in handle_abort
    sys.exit(1)
    ~~~~~~~~^^^
SystemExit: 1
[2026-01-31 18:12:16 +0100] [677] [INFO] Worker exiting (pid: 677)
<sys>:0: ResourceWarning: unclosed <socket.socket fd=5, family=2, type=1, proto=0, laddr=('0.0.0.0', 5000)>
[2026-01-31 18:12:17 +0100] [11] [ERROR] Worker (pid:677) was sent SIGKILL! Perhaps out of memory?
[2026-01-31 18:12:17 +0100] [746] [INFO] Booting worker with pid: 746
Memory is er genoeg (12GB), hij piekt in die zin ook niet (of de container zelf is op een manier gelimiteerd). Zijn er nog andere constraints aan het berekenen van de baseload?
Volgens mij mag het er max 120 seconden over doen als je het handmatig triggert. Dat is vaak niet genoeg. Als je het via de scheduler laat lopen mag het er langer over doen.

1x Venus-E v153 +LilyGo HA, CT003 V117 | 5040Wp ZO + 4200Wp NW | Zonneplan, 3x25A, Easee Charge Lite | EV 98kWh


  • martinisoft
  • Registratie: Oktober 2017
  • Laatst online: 14:00
Als ik me niet vergis is deze vraag al eens eerder voorbij gekomen maar ik stel hem toch opnieuw omdat ik deze niet gevonden krijg.. 8)7
Ik ben bezig met Machines en ik merk dat in sommige gevallen DAO bedenkt dat de calculated start "nu" moet zijn.
Dat wil zeggen, DAO zet de calculated start op de tijd dat de run in gestart.
Het probleem is echter dat op het moment van zetten deze tijd reeds in het verleden ligt waardoor gekoppelde automations nooit meer zullen triggeren.
Is hier al een oplossing voor? Wellicht dat DAO in deze situatie een (al dan niet instelbare) offset kan toevoegen aan de caculated start?

wederom dank,

Martijn.

ATW: ME ERST30D-VM2ED+SUZ-SWM80VA2 (sinds Juni 2023 gasloos) ATA: 2x ME MXZ-2F53VF3+MSZ-EF50VGKS+MSZ-EF22VGKS (sinds juni 2021) PV: 19x405Wp op SolarEdge (P405+2xSE3000) Thuisbatterij: 3x Sessy (5kWh per stuk) DoucheWTW: Joulia Inline 3


  • simnet
  • Registratie: Januari 2020
  • Laatst online: 10:25
martinisoft schreef op maandag 2 februari 2026 @ 10:57:
Als ik me niet vergis is deze vraag al eens eerder voorbij gekomen maar ik stel hem toch opnieuw omdat ik deze niet gevonden krijg.. 8)7
Ik ben bezig met Machines en ik merk dat in sommige gevallen DAO bedenkt dat de calculated start "nu" moet zijn.
Dat wil zeggen, DAO zet de calculated start op de tijd dat de run in gestart.
Het probleem is echter dat op het moment van zetten deze tijd reeds in het verleden ligt waardoor gekoppelde automations nooit meer zullen triggeren.
Is hier al een oplossing voor? Wellicht dat DAO in deze situatie een (al dan niet instelbare) offset kan toevoegen aan de caculated start?

wederom dank,

Martijn.
Dat is een kwestie van een extra trigger op de state change, naast een trigger op date/time.

  • Bravo
  • Registratie: Augustus 2005
  • Laatst online: 13:51

Bravo

Second Best

martinisoft schreef op maandag 2 februari 2026 @ 10:57:
Als ik me niet vergis is deze vraag al eens eerder voorbij gekomen maar ik stel hem toch opnieuw omdat ik deze niet gevonden krijg.. 8)7
Ik ben bezig met Machines en ik merk dat in sommige gevallen DAO bedenkt dat de calculated start "nu" moet zijn.
Dat wil zeggen, DAO zet de calculated start op de tijd dat de run in gestart.
Het probleem is echter dat op het moment van zetten deze tijd reeds in het verleden ligt waardoor gekoppelde automations nooit meer zullen triggeren.
Is hier al een oplossing voor? Wellicht dat DAO in deze situatie een (al dan niet instelbare) offset kan toevoegen aan de caculated start?

wederom dank,

Martijn.
Dit is mijn automation die ook checked bij een wijziging van state of deze in het verleden ligt en dan ook het startcommando geeft:
YAML:
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
alias: DOA start vaatwasser op berekend tijdstip
description: Schakelt de vaatwasser in wanneer het door DAO bepaalde tijdstip is bereikt
triggers:
  - at: input_datetime.calculated_start_vaatwasser_test
    trigger: time
    id: time
  - entity_id:
      - input_datetime.calculated_start_vaatwasser_test
    id: state
    trigger: state
conditions:
  - condition: or
    conditions:
      - condition: trigger
        id: time
      - condition: and
        conditions:
          - condition: trigger
            id: state
          - condition: template
            value_template: >-
              {% set scheduled =
              states('input_datetime.calculated_start_vaatwasser_test') %} {%
              set now_time = now().strftime('%Y-%m-%d %H:%M:%S') %} {{ scheduled
              <= now_time }}
actions:
  - type: turn_on
    device_id: 192f6c0784ffxxxxxxd6fac6fed8a
    entity_id: be0db2acf4029xxxxxxfb24ec362
    domain: switch
entity staat daarvoor wel op datetime, omdat hij anders ook triggert als er 's avonds een planning voor de volgende dag wordt gemaakt (gewenste tijdstip is dan al geweest, dus start).

edit: als je weggaat op vakantie of zo, niet vergeten om het programma dan op 'off' te zetten (of de deur open te laten). Anders blijft de vaatwasser iedere dag aangestuurt worden.

[ Voor 4% gewijzigd door Bravo op 02-02-2026 11:22 ]

Ioniq 6 LR Lounge 20" @ Elli Pro
2700Wp SSW 30° @ SE2200 | 1720Wp SSW 5° @ HM-1500
Flickr | Canon 6D | 17-40mm f/4 + 50mm f/1.8 II + 70-200mm f/4 | 2x 430EX II | Sirui T005 + C10


  • Mirabis
  • Registratie: Juli 2013
  • Niet online
@simnet @KC27 Is het ook mogelijk een setting toe te voegen voor "min profit" of iets dergelijks (net als max gap)? Ik merk dat bij lage spreads het af en toe wil opladen en ontladen met een uitkomst van 0 winst. Risico is daarbij ook nog dat als de efficientie en stages niet helemaal accuraat ingevuld zijn de kans op winst nog lager is. Voorbeeld voor morgen:

Afbeeldingslocatie: https://tweakers.net/i/lCxaASAEgS8MlJ88buJK1yqbOXQ=/800x/filters:strip_exif()/f/image/EA5fhAbIOgHNfKAS2vIFMYm6.png?f=fotoalbum_large

Het kon hier beter niks doen omdat zowel voor als na optimize de kosten hetzelfde 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
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
2026-02-02 13:00:00 info: Day Ahead Optimalisering versie: 2026.02.0.rc1
2026-02-02 13:00:00 info: Day Ahead Optimalisering gestart op: 02-02-2026 13:00:00
2026-02-02 13:00:00 info: Day Ahead Optimalisatie gestart: 02-02-2026 13:00:00 taak: calc_optimum
2026-02-02 13:00:00 info: Debug = False
2026-02-02 13:00:00 info: Zelf berekende baseload
2026-02-02 13:00:00 info: ML prediction Growatt
                   date_time  prediction
0  2026-02-02 13:00:00+01:00       2.187
1  2026-02-02 14:00:00+01:00       1.757
2  2026-02-02 15:00:00+01:00       1.406
3  2026-02-02 16:00:00+01:00       0.181
4  2026-02-02 17:00:00+01:00       0.000
5  2026-02-02 18:00:00+01:00       0.000
6  2026-02-02 19:00:00+01:00       0.000
7  2026-02-02 20:00:00+01:00       0.000
8  2026-02-02 21:00:00+01:00       0.000
9  2026-02-02 22:00:00+01:00       0.000
10 2026-02-02 23:00:00+01:00       0.000
11 2026-02-03 00:00:00+01:00       0.000
12 2026-02-03 01:00:00+01:00       0.002
13 2026-02-03 02:00:00+01:00       0.002
14 2026-02-03 03:00:00+01:00       0.002
15 2026-02-03 04:00:00+01:00       0.002
16 2026-02-03 05:00:00+01:00       0.002
17 2026-02-03 06:00:00+01:00       0.002
18 2026-02-03 07:00:00+01:00       0.002
19 2026-02-03 08:00:00+01:00       0.059
20 2026-02-03 09:00:00+01:00       1.485
21 2026-02-03 10:00:00+01:00       2.189
22 2026-02-03 11:00:00+01:00       0.412
23 2026-02-03 12:00:00+01:00       0.048
24 2026-02-03 13:00:00+01:00       0.057
25 2026-02-03 14:00:00+01:00       0.181
26 2026-02-03 15:00:00+01:00       0.413
27 2026-02-03 16:00:00+01:00       0.113
28 2026-02-03 17:00:00+01:00       0.000
29 2026-02-03 18:00:00+01:00       0.000
30 2026-02-03 19:00:00+01:00       0.000
31 2026-02-03 20:00:00+01:00       0.000
32 2026-02-03 21:00:00+01:00       0.000
33 2026-02-03 22:00:00+01:00       0.000
2026-02-02 13:00:00 info: Start waarden: 
      uur                tijd  spot   p_l   p_t   base  pv_ac  pv_dc
0   13:00 2026-02-02 13:00:00 0.111 0.265 0.281  0.050  2.187      0
1   14:00 2026-02-02 14:00:00 0.106 0.259 0.274  1.494  1.757      0
2   15:00 2026-02-02 15:00:00 0.108 0.262 0.277  0.259  1.406      0
3   16:00 2026-02-02 16:00:00 0.111 0.265 0.281  0.563  0.181      0
4   17:00 2026-02-02 17:00:00 0.119 0.274 0.291  0.597  0.000      0
5   18:00 2026-02-02 18:00:00 0.120 0.276 0.292  0.585  0.000      0
6   19:00 2026-02-02 19:00:00 0.104 0.257 0.271  0.563  0.000      0
7   20:00 2026-02-02 20:00:00 0.103 0.256 0.270  0.629  0.000      0
8   21:00 2026-02-02 21:00:00 0.102 0.254 0.269  0.694  0.000      0
9   22:00 2026-02-02 22:00:00 0.100 0.252 0.266  0.563  0.000      0
10  23:00 2026-02-02 23:00:00 0.091 0.241 0.254  0.515  0.000      0
11  00:00 2026-02-03 00:00:00 0.089 0.239 0.252  0.463  0.000      0
12  01:00 2026-02-03 01:00:00 0.087 0.236 0.248  0.416  0.002      0
13  02:00 2026-02-03 02:00:00 0.081 0.229 0.241  0.372  0.002      0
14  03:00 2026-02-03 03:00:00 0.075 0.221 0.232  1.281  0.002      0
15  04:00 2026-02-03 04:00:00 0.072 0.218 0.229  0.305  0.002      0
16  05:00 2026-02-03 05:00:00 0.079 0.226 0.238 -0.180  0.002      0
17  06:00 2026-02-03 06:00:00 0.090 0.239 0.252  0.267  0.002      0
18  07:00 2026-02-03 07:00:00 0.099 0.251 0.265  0.618  0.002      0
19  08:00 2026-02-03 08:00:00 0.107 0.261 0.276 -0.069  0.059      0
20  09:00 2026-02-03 09:00:00 0.108 0.262 0.277  0.531  1.485      0
21  10:00 2026-02-03 10:00:00 0.100 0.252 0.266  0.496  2.189      0
22  11:00 2026-02-03 11:00:00 0.088 0.238 0.250  0.521  0.412      0
23  12:00 2026-02-03 12:00:00 0.086 0.235 0.248  0.540  0.048      0
24  13:00 2026-02-03 13:00:00 0.088 0.238 0.251  0.509  0.057      0
25  14:00 2026-02-03 14:00:00 0.093 0.243 0.256  1.478  0.181      0
26  15:00 2026-02-03 15:00:00 0.100 0.252 0.266 -0.147  0.413      0
27  16:00 2026-02-03 16:00:00 0.106 0.259 0.274  0.235  0.113      0
28  17:00 2026-02-03 17:00:00 0.123 0.280 0.296  0.794  0.000      0
29  18:00 2026-02-03 18:00:00 0.126 0.283 0.300  0.262  0.000      0
30  19:00 2026-02-03 19:00:00 0.123 0.280 0.297  0.536  0.000      0
31  20:00 2026-02-03 20:00:00 0.112 0.266 0.282  1.692  0.000      0
32  21:00 2026-02-03 21:00:00 0.103 0.256 0.271  0.216  0.000      0
33  22:00 2026-02-03 22:00:00 0.101 0.253 0.268 -0.273  0.000      0
34  23:00 2026-02-03 23:00:00 0.095 0.246 0.259  2.287  0.000      0
2026-02-02 13:00:00 info: No reduced hours applied for Marstek
2026-02-02 13:00:00 info: Startwaarde SoC Marstek: 11.0%

2026-02-02 13:00:00 info: Boiler niet aanwezig of staat uit, boiler wordt niet ingepland
2026-02-02 13:00:00 info: Warmtepomp niet aanwezig - warmtepomp wordt niet ingepland
2026-02-02 13:00:00 info: Strategie: minimale kosten
2026-02-02 13:00:00 info: Maximale fout (maximal gap): 0.005000 euro
2026-02-02 13:00:00 info: Rekentijd: 0.06  sec
2026-02-02 13:00:00 info: Het programma heeft een optimale oplossing gevonden.
2026-02-02 13:00:00 info: Laad volume in uur 15 04:00 0.0 kWh
2026-02-02 13:00:00 info: 12 0.9999999999999999 2.4
2026-02-02 13:00:00 info: Ontlaad volume in uur 29 18:00 1.9541807999999943 kWh
2026-02-02 13:00:00 info: 12 0.8142419999999976 2.4
2026-02-02 13:00:00 info: In- en uitgaande energie per uur batterij Marstek
   uur   ac->    eff   ->dc pv->dc   dc->    eff  ->bat  o_eff    SoC
          kWh      %    kWh    kWh    kWh      %    kWh      %      %
 13:00   0.00     --   0.00   0.00   0.00     --   0.00     --  11.00
 14:00   0.00     --   0.00   0.00   0.00     --   0.00     --  11.00
 15:00   0.00     --   0.00   0.00   0.00     --   0.00     --  11.00
 16:00   0.00     --   0.00   0.00   0.00     --   0.00     --  11.00
 17:00   0.00     --   0.00   0.00   0.00     --   0.00     --  11.00
 18:00   0.00     --   0.00   0.00   0.00     --   0.00     --  11.00
 19:00   0.00     --   0.00   0.00   0.00     --   0.00     --  11.00
 20:00   0.00     --   0.00   0.00   0.00     --   0.00     --  11.00
 21:00   0.00     --   0.00   0.00   0.00     --   0.00     --  11.00
 22:00   0.00     --   0.00   0.00   0.00     --   0.00     --  11.00
 23:00   0.00     --   0.00   0.00   0.00     --   0.00     --  11.00
 00:00   0.00     --   0.00   0.00   0.00     --   0.00     --  11.00
 01:00   0.00     --   0.00   0.00   0.00     --   0.00     --  11.00
 02:00   0.00     --   0.00   0.00   0.00     --   0.00     --  11.00
 03:00   0.00     --   0.00   0.00   0.00     --   0.00     --  11.00
 04:00   2.40  94.90   2.28   0.00   2.28 100.00   2.28  94.90  55.48
 05:00   0.00     --   0.00   0.00   0.00     --   0.00     --  55.48
 06:00   0.00     --   0.00   0.00   0.00     --   0.00     --  55.48
 07:00   0.00     --   0.00   0.00   0.00     --   0.00     --  55.48
 08:00   0.00     --   0.00   0.00   0.00     --   0.00     --  55.48
 09:00   0.00     --   0.00   0.00   0.00     --   0.00     --  55.48
 10:00   0.00     --   0.00   0.00   0.00     --   0.00     --  55.48
 11:00   0.00     --   0.00   0.00   0.00     --   0.00     --  55.48
 12:00   0.00     --   0.00   0.00   0.00     --   0.00     --  55.48
 13:00   0.00     --   0.00   0.00   0.00     --   0.00     --  55.48
 14:00   0.00     --   0.00   0.00   0.00     --   0.00     --  55.48
 15:00   0.00     --   0.00   0.00   0.00     --   0.00     --  55.48
 16:00   0.00     --   0.00   0.00   0.00     --   0.00     --  55.48
 17:00   0.00     --   0.00   0.00   0.00     --   0.00     --  55.48
 18:00  -1.95  85.80  -2.28   0.00  -2.28 100.00  -2.28  85.80  11.00
 19:00   0.00     --   0.00   0.00   0.00     --   0.00     --  11.00
 20:00   0.00     --   0.00   0.00   0.00     --   0.00     --  11.00
 21:00   0.00     --   0.00   0.00   0.00     --   0.00     --  11.00
 22:00   0.00     --   0.00   0.00   0.00     --   0.00     --  11.00
 23:00   0.00     --   0.00   0.00   0.00     --   0.00     --  11.00
Totaal   0.45     --   0.00   0.00   0.00     --   0.00     --    NaN
2026-02-02 13:00:01 info: Berekende prognoses: 
   uur  bat_in  bat_out   cons   prod   base   boil     wp     ev  pv_ac   cost  profit  b_tem
 13:00    0.00     0.00   0.00   2.14   0.05   0.00   0.00   0.00   2.19   0.00   -0.60  20.00
 14:00    0.00     0.00   0.00   0.26   1.49   0.00   0.00   0.00   1.76   0.00   -0.07  20.00
 15:00    0.00     0.00   0.00   1.15   0.26   0.00   0.00   0.00   1.41   0.00   -0.32  20.00
 16:00    0.00     0.00   0.38   0.00   0.56   0.00   0.00   0.00   0.18   0.10   -0.00  20.00
 17:00    0.00     0.00   0.60   0.00   0.60   0.00   0.00   0.00   0.00   0.16   -0.00  20.00
 18:00    0.00     0.00   0.59   0.00   0.58   0.00   0.00   0.00   0.00   0.16   -0.00  20.00
 19:00    0.00     0.00   0.56   0.00   0.56   0.00   0.00   0.00   0.00   0.14   -0.00  20.00
 20:00    0.00     0.00   0.63   0.00   0.63   0.00   0.00   0.00   0.00   0.16   -0.00  20.00
 21:00    0.00     0.00   0.69   0.00   0.69   0.00   0.00   0.00   0.00   0.18   -0.00  20.00
 22:00    0.00     0.00   0.56   0.00   0.56   0.00   0.00   0.00   0.00   0.14   -0.00  20.00
 23:00    0.00     0.00   0.52   0.00   0.52   0.00   0.00   0.00   0.00   0.12   -0.00  20.00
 00:00    0.00     0.00   0.46   0.00   0.46   0.00   0.00   0.00   0.00   0.11   -0.00  20.00
 01:00    0.00     0.00   0.41   0.00   0.42   0.00   0.00   0.00   0.00   0.10   -0.00  20.00
 02:00    0.00     0.00   0.37   0.00   0.37   0.00   0.00   0.00   0.00   0.08   -0.00  20.00
 03:00    0.00     0.00   1.28   0.00   1.28   0.00   0.00   0.00   0.00   0.28   -0.00  20.00
 04:00    2.40     0.00   2.70   0.00   0.30   0.00   0.00   0.00   0.00   0.59   -0.00  20.00
 05:00    0.00     0.00   0.00   0.18  -0.18   0.00   0.00   0.00   0.00   0.00   -0.04  20.00
 06:00    0.00     0.00   0.26   0.00   0.27   0.00   0.00   0.00   0.00   0.06   -0.00  20.00
 07:00    0.00     0.00   0.62   0.00   0.62   0.00   0.00   0.00   0.00   0.15   -0.00  20.00
 08:00    0.00     0.00   0.00   0.13  -0.07   0.00   0.00   0.00   0.06   0.00   -0.04  20.00
 09:00    0.00     0.00   0.00   0.95   0.53   0.00   0.00   0.00   1.49   0.00   -0.26  20.00
 10:00    0.00     0.00   0.00   1.69   0.50   0.00   0.00   0.00   2.19   0.00   -0.45  20.00
 11:00    0.00     0.00   0.11   0.00   0.52   0.00   0.00   0.00   0.41   0.03   -0.00  20.00
 12:00    0.00     0.00   0.49   0.00   0.54   0.00   0.00   0.00   0.05   0.12   -0.00  20.00
 13:00    0.00     0.00   0.45   0.00   0.51   0.00   0.00   0.00   0.06   0.11   -0.00  20.00
 14:00    0.00     0.00   1.30   0.00   1.48   0.00   0.00   0.00   0.18   0.32   -0.00  20.00
 15:00    0.00     0.00   0.00   0.56  -0.15   0.00   0.00   0.00   0.41   0.00   -0.15  20.00
 16:00    0.00     0.00   0.12   0.00   0.23   0.00   0.00   0.00   0.11   0.03   -0.00  20.00
 17:00    0.00     0.00   0.79   0.00   0.79   0.00   0.00   0.00   0.00   0.22   -0.00  20.00
 18:00    0.00     1.95   0.00   1.69   0.26   0.00   0.00   0.00   0.00   0.00   -0.51  20.00
 19:00    0.00     0.00   0.54   0.00   0.54   0.00   0.00   0.00   0.00   0.15   -0.00  20.00
 20:00    0.00     0.00   1.69   0.00   1.69   0.00   0.00   0.00   0.00   0.45   -0.00  20.00
 21:00    0.00     0.00   0.22   0.00   0.22   0.00   0.00   0.00   0.00   0.06   -0.00  20.00
 22:00    0.00     0.00   0.00   0.27  -0.27   0.00   0.00   0.00   0.00   0.00   -0.07  20.00
 23:00    0.00     0.00   2.29   0.00   2.29   0.00   0.00   0.00   0.00   0.56   -0.00  20.00
Totaal    2.40     1.95  18.64   9.03  19.66   0.00   0.00   0.00  10.50   4.59   -2.51    NaN

2026-02-02 13:00:01 info: Consumption              18.64 (kWh)
2026-02-02 13:00:01 info: Cost consumption          4.59 (€)
2026-02-02 13:00:01 info: Tariff consumption        0.247 (€/kWh)
2026-02-02 13:00:01 info: Production                9.03 (kWh)
2026-02-02 13:00:01 info: Profit production        -2.51 (€)
2026-02-02 13:00:01 info: Tariff production         0.278 (€/kWh)

2026-02-02 13:00:01 info: 
Calculation profit after optimize in €
Cost before optimize              2.14
Cost consumption      4.59
Cycle cost            0.06
Penalty cost          0.00
Battery storage       0.00
Boiler storage        0.00
Profit production    -2.51
Total                 2.14
Cost after optimize               2.14
Profit:                           0.00
2026-02-02 13:00:01 info: Doorzetten van alle settings naar HA
2026-02-02 13:00:01 info: Grid set point: -2137.0 W
2026-02-02 13:00:01 info: Cycle cost Marstek: 0.06 euro
2026-02-02 13:00:01 info: Netto vermogen naar(+)/uit(-) omvormer Marstek: 0 W
2026-02-02 13:00:01 info: Balanceren: False
2026-02-02 13:00:01 info: Vermogen uit batterij: 0W
2026-02-02 13:00:01 info: Vermogen dat binnenkomt van pv: 0W
2026-02-02 13:00:01 info: Vermogen dat binnenkomt van ac: 0W
2026-02-02 13:00:01 info: Waarde SoC na eerste uur: 11.0%

1x Venus-E v153 +LilyGo HA, CT003 V117 | 5040Wp ZO + 4200Wp NW | Zonneplan, 3x25A, Easee Charge Lite | EV 98kWh


  • jswinkels
  • Registratie: Oktober 1999
  • Laatst online: 11-02 22:53
KC27 schreef op zondag 1 februari 2026 @ 14:05:
[...]

De eerste keer duurt altijd langer omdat hij dan data van 3 jaar bij het knmi moet ophalen en opslaan. Als hij blijft "hangen" kun je het beter via de scheduler laten lopen.
Via de scheduler heb ik het inderdaad wel aan de praat gekregen. Nu het model er is, werkt het handmatig starten van de run vanuit de webUI ook gewoon. _/-\o_
Mirabis schreef op maandag 2 februari 2026 @ 13:27:
@simnet @KC27 Is het ook mogelijk een setting toe te voegen voor "min profit" of iets dergelijks (net als max gap)? Ik merk dat bij lage spreads het af en toe wil opladen en ontladen met een uitkomst van 0 winst. Risico is daarbij ook nog dat als de efficientie en stages niet helemaal accuraat ingevuld zijn de kans op winst nog lager is. Voorbeeld voor morgen:

[Afbeelding]

Het kon hier beter niks doen omdat zowel voor als na optimize de kosten hetzelfde zijn.

[...]
Dat generiek instellen lukt niet, want bij gebruikers met een boiler, een wp of iets anders moet hij altijd optimaliseren. In jouw geval - met alleen een batterij - moet je het zoeken in de instellingen van de batterij.
Ik zie dat je al cyclecost hebt (0,01 euro/kWh?).
Dus je eigenlijke winst is niet nul, maar 6 cent.
Als je de inzet van de accu wilt temperen zou je die instelling iets kunnen verhogen. Door de afronding op hele centen komt het programma nu op 0,00 euro winst, Met een verhoging van de cyclecost zal hij in de min duiken en niets doen.

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


  • martinisoft
  • Registratie: Oktober 2017
  • Laatst online: 14:00
Bravo schreef op maandag 2 februari 2026 @ 11:20:
[...]


Dit is mijn automation die ook checked bij een wijziging van state of deze in het verleden ligt en dan ook het startcommando geeft:
Dank, gaat helemaal goed komen zo!

ATW: ME ERST30D-VM2ED+SUZ-SWM80VA2 (sinds Juni 2023 gasloos) ATA: 2x ME MXZ-2F53VF3+MSZ-EF50VGKS+MSZ-EF22VGKS (sinds juni 2021) PV: 19x405Wp op SolarEdge (P405+2xSE3000) Thuisbatterij: 3x Sessy (5kWh per stuk) DoucheWTW: Joulia Inline 3


  • martinisoft
  • Registratie: Oktober 2017
  • Laatst online: 14:00
Nog even een ander vraagje..
Ik heb 3 sessy batterijen die ik inmiddels binnen DAO heb samengevoegd als één virtuele batterij.
Nu draai ik nog "droog" voor wat de Sessy's betreft, dwz de helpers zijn er allemaal maar ik heb nog geen automations actief die daadwerkelijk sturen.
Nu heb ik DAO in "Minimize Consumption" staan en voor zover ik het kan zien stuurt DAO bij iedere run (zoals verwacht) aan op het zoveel mogelijk opheffen van mijn verbruik/levering door hier met de batterij op te sturen.
Het grootste deel van de tijd zet DAO de batterij via zijn eigen regeling op NoM. maar soms gooit DAO de batterij uit via "entity set operating mode" en zet dan ook de NoM functie uit via "entity balance switch". Ik probeer te begrijpen waarom DAO dit doet. in een "Minimize Consumption" scenario lijkt het me namelijk logischer als de batterij altijd in NoM blijft staan. Wederom dank voor het meedenken.. mvg Martijn

ATW: ME ERST30D-VM2ED+SUZ-SWM80VA2 (sinds Juni 2023 gasloos) ATA: 2x ME MXZ-2F53VF3+MSZ-EF50VGKS+MSZ-EF22VGKS (sinds juni 2021) PV: 19x405Wp op SolarEdge (P405+2xSE3000) Thuisbatterij: 3x Sessy (5kWh per stuk) DoucheWTW: Joulia Inline 3


  • djoenez
  • Registratie: April 2007
  • Laatst online: 07:31
KC27 schreef op zaterdag 31 januari 2026 @ 16:38:
Kun je met samba bij je ha folders?
In de map addon-configs is een map van DAO.
Daarin zit een map met de naam "log" en daarin een bestand met de naam "dashboard.log" (zonder datum is van vandaag,). Wat staat daarin?
Hierbij:
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
2026-02-02 18:39:13,034 fout dao.webserver.app MainThread : Exception on / [POST]
Traceback (most recent call last):
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 1511, in wsgi_app
    response = self.full_dispatch_request()
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 919, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 917, in full_dispatch_request
    rv = self.dispatch_request()
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 902, in dispatch_request
    return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)  # type: ignore[no-any-return]
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/root/dao/webserver/app/routes.py", line 316, in menu
    return solar()
  File "/root/dao/webserver/app/routes.py", line 635, in solar
    report_df = report.calc_solar_data(
        solar_items[active_subject], active_date, active_view
    )
  File "/root/dao/prog/da_report.py", line 3039, in calc_solar_data
    prod = self.calc_prod_solar(
        device, row.tijd.timestamp(), straling, 1
    )
  File "/root/dao/prog/da_base.py", line 414, in calc_prod_solar
    self.meteo.calc_solar_rad(solar_opt, act_time, act_gr)
    ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/prog/da_meteo.py", line 693, in calc_solar_rad
    tilt = solar_opt["tilt"]
           ~~~~~~~~~^^^^^^^^
KeyError: 'tilt'
Zeer bedankt voor de hulp!
djoenez schreef op maandag 2 februari 2026 @ 18:40:
[...]


Hierbij:

[...]


Zeer bedankt voor de hulp!
In de configuratie van je zonnepaneel ontbreekt de "tilt" (=helling) van je paneel.
Die heeft het programma nodig om de productie te voorspellen in vergelijking tussen de ml-voorspelling en de DAO-voorspelling.

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


  • HomegrownBGP
  • Registratie: September 2005
  • Niet online
Mirabis schreef op maandag 2 februari 2026 @ 10:33:
[...]

Volgens mij mag het er max 120 seconden over doen als je het handmatig triggert. Dat is vaak niet genoeg. Als je het via de scheduler laat lopen mag het er langer over doen.
Thanks! Ik heb het inderdaad via de scheduler aan de praat gekregen :)

  • djoenez
  • Registratie: April 2007
  • Laatst online: 07:31
KC27 schreef op dinsdag 3 februari 2026 @ 09:41:
[...]

In de configuratie van je zonnepaneel ontbreekt de "tilt" (=helling) van je paneel.
Die heeft het programma nodig om de productie te voorspellen in vergelijking tussen de ml-voorspelling en de DAO-voorspelling.
Check, dan begreep ik de eerdere instructies toch niet helemaal. Situatie:
Zolder PV: 2 strings (oost en west) hebben maar 1 totale optellende opbrengst teller voor beide strings
Schuur PV: 1 string (zuid) 1 optellende teller

Op de oude manier had ik ze alle 3 apart gedeclareerd, en voor oost en west de optellende teller gegeven.

Voor de ML geef ik geen richting en tilt aan, ik heb daar alleen zolder en schuur gedefinieerd met de desbetreffende tellers. Hoe zou ik zolder moeten definieren als die 2 verschillende orientations heeft?
djoenez schreef op dinsdag 3 februari 2026 @ 20:39:
[...]


Check, dan begreep ik de eerdere instructies toch niet helemaal. Situatie:
Zolder PV: 2 strings (oost en west) hebben maar 1 totale optellende opbrengst teller voor beide strings
Schuur PV: 1 string (zuid) 1 optellende teller

Op de oude manier had ik ze alle 3 apart gedeclareerd, en voor oost en west de optellende teller gegeven.

Voor de ML geef ik geen richting en tilt aan, ik heb daar alleen zolder en schuur gedefinieerd met de desbetreffende tellers. Hoe zou ik zolder moeten definieren als die 2 verschillende orientations heeft?
Voor één omvormer met twee strings definieer je twee strings , bijvoorbeeld:
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",
      "ml_prediction": "true",
      "entities sensors": ["sensor.solaredge_woning_ac_energy_kwh"],
      "capacity": 4.2,
      "max power": 5,
      "entity pv switch": "input_boolean.pv_woning_aan_uit",
      "entities sensor": ["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"],
       "capacity": 1.8,
       "entity pv switch": "input_boolean.pv_garage_aan_uit",
       "tilt": 45,
       "orientation": 5,
       "capacity": 1.8,
       "yield": 0.004
     }
  ],

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


  • Dogooder
  • Registratie: April 2004
  • Laatst online: 11:43

Dogooder

dus...

Ik heb dagje 2026.02.0.rc1 gedraait, maar die vind geen oplossing, ik kan geen fout vinden in de logs of de docker logs. De pv_dc bug in de api is wel gemaakt.
Dogooder schreef op dinsdag 3 februari 2026 @ 21:58:
Ik heb dagje 2026.02.0.rc1 gedraait, maar die vind geen oplossing, ik kan geen fout vinden in de logs of de docker logs. De pv_dc bug in de api is wel gemaakt.
Fijn dat de bug is opgelost, maar heb je wel een oplossing als je een oudere versie draait met dezelfde configuratie?

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


  • Dogooder
  • Registratie: April 2004
  • Laatst online: 11:43

Dogooder

dus...

Ja, 2026.01.1 teruggezet en die doet het gelijk weer.
Met 2026.02.0.rc1 eindigt het log met het weergeven van de startwaarde. Daarna niks meer.
code:
1
2026-02-03 21:45:00 info: Startwaarde SoC Deye: 17.0%
@KC27 aanvulling: versie 2026.01.2 vind ook een oplossing. Maar met 2026.01.2.rc3 en 2026.02.0.rc1 word geen oplossing gevonden met dezelfde settings.

[ Voor 26% gewijzigd door Dogooder op 04-02-2026 09:43 ]


  • arjenhiemstra
  • Registratie: Oktober 2003
  • Laatst online: 12:32
KC27 schreef op zaterdag 31 januari 2026 @ 14:49:
[...]

Nog twee vragen m.b.t. bovenstaande tabel:
  1. is de beperking bij de lage SoC alleen bij ontladen of ook bij laden?
  2. en vice versa: is de beperking bij de hoge SoC alleen bij laden of ook bij ontladen?
Ik moest even zoeken in de data maar zo te zien gaat laden volle bak tot 50% SoC, dan een klein stapje naar beneden en vanaf 70% SoC gaat de charge rate door de helft, dan bij 90% SoC naar een kwart en bij 95% SoC naar 1/20.
Bij ontladen precies andersom.

Kortom:
beperking lage SoC is alleen bij ontladen
beperking hoge SoC is alleen bij laden

  • storeman
  • Registratie: April 2004
  • Laatst online: 13:53
Vanwege de mooie ontwikkelingen hier in DAO heb ik eens de moeite genomen om mijn historische data van de zonneopbrengst te herstellen en aan de slag te gaan met de ml_prediction. Ik heb nu data sinds medio 2023, dus een goeie basis.

De eerste run gaf nog een error, tweede run probleemloos. Zoals je ziet, locatie en data zijn beschikbaar. Dit staat in de 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
2026-02-03 23:06:27 info: KNMI-weerstation: 278 HEINO
2026-02-03 23:06:27 info: Er zijn nog geen knmi-data aanwezig
2026-02-03 23:06:27 info: Er zijn geen aanvullende knmi-data beschikbaar vanaf 2023-02-03 00:00:00-2026-02-03 23:06:27.383295
2026-02-03 23:06:27 fout: Er is een fout opgetreden, zie de fout-tracering
Traceback (most recent call last):
  File "/root/dao/prog/da_base.py", line 648, in run_task_function
    getattr(self, run_task["function"])()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/root/dao/prog/da_base.py", line 593, in train_ml_predictions
    solar_predictor.run_train()
    ~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/root/dao/prog/solar_predictor.py", line 969, in run_train
    weather_data = self.get_weatherdata(start=start)
  File "/root/dao/prog/solar_predictor.py", line 881, in get_weatherdata
    self.import_knmi_df(start, end)
    ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^
  File "/root/dao/prog/solar_predictor.py", line 854, in import_knmi_df
    if first_dt <= start and latest_dt >= end:
       ^^^^^^^^^^^^^^^^^
TypeError: '<=' not supported between instances of 'NoneType' and 'datetime.datetime'
Traceback (most recent call last):
  File "/root/dao/webserver/../prog/day_ahead.py", line 4702, in <module>
    main()
    ~~~~^^
  File "/root/dao/webserver/../prog/day_ahead.py", line 4696, in main
    da_calc.run_task_function("train_ml_predictions")
    ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/prog/da_base.py", line 648, in run_task_function
    getattr(self, run_task["function"])()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/root/dao/prog/da_base.py", line 593, in train_ml_predictions
    solar_predictor.run_train()
    ~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/root/dao/prog/solar_predictor.py", line 969, in run_train
    weather_data = self.get_weatherdata(start=start)
  File "/root/dao/prog/solar_predictor.py", line 881, in get_weatherdata
    self.import_knmi_df(start, end)
    ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^
  File "/root/dao/prog/solar_predictor.py", line 854, in import_knmi_df
    if first_dt <= start and latest_dt >= end:
       ^^^^^^^^^^^^^^^^^
TypeError: '<=' not supported between instances of 'NoneType' and 'datetime.datetime'
Verder vroeg ik mij af waar ik de resultaten nu kan zien. Ik zie screenshots met een solar-tab, deze ontbreekt bij mij. Komt dit doordat ik het solar-blok onder de battery heb hangen? Hij is inmiddels verschenen, in eerste instantie nog met een error, maar nu ook met content! :)

"Chaos kan niet uit de hand lopen"


  • djoenez
  • Registratie: April 2007
  • Laatst online: 07:31
KC27 schreef op dinsdag 3 februari 2026 @ 21:18:
[...]

Voor één omvormer met twee strings definieer je twee strings , bijvoorbeeld:

[...]
Je bent een held. Zeer bedankt voor het meedenken en je geduld.

  • DaBit
  • Registratie: Januari 2000
  • Laatst online: 10-02 22:40
Ik zie NaN's langskomen. Eigenlijk geen idee hoe lang dat al zo is. Uit het rekenresultaat, bij 'Totaal':
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
..
..
026-02-04 11:15:11 info: Ontlaad volume in uur 40 21:15 0.13295312495413236 kWh
2026-02-04 11:15:11 info: 8 0.28500133966587854 1.866
2026-02-04 11:15:11 info: Ontlaad volume in uur 43 22:00 0.12995312486938201 kWh
2026-02-04 11:15:11 info: 8 0.27857047131700324 1.866
2026-02-04 11:15:11 info: Ontlaad volume in uur 44 22:15 0.128453124869382 kWh
2026-02-04 11:15:11 info: 8 0.27535503723340193 1.866
2026-02-04 11:15:11 info: Ontlaad volume in uur 45 22:30 0.126953124869382 kWh
2026-02-04 11:15:11 info: 8 0.2721396031498007 1.866
2026-02-04 11:15:11 info: In- en uitgaande energie per kwartier batterij Accu schuur
   uur   ac->    eff   ->dc pv->dc   dc->    eff  ->bat  o_eff    SoC
          kWh      %    kWh    kWh    kWh      %    kWh      %      %
 11:15   0.00     --   0.00   0.00   0.00     --   0.00     --  60.00
 11:30   0.00     --   0.00   0.00   0.00     --   0.00     --  60.00
 11:45   0.57  92.00   0.52   0.00   0.52  98.00   0.51  90.16  61.65
 12:00   0.61  92.00   0.56   0.00   0.56  98.00   0.55  90.16  63.44
 12:15   0.62  92.01   0.57   0.00   0.57  98.00   0.56  90.17  65.25
 12:30   0.64  92.05   0.59   0.00   0.59  98.00   0.58  90.21  67.12
 12:45   0.66  92.07   0.61   0.00   0.61  98.00   0.59  90.23  69.03
 13:00   0.69  92.11   0.63   0.00   0.63  98.00   0.62  90.27  71.03
 13:15   0.70  92.14   0.65   0.00   0.65  98.00   0.64  90.30  73.08
 13:30   0.72  92.16   0.66   0.00   0.66  98.00   0.65  90.32  75.18
 13:45   0.69  92.12   0.64   0.00   0.64  98.00   0.62  90.28  77.19
 14:00   0.63  92.02   0.58   0.00   0.58  98.00   0.57  90.18  79.01
 14:15   0.61  92.00   0.56   0.00   0.56  98.00   0.55  90.16  80.80
 14:30   0.00     --   0.00   0.00   0.00     --   0.00     --  80.80
 14:45   0.00     --   0.00   0.00   0.00     --   0.00     --  80.80
 15:00   0.46  91.71   0.42   0.00   0.42  98.00   0.41  89.88  82.13
 15:15   0.00     --   0.00   0.00   0.00     --   0.00     --  82.13
 15:30   0.00     --   0.00   0.00   0.00     --   0.00     --  82.13
 15:45   0.00     --   0.00   0.00   0.00     --   0.00     --  82.13
 16:00   0.00     --   0.00   0.00   0.00     --   0.00     --  82.13
 16:15   0.00     --   0.00   0.00   0.00     --   0.00     --  82.13
 16:30   0.00     --   0.00   0.00   0.00     --   0.00     --  82.13
 16:45  -0.03  95.70  -0.03   0.00  -0.03  98.00  -0.03  93.79  82.03
 17:00  -0.10  95.70  -0.11   0.00  -0.11  98.00  -0.11  93.79  81.69
 17:15  -0.17  95.70  -0.17   0.00  -0.17  98.00  -0.18  93.79  81.12
 17:30  -0.20  95.70  -0.21   0.00  -0.21  98.00  -0.21  93.79  80.42
 17:45  -0.20  95.70  -0.21   0.00  -0.21  98.00  -0.22  93.79  79.72
 18:00  -0.20  95.70  -0.20   0.00  -0.20  98.00  -0.21  93.79  79.05
 18:15  -0.20  95.70  -0.21   0.00  -0.21  98.00  -0.21  93.79  78.36
 18:30  -0.20  95.70  -0.21   0.00  -0.21  98.00  -0.22  93.79  77.66
 18:45  -0.20  95.70  -0.21   0.00  -0.21  98.00  -0.21  93.79  76.97
 19:00  -0.19  95.70  -0.20   0.00  -0.20  98.00  -0.20  93.79  76.33
 19:15  -0.18  95.70  -0.19   0.00  -0.19  98.00  -0.19  93.79  75.70
 19:30  -0.18  95.70  -0.19   0.00  -0.19  98.00  -0.19  93.79  75.09
 19:45   0.00     --   0.00   0.00   0.00     --   0.00     --  75.09
 20:00   0.00     --   0.00   0.00   0.00     --   0.00     --  75.09
 20:15   0.00     --   0.00   0.00   0.00     --   0.00     --  75.09
 20:30   0.00     --   0.00   0.00   0.00     --   0.00     --  75.09
 20:45   0.00     --   0.00   0.00   0.00     --   0.00     --  75.09
 21:00  -0.13  95.70  -0.14   0.00  -0.14  98.00  -0.14  93.79  74.63
 21:15  -0.13  95.70  -0.14   0.00  -0.14  98.00  -0.14  93.79  74.17
 21:30   0.00     --   0.00   0.00   0.00     --   0.00     --  74.17
 21:45   0.00     --   0.00   0.00   0.00     --   0.00     --  74.17
 22:00  -0.13  95.70  -0.14   0.00  -0.14  98.00  -0.14  93.79  73.72
 22:15  -0.13  95.70  -0.13   0.00  -0.13  98.00  -0.14  93.79  73.28
 22:30  -0.13  95.70  -0.13   0.00  -0.13  98.00  -0.14  93.79  72.85
 22:45   0.00     --   0.00   0.00   0.00     --   0.00     --  72.85
 23:00   0.00     --   0.00   0.00   0.00     --   0.00     --  72.85
 23:15   0.00     --   0.00   0.00   0.00     --   0.00     --  72.85
 23:30   0.00     --   0.00   0.00   0.00     --   0.00     --  72.85
 23:45   0.00     --   0.00   0.00   0.00     --   0.00     --  72.85
Totaal   4.91     --   4.18   0.00   4.18     --   3.98     --    NaN
2026-02-04 11:15:12 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.54   0.19   0.00   0.00   0.00   0.72   0.00   -0.11  20.00
 11:30    0.00     0.00   0.00   0.57   0.19   0.00   0.00   0.00   0.77   0.00   -0.12  20.00
 11:45    0.57     0.00   0.00   0.02   0.21   0.00   0.00   0.00   0.80   0.00   -0.01  20.00
 12:00    0.61     0.00   0.01   0.00   0.24   0.00   0.00   0.00   0.84   0.00   -0.00  20.00
 12:15    0.62     0.00   0.00   0.00   0.26   0.00   0.00   0.00   0.88   0.00   -0.00  20.00
 12:30    0.64     0.00   0.00   0.00   0.27   0.00   0.00   0.00   0.92   0.00   -0.00  20.00
 12:45    0.66     0.00   0.00   0.00   0.27   0.00   0.00   0.00   0.93   0.00   -0.00  20.00
 13:00    0.69     0.00   0.00   0.00   0.25   0.00   0.00   0.00   0.94   0.00   -0.00  20.00
 13:15    0.70     0.00   0.00   0.00   0.25   0.00   0.00   0.00   0.95   0.00   -0.00  20.00
 13:30    0.72     0.00   0.00   0.00   0.24   0.00   0.00   0.00   0.96   0.00   -0.00  20.00
 13:45    0.69     0.00   0.00   0.00   0.23   0.00   0.00   0.00   0.92   0.00   -0.00  20.00
 14:00    0.63     0.00   0.00   0.00   0.21   0.00   0.00   0.00   0.84   0.00   -0.00  20.00
 14:15    0.61     0.00   0.02   0.00   0.20   0.00   0.00   0.00   0.80   0.00   -0.00  20.00
 14:30    0.00     0.00   0.00   0.57   0.19   0.00   0.00   0.00   0.76   0.00   -0.12  20.00
 14:45    0.00     0.00   0.00   0.52   0.18   0.00   0.00   0.00   0.70   0.00   -0.11  20.00
 15:00    0.46     0.00   0.00   0.00   0.16   0.00   0.00   0.00   0.62   0.00   -0.00  20.00
 15:15    0.00     0.00   0.00   0.41   0.15   0.00   0.00   0.00   0.56   0.00   -0.08  20.00
 15:30    0.00     0.00   0.00   0.36   0.14   0.00   0.00   0.00   0.50   0.00   -0.08  20.00
 15:45    0.00     0.00   0.00   0.28   0.14   0.00   0.00   0.00   0.42   0.00   -0.06  20.00
 16:00    0.00     0.00   0.00   0.19   0.14   0.00   0.00   0.00   0.33   0.00   -0.04  20.00
 16:15    0.00     0.00   0.00   0.11   0.14   0.00   0.00   0.00   0.26   0.00   -0.02  20.00
 16:30    0.00     0.00   0.00   0.04   0.14   0.00   0.00   0.00   0.18   0.00   -0.01  20.00
 16:45    0.00     0.03   0.00   0.00   0.16   0.00   0.00   0.00   0.13   0.00   -0.00  20.00
 17:00    0.00     0.10   0.00   0.00   0.18   0.00   0.00   0.00   0.08   0.00   -0.00  20.00
 17:15    0.00     0.17   0.00   0.00   0.19   0.00   0.00   0.00   0.02   0.00   -0.00  20.00
 17:30    0.00     0.20   0.00   0.00   0.20   0.00   0.00   0.00   0.00   0.00   -0.00  20.00
 17:45    0.00     0.20   0.00   0.00   0.20   0.00   0.00   0.00   0.00   0.00   -0.00  20.00
 18:00    0.00     0.20   0.00   0.00   0.20   0.00   0.00   0.00   0.01   0.00   -0.00  20.00
 18:15    0.00     0.20   0.00   0.00   0.20   0.00   0.00   0.00   0.00   0.00   -0.00  20.00
 18:30    0.00     0.20   0.00   0.00   0.21   0.00   0.00   0.00   0.00   0.00   -0.00  20.00
 18:45    0.00     0.20   0.00   0.00   0.20   0.00   0.00   0.00   0.00   0.00   -0.00  20.00
 19:00    0.00     0.19   0.00   0.00   0.19   0.00   0.00   0.00   0.00   0.00   -0.00  20.00
 19:15    0.00     0.18   0.00   0.00   0.19   0.00   0.00   0.00   0.00   0.00   -0.00  20.00
 19:30    0.00     0.18   0.00   0.00   0.18   0.00   0.00   0.00   0.00   0.00   -0.00  20.00
 19:45    0.00     0.00   0.17   0.00   0.17   0.00   0.00   0.00   0.00   0.04   -0.00  20.00
 20:00    0.00     0.00   0.15   0.00   0.15   0.00   0.00   0.00   0.00   0.04   -0.00  20.00
 20:15    0.00     0.00   0.14   0.00   0.14   0.00   0.00   0.00   0.00   0.03   -0.00  20.00
 20:30    0.00     0.00   0.13   0.00   0.13   0.00   0.00   0.00   0.00   0.03   -0.00  20.00
 20:45    0.00     0.00   0.13   0.00   0.13   0.00   0.00   0.00   0.00   0.03   -0.00  20.00
 21:00    0.00     0.13   0.00   0.00   0.14   0.00   0.00   0.00   0.00   0.00   -0.00  20.00
 21:15    0.00     0.13   0.00   0.00   0.14   0.00   0.00   0.00   0.00   0.00   -0.00  20.00
 21:30    0.00     0.00   0.13   0.00   0.14   0.00   0.00   0.00   0.00   0.03   -0.00  20.00
 21:45    0.00     0.00   0.13   0.00   0.13   0.00   0.00   0.00   0.00   0.03   -0.00  20.00
 22:00    0.00     0.13   0.00   0.00   0.13   0.00   0.00   0.00   0.00   0.00   -0.00  20.00
 22:15    0.00     0.13   0.00   0.00   0.13   0.00   0.00   0.00   0.00   0.00   -0.00  20.00
 22:30    0.00     0.13   0.00   0.00   0.13   0.00   0.00   0.00   0.00   0.00   -0.00  20.00
 22:45    0.00     0.00   0.12   0.00   0.12   0.00   0.00   0.00   0.00   0.03   -0.00  20.00
 23:00    0.00     0.00   0.11   0.00   0.11   0.00   0.00   0.00   0.00   0.03   -0.00  20.00
 23:15    0.00     0.00   0.10   0.00   0.11   0.00   0.00   0.00   0.00   0.02   -0.00  20.00
 23:30    0.00     0.00   0.10   0.00   0.10   0.00   0.00   0.00   0.00   0.02   -0.00  20.00
 23:45    0.00     0.00   0.09   0.00   0.09   0.00   0.00   0.00   0.00   0.02   -0.00  20.00
Totaal    7.61     2.70   1.52   3.61   8.90   0.00   0.00   0.00  15.89   0.36   -0.76    NaN

2026-02-04 11:15:12 info: Consumption               1.52 (kWh)
2026-02-04 11:15:12 info: Cost consumption          0.36 (€)
2026-02-04 11:15:12 info: Tariff consumption        0.240 (€/kWh)
2026-02-04 11:15:12 info: Production                3.61 (kWh)
..
..
De hele 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
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
2026-02-04 11:15:09 info: Day Ahead Optimalisering versie: 2026.02.0.rc1
2026-02-04 11:15:09 info: Day Ahead Optimalisering gestart op: 04-02-2026 11:15:09
2026-02-04 11:15:09 info: Day Ahead Optimalisatie gestart: 04-02-2026 11:15:09 taak: calc_optimum
2026-02-04 11:15:09 info: Debug = False
2026-02-04 11:15:09 info: Zelf berekende baseload
2026-02-04 11:15:09 info: ML prediction Growatt
                   date_time  prediction
0  2026-02-04 11:00:00+01:00       1.760
1  2026-02-04 12:00:00+01:00       1.973
2  2026-02-04 13:00:00+01:00       1.976
3  2026-02-04 14:00:00+01:00       1.724
4  2026-02-04 15:00:00+01:00       1.275
5  2026-02-04 16:00:00+01:00       0.571
6  2026-02-04 17:00:00+01:00       0.023
7  2026-02-04 18:00:00+01:00       0.009
8  2026-02-04 19:00:00+01:00       0.009
9  2026-02-04 20:00:00+01:00       0.009
10 2026-02-04 21:00:00+01:00       0.008
11 2026-02-04 22:00:00+01:00       0.008
12 2026-02-04 23:00:00+01:00       0.008
2026-02-04 11:15:09 info: ML prediction schuurzuid
                   date_time  prediction
0  2026-02-04 11:00:00+01:00       0.343
1  2026-02-04 12:00:00+01:00       0.449
2  2026-02-04 13:00:00+01:00       0.449
3  2026-02-04 14:00:00+01:00       0.324
4  2026-02-04 15:00:00+01:00       0.183
5  2026-02-04 16:00:00+01:00       0.065
6  2026-02-04 17:00:00+01:00       0.005
7  2026-02-04 18:00:00+01:00       0.001
8  2026-02-04 19:00:00+01:00       0.001
9  2026-02-04 20:00:00+01:00       0.001
10 2026-02-04 21:00:00+01:00       0.001
11 2026-02-04 22:00:00+01:00       0.001
12 2026-02-04 23:00:00+01:00       0.001
2026-02-04 11:15:09 info: ML prediction schuurmidden
                   date_time  prediction
0  2026-02-04 11:00:00+01:00       0.316
1  2026-02-04 12:00:00+01:00       0.432
2  2026-02-04 13:00:00+01:00       0.431
3  2026-02-04 14:00:00+01:00       0.320
4  2026-02-04 15:00:00+01:00       0.175
5  2026-02-04 16:00:00+01:00       0.063
6  2026-02-04 17:00:00+01:00       0.004
7  2026-02-04 18:00:00+01:00       0.001
8  2026-02-04 19:00:00+01:00       0.001
9  2026-02-04 20:00:00+01:00       0.001
10 2026-02-04 21:00:00+01:00       0.001
11 2026-02-04 22:00:00+01:00       0.001
12 2026-02-04 23:00:00+01:00       0.001
2026-02-04 11:15:09 info: ML prediction schuurnoord
                   date_time  prediction
0  2026-02-04 11:00:00+01:00       0.319
1  2026-02-04 12:00:00+01:00       0.457
2  2026-02-04 13:00:00+01:00       0.447
3  2026-02-04 14:00:00+01:00       0.319
4  2026-02-04 15:00:00+01:00       0.163
5  2026-02-04 16:00:00+01:00       0.059
6  2026-02-04 17:00:00+01:00       0.002
7  2026-02-04 18:00:00+01:00       0.000
8  2026-02-04 19:00:00+01:00       0.000
9  2026-02-04 20:00:00+01:00       0.000
10 2026-02-04 21:00:00+01:00       0.000
11 2026-02-04 22:00:00+01:00       0.000
12 2026-02-04 23:00:00+01:00       0.000
2026-02-04 11:15:09 info: ML prediction schuurplatnoord
                   date_time  prediction
0  2026-02-04 11:00:00+01:00       0.098
1  2026-02-04 12:00:00+01:00       0.086
2  2026-02-04 13:00:00+01:00       0.093
3  2026-02-04 14:00:00+01:00       0.094
4  2026-02-04 15:00:00+01:00       0.095
5  2026-02-04 16:00:00+01:00       0.062
6  2026-02-04 17:00:00+01:00       0.002
7  2026-02-04 18:00:00+01:00       0.001
8  2026-02-04 19:00:00+01:00       0.000
9  2026-02-04 20:00:00+01:00       0.000
10 2026-02-04 21:00:00+01:00       0.000
11 2026-02-04 22:00:00+01:00       0.000
12 2026-02-04 23:00:00+01:00       0.000
2026-02-04 11:15:09 info: ML prediction erker
                   date_time  prediction
0  2026-02-04 11:00:00+01:00       0.104
1  2026-02-04 12:00:00+01:00       0.096
2  2026-02-04 13:00:00+01:00       0.046
3  2026-02-04 14:00:00+01:00       0.038
4  2026-02-04 15:00:00+01:00       0.033
5  2026-02-04 16:00:00+01:00       0.018
6  2026-02-04 17:00:00+01:00       0.001
7  2026-02-04 18:00:00+01:00       0.000
8  2026-02-04 19:00:00+01:00       0.000
9  2026-02-04 20:00:00+01:00       0.000
10 2026-02-04 21:00:00+01:00       0.000
11 2026-02-04 22:00:00+01:00       0.000
12 2026-02-04 23:00:00+01:00       0.000
2026-02-04 11:15:09 info: ML prediction aanbouw
                   date_time  prediction
0  2026-02-04 11:00:00+01:00       0.056
1  2026-02-04 12:00:00+01:00       0.075
2  2026-02-04 13:00:00+01:00       0.325
3  2026-02-04 14:00:00+01:00       0.278
4  2026-02-04 15:00:00+01:00       0.174
5  2026-02-04 16:00:00+01:00       0.058
6  2026-02-04 17:00:00+01:00       0.004
7  2026-02-04 18:00:00+01:00       0.001
8  2026-02-04 19:00:00+01:00       0.001
9  2026-02-04 20:00:00+01:00       0.001
10 2026-02-04 21:00:00+01:00       0.001
11 2026-02-04 22:00:00+01:00       0.001
12 2026-02-04 23:00:00+01:00       0.001
2026-02-04 11:15:09 info: Start waarden: 
      uur                tijd  spot   p_l   p_t  base  pv_ac  pv_dc
0   11:15 2026-02-04 11:15:00 0.101 0.255 0.211 0.190  0.724      0
1   11:30 2026-02-04 11:30:00 0.097 0.250 0.206 0.193  0.767      0
2   11:45 2026-02-04 11:45:00 0.096 0.249 0.205 0.209  0.803      0
3   12:00 2026-02-04 12:00:00 0.096 0.248 0.204 0.241  0.844      0
4   12:15 2026-02-04 12:15:00 0.093 0.245 0.201 0.258  0.880      0
5   12:30 2026-02-04 12:30:00 0.090 0.242 0.198 0.274  0.916      0
6   12:45 2026-02-04 12:45:00 0.090 0.242 0.198 0.270  0.928      0
7   13:00 2026-02-04 13:00:00 0.092 0.244 0.200 0.250  0.937      0
8   13:15 2026-02-04 13:15:00 0.090 0.242 0.198 0.246  0.949      0
9   13:30 2026-02-04 13:30:00 0.088 0.239 0.196 0.241  0.962      0
10  13:45 2026-02-04 13:45:00 0.090 0.242 0.198 0.230  0.920      0
11  14:00 2026-02-04 14:00:00 0.090 0.242 0.198 0.214  0.842      0
12  14:15 2026-02-04 14:15:00 0.091 0.243 0.199 0.203  0.800      0
13  14:30 2026-02-04 14:30:00 0.095 0.247 0.204 0.192  0.758      0
14  14:45 2026-02-04 14:45:00 0.100 0.253 0.209 0.179  0.696      0
15  15:00 2026-02-04 15:00:00 0.093 0.246 0.202 0.162  0.621      0
16  15:15 2026-02-04 15:15:00 0.097 0.250 0.206 0.149  0.559      0
17  15:30 2026-02-04 15:30:00 0.103 0.257 0.214 0.136  0.496      0
18  15:45 2026-02-04 15:45:00 0.106 0.262 0.218 0.137  0.421      0
19  16:00 2026-02-04 16:00:00 0.103 0.257 0.214 0.144  0.331      0
20  16:15 2026-02-04 16:15:00 0.109 0.264 0.221 0.144  0.256      0
21  16:30 2026-02-04 16:30:00 0.115 0.272 0.228 0.145  0.181      0
22  16:45 2026-02-04 16:45:00 0.122 0.281 0.237 0.156  0.128      0
23  17:00 2026-02-04 17:00:00 0.116 0.273 0.229 0.178  0.077      0
24  17:15 2026-02-04 17:15:00 0.120 0.278 0.234 0.190  0.024      0
25  17:30 2026-02-04 17:30:00 0.124 0.283 0.240 0.202  0.000      0
26  17:45 2026-02-04 17:45:00 0.126 0.285 0.241 0.204  0.000      0
27  18:00 2026-02-04 18:00:00 0.114 0.271 0.227 0.201  0.005      0
28  18:15 2026-02-04 18:15:00 0.115 0.272 0.228 0.204  0.004      0
29  18:30 2026-02-04 18:30:00 0.117 0.274 0.230 0.206  0.002      0
30  18:45 2026-02-04 18:45:00 0.114 0.270 0.226 0.201  0.002      0
31  19:00 2026-02-04 19:00:00 0.113 0.269 0.226 0.191  0.003      0
32  19:15 2026-02-04 19:15:00 0.104 0.259 0.215 0.186  0.003      0
33  19:30 2026-02-04 19:30:00 0.100 0.253 0.210 0.181  0.003      0
34  19:45 2026-02-04 19:45:00 0.094 0.246 0.202 0.169  0.003      0
35  20:00 2026-02-04 20:00:00 0.094 0.246 0.203 0.151  0.003      0
36  20:15 2026-02-04 20:15:00 0.086 0.237 0.193 0.140  0.003      0
37  20:30 2026-02-04 20:30:00 0.086 0.237 0.193 0.128  0.003      0
38  20:45 2026-02-04 20:45:00 0.090 0.242 0.198 0.128  0.003      0
39  21:00 2026-02-04 21:00:00 0.099 0.252 0.209 0.136  0.003      0
40  21:15 2026-02-04 21:15:00 0.095 0.248 0.204 0.136  0.003      0
41  21:30 2026-02-04 21:30:00 0.092 0.244 0.200 0.135  0.003      0
42  21:45 2026-02-04 21:45:00 0.087 0.238 0.194 0.134  0.003      0
43  22:00 2026-02-04 22:00:00 0.096 0.249 0.206 0.133  0.003      0
44  22:15 2026-02-04 22:15:00 0.094 0.246 0.202 0.131  0.003      0
45  22:30 2026-02-04 22:30:00 0.094 0.246 0.202 0.130  0.003      0
46  22:45 2026-02-04 22:45:00 0.088 0.239 0.195 0.123  0.003      0
47  23:00 2026-02-04 23:00:00 0.090 0.242 0.198 0.113  0.003      0
48  23:15 2026-02-04 23:15:00 0.085 0.235 0.192 0.107  0.003      0
49  23:30 2026-02-04 23:30:00 0.085 0.236 0.192 0.101  0.003      0
50  23:45 2026-02-04 23:45:00 0.080 0.229 0.185 0.095  0.003      0
2026-02-04 11:15:10 info: No reduced hours applied for Accu schuur
2026-02-04 11:15:10 info: Startwaarde SoC Accu schuur: 60.0%

2026-02-04 11:15:10 info: Boiler niet aanwezig of staat uit, boiler wordt niet ingepland
2026-02-04 11:15:10 info: Instellingen voor laden van EV: Corsa-E
2026-02-04 11:15:10 info: Direct laden is uit
2026-02-04 11:15:10 info:  Ampere  Effic. Grid kW Accu kW
2026-02-04 11:15:10 info:    0.00    1.00    0.00    0.00
2026-02-04 11:15:10 info:    6.00    0.95    1.38    1.31
2026-02-04 11:15:10 info:    7.00    0.95    1.61    1.53
2026-02-04 11:15:10 info:    8.00    0.95    1.84    1.75
2026-02-04 11:15:10 info:   18.00    0.95    4.14    3.93
2026-02-04 11:15:10 info:   21.00    0.95    4.83    4.59
2026-02-04 11:15:10 info:   24.00    0.95    5.52    5.24
2026-02-04 11:15:10 info:   27.00    0.95    6.21    5.90
2026-02-04 11:15:10 info:   30.00    0.95    6.90    6.55
2026-02-04 11:15:10 info:   33.00    0.94    7.59    7.13
2026-02-04 11:15:10 info:   36.00    0.93    8.28    7.70
2026-02-04 11:15:10 info:   39.00    0.92    8.97    8.25
2026-02-04 11:15:10 info:   42.00    0.91    9.66    8.79
2026-02-04 11:15:10 info:   45.00    0.85   10.35    8.80
2026-02-04 11:15:10 info:   48.00    0.80   11.04    8.83
2026-02-04 11:15:10 info: Capaciteit accu: 47.0 kWh
2026-02-04 11:15:10 info: Maximaal laadvermogen: 11.04 kW
2026-02-04 11:15:10 info: Klaar met laden op: 05-02-2026 07:00:00
2026-02-04 11:15:10 info: Huidig laadniveau: 85.0 %
2026-02-04 11:15:10 info: Gewenst laadniveau:35.0 %
2026-02-04 11:15:10 info: Marge voor het laden: 1 %
2026-02-04 11:15:10 info: Locatie: home
2026-02-04 11:15:10 info: Ingeplugged:False
2026-02-04 11:15:10 info: Benodigde netto energie: 0.000 kWh
2026-02-04 11:15:10 info: Tijd nodig om te laden: 0:0 uur
2026-02-04 11:15:10 info: Afgerond naar hele intervallen: 0 kwartier
2026-02-04 11:15:10 info: Stand laden schakelaar: off
2026-02-04 11:15:10 info: Stand aantal ampere laden: 0.0 A
2026-02-04 11:15:10 info: Opladen wordt niet ingepland, omdat werkelijk niveau (85.0%) hoger is of gelijk aan gewenst niveau (35.0% minus de marge 1%), auto is niet ingeplugd, opgegeven tijdstip (2026-02-05 07:00:00) ligt voorbij de planningshorizon (2026-02-04 23:45:00).
2026-02-04 11:15:10 info: Instellingen voor laden van EV: boiler
2026-02-04 11:15:10 info: Direct laden is uit
2026-02-04 11:15:10 info:  Ampere  Effic. Grid kW Accu kW
2026-02-04 11:15:10 info:    0.00    1.00    0.00    0.00
2026-02-04 11:15:10 info:    4.00    0.93    0.92    0.86
2026-02-04 11:15:10 info:    5.00    0.93    1.15    1.07
2026-02-04 11:15:10 info:    6.00    0.95    1.38    1.31
2026-02-04 11:15:10 info:    7.00    0.97    1.61    1.56
2026-02-04 11:15:10 info:    8.00    0.99    1.84    1.82
2026-02-04 11:15:10 info:    9.00    0.99    2.07    2.05
2026-02-04 11:15:10 info:   10.00    0.99    2.30    2.28
2026-02-04 11:15:10 info: Capaciteit accu: 13.4 kWh
2026-02-04 11:15:10 info: Maximaal laadvermogen: 2.3 kW
2026-02-04 11:15:10 info: Klaar met laden op: 04-02-2026 18:00:00
2026-02-04 11:15:10 info: Huidig laadniveau: 15.3874998092651 %
2026-02-04 11:15:10 info: Gewenst laadniveau:70.0 %
2026-02-04 11:15:10 info: Marge voor het laden: 1 %
2026-02-04 11:15:10 info: Locatie: home
2026-02-04 11:15:10 info: Ingeplugged:False
2026-02-04 11:15:10 info: Benodigde netto energie: 7.318 kWh
2026-02-04 11:15:10 info: Tijd nodig om te laden: 3:13 uur
2026-02-04 11:15:10 info: Afgerond naar hele intervallen: 13 kwartier
2026-02-04 11:15:10 info: Stand laden schakelaar: off
2026-02-04 11:15:10 info: Stand aantal ampere laden: 0.0 A
2026-02-04 11:15:10 info: Opladen wordt niet ingepland, omdat auto is niet ingeplugd.
2026-02-04 11:15:10 info: Warmtepomp niet aanwezig - warmtepomp wordt niet ingepland
2026-02-04 11:15:10 info: Strategie: minimale kosten
2026-02-04 11:15:10 info: Maximale fout (maximal gap): 0.005000 euro
2026-02-04 11:15:11 info: Rekentijd: 0.88  sec
2026-02-04 11:15:11 info: Het programma heeft een optimale oplossing gevonden.
2026-02-04 11:15:11 info: Laad volume in uur 2 11:45 0.0 kWh
2026-02-04 11:15:11 info: 8 1.0 2.274
2026-02-04 11:15:11 info: Laad volume in uur 3 12:00 0.0 kWh
2026-02-04 11:15:11 info: 9 1.0 2.456
2026-02-04 11:15:11 info: Laad volume in uur 4 12:15 0.0 kWh
2026-02-04 11:15:11 info: 9 0.9412296225483553 2.456
2026-02-04 11:15:11 info: 10 0.058770377451644616 3.009
2026-02-04 11:15:11 info: Laad volume in uur 5 12:30 0.0 kWh
2026-02-04 11:15:11 info: 9 0.8015369033242218 2.456
2026-02-04 11:15:11 info: 10 0.1984630966757783 3.009
2026-02-04 11:15:11 info: Laad volume in uur 6 12:45 0.0 kWh
2026-02-04 11:15:11 info: 9 0.6772151434992791 2.456
2026-02-04 11:15:11 info: 10 0.32278485650072103 3.009
2026-02-04 11:15:11 info: Laad volume in uur 7 13:00 0.0 kWh
2026-02-04 11:15:11 info: 9 0.4778482481352245 2.456
2026-02-04 11:15:11 info: 10 0.5221517518647756 3.009
2026-02-04 11:15:11 info: Laad volume in uur 8 13:15 0.0 kWh
2026-02-04 11:15:11 info: 9 0.3535262727419445 2.456
2026-02-04 11:15:11 info: 10 0.6464737272580555 3.009
2026-02-04 11:15:11 info: Laad volume in uur 9 13:30 0.0 kWh
2026-02-04 11:15:11 info: 9 0.22920450618049285 2.456
2026-02-04 11:15:11 info: 10 0.7707954938195072 3.009
2026-02-04 11:15:11 info: Laad volume in uur 10 13:45 0.0 kWh
2026-02-04 11:15:11 info: 9 0.4511755200045648 2.456
2026-02-04 11:15:11 info: 10 0.5488244799954352 3.009
2026-02-04 11:15:11 info: Laad volume in uur 11 14:00 0.0 kWh
2026-02-04 11:15:11 info: 9 0.8985082712597042 2.456
2026-02-04 11:15:11 info: 10 0.10149172874029576 3.009
2026-02-04 11:15:11 info: Laad volume in uur 12 14:15 0.0 kWh
2026-02-04 11:15:11 info: 9 1.0 2.456
2026-02-04 11:15:11 info: Laad volume in uur 15 15:00 0.0 kWh
2026-02-04 11:15:11 info: 7 0.5267210031999044 1.446
2026-02-04 11:15:11 info: 8 0.4732789968000955 2.274
2026-02-04 11:15:11 info: Ontlaad volume in uur 22 16:45 0.028578129437752075 kWh
2026-02-04 11:15:11 info: 8 0.0612607276264782 1.866
2026-02-04 11:15:11 info: Ontlaad volume in uur 23 17:00 0.10096875230234581 kWh
2026-02-04 11:15:11 info: 8 0.21643891168777238 1.866
2026-02-04 11:15:11 info: Ontlaad volume in uur 24 17:15 0.16596875000197905 kWh
2026-02-04 11:15:11 info: 8 0.35577438371270964 1.866
2026-02-04 11:15:11 info: Ontlaad volume in uur 25 17:30 0.201578125 kWh
2026-02-04 11:15:11 info: 8 0.43210744908896037 1.866
2026-02-04 11:15:11 info: Ontlaad volume in uur 26 17:45 0.20395312499999999 kWh
2026-02-04 11:15:11 info: 8 0.4371985530546624 1.866
2026-02-04 11:15:11 info: Ontlaad volume in uur 27 18:00 0.1959062501502631 kWh
2026-02-04 11:15:11 info: 8 0.4199490892824504 1.866
2026-02-04 11:15:11 info: Ontlaad volume in uur 28 18:15 0.20003124995689725 kWh
2026-02-04 11:15:11 info: 8 0.42879153259785047 1.866
2026-02-04 11:15:11 info: Ontlaad volume in uur 29 18:30 0.20401562502788154 kWh
2026-02-04 11:15:11 info: 8 0.4373325295345799 1.866
2026-02-04 11:15:11 info: Ontlaad volume in uur 30 18:45 0.1987656250381261 kWh
2026-02-04 11:15:11 info: 8 0.4260785102639359 1.866
2026-02-04 11:15:11 info: Ontlaad volume in uur 31 19:00 0.18812500005934274 kWh
2026-02-04 11:15:11 info: 8 0.40326902477886983 1.866
2026-02-04 11:15:11 info: Ontlaad volume in uur 32 19:15 0.18287500005503535 kWh
2026-02-04 11:15:11 info: 8 0.3920150054770318 1.866
2026-02-04 11:15:11 info: Ontlaad volume in uur 33 19:30 0.17757812506123444 kWh
2026-02-04 11:15:11 info: 8 0.38066050388260336 1.866
2026-02-04 11:15:11 info: Ontlaad volume in uur 39 21:00 0.1332656248274725 kWh
2026-02-04 11:15:11 info: 8 0.2856712214951179 1.866
2026-02-04 11:15:11 info: Ontlaad volume in uur 40 21:15 0.13295312495413236 kWh
2026-02-04 11:15:11 info: 8 0.28500133966587854 1.866
2026-02-04 11:15:11 info: Ontlaad volume in uur 43 22:00 0.12995312486938201 kWh
2026-02-04 11:15:11 info: 8 0.27857047131700324 1.866
2026-02-04 11:15:11 info: Ontlaad volume in uur 44 22:15 0.128453124869382 kWh
2026-02-04 11:15:11 info: 8 0.27535503723340193 1.866
2026-02-04 11:15:11 info: Ontlaad volume in uur 45 22:30 0.126953124869382 kWh
2026-02-04 11:15:11 info: 8 0.2721396031498007 1.866
2026-02-04 11:15:11 info: In- en uitgaande energie per kwartier batterij Accu schuur
   uur   ac->    eff   ->dc pv->dc   dc->    eff  ->bat  o_eff    SoC
          kWh      %    kWh    kWh    kWh      %    kWh      %      %
 11:15   0.00     --   0.00   0.00   0.00     --   0.00     --  60.00
 11:30   0.00     --   0.00   0.00   0.00     --   0.00     --  60.00
 11:45   0.57  92.00   0.52   0.00   0.52  98.00   0.51  90.16  61.65
 12:00   0.61  92.00   0.56   0.00   0.56  98.00   0.55  90.16  63.44
 12:15   0.62  92.01   0.57   0.00   0.57  98.00   0.56  90.17  65.25
 12:30   0.64  92.05   0.59   0.00   0.59  98.00   0.58  90.21  67.12
 12:45   0.66  92.07   0.61   0.00   0.61  98.00   0.59  90.23  69.03
 13:00   0.69  92.11   0.63   0.00   0.63  98.00   0.62  90.27  71.03
 13:15   0.70  92.14   0.65   0.00   0.65  98.00   0.64  90.30  73.08
 13:30   0.72  92.16   0.66   0.00   0.66  98.00   0.65  90.32  75.18
 13:45   0.69  92.12   0.64   0.00   0.64  98.00   0.62  90.28  77.19
 14:00   0.63  92.02   0.58   0.00   0.58  98.00   0.57  90.18  79.01
 14:15   0.61  92.00   0.56   0.00   0.56  98.00   0.55  90.16  80.80
 14:30   0.00     --   0.00   0.00   0.00     --   0.00     --  80.80
 14:45   0.00     --   0.00   0.00   0.00     --   0.00     --  80.80
 15:00   0.46  91.71   0.42   0.00   0.42  98.00   0.41  89.88  82.13
 15:15   0.00     --   0.00   0.00   0.00     --   0.00     --  82.13
 15:30   0.00     --   0.00   0.00   0.00     --   0.00     --  82.13
 15:45   0.00     --   0.00   0.00   0.00     --   0.00     --  82.13
 16:00   0.00     --   0.00   0.00   0.00     --   0.00     --  82.13
 16:15   0.00     --   0.00   0.00   0.00     --   0.00     --  82.13
 16:30   0.00     --   0.00   0.00   0.00     --   0.00     --  82.13
 16:45  -0.03  95.70  -0.03   0.00  -0.03  98.00  -0.03  93.79  82.03
 17:00  -0.10  95.70  -0.11   0.00  -0.11  98.00  -0.11  93.79  81.69
 17:15  -0.17  95.70  -0.17   0.00  -0.17  98.00  -0.18  93.79  81.12
 17:30  -0.20  95.70  -0.21   0.00  -0.21  98.00  -0.21  93.79  80.42
 17:45  -0.20  95.70  -0.21   0.00  -0.21  98.00  -0.22  93.79  79.72
 18:00  -0.20  95.70  -0.20   0.00  -0.20  98.00  -0.21  93.79  79.05
 18:15  -0.20  95.70  -0.21   0.00  -0.21  98.00  -0.21  93.79  78.36
 18:30  -0.20  95.70  -0.21   0.00  -0.21  98.00  -0.22  93.79  77.66
 18:45  -0.20  95.70  -0.21   0.00  -0.21  98.00  -0.21  93.79  76.97
 19:00  -0.19  95.70  -0.20   0.00  -0.20  98.00  -0.20  93.79  76.33
 19:15  -0.18  95.70  -0.19   0.00  -0.19  98.00  -0.19  93.79  75.70
 19:30  -0.18  95.70  -0.19   0.00  -0.19  98.00  -0.19  93.79  75.09
 19:45   0.00     --   0.00   0.00   0.00     --   0.00     --  75.09
 20:00   0.00     --   0.00   0.00   0.00     --   0.00     --  75.09
 20:15   0.00     --   0.00   0.00   0.00     --   0.00     --  75.09
 20:30   0.00     --   0.00   0.00   0.00     --   0.00     --  75.09
 20:45   0.00     --   0.00   0.00   0.00     --   0.00     --  75.09
 21:00  -0.13  95.70  -0.14   0.00  -0.14  98.00  -0.14  93.79  74.63
 21:15  -0.13  95.70  -0.14   0.00  -0.14  98.00  -0.14  93.79  74.17
 21:30   0.00     --   0.00   0.00   0.00     --   0.00     --  74.17
 21:45   0.00     --   0.00   0.00   0.00     --   0.00     --  74.17
 22:00  -0.13  95.70  -0.14   0.00  -0.14  98.00  -0.14  93.79  73.72
 22:15  -0.13  95.70  -0.13   0.00  -0.13  98.00  -0.14  93.79  73.28
 22:30  -0.13  95.70  -0.13   0.00  -0.13  98.00  -0.14  93.79  72.85
 22:45   0.00     --   0.00   0.00   0.00     --   0.00     --  72.85
 23:00   0.00     --   0.00   0.00   0.00     --   0.00     --  72.85
 23:15   0.00     --   0.00   0.00   0.00     --   0.00     --  72.85
 23:30   0.00     --   0.00   0.00   0.00     --   0.00     --  72.85
 23:45   0.00     --   0.00   0.00   0.00     --   0.00     --  72.85
Totaal   4.91     --   4.18   0.00   4.18     --   3.98     --    NaN
2026-02-04 11:15:12 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.54   0.19   0.00   0.00   0.00   0.72   0.00   -0.11  20.00
 11:30    0.00     0.00   0.00   0.57   0.19   0.00   0.00   0.00   0.77   0.00   -0.12  20.00
 11:45    0.57     0.00   0.00   0.02   0.21   0.00   0.00   0.00   0.80   0.00   -0.01  20.00
 12:00    0.61     0.00   0.01   0.00   0.24   0.00   0.00   0.00   0.84   0.00   -0.00  20.00
 12:15    0.62     0.00   0.00   0.00   0.26   0.00   0.00   0.00   0.88   0.00   -0.00  20.00
 12:30    0.64     0.00   0.00   0.00   0.27   0.00   0.00   0.00   0.92   0.00   -0.00  20.00
 12:45    0.66     0.00   0.00   0.00   0.27   0.00   0.00   0.00   0.93   0.00   -0.00  20.00
 13:00    0.69     0.00   0.00   0.00   0.25   0.00   0.00   0.00   0.94   0.00   -0.00  20.00
 13:15    0.70     0.00   0.00   0.00   0.25   0.00   0.00   0.00   0.95   0.00   -0.00  20.00
 13:30    0.72     0.00   0.00   0.00   0.24   0.00   0.00   0.00   0.96   0.00   -0.00  20.00
 13:45    0.69     0.00   0.00   0.00   0.23   0.00   0.00   0.00   0.92   0.00   -0.00  20.00
 14:00    0.63     0.00   0.00   0.00   0.21   0.00   0.00   0.00   0.84   0.00   -0.00  20.00
 14:15    0.61     0.00   0.02   0.00   0.20   0.00   0.00   0.00   0.80   0.00   -0.00  20.00
 14:30    0.00     0.00   0.00   0.57   0.19   0.00   0.00   0.00   0.76   0.00   -0.12  20.00
 14:45    0.00     0.00   0.00   0.52   0.18   0.00   0.00   0.00   0.70   0.00   -0.11  20.00
 15:00    0.46     0.00   0.00   0.00   0.16   0.00   0.00   0.00   0.62   0.00   -0.00  20.00
 15:15    0.00     0.00   0.00   0.41   0.15   0.00   0.00   0.00   0.56   0.00   -0.08  20.00
 15:30    0.00     0.00   0.00   0.36   0.14   0.00   0.00   0.00   0.50   0.00   -0.08  20.00
 15:45    0.00     0.00   0.00   0.28   0.14   0.00   0.00   0.00   0.42   0.00   -0.06  20.00
 16:00    0.00     0.00   0.00   0.19   0.14   0.00   0.00   0.00   0.33   0.00   -0.04  20.00
 16:15    0.00     0.00   0.00   0.11   0.14   0.00   0.00   0.00   0.26   0.00   -0.02  20.00
 16:30    0.00     0.00   0.00   0.04   0.14   0.00   0.00   0.00   0.18   0.00   -0.01  20.00
 16:45    0.00     0.03   0.00   0.00   0.16   0.00   0.00   0.00   0.13   0.00   -0.00  20.00
 17:00    0.00     0.10   0.00   0.00   0.18   0.00   0.00   0.00   0.08   0.00   -0.00  20.00
 17:15    0.00     0.17   0.00   0.00   0.19   0.00   0.00   0.00   0.02   0.00   -0.00  20.00
 17:30    0.00     0.20   0.00   0.00   0.20   0.00   0.00   0.00   0.00   0.00   -0.00  20.00
 17:45    0.00     0.20   0.00   0.00   0.20   0.00   0.00   0.00   0.00   0.00   -0.00  20.00
 18:00    0.00     0.20   0.00   0.00   0.20   0.00   0.00   0.00   0.01   0.00   -0.00  20.00
 18:15    0.00     0.20   0.00   0.00   0.20   0.00   0.00   0.00   0.00   0.00   -0.00  20.00
 18:30    0.00     0.20   0.00   0.00   0.21   0.00   0.00   0.00   0.00   0.00   -0.00  20.00
 18:45    0.00     0.20   0.00   0.00   0.20   0.00   0.00   0.00   0.00   0.00   -0.00  20.00
 19:00    0.00     0.19   0.00   0.00   0.19   0.00   0.00   0.00   0.00   0.00   -0.00  20.00
 19:15    0.00     0.18   0.00   0.00   0.19   0.00   0.00   0.00   0.00   0.00   -0.00  20.00
 19:30    0.00     0.18   0.00   0.00   0.18   0.00   0.00   0.00   0.00   0.00   -0.00  20.00
 19:45    0.00     0.00   0.17   0.00   0.17   0.00   0.00   0.00   0.00   0.04   -0.00  20.00
 20:00    0.00     0.00   0.15   0.00   0.15   0.00   0.00   0.00   0.00   0.04   -0.00  20.00
 20:15    0.00     0.00   0.14   0.00   0.14   0.00   0.00   0.00   0.00   0.03   -0.00  20.00
 20:30    0.00     0.00   0.13   0.00   0.13   0.00   0.00   0.00   0.00   0.03   -0.00  20.00
 20:45    0.00     0.00   0.13   0.00   0.13   0.00   0.00   0.00   0.00   0.03   -0.00  20.00
 21:00    0.00     0.13   0.00   0.00   0.14   0.00   0.00   0.00   0.00   0.00   -0.00  20.00
 21:15    0.00     0.13   0.00   0.00   0.14   0.00   0.00   0.00   0.00   0.00   -0.00  20.00
 21:30    0.00     0.00   0.13   0.00   0.14   0.00   0.00   0.00   0.00   0.03   -0.00  20.00
 21:45    0.00     0.00   0.13   0.00   0.13   0.00   0.00   0.00   0.00   0.03   -0.00  20.00
 22:00    0.00     0.13   0.00   0.00   0.13   0.00   0.00   0.00   0.00   0.00   -0.00  20.00
 22:15    0.00     0.13   0.00   0.00   0.13   0.00   0.00   0.00   0.00   0.00   -0.00  20.00
 22:30    0.00     0.13   0.00   0.00   0.13   0.00   0.00   0.00   0.00   0.00   -0.00  20.00
 22:45    0.00     0.00   0.12   0.00   0.12   0.00   0.00   0.00   0.00   0.03   -0.00  20.00
 23:00    0.00     0.00   0.11   0.00   0.11   0.00   0.00   0.00   0.00   0.03   -0.00  20.00
 23:15    0.00     0.00   0.10   0.00   0.11   0.00   0.00   0.00   0.00   0.02   -0.00  20.00
 23:30    0.00     0.00   0.10   0.00   0.10   0.00   0.00   0.00   0.00   0.02   -0.00  20.00
 23:45    0.00     0.00   0.09   0.00   0.09   0.00   0.00   0.00   0.00   0.02   -0.00  20.00
Totaal    7.61     2.70   1.52   3.61   8.90   0.00   0.00   0.00  15.89   0.36   -0.76    NaN

2026-02-04 11:15:12 info: Consumption               1.52 (kWh)
2026-02-04 11:15:12 info: Cost consumption          0.36 (€)
2026-02-04 11:15:12 info: Tariff consumption        0.240 (€/kWh)
2026-02-04 11:15:12 info: Production                3.61 (kWh)
2026-02-04 11:15:12 info: Profit production        -0.76 (€)
2026-02-04 11:15:12 info: Tariff production         0.210 (€/kWh)

2026-02-04 11:15:12 info: 
Calculation profit after optimize in €
Cost before optimize             -1.19
Cost consumption      0.36
Cycle cost            0.05
Penalty cost          0.01
Battery storage      -0.89
Boiler storage        0.00
Profit production    -0.76
Total                -1.22
Cost after optimize              -1.22
Profit:                           0.02
2026-02-04 11:15:12 info: Doorzetten van alle settings naar HA
2026-02-04 11:15:12 info: Laden van Corsa-E is niet ingepland
2026-02-04 11:15:12 info: Berekeningsuitkomst voor opladen van Corsa-E:
2026-02-04 11:15:12 info: - aantal ampere 0A (was 0.0A)
2026-02-04 11:15:12 info: - stand schakelaar 'off' (was 'off')
2026-02-04 11:15:12 info: - positie: home
2026-02-04 11:15:12 info: - ingeplugd: False
2026-02-04 11:15:12 info: Corsa-E is niet thuis of niet ingeplugd
2026-02-04 11:15:12 info: Evaluatie status laden Corsa-E op 2026-02-04 11:15
2026-02-04 11:15:12 info: - schakelaar laden: off
2026-02-04 11:15:12 info: - aantal ampere: 0.0
2026-02-04 11:15:12 info: Laden van boiler is niet ingepland
2026-02-04 11:15:12 info: Berekeningsuitkomst voor opladen van boiler:
2026-02-04 11:15:12 info: - aantal ampere 0A (was 0.0A)
2026-02-04 11:15:12 info: - stand schakelaar 'off' (was 'off')
2026-02-04 11:15:12 info: - positie: home
2026-02-04 11:15:12 info: - ingeplugd: False
2026-02-04 11:15:12 info: boiler is niet thuis of niet ingeplugd
2026-02-04 11:15:12 info: Evaluatie status laden boiler op 2026-02-04 11:15
2026-02-04 11:15:12 info: - schakelaar laden: off
2026-02-04 11:15:12 info: - aantal ampere: 0.0
2026-02-04 11:15:12 info: Grid set point: -2164.0 W
2026-02-04 11:15:12 info: Cycle cost Accu schuur: 0.05 euro
2026-02-04 11:15:12 info: Netto vermogen naar(+)/uit(-) omvormer Accu schuur: 0 W
2026-02-04 11:15:12 info: Balanceren: False
2026-02-04 11:15:12 info: Vermogen uit batterij: 0W
2026-02-04 11:15:12 info: Vermogen dat binnenkomt van pv: 0W
2026-02-04 11:15:12 info: Vermogen dat binnenkomt van ac: 0W
2026-02-04 11:15:12 info: Waarde SoC na eerste uur: 60.0%
En 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
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
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
{
  "homeassistant": { 
     "protocol api": "http",
     "host": "192.168.100.18",
     "ip port": 8123,
     "token": "!secret ha_api_token"
  },
  "database ha": {
    "engine": "sqlite",
    "database": "home-assistant_v2.db",
    "db_path": "/homeassistant"
  },
  "database da": {
    "engine": "sqlite",
    "db_path": "../data"
  },
  "meteoserver-key": "!secret meteoserver-key",
  "meteoserver-model": "harmonie",
  "meteoserver-attemps": 2,
  "interval": "15min",
  "prices": {
    "source day ahead": "nordpool",
    "entsoe-api-key": "!secret entsoe-api-key",
    "energy taxes consumption": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.10880,
      "2025-01-01": 0.10154,
      "2026-01-01": 0.09157
    },
    "energy taxes production": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.10880,
      "2025-01-01": 0.10154,
      "2026-01-01": 0.09157
    },
    "cost supplier consumption": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496,
      "2025-01-01": 0.0181,
      "2026-01-01": 0.0181
    },
    "cost supplier production": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496,
      "2025-01-01": -0.0181,
      "2026-01-01": -0.0181
    },
    "vat consumption": {
      "2022-01-01": 21,
      "2022-07-01": 9,
      "2023-01-01": 21
    },
    "vat production": {
      "2022-01-01": 21,
      "2022-07-01": 9,
      "2023-01-01": 21
    },
    "last invoice": "2025-02-27",
    "tax refund": "True"
  },
  "logging level" : "info",
  "use_calc_baseload": "True",
  "baseload calc periode": 56,
  "baseload": [
    0.40,
    0.40,
    0.40,
    0.40,
    0.65,
    0.65,
    0.65,
    0.65,
    0.90,
    1.30,
    2.00,
    1.80,
    1.70,
    1.30,
    1.10,
    1.30,
    1.60,
    1.60,
    0.90,
    0.90,
    0.90,
    0.70,
    0.70,
    0.50
  ],
  "graphical backend": "",
  "graphics": {
    "style": "dark_background",
    "show" : "true",
    "battery balance": "True",
    "prices delivery": "False",
    "prices redelivery": "True",
    "average delivery": "False",
    "prices consumption": "True",
    "prices production": "True",
    "prices spot": "True",
    "average consumption": "True"
  },
  "strategy": "minimize cost",
  "notifications": {
        "notification entity": "input_text.dao_notification"
  },
  "grid": {
    "max_power": 18
  },
  "history": {
    "save days": 14
  },
  "dashboard": {
    "port": 5000
  },
  "boiler": {
    "boiler present": "False",
    "entity actual temp.": "sensor.boiler_boiler_temperature",
    "entity setpoint": "input_number.boiler_desiredtemperature",
    "cop": 1.0,
    "cooling rate": 0.4,
    "volume": 100,
    "heating allowed below": 70,
    "elec. power": 2100,
    "entity hysterese": "input_number.boiler_hysterese",
    "activate service": "turn_on",
    "activate entity": "input_boolean.dao_boiler_activate"
  },
  "heating": {
    "heater present": "False",
    "entity hp enabled": "input_boolean.always_true",
    "entity hp heat produced": "sensor.heatpump_daily_energy_production",
    "min run length": 3,
    "adjustment": "heating curve",
    "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.hp_lwt_adjust",
    "adjustment factor": 0.05
  },
  "battery": [ 
          {
        "name": "Accu schuur",
        "entity actual level": "sensor.victron_battery_state_of_charge_system",
        "capacity": 31,
        "upper limit": 100,
        "lower limit": 60,
        "optimal lower level": 75,
      "penalty_low_soc": 0.0005,
        "entity min soc end opt": "input_number.bat_min_soc_einde_opt",
        "entity max soc end opt": "input_number.bat_max_soc_einde_opt",
      "charge stages": [
            {
              "power": 0,
              "efficiency": 1
            },
            {
              "power": 180,
              "efficiency": 0.711
            },
            {
              "power": 495,
              "efficiency": 0.806
            },
            {
              "power": 591,
              "efficiency": 0.838
            },
            {
              "power": 651,
              "efficiency": 0.848
            },
            {
              "power": 798,
              "efficiency": 0.865
            },
            {
              "power": 1140,
              "efficiency": 0.895
            },
            {
              "power": 1446,
              "efficiency": 0.913
            },
            {
              "power": 2274,
              "efficiency": 0.920
            },
            {
              "power": 2456,
              "efficiency": 0.920
            },
        {
              "power": 3009,
              "efficiency": 0.922
        },
        {
              "power": 4170,
              "efficiency": 0.921
            },
        {
              "power": 5298,
              "efficiency": 0.916
            },
        {
              "power": 6200,
              "efficiency": 0.910
            }
   ],
   "BvH inactive charge stages": [
            {
              "power": 7116,
              "efficiency": 0.906
            },
            {
              "power": 8100,
              "efficiency": 0.885
            },
        {
              "power": 9000,
              "efficiency": 0.80
            },
        {
              "power": 10500,
              "efficiency": 0.75
            }
   ],
   "discharge stages": [
            {
              "power": 0,
              "efficiency": 1
            },
            {
              "power": 117,
              "efficiency": 0.661
            },
            {
              "power": 192,
              "efficiency": 0.762
            },
            {
              "power": 315,
              "efficiency": 0.835
            },
            {
              "power": 579,
              "efficiency": 0.902
            },
            {
              "power": 837,
              "efficiency": 0.927
            },
            {
              "power": 1206,
              "efficiency": 0.941
            },
            {
              "power": 1467,
              "efficiency": 0.95
            },
            {
              "power": 1866,
              "efficiency": 0.957
            },
            {
              "power": 2262,
              "efficiency": 0.956
            },
            {
              "power": 3300,
              "efficiency": 0.956
            },
        {
              "power": 4398,
              "efficiency": 0.950
            },
        {
              "power": 5430,
              "efficiency": 0.944
            },
        {
              "power": 6564,
              "efficiency": 0.935
            },
            {
              "power": 7230,
              "efficiency": 0.929
            },
        {
              "power": 8235,
              "efficiency": 0.919
            }
          ],
    "BvH inactive discharge stages": [
            {
              "power": 9360,
              "efficiency": 0.909
            },
        {
              "power": 10312,
              "efficiency": 0.80
            },
            {
              "power": 11265,
              "efficiency": 0.75
            },
            {
              "power": 12378,
              "efficiency": 0.70
            }
        ],
          "minimum power": 300,
          "dc_to_bat efficiency": 0.98,
          "bat_to_dc efficiency": 0.98,
          "cycle cost": 0.005,
          "entity set power feedin": "input_number.batt_power_feedin",
          "entity set operating mode": "input_select.batt_operating_mode",
          "entity stop inverter": "input_datetime.batt_inverter_stop",
          "entity balance switch": "input_boolean.batt_balance_switch",
          "solar": [ ]
      }
  ],
  "solar": [ 
    {
      "name": "Growatt",
      "ml_prediction": "true",
      "entities sensors": ["sensor.pv_opbrengst_huisdak", "sensor.growatt_generated_energy_total"],
      "max power": 7,
      "capacity": 4.4,
      "entity pv switch": "input_boolean.pv_huis_onoff",
      "entities sensor": ["sensor.pv_opbrengst_huisdak", "sensor.growatt_generated_energy_total"],
      "strings": [
        {
        "tilt": 35,
        "orientation": 270,
        "capacity": 4.4,
        "yield": 0.008
        },
        {
        "tilt": 35,
        "orientation": 90,
        "capacity": 4.4,
        "yield": 0.008
        }
      ]
    },
    {
      "name": "schuurzuid",
      "ml_prediction": "true",
      "entities sensors": ["sensor.zuidkant_yieldtotal"],
      "max power": 0.8,
      "tilt": 35,
      "orientation": 0,
      "capacity": 0.88,
      "yield": 0.0026,
      "entity pv switch": "input_boolean.pv_schuur_onoff"
    },
    {
      "name": "schuurmidden",
      "ml_prediction": "true",
      "entities sensors": ["sensor.midden_schuur_yieldtotal"],
      "max power": 0.8,
      "tilt": 35,
      "orientation": 0,
      "capacity": 0.88,
      "yield": 0.0026,
      "entity pv switch": "input_boolean.pv_schuur_onoff"
    },
    {
      "name": "schuurnoord",
      "ml_prediction": "true",
      "entities sensors": ["sensor.noordkant_yieldtotal"],
      "max power": 0.8,
      "tilt": 35,
      "orientation": 0,
      "capacity": 0.88,
      "yield": 0.0026,
      "entity pv switch": "input_boolean.pv_schuur_onoff"
    },
    {
      "name": "schuurplatnoord",
      "ml_prediction": "true",
      "entities sensors": ["sensor.schuur_opnoorden_yieldtotal"],
      "max power": 0.8,
      "tilt": 10,
      "orientation": 180,
      "capacity": 1.1,
      "yield": 0.0021,
      "entity pv switch": "input_boolean.pv_schuur_onoff"
    },
    {
      "name": "erker",
      "ml_prediction": "true",
      "entities sensors": ["sensor.erker_yieldtotal"],
      "max power": 0.5,
      "tilt": 10,
      "orientation": 270,
      "capacity": 0.55,
      "yield": 0.0006,
      "entity pv switch": "input_boolean.pv_huis_onoff"
    },
    {
      "name": "aanbouw",
      "ml_prediction": "true",
      "entities sensors": ["sensor.aanbouw_yieldtotal"],
      "max power": 1.0,
      "tilt": 10,
      "orientation": 90,
      "capacity": 1.1,
      "yield": 0.0016,
      "entity pv switch": "input_boolean.pv_huis_onoff"
    }
  ],
  "electric vehicle": [ 
    {
      "name": "Corsa-E",
      "capacity": 47.0,
      "entity max amperage": "input_number.ev_max_charge_amps",
      "entity position": "input_select.corsae_location",
      "entity instant start": "input_boolean.dao_nu_laden",
      "entity instant level": "input_number.dao_nu_laden_soc",
      "charge three phase": "False",
      "charge stages" : [
      {"ampere":  0, "efficiency" :  1},
            {"ampere":  6, "efficiency": 0.95},
            {"ampere":  7, "efficiency": 0.95},
            {"ampere":  8, "efficiency": 0.95},
            {"ampere": 18, "efficiency": 0.95},
            {"ampere": 21, "efficiency": 0.95},
            {"ampere": 24, "efficiency": 0.95},
            {"ampere": 27, "efficiency": 0.95},
      {"ampere": 30, "efficiency": 0.95},
            {"ampere": 33, "efficiency": 0.94},
            {"ampere": 36, "efficiency": 0.93},
            {"ampere": 39, "efficiency": 0.92},
            {"ampere": 42, "efficiency": 0.91},
            {"ampere": 45, "efficiency": 0.85},
            {"ampere": 48, "efficiency": 0.80}
      ],
      "entity actual level": "sensor.corsa_e_battery_percent",
      "entity plugged in": "binary_sensor.charger_pluggedin",
      "charge scheduler": {
        "entity set level": "input_number.ev_desired_chargelevel",
        "level margin": 1,
        "entity ready datetime": "input_datetime.charge_ready_datetime"
      },
      "charge switch": "input_boolean.corsae_charge_switch",
      "entity set charging ampere": "input_number.dao_laadpaal_amp"
    },
    {
      "name": "boiler",
      "capacity": 13.4,
      "entity max amperage": "input_number.ev_max_charge_amps",
      "entity position": "input_select.corsae_location",
      "charge three phase": "False",
      "charge stages" : [
        {"ampere":  0,  "efficiency":  1},
        {"ampere":  4,  "efficiency": 0.93 },
        {"ampere":  5,  "efficiency": 0.93 },
        {"ampere":  6,  "efficiency": 0.95 },
        {"ampere":  7,  "efficiency": 0.97 },
        {"ampere":  8,  "efficiency": 0.99 },
        {"ampere":  9,  "efficiency": 0.99 },
        {"ampere":  10,  "efficiency": 0.99 }
      ],
      "entity actual level": "sensor.boiler_boiler_temperature",
      "entity plugged in": "binary_sensor.electricity_cheaperthangas",
      "charge scheduler": {
        "entity set level": "input_number.boiler_desiredtemperature",
        "level margin": 1,
        "entity ready datetime": "input_datetime.dao_boiler_ready_datetime"
      },
      "charge switch": "input_boolean.dao_boiler_activate",
      "entity set charging ampere": "input_number.dao_boiler_ampsetpoint"
    }
  ],
  "machines" : [ ],
  "tibber": {
    "api_token": "!secret tibber_api_token"
  },
  "report": {
    "entities grid consumption": [
      "sensor.energy_consumption_tarif_1",
      "sensor.energy_consumption_tarif_2"
    ],
    "entities grid production": [
      "sensor.energy_production_tarif_1",
      "sensor.energy_production_tarif_2"
    ],
    "entities solar production ac": [
      "sensor.pv_opbrengst_huisdak",
      "sensor.noordkant_yieldtotal",
      "sensor.midden_schuur_yieldtotal",
      "sensor.zuidkant_yieldtotal",
      "sensor.schuur_opnoorden_yieldtotal",
      "sensor.aanbouw_yieldtotal",
      "sensor.erker_yieldtotal"
    ],
   "entities solar production dc": [],
    "entities ev consumption" : ["sensor.laadpaal_energieverbruik_kwh", "sensor.boiler_boiler_daily_energy"],
    "entities wp consumption" : ["sensor.warmtepomp_energieverbruik"],
    "entities machine consumption": [],
    "entities boiler consumption": [],
    "entities battery consumption": ["sensor.victron_energy_into_battery"],
    "entities battery production": ["sensor.victron_energy_from_battery"]  },
  "scheduler": {
    "active": "true",
    "0433": "get_meteo_data",
    "0930": "calc_baseloads",
    "1033": "get_meteo_data",
    "1633": "get_meteo_data",
    "2233": "get_meteo_data",
    "2235": "calc_baseloads",
    "xx55": "get_day_ahead_prices",
    "2317": "train_ml_predictions",    
    "2359": "clean_data"
  }
}

  • thaMini
  • Registratie: December 2000
  • Laatst online: 13:17

thaMini

Tool !!

Is de kWh in de sensor 'sensor.solaredge_woning_ac_energy_kwh' cumulatief over de levensduur, of per dag?

Be small, act BIG.


  • Impossibl3
  • Registratie: November 2012
  • Laatst online: 09:49
Volgens mij gaat er iets niet helemaal lekker in DAO met de PV instellingen.

Ik heb 2 PV systemen (Enphase en Growatt). Mijn Enphase (schuin dak) heeft tot nu toe vandaag 5,36 kWh geproduceerd en Growatt (garage) 0.39 kWh. In DAO geeft die echter aan 0.005 voor het Growatt systeem 0.364

Enphase sensor: sensor.envoy_122320106024_lifetime_energy_production -> waarde tot nu toe: 10.509,174 kWh
Growatt sensor: sensor.zonnepanelen_garage_energie_export -> waarde tot nu toe: 2.018,81 kWh
Afbeeldingslocatie: https://tweakers.net/i/4uf0ZyRbbInJ7ztbk0Nhqn9cAzo=/232x232/filters:strip_exif()/f/image/vmbzN51JTLVs2hfUw282EPd2.png?f=fotoalbum_tileAfbeeldingslocatie: https://tweakers.net/i/GFFffy7KPh68tEdm-XyAn41B4e0=/232x232/filters:strip_exif()/f/image/WCdykBVb88YGUUWBnsUCmhSE.png?f=fotoalbum_tile
Het valt mij nu pas op en ik heb geen foutmeldingen dus ik weet niet waar het in zit.
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
"solar": [
    {
      "name": "pv schuin dak",
      "entity pv switch": "",
      "ml_prediction": "true",
      "entities sensors": ["sensor.envoy_122320106024_lifetime_energy_production"],
      "strings": [
        { "tilt": 30, "orientation": 70, "capacity": 1.72, "max power": 1.32, "yield": 0.003655 },
        { "tilt": 30, "orientation": -20, "capacity": 2.15, "max power": 1.65, "yield": 0.00456875 },
        { "tilt": 30, "orientation": -70, "capacity": 1.72, "max power": 1.32, "yield": 0.003655 }
      ]
    },
    {
      "name": "pv garage",
      "tilt": 0,
      "orientation": -45,
      "capacity": 2.745,
      "max power": 2.5,
      "yield": 0.002667975,
      "entity pv switch": "",
      "ml_prediction": "true",
      "entities sensors": ["sensor.zonnepanelen_garage_energie_export"]
    }
  ],

[ Voor 24% gewijzigd door Impossibl3 op 04-02-2026 15:46 ]

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

DaBit schreef op woensdag 4 februari 2026 @ 11:21:
Ik zie NaN's langskomen. Eigenlijk geen idee hoe lang dat al zo is. Uit het rekenresultaat, bij 'Totaal':


[...]


De hele log:


[...]


En config:


[...]
Geen zorgen, die NaN is een ongewenste "feature"😉, die er nog uit moet. Die staat er bij iedereen met een batterij. Vroeger telde hij alle bovenstaande SoC's op, dat was ook niet de bedoeling.

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

thaMini schreef op woensdag 4 februari 2026 @ 13:42:
Is de kWh in de sensor 'sensor.solaredge_woning_ac_energy_kwh' cumulatief over de levensduur, of per dag?
Kan beide, door tellend is iets beter.

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

Impossibl3 schreef op woensdag 4 februari 2026 @ 15:38:
Volgens mij gaat er iets niet helemaal lekker in DAO met de PV instellingen.

Ik heb 2 PV systemen (Enphase en Growatt). Mijn Enphase (schuin dak) heeft tot nu toe vandaag 5,36 kWh geproduceerd en Growatt (garage) 0.39 kWh. In DAO geeft die echter aan 0.005 voor het Growatt systeem 0.364

Enphase sensor: sensor.envoy_122320106024_lifetime_energy_production -> waarde tot nu toe: 10.509,174 kWh
Growatt sensor: sensor.zonnepanelen_garage_energie_export -> waarde tot nu toe: 2.018,81 kWh
[Afbeelding][Afbeelding]
Het valt mij nu pas op en ik heb geen foutmeldingen dus ik weet niet waar het in zit.
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
"solar": [
    {
      "name": "pv schuin dak",
      "entity pv switch": "",
      "ml_prediction": "true",
      "entities sensors": ["sensor.envoy_122320106024_lifetime_energy_production"],
      "strings": [
        { "tilt": 30, "orientation": 70, "capacity": 1.72, "max power": 1.32, "yield": 0.003655 },
        { "tilt": 30, "orientation": -20, "capacity": 2.15, "max power": 1.65, "yield": 0.00456875 },
        { "tilt": 30, "orientation": -70, "capacity": 1.72, "max power": 1.32, "yield": 0.003655 }
      ]
    },
    {
      "name": "pv garage",
      "tilt": 0,
      "orientation": -45,
      "capacity": 2.745,
      "max power": 2.5,
      "yield": 0.002667975,
      "entity pv switch": "",
      "ml_prediction": "true",
      "entities sensors": ["sensor.zonnepanelen_garage_energie_export"]
    }
  ],
Staat het wel goed in het Energy dashboard van Home Assistant?
Wat is de dimensie van de sensoren in HA?
Wat krijg je te zien bij Reports/ balans vandaag?

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


  • DaBit
  • Registratie: Januari 2000
  • Laatst online: 10-02 22:40
KC27 schreef op woensdag 4 februari 2026 @ 17:14:
Geen zorgen, die NaN is een ongewenste "feature"😉, die er nog uit moet. Die staat er bij iedereen met een batterij. Vroeger telde hij alle bovenstaande SoC's op, dat was ook niet de bedoeling.
Ik had al geen zorgen want alles functioneert gewoon en last heb ik er ook niet van.
Maar even melden kan nooit kwaad 8)

  • Impossibl3
  • Registratie: November 2012
  • Laatst online: 09:49
KC27 schreef op woensdag 4 februari 2026 @ 17:27:
[...]

Staat het wel goed in het Energy dashboard van Home Assistant?
Wat is de dimensie van de sensoren in HA?
Wat krijg je te zien bij Reports/ balans vandaag?
In het energie dashboard van HA heb ik voor de Enphase de dagsensor zitten zie ik net. In DAO de levensduur sensor. Net even gelijk gezet (beide naar levensduur). De Growatt sensor stond wel gelijk. Hopelijk was dat het probleem.

Edit:
Model opnieuw getraind maar het probleem blijft. Er blijft een waarde uit komen van 0.006 ipv de 6,12 kWh van de Enpahse (schuin dak) sensor voor vandaag.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2026-02-04 20:55:34 info: Model training van pv_schuin_dak complete
2026-02-04 20:55:34 info: Model saved to: ../data/prediction/models/pv_schuin_dak.pkl
2026-02-04 20:55:34 info: Training MAE: 0.0001 kWh
2026-02-04 20:55:34 info: Testing MAE: 0.0001 kWh
2026-02-04 20:55:34 info: Training R²: 0.9699
2026-02-04 20:55:34 info: Testing R²: 0.9496
2026-02-04 20:55:34 info: Sorted features:
2026-02-04 20:55:34 info:   1. irradiance: 0.950
2026-02-04 20:55:34 info:   2. hour: 0.021
2026-02-04 20:55:34 info:   3. week_nr: 0.012
2026-02-04 20:55:34 info:   4. season: 0.007
2026-02-04 20:55:34 info:   5. temperature: 0.007
2026-02-04 20:55:34 info:   6. month: 0.003
2026-02-04 20:55:34 info:   7. day_of_week: 0.000
2026-02-04 20:55:34 info:   8. quarter: 0.000
Report/Balans geeft voor vandaag aan PV ac 0.428 kWh terwijl het HA Energy dashboard 6,54 kWh aan geeft (0,42 kWh garage, 6,12 kWh schuin dak)

[ Voor 52% gewijzigd door Impossibl3 op 04-02-2026 21:12 ]

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


  • Dogooder
  • Registratie: April 2004
  • Laatst online: 11:43

Dogooder

dus...

0,006 ipv 6,12 kWh lijkt een factor 1000 ernaast te zitten. Kloppen de eenheden wel?

  • Impossibl3
  • Registratie: November 2012
  • Laatst online: 09:49
Dogooder schreef op woensdag 4 februari 2026 @ 21:02:
0,006 ipv 6,12 kWh lijkt een factor 1000 ernaast te zitten. Kloppen de eenheden wel?
Ja dat denk ik dus ook maar als ik kijk naar de waarde in HA zijn ze allemaal in kWh.

Ook in het ontwikkelaars tabblad -> sensoren staat:
state_class: total_increasing
unit_of_measurement: kWh
device_class: energy
friendly_name: Envoy 122320106024 Lifetime energy production

Ik heb dus niet dat mijn Envoy MWh registreerd zoals een andere gebruiker had/heeft.

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


  • Torch1969
  • Registratie: Juni 2013
  • Laatst online: 10-02 21:17
Impossibl3 schreef op woensdag 4 februari 2026 @ 21:05:
[...]


Ja dat denk ik dus ook maar als ik kijk naar de waarde in HA zijn ze allemaal in kWh.

Ook in het ontwikkelaars tabblad -> sensoren staat:
state_class: total_increasing
unit_of_measurement: kWh
device_class: energy
friendly_name: Envoy 122320106024 Lifetime energy production

Ik heb dus niet dat mijn Envoy MWh registreerd zoals een andere gebruiker had/heeft.
Bij mij is de envoy lifetime energy production inderdaad in MWh. Dat verschil van 1000 wijst wel erg die kant op. Is die unit van kWh bij jou dan wel correct? Welk getal staat er bij? En wat zegt je enlighten app?

  • Impossibl3
  • Registratie: November 2012
  • Laatst online: 09:49
Torch1969 schreef op woensdag 4 februari 2026 @ 22:15:
[...]

Bij mij is de envoy lifetime energy production inderdaad in MWh. Dat verschil van 1000 wijst wel erg die kant op. Is die unit van kWh bij jou dan wel correct? Welk getal staat er bij? En wat zegt je enlighten app?
De enlighten app geeft 10.5 MWh aan voor lifetime. Maar in HA werkt het energy dashboard zoals verwacht.
Afbeeldingslocatie: https://tweakers.net/i/UdG9J8CdWC-_zp_TDk513nmbdjo=/232x232/filters:strip_icc():strip_exif()/f/image/lJHdo3wk4pbp6MIuYTWZiQ6k.jpg?f=fotoalbum_tileAfbeeldingslocatie: https://tweakers.net/i/XVpBd6lstjHUfXy2jtLgg7SRk-w=/232x232/filters:strip_icc():strip_exif()/f/image/cFXNobwAFUBZCMMctJXJRbVp.jpg?f=fotoalbum_tileAfbeeldingslocatie: https://tweakers.net/i/tfpHmg2af5UhhXDOudHUvawMT8k=/x800/filters:strip_icc():strip_exif()/f/image/AJlvACbsNZQt16TXJlv4iR6M.jpg?f=fotoalbum_large

[ Voor 12% gewijzigd door Impossibl3 op 04-02-2026 22:27 ]

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


  • Kees Schilder
  • Registratie: April 2005
  • Laatst online: 09:01
Impossibl3 schreef op woensdag 4 februari 2026 @ 22:23:
[...]


De enlighten app geeft 10.5 MWh aan voor lifetime. Maar in HA werkt het energy dashboard zoals verwacht.
[Afbeelding][Afbeelding][Afbeelding]
Kan het een duizendtal- / decimaalteken verschil zijn?
Bij 't eerste plaatje is de komma het decimaalteken. Bij het tweede plaatje is de punt het decimaalteken.

  • Impossibl3
  • Registratie: November 2012
  • Laatst online: 09:49
Kees Schilder schreef op donderdag 5 februari 2026 @ 08:33:
[...]

Kan het een duizendtal- / decimaalteken verschil zijn?
Bij 't eerste plaatje is de komma het decimaalteken. Bij het tweede plaatje is de punt het decimaalteken.
Nee daar zit het hem niet in. HA geeft een komma weer omdat mijn instelling op NL staan. In de database zijn al mijn decimale getallen opgeslagen met een punt zoals dat gebruikelijk is bij databases. Ik zie het zelfde namelijk bij mijn temperatuur sensoren etc.

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


  • diamanten
  • Registratie: Juli 2024
  • Laatst online: 06-02 09:32
Vraag over het EV-laden:
Ik heb een domme laadpaal (EVHUB) met 3 fasen x 16 Ampere. Ik wil de auto gaan laden: huidige SOC = 63%, doel SOC = 90%.
DAO-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
"electric vehicle": [
    {
      "name": "Kia Niro EV",
      "capacity": 55,
      "entity position": "input_select.kia_locatie_dao",
      "entity max amperage": "input_number.niro_ac_max_ampere",
      "charge three phase": "True",
      "charge stages": [
        {"ampere": 0, "efficiency": 0.00},
        {"ampere": 16, "efficiency": 0.90}
      ],
      "entity actual level": "input_number.dummy_kia_soc",
      "entity instant start": "input_boolean.dao_nu_laden",
      "entity instant level": "input_number.dao_nu_laden_soc",
      "entity plugged in": "input_boolean.kia_ingeplugd_dao",
      "entity stop charging": "input_datetime.stop_laden_ev",
      "charge scheduler": {
        "entity set level": "input_number.gewenst_laadniveau_dao",
        "level margin": 2,
        "entity ready datetime": "input_datetime.kia_niro_ready_time"
      },
      "charge switch": "input_boolean.kia_niro_charge_enable",
      "entity set charging ampere": "input_number.kia_niro_set_charging_ampere"
    }
  ],
Volgens DAO is 6 kwartier laden noodzakelijk:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2026-02-05 16:41:19 info: Instellingen voor laden van EV: Kia Niro EV
2026-02-05 16:41:19 info: Direct laden is uit
2026-02-05 16:41:19 info:  Ampere  Effic. Grid kW Accu kW
2026-02-05 16:41:19 info:    0.00    0.00    0.00    0.00
2026-02-05 16:41:19 info:   16.00    0.90   11.04    9.94
2026-02-05 16:41:19 info: Capaciteit accu: 55 kWh
2026-02-05 16:41:19 info: Maximaal laadvermogen: 11.04 kW
2026-02-05 16:41:19 info: Klaar met laden op: 06-02-2026 17:00:00
2026-02-05 16:41:19 info: Huidig laadniveau: 63.0 %
2026-02-05 16:41:19 info: Gewenst laadniveau:90.0 %
2026-02-05 16:41:19 info: Marge voor het laden: 2 %
2026-02-05 16:41:19 info: Locatie: home
2026-02-05 16:41:19 info: Ingeplugged:True
2026-02-05 16:41:19 info: Benodigde netto energie: 14.850 kWh
2026-02-05 16:41:19 info: Tijd nodig om te laden: 1:30 uur
2026-02-05 16:41:19 info: Afgerond naar hele intervallen: 6 kwartier
2026-02-05 16:41:19 info: Stand laden schakelaar: on
2026-02-05 16:41:19 info: Stand aantal ampere laden: 16.0 A
2026-02-05 16:41:19 info: Opladen wordt ingepland.
Waarom worden er dan meer 6 kwartieren ingepland? Zie:
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
2026-02-05 16:41:28 info: Inzet-factor laden Kia Niro EV per stap
uur      0.0A  16.0A      cons  power
16:30    0.96(1.0)   0.04(1.0)     0.029  11.040
16:45    0.98(1.0)   0.02(1.0)     0.054  11.040
17:00    1.00(1.0)   0.00(0.0)     0.000  0.000
17:15    1.00(1.0)   0.00(0.0)     0.000  0.000
17:30    1.00(1.0)   0.00(0.0)     0.000  0.000
17:45    1.00(1.0)   0.00(0.0)     0.000  0.000
18:00    1.00(1.0)   0.00(0.0)     0.000  0.000
18:15    1.00(1.0)   0.00(0.0)     0.000  0.000
18:30    1.00(1.0)   0.00(0.0)     0.000  0.000
18:45    1.00(1.0)   0.00(0.0)     0.000  0.000
19:00    1.00(1.0)   0.00(0.0)     0.000  0.000
19:15    1.00(1.0)   0.00(0.0)     0.000  0.000
19:30    1.00(1.0)   0.00(0.0)     0.000  0.000
19:45    1.00(1.0)   0.00(0.0)     0.000  0.000
20:00    1.00(1.0)   0.00(0.0)     0.000  0.000
20:15    1.00(1.0)   0.00(0.0)     0.000  0.000
20:30    1.00(1.0)   0.00(0.0)     0.000  0.000
20:45    1.00(1.0)   0.00(0.0)     0.000  0.000
21:00    1.00(1.0)   0.00(0.0)     0.000  0.000
21:15    1.00(1.0)   0.00(0.0)     0.000  0.000
21:30    1.00(1.0)   0.00(0.0)     0.000  0.000
21:45    1.00(1.0)   0.00(0.0)     0.000  0.000
22:00    1.00(1.0)   0.00(0.0)     0.000  0.000
22:15    1.00(1.0)   0.00(0.0)     0.000  0.000
22:30    1.00(1.0)   0.00(0.0)     0.000  0.000
22:45    1.00(1.0)   0.00(0.0)     0.000  0.000
23:00    1.00(1.0)   0.00(0.0)     0.000  0.000
23:15    1.00(1.0)   0.00(0.0)     0.000  0.000
23:30    1.00(1.0)   0.00(0.0)     0.000  0.000
23:45    0.00(0.0)   1.00(1.0)     2.760  11.040
00:00    1.00(1.0)   0.00(0.0)     0.000  0.000
00:15    1.00(1.0)   0.00(0.0)     0.000  0.000
00:30    1.00(1.0)   0.00(0.0)     0.000  0.000
00:45    1.00(1.0)   0.00(0.0)     0.000  0.000
01:00    1.00(1.0)   0.00(0.0)     0.000  0.000
01:15    1.00(1.0)   0.00(0.0)     0.000  0.000
01:30    1.00(1.0)   0.00(0.0)     0.000  0.000
01:45    1.00(1.0)   0.00(0.0)     0.000  0.000
02:00    1.00(1.0)   0.00(0.0)     0.000  0.000
02:15    1.00(1.0)   0.00(0.0)     0.000  0.000
02:30    1.00(1.0)   0.00(0.0)     0.000  0.000
02:45    1.00(1.0)   0.00(0.0)     0.000  0.000
03:00    1.00(1.0)   0.00(0.0)     0.000  0.000
03:15    1.00(1.0)   0.00(0.0)     0.000  0.000
03:30    0.51(1.0)   0.49(1.0)     1.348  11.040
03:45    0.00(0.0)   1.00(1.0)     2.760  11.040
04:00    0.00(0.0)   1.00(1.0)     2.760  11.040
04:15    0.00(0.0)   1.00(1.0)     2.760  11.040
04:30    0.00(0.0)   1.00(1.0)     2.760  11.040
04:45    1.00(1.0)   0.00(0.0)     0.000  0.000
05:00    1.00(1.0)   0.00(0.0)     0.000  0.000
05:15    1.00(1.0)   0.00(0.0)     0.000  0.000
05:30    1.00(1.0)   0.00(0.0)     0.000  0.000
05:45    1.00(1.0)   0.00(0.0)     0.000  0.000
06:00    1.00(1.0)   0.00(0.0)     0.000  0.000
06:15    1.00(1.0)   0.00(0.0)     0.000  0.000
06:30    1.00(1.0)   0.00(0.0)     0.000  0.000
06:45    1.00(1.0)   0.00(0.0)     0.000  0.000
07:00    1.00(1.0)   0.00(0.0)     0.000  0.000
07:15    1.00(1.0)   0.00(0.0)     0.000  0.000
07:30    1.00(1.0)   0.00(0.0)     0.000  0.000
07:45    1.00(1.0)   0.00(0.0)     0.000  0.000
08:00    1.00(1.0)   0.00(0.0)     0.000  0.000
08:15    1.00(1.0)   0.00(0.0)     0.000  0.000
08:30    1.00(1.0)   0.00(0.0)     0.000  0.000
08:45    1.00(1.0)   0.00(0.0)     0.000  0.000
09:00    1.00(1.0)   0.00(0.0)     0.000  0.000
09:15    1.00(1.0)   0.00(0.0)     0.000  0.000
09:30    1.00(1.0)   0.00(0.0)     0.000  0.000
09:45    1.00(1.0)   0.00(0.0)     0.000  0.000
10:00    1.00(1.0)   0.00(0.0)     0.000  0.000
10:15    1.00(1.0)   0.00(0.0)     0.000  0.000
10:30    1.00(1.0)   0.00(0.0)     0.000  0.000
10:45    1.00(1.0)   0.00(0.0)     0.000  0.000
11:00    1.00(1.0)   0.00(0.0)     0.000  0.000
11:15    1.00(1.0)   0.00(0.0)     0.000  0.000
11:30    1.00(1.0)   0.00(0.0)     0.000  0.000
11:45    1.00(1.0)   0.00(0.0)     0.000  0.000
12:00    1.00(1.0)   0.00(0.0)     0.000  0.000
12:15    1.00(1.0)   0.00(0.0)     0.000  0.000
12:30    1.00(1.0)   0.00(0.0)     0.000  0.000
12:45    1.00(1.0)   0.00(0.0)     0.000  0.000
13:00    0.97(1.0)   0.03(1.0)     0.070  11.040
13:15    0.96(1.0)   0.04(1.0)     0.117  11.040
13:30    0.94(1.0)   0.06(1.0)     0.164  11.040
13:45    0.95(1.0)   0.05(1.0)     0.129  11.040
14:00    0.99(1.0)   0.01(1.0)     0.016  11.040
14:15    1.00(1.0)   0.00(0.0)     0.000  0.000
14:30    1.00(1.0)   0.00(0.0)     0.000  0.000
14:45    1.00(1.0)   0.00(0.0)     0.000  0.000
15:00    0.97(1.0)   0.03(1.0)     0.092  11.040
15:15    0.95(1.0)   0.05(1.0)     0.130  11.040
15:30    0.94(1.0)   0.06(1.0)     0.168  11.040
15:45    0.95(1.0)   0.05(1.0)     0.149  11.040
16:00    0.97(1.0)   0.03(1.0)     0.094  11.040
16:15    0.97(1.0)   0.03(1.0)     0.075  11.040
16:30    0.98(1.0)   0.02(1.0)     0.056  11.040
16:45    1.00(1.0)   0.00(1.0)     0.010  11.040
2026-02-05 16:41:28 info: Kia Niro EV wordt geladen tussen 2026-02-05 16:30:00 en 2026-02-06 17:00:00
2026-02-05 16:41:28 info: Berekeningsuitkomst voor opladen van Kia Niro EV:
2026-02-05 16:41:28 info: - aantal ampere 16A (was 16.0A)
2026-02-05 16:41:28 info: - stand schakelaar 'on' (was 'on')
2026-02-05 16:41:28 info: - stop laden op 2026-02-05 16:43
2026-02-05 16:41:28 info: - positie: home
2026-02-05 16:41:28 info: - ingeplugd: True
2026-02-05 16:41:28 info: Laden van Kia Niro EV is doorgegaan met 16 A
2026-02-05 16:41:28 info: Evaluatie status laden Kia Niro EV op 2026-02-05 16:41
2026-02-05 16:41:28 info: - schakelaar laden: on
2026-02-05 16:41:28 info: - aantal ampere: 16.0
2026-02-05 16:41:28 info: Grid set point: 0.0 W
Zie ook het plaatje met meer dan zes verticale gele laadbalken (diverse kleine laadbalkjes) :
Afbeeldingslocatie: https://tweakers.net/i/dJHndZDtu1dBzD1MICWRWxvrK3U=/800x/filters:strip_exif()/f/image/x1g7wO0jzF3mnBY1CmlevsHs.png?f=fotoalbum_large
Impossibl3 schreef op donderdag 5 februari 2026 @ 09:35:
[...]


Nee daar zit het hem niet in. HA geeft een komma weer omdat mijn instelling op NL staan. In de database zijn al mijn decimale getallen opgeslagen met een punt zoals dat gebruikelijk is bij databases. Ik zie het zelfde namelijk bij mijn temperatuur sensoren etc.
HA corrigeert automatisch MWh naar kWh.
DAO doet dit vanaf versie 2026.01.2.rc3 (dat is de laatste testversie).
Ik moet er nog een fixes in doen voor die naar "productie/stable" gaat.
Misschien heb je tijd om de testversie te proberen?

[ Voor 4% gewijzigd door KC27 op 05-02-2026 23:38 ]

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

diamanten schreef op donderdag 5 februari 2026 @ 17:10:
Vraag over het EV-laden:
Ik heb een domme laadpaal (EVHUB) met 3 fasen x 16 Ampere. Ik wil de auto gaan laden: huidige SOC = 63%, doel SOC = 90%.
DAO-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
"electric vehicle": [
    {
      "name": "Kia Niro EV",
      "capacity": 55,
      "entity position": "input_select.kia_locatie_dao",
      "entity max amperage": "input_number.niro_ac_max_ampere",
      "charge three phase": "True",
      "charge stages": [
        {"ampere": 0, "efficiency": 0.00},
        {"ampere": 16, "efficiency": 0.90}
      ],
      "entity actual level": "input_number.dummy_kia_soc",
      "entity instant start": "input_boolean.dao_nu_laden",
      "entity instant level": "input_number.dao_nu_laden_soc",
      "entity plugged in": "input_boolean.kia_ingeplugd_dao",
      "entity stop charging": "input_datetime.stop_laden_ev",
      "charge scheduler": {
        "entity set level": "input_number.gewenst_laadniveau_dao",
        "level margin": 2,
        "entity ready datetime": "input_datetime.kia_niro_ready_time"
      },
      "charge switch": "input_boolean.kia_niro_charge_enable",
      "entity set charging ampere": "input_number.kia_niro_set_charging_ampere"
    }
  ],
Volgens DAO is 6 kwartier laden noodzakelijk:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2026-02-05 16:41:19 info: Instellingen voor laden van EV: Kia Niro EV
2026-02-05 16:41:19 info: Direct laden is uit
2026-02-05 16:41:19 info:  Ampere  Effic. Grid kW Accu kW
2026-02-05 16:41:19 info:    0.00    0.00    0.00    0.00
2026-02-05 16:41:19 info:   16.00    0.90   11.04    9.94
2026-02-05 16:41:19 info: Capaciteit accu: 55 kWh
2026-02-05 16:41:19 info: Maximaal laadvermogen: 11.04 kW
2026-02-05 16:41:19 info: Klaar met laden op: 06-02-2026 17:00:00
2026-02-05 16:41:19 info: Huidig laadniveau: 63.0 %
2026-02-05 16:41:19 info: Gewenst laadniveau:90.0 %
2026-02-05 16:41:19 info: Marge voor het laden: 2 %
2026-02-05 16:41:19 info: Locatie: home
2026-02-05 16:41:19 info: Ingeplugged:True
2026-02-05 16:41:19 info: Benodigde netto energie: 14.850 kWh
2026-02-05 16:41:19 info: Tijd nodig om te laden: 1:30 uur
2026-02-05 16:41:19 info: Afgerond naar hele intervallen: 6 kwartier
2026-02-05 16:41:19 info: Stand laden schakelaar: on
2026-02-05 16:41:19 info: Stand aantal ampere laden: 16.0 A
2026-02-05 16:41:19 info: Opladen wordt ingepland.
Waarom worden er dan meer 6 kwartieren ingepland? Zie:

[...]

Zie ook het plaatje met meer dan zes verticale gele laadbalken (diverse kleine laadbalkjes) :
[Afbeelding]
Als je teruglever-tarief lager is dan je inkoop tarief (zoals vanaf 1 januari bij Tibber) gaat DAO vaker proberen om op "nul op de meter" uit te komen. Dat is goedkoper dan terugleveren.
In jouw geval maakt DAO een denkfout. In een aantal kwartieren heb je meer pv-opbrengst dan je basislast.
Die meeropbrengst wil DAO in de auto stoppen, maar dat gaat fout omdat hij niet kan balanceren maar voluit 11 kW in de auto stopt en dan na een paar minuten stopt.
Dit is - zoals gezegd - een fout en moet ik corrigeren in de software met een extra "constraint".
Voor batterijen werkt dit allemaal al prima maar voor ev's nog niet. Het mooiste zou zijn dat je ook voor ev's kunt gaan balanceren met laden, dat kan bijvoorbeeld met een slimme laadpaal zoals de smart evse-laadpaal. Misschien voor jou te overwegen om voor volgend jaar (zonder saldering) een slimme laadpaal aan te schaffen, want dan wil je al je zon-opbrengst nuttig gebruiken.

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


  • diamanten
  • Registratie: Juli 2024
  • Laatst online: 06-02 09:32
KC27 schreef op donderdag 5 februari 2026 @ 23:51:
[...]

Als je teruglever-tarief lager is dan je inkoop tarief (zoals vanaf 1 januari bij Tibber) gaat DAO vaker proberen om op "nul op de meter" uit te komen. Dat is goedkoper dan terugleveren.
In jouw geval maakt DAO een denkfout. In een aantal kwartieren heb je meer pv-opbrengst dan je basislast.
Die meeropbrengst wil DAO in de auto stoppen, maar dat gaat fout omdat hij niet kan balanceren maar voluit 11 kW in de auto stopt en dan na een paar minuten stopt.
Dit is - zoals gezegd - een fout en moet ik corrigeren in de software met een extra "constraint".
Voor batterijen werkt dit allemaal al prima maar voor ev's nog niet. Het mooiste zou zijn dat je ook voor ev's kunt gaan balanceren met laden, dat kan bijvoorbeeld met een slimme laadpaal zoals de smart evse-laadpaal. Misschien voor jou te overwegen om voor volgend jaar (zonder saldering) een slimme laadpaal aan te schaffen, want dan wil je al je zon-opbrengst nuttig gebruiken.
Dank voor je reactie! Een slimme laadpaal staat inderdaad op de verlanglijst, ik overweeg trouwens een Peblar aan te schaffen vanwege de goede HA-integratie. Als jullie andere alternatieven weten die prima werken met DAO/HA dan hoor ik het graag. :)

  • Impossibl3
  • Registratie: November 2012
  • Laatst online: 09:49
@diamanten ik heb een Easee laadpaal dat werkt goed maar is wel verbonden via de server van Easee. De paal heeft geen lokale api.

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


  • itavero
  • Registratie: Oktober 2004
  • Laatst online: 12:21
diamanten schreef op vrijdag 6 februari 2026 @ 08:06:
[...]

ik overweeg trouwens een Peblar aan te schaffen vanwege de goede HA-integratie.
Die heb ik ook en ben er erg tevreden over. In het verleden ook contact gehad met Peblar omdat e.e.a. toen nog niet in de API zat en ze stonden erg open voor feedback.
Ik heb vanmorgen een nieuwe (test)versie gepubliceerd, maar heb hem weer teruggetrokken.
Na test in de app (nieuwe naam voor addon) blijkt er nog een storende fout in te zitten (ml_prediction werkt niet goed).
Dus nog even wachten met installeren.
Heb je hem al wel geïnstalleerd: zet dan ml_prediction even uit.
Sorry voor het ongemak.

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

Daar is dan toch: (test)versie: 2026.02.0/2026.02.rc2
Dit staat in de changelog:
Breaking change
The file-format of the calculated model is changed (update of module pandas).
The ml_prediction works only after a new training of the model(s)
Changes:
  • Update several python modules
  • Fix error api predict pv_dc (reported by @Dogooder )
  • Adjustments in documentation (#521, @storeman )
  • Fix error calculation of pv-prognose in api should be done with ml_prediction if configured (reported by @Dogooder )
  • Fix error when HA-sensor has unit_of_measurement="MWh" (reported by @itavero )
  • Catched error when ml_prediction=true and there is no trained model: with warning-logging and use dao-prediction as fallback
  • Fixed groupby-error with mysql(with "ONLY_FULL_GROUP_BY") and postgresql
  • Fixed error in Wh-correction when no ha-data are present
  • Correct sensordata from HA with unit_of_measurement="Wh" to "kWh"
Edit: de breaking change is helaas (nog) niet opgenomen in de gepubliceerde changelog.

[ Voor 4% gewijzigd door KC27 op 06-02-2026 12: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


  • rescla
  • Registratie: November 2012
  • Laatst online: 14:16
Net geupdate naar 2026.02, ik krijg de volgende fout bij het ophalen van de day ahead prijzen.
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
Logging van bewerking "Day ahead prijzen ophalen":
2026-02-06 13:37:54 info: Day Ahead Optimalisering versie: 2026.02.0
2026-02-06 13:37:54 info: Day Ahead Optimalisering gestart op: 06-02-2026 13:37:54
2026-02-06 13:37:54 info: Day Ahead Optimalisatie gestart: 06-02-2026 13:37:54 taak: get_day_ahead_prices
2026-02-06 13:37:54 fout: Er is een fout opgetreden, zie de fout-tracering
Traceback (most recent call last):
  File "/usr/lib/python3.13/zoneinfo/_common.py", line 12, in load_tzdata
    return resources.files(package_name).joinpath(resource_name).open("rb")
           ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/importlib/resources/_common.py", line 46, in wrapper
    return func(anchor)
  File "/usr/lib/python3.13/importlib/resources/_common.py", line 56, in files
    return from_package(resolve(anchor))
                        ~~~~~~~^^^^^^^^
  File "/usr/lib/python3.13/functools.py", line 934, in wrapper
    return dispatch(args[0].__class__)(*args, **kw)
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/usr/lib/python3.13/importlib/resources/_common.py", line 82, in _
    return importlib.import_module(cand)
           ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^
  File "/usr/lib/python3.13/importlib/__init__.py", line 88, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1310, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1324, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'tzdata'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/root/dao/prog/da_base.py", line 729, in run_task_function
    getattr(self, run_task["function"])()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/root/dao/prog/da_base.py", line 352, in get_day_ahead_prices
    self.prices.get_prices(
    ~~~~~~~~~~~~~~~~~~~~~~^
        self.config.get(["source day ahead"], self.prices_options, "nordpool")
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/root/dao/prog/da_prices.py", line 38, in get_prices
    start = pd.Timestamp(
        year=now.year, month=now.month, day=now.day, tz="CET"
    )
  File "pandas/_libs/tslibs/timestamps.pyx", line 2731, in pandas._libs.tslibs.timestamps.Timestamp.__new__
  File "pandas/_libs/tslibs/timezones.pyx", line 158, in pandas._libs.tslibs.timezones.maybe_get_tz
  File "/usr/lib/python3.13/zoneinfo/_common.py", line 24, in load_tzdata
    raise ZoneInfoNotFoundError(f"No time zone found with key {key}")
zoneinfo._common.ZoneInfoNotFoundError: 'No time zone found with key CET'
Traceback (most recent call last):
  File "/usr/lib/python3.13/zoneinfo/_common.py", line 12, in load_tzdata
    return resources.files(package_name).joinpath(resource_name).open("rb")
           ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/importlib/resources/_common.py", line 46, in wrapper
    return func(anchor)
  File "/usr/lib/python3.13/importlib/resources/_common.py", line 56, in files
    return from_package(resolve(anchor))
                        ~~~~~~~^^^^^^^^
  File "/usr/lib/python3.13/functools.py", line 934, in wrapper
    return dispatch(args[0].__class__)(*args, **kw)
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/usr/lib/python3.13/importlib/resources/_common.py", line 82, in _
    return importlib.import_module(cand)
           ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^
  File "/usr/lib/python3.13/importlib/__init__.py", line 88, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1310, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1324, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'tzdata'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/root/dao/webserver/../prog/day_ahead.py", line 4711, in <module>
    main()
    ~~~~^^
  File "/root/dao/webserver/../prog/day_ahead.py", line 4690, in main
    da_calc.run_task_function("prices")
    ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^
  File "/root/dao/prog/da_base.py", line 729, in run_task_function
    getattr(self, run_task["function"])()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/root/dao/prog/da_base.py", line 352, in get_day_ahead_prices
    self.prices.get_prices(
    ~~~~~~~~~~~~~~~~~~~~~~^
        self.config.get(["source day ahead"], self.prices_options, "nordpool")
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/root/dao/prog/da_prices.py", line 38, in get_prices
    start = pd.Timestamp(
        year=now.year, month=now.month, day=now.day, tz="CET"
    )
  File "pandas/_libs/tslibs/timestamps.pyx", line 2731, in pandas._libs.tslibs.timestamps.Timestamp.__new__
  File "pandas/_libs/tslibs/timezones.pyx", line 158, in pandas._libs.tslibs.timezones.maybe_get_tz
  File "/usr/lib/python3.13/zoneinfo/_common.py", line 24, in load_tzdata
    raise ZoneInfoNotFoundError(f"No time zone found with key {key}")
zoneinfo._common.ZoneInfoNotFoundError: 'No time zone found with key CET'
rescla schreef op vrijdag 6 februari 2026 @ 13:40:
Net geupdate naar 2026.02, ik krijg de volgende fout bij het ophalen van de day ahead prijzen.
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
Logging van bewerking "Day ahead prijzen ophalen":
2026-02-06 13:37:54 info: Day Ahead Optimalisering versie: 2026.02.0
2026-02-06 13:37:54 info: Day Ahead Optimalisering gestart op: 06-02-2026 13:37:54
2026-02-06 13:37:54 info: Day Ahead Optimalisatie gestart: 06-02-2026 13:37:54 taak: get_day_ahead_prices
2026-02-06 13:37:54 fout: Er is een fout opgetreden, zie de fout-tracering
Traceback (most recent call last):
  File "/usr/lib/python3.13/zoneinfo/_common.py", line 12, in load_tzdata
    return resources.files(package_name).joinpath(resource_name).open("rb")
           ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/importlib/resources/_common.py", line 46, in wrapper
    return func(anchor)
  File "/usr/lib/python3.13/importlib/resources/_common.py", line 56, in files
    return from_package(resolve(anchor))
                        ~~~~~~~^^^^^^^^
  File "/usr/lib/python3.13/functools.py", line 934, in wrapper
    return dispatch(args[0].__class__)(*args, **kw)
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/usr/lib/python3.13/importlib/resources/_common.py", line 82, in _
    return importlib.import_module(cand)
           ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^
  File "/usr/lib/python3.13/importlib/__init__.py", line 88, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1310, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1324, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'tzdata'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/root/dao/prog/da_base.py", line 729, in run_task_function
    getattr(self, run_task["function"])()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/root/dao/prog/da_base.py", line 352, in get_day_ahead_prices
    self.prices.get_prices(
    ~~~~~~~~~~~~~~~~~~~~~~^
        self.config.get(["source day ahead"], self.prices_options, "nordpool")
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/root/dao/prog/da_prices.py", line 38, in get_prices
    start = pd.Timestamp(
        year=now.year, month=now.month, day=now.day, tz="CET"
    )
  File "pandas/_libs/tslibs/timestamps.pyx", line 2731, in pandas._libs.tslibs.timestamps.Timestamp.__new__
  File "pandas/_libs/tslibs/timezones.pyx", line 158, in pandas._libs.tslibs.timezones.maybe_get_tz
  File "/usr/lib/python3.13/zoneinfo/_common.py", line 24, in load_tzdata
    raise ZoneInfoNotFoundError(f"No time zone found with key {key}")
zoneinfo._common.ZoneInfoNotFoundError: 'No time zone found with key CET'
Traceback (most recent call last):
  File "/usr/lib/python3.13/zoneinfo/_common.py", line 12, in load_tzdata
    return resources.files(package_name).joinpath(resource_name).open("rb")
           ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/importlib/resources/_common.py", line 46, in wrapper
    return func(anchor)
  File "/usr/lib/python3.13/importlib/resources/_common.py", line 56, in files
    return from_package(resolve(anchor))
                        ~~~~~~~^^^^^^^^
  File "/usr/lib/python3.13/functools.py", line 934, in wrapper
    return dispatch(args[0].__class__)(*args, **kw)
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/usr/lib/python3.13/importlib/resources/_common.py", line 82, in _
    return importlib.import_module(cand)
           ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^
  File "/usr/lib/python3.13/importlib/__init__.py", line 88, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1310, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1324, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'tzdata'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/root/dao/webserver/../prog/day_ahead.py", line 4711, in <module>
    main()
    ~~~~^^
  File "/root/dao/webserver/../prog/day_ahead.py", line 4690, in main
    da_calc.run_task_function("prices")
    ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^
  File "/root/dao/prog/da_base.py", line 729, in run_task_function
    getattr(self, run_task["function"])()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/root/dao/prog/da_base.py", line 352, in get_day_ahead_prices
    self.prices.get_prices(
    ~~~~~~~~~~~~~~~~~~~~~~^
        self.config.get(["source day ahead"], self.prices_options, "nordpool")
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/root/dao/prog/da_prices.py", line 38, in get_prices
    start = pd.Timestamp(
        year=now.year, month=now.month, day=now.day, tz="CET"
    )
  File "pandas/_libs/tslibs/timestamps.pyx", line 2731, in pandas._libs.tslibs.timestamps.Timestamp.__new__
  File "pandas/_libs/tslibs/timezones.pyx", line 158, in pandas._libs.tslibs.timezones.maybe_get_tz
  File "/usr/lib/python3.13/zoneinfo/_common.py", line 24, in load_tzdata
    raise ZoneInfoNotFoundError(f"No time zone found with key {key}")
zoneinfo._common.ZoneInfoNotFoundError: 'No time zone found with key CET'
Ja hier ook.
Er komt snel een update.
Je kunt het tijdelijk oplossen door via het run menu de prijzen op te halen en de datum 2026-02-07 in te vullen.

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

Nieuwe (test)versie: 2026.02.01/2026.02.01.rc1
Deze update herstelt bovengenoemde fout.

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


  • jswinkels
  • Registratie: Oktober 1999
  • Laatst online: 11-02 22:53
ik krijg internaat service errors op de report en solar tab. Dit staat in d dashboard.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
2026-02-06 16:26:19,099 fout dao.webserver.app MainThread : Exception on / [POST]
Traceback (most recent call last):
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 1511, in wsgi_app
    response = self.full_dispatch_request()
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 919, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 917, in full_dispatch_request
    rv = self.dispatch_request()
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 902, in dispatch_request
    return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)  # type: ignore[no-any-return]
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/root/dao/webserver/app/routes.py", line 316, in menu
    return solar()
  File "/root/dao/webserver/app/routes.py", line 635, in solar
    report_df = report.calc_solar_data(
        solar_items[active_subject], active_date, active_view
    )
  File "/root/dao/prog/da_report.py", line 3057, in calc_solar_data
    solar_prog = self.calc_solar_predictions(
        device, start, end, interval="1hour", _ml_prediction=True
    )
  File "/root/dao/prog/da_base.py", line 645, in calc_solar_predictions
    while solar_prog["tijd"].iloc[0].tz_localize(None) < vanaf:
          ~~~~~~~~~~~~~~~~~~~~~~~^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/indexing.py", line 1207, in __getitem__
    return self._getitem_axis(maybe_callable, axis=axis)
           ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/indexing.py", line 1773, in _getitem_axis
    self._validate_integer(key, axis)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/indexing.py", line 1706, in _validate_integer
    raise IndexError("single positional indexer is out-of-bounds")
IndexError: single positional indexer is out-of-bounds
2026-02-06 16:28:15,884 fout dao.webserver.app MainThread : Exception on / [POST]
Traceback (most recent call last):
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/frame.py", line 4911, in _set_value
    self._mgr.column_setitem(icol, iindex, value, inplace_only=True)
    ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/internals/managers.py", line 1501, in column_setitem
    col_mgr.setitem_inplace(idx, value)
    ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/internals/managers.py", line 2209, in setitem_inplace
    arr[indexer] = value
    ~~~^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/arrays/string_.py", line 863, in __setitem__
    value = self._maybe_convert_setitem_value(value)
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/arrays/string_.py", line 837, in _maybe_convert_setitem_value
    raise TypeError(
    ...<3 lines>...
    )
TypeError: Invalid value '0' for dtype 'str'. Value should be a string or missing value, got 'int64' instead.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 1511, in wsgi_app
    response = self.full_dispatch_request()
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 919, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 917, in full_dispatch_request
    rv = self.dispatch_request()
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 902, in dispatch_request
    return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)  # type: ignore[no-any-return]
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/root/dao/webserver/app/routes.py", line 312, in menu
    return reports("reports")
  File "/root/dao/webserver/app/routes.py", line 527, in reports
    report_df = report.get_grid_data(active_period, _tot=tot)
  File "/root/dao/prog/da_report.py", line 2116, in get_grid_data
    df_ha = self.copy_col_df(df_p, df_ha, "production")
  File "/root/dao/prog/da_report.py", line 1127, in copy_col_df
    copy_to.at[row.tijd, col_name] = copy_from.at[row.tijd, col_name]
    ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/indexing.py", line 2592, in __setitem__
    return super().__setitem__(key, value)
           ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/indexing.py", line 2542, in __setitem__
    self.obj._set_value(*key, value=value, takeable=self._takeable)
    ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/frame.py", line 4922, in _set_value
    self.loc[index, col] = value
    ~~~~~~~~^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/indexing.py", line 938, in __setitem__
    iloc._setitem_with_indexer(indexer, value, self.name)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/indexing.py", line 1953, in _setitem_with_indexer
    self._setitem_with_indexer_split_path(indexer, value, name)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/indexing.py", line 2044, in _setitem_with_indexer_split_path
    self._setitem_single_column(loc, value, pi)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/indexing.py", line 2181, in _setitem_single_column
    self.obj._mgr.column_setitem(loc, plane_indexer, value)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/internals/managers.py", line 1503, in column_setitem
    new_mgr = col_mgr.setitem((idx,), value)
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/internals/managers.py", line 604, in setitem
    return self.apply("setitem", indexer=indexer, value=value)
           ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/internals/managers.py", line 442, in apply
    applied = getattr(b, f)(**kwargs)
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/internals/blocks.py", line 1667, in setitem
    values[indexer] = value
    ~~~~~~^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/arrays/string_.py", line 863, in __setitem__
    value = self._maybe_convert_setitem_value(value)
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/arrays/string_.py", line 837, in _maybe_convert_setitem_value
    raise TypeError(
    ...<3 lines>...
    )
TypeError: Invalid value '0' for dtype 'str'. Value should be a string or missing value, got 'int64' instead.

[ Voor 98% gewijzigd door jswinkels op 06-02-2026 16:31 ]

jswinkels schreef op vrijdag 6 februari 2026 @ 16:28:
ik krijg internaat service errors op de report en solar tab. Dit staat in d dashboard.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
2026-02-06 16:26:19,099 fout dao.webserver.app MainThread : Exception on / [POST]
Traceback (most recent call last):
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 1511, in wsgi_app
    response = self.full_dispatch_request()
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 919, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 917, in full_dispatch_request
    rv = self.dispatch_request()
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 902, in dispatch_request
    return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)  # type: ignore[no-any-return]
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/root/dao/webserver/app/routes.py", line 316, in menu
    return solar()
  File "/root/dao/webserver/app/routes.py", line 635, in solar
    report_df = report.calc_solar_data(
        solar_items[active_subject], active_date, active_view
    )
  File "/root/dao/prog/da_report.py", line 3057, in calc_solar_data
    solar_prog = self.calc_solar_predictions(
        device, start, end, interval="1hour", _ml_prediction=True
    )
  File "/root/dao/prog/da_base.py", line 645, in calc_solar_predictions
    while solar_prog["tijd"].iloc[0].tz_localize(None) < vanaf:
          ~~~~~~~~~~~~~~~~~~~~~~~^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/indexing.py", line 1207, in __getitem__
    return self._getitem_axis(maybe_callable, axis=axis)
           ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/indexing.py", line 1773, in _getitem_axis
    self._validate_integer(key, axis)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/indexing.py", line 1706, in _validate_integer
    raise IndexError("single positional indexer is out-of-bounds")
IndexError: single positional indexer is out-of-bounds
2026-02-06 16:28:15,884 fout dao.webserver.app MainThread : Exception on / [POST]
Traceback (most recent call last):
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/frame.py", line 4911, in _set_value
    self._mgr.column_setitem(icol, iindex, value, inplace_only=True)
    ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/internals/managers.py", line 1501, in column_setitem
    col_mgr.setitem_inplace(idx, value)
    ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/internals/managers.py", line 2209, in setitem_inplace
    arr[indexer] = value
    ~~~^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/arrays/string_.py", line 863, in __setitem__
    value = self._maybe_convert_setitem_value(value)
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/arrays/string_.py", line 837, in _maybe_convert_setitem_value
    raise TypeError(
    ...<3 lines>...
    )
TypeError: Invalid value '0' for dtype 'str'. Value should be a string or missing value, got 'int64' instead.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 1511, in wsgi_app
    response = self.full_dispatch_request()
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 919, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 917, in full_dispatch_request
    rv = self.dispatch_request()
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 902, in dispatch_request
    return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)  # type: ignore[no-any-return]
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/root/dao/webserver/app/routes.py", line 312, in menu
    return reports("reports")
  File "/root/dao/webserver/app/routes.py", line 527, in reports
    report_df = report.get_grid_data(active_period, _tot=tot)
  File "/root/dao/prog/da_report.py", line 2116, in get_grid_data
    df_ha = self.copy_col_df(df_p, df_ha, "production")
  File "/root/dao/prog/da_report.py", line 1127, in copy_col_df
    copy_to.at[row.tijd, col_name] = copy_from.at[row.tijd, col_name]
    ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/indexing.py", line 2592, in __setitem__
    return super().__setitem__(key, value)
           ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/indexing.py", line 2542, in __setitem__
    self.obj._set_value(*key, value=value, takeable=self._takeable)
    ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/frame.py", line 4922, in _set_value
    self.loc[index, col] = value
    ~~~~~~~~^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/indexing.py", line 938, in __setitem__
    iloc._setitem_with_indexer(indexer, value, self.name)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/indexing.py", line 1953, in _setitem_with_indexer
    self._setitem_with_indexer_split_path(indexer, value, name)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/indexing.py", line 2044, in _setitem_with_indexer_split_path
    self._setitem_single_column(loc, value, pi)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/indexing.py", line 2181, in _setitem_single_column
    self.obj._mgr.column_setitem(loc, plane_indexer, value)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/internals/managers.py", line 1503, in column_setitem
    new_mgr = col_mgr.setitem((idx,), value)
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/internals/managers.py", line 604, in setitem
    return self.apply("setitem", indexer=indexer, value=value)
           ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/internals/managers.py", line 442, in apply
    applied = getattr(b, f)(**kwargs)
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/internals/blocks.py", line 1667, in setitem
    values[indexer] = value
    ~~~~~~^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/arrays/string_.py", line 863, in __setitem__
    value = self._maybe_convert_setitem_value(value)
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/arrays/string_.py", line 837, in _maybe_convert_setitem_value
    raise TypeError(
    ...<3 lines>...
    )
TypeError: Invalid value '0' for dtype 'str'. Value should be a string or missing value, got 'int64' instead.
Welke versie draai je?
Heb je de ml-modellen opnieuw getraind na installatie van de nieuwe versie?

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


  • Beekforel
  • Registratie: November 2001
  • Laatst online: 13:16

Beekforel

Is eigenlijk geen vis

Ik heb sinds een paar dagen DAO draaien en ben vooral nog bezig met verkennen en data implementeren.

Zodoende ben ik nu bezig met de ML training van mijn twee solar setups. Beide zelfde hoek, maar verschillend dakvlak/leeftijd/vermogen. Zover ik het begrijp heb ik het goed ingevuld. Om de Yield uit te rekenen heb ik de totale opbrengst van 2025 gebruikt.
code:
1
2
2026-02-06 20:35:14 info: Training R²: 0.9178
2026-02-06 20:35:14 info: Testing R²: 0.7188
code:
1
2
2026-02-06 20:35:17 info: Training R²: 0.9154
2026-02-06 20:35:17 info: Testing R²: 0.8954
Als ik de documentatie goed begrijp is dit een matige score. Ook is de prognose bepaald niet gelijk met de werkelijkheid. De prognoses zijn veel hoger, zowel in de DAO als de ML kolom.

Wat kan ik doen om dit te verbeteren?

[edit] In elk geval al ontdekt dat ik de oriëntatie verkeerd had ingevuld... :X Die nu gecorrigeerd. Morgen nog even uitvinden wat de precieze hellingshoek is.
Na het corrigeren van de oriëntatie zie ik echter geen verschil in de berekeningen van 'ML modellen trainen', moet ik daar nog iets extras voor doen?

[ Voor 16% gewijzigd door Beekforel op 06-02-2026 21:24 ]

Beekforel schreef op vrijdag 6 februari 2026 @ 20:42:
Ik heb sinds een paar dagen DAO draaien en ben vooral nog bezig met verkennen en data implementeren.

Zodoende ben ik nu bezig met de ML training van mijn twee solar setups. Beide zelfde hoek, maar verschillend dakvlak/leeftijd/vermogen. Zover ik het begrijp heb ik het goed ingevuld. Om de Yield uit te rekenen heb ik de totale opbrengst van 2025 gebruikt.
code:
1
2
2026-02-06 20:35:14 info: Training R²: 0.9178
2026-02-06 20:35:14 info: Testing R²: 0.7188
code:
1
2
2026-02-06 20:35:17 info: Training R²: 0.9154
2026-02-06 20:35:17 info: Testing R²: 0.8954
Als ik de documentatie goed begrijp is dit een matige score. Ook is de prognose bepaald niet gelijk met de werkelijkheid. De prognoses zijn veel hoger, zowel in de DAO als de ML kolom.

Wat kan ik doen om dit te verbeteren?

[edit] In elk geval al ontdekt dat ik de oriëntatie verkeerd had ingevuld... :X Die nu gecorrigeerd. Morgen nog even uitvinden wat de precieze hellingshoek is.
Na het corrigeren van de oriëntatie zie ik echter geen verschil in de berekeningen van 'ML modellen trainen', moet ik daar nog iets extras voor doen?
Over hoeveel maanden/jaren heb je productiedata in Home Assistant?
Om goede resultaten met de ml-modellen te halen heb je eigenlijk minimaal 12 maanden aan data nodig.

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


  • Beekforel
  • Registratie: November 2001
  • Laatst online: 13:16

Beekforel

Is eigenlijk geen vis

KC27 schreef op vrijdag 6 februari 2026 @ 22:28:
[...]

Over hoeveel maanden/jaren heb je productiedata in Home Assistant?
Om goede resultaten met de ml-modellen te halen heb je eigenlijk minimaal 12 maanden aan data nodig.
De ene vanaf juli 2023, de andere vanaf augustus 2024.

Wat mij nog opviel was dat de "off" uren leeg (dus niet 0) zijn bij mij, de sensor is dan namelijk unavailable. Weet niet of dat wat uitmaakt.

[ Voor 17% gewijzigd door Beekforel op 06-02-2026 22:33 ]

Beekforel schreef op vrijdag 6 februari 2026 @ 22:32:
[...]

De ene vanaf juli 2023, de andere vanaf augustus 2024.

Wat mij nog opviel was dat de "off" uren leeg (dus niet 0) zijn bij mij, de sensor is dan namelijk unavailable. Weet niet of dat wat uitmaakt.
Was bij jou 4-feb ook zonnig?
Heb je voor mij van de die dag de tabelpresentatie van solar.
En anders van een andere zonnige dag?
Ik bedoel deze:
Afbeeldingslocatie: https://tweakers.net/i/kWoFsKWF58hpsu9BP6cM0dh3Ngc=/x800/filters:strip_exif()/f/image/dHAX2ZAovO5Up1W00GTk0nUf.png?f=fotoalbum_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


  • Beekforel
  • Registratie: November 2001
  • Laatst online: 13:16

Beekforel

Is eigenlijk geen vis

KC27 schreef op vrijdag 6 februari 2026 @ 22:45:
[...]

Was bij jou 4-feb ook zonnig?
Heb je voor mij van de die dag de tabelpresentatie van solar.
En anders van een andere zonnige dag?
Ik bedoel deze:
[Afbeelding]
Het is maar wat je zonnig kunt noemen. ;) 3-feb was beter hier.
Screenshots
Afbeeldingslocatie: https://tweakers.net/i/rHRAfiwYV6LLTrMnQlg9r7PwKFY=/100x75/filters:strip_exif()/f/image/0pSqeNio4k8LrVrk5KFaqmcl.png?f=fotoalbum_smallAfbeeldingslocatie: https://tweakers.net/i/FLd1YI6qA7RxOePGKRZNx50ou8U=/100x75/filters:strip_exif()/f/image/rdpsRbugQsGPI1YyFwHnUjTN.png?f=fotoalbum_smallAfbeeldingslocatie: https://tweakers.net/i/wEYHYVQebrqmR59VZ82OYPm63lA=/100x75/filters:strip_exif()/f/image/9lcvfUK8TNVJHQb1bArKXxAp.png?f=fotoalbum_small
Afbeeldingslocatie: https://tweakers.net/i/YRUg9ajG7rfG2aOuMVapc-NIm8A=/100x75/filters:strip_exif()/f/image/gIiJWgMVrpUGJBKbPGSyAsHE.png?f=fotoalbum_small
Het lijkt eerlijk gezegd wel alsof het nu beter is dan toen ik mijn post maakte. Maar daar heb ik helaas geen details van.

Ik lijkt wel data te missen, is dat erg?

  • jswinkels
  • Registratie: Oktober 1999
  • Laatst online: 11-02 22:53
KC27 schreef op vrijdag 6 februari 2026 @ 17:05:
[...]

Welke versie draai je?
Heb je de ml-modellen opnieuw getraind na installatie van de nieuwe versie?
versie 2026.02.1
ja, ik heb ml-modellen opnieuw getraind. Dat gaat prima.

Ik heb net nog een reset gedaan en ik kan de solar tab nu wel laden. Ik mis wel data en dat komt doordat ik vandaag een probleem had met mijn pv sensor in home assistant (die heeft een paar uur geen data verzameld). Mogelijk dat daarom de report tab het ook niet doet?
Beekforel schreef op vrijdag 6 februari 2026 @ 23:14:
[...]

Het is maar wat je zonnig kunt noemen. ;) 3-feb was beter hier.
Screenshots
[Afbeelding][Afbeelding][Afbeelding]
[Afbeelding]
Het lijkt eerlijk gezegd wel alsof het nu beter is dan toen ik mijn post maakte. Maar daar heb ik helaas geen details van.

Ik lijkt wel data te missen, is dat erg?
Ik denk dat het voor de modellen beter is dat er wel "nul"standen worden opgeslagen in de database.
Blijkbaar gaat de growatt-omvormer "off-line".
Misschien is dat een instelling, die je kunt veranderen
Dit is hier al een keer eerder langsgekomen. Wellicht is er op het HA-topic al iets over gepost?
Gebruik svp de zoekfunctie om dat op te zoeken.

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

jswinkels schreef op vrijdag 6 februari 2026 @ 23:19:
[...]

versie 2026.02.1
ja, ik heb ml-modellen opnieuw getraind. Dat gaat prima.

Ik heb net nog een reset gedaan en ik kan de solar tab nu wel laden. Ik mis wel data en dat komt doordat ik vandaag een probleem had met mijn pv sensor in home assistant (die heeft een paar uur geen data verzameld). Mogelijk dat daarom de report tab het ook niet doet?
Wellicht morgen afwachten of alles goed gaat werken?

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


  • DaBit
  • Registratie: Januari 2000
  • Laatst online: 10-02 22:40
KC27 schreef op vrijdag 6 februari 2026 @ 23:46:
Ik denk dat het voor de modellen beter is dat er wel "nul"standen worden opgeslagen in de database.
Blijkbaar gaat de growatt-omvormer "off-line".
Klopt.
Ook mijn Growatt voed zichzelf uit de zon, dus geen zon = geen data. Mijn Hoymiles micro-omvormers doen hetzelfde. Eigenlijk is het vrij normaal gedrag voor een zonnestroom-omvormer. Het zou via een template wel opgelost kunnen worden, maar het gedrag is zo normaal dat imho DAO daar mee om zou moeten kunnen gaan.

Kwa ML-modellen; iets is daar nog niet helemaal optimaal. Mijn 'Growatt' array bestaat uit 2 strings oostwest met wat schaduw die zich over de panelen beweegt van bmen, gebouwen en een schoorsteen. Een relatief lastige klant. Toch traint/test die best mooi:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2026-02-07 23:17:00 info: Day Ahead Optimalisering versie: 2026.02.1.rc1
..
2026-02-07 23:17:00 info: KNMI-weerstation: 375 VOLKEL
2026-02-07 23:17:00 info: Er zijn knmi-data aanwezig vanaf 2023-01-04 01:00:00 tot 2026-02-06 00:00:00
2026-02-07 23:17:00 info: Er zijn data van het KNMI binnengekomen vanaf 2026-02-05 00:00:00+01:00 tot en met 2026-02-06 23:00:00+01:00
..
2026-02-07 23:17:08 info: Merged dataset: 26305 records
2026-02-07 23:17:08 info: Date range: 2023-02-06 23:00:00+00:00 to 2026-02-06 23:00:00+00:00
2026-02-07 23:17:08 info: Detecting outliers...
2026-02-07 23:17:09 info: Outliers removed: 1020 (3.9%)
2026-02-07 23:17:09 info: Clean dataset: 25285 records
2026-02-07 23:17:09 info: Training samples: 20228
2026-02-07 23:17:09 info: Testing samples: 5057
..
2026-02-07 23:17:42 info: Training MAE: 0.1228 kWh
2026-02-07 23:17:42 info: Testing MAE: 0.1068 kWh
2026-02-07 23:17:42 info: Training R²: 0.9584
2026-02-07 23:17:42 info: Testing R²: 0.9414
Pak ik vervolgens een array op een stukje platdak die de panelen met vrij zicht op het zuiden heeft, wat een makkelijke klant zou moeten zijn voor een ML-model, dan komt vooral die testing R² toch slechter uit:
code:
1
2
3
4
5
6
7
8
9
10
11
2026-02-07 23:17:48 info: Starting solar prediction model for schuurzuid training...
..
2026-02-07 23:17:53 info: Date range: 2023-11-26 08:00:00+00:00 to 2026-02-06 23:00:00+00:00
2026-02-07 23:17:53 info: Detecting outliers...
2026-02-07 23:17:54 info: Outliers removed: 450 (2.3%)
2026-02-07 23:17:54 info: Clean dataset: 18838 records
2026-02-07 23:17:54 info: Training samples: 15070
2026-02-07 23:17:54 info: Testing samples: 3768
..
2026-02-07 23:18:44 info: Training R²: 0.9419
2026-02-07 23:18:44 info: Testing R²: 0.7055
En die schuurzuid voorspelt ook daadwerkelijk een stuk slechter dan de Growatt.
Nu heb ik er allemaal weinig kaas van gegeten maar het klopt niet met wat mijn boerenverstand me influistert.
De dataset van de schuur-* arrays zijn wel kleiner dan die van de Growatt, maar toch ook weer niet zo klein.

(en nogmaals; die ML-voorspellingen zitten er niet verder naast dan de voorspellingen oude stijl en meestal is de ML-voorspelling beter)

  • ErnstH
  • Registratie: September 2003
  • Niet online
Bij het updaten naar de laatste versie lijkt de scheduler niet meer te werken. Handmatig runs starten werkt gewoon als altijd, maar de automatische runs worden niet meer uitgevoerd. Ik zie ook niets in de logs verschijnen. Wat zou er aan de hand kunnen zijn?
ErnstH schreef op zondag 8 februari 2026 @ 15:17:
Bij het updaten naar de laatste versie lijkt de scheduler niet meer te werken. Handmatig runs starten werkt gewoon als altijd, maar de automatische runs worden niet meer uitgevoerd. Ik zie ook niets in de logs verschijnen. Wat zou er aan de hand kunnen zijn?
Staat active op false?

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


  • ErnstH
  • Registratie: September 2003
  • Niet online
Nee, niks veranderd raar genoeg.
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
{
  "interval" : "15min",
  "homeassistant": {
   "protocol api": "http",
   "host": "192.168.2.202",
   "ip port": 8123,
   "token": "!secret ha_api_token"
  },
  "database ha": {
    "engine": "sqlite",
    "database": "home-assistant_v2.db",
    "db_path": "/homeassistant"
  },
  "database da": {
    "engine": "sqlite",
    "db_path": "../data"
  },
  "meteoserver-key": "!secret meteoserver-key",
  "prices": {
    "source day ahead": "nordpool",
    "energy taxes consumption": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.10880,
      "2025-01-01": 0.10154,
      "2026-01-01": 0.09157
    },
    "energy taxes production": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.10880,
      "2025-01-01": 0.10154,
      "2026-01-01": 0.09157
    },
    "cost supplier consumption": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496,
      "2026-01-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,
      "2022-07-01": 9,
      "2023-01-01": 21
    },
    "vat production": {
      "2022-01-01": 21,
      "2022-07-01": 9,
      "2023-01-01": 21
    },
    "last invoice" : "2025-06-01",
    "tax refund": "True"
  },
  "logging level" : "info",
  "use_calc_baseload": "False",
  "baseload calc periode": 56,
  "baseload": [
    0.18,
    0.18,
    0.18,
    0.18,
    0.18,
    0.18,
    0.20,
    0.30,
    0.27,
    0.21,
    0.14,
    0.13,
    0.21,
    0.18,
    0.18,
    0.24,
    0.50,
    0.50,
    0.40,
    0.30,
    0.26,
    0.39,
    0.24,
    0.17
  ],
  "graphical backend": "",
  "graphics": {
    "style": "Solarize_Light2",
    "show" : "true",
    "prices consumption": "True",
    "prices production": "True",
    "prices spot": "False",
    "average consumption": "True"
  },
  "strategy": "minimize cost",
  "notifications": {
  },
  "grid": {
    "max_power": 17
  },
  "history": {
    "save days": 7
  },
  "dashboard": {
    "port": 5000
  },
  "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
  },
  "battery": [
    {
      "name": "Sessy",
      "entity actual level": "sensor.sessy_dqgg_state_of_charge",
      "capacity": 5.5,
      "upper limit": 100,
      "lower limit": 0,
      "optimal lower level": 0,
      "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
        },
        {
          "power": 60.0,
          "efficiency": 0.7
        },
        {
          "power": 110.0,
          "efficiency": 0.758
        },
        {
          "power": 220.0,
          "efficiency": 0.850
        },
        {
          "power": 330.0,
          "efficiency": 0.892
        },
        {  
          "power": 440.0,
          "efficiency": 0.912
        },
        {
          "power": 660.0,
          "efficiency": 0.933
        },
        {
          "power": 880.0,
          "efficiency": 0.942
        },
        {
          "power": 1100.0,
          "efficiency": 0.946
        },
        {
          "power": 1320.0,
          "efficiency": 0.942
        },
        {
          "power": 1540.0,
          "efficiency": 0.938
        },
        {
          "power": 1760.0,
          "efficiency": 0.929
        },
        {
          "power": 1980.0,
          "efficiency": 0.921
        },
        {
          "power": 2200.0,
          "efficiency": 0.908
        }
      ],
      "discharge stages": [
        {
          "power": 0.0,
          "efficiency": 1
        },
        {
          "power": 60.0,
          "efficiency": 0.7
        },
        {"power": 85.0,
         "efficiency": 0.735},
        {"power": 170.0,
         "efficiency": 0.829},
        {"power": 255.0,
         "efficiency": 0.882},
        {"power": 340.0,
         "efficiency": 0.921},
        {"power": 510.0,
         "efficiency": 0.943},
        {"power": 680.0,
         "efficiency": 0.957},
        {"power": 850.0,
         "efficiency": 0.957},
        {"power": 1020.0,
         "efficiency": 0.953},
        {"power": 1190.0,
         "efficiency": 0.943},
        {"power": 1360.0,
         "efficiency": 0.936},
        {"power": 1530.0,
         "efficiency": 0.929},
        {"power": 1700.0,
         "efficiency": 0.925}
      ],
      "reduced hours":{ 
       },
      "minimum power": 250,
      "dc_to_bat efficiency": 1,
      "dc_to_bat max power" : 4000.0,
      "bat_to_dc efficiency": 1,
      "bat_to_dc max power" : 3400.0,
      "cycle cost": 0.025,
      "entity set power feedin": "input_number.dao_sessy_dqgg_power_setpoint",
      "entity set operating mode": "input_select.dao_sessy_dqgg_operating_mode",
      "entity balance switch": "input_boolean.dao_balanceer_grid_sessy_dqgg",
      "entity calculated soc": "input_number.dao_sessy_dqgg_calculated_soc",
      "solar": []
   } 
 ],
  "solar": [ {"name": "enphase west",
    "tilt": 30,
    "orientation": 85,
    "capacity": 2.5,
    "yield": 0.006
  } ],
  "electric vehicle": [ ],
  "machines" : [ ],
  "tibber": {
    "api_token": "!secret tibber_api_token"
  },
  "report": {
    "entities grid consumption": [
      "sensor.p1_daily_consumed_electricity"
    ],
    "entities grid production": [
      "sensor.p1_daily_electricity_generated"
    ],
    "entities solar production ac": [
      "sensor.soladin_production_daily",
      "sensor.envoy_121320003096_energy_production_today"
    ],
    "entities solar production dc": [],
    "entities ev consumption" : [ "sensor.car_charge_amount_monthly" ],
    "entities wp consumption" : [],
    "entities boiler consumption": [],
    "entities battery consumption": ["sensor.sessy_daily_charged_lr"],
    "entities battery production": ["sensor.sessy_daily_discharged_lr"]
  },
  "scheduler": {
    "active": "True",
    "0432": "get_meteo_data",
    "1032": "get_meteo_data",
    "1632": "get_meteo_data",
    "2232": "get_meteo_data",
    "1254": "get_day_ahead_prices",
    "1354": "get_day_ahead_prices",
    "1454": "get_day_ahead_prices",
    "1554": "get_day_ahead_prices",
    "1654": "get_day_ahead_prices",
    "xx00": "calc_optimum",
    "xx15": "calc_optimum",
    "xx30": "calc_optimum",
    "xx45": "calc_optimum",
    "2229": "calc_baseloads",
    "2359": "clean_data"
  }
}

  • Emacee
  • Registratie: Maart 2009
  • Laatst online: 06:08
Heb een tijd DAO gedraaid zonder koppeling met m’n thuisaccu. Daar ben ik nu aan toe dus heb een verse installatie van de app (voorheen add-on) gedaan.
Toch krijg ik een vreemde error log:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
waarschuwing:root:Vervang 'delivery' in je settings door 'consumption'
waarschuwing:root:Vervang 'delivery' in je settings door 'consumption'
waarschuwing:root:Vervang 'redelivery' in je settings door 'production'
waarschuwing:root:Vervang 'redelivery' in je settings door 'production'
Traceback (most recent call last):
  File "/root/dao/webserver/../prog/day_ahead.py", line 4711, in <module>
    main()
    ~~~~^^
  File "/root/dao/webserver/../prog/day_ahead.py", line 4671, in main
    da_calc = DaCalc("../data/options.json")
  File "/root/dao/webserver/../prog/day_ahead.py", line 29, in __init__
    super().__init__(file_name=file_name)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/prog/da_base.py", line 175, in __init__
    self.btw_l_def = self.prices_options["vat"]
                     ~~~~~~~~~~~~~~~~~~~^^^^^^^
KeyError: 'vat'
Dit is mijn config waar het woord delivery of redelivery niet in voor komt:
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
{
  "homeassistant": {},

  "database ha": {
    "engine": "sqlite",
    "database": "home-assistant_v2.db",
    "db_path": "/homeassistant"
  },

  "database da": {
    "engine": "sqlite",
    "db_path": "../data"
  },

  "meteoserver-key": "!secret meteoserver-key",
  "interval": "15min",
  "logging": "info",
  "strategy": "minimize cost",
  "max gap": 0.005,
  "notifications": {
    "notification entity": "input_text.dao_notification"
  },

  "prices": {
    "source day ahead": "nordpool",
    "regular": [
      {
        "from date": "2025-01-01",
        "energy taxes consumption": 0.1015,
        "energy taxes production": 0.1015,
        "cost supplier consumption": 0.0205,
        "cost supplier production": -0.0205,
        "vat consumption": 21,
        "vat production": 21
      },
      {
        "from date": "2026-01-01",
        "energy taxes consumption": 0.0916,
        "energy taxes production": 0.0916,
        "cost supplier consumption": 0.0205,
        "cost supplier production": -0.0205,
        "vat consumption": 21,
        "vat production": 21
      }
    ]
  },

  "baseload": [
    0.20, 0.18, 0.16, 0.15, 0.15, 0.15,
    0.18, 0.25, 0.35, 0.30, 0.28, 0.28,
    0.30, 0.28, 0.25, 0.22, 0.25, 0.45,
    0.40, 0.35, 0.30, 0.28, 0.25, 0.22
  ],

  "battery": [
    {
      "name": "Deye",
      "entity actual level": "sensor.deye_battery_soc",
      "upper limit": 100,
      "lower limit": 5,
      "optimal lower level": 15,
      "entity min soc end opt": "input_number.dao_battery_min_soc",
      "entity max soc end opt": "input_number.dao_battery_max_soc",
      "charge stages": [
        { "power": 0.0, "efficiency": 1.0 },
        { "power": 3000, "efficiency": 0.95 },
        { "power": 6000, "efficiency": 0.94 },
        { "power": 10000, "efficiency": 0.93 },
        { "power": 14000, "efficiency": 0.92 },
        { "power": 17500, "efficiency": 0.91 }
      ],
      "discharge stages": [
        { "power": 0.0, "efficiency": 1.0 },
        { "power": 3000, "efficiency": 0.95 },
        { "power": 6000, "efficiency": 0.94 },
        { "power": 10000, "efficiency": 0.93 },
        { "power": 14000, "efficiency": 0.92 },
        { "power": 17500, "efficiency": 0.91 }
      ],
      "minimum power": 200,
      "dc_to_bat efficiency": 0.95,
      "bat_to_dc efficiency": 0.95,
      "dc_to_bat max power": 17500,
      "bat_to_dc max power": 17500,
      "cycle cost": 0.02,
      "entity set power feedin": "input_number.dao_battery_setpoint",
      "entity set operating mode": "input_select.dao_battery_mode",
      "entity stop inverter": "input_datetime.dao_battery_stop",
      "entity balance switch": "input_boolean.dao_battery_balance",
      "entity from batterij": "input_number.dao_from_battery",
      "entity from pv": "input_number.dao_from_pv",
      "entity from ac": "input_number.dao_from_ac",
      "entity calculated soc": "input_number.dao_calculated_soc",
      "solar": [
        {
          "name": "Veranda",
          "tilt": 5,
          "orientation": 150,
          "capacity": 5.6,
          "yield": 0.01275
        },
        {
          "name": "Garage",
          "tilt": 0,
          "orientation": 90,
          "capacity": 4.2,
          "yield": 0.01275
        }

      ]
    }
  ],

  "solar": [
    {
      "name": "Huis",
      "tilt": 35,
      "orientation": 150,
      "capacity": 2.5,
      "yield": 0.01275
    }
  ],

  "heating": {
    "heater present": "False",
    "degree days factor": 3.2,
    "adjustment" : "heating curve",
    "entity adjust heating curve": "input_number.stooklijn_verschuiving_day_ahead",
    "adjustment factor": 0.04
  },

  "boiler": {
    "boiler present": "false"
  },

  "electric vehicle": [],

  "machines": [],

  "tibber": {
    "api_token": "!secret tibber_api_token"
  },

  "scheduler": {
    "0700": "get_tibber_data",
    "0705": "get_meteo_data",
    "0710": "calc_optimum",
    "0800": "calc_optimum",
    "0815": "calc_optimum",
    "0830": "calc_optimum",
    "0845": "calc_optimum",
    "0900": "calc_optimum",
    "0915": "calc_optimum",
    "0930": "calc_optimum",
    "0945": "calc_optimum",
    "1000": "calc_optimum",
    "1015": "calc_optimum",
    "1030": "calc_optimum",
    "1045": "calc_optimum",
    "1100": "calc_optimum",
    "1115": "calc_optimum",
    "1130": "calc_optimum",
    "1145": "calc_optimum",
    "1200": "calc_optimum",
    "1215": "calc_optimum",
    "1230": "calc_optimum",
    "1245": "calc_optimum",
    "1300": "calc_optimum",
    "1305": "get_day_ahead_prices",
    "1315": "calc_optimum",
    "1330": "calc_optimum",
    "1345": "calc_optimum",
    "1400": "calc_optimum",
    "1410": "get_day_ahead_prices",
    "1415": "calc_optimum",
    "1430": "calc_optimum",
    "1445": "calc_optimum",
    "1500": "calc_optimum",
    "1515": "calc_optimum",
    "1520": "get_day_ahead_prices",
    "1530": "calc_optimum",
    "1545": "calc_optimum",
    "1600": "calc_optimum",
    "1615": "calc_optimum",
    "1630": "calc_optimum",
    "1645": "calc_optimum",
    "1700": "calc_optimum",
    "1715": "calc_optimum",
    "1730": "calc_optimum",
    "1745": "calc_optimum",
    "1800": "calc_optimum",
    "1815": "calc_optimum",
    "1830": "calc_optimum",
    "1845": "calc_optimum",
    "1900": "calc_optimum",
    "1915": "calc_optimum",
    "1930": "calc_optimum",
    "1945": "calc_optimum",
    "2000": "calc_optimum",
    "2015": "calc_optimum",
    "2030": "calc_optimum",
    "2045": "calc_optimum",
    "2100": "calc_optimum",
    "2115": "calc_optimum",
    "2130": "calc_optimum",
    "2145": "calc_optimum",
    "2200": "calc_optimum",
    "2215": "calc_optimum",
    "2230": "calc_optimum",
    "2245": "calc_optimum",
    "2300": "calc_optimum",
    "2315": "calc_optimum",
    "2330": "calc_optimum",
    "2345": "calc_optimum",
    "0000": "calc_optimum",
    "0015": "calc_optimum",
    "0030": "calc_optimum",
    "0045": "calc_optimum",
    "0100": "calc_optimum",
    "0115": "calc_optimum",
    "0130": "calc_optimum",
    "0145": "calc_optimum",
    "0200": "calc_optimum",
    "0215": "calc_optimum",
    "0230": "calc_optimum",
    "0245": "calc_optimum",
    "0300": "calc_optimum",
    "0315": "calc_optimum",
    "0330": "calc_optimum",
    "0345": "calc_optimum",
    "0400": "calc_optimum",
    "0415": "calc_optimum",
    "0430": "calc_optimum",
    "0445": "calc_optimum",
    "0500": "calc_optimum",
    "0515": "calc_optimum",
    "0530": "calc_optimum",
    "0545": "calc_optimum",
    "0600": "calc_optimum",
    "0615": "calc_optimum",
    "0630": "calc_optimum",
    "0645": "calc_optimum"
  },

  "graphical options": {
    "battery balance": "True",
    "prices consumption": "True",
    "prices production": "False",
    "prices spot": "True",
    "average consumption": "True"
  }
}
Heb nog niemand met dezelfde error gezien maar kan ook niet herleiden wat mijn instelling zo bijzonder maakt dat ik deze error krijg. Wie weet raad?

[ Voor 4% gewijzigd door Emacee op 08-02-2026 20:22 ]

PV: 3080Wp 35° Z + 5600Wp 5° Z + 3210Wp 20° OW SWW: Hewalex 3kW - Nefit indirecte boilers 3x 80L - CV: Panasonic Aquarea J 9kW Monoblock op radiatoren en convectoren, geen buffervat of vloerverwarming


  • Mirabis
  • Registratie: Juli 2013
  • Niet online
@Emacee je kunt in ieder geval jouw "scheduler" een heel stuk korter opschrijven als:
code:
1
2
3
4
"xx00": "calc_optimum",
"xx15": "calc_optimum"
"xx30": "calc_optimum"
"xx45": "calc_optimum"
DAO zal vervolgens 'xx' als elk uur interpreteren. Daarnaast dien je 'vat' anders op te geven. Denk aan:
code:
1
2
3
4
5
6
7
"vat consumption": {
      "2023-01-01": 21
    },
    "vat production": {
      "2023-01-01": 21,
      "2027-01-01": 0
    },

1x Venus-E v153 +LilyGo HA, CT003 V117 | 5040Wp ZO + 4200Wp NW | Zonneplan, 3x25A, Easee Charge Lite | EV 98kWh


  • Emacee
  • Registratie: Maart 2009
  • Laatst online: 06:08
Dank! Dat was het. Door naar eerder gedeelde configuraties te kijken heb ik nu een werkende configuratie kunnen samenstellen.

PV: 3080Wp 35° Z + 5600Wp 5° Z + 3210Wp 20° OW SWW: Hewalex 3kW - Nefit indirecte boilers 3x 80L - CV: Panasonic Aquarea J 9kW Monoblock op radiatoren en convectoren, geen buffervat of vloerverwarming


  • Hedzie
  • Registratie: Januari 2024
  • Laatst online: 11-02 19:14
@KC27
Is er wat gewijzigd in de boiler programmatuur?
Valt me laatste tijd op dat boiler direct opwarmt als deze onder de 43gr komt.
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
2026-02-11 14:00:00 info: Day Ahead Optimalisering versie: 2026.02.1
2026-02-11 14:00:00 info: Day Ahead Optimalisering gestart op: 11-02-2026 14:00:00
2026-02-11 14:00:00 info: Day Ahead Optimalisatie gestart: 11-02-2026 14:00:00 taak: calc_optimum
2026-02-11 14:00:00 info: Debug = False
2026-02-11 14:00:00 info: Zelf berekende baseload
2026-02-11 14:00:00 info: ML prediction woning
                   date_time  prediction
0  2026-02-11 14:00:00+01:00       0.598
1  2026-02-11 15:00:00+01:00       0.219
2  2026-02-11 16:00:00+01:00       0.069
3  2026-02-11 17:00:00+01:00       0.010
4  2026-02-11 18:00:00+01:00       0.009
5  2026-02-11 19:00:00+01:00       0.009
6  2026-02-11 20:00:00+01:00       0.009
7  2026-02-11 21:00:00+01:00       0.009
8  2026-02-11 22:00:00+01:00       0.009
9  2026-02-11 23:00:00+01:00       0.009
10 2026-02-12 00:00:00+01:00       0.009
11 2026-02-12 01:00:00+01:00       0.009
12 2026-02-12 02:00:00+01:00       0.009
13 2026-02-12 03:00:00+01:00       0.009
14 2026-02-12 04:00:00+01:00       0.009
15 2026-02-12 05:00:00+01:00       0.009
16 2026-02-12 06:00:00+01:00       0.009
17 2026-02-12 07:00:00+01:00       0.009
18 2026-02-12 08:00:00+01:00       0.012
19 2026-02-12 09:00:00+01:00       0.070
20 2026-02-12 10:00:00+01:00       0.184
21 2026-02-12 11:00:00+01:00       0.249
22 2026-02-12 12:00:00+01:00       0.372
23 2026-02-12 13:00:00+01:00       0.373
24 2026-02-12 14:00:00+01:00       0.151
25 2026-02-12 15:00:00+01:00       0.115
26 2026-02-12 16:00:00+01:00       0.069
27 2026-02-12 17:00:00+01:00       0.010
28 2026-02-12 18:00:00+01:00       0.009
29 2026-02-12 19:00:00+01:00       0.009
30 2026-02-12 20:00:00+01:00       0.009
31 2026-02-12 21:00:00+01:00       0.009
32 2026-02-12 22:00:00+01:00       0.009
2026-02-11 14:00:00 info: ML prediction garage
                   date_time  prediction
0  2026-02-11 14:00:00+01:00       0.455
1  2026-02-11 15:00:00+01:00       0.163
2  2026-02-11 16:00:00+01:00       0.036
3  2026-02-11 17:00:00+01:00       0.005
4  2026-02-11 18:00:00+01:00       0.005
5  2026-02-11 19:00:00+01:00       0.005
6  2026-02-11 20:00:00+01:00       0.005
7  2026-02-11 21:00:00+01:00       0.005
8  2026-02-11 22:00:00+01:00       0.005
9  2026-02-11 23:00:00+01:00       0.005
10 2026-02-12 00:00:00+01:00       0.005
11 2026-02-12 01:00:00+01:00       0.007
12 2026-02-12 02:00:00+01:00       0.007
13 2026-02-12 03:00:00+01:00       0.007
14 2026-02-12 04:00:00+01:00       0.007
15 2026-02-12 05:00:00+01:00       0.007
16 2026-02-12 06:00:00+01:00       0.007
17 2026-02-12 07:00:00+01:00       0.007
18 2026-02-12 08:00:00+01:00       0.007
19 2026-02-12 09:00:00+01:00       0.038
20 2026-02-12 10:00:00+01:00       0.140
21 2026-02-12 11:00:00+01:00       0.194
22 2026-02-12 12:00:00+01:00       0.308
23 2026-02-12 13:00:00+01:00       0.306
24 2026-02-12 14:00:00+01:00       0.110
25 2026-02-12 15:00:00+01:00       0.068
26 2026-02-12 16:00:00+01:00       0.036
27 2026-02-12 17:00:00+01:00       0.005
28 2026-02-12 18:00:00+01:00       0.005
29 2026-02-12 19:00:00+01:00       0.005
30 2026-02-12 20:00:00+01:00       0.005
31 2026-02-12 21:00:00+01:00       0.005
32 2026-02-12 22:00:00+01:00       0.005
2026-02-11 14:00:00 info: Start waarden: 
     uur                tijd  spot   p_l   p_t  base  pv_ac  pv_dc
0  14:00 2026-02-11 14:00:00 0.102 0.266 0.266 0.216  1.053      0
1  15:00 2026-02-11 15:00:00 0.104 0.269 0.269 0.489  0.382      0
2  16:00 2026-02-11 16:00:00 0.109 0.275 0.275 0.492  0.105      0
3  17:00 2026-02-11 17:00:00 0.114 0.281 0.281 1.078  0.015      0
4  18:00 2026-02-11 18:00:00 0.115 0.282 0.282 0.384  0.014      0
5  19:00 2026-02-11 19:00:00 0.105 0.270 0.270 0.353  0.014      0
6  20:00 2026-02-11 20:00:00 0.096 0.259 0.259 0.518  0.014      0
7  21:00 2026-02-11 21:00:00 0.093 0.256 0.256 0.325  0.014      0
8  22:00 2026-02-11 22:00:00 0.091 0.253 0.253 0.298  0.014      0
9  23:00 2026-02-11 23:00:00 0.094 0.257 0.257 0.185  0.014      0
2026-02-11 14:00:00 info: No reduced hours applied for Sessy
2026-02-11 14:00:00 info: Startwaarde SoC Sessy: 0.0%

2026-02-11 14:00:00 info: Boiler direct opwarmen staat uit
2026-02-11 14:00:00 info: Boiler setpoint 53.0 °C
2026-02-11 14:00:00 info: Boiler hysterese 19.0 K
2026-02-11 14:00:00 info: Boiler opwarmen wordt ingepland tussen: 2026-02-11 21:00 en 2026-02-11 22:00
2026-02-11 14:00:00 info: Boiler verbruik in 1 uur: 2.1 kWh
2026-02-11 14:00:00 info: Prognose boiler:
                 tijd  act_temp  heat  elec  interval  cost  end_temp  end_value  netto_cost
0 2026-02-11 14:00:00    52.500 0.155 0.162         1 0.043    50.862     -0.054       0.097
1 2026-02-11 15:00:00    52.263 0.229 0.192         1 0.051    51.100     -0.046       0.098
2 2026-02-11 16:00:00    52.025 0.303 0.221         1 0.061    51.337     -0.039       0.099
3 2026-02-11 17:00:00    51.788 0.376 0.251         1 0.070    51.575     -0.031       0.101
4 2026-02-11 18:00:00    51.550 0.450 0.280         1 0.079    51.812     -0.023       0.102
5 2026-02-11 19:00:00    51.312 0.524 0.310         1 0.083    52.050     -0.015       0.098
6 2026-02-11 20:00:00    51.075 0.598 0.339         1 0.088    52.288     -0.007       0.095
7 2026-02-11 21:00:00    50.837 0.671 0.369         1 0.094    52.525      0.001       0.093
8 2026-02-11 22:00:00    50.600 0.745 0.398         1 0.101    52.763      0.009       0.092
9 2026-02-11 23:00:00    50.362 0.819 0.428         1 0.110    53.000      0.017       0.093

2026-02-11 14:00:00 info: Gewogen graaddagen vandaag: 13.7 K.day
2026-02-11 14:00:00 info: Gewogen graaddagen totaal: 13.7 K.day
2026-02-11 14:00:00 info: Degree days factor: 3.8 kWh/K.day
2026-02-11 14:00:00 info: Totaal benodigde warmte: 52.6 kWh
2026-02-11 14:00:00 info: Reeds geproduceerde warmte: 35.2 kWh
2026-02-11 14:00:00 info: Nog benodigde warmte: 17.4 kWh
2026-02-11 14:00:00 info: Regeling warmtepomp: power
2026-02-11 14:00:00 info: Actuele warmtevraag: Ja
2026-02-11 14:00:00 info: Minimale runlengte 1 uur
2026-02-11 14:00:00 info: Warmtepomp met power-regeling/stooklijnverschuiving wordt ingepland.
2026-02-11 14:00:00 info: Maximaal warmteproducerend vermogen: 5.0 kW
2026-02-11 14:00:00 info: Minimaal warmteproducerend vermogen: 1.5975 kW
2026-02-11 14:00:00 info: Aantal beschikbare uren: 8.00
2026-02-11 14:00:00 info: Maximaal te produceren hoeveelheid warmte: 40.0 kWh
2026-02-11 14:00:00 info: Minimaal te produceren hoeveelheid warmte: 12.8 kWh
2026-02-11 14:00:00 info: Aantal in te plannen uren: 7.0
2026-02-11 14:00:00 info: Warmtepomp draait al minimaal 1 uur
2026-02-11 14:00:00 info: Omdat de wp meer dan 75% van de uren draait wordt de wp zonder "min_run_length"=1 ingepland.
2026-02-11 14:00:00 info: Apparaat Boiler direct starten staat uit
2026-02-11 14:00:00 info: Machine Boiler wordt niet ingepland, want er is gekozen voor Uit
2026-02-11 14:00:00 info: Apparaat Wasmachine direct starten staat uit
2026-02-11 14:00:00 info: Machine Wasmachine wordt niet ingepland, want het planning-window ligt voorbij einde optimalisering
2026-02-11 14:00:00 info: Machine Wasmachine wordt niet ingepland, want er is gekozen voor Uit
2026-02-11 14:00:00 info: Apparaat Droger direct starten staat uit
2026-02-11 14:00:00 info: Machine Droger wordt niet ingepland, want het planning-window ligt voorbij einde optimalisering
2026-02-11 14:00:00 info: Machine Droger wordt niet ingepland, want er is gekozen voor Uit
2026-02-11 14:00:00 info: Apparaat Vaatwasser direct starten staat uit
2026-02-11 14:00:00 info: Machine Vaatwasser wordt niet ingepland, want er is gekozen voor Uit
2026-02-11 14:00:00 info: Strategie: minimale levering
2026-02-11 14:00:00 info: Eerste berekening
2026-02-11 14:00:00 info: Kosten (euro): 1.50  
2026-02-11 14:00:00 info: Levering (kWh): 5.64  
2026-02-11 14:00:00 info: Herberekening
2026-02-11 14:00:00 info: Kosten (euro): 1.49  
2026-02-11 14:00:00 info: Levering (kWh): 5.64  
2026-02-11 14:00:00 info: Het programma heeft een optimale oplossing gevonden.
2026-02-11 14:00:00 info: Waarde boiler om 23 uur: 2.37 kWh
2026-02-11 14:00:00 info: Inzet warmtepomp
2026-02-11 14:00:00 info: u   uur   tar    hp_s_on hp_on heat cons
2026-02-11 14:00:00 info: 0   14:00 0.2661    0.00 1     2.10    0.30
2026-02-11 14:00:00 info: 1   15:00 0.2686    0.00 1     2.10    0.30
2026-02-11 14:00:00 info: 2   16:00 0.2750    0.00 1     1.63    0.23
2026-02-11 14:00:00 info: 3   17:00 0.2809    0.00 1     1.60    0.23
2026-02-11 14:00:00 info: 4   18:00 0.2825    0.00 1     1.60    0.23
2026-02-11 14:00:00 info: 5   19:00 0.2697    0.00 1     2.10    0.30
2026-02-11 14:00:00 info: 6   20:00 0.2593    0.00 1     2.10    0.30
2026-02-11 14:00:00 info: 7   21:00 0.2556    0.00 0     0.00    0.00
2026-02-11 14:00:00 info: 8   22:00 0.2528    0.00 1     2.10    0.30
2026-02-11 14:00:00 info: 9   23:00 0.2567    0.00 1     2.10    0.30
2026-02-11 14:00:00 info: 
  uur     tar  p0  p1  p2  p3  p4  p5  p6  p7  p8    heat    cons
14:00   0.266   0   0 300   0   0   0   0   0   0   2.100   0.300
15:00   0.269   0   0 300   0   0   0   0   0   0   2.100   0.300
16:00   0.275   0 210  18   0   0   0   0   0   0   1.629   0.230
17:00   0.281   0 225   0   0   0   0   0   0   0   1.597   0.225
18:00   0.282   0 225   0   0   0   0   0   0   0   1.597   0.225
19:00   0.270   0   0 300   0   0   0   0   0   0   2.100   0.300
20:00   0.259   0   0 300   0   0   0   0   0   0   2.100   0.300
21:00   0.256   0   0   0   0   0   0   0   0   0   0.000   0.000
22:00   0.253   0   0 300   0   0   0   0   0   0   2.100   0.300
23:00   0.257   0   0 300   0   0   0   0   0   0   2.100   0.300

2026-02-11 14:00:00 info: Laad volume in uur 0 14:00 0.0 kWh
2026-02-11 14:00:00 info: 3 0.5590908950025383 0.44
2026-02-11 14:00:00 info: 4 0.4409091049974617 0.66
2026-02-11 14:00:00 info: Ontlaad volume in uur 4 18:00 0.44851910689497754 kWh
2026-02-11 14:00:00 info: 8 0.2638347687617515 1.7
2026-02-11 14:00:00 info: In- en uitgaande energie per uur batterij Sessy
   uur   ac->    eff   ->dc pv->dc   dc->    eff  ->bat  o_eff    SoC
          kWh      %    kWh    kWh    kWh      %    kWh      %      %
 14:00   0.54  87.28   0.47   0.00   0.47 100.00   0.47  87.28   4.26
 15:00   0.00     --   0.00   0.00   0.00     --   0.00     --   4.26
 16:00   0.00     --   0.00   0.00   0.00     --   0.00     --   4.26
 17:00   0.00     --   0.00   0.00   0.00     --   0.00     --   4.26
 18:00  -0.45  95.70  -0.47   0.00  -0.47 100.00  -0.47  95.70   0.00
 19:00   0.00     --   0.00   0.00   0.00     --   0.00     --   0.00
 20:00   0.00     --   0.00   0.00   0.00     --   0.00     --   0.00
 21:00   0.00     --   0.00   0.00   0.00     --   0.00     --   0.00
 22:00   0.00     --   0.00   0.00   0.00     --   0.00     --   0.00
 23:00   0.00     --   0.00   0.00   0.00     --   0.00     --   0.00
Totaal   0.09     --  -0.00   0.00   0.00     --   0.00     --    NaN
2026-02-11 14:00:00 info: Berekende prognoses: 
   uur  bat_in  bat_out   cons   prod   base   boil     wp     ev  pv_ac   cost  profit  b_tem   mach
 14:00    0.54     0.00   0.00  -0.00   0.22   0.00   0.30   0.00   1.05   0.00    0.00  52.26   0.00
 15:00    0.00     0.00   0.41   0.00   0.49   0.00   0.30   0.00   0.38   0.11   -0.00  52.03   0.00
 16:00    0.00     0.00   0.62   0.00   0.49   0.00   0.23   0.00   0.10   0.17   -0.00  51.79   0.00
 17:00    0.00     0.00   1.29   0.00   1.08   0.00   0.23   0.00   0.01   0.36   -0.00  51.55   0.00
 18:00    0.00     0.45   0.15   0.00   0.38   0.00   0.23   0.00   0.01   0.04   -0.00  51.31   0.00
 19:00    0.00     0.00   0.64   0.00   0.35   0.00   0.30   0.00   0.01   0.17   -0.00  51.08   0.00
 20:00    0.00     0.00   0.80   0.00   0.52   0.00   0.30   0.00   0.01   0.21   -0.00  50.84   0.00
 21:00    0.00     0.00   0.68   0.00   0.33   0.37   0.00   0.00   0.01   0.17   -0.00  53.57   0.00
 22:00    0.00     0.00   0.58   0.00   0.30   0.00   0.30   0.00   0.01   0.15   -0.00  53.33   0.00
 23:00    0.00     0.00   0.47   0.00   0.18   0.00   0.30   0.00   0.01   0.12   -0.00  53.09   0.00
Totaal    0.54     0.45   5.64  -0.00   4.34   0.37   2.48   0.00   1.64   1.51    0.00    NaN   0.00

2026-02-11 14:00:00 info: Consumption               5.64 (kWh)
2026-02-11 14:00:00 info: Cost consumption          1.51 (€)
2026-02-11 14:00:00 info: Tariff consumption        0.267 (€/kWh)
2026-02-11 14:00:00 info: Production               -0.00 (kWh)
2026-02-11 14:00:00 info: Profit production         0.00 (€)
2026-02-11 14:00:00 info: Tariff production        -0.266 (€/kWh)

2026-02-11 14:00:00 info: 
Calculation profit after optimize in €
Cost before optimize              1.49
Cost consumption      1.51
Cycle cost            0.01
Penalty cost          0.00
Battery storage       0.00
Boiler storage       -0.02
Profit production     0.00
Total                 1.49
Cost after optimize               1.49
Profit:                          -0.01
2026-02-11 14:00:00 info: Doorzetten van alle settings naar HA
2026-02-11 14:00:00 info: Boiler opwarmen geactiveerd
2026-02-11 14:00:00 info: Boiler opwarmen ingepland vanaf: 2026-02-11 21:00:00 met 1 interval(len)
2026-02-11 14:00:00 info: Boiler temperatuur 53.1 °C,  waardering: 2.371 kWh = 0.63 euro
2026-02-11 14:00:00 info: Grid set point: 0.0 W
2026-02-11 14:00:00 info: Cycle cost Sessy: 0.01 euro
2026-02-11 14:00:00 info: Netto vermogen naar(+)/uit(-) omvormer Sessy: 537 W
2026-02-11 14:00:00 info: Balanceren: True
2026-02-11 14:00:00 info: Vermogen uit batterij: -468W
2026-02-11 14:00:00 info: Vermogen dat binnenkomt van pv: 0W
2026-02-11 14:00:00 info: Vermogen dat binnenkomt van ac: 468W
2026-02-11 14:00:00 info: Waarde SoC na eerste uur: 4.3%
2026-02-11 14:00:00 info: Elektrisch vermogen warmtepomp ingesteld op 300 W
2026-02-11 14:00:00 info: Apparaat: Boiler
2026-02-11 14:00:00 info: Programma: Uit
2026-02-11 14:00:00 info: Apparaat: Wasmachine
2026-02-11 14:00:00 info: Programma: Uit
2026-02-11 14:00:00 info: Apparaat: Droger
2026-02-11 14:00:00 info: Programma: Uit
2026-02-11 14:00:00 info: Apparaat: Vaatwasser
2026-02-11 14:00:00 info: Programma: Uit
Boiler temp 53gr.
Hystere staat op 19gr.
Zou dus eigelijk pas bij 34gr direct moeten opwarmen.
Tussen 41 en 34gr kan dao het plannen.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
"boiler": {
    "boiler present": "True",
    "entity actual temp.": "input_number.laatste_watertank_temperatuur",
    "entity setpoint": "input_number.setpoint_tapwater_boiler",
    "entity hysterese": "input_number.hysterese",
    "cop": 2.5,
    "cooling rate": 0.2375,
    "volume": 230,
    "heating allowed below": 43,
    "elec. power": 2100,
    "activate service": "press",
    "activate entity": "input_button.tapwater_aan",
    "boiler heated by heatpump": "True"
  },
Maar vanmiddag om 14.00u ging boiler alsnog verwarmen, terwijl deze 51gr was.

Afbeeldingslocatie: https://tweakers.net/i/1IB5AQ3lYBcr8sMejX1V-m0ai4E=/x800/filters:strip_icc():strip_exif()/f/image/QkxS0TJfXSGjKyTDjLouIMYg.jpg?f=fotoalbum_large

  • Tommiiee
  • Registratie: September 2011
  • Laatst online: 12:39
Ik heb wat problemen met mijn installatie.

DAO geeft een Internal Server Error als ik 'reports' probeer te openen:
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
2026-02-12 09:29:05,355 fout dao.webserver.app MainThread : Exception on / [POST]
Traceback (most recent call last):
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/frame.py", line 4911, in _set_value
    self._mgr.column_setitem(icol, iindex, value, inplace_only=True)
    ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/internals/managers.py", line 1501, in column_setitem
    col_mgr.setitem_inplace(idx, value)
    ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/internals/managers.py", line 2209, in setitem_inplace
    arr[indexer] = value
    ~~~^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/arrays/string_.py", line 863, in __setitem__
    value = self._maybe_convert_setitem_value(value)
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/arrays/string_.py", line 837, in _maybe_convert_setitem_value
    raise TypeError(
    ...<3 lines>...
    )
TypeError: Invalid value '0' for dtype 'str'. Value should be a string or missing value, got 'int64' instead.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 1511, in wsgi_app
    response = self.full_dispatch_request()
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 919, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 917, in full_dispatch_request
    rv = self.dispatch_request()
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 902, in dispatch_request
    return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)  # type: ignore[no-any-return]
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/root/dao/webserver/app/routes.py", line 312, in menu
    return reports("reports")
  File "/root/dao/webserver/app/routes.py", line 527, in reports
    report_df = report.get_grid_data(active_period, _tot=tot)
  File "/root/dao/prog/da_report.py", line 2116, in get_grid_data
    df_ha = self.copy_col_df(df_p, df_ha, "production")
  File "/root/dao/prog/da_report.py", line 1127, in copy_col_df
    copy_to.at[row.tijd, col_name] = copy_from.at[row.tijd, col_name]
    ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/indexing.py", line 2592, in __setitem__
    return super().__setitem__(key, value)
           ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/indexing.py", line 2542, in __setitem__
    self.obj._set_value(*key, value=value, takeable=self._takeable)
    ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/frame.py", line 4922, in _set_value
    self.loc[index, col] = value
    ~~~~~~~~^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/indexing.py", line 938, in __setitem__
    iloc._setitem_with_indexer(indexer, value, self.name)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/indexing.py", line 1953, in _setitem_with_indexer
    self._setitem_with_indexer_split_path(indexer, value, name)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/indexing.py", line 2044, in _setitem_with_indexer_split_path
    self._setitem_single_column(loc, value, pi)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/indexing.py", line 2181, in _setitem_single_column
    self.obj._mgr.column_setitem(loc, plane_indexer, value)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/internals/managers.py", line 1503, in column_setitem
    new_mgr = col_mgr.setitem((idx,), value)
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/internals/managers.py", line 604, in setitem
    return self.apply("setitem", indexer=indexer, value=value)
           ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/internals/managers.py", line 442, in apply
    applied = getattr(b, f)(**kwargs)
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/internals/blocks.py", line 1667, in setitem
    values[indexer] = value
    ~~~~~~^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/arrays/string_.py", line 863, in __setitem__
    value = self._maybe_convert_setitem_value(value)
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/arrays/string_.py", line 837, in _maybe_convert_setitem_value
    raise TypeError(
    ...<3 lines>...
    )
TypeError: Invalid value '0' for dtype 'str'. Value should be a string or missing value, got 'int64' instead.
En daarnaast heb ik al een tijdje last van (maar ik weet niet meer wanneer het begonnen is) grafiekjes die volgens mij niet kloppen. Dat ze dun zijn komt door de kwartierprijzen, maar ze zijn echt ontzettend 'laag', waar ik iets anders zou verwachten. Wat zou dit kunnen zijn?

Afbeeldingslocatie: https://tweakers.net/i/MKqDZDcDqr5w4HhIYhO7AeGYxK0=/fit-in/4000x4000/filters:no_upscale():strip_exif()/f/image/glubfKDZEDoHFQ15IgT606rq.png?f=user_large

Ik draai de meest recente versie van dao. Enige wijziging die ik recent heb doorgevoerd is dat ik in de config mijn HA entities van daily naar lifetime heb gezet door info elders in dit topic in de hoop dat dat het probleem zou oplossen, maar effectief lijkt het niet zoveel gedaan te hebben.
Pagina: 1 ... 28 29 Laatste