Day Ahead Optimizer: ervaringen met Home Assistant-addon DAO

Pagina: 1 ... 7 8 Laatste
Acties:

Acties:
  • 0 Henk 'm!

  • KC27
  • Registratie: December 2009
  • Niet online
@storeman
Bij een hybride omvormer heb je twee instellingen waarmee je het laden en ontladen kunt beperken:
De eerste heb je net genoemd
Er is nog een tweede: bat_to_dc max power en dc_to_bat max power, zie DOCS.md.
Ben je hiermee geholpen?

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


Acties:
  • 0 Henk 'm!

  • simnet
  • Registratie: Januari 2020
  • Laatst online: 15:19
De berekening rekent voor iedere dag van de week en alle uren van die dag de baseload als gemiddelde van de dagen uit de historie.
Ik heb er nog niet lang over nagedacht, maar moet je voor de baseload niet de mediaan gebruiken ipv het gemiddelde?

Acties:
  • +1 Henk 'm!

  • sailor_dg
  • Registratie: Januari 2019
  • Laatst online: 17:27
KC27 schreef op woensdag 18 juni 2025 @ 23:18:
[...]

Hoe ziet je berekening eruit van Report\Balans met periode "deze maand" en "vorige maand"?
Waarschijnlijk kun je daar zien wat er ontbreekt en/of fout gaat.
Dank voor je reactie - alles heeft waarden, maar zit wel wat negatieve waarden tussen. Ga nog even verder kijken naar mijn sensoren

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


Acties:
  • +1 Henk 'm!

  • balk
  • Registratie: Januari 2000
  • Laatst online: 18:53
@KC27 ik heb nog wat zitten stoeien met mijn baseload berekening. Ik zag dat deze op sommige momenten negatief was (en dat kan niet) en daardoor gaat de optimizer de mist in. Oorzaak bij mij was dat ik een 'combine the state of several sensors' helper gebruik om de waardes van mijn twee Sessys op te sommen. En blijkbaar maakt die geen 'state' waarde aan in de statistics tabel van Home Assistant. Hierdoor had de batterij component van de baseload berekenin geen waarde, en was deze soms negatief. Zie ook dit issue.
===
hmm, raar. De baseload is nu goed maar ik heb nog steeds geen oplossing wanneer ik 2025.6.1 gebruik. Met 2025.5.0 wel.

Acties:
  • 0 Henk 'm!

  • KC27
  • Registratie: December 2009
  • Niet online
balk schreef op donderdag 19 juni 2025 @ 22:11:
@KC27 ik heb nog wat zitten stoeien met mijn baseload berekening. Ik zag dat deze op sommige momenten negatief was (en dat kan niet) en daardoor gaat de optimizer de mist in. Oorzaak bij mij was dat ik een 'combine the state of several sensors' helper gebruik om de waardes van mijn twee Sessys op te sommen. En blijkbaar maakt die geen 'state' waarde aan in de statistics tabel van Home Assistant. Hierdoor had de batterij component van de baseload berekenin geen waarde, en was deze soms negatief. Zie ook dit issue.
===
hmm, raar. De baseload is nu goed maar ik heb nog steeds geen oplossing wanneer ik 2025.6.1 gebruik. Met 2025.5.0 wel.
Kun je de logging delen van de berekening waarin DAO geen oplossing heeft?

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


Acties:
  • +1 Henk 'm!

  • diamanten
  • Registratie: Juli 2024
  • Laatst online: 18:43
Ik zit nog even op de oude versie (versie 5), want wilde eerst alles goed hebben draaien. Ik zie ook wat vreemds mbt de baseloads: waarom is die vanaf 05:00 groter dan >38 kWh? Nb. de grip reports kloppen wel. Afbeeldingslocatie: https://tweakers.net/i/lc-JaS5TiGAmBwPzSPJKawSlYy4=/800x/filters:strip_icc():strip_exif()/f/image/tf6leTw5yyfN25Jinvb09sCD.jpg?f=fotoalbum_large Afbeeldingslocatie: https://tweakers.net/i/zXAdunsp8N4in9zRmgKg4OwaA6E=/800x/filters:strip_icc():strip_exif()/f/image/sKuQrzGiCTshSsHfloUCJg4p.jpg?f=fotoalbum_large
Mijn config is:
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
{
  "homeassistant": { },
  "database ha": {
    "engine": "sqlite",
    "database": "home-assistant_v2.db",
    "db_path": "/homeassistant"
  },  "notifications": {
    "notification entity": "input_text.dao_notificatie",
    "opstarten": "True",
    "berekening": "True",
    "last activity entity": "input_datetime.dao_laatste_activiteit"
  },
  "database da": {
    "engine": "sqlite",
    "db_path": "../data"
  },
  "meteoserver-key": "!secret meteoserver-key",
  "prices": {
    "source day ahead": "entsoe",
    "entsoe-api-key": "!secret entsoe-api-key",
    "regular high": 0.24,
    "regular low": 0.23,
    "switch to low": 23,
    "energy taxes delivery": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.10880,
      "2025-01-01": 0.10154
    },
    "energy taxes redelivery": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.10880,
      "2025-01-01": 0.10154
    },
    "cost supplier delivery": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496
    },
    "cost supplier redelivery": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496
    },
    "vat": {
      "2022-01-01": 21,
      "2022-07-01": 9,
      "2023-01-01": 21
    },
    "last invoice": "2025-04-01",
    "tax refund": "True"
  },
  "logging level" : "info",
  "use_calc_baseload": "False",
  "baseload calc periode": 56,
  "baseload": [
    0.14,
    0.38,
    0.26,
    0.42,
    0.15,
    0.12,
    0.13,
    0.15,
    0.23,
    0.26,
    0.31,
    0.32,
    0.31,
    0.23,
    0.26,
    0.21,
    0.21,
    0.54,
    0.26,
    0.26,
    0.22,
    0.19,
    0.18,
    0.16
  ],
  "graphical backend": "",
  "graphics": {
    "style": "Solarize_Light2",
    "show" : "true",
    "prices delivery": "True",
    "prices redelivery": "True",
    "average delivery": "True"
  },
  "strategy": "minimize cost",
  "notifications": {
    "notification entity": "input_text.dao_notificatie",
    "opstarten": "True",
    "berekening": "True",
    "last activity entity": "input_datetime.dao_laatste_activiteit"
  },
  "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": "EvaPower",
      "entity actual level": "sensor.gesimuleerde_evapower_soc_dao",
      "capacity": 3.072,
      "upper limit": 100,
      "lower limit": 10,
      "optimal lower level": 10,
      "entity set power feedin": "input_number.dao_feedin_grid",
      "entity calculated soc": "input_number.dao_entity_calculated_soc",
      "entity min soc end opt": "input_number.dao_entity_min_soc_end_eva",
      "cycle cost": 0.035,
      "dc_to_bat efficiency": 0.85,
      "bat_to_dc efficiency": 0.85,
      "minimum power": 120,
      "charge stages": [
        { "power": 0.0, "efficiency": 1 },
        { "power": 100, "efficiency": 0.5 },
        { "power": 800, "efficiency": 0.89 },
        { "power": 1250, "efficiency": 0.85 },
        { "power": 2000, "efficiency": 0.86 }
      ],
      "discharge stages": [
        { "power": 0.0, "efficiency": 1 },
        { "power": 100, "efficiency": 0.5 },
        { "power": 800, "efficiency": 0.92 },
        { "power": 400, "efficiency": 0.85 },
        { "power": 600, "efficiency": 0.88 }
      ],
      "solar": []
    },
    {
      "name": "Delta2Max",
      "entity actual level": "sensor.gesimuleerde_delta2max_soc",
      "capacity": 2.048,
      "upper limit": 100,
      "lower limit": 10,
      "optimal lower level": 10,
      "minimum power": 200,
      "dc_to_bat efficiency": 0.85,
      "bat_to_dc efficiency": 0.85,
      "cycle cost": 0.035,
      "entity set power feedin": "input_number.dao_feedin_grid_d2max",
      "entity calculated soc": "input_number.dao_entity_calculated_soc_d2max",
      "entity min soc end opt": "input_number.dao_entity_min_soc_end",
      "solar": [],
      "charge stages": [
        {
          "power": 0,
          "efficiency": 1
        },
        {
          "power": 100,
          "efficiency": 0.85
        },
        {
          "power": 200,
          "efficiency": 0.88
        },
        {
          "power": 300,
          "efficiency": 0.90
        },
        {
          "power": 400,
          "efficiency": 0.91
        },
        {
          "power": 1200,
          "efficiency": 0.91
        },
        {
          "power": 1800,
          "efficiency": 0.90
        }
      ],
      "discharge stages": [
        {
          "power": 0,
          "efficiency": 1
        },
        {
          "power": 100,
          "efficiency": 0.92
        },
        {
          "power": 200,
          "efficiency": 0.93
        },
        {
          "power": 300,
          "efficiency": 0.93
        },
        {
          "power": 400,
          "efficiency": 0.92
        },
        {
          "power": 500,
          "efficiency": 0.90
        },
        {
          "power": 600,
          "efficiency": 0.88
        }
      ]
    }
  ],

  "solar": [ 
    {
      "name": "Enphase",
      "tilt": 30,
      "orientation": 200,
      "capacity": 11.680,
      "yield": 0.007,
      "entity pv switch": "input_boolean.solar_pv_on_off",
      "sensor history": "sensor.envoy_122126050988_lifetime_energy_production"
    }
  ],
  "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": 1.00 },
        { "ampere": 16, "efficiency": 0.95 }
      ],
      "entity actual level": "sensor.niro_ev_battery_level",
      "entity plugged in": "input_boolean.kia_ingeplugd_dao",
      "entity stop charging": "input_datetime.stop_laden_ev",
      "charge scheduler": {
        "entity set level": "number.ev_smart_charging_minimum_ev_soc",
        "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"
    }
  ],

  "machines" : [ ],
  "tibber": {
    "api_token": "!secret tibber_api_token"
  },
  "report": {
    "entities grid consumption": [
      "sensor.energy_consumed_tariff_1",
      "sensor.energy_consumed_tariff_2"
    ],
    "entities grid production": [
      "sensor.energy_produced_tariff_1",
      "sensor.energy_produced_tariff_2"
    ],
    "entities solar production ac": [
      "sensor.envoy_122126050988_today_s_energy_production"
    ],
    "entities solar production dc": [],
    "entities ev consumption" : [],
    "entities wp consumption" : ["sensor.warmtepomp_today_s_consumption"],
    "entities boiler consumption": [],
    "entities battery consumption": ["sensor.totaal_batterij_consumption_dao"],
    "entities battery production": ["sensor.totaal_batterij_production_dao"]
  },
  "scheduler": {
    "active": "True",
    "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",
    "2359": "clean_data"
  }
}

Acties:
  • +1 Henk 'm!

  • f.welvering
  • Registratie: Oktober 2009
  • Laatst online: 19:21
Ik ben weer even gaan stoeien met DAO en heb mijn wasmachine toegevoegd als machine.
Ik krijg netjes een optimalisatie grafiek, maar de wasmachine wordt niet ingepland, ik begrijp niet zo goed waarom niet.

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
{
  "homeassistant": {
    "host": "192.168.60.3",
    "ip port": 8123,
    "token": "!secret ha_api_token"
  },
  "database ha": {
    "engine": "mysql",
    "server": "192.168.60.3",
    "port": 3306,
    "database": "homeassistant",
    "username": "dao",
    "password": "!secret db_da_password"
  },
  "database da": {
    "engine": "mysql",
    "server": "192.168.60.3",
    "port": 3306,
    "database": "dao",
    "username": "dao",
    "password": "!secret db_da_password"
  },
  "meteoserver-key": "!secret meteoserver-key",
  "prices": {
    "source day ahead": "nordpool",
    "regular high": 0.50,
    "regular low": 0.40,
    "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.020496
    },
    "cost supplier production": {
      "2024-08-01": 0.020496
    },
    "vat": {
      "2023-01-01": 21
    },
    "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": "2024-09-01",
    "tax refund": "True",
    "prices consumption": "True",
    "prices production": "False",
    "prices spot": "False",
    "average consumption": "False"
  },
  "logging level" : "info",
  "use_calc_baseload": "True",
  "baseload calc periode": 56,
  "baseload": [
    0.14,
    0.38,
    0.26,
    0.42,
    0.15,
    0.12,
    0.13,
    0.15,
    0.23,
    0.26,
    0.31,
    0.32,
    0.31,
    0.23,
    0.26,
    0.21,
    0.21,
    0.54,
    0.26,
    0.26,
    0.22,
    0.19,
    0.18,
    0.16
  ],
  "graphical backend": "",
  "graphics": {
    "style": "Solarize_Light2",
    "show" : "true",
    "prices consumption": "True",
    "prices production": "False",
    "prices spot": "false",
    "average consumption": "false"
  },
  "strategy": "minimize cost",
  "notifications": {
  },
  "grid": {
    "max_power": 17
  },
  "history": {
    "save days": 7
  },
  "dashboard": {
    "port": 5000
  },
  "boiler": {
    "boiler present": "False"
  },
  "heating": {
    "heater present": "False"
  },
  "battery": [ ],
  "solar": [
    { "name" : "main",
      "tilt": 50,
      "orientation": 160,
      "capacity": 9.0,
      "yield": 0.0180625,
      "entity pv switch": "input_boolean.pv_main_aan_uit"
  }],
  "electric vehicle": [ ],
  "machines" : [
      { "name": "wasmachine",
        "programs":[
          {"name": "Uit",
           "power": []},
          {"name": "Kleur 40 graden",
           "power": [2000, 1500, 500, 400, 200, 300]
           },
          {"name": "Donker 40 graden",
           "power": [1500, 1000, 500, 400, 200, 300,200, 300]
           }
        ],
        "entity start window": "input_datetime.start_window_wasmachine",
        "entity end window": "input_datetime.eind_window_wasmachine",
        "entity selected program": "input_select.wasmachine_programma",
        "entity calculated start": "input_datetime.berekende_start_wasmachine",
        "entity calculated end": "input_datetime.berekende_stop_wasmachine"
      }
  ],
  "tibber": {
    "api_token": "!secret tibber_api_token"
  },
  "report": {
    "entities grid consumption": [
      "sensor.p1_meter_energie_import_tarief_1",
      "sensor.p1_meter_energie_import_tarief_2"
    ],
    "entities grid production": [
      "sensor.p1_meter_energie_export_tarief_1",
      "sensor.p1_meter_energie_export_tarief_2"
    ],
    "entities solar production ac": [
      "sensor.solaredge_panel_production_daily"
    ],
    "entities solar production dc": [],
    "entities ev consumption" : [],
    "entities wp consumption" : [],
    "entities boiler consumption": [],
    "entities battery consumption": [],
    "entities battery production": []
  },
  "scheduler": {
    "active": "true",
    "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",
    "2359": "clean_data"
  }
}


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
2025-06-20 15:20:17 info: Day Ahead Optimalisering versie: 2025.6.1
2025-06-20 15:20:17 info: Day Ahead Optimalisering gestart op: 20-06-2025 15:20:17
2025-06-20 15:20:17 info: Day Ahead Optimalisatie gestart: 20-06-2025 15:20:17 taak: calc_optimum
2025-06-20 15:20:17 info: Debug = False
2025-06-20 15:20:17 info: Zelf berekende baseload
2025-06-20 15:20:17 info: Start waarden: 
    uur                tijd       p_l       p_t   base     pv_ac  pv_dc
0     0 2025-06-21 00:00:00  0.291073  0.291073  0.290  0.000000      0
1     1 2025-06-21 01:00:00  0.281344  0.281344  0.296  0.000000      0
2     2 2025-06-21 02:00:00  0.278525  0.278525  0.278  0.000000      0
3     3 2025-06-21 03:00:00  0.276287  0.276287  0.266  0.000000      0
4     4 2025-06-21 04:00:00  0.280764  0.280764  0.268  0.000000      0
5     5 2025-06-21 05:00:00  0.274641  0.274641  0.274  0.054711      0
6     6 2025-06-21 06:00:00  0.269571  0.269571  0.223  0.935762      0
7     7 2025-06-21 07:00:00  0.257459  0.257459  1.009  1.152426      0
8     8 2025-06-21 08:00:00  0.239539  0.239539  1.128  1.197923      0
9     9 2025-06-21 09:00:00  0.175978  0.175978  1.632  1.186866      0
10   10 2025-06-21 10:00:00  0.148256  0.148256  0.007  1.217669      0
11   11 2025-06-21 11:00:00  0.145231  0.145231  2.312  1.323333      0
12   12 2025-06-21 12:00:00  0.132660  0.132660  4.314  1.498583      0
13   13 2025-06-21 13:00:00  0.116131  0.116131  4.602  1.751323      0
14   14 2025-06-21 14:00:00  0.114050  0.114050  1.517  2.051714      0
15   15 2025-06-21 15:00:00  0.144034  0.144034  1.061  2.350290      0
16   16 2025-06-21 16:00:00  0.147772  0.147772  1.253  2.579816      0
17   17 2025-06-21 17:00:00  0.220506  0.220506  0.853  2.687413      0
18   18 2025-06-21 18:00:00  0.269740  0.269740  1.102  2.541722      0
19   19 2025-06-21 19:00:00  0.302423  0.302423  1.429  2.109260      0
20   20 2025-06-21 20:00:00  0.337319  0.337319  3.260  1.224595      0
21   21 2025-06-21 21:00:00  0.348342  0.348342  3.092  0.295823      0
22   22 2025-06-21 22:00:00  0.318322  0.318322  2.656  0.000000      0
23   23 2025-06-21 23:00:00  0.292041  0.292041  0.840  0.000000      0
2025-06-20 15:20:18 info: Boiler niet aanwezig of staat uit, boiler wordt niet ingepland
2025-06-20 15:20:18 info: Warmtepomp niet aanwezig of enabled - warmtepomp wordt niet ingepland
2025-06-20 15:20:18 info: Strategie: minimale kosten
2025-06-20 15:20:18 info: Het programma heeft een optimale oplossing gevonden.
2025-06-20 15:20:18 info: Niet geoptimaliseerd, kosten met day ahead tarieven: 2.27  
2025-06-20 15:20:18 info: Geoptimaliseerd, kosten met day ahead tarieven: 2.24  
2025-06-20 15:20:18 info: Levering: 16.95  (kWh)
2025-06-20 15:20:18 info: Berekende prognoses: 
   uur  bat_in  bat_out   cons   prod   base   boil     wp     ev  pv_ac   cost  profit  b_tem   mach
  0.00    0.00     0.00   0.19   0.00   0.29   0.00   0.00   0.00   0.00   0.06   -0.00  20.00   0.00
  1.00    0.00     0.00   0.30   0.00   0.30   0.00   0.00   0.00   0.00   0.08   -0.00  20.00   0.00
  2.00    0.00     0.00   0.28   0.00   0.28   0.00   0.00   0.00   0.00   0.08   -0.00  20.00   0.00
  3.00    0.00     0.00   0.27   0.00   0.27   0.00   0.00   0.00   0.00   0.07   -0.00  20.00   0.00
  4.00    0.00     0.00   0.27   0.00   0.27   0.00   0.00   0.00   0.00   0.08   -0.00  20.00   0.00
  5.00    0.00     0.00   0.22   0.00   0.27   0.00   0.00   0.00   0.05   0.06   -0.00  20.00   0.00
  6.00    0.00     0.00   0.00   0.71   0.22   0.00   0.00   0.00   0.94   0.00   -0.19  20.00   0.00
  7.00    0.00     0.00   0.00   0.14   1.01   0.00   0.00   0.00   1.15   0.00   -0.04  20.00   0.00
  8.00    0.00     0.00   0.00   0.07   1.13   0.00   0.00   0.00   1.20   0.00   -0.02  20.00   0.00
  9.00    0.00     0.00   0.45   0.00   1.63   0.00   0.00   0.00   1.19   0.08   -0.00  20.00   0.00
 10.00    0.00     0.00   0.00   1.21   0.01   0.00   0.00   0.00   1.22   0.00   -0.18  20.00   0.00
 11.00    0.00     0.00   0.99   0.00   2.31   0.00   0.00   0.00   1.32   0.14   -0.00  20.00   0.00
 12.00    0.00     0.00   2.82   0.00   4.31   0.00   0.00   0.00   1.50   0.37   -0.00  20.00   0.00
 13.00    0.00     0.00   2.85   0.00   4.60   0.00   0.00   0.00   1.75   0.33   -0.00  20.00   0.00
 14.00    0.00     0.00   0.00   0.53   1.52   0.00   0.00   0.00   2.05   0.00   -0.06  20.00   0.00
 15.00    0.00     0.00   0.00   1.29   1.06   0.00   0.00   0.00   2.35   0.00   -0.19  20.00   0.00
 16.00    0.00     0.00   0.00   1.33   1.25   0.00   0.00   0.00   2.58   0.00   -0.20  20.00   0.00
 17.00    0.00     0.00   0.00   1.83   0.85   0.00   0.00   0.00   2.69   0.00   -0.40  20.00   0.00
 18.00    0.00     0.00   0.00   1.44   1.10   0.00   0.00   0.00   2.54   0.00   -0.39  20.00   0.00
 19.00    0.00     0.00   0.00   0.68   1.43   0.00   0.00   0.00   2.11   0.00   -0.21  20.00   0.00
 20.00    0.00     0.00   2.04   0.00   3.26   0.00   0.00   0.00   1.22   0.69   -0.00  20.00   0.00
 21.00    0.00     0.00   2.80   0.00   3.09   0.00   0.00   0.00   0.30   0.97   -0.00  20.00   0.00
 22.00    0.00     0.00   2.66   0.00   2.66   0.00   0.00   0.00   0.00   0.85   -0.00  20.00   0.00
 23.00    0.00     0.00   0.84   0.00   0.84   0.00   0.00   0.00   0.00   0.25   -0.00  20.00   0.00
