76_SolarForecast - Informationen/Ideen zu Weiterentwicklung und Support

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

Vorheriges Thema - Nächstes Thema

dieter114

#5505
Hallo Heiko,
get radiationApiData siehe Foto.
Wenn ich die zusammenzähle komme ich auf 7370 Wh ?
Was wäre durchaus ein realistischer Wert für heute.
Die API zeigt mir bei Today_PVforecast heute 33378 Wh an.
Wo ist der Fehler?
edit: Kann es sein das Today_PVforecast und Tomorrow_PVforecast "nur" eine Addition aus forecastQualities ist?

LG WDS

RPi II+III+V,OWX,div.1W Module,HM Zisterne,div. CUL, sduino MAPLESDuino(adv), div ESPEasy, div Tasmota, MQTT2Server,WU-Upload,TabletUI,Poolsteuerung mit fhem, Fronius, BYD Solaranlage

DS_Starter

Hallo Dieter,

schau dir nochmal genau mein Beispiel in #5503 an.
Die relevanten Werte kommen tiefer als GTIWh für jeden einzelnen String. Die Werte zusammenaddiert für jede Stunde bzw. overall ist der Tageswert. Du musst aber auf das Datum achten. Die Werte sind auch für kommende Tag(e) vorhanden.
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

#5507
Hallo Heiko,
sieh dir bitte einmal diese Werte von mir an.
Da ist natürlich heute und morgen zu unterscheiden aber morgen um 12 Uhr macht meine Anlage
niemals 12,4 kWh. Das geht einfach aufgrund der Ausrichtung nicht.
Wir haben noch Frühjahr und das "Große" Feld ist mit 33 Grad Neigung ausgerichtet.
Egal wie die Sonne scheint, mehr als 10kW kommen da einfach nicht runter....
Diese Werte sind total überhöht.

LG WDS
RPi II+III+V,OWX,div.1W Module,HM Zisterne,div. CUL, sduino MAPLESDuino(adv), div ESPEasy, div Tasmota, MQTT2Server,WU-Upload,TabletUI,Poolsteuerung mit fhem, Fronius, BYD Solaranlage

DS_Starter

Ich kann dir leider nicht helfen wenn nicht strukturiert vorgegangen wird.
Deswegen nochmal die Bitte die Ausgabe von:

get ... radiationApiData

zu posten bzw. durch die API gelieferten GTIWh-Werte pro String dir anzuschauen und auf Plausibilität zu prüfen.
Mit den Erkenntnissen kommen dann die nächsten Schritte.
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

DS_Starter

Ist aber nicht komplett. Dort steht nur Rad1h drin. Interessant sind aber die GTIWh-Werte für jeden einzelnen String.

ZitatUnd wie komme ich an die GTIWh-Werte pro String?
In der Ausgabe weiter nach unten scrollen ...
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

RPi II+III+V,OWX,div.1W Module,HM Zisterne,div. CUL, sduino MAPLESDuino(adv), div ESPEasy, div Tasmota, MQTT2Server,WU-Upload,TabletUI,Poolsteuerung mit fhem, Fronius, BYD Solaranlage

dieter114

#5511
Also es würde sein:
2026-03-21 12:00:00 => GTIWh: 443.4
              pv_estimate50: 3056.00
vom Südseitenfeld.
Estimate 50 bedeutet 50% der zu erwartenden Leistung?
Und wenn ja würde es bedeuten das dort über 6kW in 1h runterkommen.
Das ist die z.Z. maximal mögliche Leistung bei voller Sonne bezogen auf das Südfeld.
Hier ist es stark bewölkt und trübe, also höchstens 25% davon.
Mir fehlt einfach das Verständniss dazu. Was bedeuten all diese Werte
Rad1h, pv_estimate50 und GTIWh
LG WDS
RPi II+III+V,OWX,div.1W Module,HM Zisterne,div. CUL, sduino MAPLESDuino(adv), div ESPEasy, div Tasmota, MQTT2Server,WU-Upload,TabletUI,Poolsteuerung mit fhem, Fronius, BYD Solaranlage

DS_Starter

Ich habe mal die 12:00 Werte für den 22.03. genommen:

GH_Ost=
2026-03-22 12:00:00 => GTIWh: 588.4
      pv_estimate50: 921.00

GH_West=
           2026-03-22 12:00:00 => GTIWh: 597
                                  pv_estimate50: 311.00
Ostseite=  
            2026-03-22 12:00:00 => GTIWh: 460.6
                                   pv_estimate50: 1442.00
   
Suedseite=

             2026-03-22 12:00:00 => GTIWh: 895
                                    pv_estimate50: 6170.00

Westseite=
             2026-03-22 12:00:00 => GTIWh: 378.7
                                    pv_estimate50: 749.00

Summe= 9593

Dem gegenüber steht gemäß deinem Screeshot 12466 Wh für 22.03. 12:00.
Da gibt es also eine Differenz die nicht aus dem Korrekturfaktor 0.88 kommt. Der vermindert sogar die Prognose.
Die Prognose für morgen 12:00 sagt aber auch cloud=0, also wolkenloser Himmel! Nicht heute, aber morgen.

ZitatEstimate 50 bedeutet 50% der zu erwartenden Leistung?
Nein, ist nur eine Bezeichnung und hier als durchschnittlich zu erwartendes Ergebnis.

Rad1h - Globalstrahlung (googeln)
pv_estimate50 - siehe oben
GTIWh - Globalstrahlung auf die geneigte Fläche in Wh

Auf jeden Fall gibt es ein Gap, aber die API Werte sehen zunächst plausibel aus.

Der nächste Schritt ist

 ctrlDebug=radiationProcess

einschalten, die Daten mit "get ... rooftopData" abrufen und die Logadaten komplett posten. Die sehen etwa so aus:

2026.03.21 15:00:49.023 1: openMeteo DEBUG> PV API estimate for today Hour 16 string Schleppdach ->
Estimated PV generation (calc) => 314.9 Wh
Estimated PV generation (raw) => 409.00 Wh
Module Temp (calculated) => 15.25 C
PV correction factor => 0.77
PV correction quality => 0.13
String Peak => 2170 W
Win(+)/Loss(-) String Peak Power by Temp => 0.09 kWp

2026.03.21 15:00:49.023 1: openMeteo DEBUG> PV API estimate for today Hour 16 string Süddach ->
Estimated PV generation (calc) => 854.7 Wh
Estimated PV generation (raw) => 1110.00 Wh
Module Temp (calculated) => 15.25 C
PV correction factor => 0.77
PV correction quality => 0.13
String Peak => 5900 W
Win(+)/Loss(-) String Peak Power by Temp => 0.25 kWp

2026.03.21 15:00:49.024 1: openMeteo DEBUG> PV API estimate for today Hour 16 summary:
Cloudcover => 79
Forecasted temperature => 10.00 C
PV Correction mode => on_complex
PV generation forecast => 1170 Wh
Starttime => 2026-03-21 15:00:00
Total Rain last hour => 0.00 kg/m2

2026.03.21 15:00:49.024 1: openMeteo DEBUG> PV API estimate for today Hour 17 string Schleppdach ->
Estimated PV generation (calc) => 125.0 Wh
Estimated PV generation (raw) => 245.00 Wh
Module Temp (calculated) => 10.9 C
PV correction factor => 0.51
PV correction quality => 0.74
String Peak => 2210 W
Win(+)/Loss(-) String Peak Power by Temp => 0.13 kWp

2026.03.21 15:00:49.025 1: openMeteo DEBUG> PV API estimate for today Hour 17 string Süddach ->
Estimated PV generation (calc) => 328.4 Wh
Estimated PV generation (raw) => 644.00 Wh
Module Temp (calculated) => 10.9 C
PV correction factor => 0.51
PV correction quality => 0.74
String Peak => 6010 W
Win(+)/Loss(-) String Peak Power by Temp => 0.36 kWp

2026.03.21 15:00:49.025 1: openMeteo DEBUG> PV API estimate for today Hour 17 summary:
Cloudcover => 94
Forecasted temperature => 9.40 C
PV Correction mode => on_complex
PV generation forecast => 453 Wh
Starttime => 2026-03-21 16:00:00
Total Rain last hour => 0.00 kg/m2
...

Das wird sehr umfangreich!


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: dieter114 am 21 März 2026, 10:30:33attr Forecast setupInverterDev01 Fronius_Symo pvOut=PowerFlow_Site_P_PV:W etotal=User_Produced_FPV:kWh capacity=10000 strings:Ostseite,Suedseite
attr Forecast setupInverterDev02 Fronius_Symo pvOut=Meter_1_PowerReal_P_Sum:W etotal=Meter_1_EnergyReal_WAC_Sum_Produced:Wh capacity=4000 strings:Westseite,GH_Ost,GH_West


Das ist n.m.M. irgendwie nicht ganz richtig konfiguriert..... ;)

2 verschiedene "etotal" an einem WR-Device-Namen :o
- Fronius_Symo pvOut=PowerFlow_Site_P_PV:W
- Fronius_Symo pvOut=Meter_1_PowerReal_P_Sum:W

oder

2 gleiche gleiche Device-Namen als WR-Device
- setupInverterDev01 Fronius_Symo
- setupInverterDev02 Fronius_Symo

->> soll / ist / kann das wirklich überhaupt so "real" sein ?    ::)



EDIT:
Zeig doch mal "get ....valInverter"
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.

dieter114

#5514
Zitat von: 300P am 21 März 2026, 15:22:27Zeig doch mal "get ....valInverter"
Das ist so richtig. Zwei Inverter die beide aus dem Symogen24 ausgelesen werden.
Möglicherweise ist das auch der Grundfehler der Anlage.
Namen gleich und die Readings?
Es werden zwei Readings (hochlaufende Zähler) aus dem Fronius_Symo ausgelesen.
Die entsprechen je 2 bzw. sogar 3 Strings daran.

RPi II+III+V,OWX,div.1W Module,HM Zisterne,div. CUL, sduino MAPLESDuino(adv), div ESPEasy, div Tasmota, MQTT2Server,WU-Upload,TabletUI,Poolsteuerung mit fhem, Fronius, BYD Solaranlage

DS_Starter

#5515
@300P,

goldener Hinweis ... aber anders als du vermutest  ;)

Der Strings-Eintrag ist falsch. Gesetzt ist:

strings:Ostseite,Suedseite

Richtig wäre:
strings=Ostseite,Suedseite

Dadurch ist Strings bei beiden Invertern nicht gesetzt und somit werden alle Strings bei beiden Invertern zugeordnet.
Das Ergebnis muß falsch werden.  :)

-> strings=  bei beiden Invertern korrigieren!


Edit: Und jetzt sieht man es auch im Screenshot von Dieter.
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

Ja - so ist es jetzt wirklich eindeutig das alle Strings jeweils an alle WR zugeordnet werden
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.

dieter114

Herzlichen Dank Euch beiden.
Den Fehler muss man erstmal sehen, vor allem wenn
das schon so seit ewigen Zeiten eingestellt ist.

LG Wolfdieter
RPi II+III+V,OWX,div.1W Module,HM Zisterne,div. CUL, sduino MAPLESDuino(adv), div ESPEasy, div Tasmota, MQTT2Server,WU-Upload,TabletUI,Poolsteuerung mit fhem, Fronius, BYD Solaranlage

DS_Starter

Ich schau mal ob ich im Anlagencheck eine Plausiprüfung einbauen kann. Wenn es mehrere Inverter gibt, darf es keine Dopplung der Strings-Zuordnung geben.

Oder fällt euch ein Szenario ein wo so etwas valide wäre?
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

Der Fehler wäre m.E. durch einen einfachen Syntax-Check zu erkennen.
Es war ja "nur" der : anstelle des = geschrieben.
Alle Eintragungen gehen über = und nicht über den : wie bei vielen anderen Modulen.
Das müsste doch zu erkennen sein?
RPi II+III+V,OWX,div.1W Module,HM Zisterne,div. CUL, sduino MAPLESDuino(adv), div ESPEasy, div Tasmota, MQTT2Server,WU-Upload,TabletUI,Poolsteuerung mit fhem, Fronius, BYD Solaranlage