Hallo zusammen,
Ich habe ein Balkonkraftwerk in Betrieb genommen.
Die aktuelle Leistung wird über ein Shelly Plug S ermittelt.
Nun habe ich eine Berechnung als userReading erstellt die so aussieht:
PV_Produktion_Gesamt integral {ReadingsVal("shelly_bkw","power",0)/3600000},
Wenn ich am tagesende nun den errechneten Wert vergleichen kommt eine hohe Abweichung dabei heraus:
- Erzeugte Energie aus der App des Wechselrichters = 1,79 kWh
- Erzeugte Energie von dem Zähler des Shelly's = 1,588 kWh
- Erzeugte Energie errechnet durch das oben genannte userReading = 0,9455 kWh
Anfänglich dachte ich dass evtl. die Abtastrate eine Abweichung erzeugt aber aktuell ist das Intervall für die Abfrage des Shelly's 1 Sekunde und auch dann ist das Ergebnis von mindestens einem der Werte falsch.
Im weiteren habe ich eine Berechnung erstellt bei der, bei negativem Wert des Stromzählers, den negativen Wert vom Shelly-Wert abgezogen wird und daraus die erzeugte Energie mit Integral ausgibt.
Aber wenn schon die Berechnung der gesamten Energie nicht stimmt komm ich da nicht weiter.
Kann mir hier jemand weiterhelfen was ich ändern muss damit die Abweichung kleiner wird?
greetz Joe
Hallo Joejoe,
ich kann dir nur raten eine Blitzwolf SHP6 / Gosund SP111 Steckdose zu kaufen und TASMOTA darauf zu flashen.
Anschließend die Steckdose mit einer Glühbirne (z.B. 60W) kalibrieren und diese für deine Berechnungen verwenden. So mache ich das auch.
Die Steckdose zeigt bereits per default die Energie von heute/gestern/gesamt an, sowass du diese Werte nur noch in FHEM per MQTT übertragen musst.
In meinem Wiki habe ich beschrieben, wie man die Steckdose kalibriert:
http://wiki.gorjup.de/doku.php?id=public:fhem_blitzwolf_shp6 (http://wiki.gorjup.de/doku.php?id=public:fhem_blitzwolf_shp6)
Gruß
Thomas
Hi,
bei mir (MQTT2 Anbindung) gibt es beim Shelly Plug S das Reading relay_0_energy (watt minuten)
Das speichere ich dauerhaft als Energiezähler mit einem userReadings:
relay_0_energy_total:relay_0_energy:.* monotonic {ReadingsNum("$name","relay_0_energy",0)}
Warum selbst rechnen, das Gerät ermittelt den Wert
Kann sein im shelly Modul heißt das Reading anders, siehe auch die Doku
https://shelly-api-docs.shelly.cloud/gen1/#shelly-plug-plugs-meter-0
BTW: ich meine: der Shelly Plug S ist um Welten besser als die Gosund SP111
Gruß Otto
Hallo,
Vielen Dank für die Antworten.
Mein Ziel ist es den realen Eigenverbrauch zu ermitteln. Das Versuche ich mit einem Shelly der ja, wie von Otto123 beschrieben, eine internen Zähler hat.
Da das Ergebnis eines solchen Zählers aber immer die komplette Summe der eingespeisten Energie ist bringt mich das nicht weiter.
Ich will die aktuelle Leistung des BKW minus dem Wert vom Stromzähler (wenn dieser ins negative läuft), und daraus über die Zeit die verbrauchte Energie berechnen lassen.
Ich dachte das könnte ich mit der Integral-Rechnung machen aber die große Abweichung hat mich stutzig gemacht und ich habe eine Energieberechnung aufgestellt wie im Anfangspost angegeben ist.
Dabei kamen eben diese Abweichungen heraus.
Kann ich evtl eine eigene Formel fürs Integralrechnen erstellen? :o
Gruß Joe
Also die aktuelle Leistung liefert der Shelly auch.
Keine Vorstellung wie ein Stromzähler ins negative läuft - aber wenn Du für beides absolute Zählerstände hast (Energiezähler) dann nimm doch die Werte und addiere oder subtrahiere diese.
ZitatDa das Ergebnis eines solchen Zählers aber immer die komplette Summe der eingespeisten Energie ist bringt mich das nicht weiter.
Du kannst doch zu bestimmten Zeiten die Zählerstände nehmen und Differenzen bilden?
Also 14000 um 12:00 und 13000 um 11:00 ergibt 1000 in der Stunde.
ZitatBTW: ich meine: der Shelly Plug S ist um Welten besser als die Gosund SP111
Beides schlecht, weil Wifi. :P
Aber ernsthaft: Du kannst die "Abtastrate" noch so klein machen, das Wetter wird Dir IMMER einen Fehler verursachen. Daher ist
ZitatDu kannst doch zu bestimmten Zeiten die Zählerstände nehmen und Differenzen bilden?
genau richtig. So mache ich es auch. :)
Ich mache es alle 10', weil ich mir aus dem Ertrag die Einstrahlung auf die verschiedenst ausgerichteten Gebäudeteile(Tagesverläufe) ermittle und diese später als Tageswert(statistics-Modul) haben möchte
Zitat von: KölnSolar am 13 Oktober 2022, 09:17:36
Beides schlecht, weil Wifi. :P
Stimmt, aber ich meinte vor allem die Messeinheit und das Handling. Shelly hat ne ordentliche Firmware und den muss man nicht erst "knacken".
Insofern fand ich die Empfehlung einen Shelly Plug S durch einen SP111 zu ersetzen nicht zielführend.
Zitat von: Joejoe am 12 Oktober 2022, 21:43:59
Kann ich evtl eine eigene Formel fürs Integralrechnen erstellen? :o
Kannst du nicht, da du keine Funktion definieren kannst, die deinem Verbrauch entsprechen würde. Du kannst nur punktuell die Leistungsdaten zusammen rechnen. Alleine eine Auflösung von 1 Sekunde ist schon zu viel. Daher Leistung immer das Leistungsmessgerät berechnen lassen, Energie über einen Zeitraum als Differenz der Energie-Zählerstände bestimmen. Dazu gibt es hier im Forum alle paar Wochen ein Thread dazu.
ZitatKannst du nicht, da du keine Funktion definieren kannst, die deinem Verbrauch entsprechen würde
Das ist zunächst einmal falsch. Integralrechnung funktioniert nicht nur mit "definierten Funktionen", sondern problemlos auch mit zeitdiskreten numerischen Werten - man muss nur wissen, was man tut.
Die nachträgliche Integration von Leistungsdaten, die aus einem Reading stammen, ist allerdings in diesem Falle Unsinn. Denn dies ist beim Shelly tatsächlich NICHT die Durchschnittsleistung der vergangenen Messperiode, sondern die momentane Leistung. Bei anderen Leistungsmessgeräten (etwa den guten alten EMxxx) war das anders. Es bleibt also nichts anderes übrig, als die Energiemessung des Shelly zu akzeptieren.
LG
pah
Die Leistungsmessung des Shelly's akzeptiere ich soweit auch weil sie mit den Werten des Stromzählers in etwa übereinstimmen.
Ich habe leider kein Wert der ins Netz eingespeisten Energie.
Stromzähler: aktuelle Leistung und Gesamtenergie (bei Einspeisung geht der Leistungswert ins Minus und die Gesamtenergie bleibt stehen)
Shelly: aktuelle Leistung und Gesamtenergie
Aus diesen Werten kann ich nach meinem Wissen keine Berechnung des realen Eigenverbrauchs anstellen oder?
Mein Versuch war es: integral {if 'aktuelle Leistung des Stromzählers' < 0 {return 'aktuelle Leistung des Shellys' - 'negative Leistung des Stromzählers' /3600} else {return 'aktuelle Leistung des Shellys' / 3600}
Zitat von: Joejoe am 16 Oktober 2022, 11:57:13
Aus diesen Werten kann ich nach meinem Wissen keine Berechnung des realen Eigenverbrauchs anstellen oder?
Mein Versuch war es: integral {if 'aktuelle Leistung des Stromzählers' < 0 {return 'aktuelle Leistung des Shellys' - 'negative Leistung des Stromzählers' /3600} else {return 'aktuelle Leistung des Shellys' / 3600}
Vergiss die Sache mit dem Integral. Wie hier schon wiederholt geschrieben wurde: dein Shelly liefert einen punktuellen Leistungswert, dieser kann sich innerhalb einer Sekunde mehrfach ändern und das bekommst du nicht mit. Beispiel, dein Shelly liefert 2 kWatt und paar Millisekunden später sind es nur noch 100 Watt, dann würde deine Integralberechnung von 2 kWatt bis zum nächsten Wert ausgehen, obwohl es in dieser Zeitspanne vielleicht im Schnitt nur 130 Watt gewesen sind.
Der Eigenverbrauch ist einfach zu berechnen als: Eigenverbrauch_Energie=PV_Energie - eingespeiste_Energie
Die einzige Voraussetzung ist, dass es sich um den gleichen Zeitraum handeln muss.
Hiermit habe ich abstrakt etwas programmiert, was für alle möglichen Zähler funktioniert: https://wiki.fhem.de/wiki/DOIF/Automatisierung#Tages-.2C_Monats-_und_Jahresstatistik_f.C3.BCr_Strom-.2C_Gas-.2C_Wasserz.C3.A4hler_und_andere_Z.C3.A4hler
Die durchschnittliche Leistung der letzten Minute berechne ich dagegen über userReadings im Tasmota-MQTT-Device: siehe (und vorherige)
https://forum.fhem.de/index.php/topic,97959.msg1225965.html#msg1225965
ZitatDie einzige Voraussetzung ist, dass es sich um den gleichen Zeitraum handeln muss.
Auch falsch.
Man kann mit wenigen Codezeilen beide Werte, die zu unterschiedlichen Zeitpunkten gemessen worden sind, auf den gegenwärtigen Berechnungszeitpunkt extrapolieren.
Das mache ich sowohl in meiner seit 2011 laufenden Spezialversion des EMxxx-Moduls (findet man im contrib), als auch im Modul OWCOUNT (Extrapolation auf den Wert um Mitternacht).
LG
pah
Ich kann leider mit den letzten 2 Posts nichts anfangen.
Mein Ziel ist es den realen Ertrag des Balkonkraftwerks festzuhalten.
Mein Stromzähler des EVU hat nur eine Richtung.
Werte die ich aktuell zum rechnen habe:
Stromzähler : aktuelle Leistung (geht bei Überschuss des Balkonkraftwerks ins negative), Gesamtzählerstand (bleibt stehen wenn Leistung negativ ist), Tagesenergie (Letzte 24h), Wochenenergie , Monatsenergie
Shelly : aktuelle Leistung, Gesamtzählerstand der vom Balkonkraftwerk eingespeisten Energie
Wie kann ich hier weiter kommen?
Zitat von: Joejoe am 16 Oktober 2022, 17:32:26
Ich kann leider mit den letzten 2 Posts nichts anfangen.
Mein Ziel ist es den realen Ertrag des Balkonkraftwerks festzuhalten.
Mein Stromzähler des EVU hat nur eine Richtung.
Werte die ich aktuell zum rechnen habe:
Stromzähler : aktuelle Leistung (geht bei Überschuss des Balkonkraftwerks ins negative), Gesamtzählerstand (bleibt stehen wenn Leistung negativ ist), Tagesenergie (Letzte 24h), Wochenenergie , Monatsenergie
Shelly : aktuelle Leistung, Gesamtzählerstand der vom Balkonkraftwerk eingespeisten Energie
Wie kann ich hier weiter kommen?
Ich würde mir vermutlich eher einen Zweirichtungszähler zulegen, der getrennt beide Richtungen zählt.
Also mit Berechnung auch keine Annäherung an den gewünschten Wert möglich? :-[
Zitat von: Joejoe am 16 Oktober 2022, 18:21:34
Also mit Berechnung auch keine Annäherung an den gewünschten Wert möglich? :-[
Wie oft liest du den Hauszähler aus? Es geht eigentlich nur darum die fehlende mögliche Einspeiseenergie des Hauszählers zu berechnen. Die erzeugte Energie der PV hast du ja.
Der Stromzähler schickt standardmäßig jede Sekunde die aktuelle Leistung. Das habe ich reduziert auf threshold von 5Watt bei event-on-change-reading damit der Log nicht übermäßig voll geschrieben wird.
Der Zählerstand (Energie) wird zum Zeitpunkt des triggers von der Leistung mitgeschrieben.
Hilft das weiter?
Zitat von: Joejoe am 17 Oktober 2022, 12:37:40
Der Stromzähler schickt standardmäßig jede Sekunde die aktuelle Leistung. Das habe ich reduziert auf threshold von 5Watt bei event-on-change-reading damit der Log nicht übermäßig voll geschrieben wird.
Der Zählerstand (Energie) wird zum Zeitpunkt des triggers von der Leistung mitgeschrieben.
Hilft das weiter?
Dann kannst du die Einschränkungen rausnehmen, damit jeder Wert im Sekundentakt durchkommt und dann noch mal deine Integralmessung auf den Hauszähler am besten über Nacht (ohne PV-Einspeisung) laufen lassen und die errechnete Energiemenge mit der tatsächlichen vom Hauszähler vergleichen. Wenn du Glück hast und die Abweichung gering ist, könntest du darauf aufbauen. Dh. abhängig vom Vorzeichen zwei Berechnungen durchführen (für Bezug und mögliche Einspeisung) und wenn das funktioniert den Eigenbedarf, wie bereits von mir vorgeschlagen, berechnen. Und wenn das zufriedenstellend funktioniert baust du dir für 5 Euro einen D1 mit Tasmota und berechnest per Rule Einspeisung und Bezug in Tasmota und sendest nur noch im Minutentakt per mqtt Einspeise/Bezugsenergie Richtung FHEM.
Dann viel Spaß beim Experimentieren.
gibt es da nicht ein grundsätzliches problem mit der anzahl der phasen, die den energiewerten zugrunde liegen?
hauszähler 3 phasen, balkonkraftwerk 1 phase.
Zitat von: frank am 17 Oktober 2022, 15:00:45
gibt es da nicht ein grundsätzliches problem mit der anzahl der phasen, die den energiewerten zugrunde liegen?
hauszähler 3 phasen, balkonkraftwerk 1 phase.
Nein der Hauszähler saldiert alle Phasen. Er muss nur berechnen wie viel er eingespeist (PV-Leistung > Summe der Verbräuche auf allen Phasen) hätte, wenn er einen Zweirichtungszähler hätte. Dann wüsste er ja, dass die Differenz seiner PV-Energie und der vermeintlich eingespeisten Energie, im Haus geblieben sein muss (Eigenverbrauch).
Edit: In Wirklichkeit speist er ja real ein, ohne dass es vom Zähler berechnet wird, da er kein Geld für die Einspeisung bekommt.
ZitatEr muss nur berechnen wie viel er eingespeist (PV-Leistung > Summe der Verbräuche auf allen Phasen) hätte, wenn er einen Zweirichtungszähler hätte.
bsp:
- auf allen 3 phasen werden konstant je 1kwh verbraucht.
- bkw erzeugt konstant 2kwh. => 1kwh wird eingespeist und 1kwh eigenverbrauch
- => hauszähler zeigt 2kwh (1+1+0) netzbezug an.
oder was zeigt der hauszähler an?
Zitat von: frank am 17 Oktober 2022, 16:34:33
bsp:
- auf allen 3 phasen werden konstant je 1kwh verbraucht.
- bkw erzeugt konstant 2kwh. => 1kwh wird eingespeist und 1kwh eigenverbrauch
- => hauszähler zeigt 2kwh (1+1+0) netzbezug an.
oder was zeigt der hauszähler an?
Die Hauszähler sind so gebaut, dass sie in diesem Fall 3 kW - 2 kW = 1kW Verbrauch anzeigen und keinerlei Einspeisung (auch wenn du auf einer Phase 1 kW tatsächlich einspeisen würdest).
Daher stimmt auch die Rechnung PV (2 kW) - Einspeisung (0 kW)= 2 kW Eigenverbrauch.
Ich merke, du besitzt keine PV-Anlage, sonst wüsstest du das.
Zitat von: Damian am 17 Oktober 2022, 12:56:34
Dann kannst du die Einschränkungen rausnehmen, damit jeder Wert im Sekundentakt durchkommt und dann noch mal deine Integralmessung auf den Hauszähler am besten über Nacht (ohne PV-Einspeisung) laufen lassen und die errechnete Energiemenge mit der tatsächlichen vom Hauszähler vergleichen. Wenn du Glück hast und die Abweichung gering ist, könntest du darauf aufbauen. Dh. abhängig vom Vorzeichen zwei Berechnungen durchführen (für Bezug und mögliche Einspeisung) und wenn das funktioniert den Eigenbedarf, wie bereits von mir vorgeschlagen, berechnen.
Das werde ich probieren!
Zitat
Und wenn das zufriedenstellend funktioniert baust du dir für 5 Euro einen D1 mit Tasmota und berechnest per Rule Einspeisung und Bezug in Tasmota und sendest nur noch im Minutentakt per mqtt Einspeise/Bezugsenergie Richtung FHEM.
Der Stromzähler wird schon mit Tasmota über IR-Dioden ausgelesen und mit MQTT an FHEM geschickt!
Gibt es Beispiele für Rules mit denen ich arbeiten kann?
Zitat von: Joejoe am 17 Oktober 2022, 19:44:25
Das werde ich probieren!Der Stromzähler wird schon mit Tasmota über IR-Dioden ausgelesen und mit MQTT an FHEM geschickt!
Gibt es Beispiele für Rules mit denen ich arbeiten kann?
Ich kenne dazu keine konkreten Beispiele. Meine Idee wäre: Trigger auf Leistungswert, wenn Leistungswert negativ, dann Einspeiseenergie = Einspeiseenergie -Leistungswert/3600/1000
Im Speicher Einspeiseenergie hättest du dann die eingespeiste Energie in kWh. Die Rechnung geht von einer Sekunde aus und wir wollen hoffen von einem "durchschnittlichen" Leistungswert in Watt des Zählers der letzten Sekunde.
Rules findest du hier: https://tasmota.github.io/docs/Rules/#rule-syntax
Zitat von: Damian am 17 Oktober 2022, 20:08:02
Ich kenne dazu keine konkreten Beispiele. Meine Idee wäre: Trigger auf Leistungswert, wenn Leistungswert negativ, dann Einspeiseenergie = Einspeiseenergie -Leistungswert/3600/1000
Mhh ich steige noch nicht ganz durch:
Einspeiseenergie ist für mich kWh z.B. vom Shelly des BKW. Nehme ich da den Tageswert oder den aktuellen Wert?
Leistungswert ist für mich aktuelle Leistung in Watt (vom Stromzähler oder Shelly/BKW).
100W/3600/1000 = 0,0000277778 kWh
Mir fehlt der Zeitbezug :o
Noch etwas ist mir aufgefallen, das Verhältnis war die letzten 2 Tage (seit dem ich vergleiche) annähernd gleich:
Gestern> Shelly Leistung = 0,345 kWh ; Errechnete Gesamtleistung = 0,196 kWh >Faktor = 0,568
Heute> Shelly Leistung = 1,5087 kWh ; Errechnete Gesamtleistung = 0,859833 kWh > Faktor = 0,5699
Das ist schon fast ein Muster :o
Zitat von: Joejoe am 17 Oktober 2022, 21:18:15
Mhh ich steige noch nicht ganz durch:
Einspeiseenergie ist für mich kWh z.B. vom Shelly des BKW. Nehme ich da den Tageswert oder den aktuellen Wert?
Leistungswert ist für mich aktuelle Leistung in Watt (vom Stromzähler oder Shelly/BKW).
100W/3600/1000 = 0,0000277778 kWh
Mir fehlt der Zeitbezug :o
Du hast die Zeit in der Berechnung des Integrals vergessen. Ja, das ist die eingespeiste Energie einer Sekunde. Multipliziere es mit 3600, dann weißt du wie viel Energie es in einer Stunde wäre ;)
Wir reden immer noch von deinem Hausanschlusszähler.
Zitat von: Damian am 17 Oktober 2022, 19:31:50
Die Hauszähler sind so gebaut, dass sie in diesem Fall 3 kW - 2 kW = 1kW Verbrauch anzeigen und keinerlei Einspeisung (auch wenn du auf einer Phase 1 kW tatsächlich einspeisen würdest).
Daher stimmt auch die Rechnung PV (2 kW) - Einspeisung (0 kW)= 2 kW Eigenverbrauch.
Ich merke, du besitzt keine PV-Anlage, sonst wüsstest du das.
erwischt, danke für die aufklärung.
das macht ein bkw doch deutlich attraktiver.
Zitat von: frank am 18 Oktober 2022, 11:22:13
erwischt, danke für die aufklärung.
das macht ein bkw doch deutlich attraktiver.
Selbst ein analoger Drehstromzähler würde sich nicht anders verhalten. Die Drehscheibe würde zum Stehen kommen, wenn du auf einer Phase so viel einspeist, wie du auf allen drei zusammen verbrauchst. Für ein BKW muss es aber schon einer mit Rücklaufsperre sein.