Totaal    0.00     0.00  16.95   9.24  33.96   0.00   0.00   0.00  26.16   4.10   -1.87          0.00
2025-06-20 15:20:18 info: Winst: € 0.03
2025-06-20 15:20:18 info: Doorzetten van alle settings naar HA
2025-06-20 15:20:18 info: Apparaat: wasmachine
2025-06-20 15:20:18 info: Programma: Kleur 40 graden
2025-06-20 15:20:18 info: Niet ingepland

WP: DeWarmte PompAO 6.4Kw Hybrid, CV Intergas, Thermostaat Netatmo, 70m2 vvw, PV: 34x 325wp solaredge omvormer en optimizers,Wan ip adres weten? https://mijnips.eu


Acties:
  • 0 Henk 'm!

  • KC27
  • Registratie: December 2009
  • Niet online
diamanten schreef op vrijdag 20 juni 2025 @ 14:10:
Ik zit nog even op de oude versie (versie 5), want wilde eerst alles goed hebben draaien. Ik zie ook wat vreemds mbt de baseloads: waarom is die vanaf 05:00 groter dan >38 kWh? Nb. de grip reports kloppen wel. [Afbeelding] [Afbeelding]
Mijn config is:
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
{
  "homeassistant": { },
  "database ha": {
    "engine": "sqlite",
    "database": "home-assistant_v2.db",
    "db_path": "/homeassistant"
  },  "notifications": {
    "notification entity": "input_text.dao_notificatie",
    "opstarten": "True",
    "berekening": "True",
    "last activity entity": "input_datetime.dao_laatste_activiteit"
  },
  "database da": {
    "engine": "sqlite",
    "db_path": "../data"
  },
  "meteoserver-key": "!secret meteoserver-key",
  "prices": {
    "source day ahead": "entsoe",
    "entsoe-api-key": "!secret entsoe-api-key",
    "regular high": 0.24,
    "regular low": 0.23,
    "switch to low": 23,
    "energy taxes delivery": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.10880,
      "2025-01-01": 0.10154
    },
    "energy taxes redelivery": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.10880,
      "2025-01-01": 0.10154
    },
    "cost supplier delivery": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496
    },
    "cost supplier redelivery": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496
    },
    "vat": {
      "2022-01-01": 21,
      "2022-07-01": 9,
      "2023-01-01": 21
    },
    "last invoice": "2025-04-01",
    "tax refund": "True"
  },
  "logging level" : "info",
  "use_calc_baseload": "False",
  "baseload calc periode": 56,
  "baseload": [
    0.14,
    0.38,
    0.26,
    0.42,
    0.15,
    0.12,
    0.13,
    0.15,
    0.23,
    0.26,
    0.31,
    0.32,
    0.31,
    0.23,
    0.26,
    0.21,
    0.21,
    0.54,
    0.26,
    0.26,
    0.22,
    0.19,
    0.18,
    0.16
  ],
  "graphical backend": "",
  "graphics": {
    "style": "Solarize_Light2",
    "show" : "true",
    "prices delivery": "True",
    "prices redelivery": "True",
    "average delivery": "True"
  },
  "strategy": "minimize cost",
  "notifications": {
    "notification entity": "input_text.dao_notificatie",
    "opstarten": "True",
    "berekening": "True",
    "last activity entity": "input_datetime.dao_laatste_activiteit"
  },
  "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": "EvaPower",
      "entity actual level": "sensor.gesimuleerde_evapower_soc_dao",
      "capacity": 3.072,
      "upper limit": 100,
      "lower limit": 10,
      "optimal lower level": 10,
      "entity set power feedin": "input_number.dao_feedin_grid",
      "entity calculated soc": "input_number.dao_entity_calculated_soc",
      "entity min soc end opt": "input_number.dao_entity_min_soc_end_eva",
      "cycle cost": 0.035,
      "dc_to_bat efficiency": 0.85,
      "bat_to_dc efficiency": 0.85,
      "minimum power": 120,
      "charge stages": [
        { "power": 0.0, "efficiency": 1 },
        { "power": 100, "efficiency": 0.5 },
        { "power": 800, "efficiency": 0.89 },
        { "power": 1250, "efficiency": 0.85 },
        { "power": 2000, "efficiency": 0.86 }
      ],
      "discharge stages": [
        { "power": 0.0, "efficiency": 1 },
        { "power": 100, "efficiency": 0.5 },
        { "power": 800, "efficiency": 0.92 },
        { "power": 400, "efficiency": 0.85 },
        { "power": 600, "efficiency": 0.88 }
      ],
      "solar": []
    },
    {
      "name": "Delta2Max",
      "entity actual level": "sensor.gesimuleerde_delta2max_soc",
      "capacity": 2.048,
      "upper limit": 100,
      "lower limit": 10,
      "optimal lower level": 10,
      "minimum power": 200,
      "dc_to_bat efficiency": 0.85,
      "bat_to_dc efficiency": 0.85,
      "cycle cost": 0.035,
      "entity set power feedin": "input_number.dao_feedin_grid_d2max",
      "entity calculated soc": "input_number.dao_entity_calculated_soc_d2max",
      "entity min soc end opt": "input_number.dao_entity_min_soc_end",
      "solar": [],
      "charge stages": [
        {
          "power": 0,
          "efficiency": 1
        },
        {
          "power": 100,
          "efficiency": 0.85
        },
        {
          "power": 200,
          "efficiency": 0.88
        },
        {
          "power": 300,
          "efficiency": 0.90
        },
        {
          "power": 400,
          "efficiency": 0.91
        },
        {
          "power": 1200,
          "efficiency": 0.91
        },
        {
          "power": 1800,
          "efficiency": 0.90
        }
      ],
      "discharge stages": [
        {
          "power": 0,
          "efficiency": 1
        },
        {
          "power": 100,
          "efficiency": 0.92
        },
        {
          "power": 200,
          "efficiency": 0.93
        },
        {
          "power": 300,
          "efficiency": 0.93
        },
        {
          "power": 400,
          "efficiency": 0.92
        },
        {
          "power": 500,
          "efficiency": 0.90
        },
        {
          "power": 600,
          "efficiency": 0.88
        }
      ]
    }
  ],

  "solar": [ 
    {
      "name": "Enphase",
      "tilt": 30,
      "orientation": 200,
      "capacity": 11.680,
      "yield": 0.007,
      "entity pv switch": "input_boolean.solar_pv_on_off",
      "sensor history": "sensor.envoy_122126050988_lifetime_energy_production"
    }
  ],
  "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": 1.00 },
        { "ampere": 16, "efficiency": 0.95 }
      ],
      "entity actual level": "sensor.niro_ev_battery_level",
      "entity plugged in": "input_boolean.kia_ingeplugd_dao",
      "entity stop charging": "input_datetime.stop_laden_ev",
      "charge scheduler": {
        "entity set level": "number.ev_smart_charging_minimum_ev_soc",
        "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"
    }
  ],

  "machines" : [ ],
  "tibber": {
    "api_token": "!secret tibber_api_token"
  },
  "report": {
    "entities grid consumption": [
      "sensor.energy_consumed_tariff_1",
      "sensor.energy_consumed_tariff_2"
    ],
    "entities grid production": [
      "sensor.energy_produced_tariff_1",
      "sensor.energy_produced_tariff_2"
    ],
    "entities solar production ac": [
      "sensor.envoy_122126050988_today_s_energy_production"
    ],
    "entities solar production dc": [],
    "entities ev consumption" : [],
    "entities wp consumption" : ["sensor.warmtepomp_today_s_consumption"],
    "entities boiler consumption": [],
    "entities battery consumption": ["sensor.totaal_batterij_consumption_dao"],
    "entities battery production": ["sensor.totaal_batterij_production_dao"]
  },
  "scheduler": {
    "active": "True",
    "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",
    "2359": "clean_data"
  }
}
Zo te zien is je pv_ac een factor duizend te hoog en wordt die in HA geregistreerd in Wh ipv kWh.
HA is zo slim om dat zelf te corrigeren in de rapportages in het energy Dashboard, maar DAO moet nog veel bijleren en is nog niet zo slim 🤔.
Je kunt een template sensor maken in HA, bijvoorbeeld
code:
1
2
3
4
5
6
7
8
sensor:
  - platform: template
    sensors:
      solaredge_energ_kWh:
        friendly_name: '"solar energy in kWh'
        unit_of_measurement: 'kWh'
        value_template: "{{ states('sensor.solaredge_energy') | float / 1000 }}"
        icon_template: mdi:solar-power

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


Acties:
  • 0 Henk 'm!

  • KC27
  • Registratie: December 2009
  • Niet online
f.welvering schreef op vrijdag 20 juni 2025 @ 15:22:
Ik ben weer even gaan stoeien met DAO en heb mijn wasmachine toegevoegd als machine.
Ik krijg netjes een optimalisatie grafiek, maar de wasmachine wordt niet ingepland, ik begrijp niet zo goed waarom niet.

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
{
  "homeassistant": {
    "host": "192.168.60.3",
    "ip port": 8123,
    "token": "!secret ha_api_token"
  },
  "database ha": {
    "engine": "mysql",
    "server": "192.168.60.3",
    "port": 3306,
    "database": "homeassistant",
    "username": "dao",
    "password": "!secret db_da_password"
  },
  "database da": {
    "engine": "mysql",
    "server": "192.168.60.3",
    "port": 3306,
    "database": "dao",
    "username": "dao",
    "password": "!secret db_da_password"
  },
  "meteoserver-key": "!secret meteoserver-key",
  "prices": {
    "source day ahead": "nordpool",
    "regular high": 0.50,
    "regular low": 0.40,
    "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.020496
    },
    "cost supplier production": {
      "2024-08-01": 0.020496
    },
    "vat": {
      "2023-01-01": 21
    },
    "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": "2024-09-01",
    "tax refund": "True",
    "prices consumption": "True",
    "prices production": "False",
    "prices spot": "False",
    "average consumption": "False"
  },
  "logging level" : "info",
  "use_calc_baseload": "True",
  "baseload calc periode": 56,
  "baseload": [
    0.14,
    0.38,
    0.26,
    0.42,
    0.15,
    0.12,
    0.13,
    0.15,
    0.23,
    0.26,
    0.31,
    0.32,
    0.31,
    0.23,
    0.26,
    0.21,
    0.21,
    0.54,
    0.26,
    0.26,
    0.22,
    0.19,
    0.18,
    0.16
  ],
  "graphical backend": "",
  "graphics": {
    "style": "Solarize_Light2",
    "show" : "true",
    "prices consumption": "True",
    "prices production": "False",
    "prices spot": "false",
    "average consumption": "false"
  },
  "strategy": "minimize cost",
  "notifications": {
  },
  "grid": {
    "max_power": 17
  },
  "history": {
    "save days": 7
  },
  "dashboard": {
    "port": 5000
  },
  "boiler": {
    "boiler present": "False"
  },
  "heating": {
    "heater present": "False"
  },
  "battery": [ ],
  "solar": [
    { "name" : "main",
      "tilt": 50,
      "orientation": 160,
      "capacity": 9.0,
      "yield": 0.0180625,
      "entity pv switch": "input_boolean.pv_main_aan_uit"
  }],
  "electric vehicle": [ ],
  "machines" : [
      { "name": "wasmachine",
        "programs":[
          {"name": "Uit",
           "power": []},
          {"name": "Kleur 40 graden",
           "power": [2000, 1500, 500, 400, 200, 300]
           },
          {"name": "Donker 40 graden",
           "power": [1500, 1000, 500, 400, 200, 300,200, 300]
           }
        ],
        "entity start window": "input_datetime.start_window_wasmachine",
        "entity end window": "input_datetime.eind_window_wasmachine",
        "entity selected program": "input_select.wasmachine_programma",
        "entity calculated start": "input_datetime.berekende_start_wasmachine",
        "entity calculated end": "input_datetime.berekende_stop_wasmachine"
      }
  ],
  "tibber": {
    "api_token": "!secret tibber_api_token"
  },
  "report": {
    "entities grid consumption": [
      "sensor.p1_meter_energie_import_tarief_1",
      "sensor.p1_meter_energie_import_tarief_2"
    ],
    "entities grid production": [
      "sensor.p1_meter_energie_export_tarief_1",
      "sensor.p1_meter_energie_export_tarief_2"
    ],
    "entities solar production ac": [
      "sensor.solaredge_panel_production_daily"
    ],
    "entities solar production dc": [],
    "entities ev consumption" : [],
    "entities wp consumption" : [],
    "entities boiler consumption": [],
    "entities battery consumption": [],
    "entities battery production": []
  },
  "scheduler": {
    "active": "true",
    "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",
    "2359": "clean_data"
  }
}


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
2025-06-20 15:20:17 info: Day Ahead Optimalisering versie: 2025.6.1
2025-06-20 15:20:17 info: Day Ahead Optimalisering gestart op: 20-06-2025 15:20:17
2025-06-20 15:20:17 info: Day Ahead Optimalisatie gestart: 20-06-2025 15:20:17 taak: calc_optimum
2025-06-20 15:20:17 info: Debug = False
2025-06-20 15:20:17 info: Zelf berekende baseload
2025-06-20 15:20:17 info: Start waarden: 
    uur                tijd       p_l       p_t   base     pv_ac  pv_dc
0     0 2025-06-21 00:00:00  0.291073  0.291073  0.290  0.000000      0
1     1 2025-06-21 01:00:00  0.281344  0.281344  0.296  0.000000      0
2     2 2025-06-21 02:00:00  0.278525  0.278525  0.278  0.000000      0
3     3 2025-06-21 03:00:00  0.276287  0.276287  0.266  0.000000      0
4     4 2025-06-21 04:00:00  0.280764  0.280764  0.268  0.000000      0
5     5 2025-06-21 05:00:00  0.274641  0.274641  0.274  0.054711      0
6     6 2025-06-21 06:00:00  0.269571  0.269571  0.223  0.935762      0
7     7 2025-06-21 07:00:00  0.257459  0.257459  1.009  1.152426      0
8     8 2025-06-21 08:00:00  0.239539  0.239539  1.128  1.197923      0
9     9 2025-06-21 09:00:00  0.175978  0.175978  1.632  1.186866      0
10   10 2025-06-21 10:00:00  0.148256  0.148256  0.007  1.217669      0
11   11 2025-06-21 11:00:00  0.145231  0.145231  2.312  1.323333      0
12   12 2025-06-21 12:00:00  0.132660  0.132660  4.314  1.498583      0
13   13 2025-06-21 13:00:00  0.116131  0.116131  4.602  1.751323      0
14   14 2025-06-21 14:00:00  0.114050  0.114050  1.517  2.051714      0
15   15 2025-06-21 15:00:00  0.144034  0.144034  1.061  2.350290      0
16   16 2025-06-21 16:00:00  0.147772  0.147772  1.253  2.579816      0
17   17 2025-06-21 17:00:00  0.220506  0.220506  0.853  2.687413      0
18   18 2025-06-21 18:00:00  0.269740  0.269740  1.102  2.541722      0
19   19 2025-06-21 19:00:00  0.302423  0.302423  1.429  2.109260      0
20   20 2025-06-21 20:00:00  0.337319  0.337319  3.260  1.224595      0
21   21 2025-06-21 21:00:00  0.348342  0.348342  3.092  0.295823      0
22   22 2025-06-21 22:00:00  0.318322  0.318322  2.656  0.000000      0
23   23 2025-06-21 23:00:00  0.292041  0.292041  0.840  0.000000      0
2025-06-20 15:20:18 info: Boiler niet aanwezig of staat uit, boiler wordt niet ingepland
2025-06-20 15:20:18 info: Warmtepomp niet aanwezig of enabled - warmtepomp wordt niet ingepland
2025-06-20 15:20:18 info: Strategie: minimale kosten
2025-06-20 15:20:18 info: Het programma heeft een optimale oplossing gevonden.
2025-06-20 15:20:18 info: Niet geoptimaliseerd, kosten met day ahead tarieven: 2.27  
2025-06-20 15:20:18 info: Geoptimaliseerd, kosten met day ahead tarieven: 2.24  
2025-06-20 15:20:18 info: Levering: 16.95  (kWh)
2025-06-20 15:20:18 info: Berekende prognoses: 
   uur  bat_in  bat_out   cons   prod   base   boil     wp     ev  pv_ac   cost  profit  b_tem   mach
  0.00    0.00     0.00   0.19   0.00   0.29   0.00   0.00   0.00   0.00   0.06   -0.00  20.00   0.00
  1.00    0.00     0.00   0.30   0.00   0.30   0.00   0.00   0.00   0.00   0.08   -0.00  20.00   0.00
  2.00    0.00     0.00   0.28   0.00   0.28   0.00   0.00   0.00   0.00   0.08   -0.00  20.00   0.00
  3.00    0.00     0.00   0.27   0.00   0.27   0.00   0.00   0.00   0.00   0.07   -0.00  20.00   0.00
  4.00    0.00     0.00   0.27   0.00   0.27   0.00   0.00   0.00   0.00   0.08   -0.00  20.00   0.00
  5.00    0.00     0.00   0.22   0.00   0.27   0.00   0.00   0.00   0.05   0.06   -0.00  20.00   0.00
  6.00    0.00     0.00   0.00   0.71   0.22   0.00   0.00   0.00   0.94   0.00   -0.19  20.00   0.00
  7.00    0.00     0.00   0.00   0.14   1.01   0.00   0.00   0.00   1.15   0.00   -0.04  20.00   0.00
  8.00    0.00     0.00   0.00   0.07   1.13   0.00   0.00   0.00   1.20   0.00   -0.02  20.00   0.00
  9.00    0.00     0.00   0.45   0.00   1.63   0.00   0.00   0.00   1.19   0.08   -0.00  20.00   0.00
 10.00    0.00     0.00   0.00   1.21   0.01   0.00   0.00   0.00   1.22   0.00   -0.18  20.00   0.00
 11.00    0.00     0.00   0.99   0.00   2.31   0.00   0.00   0.00   1.32   0.14   -0.00  20.00   0.00
 12.00    0.00     0.00   2.82   0.00   4.31   0.00   0.00   0.00   1.50   0.37   -0.00  20.00   0.00
 13.00    0.00     0.00   2.85   0.00   4.60   0.00   0.00   0.00   1.75   0.33   -0.00  20.00   0.00
 14.00    0.00     0.00   0.00   0.53   1.52   0.00   0.00   0.00   2.05   0.00   -0.06  20.00   0.00
 15.00    0.00     0.00   0.00   1.29   1.06   0.00   0.00   0.00   2.35   0.00   -0.19  20.00   0.00
 16.00    0.00     0.00   0.00   1.33   1.25   0.00   0.00   0.00   2.58   0.00   -0.20  20.00   0.00
 17.00    0.00     0.00   0.00   1.83   0.85   0.00   0.00   0.00   2.69   0.00   -0.40  20.00   0.00
 18.00    0.00     0.00   0.00   1.44   1.10   0.00   0.00   0.00   2.54   0.00   -0.39  20.00   0.00
 19.00    0.00     0.00   0.00   0.68   1.43   0.00   0.00   0.00   2.11   0.00   -0.21  20.00   0.00
 20.00    0.00     0.00   2.04   0.00   3.26   0.00   0.00   0.00   1.22   0.69   -0.00  20.00   0.00
 21.00    0.00     0.00   2.80   0.00   3.09   0.00   0.00   0.00   0.30   0.97   -0.00  20.00   0.00
 22.00    0.00     0.00   2.66   0.00   2.66   0.00   0.00   0.00   0.00   0.85   -0.00  20.00   0.00
 23.00    0.00     0.00   0.84   0.00   0.84   0.00   0.00   0.00   0.00   0.25   -0.00  20.00   0.00
Totaal    0.00     0.00  16.95   9.24  33.96   0.00   0.00   0.00  26.16   4.10   -1.87          0.00
2025-06-20 15:20:18 info: Winst: € 0.03
2025-06-20 15:20:18 info: Doorzetten van alle settings naar HA
2025-06-20 15:20:18 info: Apparaat: wasmachine
2025-06-20 15:20:18 info: Programma: Kleur 40 graden
2025-06-20 15:20:18 info: Niet ingepland
Wat staat er in de entities die je hebt geconfigureerd:
code:
1
2
3
4
5
        "entity start window": "input_datetime.start_window_wasmachine",
        "entity end window": "input_datetime.eind_window_wasmachine",
        "entity selected program": "input_select.wasmachine_programma",
        "entity calculated start": "input_datetime.berekende_start_wasmachine",
        "entity calculated end": "input_datetime.berekende_stop_wasmachine"

Misschien kun je er een screenshot van maken, zoals deze(?):
Afbeeldingslocatie: https://tweakers.net/i/KWsuAVVgduMhZIIiiswf6fFfAFU=/fit-in/4000x4000/filters:no_upscale():strip_exif()/f/image/Afcrv9NOI876OXwUnDqIwKHh.png?f=user_large

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


Acties:
  • +1 Henk 'm!

  • diamanten
  • Registratie: Juli 2024
  • Laatst online: 18:43
KC27 schreef op vrijdag 20 juni 2025 @ 16:12:
[...]

Zo te zien is je pv_ac een factor duizend te hoog en wordt die in HA geregistreerd in Wh ipv kWh.
HA is zo slim om dat zelf te corrigeren in de rapportages in het energy Dashboard, maar DAO moet nog veel bijleren en is nog niet zo slim 🤔.
Je kunt een template sensor maken in HA, bijvoorbeeld
code:
1
2
3
4
5
6
7
8
sensor:
  - platform: template
    sensors:
      solaredge_energ_kWh:
        friendly_name: '"solar energy in kWh'
        unit_of_measurement: 'kWh'
        value_template: "{{ states('sensor.solaredge_energy') | float / 1000 }}"
        icon_template: mdi:solar-power
Dank! Dat was het idd. :) Afbeeldingslocatie: https://tweakers.net/i/-sZvTMkdxJCkS8vOxMtk_ZE8Hps=/800x/filters:strip_icc():strip_exif()/f/image/7fXfxt7Bbh0HrsQboHTD7tBD.jpg?f=fotoalbum_large

Acties:
  • 0 Henk 'm!

  • diamanten
  • Registratie: Juli 2024
  • Laatst online: 18:43
Verder (durf te vragen ;-)): is er een reden waarom morgen de Delta2Max accu wel tot 100% wordt geladen en de Evapower accu niet?
Afbeeldingslocatie: https://tweakers.net/i/dte1I7bGDyHeW9qUCdB9mXEUtsQ=/800x/filters:strip_icc():strip_exif()/f/image/8U3iAsPdPfxgQaW1EkGJn8kf.jpg?f=fotoalbum_large

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
  "battery": [
    {
      "name": "EvaPower",
      "entity actual level": "sensor.gesimuleerde_evapower_soc_dao",
      "capacity": 3.072,
      "upper limit": 100,
      "lower limit": 10,
      "optimal lower level": 10,
      "entity set power feedin": "input_number.dao_feedin_grid",
      "entity calculated soc": "input_number.dao_entity_calculated_soc",
      "entity min soc end opt": "input_number.dao_entity_min_soc_end_eva",
      "cycle cost": 0.035,
      "dc_to_bat efficiency": 0.85,
      "bat_to_dc efficiency": 0.85,
      "minimum power": 120,
      "charge stages": [
        { "power": 0.0, "efficiency": 1 },
        { "power": 100, "efficiency": 0.5 },
        { "power": 800, "efficiency": 0.89 },
        { "power": 1250, "efficiency": 0.85 },
        { "power": 2000, "efficiency": 0.86 }
      ],
      "discharge stages": [
        { "power": 0.0, "efficiency": 1 },
        { "power": 100, "efficiency": 0.5 },
        { "power": 800, "efficiency": 0.92 },
        { "power": 400, "efficiency": 0.85 },
        { "power": 600, "efficiency": 0.88 }
      ],
      "solar": []
    },
    {
      "name": "Delta2Max",
      "entity actual level": "sensor.gesimuleerde_delta2max_soc",
      "capacity": 2.048,
      "upper limit": 100,
      "lower limit": 10,
      "optimal lower level": 10,
      "minimum power": 200,
      "dc_to_bat efficiency": 0.85,
      "bat_to_dc efficiency": 0.85,
      "cycle cost": 0.035,
      "entity set power feedin": "input_number.dao_feedin_grid_d2max",
      "entity calculated soc": "input_number.dao_entity_calculated_soc_d2max",
      "entity min soc end opt": "input_number.dao_entity_min_soc_end",
      "solar": [],
      "charge stages": [
        {
          "power": 0,
          "efficiency": 1
        },
        {
          "power": 100,
          "efficiency": 0.85
        },
        {
          "power": 200,
          "efficiency": 0.88
        },
        {
          "power": 300,
          "efficiency": 0.90
        },
        {
          "power": 400,
          "efficiency": 0.91
        },
        {
          "power": 1200,
          "efficiency": 0.91
        },
        {
          "power": 1800,
          "efficiency": 0.90
        }
      ],
      "discharge stages": [
        {
          "power": 0,
          "efficiency": 1
        },
        {
          "power": 100,
          "efficiency": 0.92
        },
        {
          "power": 200,
          "efficiency": 0.93
        },
        {
          "power": 300,
          "efficiency": 0.93
        },
        {
          "power": 400,
          "efficiency": 0.92
        },
        {
          "power": 500,
          "efficiency": 0.90
        },
        {
          "power": 600,
          "efficiency": 0.88
        }
      ]
    }
  ],
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
2025-06-20 18:20:20 info: Day Ahead Optimalisering versie: 2025.5.0
2025-06-20 18:20:20 info: Day Ahead Optimalisering gestart op: 20-06-2025 18:20:20
2025-06-20 18:20:20 info: Day Ahead Optimalisatie gestart: 20-06-2025 18:20:20 taak: calc_optimum_met_debug
2025-06-20 18:20:21 info: Debug = True
2025-06-20 18:20:21 info: Baseload uit instellingen
2025-06-20 18:20:21 info: Start waarden: 
    uur                tijd      p_l      p_t  base     pv_ac  pv_dc
0    18 2025-06-20 18:00:00  0.28225  0.28225  0.26  0.455437      0
1    19 2025-06-20 19:00:00  0.31150  0.31150  0.26  0.445756      0
2    20 2025-06-20 20:00:00  0.38335  0.38335  0.22  0.190385      0
3    21 2025-06-20 21:00:00  0.36381  0.36381  0.19  0.065479      0
4    22 2025-06-20 22:00:00  0.31349  0.31349  0.18  0.000000      0
5    23 2025-06-20 23:00:00  0.29453  0.29453  0.16  0.000000      0
6     0 2025-06-21 00:00:00  0.29107  0.29107  0.14  0.000000      0
7     1 2025-06-21 01:00:00  0.28134  0.28134  0.38  0.000000      0
8     2 2025-06-21 02:00:00  0.27853  0.27853  0.26  0.000000      0
9     3 2025-06-21 03:00:00  0.27629  0.27629  0.42  0.000000      0
10    4 2025-06-21 04:00:00  0.28076  0.28076  0.15  0.000000      0
11    5 2025-06-21 05:00:00  0.27464  0.27464  0.12  0.019709      0
12    6 2025-06-21 06:00:00  0.26957  0.26957  0.13  0.377679      0
13    7 2025-06-21 07:00:00  0.25746  0.25746  0.15  0.935443      0
14    8 2025-06-21 08:00:00  0.23954  0.23954  0.23  1.303114      0
15    9 2025-06-21 09:00:00  0.17598  0.17598  0.26  1.481980      0
16   10 2025-06-21 10:00:00  0.14826  0.14826  0.31  1.588647      0
17   11 2025-06-21 11:00:00  0.14523  0.14523  0.32  1.634771      0
18   12 2025-06-21 12:00:00  0.13266  0.13266  0.31  1.615815      0
19   13 2025-06-21 13:00:00  0.11613  0.11613  0.23  1.542076      0
20   14 2025-06-21 14:00:00  0.11405  0.11405  0.26  1.423206      0
21   15 2025-06-21 15:00:00  0.14403  0.14403  0.21  1.275006      0
22   16 2025-06-21 16:00:00  0.14777  0.14777  0.21  1.100370      0
23   17 2025-06-21 17:00:00  0.22051  0.22051  0.54  0.912527      0
24   18 2025-06-21 18:00:00  0.26974  0.26974  0.26  0.711078      0
25   19 2025-06-21 19:00:00  0.30242  0.30242  0.26  0.504124      0
26   20 2025-06-21 20:00:00  0.33732  0.33732  0.22  0.279139      0
27   21 2025-06-21 21:00:00  0.34834  0.34834  0.19  0.085420      0
28   22 2025-06-21 22:00:00  0.31832  0.31832  0.18  0.000000      0
29   23 2025-06-21 23:00:00  0.29204  0.29204  0.16  0.000000      0
2025-06-20 18:20:37 info: Verbruik dit contractjaar: 645.898 kWh
2025-06-20 18:20:37 info: Productie dit contractjaar: 2739.942 kWh
2025-06-20 18:20:37 info: All taxes refund (alles wordt gesaldeerd)
2025-06-20 18:20:39 info: No reduced hours applied for EvaPower
2025-06-20 18:20:39 info: Startwaarde SoC EvaPower: 45.0%
2025-06-20 18:20:39 info: No reduced hours applied for Delta2Max
2025-06-20 18:20:39 info: Startwaarde SoC Delta2Max: 78.0%
2025-06-20 18:20:39 info: Boiler niet aanwezig of staat uit, boiler wordt niet ingepland
2025-06-20 18:20:39 info: Instellingen voor laden van EV: Kia Niro EV
2025-06-20 18:20:39 info:  Ampere  Effic. Grid kW Accu kW
2025-06-20 18:20:39 info:    0.00    1.00    0.00    0.00
2025-06-20 18:20:39 info:   16.00    0.95   11.04   10.49
2025-06-20 18:20:39 info: Capaciteit accu: 55 kWh
2025-06-20 18:20:39 info: Maximaal laadvermogen: 11.04 kW
2025-06-20 18:20:39 info: Klaar met laden op: 21-06-2025 18:50:00
2025-06-20 18:20:39 info: Huidig laadniveau: 98.0 %
2025-06-20 18:20:39 info: Gewenst laadniveau:100.0 %
2025-06-20 18:20:39 info: Marge voor het laden: 2 %
2025-06-20 18:20:39 info: Locatie: home
2025-06-20 18:20:39 info: Ingeplugged:True
2025-06-20 18:20:39 info: Benodigde energie: 1.1 kWh
2025-06-20 18:20:39 info: Tijd nodig om te laden: 0.10 uur
2025-06-20 18:20:40 info: Afgerond naar hele uren: 1
2025-06-20 18:20:40 info: Stand laden schakelaar: off
2025-06-20 18:20:40 info: Stand aantal ampere laden: 0.0 A
2025-06-20 18:20:40 info: Opladen wordt niet ingepland, omdat werkelijk niveau (98.0%) hoger is of gelijk aan gewenst niveau (100.0% minus de marge 2%).
2025-06-20 18:20:40 info: Warmtepomp niet aanwezig of enabled - warmtepomp wordt niet ingepland
2025-06-20 18:20:41 info: Strategie: minimale kosten
2025-06-20 18:20:41 info: Het programma heeft een optimale oplossing gevonden.
2025-06-20 18:20:41 info: Geen saldeer correctie
2025-06-20 18:20:41 info: Niet geoptimaliseerd, kosten met reguliere tarieven: -4.32 
2025-06-20 18:20:41 info: Niet geoptimaliseerd, kosten met day ahead tarieven: -1.57 
2025-06-20 18:20:41 info: Geoptimaliseerd, kosten met day ahead tarieven: -1.88 
2025-06-20 18:20:41 info: Levering: 2.59   (kWh)
2025-06-20 18:20:41 info: In- en uitgaande energie per uur batterij EvaPower
   uur   ac->    eff   ->dc pv->dc   dc->    eff  ->bat  o_eff    SoC
          kWh      %    kWh    kWh    kWh      %    kWh      %      %
    18   0.00     --   0.00   0.00   0.00     --   0.00     --  45.00
    19   0.00     --   0.00   0.00   0.00     --   0.00     --  45.00
    20  -0.40  92.00  -0.43   0.00  -0.43  85.00  -0.51  78.20  28.35
    21  -0.40  92.00  -0.43   0.00  -0.43  85.00  -0.51  78.20  11.70
    22   0.00     --   0.00   0.00   0.00     --   0.00     --  11.70
    23   0.00     --   0.00   0.00   0.00     --   0.00     --  11.70
     0   0.00     --   0.00   0.00   0.00     --   0.00     --  11.70
     1   0.00     --   0.00   0.00   0.00     --   0.00     --  11.70
     2   0.00     --   0.00   0.00   0.00     --   0.00     --  11.70
     3   0.00     --   0.00   0.00   0.00     --   0.00     --  11.70
     4   0.00     --   0.00   0.00   0.00     --   0.00     --  11.70
     5   0.00     --   0.00   0.00   0.00     --   0.00     --  11.70
     6   0.00     --   0.00   0.00   0.00     --   0.00     --  11.70
     7   0.00     --   0.00   0.00   0.00     --   0.00     --  11.70
     8   0.00     --   0.00   0.00   0.00     --   0.00     --  11.70
     9   0.00     --   0.00   0.00   0.00     --   0.00     --  11.70
    10   0.00     --   0.00   0.00   0.00     --   0.00     --  11.70
    11   0.00     --   0.00   0.00   0.00     --   0.00     --  11.70
    12   0.40  91.00   0.36   0.00   0.36  85.00   0.31  77.35  21.77
    13   0.40  91.00   0.36   0.00   0.36  85.00   0.31  77.35  31.84
    14   0.40  91.00   0.36   0.00   0.36  85.00   0.31  77.35  41.91
    15   0.00     --   0.00   0.00   0.00     --   0.00     --  41.91
    16   0.00     --   0.00   0.00   0.00     --   0.00     --  41.91
    17   0.00     --   0.00   0.00   0.00     --   0.00     --  41.91
    18   0.00     --   0.00   0.00   0.00     --   0.00     --  41.91
    19   0.00     --   0.00   0.00   0.00     --   0.00     --  41.91
    20  -0.37  92.00  -0.40   0.00  -0.40  85.00  -0.47  78.20  26.65
    21  -0.40  92.00  -0.43   0.00  -0.43  85.00  -0.51  78.20  10.00
    22   0.00     --   0.00   0.00   0.00     --   0.00     --  10.00
    23   0.00     --   0.00   0.00   0.00     --   0.00     --  10.00
Totaal  -0.37     --  -0.61   0.00  -0.61     --  -1.08     --       
2025-06-20 18:20:41 info: In- en uitgaande energie per uur batterij Delta2Max
   uur   ac->    eff   ->dc pv->dc   dc->    eff  ->bat  o_eff    SoC
          kWh      %    kWh    kWh    kWh      %    kWh      %      %
    18   0.00     --   0.00   0.00   0.00     --   0.00     --  78.00
    19   0.00     --   0.00   0.00   0.00     --   0.00     --  78.00
    20  -0.50  90.00  -0.56   0.00  -0.56  85.00  -0.65  76.50  46.09
    21  -0.50  90.00  -0.56   0.00  -0.56  85.00  -0.65  76.50  14.17
    22  -0.07  92.00  -0.07   0.00  -0.07  85.00  -0.09  78.20  10.00
    23   0.00     --   0.00   0.00   0.00     --   0.00     --  10.00
     0   0.00     --   0.00   0.00   0.00     --   0.00     --  10.00
     1   0.00     --   0.00   0.00   0.00     --   0.00     --  10.00
     2   0.00     --   0.00   0.00   0.00     --   0.00     --  10.00
     3   0.00     --   0.00   0.00   0.00     --   0.00     --  10.00
     4   0.00     --   0.00   0.00   0.00     --   0.00     --  10.00
     5   0.00     --   0.00   0.00   0.00     --   0.00     --  10.00
     6   0.00     --   0.00   0.00   0.00     --   0.00     --  10.00
     7   0.00     --   0.00   0.00   0.00     --   0.00     --  10.00
     8   0.00     --   0.00   0.00   0.00     --   0.00     --  10.00
     9   0.00     --   0.00   0.00   0.00     --   0.00     --  10.00
    10   0.00     --   0.00   0.00   0.00     --   0.00     --  10.00
    11   0.00     --   0.00   0.00   0.00     --   0.00     --  10.00
    12   0.00     --   0.00   0.00   0.00     --   0.00     --  10.00
    13   1.18  91.00   1.08   0.00   1.08  85.00   0.92  77.35  54.68
    14   1.20  91.00   1.09   0.00   1.09  85.00   0.93  77.35 100.00
    15   0.00     --   0.00   0.00   0.00     --   0.00     -- 100.00
    16   0.00     --   0.00   0.00   0.00     --   0.00     -- 100.00
    17   0.00     --   0.00   0.00   0.00     --   0.00     -- 100.00
    18   0.00     --   0.00   0.00   0.00     --   0.00     -- 100.00
    19  -0.13  93.00  -0.14   0.00  -0.14  85.00  -0.17  79.05  91.87
    20  -0.40  92.00  -0.43   0.00  -0.43  85.00  -0.51  78.20  66.89
    21  -0.50  90.00  -0.56   0.00  -0.56  85.00  -0.65  76.50  34.98
    22  -0.40  92.00  -0.43   0.00  -0.43  85.00  -0.51  78.20  10.00
    23   0.00     --   0.00   0.00   0.00     --   0.00     --  10.00
Totaal  -0.12     --  -0.58   0.00  -0.58     --  -1.39     --       
2025-06-20 18:20:41 info: Berekende prognoses zijn niet opgeslagen.
2025-06-20 18:20:41 info: Berekende prognoses: 
   uur  bat_in  bat_out   cons   prod   base   boil     wp     ev  pv_ac   cost  profit  b_tem
 18.00    0.00     0.00   0.00   0.28   0.26   0.00   0.00   0.00   0.46   0.00   -0.08  20.00
 19.00    0.00     0.00   0.00   0.19   0.26   0.00   0.00   0.00   0.45   0.00   -0.06  20.00
 20.00    0.00     0.90   0.00   0.87   0.22   0.00   0.00   0.00   0.19   0.00   -0.33  20.00
 21.00    0.00     0.90   0.00   0.78   0.19   0.00   0.00   0.00   0.07   0.00   -0.28  20.00
 22.00    0.00     0.07   0.11   0.00   0.18   0.00   0.00   0.00   0.00   0.04   -0.00  20.00
 23.00    0.00     0.00   0.16   0.00   0.16   0.00   0.00   0.00   0.00   0.05   -0.00  20.00
  0.00    0.00     0.00   0.14   0.00   0.14   0.00   0.00   0.00   0.00   0.04   -0.00  20.00
  1.00    0.00     0.00   0.38   0.00   0.38   0.00   0.00   0.00   0.00   0.11   -0.00  20.00
  2.00    0.00     0.00   0.26   0.00   0.26   0.00   0.00   0.00   0.00   0.07   -0.00  20.00
  3.00    0.00     0.00   0.42   0.00   0.42   0.00   0.00   0.00   0.00   0.12   -0.00  20.00
  4.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
  5.00    0.00     0.00   0.10   0.00   0.12   0.00   0.00   0.00   0.02   0.03   -0.00  20.00
  6.00    0.00     0.00   0.00   0.25   0.13   0.00   0.00   0.00   0.38   0.00   -0.07  20.00
  7.00    0.00     0.00   0.00   0.79   0.15   0.00   0.00   0.00   0.94   0.00   -0.20  20.00
  8.00    0.00     0.00   0.00   1.07   0.23   0.00   0.00   0.00   1.30   0.00   -0.26  20.00
  9.00    0.00     0.00   0.00   1.22   0.26   0.00   0.00   0.00   1.48   0.00   -0.22  20.00
 10.00    0.00     0.00   0.00   1.28   0.31   0.00   0.00   0.00   1.59   0.00   -0.19  20.00
 11.00    0.00     0.00   0.00   1.31   0.32   0.00   0.00   0.00   1.63   0.00   -0.19  20.00
 12.00    0.40     0.00   0.00   0.91   0.31   0.00   0.00   0.00   1.62   0.00   -0.12  20.00
 13.00    1.58     0.00   0.27   0.00   0.23   0.00   0.00   0.00   1.54   0.03    0.00  20.00
 14.00    1.60     0.00   0.44   0.00   0.26   0.00   0.00   0.00   1.42   0.05    0.00  20.00
 15.00    0.00     0.00   0.00   1.07   0.21   0.00   0.00   0.00   1.28   0.00   -0.15  20.00
 16.00    0.00     0.00   0.00   0.89   0.21   0.00   0.00   0.00   1.10   0.00   -0.13  20.00
 17.00    0.00     0.00   0.00   0.37   0.54   0.00   0.00   0.00   0.91   0.00   -0.08  20.00
 18.00    0.00     0.00   0.00   0.45   0.26   0.00   0.00   0.00   0.71   0.00   -0.12  20.00
 19.00    0.00     0.13   0.00   0.38   0.26   0.00   0.00   0.00   0.50   0.00   -0.11  20.00
 20.00    0.00     0.77   0.00   0.83   0.22   0.00   0.00   0.00   0.28   0.00   -0.28  20.00
 21.00    0.00     0.90   0.00   0.80   0.19   0.00   0.00   0.00   0.09   0.00   -0.28  20.00
 22.00    0.00     0.40   0.00   0.22   0.18   0.00   0.00   0.00   0.00   0.00   -0.07  20.00
 23.00    0.00     0.00   0.16   0.00   0.16   0.00   0.00   0.00   0.00   0.05   -0.00  20.00
Totaal    3.58     4.07   2.59  13.94   7.17   0.00   0.00   0.00  17.95   0.62   -3.22       
2025-06-20 18:20:41 info: Winst: € 0.31
2025-06-20 18:20:41 info: Onderstaande settings worden NIET doorgezet naar HA
2025-06-20 18:20:41 info: Berekeningsuitkomst voor opladen van Kia Niro EV:
2025-06-20 18:20:41 info: - aantal ampere 0A (was 0.0A)
2025-06-20 18:20:41 info: - stand schakelaar 'off' (was 'off')
2025-06-20 18:20:41 info: - positie: home
2025-06-20 18:20:41 info: - ingeplugd: True
2025-06-20 18:20:41 info: Evaluatie status laden Kia Niro EV op 2025-06-20 18:20
2025-06-20 18:20:41 info: - schakelaar laden: off
2025-06-20 18:20:41 info: - aantal ampere: 0.0
2025-06-20 18:20:41 info: Grid set point: -429.0 W
2025-06-20 18:20:41 info: Cycle cost EvaPower: 0.10 euro
2025-06-20 18:20:41 info: Netto vermogen naar(+)/uit(-) batterij EvaPower zou zijn: 0 W
2025-06-20 18:20:41 info: Balanceren zou zijn: False
2025-06-20 18:20:41 info: Grid set point: -429.0 W
2025-06-20 18:20:41 info: Cycle cost Delta2Max: 0.17 euro
2025-06-20 18:20:41 info: Netto vermogen naar(+)/uit(-) batterij Delta2Max zou zijn: 0 W
2025-06-20 18:20:41 info: Balanceren zou zijn: False

[ Voor 80% gewijzigd door diamanten op 20-06-2025 18:41 ]


Acties:
  • +1 Henk 'm!

  • f.welvering
  • Registratie: Oktober 2009
  • Laatst online: 19:21
KC27 schreef op vrijdag 20 juni 2025 @ 16:23:
[...]


Wat staat er in de entities die je hebt geconfigureerd:
code:
1
2
3
4
5
        "entity start window": "input_datetime.start_window_wasmachine",
        "entity end window": "input_datetime.eind_window_wasmachine",
        "entity selected program": "input_select.wasmachine_programma",
        "entity calculated start": "input_datetime.berekende_start_wasmachine",
        "entity calculated end": "input_datetime.berekende_stop_wasmachine"

Misschien kun je er een screenshot van maken, zoals deze(?):
[Afbeelding]
Ik snap na het zien van jou screenshot wat ik fout deed.
Ik had niet door dat het window ingesteld moest worden, ik had de aanname gedaan dat dit door DAO gedaan werd. Nu ik het window tussen 7 en 19 heb gezet krijg ik wel een berekende start en stop tijd

WP: DeWarmte PompAO 6.4Kw Hybrid, CV Intergas, Thermostaat Netatmo, 70m2 vvw, PV: 34x 325wp solaredge omvormer en optimizers,Wan ip adres weten? https://mijnips.eu


Acties:
  • 0 Henk 'm!

  • hemertje
  • Registratie: Juli 2015
  • Laatst online: 13:58
zijn er hier DAO-gebruikers die ook Panasonic warmtepomp hebben en ook @edterbak zijn Node Red gebruiken i.c.m. DAO?

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


Acties:
  • +1 Henk 'm!

  • KC27
  • Registratie: December 2009
  • Niet online
f.welvering schreef op vrijdag 20 juni 2025 @ 19:44:
[...]


Ik snap na het zien van jou screenshot wat ik fout deed.
Ik had niet door dat het window ingesteld moest worden, ik had de aanname gedaan dat dit door DAO gedaan werd. Nu ik het window tussen 7 en 19 heb gezet krijg ik wel een berekende start en stop tijd
Soms zegt een plaatje meer dan 100 woorden :)

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


Acties:
  • +2 Henk 'm!

  • sjampeter
  • Registratie: November 2021
  • Laatst online: 19:45
hemertje schreef op vrijdag 20 juni 2025 @ 21:22:
zijn er hier DAO-gebruikers die ook Panasonic warmtepomp hebben en ook @edterbak zijn Node Red gebruiken i.c.m. DAO?
jazeker. ik doe 1 run voor mijn boiler per dag. deze laat ik DAO uitrekenen en aansturen. werkt bijna perfect.

Acties:
  • 0 Henk 'm!

  • mightym
  • Registratie: Januari 2010
  • Laatst online: 11:15
@KC27 Ik maak al ruim een jaar gebruik van jouw addon en ik ben erg tevreden over de werking. Ik loop tegen een configuratie dingetje aan. Mijn accu wordt geladen door 3 multiplussen en via een victron smartsolar wordt er maximaal 6kW via DC direct geladen.
De BMS dicteert de maximale laad en ontlaad stroomsterktes.
Als de Smartsolar al met 6kW aan het laden is, en DAO wil graag met 10kW laden, dan wordt het laadvermogen van de multiplussen begrensd doordat de maximale laadstroom overschreden wordt. De regeling verwacht in totaal 16kWh de accu's in te stoppen, in werkelijkheid is dat dan bijvoorbeeld 12kWh.

Is hier in de configuratie iets aan te doen?

32 kWp PV + 54kWh ESS+ 7.5 kW Mitsubishi Ecodan


Acties:
  • +1 Henk 'm!

  • KC27
  • Registratie: December 2009
  • Niet online
mightym schreef op zaterdag 21 juni 2025 @ 16:28:
@KC27 Ik maak al ruim een jaar gebruik van jouw addon en ik ben erg tevreden over de werking. Ik loop tegen een configuratie dingetje aan. Mijn accu wordt geladen door 3 multiplussen en via een victron smartsolar wordt er maximaal 6kW via DC direct geladen.
De BMS dicteert de maximale laad en ontlaad stroomsterktes.
Als de Smartsolar al met 6kW aan het laden is, en DAO wil graag met 10kW laden, dan wordt het laadvermogen van de multiplussen begrensd doordat de maximale laadstroom overschreden wordt. De regeling verwacht in totaal 16kWh de accu's in te stoppen, in werkelijkheid is dat dan bijvoorbeeld 12kWh.

Is hier in de configuratie iets aan te doen?
Je kunt met de instellingen bat_to_dc max power en dc_to_bat max power het maximale vermogen van en naar de batterij (de cellen) begrenzen zie DOCS.md. Als je die optionele instellingen opgeeft zal DAO die bij de berekening respecteren.
Ben je hiermee geholpen?

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


Acties:
  • 0 Henk 'm!

  • Impossibl3
  • Registratie: November 2012
  • Laatst online: 16:20
Ik ben vandaag ook gestart met de DOA installatie alleen loop ik bij het begin al tegen twee foutmeldingen aan.

1. mijn HA database is incorrect
2. mijn DOA database is incorrect.

Ik draai op HA MariaDB via add-on. Zo heb ik ook DOA geinstallerd. Ik begreep uit de handleiding dat ik dan niets hoefde aan te passen. Ik heb wat betreft punt 1 nog gecontroleerd of de gegevens uit de MariaDB config overeen komen (databasenaam en gebruikersnaam = homeassistant, password komt overeen met secrets.yaml). Ik begreep uit de handleiding dat ik "mysql" niet hoefde aan te passen als ik mariadb draaide. Is dat correct?

Hieronder de foutmeldingen:
code:
1
2
3
4
5
6
7
8
9
10
11
12
=> directory dao_data made, files copied
=> /root/dao/data doesn't exist, made
=> /root/dao/webserver/app/static/data exist
Setting up watches.
Watches established.
[2025-06-21 16:02:56 +0200] [15] [INFO] Starting gunicorn 23.0.0
[2025-06-21 16:02:56 +0200] [15] [INFO] Listening at: http://0.0.0.0:5000 (15)
[2025-06-21 16:02:56 +0200] [15] [INFO] Using worker: sync
[2025-06-21 16:02:57 +0200] [25] [INFO] Booting worker with pid: 25
[2025-06-21 16:02:57 +0200] [26] [INFO] Booting worker with pid: 26
fout:root:Check your settings for Home Assistant database
fout:root:Check your settings for day_ahead database


En de 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
{
  "homeassistant": { },
  "database ha": {
    "engine": "mysql",
    "database": "homeassistant",
    "username": "homeassistant",
    "password": "!secret db_ha_password"
  },
   "database da": {
     "engine" : "mysql",
     "database": "day_ahead",
     "username": "day_ahead",
     "password": "!secret db_da_password"
  }, 
  "meteoserver-key": "!secret meteoserver-key",
  "prices": {
    "source day ahead": "nordpool",
    "regular high": 0.50,
    "regular low": 0.40,
    "switch to low": 23,
    "energy taxes consumption": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.10880,
      "2025-01-01": 0.10154
    },
    "energy taxes production": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.10880,
      "2025-01-01": 0.10154
    },
    "cost supplier consumption": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496
    },
    "cost supplier production": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496
    },
    "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": "2022-09-01",
    "tax refund": "True"
  },
  "logging level" : "info",
  "use_calc_baseload": "False",
  "baseload calc periode": 56,
  "baseload": [
    0.14,
    0.38,
    0.26,
    0.42,
    0.15,
    0.12,
    0.13,
    0.15,
    0.23,
    0.26,
    0.31,
    0.32,
    0.31,
    0.23,
    0.26,
    0.21,
    0.21,
    0.54,
    0.26,
    0.26,
    0.22,
    0.19,
    0.18,
    0.16
  ],
  "graphical backend": "",
  "graphics": {
    "style": "Solarize_Light2",
    "show" : "true",
    "battery balance": "True",
    "prices consumption": "True",
    "prices production": "False",
    "prices spot": "True",
    "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": [ ],
  "solar": [ ],
  "electric vehicle": [ ],
  "machines" : [ ],
  "tibber": {
    "api_token": "!secret tibber_api_token"
  },
  "report": {
    "entities grid consumption": [
      "sensor.grid_consumption_low",
      "sensor.grid_consumption_high"
    ],
    "entities grid production": [
      "sensor.grid_production_low",
      "sensor.grid_production_high"
    ],
    "entities solar production ac": [
      "sensor.solaredge_woning_ac_energy_kwh"
    ],
    "entities solar production dc": [],
    "entities ev consumption" : ["sensor.laadpunt_total_energy"],
    "entities wp consumption" : [],
    "entities boiler consumption": [],
    "entities battery consumption": ["sensor.ess_grid_consumption"],
    "entities battery production": ["sensor.ess_grid_production"]
  },
  "scheduler": {
    "active": "false",
    "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",
    "2359": "clean_data"
  }
}



De db_da_password heb ik in de DOA secret config aangepast net als de aanpassingen voor db_ha_password.

Als ik meteogegevens ophalen doe onder run krijg ik de volgende foutmeldingen:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Logging van bewerking "Meteoprognoses ophalen":
fout:root:Check your settings for day_ahead database
Traceback (most recent call last):
  File "/root/dao/webserver/../prog/day_ahead.py", line 3429, in <module>
    main()
  File "/root/dao/webserver/../prog/day_ahead.py", line 3392, in main
    da_calc = DaCalc("../data/options.json")
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/webserver/../prog/day_ahead.py", line 28, in __init__
    super().__init__(file_name=file_name)
  File "/root/dao/prog/da_base.py", line 202, in __init__
    self.db_da.log_pool_status()
    ^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'log_pool_status'


