76_SolarForecast - Informationen/Ideen zu Weiterentwicklung und Support

Begonnen von DS_Starter, 11 Februar 2024, 14:11:00

Vorheriges Thema - Nächstes Thema

Parallix

Zitat von: peterboeckmann am 05 Juni 2026, 12:58:19...
Für nach Deinem Urlaub habe ich einen Featurerequest:
Die Funktion get <Name> pVHistory exportToCsv finde ich sehr nützlich ...
Wäre es nicht einfacher, wenn Du eine eigene DB für solche Zwecke anlegst und die (gefilterten) Daten dann daraus ziehst?
FHEM: Debian/Testing BananaPro - AVM: 7490 (7.62) und 7591 (8.25) - Goodwe: GW25K-ET (DSP V10 / ARM V12) - Trina TSM 405: (#East, #South, #West) = (12,16,12) - BYD: 2 x HVS 7.7 (BMS V3.31-B, BMU V3.26-B) - EnOcean - Z-Wave - FS20/HMS

DS_Starter

#6301
Hallo zusammen,

auch im Urlaub gibt es manchmal Regentage .... und nach einem Blick ins Forum habe ich ein bisschen was gemacht und die V 2.7.0 im contrib upgedated.

- @WDS, der Boot-Fehler sollte behoben sein

- @Peter, die Ausgaben bzw. Exporte der pvHistory können nun gefiltert werden wie im Anhang kurz dargestellt.
  Alles Weitere entnehmt bitte der Online-Hilfe die ich aktualisiert habe.

- Die Verbrauchsprognose FANN ist um weitere Features erweitert, die ich aber noch nicht produktiv gesetzt habe.
  Wer sie testen möchte, kann aiConProfile=v1_sandbox setzen und ausprobieren. Hierdurch wird ein
  erweitertes v1_common_active Profil aktiviert. Mit diesem Profil gelingt bei mir (bei Abwesenheit) eine
  Fehlerquote bei 1% mit sehr guten Slope, Bias und R2 Werten.


HINWEIS: Bei Einsatz der Version ist vermutlich ein Retraining nötig, was aber im Normalfall kein Thema ist.

Morgen geht hoffentlich bei Sonnenschein der Urlaub weiter.  :)

LG,
Heiko
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

300P

Na dann wünschen wir dir für die Resttage mal kein Regentage mehr, damit die Erholung 🏖�🤿🚤⛵️🌳😎👒 dabei nicht zu kurz kommt...... :) ;D
Gruß
300P

FHEM 6.4|RPi|SMAEM|SMAInverter|SolarForecast| DbLog|DbRep|MariaDB|Buderus-MQTT_EMS|
Fritzbox|fhempy|JsonMod|HTTPMOD|Modbus ser+TCP| ESP32_AI_on_the_Edge|ESP32CAM usw.

grappa24

Schönen Urlaub Heiko  ;)

Ich bin jetzt auch extra mal 2 Wochen weg, damit das Haus mal in Ruhe trainieren kann  ;D
Gebäudesicherheit/-komfort, PV-Prognose/Verbrauchssteuerung, Heizungssteuerung, Multimedia, ...
KNX, FS20, HM, HUE, Tradfri, Shellies, KLF200, Netatmo, Nuki, SolarForecast, HEOS, Alexa-FHEM, ...
FHEM 6.4, 2 x RasPi 3B+, Debian Bullseye

DS_Starter

Viel Dank euch für die Wünsche und @grappa24 ebenso.  :)
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

dieter114

Zitat von: DS_Starter am 06 Juni 2026, 23:28:28- @WDS, der Boot-Fehler sollte behoben sein

Ist behoben  :)  Danke
und weiterhin einen schönen Urlaub.
Grüße WDS

RPi II+III+V,OWX, HM Zisterne, MAPLESDuino(adv), ESPEasy, Tasmota, MQTT2Server, WU-Upload, TabletUI, Poolsteuerung fhem, Fronius, BYD Solaranlage

Gisbert

Hallo 300P,
hallo Heiko (im Urlaub),

