76_SolarForecast - Informationen/Ideen zu Weiterentwicklung und Support

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

Vorheriges Thema - Nächstes Thema

kask

Wenn du was gegen die empirische ermittlung hast dann könntest du aus dem Sonnenstand/Neigungswinkel/Ausrichtung theoretisch einen Umrechnungsfaktor kalkulieren.
Aber auch dafür müßtest du erst einmal sammeln für eine "Faktorenliste". Da sich der Umrechnungsfaktor ja nach Tageszeit ändern wird.

DS_Starter

Mal schauen. Intern habe ich ein Umrechnungsschema mit Flächenfaktoren nach Junge: http://www.ing-büro-junge.de/html/photovoltaik.html

Muß die Ergebnisse mal vergleichen.
ESXi@NUC+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

kask

Dann müßtest du aber eins von beiden umrechnen, schon beim ermittelen der Werte und dann wieder beim zurückrechnen.
Das ist dann aber auch nicht mehr on-the-fly momentan.Weil dann musst du mindestens eine History neuanlegen.
Warum willst du überhaupt umschalten können?

DS_Starter

#288
Nicht unbedingt. Irgendwann entscheidet man sich ja für eine Variante. Außerdem lernt die KI dann wieder neu dazu. War nur so eine Idee ...
ESXi@NUC+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

cwagner