Nu suggereren de foutmeldingen dat mijn wachtwoord voor de DOA database niet correct zijn. Maar deze heb ik toch echt maar 1x ingesteld en later niet veranderd. Is er ergens een plek waar ik het wachtwoord voor de DOA database toch kan achterhalen of opnieuw kan instellen?

Ik heb DOA al een keer verwijder en HA opnieuw opgestart dat deed niet de truc

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


Acties:
  • 0 Henk 'm!

  • mightym
  • Registratie: Januari 2010
  • Laatst online: 11:15
KC27 schreef op zaterdag 21 juni 2025 @ 21:31:
[...]

Je kunt met de instellingen bat_to_dc max power en dc_to_bat max power het maximale vermogen van en naar de batterij (de cellen) begrenzen zie DOCS.md. Als je die optionele instellingen opgeeft zal DAO die bij de berekening respecteren.
Ben je hiermee geholpen?
Die had ik nog niet gevonden, ik ga het proberen!

32 kWp PV + 54kWh ESS+ 7.5 kW Mitsubishi Ecodan


Acties:
  • 0 Henk 'm!

  • KC27
  • Registratie: December 2009
  • Niet online
Impossibl3 schreef op zaterdag 21 juni 2025 @ 22:02:
Ik ben vandaag ook gestart met de DOA installatie alleen loop ik bij het begin al tegen twee foutmeldingen aan.

1. mijn HA database is incorrect
2. mijn DOA database is incorrect.

Ik draai op HA MariaDB via add-on. Zo heb ik ook DOA geinstallerd. Ik begreep uit de handleiding dat ik dan niets hoefde aan te passen. Ik heb wat betreft punt 1 nog gecontroleerd of de gegevens uit de MariaDB config overeen komen (databasenaam en gebruikersnaam = homeassistant, password komt overeen met secrets.yaml). Ik begreep uit de handleiding dat ik "mysql" niet hoefde aan te passen als ik mariadb draaide. Is dat correct?

Hieronder de foutmeldingen:
code:
1
2
3
4
5
6
7
8
9
10
11
12
=> directory dao_data made, files copied
=> /root/dao/data doesn't exist, made
=> /root/dao/webserver/app/static/data exist
Setting up watches.
Watches established.
[2025-06-21 16:02:56 +0200] [15] [INFO] Starting gunicorn 23.0.0
[2025-06-21 16:02:56 +0200] [15] [INFO] Listening at: http://0.0.0.0:5000 (15)
[2025-06-21 16:02:56 +0200] [15] [INFO] Using worker: sync
[2025-06-21 16:02:57 +0200] [25] [INFO] Booting worker with pid: 25
[2025-06-21 16:02:57 +0200] [26] [INFO] Booting worker with pid: 26
fout:root:Check your settings for Home Assistant database
fout:root:Check your settings for day_ahead database


En de 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
{
  "homeassistant": { },
  "database ha": {
    "engine": "mysql",
    "database": "homeassistant",
    "username": "homeassistant",
    "password": "!secret db_ha_password"
  },
   "database da": {
     "engine" : "mysql",
     "database": "day_ahead",
     "username": "day_ahead",
     "password": "!secret db_da_password"
  }, 
  "meteoserver-key": "!secret meteoserver-key",
  "prices": {
    "source day ahead": "nordpool",
    "regular high": 0.50,
    "regular low": 0.40,
    "switch to low": 23,
    "energy taxes consumption": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.10880,
      "2025-01-01": 0.10154
    },
    "energy taxes production": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.10880,
      "2025-01-01": 0.10154
    },
    "cost supplier consumption": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496
    },
    "cost supplier production": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496
    },
    "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": "2022-09-01",
    "tax refund": "True"
  },
  "logging level" : "info",
  "use_calc_baseload": "False",
  "baseload calc periode": 56,
  "baseload": [
    0.14,
    0.38,
    0.26,
    0.42,
    0.15,
    0.12,
    0.13,
    0.15,
    0.23,
    0.26,
    0.31,
    0.32,
    0.31,
    0.23,
    0.26,
    0.21,
    0.21,
    0.54,
    0.26,
    0.26,
    0.22,
    0.19,
    0.18,
    0.16
  ],
  "graphical backend": "",
  "graphics": {
    "style": "Solarize_Light2",
    "show" : "true",
    "battery balance": "True",
    "prices consumption": "True",
    "prices production": "False",
    "prices spot": "True",
    "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": [ ],
  "solar": [ ],
  "electric vehicle": [ ],
  "machines" : [ ],
  "tibber": {
    "api_token": "!secret tibber_api_token"
  },
  "report": {
    "entities grid consumption": [
      "sensor.grid_consumption_low",
      "sensor.grid_consumption_high"
    ],
    "entities grid production": [
      "sensor.grid_production_low",
      "sensor.grid_production_high"
    ],
    "entities solar production ac": [
      "sensor.solaredge_woning_ac_energy_kwh"
    ],
    "entities solar production dc": [],
    "entities ev consumption" : ["sensor.laadpunt_total_energy"],
    "entities wp consumption" : [],
    "entities boiler consumption": [],
    "entities battery consumption": ["sensor.ess_grid_consumption"],
    "entities battery production": ["sensor.ess_grid_production"]
  },
  "scheduler": {
    "active": "false",
    "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",
    "2359": "clean_data"
  }
}



De db_da_password heb ik in de DOA secret config aangepast net als de aanpassingen voor db_ha_password.

Als ik meteogegevens ophalen doe onder run krijg ik de volgende foutmeldingen:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Logging van bewerking "Meteoprognoses ophalen":
fout:root:Check your settings for day_ahead database
Traceback (most recent call last):
  File "/root/dao/webserver/../prog/day_ahead.py", line 3429, in <module>
    main()
  File "/root/dao/webserver/../prog/day_ahead.py", line 3392, in main
    da_calc = DaCalc("../data/options.json")
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/webserver/../prog/day_ahead.py", line 28, in __init__
    super().__init__(file_name=file_name)
  File "/root/dao/prog/da_base.py", line 202, in __init__
    self.db_da.log_pool_status()
    ^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'log_pool_status'


Nu suggereren de foutmeldingen dat mijn wachtwoord voor de DOA database niet correct zijn. Maar deze heb ik toch echt maar 1x ingesteld en later niet veranderd. Is er ergens een plek waar ik het wachtwoord voor de DOA database toch kan achterhalen of opnieuw kan instellen?

Ik heb DOA al een keer verwijder en HA opnieuw opgestart dat deed niet de truc
Ik draai ook mariadb als addon.
In mijn dao-addon heb ik de volgende instellingen:
code:
1
2
3
4
5
6
  "database da": {
    "password": "!secret db_da_password"
  },
  "database ha": {
    "password": "!secret db_ha_password"
  },

Omdat alle instellingen (behalve natuurlijk het wachtwoord) zoals ik die heb (exact hetzelfde als de jouwe) default zijn.
Ik heb op mijn laptop een ontwikkelomgeving en daar moet ik wel alles invullen. Bijvoorbeeld:
code:
1
2
3
4
5
6
7
8
  "database da": {
    "engine": "mysql",
    "server": "192.168.178.36",
    "port": 3306,
    "database": "day_ahead",
    "username": "day_ahead",
    "password": "!secret db_da_password"
  },

Verder is het belangrijk dat je de rechten van de accounts in mariadb goed hebt staan.
Je kunt dat checken en goed zetten met de phpmyadmin-addon:
Afbeeldingslocatie: https://tweakers.net/i/8JikInLuFcU0gHzLtTH2Lu9orLQ=/800x/filters:strip_exif()/f/image/RE33mtHkdj6nEhxj4ZOtnoWf.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


Acties:
  • 0 Henk 'm!

  • KC27
  • Registratie: December 2009
  • Niet online
Oh ja en ook niet onbelangrijk:
Vul poort 3306 in de config van mariadb-addon in:
Afbeeldingslocatie: https://tweakers.net/i/TLN58vWWlSmF80IJOe68-cSsvds=/800x/filters:strip_exif()/f/image/tnNSidV5PJ03GYH5aZbRtZkN.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


Acties:
  • 0 Henk 'm!

  • hemertje
  • Registratie: Juli 2015
  • Laatst online: 13:58
sjampeter schreef op zaterdag 21 juni 2025 @ 10:08:
[...]

jazeker. ik doe 1 run voor mijn boiler per dag. deze laat ik DAO uitrekenen en aansturen. werkt bijna perfect.
d:)b

zou je @edterbak kunnen helpen met het de manier van Helpers aanmaken ?
Ed (en ik ook niet) heeft geen ervaring met DAO en/of HACS

maar een mooie integratie tussen beide tools DAO en Ed's Node Red zou super gaaf zijn

zie zijn verzoek hier:

edterbak in "Heishamon <> Node Red voor Panasonic warmtepompen"

_/-\o_

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


Acties:
  • +1 Henk 'm!

  • Impossibl3
  • Registratie: November 2012
  • Laatst online: 16:20
KC27 schreef op zaterdag 21 juni 2025 @ 22:34:
[...]

Ik draai ook mariadb als addon.
In mijn dao-addon heb ik de volgende instellingen:
code:
1
2
3
4
5
6
  "database da": {
    "password": "!secret db_da_password"
  },
  "database ha": {
    "password": "!secret db_ha_password"
  },

Omdat alle instellingen (behalve natuurlijk het wachtwoord) zoals ik die heb (exact hetzelfde als de jouwe) default zijn.
Ik heb op mijn laptop een ontwikkelomgeving en daar moet ik wel alles invullen. Bijvoorbeeld:
code:
1
2
3
4
5
6
7
8
  "database da": {
    "engine": "mysql",
    "server": "192.168.178.36",
    "port": 3306,
    "database": "day_ahead",
    "username": "day_ahead",
    "password": "!secret db_da_password"
  },

Verder is het belangrijk dat je de rechten van de accounts in mariadb goed hebt staan.
Je kunt dat checken en goed zetten met de phpmyadmin-addon:
[Afbeelding]
Super bedankt! Bleek dat mijn homeassistant niet alle rechten had. Daarnaast handmatig maar even een database aangemaakt via phpmyadmin en toen deed die het goed met het ophalen van de weergegevens!

Nu weer verder puzzelen.

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


Acties:
  • +2 Henk 'm!

  • KC27
  • Registratie: December 2009
  • Niet online
Vandaag hebben we een nieuwe productieversie van DAO gepubliceerd.
Dit staat er in de changelog:
2025.6.2
  • introduction new buildsystem (thanks @simnet )
  • repair vat delivery -> vat consumption, vat redelivery -> vat production
Verder:
Deprecating i386, coming breaking change
In the next coming version (2025.7.0) machines with i386-processor will not be supported anymore.
Some necessary modules (o.a. cryptography) are not available for the i386 architecture.
There are a few users with this processor (5 of ca 200).
Please look out for another machine with an amd64 or aarch64 processor (perhaps a separate Docker-container on your NAS).

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


Acties:
  • 0 Henk 'm!

  • storeman
  • Registratie: April 2004
  • Laatst online: 16:02
KC27 schreef op donderdag 19 juni 2025 @ 13:38:
@storeman
Bij een hybride omvormer heb je twee instellingen waarmee je het laden en ontladen kunt beperken:
De eerste heb je net genoemd
Er is nog een tweede: bat_to_dc max power en dc_to_bat max power, zie DOCS.md.
Ben je hiermee geholpen?
Dat is niet mijn use-case (of ik snap het niet). Ik zal proberen het duidelijker te noteren. Het gaat me hierbij niet om de exacte uitkomst van DAO vandaag, maar hoe een veld soms een gewenste en soms een ongewenste beperking is. Vandaag is een mooi voorbeeld:

Om 9u, iets hogere energieprijs
de accu zou geladen moeten met 1KW (hoger rendement in config), de rest mag terug het net in. Dus 'charge from PV' is dan 1KW.

Om 14 uur is de stroomprijs lager, DAO wil nog niet van AC laden, maar er is ook weinig zon voorspeld. DAO charge from PV is nu ook 1KW, maar dat komt door de verwachte instraling. Mocht de zon ineens doorbreken, dan wil ik alles in de accu stoppen, niet: slechts 1KW laden en de rest het net invoeden.

"Chaos kan niet uit de hand lopen"


Acties:
  • +1 Henk 'm!

  • sjampeter
  • Registratie: November 2021
  • Laatst online: 19:45
hemertje schreef op zaterdag 21 juni 2025 @ 22:45:
[...]


d:)b

zou je @edterbak kunnen helpen met het de manier van Helpers aanmaken ?
Ed (en ik ook niet) heeft geen ervaring met DAO en/of HACS

maar een mooie integratie tussen beide tools DAO en Ed's Node Red zou super gaaf zijn

zie zijn verzoek hier:

edterbak in "Heishamon <> Node Red voor Panasonic warmtepompen"

_/-\o_
ik ben ook (soort van) actief in dat draadje van edterbak, echter stel je eigen er niet teveel van voor hoor.
zeker niet van mijn programeercapaciteiten haha.
wat ik eigenlijk doe is het volgende.
ik geef in de instellingen van DAO aan, dat een dhw run ongeveer 9 kwartier duurt.
DAO rekent voor mij dan het beste tijdstip voor die run uit.
dit tijdstip komt in de entity "calculated start"

deze entitie lees ik in in Node-red, welke (met waarschijnlijk veel te veel omwegen) enkele external link nodes in "WP input" aciveert.
op manier wordt door DAO de dhw run aangestuurd.
qua verwarming doe ik helemaal niks, aangezien bij mij de wp, als het koud is, toch nagenoeg full-time moet draaien. enkel nachtverlaging pas ik soms toe, maar dat gaat gewoon via heishamon flow.

als je wil kan ik de node-red flow wel prive met je delen. moet wel nog opgepoetst worden eigenlijk. nog niet aan toegekomen. laat maar horen.

Acties:
  • 0 Henk 'm!

  • patatman12
  • Registratie: Maart 2011
  • Laatst online: 17:20
Ik ben sinds gisteren ook over op DAO, en heb DESS uitgezet.
Het was even puzzelen, maar volgens mij heb ik de setup nu werkend.

Even wat over de setup:
1x Victron MultiPlus-II 48/5000/70-48
1x JK BMS 200a i.c.m. 16x Envision ESS 72173207 305Ah - LiFePO4 - 3.2V B-grade (16Kwh)
10x op het Oosten Canadian solar 295wp met een SAJ omvormer
14x op het westen Jinko Solar 375wp met een KOPP omvormer
1x Victron EV charger
Zonneplan met dynamisch contract

Het huis zit op de AC-out van de Victron, alleen de PV west en de EV charger zitten op de non-critical loads.
de 10 panelen van het oosten bewust wel op de AC-out, zodat in island mode ik de accu nog kan laden met solar.

Verbruikers:
1x Tesla model Y standard range (60 kwh)
1x Elektrisch boiler Tesy bellislimo 100 (volgende week aangesloten)
2x Airco's (moeten nog in DAO worden)

Victron is via MQTT aan Home Assistant gekoppeld. En ik gebruik geen Node-red.
Reden voor gebruik DAO is voornamelijk het slimmer aansturen van de verbruikers, zonder zelf 100 automations te hoeven schrijven. DESS kwam hier toch wel te kort, als je ook je verbruikers op slimme momenten kan aanzetten. Nu had ik bij negatieve prijzen dat ik zelf handmatig (lees via de app) dingen ging aanzetten om stroom te verbruiken.

Vannacht zag ik alleen iets interessants, namelijk de GridSetpoint niet niet helemaal logisch in mijn ogen. Deze is s'nachts Negatief, terwijl volgens de strategie deze positief zou moeten zijn toch? Het enige wat ik kan verzinnen, is dat de SOC op 20% stond inplaats van 10%.
Ik had een verschil tussen de min SOC in victron, en DAO. Deze staan nu gelijk op 20% min soc. Zou DAO de accu alsnog naar de 10% willen krijgen?

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

Afbeeldingslocatie: https://tweakers.net/i/9xXbwanS9g0AWgLzBdBuL-8oA7s=/x800/filters:strip_exif()/f/image/eK5H18DEDguHcT2RGCadthbK.png?f=fotoalbum_large


Mijn 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
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
{
  "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",
  "prices": {
    "source day ahead": "nordpool",
    "entsoe-api-key": "!secret entsoe-api-key",
    "regular high": 0.50,
    "regular low": 0.40,
    "switch to low": 23,
    "energy taxes consumption": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.10880,
      "2025-01-01": 0.10154
    },
    "energy taxes production": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.10880,
      "2025-01-01": 0.10154
    },
    "cost supplier consumption": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2025-01-01": 0.01653
    },
    "cost supplier production": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2025-01-01": 0.01653
    },
    "vat delivery": {
      "2022-01-01": 21,
      "2022-07-01": 9,
      "2023-01-01": 21
    },
    "vat redelivery": {
      "2022-01-01": 21,
      "2022-07-01": 9,
      "2023-01-01": 21
    },
    "vat": {
      "2025-01-01": 21
    },
    "last invoice": "2024-09-01",
    "tax refund": "True"
  },
  "logging level" : "info",
  "use_calc_baseload": "False",
  "baseload calc periode": 56,
  "baseload": [
    0.35,
    0.35,
    0.35,
    0.35,
    0.35,
    0.38,
    0.45,
    0.65,
    0.70,
    0.40,
    0.38,
    0.40,
    0.50,
    0.40,
    0.38,
    0.40,
    0.55,
    0.70,
    0.85,
    0.80,
    0.90,
    0.75,
    0.50,
    0.40
  ],
  "graphical backend": "",
  "graphics": {
    "style": "Solarize_Light2",
    "show" : "true",
    "battery balance": "True",
    "prices consumption": "True",
    "prices production": "False",
    "prices spot": "True",
    "average consumption": "True"
  },
  "strategy": "minimize cost",
  "notifications": {
  },
  "grid": {
    "max_power": 9
  },
  "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": "JK Accu",
    "entity actual level": "sensor.battery_percent",
    "capacity": 16,
    "upper limit": 100,
    "lower limit": 10,
    "entity min soc end opt": "input_number.dao_min_soc_limit",
    "entity max soc end opt": "input_number.dao_max_soc_limit",
    "charge stages": [
        {
          "power": 0,
          "efficiency": 1
        },
        {
          "power": 500,
          "efficiency": 0.785
        },
        {
          "power": 1000,
          "efficiency": 0.872
        },
        {
          "power": 1500,
          "efficiency": 0.897
        },
        {
          "power": 2000,
          "efficiency": 0.899
        },
        {
          "power": 2500,
          "efficiency": 0.898
        },
        {
          "power": 3000,
          "efficiency": 0.892
        },
        {
          "power": 3500,
          "efficiency": 0.882
        },
        {
          "power": 4000,
          "efficiency": 0.865
        }
      ],
    "discharge stages": [
        {
          "power": 0,
          "efficiency": 1
        },
        {
          "power": 200,
          "efficiency": 0.891
        },
        {
          "power": 500,
          "efficiency": 0.935
        },
        {
          "power": 1000,
          "efficiency": 0.952
        },
        {
          "power": 1250,
          "efficiency": 0.962
        },
        {
          "power": 1500,
          "efficiency": 0.952
        },
        {
          "power": 2000,
          "efficiency": 0.950
        },
        {
          "power": 2500,
          "efficiency": 0.934
        },
        {
          "power": 3000,
          "efficiency": 0.925
        },
        {
          "power": 3500,
          "efficiency": 0.915
        },
        {
          "power": 4000,
          "efficiency": 0.900
        },
        {
          "power": 4350,
          "efficiency": 0.893
        }
      ],
    "minimum power": 100,
    "cycle cost": 0.01,
    "dc_to_bat efficiency": 0.98,
    "bat_to_dc efficiency": 0.99,
    "entity set power feedin": "input_number.dao_setpoint_jk",
    "solar": []
  }
],
  "solar": [
  {
    "name": "pv oost",
    "tilt": 35,
    "orientation": -90,
    "capacity": 2.95,
    "max power": 2.95,
    "yield": 0.0065,
    "entity pv switch": ""
  },
  {
    "name": "pv west",
    "tilt": 35,
    "orientation": 90,
    "capacity": 5.25,
    "max power": 5.25,
    "yield": 0.01116,
    "entity pv switch": ""
  }
],
  "electric vehicle": [],
  "machines" : [ ],
  "tibber": {
    "api_token": "!secret tibber_api_token"
  },
  "report": {
    "entities grid consumption": [
      "sensor.zonneplan_p1_electricity_consumption_today"
    ],
    "entities grid production": [
      "sensor.zonneplan_p1_electricity_returned_today"
    ],
    "entities solar production ac": [
      "sensor.energie_productie_oost",
      "sensor.energie_productie_west"
    ],
    "entities solar production dc": [],
    "entities ev consumption" : ["sensor.ev_charger_consumption"],
    "entities wp consumption" : [],
    "entities boiler consumption": [],
    "entities battery consumption": ["sensor.ess_grid_consumption"],
    "entities battery production": ["sensor.ess_grid_production"]
  },
  "scheduler": {
    "active": "true",
    "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",
    "2359": "clean_data"
  }
}