ich melde mich, weil meine Verbrauchsvorhersage aus dem Ruder läuft.

aiControl
aiConActivate=1
aiConProfile=v1_heatpump
aiConHiddenLayers=64-32
aiConLearnRate=0.002
aiConMomentum=0.9
aiConBitFailLimit=0.34
aiConShuffleMode=1

letztes KI-Training: 10.06.2026 08:18:45 / Laufzeit in Sekunden: 431
KI Abfragestatus: ok
letzte KI-Ergebnis Generierungsdauer: 41.14 ms
Alpha: 1
Verbrauchernummer Wärmepumpe: 01

Trainingsbewertung: ok (ok)
Lernverhalten: ok gesundes Lernverhalten (19.7 % Epochenausnutzung)
Rauschen Bewertung: merkliches Rauschen, Interpretation mit Vorsicht (borderline)
Drift Bewertung: fresh_model
Empfehlung für Retrain: keine

Der tägliche Verbrauch liegt derzeit stabil bei 10-13 kWh. Die Vorhersage für den nächsten Tag liegt tagsüber bei 20-24 kWh und aktuell bei 36 kWh.

Ich bin ohne Unterstützung nicht in der Lage, etwas Brauchbares aus der Verbrauchsvorhersage zu machen.

Viele Grüße Gisbert
Proxmox | UniFiRHASSPY | DEYE | JK-BMS | ESPHome | Panasonic Heishamon | Homematic, VCCU, HMUART | ESP8266 | ATtiny85 | Wasser-, Stromzähler | tuya local | Wlan-Kamera | SIGNALduino, Rauchmelder FA21/22RF

DS_Starter

#6307
Hallo Gisbert,

ich nutze mal wieder eine kurze Regenphase ...  ;)

Du hast eine Wärmepumpe und ich vermute die hohen Verbrauchserwartungen kommen daher. Das sind nur Annahmen, denn ich kenne deinen Haushalt nicht. Ich würde dir raten einzustellen:

aiConTrainLimit=5000 (bzw. testen mit 4000 ... 5000)

Dadurch schneiden wir ein Stück der saisonalen Einflüsse des Winters im Training weg.

Weiterhin erscheint mir das Momentum zu hoch. Ich es reduzieren auf:

aiConMomentum=0.5  (so zwischen 0.4 ... 0.7)

Dann gibt es den Hinweis "Rauschen Bewertung: merkliches Rauschen, Interpretation mit Vorsicht (borderline)".
Das bedeutet, das neuronale Netz kann einen beträchtlichen Teil des Verbrauches nicht anhand von Abhängigkeiten einorden. Das reguliere ich durch Features soweit ich es kann. Diese Features werden durch die Profile zu- oder abgeschaltet. Dir würde ich deswegen raten noch zu setzen:

aiConProfile=v1_heatpump_active_pv

Das passt nicht wirklich wegen dem Zusatz "_pv". Ich bemerke gerade, dass ein Profil v1_heatpump_active fehlt, was für dich und andere WP-User treffender wäre. Das bessere ich nach.

Dann trainiere damit und schau dir die Ergebnisse an.

Weiterhin kann es hilfreich sein, die Contrib Version 2.7.0 zu laden und dort einzustellen:

aiConProfile=v1_sandbox

Das aktiviert Features die ich demnächst produktiv einführen werde. Vllt. führt das bei dir bereits etwas näher zum Ziel.

EDIT: Hilfreich wäre auch uns kurz deinen Haushalt hinsichlich der maßgeblichen Verbrauchstreiber zu beschreiben. Vllt. gibt es Warmwasser Heizpatronen oder etwas ähnliches. Daraus kann ich evtl. noch fehlende Environment Bestanteile oder Features ableiten.

LG,
Heiko
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

300P

Zitat von: DS_Starter am 11 Juni 2026, 11:53:56aiConProfile=v1_heatpump_active_pv

Das passt nicht wirklich wegen dem Zusatz "_pv". Ich bemerke gerade, dass ein Profil v1_heatpump_active fehlt, was für dich und andere WP-User treffender wäre. Das bessere ich nach.

Wenn du schon da nach dem Urlaub dann dort "anfasst".....hier der Wunschtraum des WP-Besitzers:

Die Abhängigkeiten für die 6 verschiedenen Betriebsmodi einer WP per Device-Reading optional (als höhenwertig) mitgeben zu können, anstatt die programmtechnisch irgendwie einem Modus zuzuordnen (Höchste Modi-Minuten-Wert pro Stunde zählt :) ).
Dies wird mir bei jeder Analyse bei den verschiedenen "KI-Freunden" im Netz immer wieder sehr stark zur Besserung der Werte nahegelegt......  O:-)

Beispiel:
user_wpmodus {if(ReadingsVal("MQTT_EMSwp","boiler_data_hpactivity","") eq "heating") {return "heating"}
elsif (ReadingsVal("MQTT_EMSwp","boiler_data_hpactivity","") eq "defrost") {return "defrost"}
elsif (ReadingsVal("MQTT_EMSwp","boiler_data_hpactivity","") eq "hot water") {return "hotwater"}
elsif (ReadingsVal("MQTT_EMSwp","boiler_data_hpactivity","") eq "off") {return "off"}
elsif (ReadingsVal("MQTT_EMSwp","boiler_data_hpactivity","") eq "cooling") {return "cooling"}
elsif (ReadingsVal("MQTT_EMSwp","boiler_data_hpactivity","") eq "pool") {return "pool"}
elsif (ReadingsVal("MQTT_EMSwp","boiler_data_hpactivity","") eq "pool heating") {return "poolheating"}
else {return 0}},

Ich meine die - die n.m.M. aktuell durch andere Parameter bei der WP die derzeitig im Code damit als bestimmter Betriebsmodi dann "zugeordnet" werden, können dann dem realen Status zugeordnet werden. ;)

Zitat eines anderen KI-Freundes:
17. Höchster Hebel bleibt daher wahrscheinlich
Zusätzliche Zustandsfeatures.
Insbesondere:
Feature erwarteter Nutzen
compressor active extrem hoch
minutes since ON extrem hoch
minutes since OFF extrem hoch
WW mode                 hoch
heating mode         hoch

Zitat eines anderen KI-Freundes
12. Die eigentliche Ursache bleibt wahrscheinlich
Das Modell kennt den thermischen Zustand nicht explizit genug.
Das sehe ich inzwischen ziemlich klar.
Besonders fehlen vermutlich:
Feature Relevanz
compressor runtime extrem hoch
minutes_since_on extrem hoch
minutes_since_off extrem hoch
heating state         hoch
WW state         hoch

und:
16. Höchster Hebel: explizite Zustandsfeatures
Du brauchst wahrscheinlich mindestens eines davon:
Feature Wirkung
WP compressor active sehr hoch
heating mode         hoch
WW mode                 hoch
runtime since start extrem hoch
runtime since stop extrem hoch
hysteresis state hoch

17. Besonders wirkungsvoll
Laufzeit seit Zustandswechsel
Beispiel:
minutes_since_on
minutes_since_off
Das wäre für thermische Systeme oft wertvoller als z.B. zusätzliche Wetterdaten.

oder hier
12. Die wichtigste Erkenntnis bleibt aber
Selbst bessere Aktivierungen lösen das Kernproblem vermutlich nicht vollständig.
Denn:
Wärmepumpen sind zustandsgetriebene Systeme
kein glattes kontinuierliches Signal.


13. Höchster Hebel bleibt daher wahrscheinlich
Zusätzliche Zustandsfeatures.
Insbesondere:
Feature erwarteter Nutzen
compressor active extrem hoch
minutes since ON extrem hoch
minutes since OFF extrem hoch
WW mode                 hoch
heating mode         hoch
Gruß
300P

FHEM 6.4|RPi|SMAEM|SMAInverter|SolarForecast| DbLog|DbRep|MariaDB|Buderus-MQTT_EMS|
Fritzbox|fhempy|JsonMod|HTTPMOD|Modbus ser+TCP| ESP32_AI_on_the_Edge|ESP32CAM usw.