[Gelöst -> #296]

Nach den hier dokumentierten sehr positiven Erfahrungen mit openMeteo habe nun nach dem Neustart seit 18 Stunden im Minutenabstand eine angemeierte verweigerte Connection:
2024.03.28 07:16:54 1: SolarVorschau - Open-Meteo DWD ICON API server response: DNS write error: Connection refused
2024.03.28 07:18:04 1: SolarVorschau - Open-Meteo DWD ICON API server response: DNS write error: Connection refused
2024.03.28 07:18:13 4: SolarVorschau - The working memory >circular pvhist solcastapi< has been saved to persistance
2024.03.28 07:19:14 1: SolarVorschau - Open-Meteo DWD ICON API server response: DNS write error: Connection refused
2024.03.28 07:20:24 1: SolarVorschau - Open-Meteo DWD ICON API server response: DNS write error: Connection refused
Ruhe ich diesen die API aus dem Browser auf bzw. den String aus dem Programm, erhalte ich eine Server-Response.
VERSION    1.17.1
    VERSION_API unused
    VERSION_CTZ 1.0.0
    VERSION_ErrCodes unused
    VERSION_SMUtils 1.27.1
Wie kann ich das weiter aufklären?

Danke für Hinweise
Christian
PI 2B+/3B+ Raspbian 12, Perl 5.36.0, FHEM 6.3: 295 Module in ConfigDB: Steuerung Heizkessel, FBH, Solarthermie, kontr. Lüftung mit WRG. Smarthome u.a. HMCUL, 1-Wire (FT232RL ; DS2480B), EnOcean (TCM EPS3), MQTT2. DOIF, PID20, Threshold, OWX; Micropelt IRTV, Volkszähler, SolarForecast; MariaDB

DS_Starter

#290
Morgen Christian,

im Prinzip hast du folgende Möglichkeiten zur Analyse:

1. den Anlagencheck durchführen. Am schnellsten über das Icon im Grafikkopf.
2. das Attr ctrlDebug = apiCall setzen

Der Aufruf wird im Log protokolliert und sieht im Erfolgsfall so aus:

2024.03.28 08:15:07.405 1: openMeteo DEBUG> Open-Meteo DWD ICON API Call - Request for PV-String "Süddach" with weather model >DWD ICON Seamless<:
https://api.open-meteo.com/v1/forecast?models=icon_seamless&latitude=.....&hourly=temperature_2m,rain,weather_code,cloud_cover,is_day,global_tilted_irradiance_instant¤t=temperature_2m,weather_code,cloud_cover&minutely_15=global_tilted_irradiance&daily=sunrise,sunset&forecast_hours=48&forecast_days=2&tilt=45&azimuth=0
2024.03.28 08:15:07.406 2: HttpUtils url=https://api.open-meteo.com/v1/forecast?models=icon_seamless&latitude=..........&hourly=temperature_2m,rain,weather_code,cloud_cover,is_day,global_tilted_irradiance_instant¤t=temperature_2m,weather_code,cloud_cover&minutely_15=global_tilted_irradiance&daily=sunrise,sunset&forecast_hours=48&forecast_days=2&tilt=45&azimuth=0 NonBlocking via https
2024.03.28 08:15:07.407 1: IP: api.open-meteo.com -> 188.40.99.226
2024.03.28 08:15:07.442 2: HttpUtils request header:
GET /v1/forecast?models=icon_seamless&latitude=..........&hourly=temperature_2m,rain,weather_code,cloud_cover,is_day,global_tilted_irradiance_instant¤t=temperature_2m,weather_code,cloud_cover&minutely_15=global_tilted_irradiance&daily=sunrise,sunset&forecast_hours=48&forecast_days=2&tilt=45&azimuth=0 HTTP/1.0
Host: api.open-meteo.com
User-Agent: fhem
Accept-Encoding: gzip,deflate
Accept: application/json

2024.03.28 08:15:07.475 1: https://api.open-meteo.com/v1/forecast?models=icon_seamless&latitude=.......&hourly=temperature_2m,rain,weather_code,cloud_cover,is_day,global_tilted_irradiance_instant¤t=temperature_2m,weather_code,cloud_cover&minutely_15=global_tilted_irradiance&daily=sunrise,sunset&forecast_hours=48&forecast_days=2&tilt=45&azimuth=0: HTTP response code 200
2024.03.28 08:15:07.477 2: HttpUtils https://api.open-meteo.com/v1/forecast?models=icon_seamless&latitude=.......&hourly=temperature_2m,rain,weather_code,cloud_cover,is_day,global_tilted_irradiance_instant¤t=temperature_2m,weather_code,cloud_cover&minutely_15=global_tilted_irradiance&daily=sunrise,sunset&forecast_hours=48&forecast_days=2&tilt=45&azimuth=0: Got data, length: 7596
2024.03.28 08:15:07.478 2: HttpUtils response header:
HTTP/1.1 200 OK
Date: Thu, 28 Mar 2024 07:15:07 GMT
Content-Type: application/json; charset=utf-8
Connection: close
Content-Encoding: deflate
2024.03.28 08:15:07.479 1: openMeteo DEBUG> Open-Meteo DWD ICON API Call - server response for PV string "Süddach"
2024.03.28 08:15:07.480 1: openMeteo DEBUG> Open-Meteo DWD ICON API Call - request time: 2024-03-28 08:15:07 (1711610107)
2024.03.28 08:15:07.481 1: openMeteo DEBUG> Open-Meteo DWD ICON API Call - status: success

Grüße,
Heiko
ESXi@NUC+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

Guten Morgen,

nach einem notwendigen Neustart vom RPI grad mal im Log nachgesehen (konnte nicht FHEM per Browser aufrufen):

Ist Anscheinend aber kein Hänger von SF ?? - => externe SQL-Datenbank wurde weiter die ganze Nacht mit Daten gefüllt
Hab nur einen einzigen Fehlereintrag (2024.03.28 01:15:09) zu SF gefunden:
Und der Brunnenstart (2024.03.28 08:00:19) wurde auch geloggt.
 
(Die Leerzeile hab ich nicht extra eingefügt - war so im Logbuch enthalten)

2024.03.28 00:00:01 2: Deleting DOIFtoolsLog-2024-084.log
2024.03.28 01:05:11 2: Deleting fhempy-2024-03-17.log
2024.03.28 01:15:09 1: Forecast - aiTrain ERROR: Must add training instances before calling train() at ./FHEM/76_SolarForecast.pm line 13718.

2024.03.28 01:48:38 2: VCONTROL300: Error while sending command for parameter 0808 (Status 0x15) : Retry 0!!!
2024.03.28 01:48:39 2: VCONTROL300: Error while sending command for parameter 0808 (Status 0x15) : Retry 1!!!
2024.03.28 01:48:45 1: Timeout for VCONTROL300_DoUpdate reached, terminated process 171798
2024.03.28 01:53:45 1: Timeout for VCONTROL300_DoUpdate reached, terminated process 172602
2024.03.28 01:58:45 1: Timeout for VCONTROL300_DoUpdate reached, terminated process 173393
2024.03.28 08:00:19 2: Forecast - Consumer '_Brunnen' was external switched on
2024.03.28 08:26:09 2: myDbLog - Wait for last database cycle due to shutdown ...
2024.03.28 08:26:09 1: Server shutdown delayed due to myDbLog for max 10 sec
2024.03.28 08:26:10 2: myDbLog - Last database write cycle done
2024.03.28 08:26:10 0: Server shutdown
2024.03.28 08:26:11 2: myDbLog - stopping SubProcess PID >101349< ...
2024.03.28 08:26:11 2: myDbLog - SubProcess PID >101349< stopped
2024.03.28 08:26:26 1: Including fhem.cfg
2024.03.28 08:26:29 2: myDbLog - Subprocess >947< initialized ... ready for non-blocking operation
2024.03.28 08:26:30 2: eventTypes: loaded 8100 lines from ./log/eventTypes.txt

Mal schauen was der nächste Tag bringt.

Zu Info:
pvCorrectionFactor_Auto steht auf "on_complex"

Gruß
300P
FHEM 6.3 - Raspberry Pi 3 / Pi 4 - VControl300 mit VITOVALOR 300P - SMAEM - SMAInverter - DbLog/DbRep - MariaDB/QNAP - div. HTTPMOD - div. Modbus ser+TCP - SolarForecast - Tibber + Ladung mit SMA-SBS25

erwin

Guten Morgen,
Danke für den Fix, läuft !!! Forcast war gestern nahe perfekt, trotz komplexer Wetterbedingungen: Sonne, Wolken, Regen abwechselnd - eher April-Wetter!
mein Kommentar zu  ...liefert OpenMeteo die Global Tilted Irradiance (GTI) vs: Gloabal Irridiance:
Die GTI ist für den Solar-Ertrag die entscheidende! Die Umrechnung ist nicht trivial, weil GI (m.Meinung nach) bereits eine Berechnung aus Solarstrahlung auf eine Fläche (Erdboden) ist.
l.g. erwin
FHEM aktuell auf RaspberryPI Mdl 1-4
Maintainer: 00_KNXIO.pm 10_KNX.pm
User: CUNO2 (868 SLOWRF) - HMS100xx, FS20, FHT, 1-Wire  - 2401(iButton), 18x20, 2406, 2413 (AVR), 2450,..,MQTT2, KNX, SONOFF, mySENSORS,....
Hardware:  Busware ROT, Weinzierl IP731, 1-Wire GW,...

DS_Starter

@300P,

nein, gibt keine Hänger. Bei mir gecheckt und auch keine sonstigen Abnormitäten feststellbar.

Der train Error kann! ok sein wenn es keine Instanzen für die KI gab.
Kannst du aber nachstellen:

1. ctrlDebug=aiProcess einstellen
2. get ... valDecTree aiRawData -> es sollten (jetzt) Daten vorhanden sein
3. set ... aiDecTree addRawData
4. set ... aiDecTree addInstances
5. set ... aiDecTree train

Im Log sollte dann etwa folgendes erscheinen:

2024.03.28 09:46:50.021 1: openMeteo DEBUG> AI raw add - 41 entities added to raw data pool (set verbose 4 for output more detail)
2024.03.28 09:46:50.083 1: openMeteo DEBUG> AI raw data saved into file: ./FHEM/FhemUtils/AIraw_SolarForecast_openMeteo
2024.03.28 09:46:57.580 1: openMeteo DEBUG> AI Instance add - 41 entities added for training (set verbose 4 for output more detail)
2024.03.28 09:47:20.536 1: openMeteo DEBUG> AI Training is started in main process
2024.03.28 09:47:20.581 1: openMeteo DEBUG> AI trained number of entities: 41
2024.03.28 09:47:20.582 1: openMeteo DEBUG> AI trained and saved data into file: ./FHEM/FhemUtils/AItra_SolarForecast_openMeteo
2024.03.28 09:47:20.582 1: openMeteo DEBUG> Training instances and their associated information where purged from the AI object

LG
ESXi@NUC+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

Hab erst spät am Abend das letzte Update von deinem Contrib gezogen... vielleicht dann daher.
Ich mache erst mal "nix" und warte ab was morgen früh los ist.
Gruß
300P
FHEM 6.3 - Raspberry Pi 3 / Pi 4 - VControl300 mit VITOVALOR 300P - SMAEM - SMAInverter - DbLog/DbRep - MariaDB/QNAP - div. HTTPMOD - div. Modbus ser+TCP - SolarForecast - Tibber + Ladung mit SMA-SBS25

DS_Starter

Allgemeine Frage ... benutzt jemand das Attr affectMaxDayVariance?

Im Zuge der Weiterentwicklung ist es m.M. nach unnötig geworden und es reicht nach meinen Erfahrungen aus mit dem Defaultwert zu arbeiten.
Wenn es keine Gegenargumente gibt, würde ich es mal entfernen.
ESXi@NUC+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

cwagner

Zitat von: DS_Starter am 28 März 2024, 08:20:56...
1. den Anlagencheck durchführen. Am schnellsten über das Icon im Grafikkopf.
2. das Attr ctrlDebug = apiCall setzen

Der Aufruf wird im Log protokolliert und sieht im Erfolgsfall so aus:
...

Vielen Dank, Heiko, der Anlagencheck hatte mich nicht weitergebracht und das fein justierbare Attribut ctrlDebug hatte ich unverständlicherweise vergessen: Das zeigte dann auf httpUtils und damit fand ich meinen Fehler: Ein aus dem Vorsystem beim Rückspielen der Sicherung gezogener falscher globaler DNS-Eintrag. Jetzt löpt es!

Christian
PI 2B+/3B+ Raspbian 12, Perl 5.36.0, FHEM 6.3: 295 Module in ConfigDB: Steuerung Heizkessel, FBH, Solarthermie, kontr. Lüftung mit WRG. Smarthome u.a. HMCUL, 1-Wire (FT232RL ; DS2480B), EnOcean (TCM EPS3), MQTT2. DOIF, PID20, Threshold, OWX; Micropelt IRTV, Volkszähler, SolarForecast; MariaDB

DS_Starter

#297
@all,

in meinem contrib liegt die V1.17.2 mit integrierter OpenMeteoWorld-API:

OpenMeteoWorld-API
Als Variante des Open-Meteo Dienstes liefert die OpenMeteoWorld-API die optimale Vorhersage für einen bestimmten Ort weltweit. Die OpenMeteoWorld-API vereint nahtlos Wettermodelle bekannter Organisationen wie NOAA (National Oceanic and Atmospheric Administration), DWD (Deutscher Wetterdienst), CMCC (Canadian) und ECMWF (Europäisches Zentrum für mittelfristige Wettervorhersage). Für jeden Ort weltweit werden die besten Modelle kombiniert, um die bestmögliche Vorhersage zu erstellen. Die Auswahl der Wettermodelle erfolgt automatisch anhand der im API Aufruf enthalteten Standortkoordinaten.

Jetzt haben wir mit den Open-Meteo Diensten m.M. nach die Möglichkeit deutlich mehr als nur Deutschland abzudecken. Nun würde mich interessieren wie die Erfahrungen an den Standorten in Österreich/Schweiz aussehen.

Grüße,
Heiko
ESXi@NUC+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

kask

Dann schauen wir mal wie gut das mit der OpenMeteoWorld-API klappt (Und hoffen mal das wir das System nicht wieder abschissen ;) ).
Die OpenMeteoDWD-API funktioniert ja sehr gut.

DS_Starter

Bisschen optimistisch ... ist zwar Ostern doch das Ei hatten wir doch schon.  :)
Die Logik ist geblieben, nur der API Call ist entsprechend modifiziert.
Schauen wir mal wie sich die beiden Modelle entwickeln...
ESXi@NUC+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