Acties:
  • 0 Henk 'm!

  • sjampeter
  • Registratie: November 2021
  • Laatst online: 19:45
over SOC gesproken, dit is inderdaad wel een dingetje.
ik heb zelf ook een victron.
SOC haal ik via modbus binnen in hass.
ik heb zelf ook nog wat accu beveiliging lopen via node-red.
feit is wel dat mijn SOC in principe niet lager kan dan 20 % en niet hoger als 95%.
vooral die ondergrens fluctureert wel wat, aangezien dit geen harde calculatie is.
ik houdt dus ook een marge aan betreffende SOC in DAO, wat wil zeggen een paar procent boven de eigenlijke onderste grens.
doe ik dit niet, blijft DAO proberen te ontladen in de berekeningen, waar echter de Victron/node-red dit blokkeert.
op dit moment nog niet mee bezig geweest om dit te fine-tunen.
iemand toevallig zelfde probleem/ oplossing?

Acties:
  • 0 Henk 'm!

  • KC27
  • Registratie: December 2009
  • Niet online
patatman12 schreef op zondag 22 juni 2025 @ 11:57:
Ik ben sinds gisteren ook over op DAO, en heb DESS uitgezet.
Het was even puzzelen, maar volgens mij heb ik de setup nu werkend.

Even wat over de setup:
1x Victron MultiPlus-II 48/5000/70-48
1x JK BMS 200a i.c.m. 16x Envision ESS 72173207 305Ah - LiFePO4 - 3.2V B-grade (16Kwh)
10x op het Oosten Canadian solar 295wp met een SAJ omvormer
14x op het westen Jinko Solar 375wp met een KOPP omvormer
1x Victron EV charger
Zonneplan met dynamisch contract

Het huis zit op de AC-out van de Victron, alleen de PV west en de EV charger zitten op de non-critical loads.
de 10 panelen van het oosten bewust wel op de AC-out, zodat in island mode ik de accu nog kan laden met solar.

Verbruikers:
1x Tesla model Y standard range (60 kwh)
1x Elektrisch boiler Tesy bellislimo 100 (volgende week aangesloten)
2x Airco's (moeten nog in DAO worden)

Victron is via MQTT aan Home Assistant gekoppeld. En ik gebruik geen Node-red.
Reden voor gebruik DAO is voornamelijk het slimmer aansturen van de verbruikers, zonder zelf 100 automations te hoeven schrijven. DESS kwam hier toch wel te kort, als je ook je verbruikers op slimme momenten kan aanzetten. Nu had ik bij negatieve prijzen dat ik zelf handmatig (lees via de app) dingen ging aanzetten om stroom te verbruiken.

Vannacht zag ik alleen iets interessants, namelijk de GridSetpoint niet niet helemaal logisch in mijn ogen. Deze is s'nachts Negatief, terwijl volgens de strategie deze positief zou moeten zijn toch? Het enige wat ik kan verzinnen, is dat de SOC op 20% stond inplaats van 10%.
Ik had een verschil tussen de min SOC in victron, en DAO. Deze staan nu gelijk op 20% min soc. Zou DAO de accu alsnog naar de 10% willen krijgen?

[Afbeelding]

[Afbeelding]


Mijn 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
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
{
  "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",
  "prices": {
    "source day ahead": "nordpool",
    "entsoe-api-key": "!secret entsoe-api-key",
    "regular high": 0.50,
    "regular low": 0.40,
    "switch to low": 23,
    "energy taxes consumption": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.10880,
      "2025-01-01": 0.10154
    },
    "energy taxes production": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.10880,
      "2025-01-01": 0.10154
    },
    "cost supplier consumption": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2025-01-01": 0.01653
    },
    "cost supplier production": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2025-01-01": 0.01653
    },
    "vat delivery": {
      "2022-01-01": 21,
      "2022-07-01": 9,
      "2023-01-01": 21
    },
    "vat redelivery": {
      "2022-01-01": 21,
      "2022-07-01": 9,
      "2023-01-01": 21
    },
    "vat": {
      "2025-01-01": 21
    },
    "last invoice": "2024-09-01",
    "tax refund": "True"
  },
  "logging level" : "info",
  "use_calc_baseload": "False",
  "baseload calc periode": 56,
  "baseload": [
    0.35,
    0.35,
    0.35,
    0.35,
    0.35,
    0.38,
    0.45,
    0.65,
    0.70,
    0.40,
    0.38,
    0.40,
    0.50,
    0.40,
    0.38,
    0.40,
    0.55,
    0.70,
    0.85,
    0.80,
    0.90,
    0.75,
    0.50,
    0.40
  ],
  "graphical backend": "",
  "graphics": {
    "style": "Solarize_Light2",
    "show" : "true",
    "battery balance": "True",
    "prices consumption": "True",
    "prices production": "False",
    "prices spot": "True",
    "average consumption": "True"
  },
  "strategy": "minimize cost",
  "notifications": {
  },
  "grid": {
    "max_power": 9
  },
  "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": "JK Accu",
    "entity actual level": "sensor.battery_percent",
    "capacity": 16,
    "upper limit": 100,
    "lower limit": 10,
    "entity min soc end opt": "input_number.dao_min_soc_limit",
    "entity max soc end opt": "input_number.dao_max_soc_limit",
    "charge stages": [
        {
          "power": 0,
          "efficiency": 1
        },
        {
          "power": 500,
          "efficiency": 0.785
        },
        {
          "power": 1000,
          "efficiency": 0.872
        },
        {
          "power": 1500,
          "efficiency": 0.897
        },
        {
          "power": 2000,
          "efficiency": 0.899
        },
        {
          "power": 2500,
          "efficiency": 0.898
        },
        {
          "power": 3000,
          "efficiency": 0.892
        },
        {
          "power": 3500,
          "efficiency": 0.882
        },
        {
          "power": 4000,
          "efficiency": 0.865
        }
      ],
    "discharge stages": [
        {
          "power": 0,
          "efficiency": 1
        },
        {
          "power": 200,
          "efficiency": 0.891
        },
        {
          "power": 500,
          "efficiency": 0.935
        },
        {
          "power": 1000,
          "efficiency": 0.952
        },
        {
          "power": 1250,
          "efficiency": 0.962
        },
        {
          "power": 1500,
          "efficiency": 0.952
        },
        {
          "power": 2000,
          "efficiency": 0.950
        },
        {
          "power": 2500,
          "efficiency": 0.934
        },
        {
          "power": 3000,
          "efficiency": 0.925
        },
        {
          "power": 3500,
          "efficiency": 0.915
        },
        {
          "power": 4000,
          "efficiency": 0.900
        },
        {
          "power": 4350,
          "efficiency": 0.893
        }
      ],
    "minimum power": 100,
    "cycle cost": 0.01,
    "dc_to_bat efficiency": 0.98,
    "bat_to_dc efficiency": 0.99,
    "entity set power feedin": "input_number.dao_setpoint_jk",
    "solar": []
  }
],
  "solar": [
  {
    "name": "pv oost",
    "tilt": 35,
    "orientation": -90,
    "capacity": 2.95,
    "max power": 2.95,
    "yield": 0.0065,
    "entity pv switch": ""
  },
  {
    "name": "pv west",
    "tilt": 35,
    "orientation": 90,
    "capacity": 5.25,
    "max power": 5.25,
    "yield": 0.01116,
    "entity pv switch": ""
  }
],
  "electric vehicle": [],
  "machines" : [ ],
  "tibber": {
    "api_token": "!secret tibber_api_token"
  },
  "report": {
    "entities grid consumption": [
      "sensor.zonneplan_p1_electricity_consumption_today"
    ],
    "entities grid production": [
      "sensor.zonneplan_p1_electricity_returned_today"
    ],
    "entities solar production ac": [
      "sensor.energie_productie_oost",
      "sensor.energie_productie_west"
    ],
    "entities solar production dc": [],
    "entities ev consumption" : ["sensor.ev_charger_consumption"],
    "entities wp consumption" : [],
    "entities boiler consumption": [],
    "entities battery consumption": ["sensor.ess_grid_consumption"],
    "entities battery production": ["sensor.ess_grid_production"]
  },
  "scheduler": {
    "active": "true",
    "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",
    "2359": "clean_data"
  }
}
Volgens de berekening van gisteren om 15:34 doet ie vannacht niks negatief met het grid-setpoint: allemaal kleine lichtblauwe (=levering) staafjes.
Heb je voor mij een grafiek van de berekening van vannacht om 4:00 uur dat het grid-setpoint toch negatief was in de nachtelijke uren?

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


Acties:
  • 0 Henk 'm!

  • hemertje
  • Registratie: Juli 2015
  • Laatst online: 13:58
sjampeter schreef op zondag 22 juni 2025 @ 11:40:
[...]


ik ben ook (soort van) actief in dat draadje van edterbak, echter stel je eigen er niet teveel van voor hoor.
zeker niet van mijn programeercapaciteiten haha.
wat ik eigenlijk doe is het volgende.
ik geef in de instellingen van DAO aan, dat een dhw run ongeveer 9 kwartier duurt.
DAO rekent voor mij dan het beste tijdstip voor die run uit.
dit tijdstip komt in de entity "calculated start"

deze entitie lees ik in in Node-red, welke (met waarschijnlijk veel te veel omwegen) enkele external link nodes in "WP input" aciveert.
op manier wordt door DAO de dhw run aangestuurd.
qua verwarming doe ik helemaal niks, aangezien bij mij de wp, als het koud is, toch nagenoeg full-time moet draaien. enkel nachtverlaging pas ik soms toe, maar dat gaat gewoon via heishamon flow.

als je wil kan ik de node-red flow wel prive met je delen. moet wel nog opgepoetst worden eigenlijk. nog niet aan toegekomen. laat maar horen.
in de regel kan ik programmeertaal lezen en begrijpen
maar on zelf te programmeren gaat me een paar stappen te ver helaas

ben benieuwd naar je NR flow (y)

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


Acties:
  • 0 Henk 'm!

  • patatman12
  • Registratie: Maart 2011
  • Laatst online: 17:20
KC27 schreef op zondag 22 juni 2025 @ 13:49:
[...]

Volgens de berekening van gisteren om 15:34 doet ie vannacht niks negatief met het grid-setpoint: allemaal kleine lichtblauwe (=levering) staafjes.
Heb je voor mij een grafiek van de berekening van vannacht om 4:00 uur dat het grid-setpoint toch negatief was in de nachtelijke uren?
Ah, hierin zie je inderdaad dat hij probeert die laatste 10% uit de accu te duwen. Hij probeert het ook om 5:00 zie screenshots. En de daarop volgende uren, tot de zon weer gaat schijnen en de accu naar de 20% gaat.
In dit geval dus een PEBKAC :X

Afbeeldingslocatie: https://tweakers.net/i/7CFF3QRDVoeewItqjusfJR06Qec=/x800/filters:strip_exif()/f/image/YPeWnVYxfV6fMYUyQBEpjFrB.png?f=fotoalbum_large

Afbeeldingslocatie: https://tweakers.net/i/qz2lJZ_Eog-ATuTomlDWxn34M4c=/x800/filters:strip_exif()/f/image/4UAZx3ZVyVq4gAat9zHJdgsO.png?f=fotoalbum_large

Acties:
  • 0 Henk 'm!

  • KC27
  • Registratie: December 2009
  • Niet online
patatman12 schreef op zondag 22 juni 2025 @ 14:47:
[...]


Ah, hierin zie je inderdaad dat hij probeert die laatste 10% uit de accu te duwen. Hij probeert het ook om 5:00 zie screenshots. En de daarop volgende uren, tot de zon weer gaat schijnen en de accu naar de 20% gaat.
In dit geval dus een PEBKAC :X

[Afbeelding]

[Afbeelding]
Nou volgens de berekening van 15:34 zou de SoC al om 0:00 uur op 10% moeten zitten.
Dus de vraag is: wat was de SoC om 0:00 uur en zijn in de uren daarvoor ook de kWh uit de batterij gehaald zoals berekend/voorspeld door DAO.
De berekening/voorspelling van DAO moet kloppen met de werkelijkheid (mag een procent afwijken).
Als de voorspelling van het verloop van de SoC door DAO niet klopt dan zit er (denk ik) iets fout in je instellingen.
Dat kan op twee vlakken fout zitten:
  • de capaciteit is te laag ingesteld
  • de efficiency van het ontladen is te laag ingesteld
Als de capaciteit te laag is ingesteld zul je ook problemen hebben tijdens het laden: dat hij ook daar langer over doet dan voorspeld.
Ik denk niet dat de ontlaad-efficiency te laag is ingesteld, omdat hij al "hoog" staat in vergelijking met het laden.

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


Acties:
  • 0 Henk 'm!

  • KC27
  • Registratie: December 2009
  • Niet online
storeman schreef op zondag 22 juni 2025 @ 10:17:
[...]


Dat is niet mijn use-case (of ik snap het niet). Ik zal proberen het duidelijker te noteren. Het gaat me hierbij niet om de exacte uitkomst van DAO vandaag, maar hoe een veld soms een gewenste en soms een ongewenste beperking is. Vandaag is een mooi voorbeeld:

Om 9u, iets hogere energieprijs
de accu zou geladen moeten met 1KW (hoger rendement in config), de rest mag terug het net in. Dus 'charge from PV' is dan 1KW.

Om 14 uur is de stroomprijs lager, DAO wil nog niet van AC laden, maar er is ook weinig zon voorspeld. DAO charge from PV is nu ook 1KW, maar dat komt door de verwachte instraling. Mocht de zon ineens doorbreken, dan wil ik alles in de accu stoppen, niet: slechts 1KW laden en de rest het net invoeden.
Ik geloof dat ik het begin te begrijpen (corrigeer me als ik het mis heb).
Tussen de uurlijkse berekeningen door wil je - afhankelijk van de prijs - schommelingen in je pv-productie anders opvangen:
Bij hoge prijzen (bijv hoger dan gemiddeld):
- als pv productie hoger is dan verwacht: terugleveren
- als pv productie lager is: niks doen
Bij lage prijzen (lager dan gemiddeld):
- als pv productie hoger is dan verwacht: opslaan
- als pv productie lager is dan verwacht: inkopen van het net
Dit kan DAO (nog) niet voor je oplossen.
Maar dit kun je perfect oplossen met een automation of nodered-flow in HA.
Maar voordat ik die hier ga delen, wil ik eerst weten dat dit de weg is die je op wil gaan.

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


Acties:
  • +1 Henk 'm!

  • Torch1969
  • Registratie: Juni 2013
  • Laatst online: 18:12
@KC27 Zou DAO ook een vorm van "hybride" aansturing aankunnen? Dus niet volledig minimaliseren kosten of volledig maximaliseren eigen verbruik, maar iets daartussen in? Een soort hybride aansturing?

Ik stel me een configuratie instelling voor in een percentage (tientallen), waarmee het algoritme bepaald of het minimaliseren kosten is (0), maximaliseren eigen verbruik (1) of iets ertussenin (b.v. 0.5).

In mijn oude (zelf geautomatiseerde) aansturing ging ik voor maximaliseren eigen verbruik, maar wel binnen de grenzen van minimaliseren kosten. Dus het laden van de accu uitsmeren over de uren waarin de zonopbrengst groter is dan het eigen verbruik, maar de prijs ook laag genoeg om efficiency verliezen en cycle costs goed te maken (en andersom met ontladen).

Acties:
  • +2 Henk 'm!

  • diamanten
  • Registratie: Juli 2024
  • Laatst online: 18:43
Vraagje: met dit warme weer wil ik graag mijn airco's aansturen via DAO. Ik heb nu de volgende machine aangemaakt:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
  "machines" : [ 
      { "name": "Airco",
        "programs":[
          {"name": "Uit",
           "power": []},
          {"name": "Auto",
           "power": [1000, 1000, 1000, 1000, 1000, 1000, 1000, 800]
           }
        ],
        "entity start window": "input_datetime.start_window_airco",
        "entity end window": "input_datetime.eind_window_airco",
        "entity selected program": "input_select.airco_programma",
        "entity calculated start": "input_datetime.berekende_start_airco",
        "entity calculated end": "input_datetime.berekende_stop_airco"
      }
  ],
Afbeeldingslocatie: https://tweakers.net/i/SMo8iLBrmGaUDh-04NpnOfIcfoY=/fit-in/4920x3264/filters:max_bytes(3145728):no_upscale():strip_icc():strip_exif()/f/image/JJ1cPf6nVAsoGoNNyi4iN9n2.jpg?f=user_large
Dit werkt op zich wel, maar is er een betere manier hiervoor?

[ Voor 11% gewijzigd door diamanten op 22-06-2025 20:26 ]


Acties:
  • +1 Henk 'm!

  • patatman12
  • Registratie: Maart 2011
  • Laatst online: 17:20
KC27 schreef op zondag 22 juni 2025 @ 15:42:
[...]

Nou volgens de berekening van 15:34 zou de SoC al om 0:00 uur op 10% moeten zitten.
Dus de vraag is: wat was de SoC om 0:00 uur en zijn in de uren daarvoor ook de kWh uit de batterij gehaald zoals berekend/voorspeld door DAO.
De berekening/voorspelling van DAO moet kloppen met de werkelijkheid (mag een procent afwijken).
Als de voorspelling van het verloop van de SoC door DAO niet klopt dan zit er (denk ik) iets fout in je instellingen.
Dat kan op twee vlakken fout zitten:
  • de capaciteit is te laag ingesteld
  • de efficiency van het ontladen is te laag ingesteld
Als de capaciteit te laag is ingesteld zul je ook problemen hebben tijdens het laden: dat hij ook daar langer over doet dan voorspeld.
Ik denk niet dat de ontlaad-efficiency te laag is ingesteld, omdat hij al "hoog" staat in vergelijking met het laden.
SoC om 0:00 was 20% i.p.v. de door DAO verwacht 10%.
Dat kwam omdat ik bij DAO 10% had opgegeven, en in de Victron DVCC 20% minimum SoC had aangeven.
In dit geval was DAO tegen de Victron aan het vechten door 2 verschillende parameters.

Ik zal de Setpoint in de gaten houden vanavond, en morgen even een kleine update geven. Maar verwacht dat het door de afwijkende min. SoC kwam.
Bedankt voor je uitgebreide reactie, geeft ook meer inzicht in de werking van DAO!

Acties:
  • +1 Henk 'm!

  • balk
  • Registratie: Januari 2000
  • Laatst online: 18:53
Torch1969 schreef op zondag 22 juni 2025 @ 17:09:
@KC27 Zou DAO ook een vorm van "hybride" aansturing aankunnen? Dus niet volledig minimaliseren kosten of volledig maximaliseren eigen verbruik, maar iets daartussen in? Een soort hybride aansturing?

Ik stel me een configuratie instelling voor in een percentage (tientallen), waarmee het algoritme bepaald of het minimaliseren kosten is (0), maximaliseren eigen verbruik (1) of iets ertussenin (b.v. 0.5).

In mijn oude (zelf geautomatiseerde) aansturing ging ik voor maximaliseren eigen verbruik, maar wel binnen de grenzen van minimaliseren kosten. Dus het laden van de accu uitsmeren over de uren waarin de zonopbrengst groter is dan het eigen verbruik, maar de prijs ook laag genoeg om efficiency verliezen en cycle costs goed te maken (en andersom met ontladen).
Ik heb nu in Home Assistant de logica zitten die bepaalt wat er moet gebeuren indien DAO setpoint 0 is. Onderstaande tabel is nog niet perfect, en ik moet de logica ook nog eens goed doorlopen. Ik heb twee sensoren gemaakt die bepalen of de prijs hoog, medium, laag of negatief is. Simpelweg drie blokken van 33% van de prijs range van vandaag. Stijgend en dalend is met een derivative sensor, een sprong van 3 cent per kWh geeft stijging/daling aan. Anders vlak.

Kolom "Hoog" staat er 2 keer in, duplicaat.
SoCPrijs hoogMedium, dalendLaagMedium, stijgendHoog
100%XoM, discharge onlyXoM, discharge onlyidle
(wacht op betere prijzen)
idle
(wacht op betere prijzen)
XoM, discharge only
> 70%XoM, discharge only
(export zon)
XoM, discharge only (export zon)XoM, charge onlyIdle
(betere prijzen komen er aan)
XoM, discharge only
> 40%XoM, discharge only (export zon)XoM, discharge only (export zon)XoM, charge onlyXoM, charge onlyXoM, discharge only
> 10%idleXoM, discharge onlyXoM, charge only (?)XoM, discharge only (?)Idle
< 10%
(noodstroom)
idleXoM, charge onlyXoM, charge onlyXoM, charge onlyIdle

Dit voelt voor mij beter dan domweg idle wanneer DAO 0 zegt. Misschien niet financieel optimaal maar zeker niet ver er onder.

Ik heb twee Sessy's, en die stuur ik aan met de XoM automation van PimDoos.
+++ edit
nu ik weer zo naar de tabel kijk zie ik toch nog gekke dingen. Er wordt nog aan gewerkt :)
beetje uitleg toegevoegd aan tabel

[ Voor 3% gewijzigd door balk op 22-06-2025 22:07 ]


Acties:
  • +1 Henk 'm!

  • KC27
  • Registratie: December 2009
  • Niet online
patatman12 schreef op zondag 22 juni 2025 @ 20:51:
[...]


SoC om 0:00 was 20% i.p.v. de door DAO verwacht 10%.
Dat kwam omdat ik bij DAO 10% had opgegeven, en in de Victron DVCC 20% minimum SoC had aangeven.
In dit geval was DAO tegen de Victron aan het vechten door 2 verschillende parameters.

Ik zal de Setpoint in de gaten houden vanavond, en morgen even een kleine update geven. Maar verwacht dat het door de afwijkende min. SoC kwam.
Bedankt voor je uitgebreide reactie, geeft ook meer inzicht in de werking van DAO!
Ik zou Victron DVCC en DAO op hetzelfde minimum zetten. Dan kan DAO daarmee de meest optimale inzet van je Victron berekenen.

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


Acties:
  • +2 Henk 'm!

  • KC27
  • Registratie: December 2009
  • Niet online
Torch1969 schreef op zondag 22 juni 2025 @ 17:09:
@KC27 Zou DAO ook een vorm van "hybride" aansturing aankunnen? Dus niet volledig minimaliseren kosten of volledig maximaliseren eigen verbruik, maar iets daartussen in? Een soort hybride aansturing?

Ik stel me een configuratie instelling voor in een percentage (tientallen), waarmee het algoritme bepaald of het minimaliseren kosten is (0), maximaliseren eigen verbruik (1) of iets ertussenin (b.v. 0.5).

In mijn oude (zelf geautomatiseerde) aansturing ging ik voor maximaliseren eigen verbruik, maar wel binnen de grenzen van minimaliseren kosten. Dus het laden van de accu uitsmeren over de uren waarin de zonopbrengst groter is dan het eigen verbruik, maar de prijs ook laag genoeg om efficiency verliezen en cycle costs goed te maken (en andersom met ontladen).
Het is een interessante gedachte en de moeite waard om na te gaan of dit kan.
Jouw vraag is ook een mooie aanleiding om uiteen te zetten hoe DAO nu rekent met "minimize consumption" (is eigenlijk hetzelfde als maximalisering eigen verbruik, toch?).
Als je bij DAO de strategie "minimize consumption" kiest rekent het programma in twee stappen:
stap 1: het programma stuurt de mip optimalisatie aan met de functie:"minimize consumption". Dit levert een uitkomst op waarbij geen rekening is gehouden met de kosten, maar (zeker in de zomer) op zonnige dagen met pv vaak consumption die op nul uitkomt. Maar de teruglevering is dan niet geoptimaliseerd. De zo berekende consumption noem ik consumption_stap_1.
stap 2: ik voer een extra randvoorwaarde in het model: consumption <= maximum(0, consumption_stap_1) en voer wederom een optimaliseringsberekening uit nu met als functie "minimize cost".
Het programma gaat nu de teruglevering sturen naar de uren waar het het meeste oplevert.
De uitkomst die dit oplevert wordt gepresenteerd als het eindresultaat van een bewerking.
Dus eigenlijk doet het programma al een beetje wat jij voorstelt.

Als je die twee strategieën wilt combineren dan zul je - als je mip wilt gebruiken als optimaliseringsalgoritme - die twee eenheden moeten gaan wegen en optellen tot een gecombineerde eenheid en die gaan optimaliseren.
Bijvoorbeeld (dit is een theoretische exercitie) we gaan rekenen met strafpunten (je mag dan zelf de strafpunten instellen in de settings):
1 kWh consumption = 10 strafpunten
1 euro cost = 5 strafpunten
1 euro profit = - 5 strafpunten
Dat stop je als extra randvoorwaarden in het model en je gaat met het model zoeken naar "minimize strafpunten").
Op deze manier zouden we die twee strategieën kunnen combineren.

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


Acties:
  • 0 Henk 'm!

  • Torch1969
  • Registratie: Juni 2013
  • Laatst online: 18:12
balk schreef op zondag 22 juni 2025 @ 21:49:
[...]

Ik heb nu in Home Assistant de logica zitten die bepaalt wat er moet gebeuren indien DAO setpoint 0 is. Onderstaande tabel is nog niet perfect, en ik moet de logica ook nog eens goed doorlopen. Ik heb twee sensoren gemaakt die bepalen of de prijs hoog, medium, laag of negatief is. Simpelweg drie blokken van 33% van de prijs range van vandaag. Stijgend en dalend is met een derivative sensor, een sprong van 3 cent per kWh geeft stijging/daling aan. Anders vlak.

Kolom "Hoog" staat er 2 keer in, duplicaat.
SoCPrijs hoogMedium, dalendLaagMedium, stijgendHoog
100%XoM, discharge onlyXoM, discharge onlyidle
(wacht op betere prijzen)
idle
(wacht op betere prijzen)
XoM, discharge only
> 70%XoM, discharge only
(export zon)
XoM, discharge only (export zon)XoM, charge onlyIdle
(betere prijzen komen er aan)
XoM, discharge only
> 40%XoM, discharge only (export zon)XoM, discharge only (export zon)XoM, charge onlyXoM, charge onlyXoM, discharge only
> 10%idleXoM, discharge onlyXoM, charge only (?)XoM, discharge only (?)Idle
< 10%
(noodstroom)
idleXoM, charge onlyXoM, charge onlyXoM, charge onlyIdle

Dit voelt voor mij beter dan domweg idle wanneer DAO 0 zegt. Misschien niet financieel optimaal maar zeker niet ver er onder.

Ik heb twee Sessy's, en die stuur ik aan met de XoM automation van PimDoos.
+++ edit
nu ik weer zo naar de tabel kijk zie ik toch nog gekke dingen. Er wordt nog aan gewerkt :)
beetje uitleg toegevoegd aan tabel
Super interessant en ik zal het nog eens goed doornemen,
Nadeel is wel dat je buiten DAO om de accu gaat gebruiken. Denk dat het mooier is dat DAO dit bedenkt zodat die weet wat er gaat gebeuren en daar ook rekening mee houdt.
De XOM blueprint van Pimdoos heb ik op mijn todo staan om te integreren om ook NOM te kunnen draaien voor de balanceer optie van DAO (eventueel 2 varianten waar de ene alleen kan laden en de andere alleen kan ontladen).

[ Voor 4% gewijzigd door Torch1969 op 23-06-2025 08:18 ]


Acties:
  • +1 Henk 'm!

  • Torch1969
  • Registratie: Juni 2013
  • Laatst online: 18:12
KC27 schreef op zondag 22 juni 2025 @ 22:59:
[...]

Het is een interessante gedachte en de moeite waard om na te gaan of dit kan.
Jouw vraag is ook een mooie aanleiding om uiteen te zetten hoe DAO nu rekent met "minimize consumption" (is eigenlijk hetzelfde als maximalisering eigen verbruik, toch?).
Als je bij DAO de strategie "minimize consumption" kiest rekent het programma in twee stappen:
stap 1: het programma stuurt de mip optimalisatie aan met de functie:"minimize consumption". Dit levert een uitkomst op waarbij geen rekening is gehouden met de kosten, maar (zeker in de zomer) op zonnige dagen met pv vaak consumption die op nul uitkomt. Maar de teruglevering is dan niet geoptimaliseerd. De zo berekende consumption noem ik consumption_stap_1.
stap 2: ik voer een extra randvoorwaarde in het model: consumption <= maximum(0, consumption_stap_1) en voer wederom een optimaliseringsberekening uit nu met als functie "minimize cost".
Het programma gaat nu de teruglevering sturen naar de uren waar het het meeste oplevert.
De uitkomst die dit oplevert wordt gepresenteerd als het eindresultaat van een bewerking.
Dus eigenlijk doet het programma al een beetje wat jij voorstelt.

Als je die twee strategieën wilt combineren dan zul je - als je mip wilt gebruiken als optimaliseringsalgoritme - die twee eenheden moeten gaan wegen en optellen tot een gecombineerde eenheid en die gaan optimaliseren.
Bijvoorbeeld (dit is een theoretische exercitie) we gaan rekenen met strafpunten (je mag dan zelf de strafpunten instellen in de settings):
1 kWh consumption = 10 strafpunten
1 euro cost = 5 strafpunten
1 euro profit = - 5 strafpunten
Dat stop je als extra randvoorwaarden in het model en je gaat met het model zoeken naar "minimize strafpunten").
Op deze manier zouden we die twee strategieën kunnen combineren.
Ja, met maximaliseer eigen verbruik bedoelde ik inderdaad “minimize consumption”. Dank voor de uitleg (zal die ook toevoegen in de wiki 😀). Goed te lezen dat die eigenlijk al een soort van hybride vorm is. Ik zal in mijn testomgeving eens schaduwdraaien met die instelling. Klinkt inderdaad alsof dat eigenlijk al is wat ik wil. Werkt dit ook zo bij ontladen? Dus sturen naar uren met minste zon opbrengst en daarbinnen naar duurste uren?

De werking met strafpunten zou een alternatief kunnen zijn, maar die moeten we nog maar eens goed doorgronden.

Acties:
  • +1 Henk 'm!

  • Torch1969
  • Registratie: Juni 2013
  • Laatst online: 18:12
diamanten schreef op zondag 22 juni 2025 @ 20:20:
Vraagje: met dit warme weer wil ik graag mijn airco's aansturen via DAO. Ik heb nu de volgende machine aangemaakt:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
  "machines" : [ 
      { "name": "Airco",
        "programs":[
          {"name": "Uit",
           "power": []},
          {"name": "Auto",
           "power": [1000, 1000, 1000, 1000, 1000, 1000, 1000, 800]
           }
        ],
        "entity start window": "input_datetime.start_window_airco",
        "entity end window": "input_datetime.eind_window_airco",
        "entity selected program": "input_select.airco_programma",
        "entity calculated start": "input_datetime.berekende_start_airco",
        "entity calculated end": "input_datetime.berekende_stop_airco"
      }
  ],
[Afbeelding]
Dit werkt op zich wel, maar is er een betere manier hiervoor?
Ik heb eigenlijk een soortgelijke vraag. Ik heb de airco nu voor de reports als WP (is het eigenlijk ook) geconfigureerd, maar dus alleen voor vastleggen energieverbruik ( om die uit de baseload te halen). Voor de aansturing ben ik er ook nog niet uit. Voelt vreemd om de airco als “heating” te configureren, afgezien van het feit dat ik de benodigde gegevens lastig kan achterhalen.

Acties:
  • +2 Henk 'm!

  • balk
  • Registratie: Januari 2000
  • Laatst online: 18:53
Torch1969 schreef op maandag 23 juni 2025 @ 07:56:
[...]


Super interessant en ik zal het nog eens goed doornemen,
Nadeel is wel dat je buiten DAO om de accu gaat gebruiken. Denk dat het mooier is dat DAO dit bedenkt zodat die weet wat er gaat gebeuren en daar ook rekening mee houdt.
De XOM blueprint van Pimdoos heb ik op mijn todo staan om te integreren om ook NOM te kunnen draaien voor de balanceer optie van DAO (eventueel 2 varianten waar de ene alleen kan laden en de andere alleen kan ontladen).
Zolang je zonnestroom hebt zal DAO nooit precies kunnen voorspellen wat er gaat gebeuren. Ook eigen gebruik is niet foutloos te voorspellen. Ik zie DAO als de strateeg die zich niet bemoeit met de directe uitvoering. Het is heel goed met het uitzetten van de grote lijnen maar kan niet op de seconde regelen. Home Assistant juist omgekeerd en daarom werkt het ook zo lekker samen.

Acties:
  • 0 Henk 'm!

  • patatman12
  • Registratie: Maart 2011
  • Laatst online: 17:20
KC27 schreef op zondag 22 juni 2025 @ 22:59:
[...]

Het is een interessante gedachte en de moeite waard om na te gaan of dit kan.
Jouw vraag is ook een mooie aanleiding om uiteen te zetten hoe DAO nu rekent met "minimize consumption" (is eigenlijk hetzelfde als maximalisering eigen verbruik, toch?).
Als je bij DAO de strategie "minimize consumption" kiest rekent het programma in twee stappen:
stap 1: het programma stuurt de mip optimalisatie aan met de functie:"minimize consumption". Dit levert een uitkomst op waarbij geen rekening is gehouden met de kosten, maar (zeker in de zomer) op zonnige dagen met pv vaak consumption die op nul uitkomt. Maar de teruglevering is dan niet geoptimaliseerd. De zo berekende consumption noem ik consumption_stap_1.
stap 2: ik voer een extra randvoorwaarde in het model: consumption <= maximum(0, consumption_stap_1) en voer wederom een optimaliseringsberekening uit nu met als functie "minimize cost".
Het programma gaat nu de teruglevering sturen naar de uren waar het het meeste oplevert.
De uitkomst die dit oplevert wordt gepresenteerd als het eindresultaat van een bewerking.
Dus eigenlijk doet het programma al een beetje wat jij voorstelt.

Als je die twee strategieën wilt combineren dan zul je - als je mip wilt gebruiken als optimaliseringsalgoritme - die twee eenheden moeten gaan wegen en optellen tot een gecombineerde eenheid en die gaan optimaliseren.
Bijvoorbeeld (dit is een theoretische exercitie) we gaan rekenen met strafpunten (je mag dan zelf de strafpunten instellen in de settings):
1 kWh consumption = 10 strafpunten
1 euro cost = 5 strafpunten
1 euro profit = - 5 strafpunten
Dat stop je als extra randvoorwaarden in het model en je gaat met het model zoeken naar "minimize strafpunten").
Op deze manier zouden we die twee strategieën kunnen combineren.
Dit is eigenlijk vergelijkbaar hoe DESS werkt met "Green Mode".
https://communityarchive....namic-ess-green-mode.html
Optimized Self-Consumption: With this mode enabled, your system first directs solar energy towards meeting your immediate consumption needs.
Battery Charging Priority: Once your consumption needs are met, any excess solar power is utilized to charge your batteries, ensuring they are charged sufficiently for hours without solar.
Grid trading: Only after your consumption and battery charging needs are fulfilled does the system consider selling surplus solar energy back to the grid.
Alleen met DAO zou je dan die laatste ook nog optimaliseren, dus alleen verkopen op de duurste momenten.

Acties:
  • 0 Henk 'm!

  • DaBit
  • Registratie: Januari 2000
  • Laatst online: 14:25
balk schreef op zondag 22 juni 2025 @ 21:49:
Ik heb nu in Home Assistant de logica zitten die bepaalt wat er moet gebeuren indien DAO setpoint 0 is.
Het mag dan misschien beter voelen, maar als DAO 0 als setpoint aanhoud is er kwa efficiency en kosten voor gebruik accu geen eer te behalen aan gebruik van die accu. Dan ben je volgens mij net zo goed of beter af door de laad/ontlaad efficiencies kunstmatig hoog te zetten en kosten voor gebruik accu kunstmatig laag.

Overigens: als DAO vind dat 0-op-meter de beste strategie is dan kiest-ie daar zelf ook voor. Sinds ik DAO (op de juiste manier) verteld heb dat ik 2 cent moet betalen voor het terugleveren van een kWh kiest-ie daar bij mij vrij vaak voor als de zon schijnt.

Een beetje lastig grafiekje als je 'm niet zelf ingesteld hebt, maar:

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

Waar de gele lijn (netbalans, vermogen op de P1 meter) redelijk strak op 0 zit is DAO aan het balanceren en aan het proberen de 'waardeloze' zonne-energie in de accu te krijgen.

Overigens is er ook goed te zien dat het niet handig is als DAO ergens niet vanaf weet. Om ca. 13.15 moet de auto nog even bijgeladen worden en wordt dat geforceerd door een van de familieleden (ze kiezen voor 'nu laden'). DAO weet daar niet van, en kiest vrolijk voor 'balanceren' met als gevolg dat veel van die autolaadenergie uit de accu komt.

(misschien moet ik 'nu laden' implementeren door de EV-moet-vol-zijn tijd aan te passen en DAO een schop te geven)
balk schreef op maandag 23 juni 2025 @ 08:32:
Ik zie DAO als de strateeg die zich niet bemoeit met de directe uitvoering. Het is heel goed met het uitzetten van de grote lijnen maar kan niet op de seconde regelen. Home Assistant juist omgekeerd en daarom werkt het ook zo lekker samen.
Ik ook, daarom laat ik 'm vaker draaien dan eens per uur zodat de strateeg de strategie bij kan werken als de praktijk wat afwijkt van de theorie. Zeker zinvol als HA buiten DAO om nog dingen met de 'door DAO beheerde apparatuur' doet.
DAO gaat er voorlopig nog wel vanuit dat zaken binnen het uur klaar moeten zijn en houd geen rekening met verkorte tijden tussen de runs.

@KC27: zo'n cost-gebaseerde optimalisatie, of strafpunten zo je wil, is wel wat als je het mij vraagt.

[ Voor 9% gewijzigd door DaBit op 23-06-2025 09:14 ]


Acties:
  • +1 Henk 'm!

  • storeman
  • Registratie: April 2004
  • Laatst online: 16:02
KC27 schreef op zondag 22 juni 2025 @ 16:40:
[...]

Ik geloof dat ik het begin te begrijpen (corrigeer me als ik het mis heb).
Tussen de uurlijkse berekeningen door wil je - afhankelijk van de prijs - schommelingen in je pv-productie anders ...
Maar voordat ik die hier ga delen, wil ik eerst weten dat dit de weg is die je op wil gaan.
Dank voor je reactie KC27! Waar het bij mij schuurt is dat die entiteit dus eigenlijk twee functies heeft: begrenzing en planning.

Maar altijd goed om even te sparren. Ik heb nu bedacht dat als de `entity from ac` 0 is en `entity from pv` is dat niet, dat er onbeperkt geladen mag worden, volgens mij is dat de juiste logica.

"Chaos kan niet uit de hand lopen"


Acties:
  • 0 Henk 'm!

  • balk
  • Registratie: Januari 2000
  • Laatst online: 18:53
DaBit schreef op maandag 23 juni 2025 @ 09:06:
[...]

Overigens: als DAO vind dat 0-op-meter de beste strategie is dan kiest-ie daar zelf ook voor. Sinds ik DAO (op de juiste manier) verteld heb dat ik 2 cent moet betalen voor het terugleveren van een kWh kiest-ie daar bij mij vrij vaak voor als de zon schijnt.
Mee eens, ik ben dat ook nog aan het inrichten. Mijn logica is een aanvulling daarop. Stel DAO kiest voor NoM midden op de dag en dan gaat hier de wasmachine/Quooker/oid aan , dan wil ik niet dat het tekort uit de batterij komt maar vanaf het net. Op die momenten is het dus XoM met alleen laden. Omgekeerd zijn er ook scenarios waarbij je niet wil laden, en alleen ontladen.
+++
Aanvulling: mijn PV vermogen is kleiner dan accu laad vermogen

[ Voor 4% gewijzigd door balk op 23-06-2025 13:42 ]


Acties:
  • 0 Henk 'm!

  • simnet
  • Registratie: Januari 2020
  • Laatst online: 15:19
DaBit schreef op maandag 23 juni 2025 @ 09:06:
[...]

Overigens is er ook goed te zien dat het niet handig is als DAO ergens niet vanaf weet. Om ca. 13.15 moet de auto nog even bijgeladen worden en wordt dat geforceerd door een van de familieleden (ze kiezen voor 'nu laden'). DAO weet daar niet van, en kiest vrolijk voor 'balanceren' met als gevolg dat veel van die autolaadenergie uit de accu komt.

(misschien moet ik 'nu laden' implementeren door de EV-moet-vol-zijn tijd aan te passen en DAO een schop
Ik zit met een vergelijkbare uitdaging, in dat ik graag mijn vaatwasser wil meenemen in DOA als machine, maar hij is alleen niet slim te sturen (en de vrouw wil hem ook gewoon zelf kunnen starten wanner zij wil). Ik weet (aan de hand van een energysocket) wel wanneer hij start en heb zitten proberen om vergelijkbaar met jou DAO daar van op de hoogte te stellen. Ik heb nog niet een echt betrouwbare methode gevonden.

Dit is overigens ook een feature request aan @KC27 die ik nog aan het formulieren was... :)
Dus eigenlijk een endpoint binnen DAO om direct een machine te starten en een hercalculatie te doen. Mede omdat op dit soort momenten de batterij strategie flink kan wijzigen.

Acties:
  • +1 Henk 'm!

  • DaBit
  • Registratie: Januari 2000
  • Laatst online: 14:25
balk schreef op maandag 23 juni 2025 @ 13:30:
Mee eens, ik ben dat ook nog aan het inrichten. Mijn logica is een aanvulling daarop.
Ik liet precies zo'n moment liet zien in mijn grafiekje (en ook nog eens eentje waarvoor de accu relatief flink aan de bak moest want zo'n EV-met-voorrang lust meteen 11kW), maar heel erg is het niet:

- Normaal heb ik ruim >3kW aan zon als DAO gaat balanceren. Als er dan een vaatwasser oid aan gaat laad de accu tijdelijk even wat minder vlot. Dat wordt in de uren erna wel weer rechtgetrokken; je hebt al gauw meer opbrengst op een dag dan kWh-en aan accucapaciteit om te vullen.
- Die paar kWh die deze special case uit de accu komen zijn hoogstwaarschijnlijk goedkoop verkregen kWh-en, je 'betaalt' er alleen een procent of 15 aan laad/ontlaadverliezen voor en een paar cent aan apparatuurslijtage als je dat wil verrekenen. Eigenlijk niet of amper meer dan de inkoopvergoeding die je zou moeten betalen als het van het net af komt, dus accu of net is best wel lood om oud ijzer eigenlijk....
- Het is over tijdsspannes van maanden gemeten zo'n klein deel van de tijd dat dit euvel zich voordoet. Over het aantal kWh-en aan energiestromen gemeten ook.

De ene kant van het muntje is dat er winst te behalen is door de special case af te handelen, maar al met al is de winst die ik ermee kan halen door het aan te pakken erg klein.
De andere kant van het muntje is een hoop extra bitjes aan automaties toevoegen. En al die bitjes die je toevoegt kunnen omvallen en hebben onderhoud nodig om te voorkomen dat er bitrot ontstaat.

Mijn persoonlijke keuze: ik vind kosten vs baten te ongunstig uitvallen en pak mijn 'verlies' wel. Simpel, rechttoerechtaan en robuust heeft zo z'n charmes.

Dus of ik DAO in ga lichten dat de EV aan het laden is? Ik krijg net zoals jullie weer van die jeukende vingers om een automatie in elkaar te draaien die de auto-klaar tijd even aanpast, het gewenste percentage op 100 zet en DAO een schop geeft. Maar in werkelijkheid denk ik dat ik het lekker zo hou. KISS.

[ Voor 7% gewijzigd door DaBit op 23-06-2025 15:30 ]


Acties:
  • +1 Henk 'm!

  • DaBit
  • Registratie: Januari 2000
  • Laatst online: 14:25
Hier eenje van vandaag overdag. Een 'rotdag' voor de digitale kaboutertjes die het allemaal maar moeten zien te rooien met die sterk varierende zon en kinderen die thuis rondhangen:

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

Ik vind de schade wel meevallen. Meer dan 100% krijg ik toch niet in die accu en dat haalt-ie met gemak. En wat er in die dipjes uit de accu gehaald wordt is eerder opgeslagen zonne-energie. Daar heb ik geen belasting over betaald en geen 2 cent vergoeding voor aan de leverancier betaald dus dat is netzogoed goedkope stroom.

[ Voor 15% gewijzigd door DaBit op 23-06-2025 16:10 ]


Acties:
  • +1 Henk 'm!

  • Torch1969
  • Registratie: Juni 2013
  • Laatst online: 18:12
DaBit schreef op maandag 23 juni 2025 @ 16:07:
Hier eenje van vandaag overdag. Een 'rotdag' voor de digitale kaboutertjes die het allemaal maar moeten zien te rooien met die sterk varierende zon en kinderen die thuis rondhangen:

[Afbeelding]

Ik vind de schade wel meevallen. Meer dan 100% krijg ik toch niet in die accu en dat haalt-ie met gemak. En wat er in die dipjes uit de accu gehaald wordt is eerder opgeslagen zonne-energie. Daar heb ik geen belasting over betaald en geen 2 cent vergoeding voor aan de leverancier betaald dus dat is netzogoed goedkope stroom.
@DaBit en @balk dank :) voor jullie relativerende bespiegelingen en andere kijk op de zaak. Goed om eens in de overwegingen van aansturing mee te nemen. KISS is voor mij ook een belangrijk uitgangspunt, dat mag best ten koste van die paar laatste cent winst op een dag gaan. Kortom DAO bepaald de grote lijnen en in HA doe je de finetuning (op een zo eenvoudig mogelijke manier). DAO corrigeert de afwijkingen wel weer in het volgende uur (en moppert daar gelukkig niet over ;) )

Acties:
  • 0 Henk 'm!

  • DaBit
  • Registratie: Januari 2000
  • Laatst online: 14:25
Wat dat betreft zit ik toch 'met smart' te wachten op de kwartiers-variant van DAO :D
(je kunt 'm wel elk kwartier draaien, maar de berekeningresultaten zijn voor het komende uur)

Acties:
  • +1 Henk 'm!

  • KC27
  • Registratie: December 2009
  • Niet online
@DaBit @simnet en anderen:
Als je een sensor hebt in HA waarvan de waarde verandert (state change) omdat iemand de auto gaat laden, de vaatwasser aanzet of anderszins dan kun je al vanuit HA een berekening van DAO initiëren (RTFM ;) ):

Maak in configuration.yaml van HA een restcommando aan (bijvoorbeeld)
YAML:
1
2
3
4
rest_command:
  start_dao_calc:
    url: http://192.168.178.36:5000/api/run/calc_zonder_debug
    verify_ssl: false


Maak een automation in HA die wordt getriggerd door de genoemde state-change(s) (hier door een input_button):
YAML:
1
2
3
4
5
6
7
8
9
10
11
alias: Start berekening DAO via rest
description: Start berekening DAO
mode: single
triggers:
  - entity_id:
      - input_button.start_day_ahead_berekening
    trigger: state
conditions: []
actions:
  - data: {}
    action: rest_command.start_dao_calc


Bij mij werkt ie.

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


Acties:
  • +1 Henk 'm!

  • DaBit
  • Registratie: Januari 2000
  • Laatst online: 14:25
@KC27 : Ja, dat ik at kan weet ik. Haal ik ook aan ergens in de posts.

Maar stel, plingpling op de app 'Wij kunnen niet naar het toernooi van de kinderen rijden want ziek. Kun jij het overnemen?' Ja, opzich wel, maar dan moet ik wel even rap de auto bijladen. Voor die gevallen heb ik een knopje 'Nu laden'. Die zet simpelweg de laadpaal op '3x16A gewenst'. Auto gaat laden, en als iemand de laadstekker eruit trekt gaat de boel weer terug naar normaal, oftewel DAO gestuurd.

Zou ik dat via DAO willen repliceren dan moet ik in een automatie:
- De gewenste lading op 100% zetten.
- De helper die aangeeft wanneer DAO klaar moet zijn met EV laden op een zinnige tijd zetten, die ook nog eens afhankelijk is van de SoC van de accu. Want als ik DAO meer tijd geef dan nodig dan zou-ie voor een lager vermogen kunnen kiezen
- een berekening zonder debug starten via REST.
- Als de auto losgekoppeld word het ladingspercentage en tijd-klaar weer herstellen.

Voordat dat feilloos werkt... 'Nu laden' is nu knap betrouwbaar. Of de communicatie naar de paal werkt en ik kan 3x16A, of de boel ligt op z'n gat en de paal doet 3x10A als fallback.
Hoe het bij jullie thuis zit weet ik niet, maar hier is de oepsmomentjes-tolerantie van de rondborstige directie exact 0.

Acties:
  • +1 Henk 'm!

  • mgroen81
  • Registratie: September 2010
  • Laatst online: 14:44
DaBit schreef op maandag 23 juni 2025 @ 22:55:
@KC27 : Ja, dat ik at kan weet ik. Haal ik ook aan ergens in de posts.

Maar stel, plingpling op de app 'Wij kunnen niet naar het toernooi van de kinderen rijden want ziek. Kun jij het overnemen?' Ja, opzich wel, maar dan moet ik wel even rap de auto bijladen. Voor die gevallen heb ik een knopje 'Nu laden'. Die zet simpelweg de laadpaal op '3x16A gewenst'. Auto gaat laden, en als iemand de laadstekker eruit trekt gaat de boel weer terug naar normaal, oftewel DAO gestuurd.

Zou ik dat via DAO willen repliceren dan moet ik in een automatie:
- De gewenste lading op 100% zetten.
- De helper die aangeeft wanneer DAO klaar moet zijn met EV laden op een zinnige tijd zetten, die ook nog eens afhankelijk is van de SoC van de accu. Want als ik DAO meer tijd geef dan nodig dan zou-ie voor een lager vermogen kunnen kiezen
- een berekening zonder debug starten via REST.
- Als de auto losgekoppeld word het ladingspercentage en tijd-klaar weer herstellen.

Voordat dat feilloos werkt... 'Nu laden' is nu knap betrouwbaar. Of de communicatie naar de paal werkt en ik kan 3x16A, of de boel ligt op z'n gat en de paal doet 3x10A als fallback.
Hoe het bij jullie thuis zit weet ik niet, maar hier is de oepsmomentjes-tolerantie van de rondborstige directie exact 0.
Ik had ook zo'n nu laden functie gemaakt. Maar als je 10 minuten voor het hele uur start wordt het laden vaak gestopt door DAO.
Om dat te voorkomen heb ik idd gemaakt wat je beschrijft. En dat werkt perfect.
Ik heb de volgende 2 sensoren gemaakt. De sensoren berekenen de vertrek tijd op basis van de huidige SOC. Een automatisering zet de berekende vertrektijd in de DAO helper.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
- platform: template
  sensors:    
    ev_charge_time:
      friendly_name: "Estimated Charging Time"
      unit_of_measurement: "hours"
      value_template: >-
        {% set soc_remaining = 100 - states('sensor.zoe_state_of_charge') | int %}
        {% set energy_needed_kWh = soc_remaining * 4 / 10 %}
        {% set charging_power = 10 %}
        {{ (energy_needed_kWh / charging_power) | round(2) }}
    zoe_charge_now_time:
      friendly_name: "Zoe charge now time"
      value_template: >-
        {% set charge_time = states('sensor.ev_charge_time') | float %}
        {{ (now() + timedelta(hours=charge_time) + timedelta(hours=1)).strftime('%H:%M') }}

Mitsubishi PUHZ-W50VHA + EHPT20X-VM2C / 30x JASolar 265Wp oost/west + SolarEdge 7K


Acties:
  • 0 Henk 'm!

  • simnet
  • Registratie: Januari 2020
  • Laatst online: 15:19
@KC27
Ik heb die rest call inderdaad al geimplementeerd, echter moet ik de vaatwasser nogal omslacht inplannen:

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
alias: "DAO: trigger run by dishwasher"
description: ""
triggers:
  - trigger: state
    entity_id:
      - input_select.dishwasher_status
    to: Running
    from: Idle
conditions: []
actions:
  - action: input_select.select_option
    metadata: {}
    data:
      option: eco
    target:
      entity_id: input_select.dao_program_vaatwasser
    enabled: true
  - data_template:
      entity_id: input_datetime.dao_calculated_start_vaatwasser
      date: >
        {% set date_time = as_timestamp(now()) | int %} {{ date_time |
        timestamp_custom("%Y-%m-%d", true) }}
      time: "00:00:00"
    action: input_datetime.set_datetime
    enabled: true
  - data_template:
      entity_id: input_datetime.dao_calculated_stop_vaatwasser
      date: >
        {% set date_time = as_timestamp(now()) | int %} {{ date_time |
        timestamp_custom("%Y-%m-%d", true) }}
      time: "23:59:00"
    action: input_datetime.set_datetime
    enabled: true
  - data_template:
      entity_id: input_datetime.dao_start_window_vaatwasser
      time: >
        {% set date_time = as_timestamp(now()) | int - 60 %} {{ date_time |
        timestamp_custom("%H:%M:00", true) }}
    action: input_datetime.set_datetime
  - data_template:
      entity_id: input_datetime.dao_end_window_vaatwasser
      time: >
        {% set date_time = as_timestamp(now()) | int + 3600 + 900 %} {{
        date_time | timestamp_custom("%H:%M:00", true) }}
    action: input_datetime.set_datetime
  - action: rest_command.dao_start_calc
    metadata: {}
    data: {}
    enabled: true
mode: single


Ik zou het fijner vinden om het hele rekenen met datums achterwege te laten en tegen DAO te zeggen, 'start vaatwasser nu'. (dito voor andere machines)
Pagina: 1 ... 7 8 Laatste