Wir wechseln das Forum am 14.11.24 auf die Forensoftware Discourse. Zwischen Montag Abend und Dienstag Nachmittag wird das Forum deaktiviert. Danach sind wir hoffentlich mit neuem Forum inkl. der vorhandenen Beiträge wieder am Start! Hier zum Forenbeitrag!

Benachrichtigungen
Alles löschen

[Grafana] wie "genutzte" PV Energie darstellen.

29 Beiträge
4 Benutzer
6 Reactions
2,177 Ansichten
3joern
(@3joern)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 69
Themenstarter  

Ahoi mdkeil, hab super vielen lieben Dank für Deine Mühe, aber ich glaube ich bin echt zu unerfahren, damit sinnvoll was anfangen zu können (durch Buttons/Grafiken klicken bekomm ich hin, aber Code... wie gesagt weiss ich nichtmal, ob ich den an der richtigen Stelle eingebaut habe), bzw ich bekomme folgenden Fehler Code 

error parsing query: found SELECT, expected identifier at line 3, char 9
Object
message:"InfluxDB Error: error parsing query: found SELECT, expected identifier at line 3, char 9"
data:Object
error:"error parsing query: found SELECT, expected identifier at line 3, char 9"
message:"error parsing query: found SELECT, expected identifier at line 3, char 9"
config:Object
method:"GET"
url:"api/datasources/proxy/uid/f68027bc-3a61-4083-af5c-878064565a61/query"
params:Object
db:"iobroker"
q:"SELECT Erzeugung - Einspeisung AS Eigenverbrauch FROM (
	SELECT integral(\"value\",1h) AS Erzeugung FROM \"mqtt.0.HM-600_3joern.ac.power\",
        SELECT integral(\"value\",1h) * (-1) AS Einspeisung FROM \"sonoff.0.PowerCounter.E320_Power_in\" WHERE value <= 0)
WHERE time >= now() - 9h and time <= now() GROUP BY TIME(1h) tz('Europe/Berlin')"
epoch:"ms"
data:null
precision:"ms"
inspect:Object
type:"influxdb"
paramSerializer:function serializeParams(e){…}
headers:Object
X-Grafana-Org-Id:1
retry:0
hideFromInspector:false

So hab ich den Code eingesetzt

 


   
AntwortZitat
mdkeil
(@mdkeil)
Autarkiekönig
Beigetreten: Vor 2 Jahren
Beiträge: 467
 

Wähle zuerst mal als Visualisierung "Time Series" aus.. und dann versuche es mal damit, (Erzeugung-Einspeisung) im Query in Klammern zu setzen.

Ich kann dir sonst noch anbieten (wenn Grafana von extern zugänglich ist), dass du mir einen Zugang einrichtest und ich dir die Queries direkt erstelle..

IBN: 07/2021
Fronius Symo 20.0-3-M : 13.2kWp S 45° + 3.96 kWp S 15° (Verschattung) &
Fronius Primo 3.0-1 : 2.97 kWp N 15° (Verschattung)
06/2023 : Speichererweiterung 14,34kWh DIY (EEL Gehäuse) LiFePO4 EVE LF280K @ Victron MP II 48/5000 - Seplos 10E BMS
######
Wallbox: 11kW echarge Hardy Barth Cpμ2 Pro - Überschuss-Steuerung via evcc.io
Peugeot e-208 Allure Pack seit 11.11.22!
Kia Niro EV Edition 7 seit 28.04.23.


   
AntwortZitat
3joern
(@3joern)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 69
Themenstarter  

Nochmals vielen vielen Dank für Deine Geduld und Mühe, ich habe versucht vorher mit NodeRed zu arbeiten und habe dabei als ich dann nach der influxdb geschaut habe das Verzeichnis zerschossen. Habe gerade die komplette Docker installation gelöscht, selten hat ein Thema soviel Zeit gefressen und ich sollte mal wieder Geld verdienen. Wegen Grafana werde ich auch nicht mehr Sonne haben, daher schau ich mir halt bei Bedarf die langweilige Tasmota Zähleroberfläche an... und ja ich kotze noch.

Hab ein schönes entspanntes Wochenende 

 

 


   
AntwortZitat
3joern
(@3joern)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 69
Themenstarter  

Ahoi, aus Gründen und Ehrgeiz konnt ich es doch nicht lassen 🤪

Habe das System neu installiert (geht ja dank yaml in 5min) und da ich ein Backup des Grafana JSON hatte, war das Ganze ratzfatz wieder da (leider sind die alten PV/Zähler Daten weg, aber ist ok) nun habe ich Dein Vorschlag @mdkeil nochmal versucht und einzeln aufgedröselt, dass ich es verstehe, bzw so eingebaut, dass es "irgendwie" funktioniert. Parallel habe ich auch noch mit den Tageswerten was gebastelt (das andere Beispiel ist ja auf Stundenbasis). Irgendwie erscheinen mir die Zahlen aber nicht diese zu sein, die ich gerne hätte um am Ende des Tages zu sehen, was die PV den zu meinem gesamt Tagesbedarf beigetragen hat. Aber ich denke ich nähere mich.

@mdkeil Danke für Dein Angebot mit der direkten Hilfe, das ich gerne annehmen würde, doch da ich das auch gerne besser verstehen würde, wäre sowas bei einer Screensharing Session evt nochmal viel besser/nachhaltiger. Zumal externer Zugang nur per VPN wäre und dann auf mein gesamt Büronetzwerk, was semi optimal wäre 😉 Lass mich wissen, wenn Du Lust hättest, würde mich freuen.

Hier mal die Beispiele:

Das mit dem Query Code von mdkeil

 

Das von mir auf Tagesbasis


   
AntwortZitat
mdkeil
(@mdkeil)
Autarkiekönig
Beigetreten: Vor 2 Jahren
Beiträge: 467
 

Du kannst "meinen" Code auch auf Tagesbasis machen.. Group by time(1d) ..unter query options dann aber z.B. unter Relative time 7d eintragen, dann bekommst Du die letzen 7 Tage angezeigt..

IBN: 07/2021
Fronius Symo 20.0-3-M : 13.2kWp S 45° + 3.96 kWp S 15° (Verschattung) &
Fronius Primo 3.0-1 : 2.97 kWp N 15° (Verschattung)
06/2023 : Speichererweiterung 14,34kWh DIY (EEL Gehäuse) LiFePO4 EVE LF280K @ Victron MP II 48/5000 - Seplos 10E BMS
######
Wallbox: 11kW echarge Hardy Barth Cpμ2 Pro - Überschuss-Steuerung via evcc.io
Peugeot e-208 Allure Pack seit 11.11.22!
Kia Niro EV Edition 7 seit 28.04.23.


   
3joern reacted
AntwortZitat
3joern
(@3joern)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 69
Themenstarter  

Hab vielen Dank, das hatte ich auch schon mal getestet und läuft. Mich würde noch interessieren, was dieser Teil da genau macht (um das Ganze zu verstehen)

SELECT integral("value", 1h) * (-1) AS Einspeisung

Werden damit nur die Negativ Werte (also Einspeisung) berücksichtigt? aber das ist ja innerhalb von einer Stunde ("value", 1h) zusammengefasst/im Schnitt oder?
Ansonsten ist das Ergebnis richtig, das Du mit dem Code bezweckt hast? also ist die Umsetzung so richtig?


   
AntwortZitat
mdkeil
(@mdkeil)
Autarkiekönig
Beigetreten: Vor 2 Jahren
Beiträge: 467
 

Veröffentlicht von: @3joern

SELECT integral("value", 1h) * (-1) AS Einspeisung

Das muss man natürlich im Gesamten sehen, da dort ja noch die WHERE value < 0 - Klausel enthalten ist.. sprich von deinem AC-power-Wert werden nur die negativen Anteile (also die Einspeisung) betrachtet.. die integral-Funktion nimmt sich nun diese "negativen" Anteile und berechnet die Fläche unter der Kurve (also das Intergral) in Blöcken von 1h, damit wir am Ende als Ergebnis aus kWh erhalten.. die *(-1) ist zusätzlich eingefügt, um einen positiven Betrag zu erhalten 😉

IBN: 07/2021
Fronius Symo 20.0-3-M : 13.2kWp S 45° + 3.96 kWp S 15° (Verschattung) &
Fronius Primo 3.0-1 : 2.97 kWp N 15° (Verschattung)
06/2023 : Speichererweiterung 14,34kWh DIY (EEL Gehäuse) LiFePO4 EVE LF280K @ Victron MP II 48/5000 - Seplos 10E BMS
######
Wallbox: 11kW echarge Hardy Barth Cpμ2 Pro - Überschuss-Steuerung via evcc.io
Peugeot e-208 Allure Pack seit 11.11.22!
Kia Niro EV Edition 7 seit 28.04.23.


   
3joern reacted
AntwortZitat
3joern
(@3joern)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 69
Themenstarter  

Oha, ich dacht ich habs kapiert, mal (sinngemäß) rumgespielt aber irgendwie macht das Ergebnis keinen Sinn, oder kann man das nicht auf 60s runterbrechen? 

 

PS, dank Dir @mdkeil bin ich weiter als je gedacht und komm immer mehr rein, langsam wird das zur Sucht 🤩   

Zur info, hier der aktuelle Darstellungsstand gesamt (ein Fest für mich als UI Designer)


   
AntwortZitat
mdkeil
(@mdkeil)
Autarkiekönig
Beigetreten: Vor 2 Jahren
Beiträge: 467
 

geht voran 😉 Zum Wording.. statt "Eigentlicher Verbrauch" schreib mal lieber "Eigenverbrauch" oder "PV-Direktverbrauch".

IBN: 07/2021
Fronius Symo 20.0-3-M : 13.2kWp S 45° + 3.96 kWp S 15° (Verschattung) &
Fronius Primo 3.0-1 : 2.97 kWp N 15° (Verschattung)
06/2023 : Speichererweiterung 14,34kWh DIY (EEL Gehäuse) LiFePO4 EVE LF280K @ Victron MP II 48/5000 - Seplos 10E BMS
######
Wallbox: 11kW echarge Hardy Barth Cpμ2 Pro - Überschuss-Steuerung via evcc.io
Peugeot e-208 Allure Pack seit 11.11.22!
Kia Niro EV Edition 7 seit 28.04.23.


   
AntwortZitat
3joern
(@3joern)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 69
Themenstarter  

Veröffentlicht von: @mdkeil

Zum Wording.. statt "Eigentlicher Verbrauch" schreib mal lieber "Eigenverbrauch" oder "PV-Direktverbrauch".

😜 Das ist noch im alten Kontext, das ist der "eigentliche" Hausverbrauch (also Zähler plus PV) was aber gerade wieder keinen Sinn macht, denn wenn ich nur 500 Watt anstatt 600 Watt PV hätte und -300 am Zähler steht, heisst das ja nicht das ich unbedingt auch 300 bzw 200 verbrauche, oder? Ah ne doch, das stimmt so, dann würde es noch mehr oder weniger minus, also Einspeisung zum Nachbar geben. Maaaaan meine linke Gehirnhälfte bringts echt nicht bin 150% rechtslastig (nicht politisch, nur Hirn). Daher nochmal die Frage zum ersten Screenshot, da eigentlich zu dem Zeitpunkt 315W "PV genutzt" würden und nicht 60W... also irgendwie stimmen die letzten beiden (neuen) Ergebnisse nicht 🤯 🤯 🤯 🤯 

Tante Edit: Also zur Verdeutlichung hier mal einfache Bespiele. Ziel sind die Werte der orangenen Spalte einmal als Gauge Minutenaktuell und einmal als Wochenansicht mit 7 Tage Bars. Ist da Dein Rechenweg wirklich der richtige?

 

 


   
AntwortZitat
mdkeil
(@mdkeil)
Autarkiekönig
Beigetreten: Vor 2 Jahren
Beiträge: 467
 

Also die Daten in der Tabelle sind plausibel..

Die Formel für den Hausverbrauch (ohne Speicher) ist wie folgt:

Hausverbrauch = Eigenverbrauch + Netzbezug
Eigenverbrauch = PV-Erzeugung - Einspeisung

Das deckt sich auch mit deiner Tabelle.

IBN: 07/2021
Fronius Symo 20.0-3-M : 13.2kWp S 45° + 3.96 kWp S 15° (Verschattung) &
Fronius Primo 3.0-1 : 2.97 kWp N 15° (Verschattung)
06/2023 : Speichererweiterung 14,34kWh DIY (EEL Gehäuse) LiFePO4 EVE LF280K @ Victron MP II 48/5000 - Seplos 10E BMS
######
Wallbox: 11kW echarge Hardy Barth Cpμ2 Pro - Überschuss-Steuerung via evcc.io
Peugeot e-208 Allure Pack seit 11.11.22!
Kia Niro EV Edition 7 seit 28.04.23.


   
3joern reacted
AntwortZitat
3joern
(@3joern)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 69
Themenstarter  

Einige Rechnungen stimmen noch nicht ganz bei den Graphen, da bin ich am optimieren.

Wie könnte man denn Darstellen, wenn zB der Einspeisewert unter Null ist, aber trotzdem die Punkte davor verbunden werden?

SELECT last("value") * (-1) AS Einspeisung
FROM "autogen"."sonoff.0.PowerCounter.E320_Power_in" 
WHERE value <= 0 AND $timeFilter
GROUP BY time($__interval) fill(0)

Hier mit siehts so aus

Da werden alle Zwischenwerte auf Null reduziert, die hätte ich aber gerne verbunden, nur wenn keine Einspeisung ist, soo der Null fahren.

SELECT last("value") * (-1) AS Einspeisung
FROM "autogen"."sonoff.0.PowerCounter.E320_Power_in" 
WHERE value <= 0 AND $timeFilter
GROUP BY time(1s)

So bleibt er natürlich auf dem letzten Wert stehen, was ja auch nicht richtig ist

Hast eine Idee?


   
AntwortZitat
mdkeil
(@mdkeil)
Autarkiekönig
Beigetreten: Vor 2 Jahren
Beiträge: 467
 

probiere mal das.. du bekommst die Werte ja eh nur alle 60s oder?

 

SELECT last("value") * (-1) AS Einspeisung
FROM "autogen"."sonoff.0.PowerCounter.E320_Power_in" 
WHERE value < 0 AND $timeFilter
GROUP BY time(1m) fill(0)

IBN: 07/2021
Fronius Symo 20.0-3-M : 13.2kWp S 45° + 3.96 kWp S 15° (Verschattung) &
Fronius Primo 3.0-1 : 2.97 kWp N 15° (Verschattung)
06/2023 : Speichererweiterung 14,34kWh DIY (EEL Gehäuse) LiFePO4 EVE LF280K @ Victron MP II 48/5000 - Seplos 10E BMS
######
Wallbox: 11kW echarge Hardy Barth Cpμ2 Pro - Überschuss-Steuerung via evcc.io
Peugeot e-208 Allure Pack seit 11.11.22!
Kia Niro EV Edition 7 seit 28.04.23.


   
3joern reacted
AntwortZitat
3joern
(@3joern)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 69
Themenstarter  

sooo, langsam bekomme ich hin, dass die Daten konsistent sind. Meist aber erst nach einer manuellen Dash Aktualisierung obwohl alle 30sek automatisch aktualisiert werden sollte - da stimmen dann meist die Einspeisedaten (mit der Lustigen Formel SELECT integral("value", 1h) * (-1) AS Einspeisung) erstmal nicht, als ob er da hängt.

Eine Idee woran das liegen könnte?

Dann noch eine Frage, weiss jemand wie ich den Aktivitätsstatus, also ob der Hoymilewechselrichter gerade normal funktioniert, auslesen kann? im OpenDTU sind so viele Aktivitätsanzeigen, das ich nicht weiss, welcher denn für das grün blickende LED Lichtlein auf dem WR steht. Möchte das wissen, da ich zB beim Zähler Power Flow immer Aussetzer der Daten zur Mittagszeit habe.

zB unter MQTT Verzeichnis 0 habe ich powerstatus = 1. Verzeichnis 1 & 2 sind ja die Strings, unter device ist nichts sinnvolles, unter status hab ich producing = 1 oder reachable =1. dann gibts unter ac noch is_valid = 1 (wie auch unter dc). DTU status is online, heisst aber nicht ob der Wechselrichter gerade schafft oder nicht. Ich denke wenn er liefert läuft alles wie soll, aber habe ja keine Möglichkeit zu sagen das alles zB über 1W gleich AKTIV ist oder? 

Hier die aktuelle Lage, läuft immer besser


   
AntwortZitat
Seite 2 / 2
Teilen: