Leistungsprognose für Wechselrichter

Begonnen von ch.eick, 18 Januar 2021, 08:35:46

Vorheriges Thema - Nächstes Thema

KölnSolar

nochmal meine Urform: meineFassade: ost=pink, süd=schwarz, rot=west; grün=Ebene
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

sn0000py

#196
hmmm ich dachte ja auch das wenn ich mit den daten reingehe ich auch so eine kurve bekommen müsste zumindest so ähnlich

nur bei bei mir fängt die kurve mit dem Spitzenwert bei 7:52 an, davor ist die 0.01 und dann geht die kurve runter

[edit]ok ich glaube ich hatte da falsche vorstellungen, der faktor gibt nicht die kurve wieder sondern die kurve wird von DWD Wert SolarRadiation geholt - ist das korrekt?
Ich dachte die ganze zeit dieser Faktor wäre die IDealkurve wenn alles perfekt wäre

ch.eick

#197
Zitat von: sn0000py am 23 Februar 2021, 09:22:38
hmmm ich dachte ja auch das wenn ich mit den daten reingehe ich auch so eine kurve bekommen müsste zumindest so ähnlich

nur bei bei mir fängt die kurve mit dem Spitzenwert bei 7:52 an, davor ist die 0.01 und dann geht die kurve runter

[edit]ok ich glaube ich hatte da falsche vorstellungen, der faktor gibt nicht die kurve wieder sondern die kurve wird von DWD Wert SolarRadiation geholt - ist das korrekt?
Ich dachte die ganze zeit dieser Faktor wäre die IDealkurve wenn alles perfekt wäre
Bei mir sind die Werte auch fallend, mangels Wissen habe ich das jedoch nicht hinterfraget :-(

EDIT: Die Funktion passt die Kurve vom DWD auf Deine Winkel gegebenheiten an.
RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick

sn0000py

Ok, das heisst ich brauche nun einen Wetterdienst der mir diese Daten liefert :/

alternativ die nächste mögliche Adresse in Deutschland? Wäre dann ca 30km Luftlinie
Allerdings wen ich mir so einen Bodenbeobachtungspunkt aussuchen muss dann wäre das dann ja 10895 Fürstenzell mit 43km Luftlinie.

Gibt es sonst noch Dienste die sowas liefern?

ch.eick

Zitat von: sn0000py am 23 Februar 2021, 10:02:35
Ok, das heisst ich brauche nun einen Wetterdienst der mir diese Daten liefert :/

alternativ die nächste mögliche Adresse in Deutschland? Wäre dann ca 30km Luftlinie
Allerdings wen ich mir so einen Bodenbeobachtungspunkt aussuchen muss dann wäre das dann ja 10895 Fürstenzell mit 43km Luftlinie.

Gibt es sonst noch Dienste die sowas liefern?
Versuche doch einfach mal den Dienst in Fürstenzell. Ob es das in Österreich gibt kann ich nicht sagen. Ich hatte damals auch lange gesucht und vorher auch Proplanta
versucht. Da gibt es leider nur einen Wert für Rad als Summe des gesamtem Tages. Das gute beim DWD ist halt der Stundenwert.
Wenn Du Glück hast passen die Werte ja eventuell, oder lassen sich mit einem fixen Faktor etwas anpassen. Das siehst Du dann in den Diagrammen, es wäre dann aber
natürlich getrickst und somit noch unzuverlässiger. Manchmal reicht ja auch die Tendenz :-)
RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick

sn0000py

So mit den Werten von Fürstenzell schauen die Ergebnisse mal so aus wie ich es ca erwartet habe.

ch.eick

Zitat von: sn0000py am 23 Februar 2021, 11:20:28
So mit den Werten von Fürstenzell schauen die Ergebnisse mal so aus wie ich es ca erwartet habe.
Hast Du auch Solar_forecast() testweise eingebaut, oder nur die DWD Rad1h Werte mit dem Faktor aus Solar_Plain() bearbeitet?

VG
   Christian
RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick

sn0000py

hab das solar_forecast eingebaut - ich bin nun drann mir die wetterdaten (stündlic) von openweathermap API dazuholen für temperatur und cloud für meinen richtigen standort

jual

Hallo Zusammen,

eine kurze Info für alle, die parallel ggf. auch die Prognose mittels Solcast testen oder dies vorhatten. Hier hat es wohl kürzlich eine Änderung bzgl. der Anzahl Dachflächen gegeben.

Nachdem ich damit begonnen hatte, die Tuning-Funktion zu nutzen, damit meine Ost/West-Dächer besser abgebildet werden, habe ich nun die Nachricht bekommen, dass diese Funktion für "Hobbyisten" leider eingestellt wird. Dafür hat man mir das Angebot gemacht, dass ich nun zwei Flächen pflegen kann.

Sobald die Funktion frei geschaltet ist, werde ich mal sehen, wie die Genauigkeit der Prognose aussieht.

sn0000py

so mein erster Tag mit der Prognose lief mal durch
Ich bin noch zu hoch und auch etwas versetzt, was ist da der beste weg das zu korrigieren?

ch.eick

#205
Zitat von: sn0000py am 24 Februar 2021, 18:30:03
so mein erster Tag mit der Prognose lief mal durch
Ich bin noch zu hoch und auch etwas versetzt, was ist da der beste weg das zu korrigieren?
Das ist noch kein Versatz. Bitte korrigiere in den Solar_Plain() Funktion den Grenzwert, wie ich es schon geschrieben hatte.
Der steht jetzt bei elevation auf 0.14 und Du bist sehr nah dran. Also hier einen Wert wählen, der den Faktor bei dieser elevation um 08:00 Uhr noch auf 0.001 setzt.
Mit steigendem Sonnenstand am Morgen wird sich dann die Prognose auch morgens und abends auf 07:00 - 19:00 Uhr ausweiten.
Davor und danach macht eine Prognose keinen Sinn mehr, weshalb ich es in der Funktion sowieso nicht beinhalte.

Dann kannst Du in dem *_config  auch noch das reading "forecast_factor 1" allgemein für alle Forecast Werte zum Dämpfen verwenden.
Versuche mal "forecast_factor 0.7", dann sollten alle Wert unterhalb der realen Kurve liegen.
Du holst Dir ja die Deutschen Wetterdaten aus einer ziemlichen Entfernung, da müssen wir etwas kreativ werden.

VG Christian
RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick

sn0000py

Hab nun mal die Kurve runtergestellt, mit dme Faktor 0.75 und die Daten von Passau genommen die sind etwas näher

Wobei mir sich da die Frage stellt, wäre es nicht klüger eine Station zu wählen die zwar weiter weg ist, aber dafür am gleichen Breitengrad - oder was wären die wichtigesten daten die übereinstimmen sollten?

Längengrad, Breitengrad, Höhe?

ch.eick

Zitat von: sn0000py am 24 Februar 2021, 20:03:48
Hab nun mal die Kurve runtergestellt, mit dme Faktor 0.75 und die Daten von Passau genommen die sind etwas näher

Wobei mir sich da die Frage stellt, wäre es nicht klüger eine Station zu wählen die zwar weiter weg ist, aber dafür am gleichen Breitengrad - oder was wären die wichtigesten daten die übereinstimmen sollten?
Wichtig wäre das gleiche Klima und die Wetterlage.

Zitat
Längengrad, Breitengrad, Höhe?
Das muss schon bei Dir zuhause sein, damit die Winkel zur Sonne stimmen ;-) Bei einem hohen Haus ist auch die Höhe relevant.

Wenn Du jetzt noch die Begrenzung veränderst, dann knickt die Kurve um 8:00 Uhr noch ein.
Du warst mit dem elevation Winkel glaube ich bei 0.148... , dann setzt doch mal 0.15 ein, oder gehe noch näher an die Nachkommastellen.

if ($elevation <= 0.14)

Mein Forecast ist auch erst um 18:00 Uhr auf 0 und ich habe mehr Höhen und Tiefen, was aber an der Wolken Korrektur liegen kann.

VG  Christian
RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick

sn0000py

Die frage mit Längengrad, Breitengrad und Höhe bezog sich auf die Wetterstation die theoretisch für mich besser wäre, also sollte ich am selben Längengrad oder am selben Breitengrad suchen. Oder ist die Höhe über dem Meer  wichtiger das die zu meinen Daten passt?

ich muss mit dem elevation auf 0.16 gehen, damit er mir den wert auf 0 runterschaltet bei 8 uhr.
Ich glaube ich werde da dann korrekturwerte für die einzelnen Stunden hinterlegen.

Ich habe mal die 2 Wetterdienste angehalten, damit sich die Werte nicht änderen, (beim DWD verschwinden ja dann irgendwann mal die vergangengen Rad1h werte)
dann werde ich heute abend wenn die PV ISt Kurve fertig ist, mal mit Korrekturwerten spielen.

ch.eick

#209
Zitat von: sn0000py am 25 Februar 2021, 09:05:49
Die frage mit Längengrad, Breitengrad und Höhe bezog sich auf die Wetterstation die theoretisch für mich besser wäre, also sollte ich am selben Längengrad oder am selben Breitengrad suchen. Oder ist die Höhe über dem Meer  wichtiger das die zu meinen Daten passt?
Das hat nichts mit Längen/Breiten grad zu tun, sonder mit vergleichbarem Wetter und Klima.
Zitat
ich muss mit dem elevation auf 0.16 gehen, damit er mir den wert auf 0 runterschaltet bei 8 uhr.
Ich glaube ich werde da dann korrekturwerte für die einzelnen Stunden hinterlegen.
0.16 ist warscheinlich zu scharf, wähle ruhig einen Wert, mit mehr Nachkommastellen. Der große glühende Reaktor ist weit weg und die Zahlen der Astrologie riesig :-)
In einer Funktion für Winkelberechnung hat das nichts zu suchen, da geht es nur um Gültigkeitsbereiche.
Für die Korrekturwerte gibt es dann die Autokorrektur, die anhand der Abweichung der letzten Tage dynamisch eingreift. Auch dort habe ich einen Allgemeinen Faktor eingebaut.
Es müsste dann nur auf Deinen WR mit dem passenden reading konfiguriert werden.

Zitat
Ich habe mal die 2 Wetterdienste angehalten, damit sich die Werte nicht änderen, (beim DWD verschwinden ja dann irgendwann mal die vergangenen Rad1h werte)
dann werde ich heute abend wenn die PV ISt Kurve fertig ist, mal mit Korrekturwerten spielen.

Das DbRep solltest Du haben:
@days 3 berechnet die Korrektur über die letzten drei tage, das reagiert etwas schneller
@corr 0.7 dämpft die Autokorrektur, damit nicht zu sehr übersteuert wird

@device wäre dann Dein WR
@reading1 die Summe über Deine Realleistung. Ich verwende da die DC Seite, weil bei mir am String 3 ein Speicher hängt.
@reading2 ist der Stundenweise Forecast fc0 , der erstmalig am Morgen erstellt wird. Daraus wird die Abweichung von den Vortagen berechnet.
@readingname ist die Namensbasis der Autokorrektur readings, die dann in der DB beim  WR Device eingetragen werden.

defmod LogDBRep_PV_Forecast_SQL DbRep LogDB
attr LogDBRep_PV_Forecast_SQL DbLogExclude .*
attr LogDBRep_PV_Forecast_SQL allowDeletion 1
attr LogDBRep_PV_Forecast_SQL room System
attr LogDBRep_PV_Forecast_SQL sqlCmdHistoryLength 5
attr LogDBRep_PV_Forecast_SQL sqlCmdVars SET @days:=3, @corr:=0.7, @diff:=0, @temp:=0, @device:='PV_1', @reading1:='Total_DC_Power_(sumOfAllPVInputs)', @reading2:='Solar_Calculation_fc0', @readingname:='Solar_Correction_Faktor_auto' ;;


Der Forecast wird dann so gestartet:
PV_1 wäre Dein WR

{Solar_forecast("LogDB","LogDBRep_PV_Forecast_SQL","PV_1","Solar_Calculation_fc","DWD_Forecast",0)}

## auch für den nächsten Tag wird es verwendet
{Solar_forecast("LogDB","LogDBRep_PV_Forecast_SQL","PV_1","Solar_Calculation_fc","DWD_Forecast",1)}


In Deiner *_config musst Du dann die Autokorrektur aktivieren
setreading <Deine>_config forecast_factor_autocorrection 1

Die Autokorrektur kann sofort verwendet werden und hat auch sofort ein Ergebnis, da es direkt auf die letzten "drei" Tage in der Datenbank zugreift. Es muss also nicht erst lange gewartet werden, damit diese "lernt".

Gruß
     Christian
RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick