Einführung in Influx und Grafana mit 2 WR

PDF Dokumente für Informationen im Detail, sowie Bauanleitungen.

Moderator: Schattenschimmer

Antworten
PV9,92
Beiträge: 30
Registriert: Do 28. Nov 2019, 22:42

Einführung in Influx und Grafana mit 2 WR

Beitrag von PV9,92 »

Anbei habe ich ein kleines Dokument erstellt, welches bei den ersten Schritten mit Influx und Grafana weiterhelfen soll. Insbesondere wird dabei auf 2 Wechselrichter bzw. das Auswerten von Daten/Verknüpfen aus verschiedenen Datenbanken eingegangen.
Dateianhänge
Einführung in Influx Grafana mit 2 WR.pdf
(562.95 KiB) 426-mal heruntergeladen

Benutzeravatar
Ulrich
Administrator
Beiträge: 1144
Registriert: Sa 7. Nov 2015, 10:33
Wohnort: Essen
Kontaktdaten:

Re: Einführung in Influx und Grafana mit 2 WR

Beitrag von Ulrich »

Super gemacht uns sehr Informativ! Vielen Dank!
--------------------------------------
Ulrich [Admin]

Timo
Beiträge: 31
Registriert: Fr 13. Sep 2019, 19:06

Re: Einführung in Influx und Grafana mit 2 WR

Beitrag von Timo »

Hallo

Werden die zusammen gerechnet werte in einer neuen datenbank gespeichert zb Gesamt ?

Sehe ich das richtig das er zb den einen wert aus der datenbank Laderegler1 und einen wert aus Laderegler2 holen würde und die Summer in die DB Gesamt schreibt ?

Geht das auch mit 3 Werten da ich 3 LR habe ?

Gruß Timo

PV9,92
Beiträge: 30
Registriert: Do 28. Nov 2019, 22:42

Re: Einführung in Influx und Grafana mit 2 WR

Beitrag von PV9,92 »

Nein, die Werte werden nur für die Anzeige zusammengeführt. Es macht ja wenig Sinn dafür nochmal Platz in der Datenbank zu verschwenden, wenn diese auch durch Berechnung erzeugt werden können.

Und natürlich geht das analog auch mit 3 und mehr Wechselrichtern!

domiisolar
Beiträge: 4
Registriert: Fr 20. Dez 2019, 16:05

Re: Einführung in Influx und Grafana mit 2 WR

Beitrag von domiisolar »

Vielen Dank für diese Anleitung, genau nach sowas habe ich gesucht!

Es ist aber bei mir nicht möglich auf diese Weise zwei Werte aus verschiedenen 'Measurements' miteinander zu verrechnen:

Erklärung:
Ich berechne die jeweilige "Ersparnis des Tages", basierend auf dem Eigenverbrauch, dem Gesamtverbrauch und den Stromtarifen.
Ich verwende dazu zwei Zahlen aus dem Measurement "AC" und eine Zahl aus dem Measurement "Summen". Der Aufbau der Query ist analog zur Anleitung, bloss das meine Rechnung noch etwas umfangreicher ist als blosse Addition. Die eigentliche Rechnung spielt aber keine Rolle, denn sobald ich den Wert aus dem zweiten Measurement "Summen" (mean(B)) durch eine einfache Zahl ersetze (13.5) funktioniert die Rechnung einwandfrei und ich erhalte einen Wert.

Meine Query lautet analog der Anleitung:
SELECT mean(C)*0.22 - ((mean(C)-mean(D))*0.22-(mean(B)- mean(D))*0.09) as "Einsparung" from (SELECT sum("Verbrauch")/60 AS C FROM solaranzeige..AC),(SELECT sum("Verbrauch_PV")/60 AS D FROM solaranzeige..AC),(SELECT max("Wh_Heute") AS B FROM solaranzeige..Summen) GROUP BY time(1d).

Ergebnis:
Tabelle1.PNG
Zur Fehlersuche habe ich als erstes mal die einzelnen Werte mitausgegeben, mit:
SELECT mean(C),mean(D),mean(B),mean(C)*0.22 - ((mean(C)-mean(D))*0.22-(mean(B)- mean(D))*0.09) as "Einsparung" from (SELECT sum("Verbrauch")/60 AS C FROM solaranzeige..AC),(SELECT sum("Verbrauch_PV")/60 AS D FROM solaranzeige..AC),(SELECT max("Wh_Heute") AS B FROM solaranzeige..Summen) GROUP BY time(1d)

Ergebnis-2:
Tabelle-full.PNG
Die Werte B, C und D sind alle da, aber auf verschiedenen Zeilen, aber mit denselben Timestamps. Meine Vermutung ist, dass solange die Werte auf verschiedenen Zeilen liegen, werden sie auch nicht miteinander verrechnet, daher kein Ergebnis.

Frage:
Wie bekomme ich die Zahlen trotzdem miteinander verrechnet? / Wie bekomme ich die auf dieselbe Zeile?

Vielen Dank für eure Tipps/Hilfe

domiisolar
Beiträge: 4
Registriert: Fr 20. Dez 2019, 16:05

Re: Einführung in Influx und Grafana mit 2 WR

Beitrag von domiisolar »

Nachtrag:
Nach weiteren Recherchen ist mir aufgefallen, dass wenn ich in Grafana dieselbe Query mit dem Format "Time series" starte, ich das "Zeilenproblem" nicht mehr habe (siehe Screenshot). Jedoch werden die Werte Measurement-übergreifend nicht verrechnet.
Ich vermute es ist nicht möglich auf diese Weise Daten verschiedener Measurements zu verrechnen.
TimeSeries.PNG
Alternativlösung:
Alternativ könnten die beiden Measurements "Summen" und "AC" via einem JOIN zusammengezogen werden und dann könnten möglicherweise die Daten miteinander verrechnet werden. Das benötigt aber das PlugIn "Flux" (noch in BETA-Version). Mehr dazu hier:

JOIN mit Flux:
https://docs.influxdata.com/flux/v0.50/guides/join/
https://medium.com/@dganais/influxdb-ho ... 4c1b561a5e

PlugIn:
https://grafana.com/grafana/plugins/gra ... datasource

Da ich mich aber nicht weiter in diese Tiefen vorwagen möchte, lasse ich die Sache erstmal auf sich beruhen, vielleicht hilft es aber jemand anderem.

Benutzeravatar
Ulrich
Administrator
Beiträge: 1144
Registriert: Sa 7. Nov 2015, 10:33
Wohnort: Essen
Kontaktdaten:

Re: Einführung in Influx und Grafana mit 2 WR

Beitrag von Ulrich »

Der Trick bei der Anleitung von PV9,92 war, dass Zwischenspeichern der Daten in eine Variable. Das Vermisse ich bei Deiner Schilderung. Hast Du das beachtet?
--------------------------------------
Ulrich [Admin]

domiisolar
Beiträge: 4
Registriert: Fr 20. Dez 2019, 16:05

Re: Einführung in Influx und Grafana mit 2 WR

Beitrag von domiisolar »

Hi Ulrich,
danke für die Antwort.
Ich dachte das hätte ich getan, mit der Zuweisung an die Variable B, C und D ([..] AS B, [..] AS C, [..] AS D):

SELECT mean(C)*0.22 - ((mean(C)-mean(D))*0.22-(mean(B)- mean(D))*0.09) as "Einsparung" from (SELECT sum("Verbrauch")/60 AS C FROM solaranzeige..AC),(SELECT sum("Verbrauch_PV")/60 AS D FROM solaranzeige..AC),(SELECT max("Wh_Heute") AS B FROM solaranzeige..Summen) GROUP BY time(1d).

nach dem Muster:
SELECT mean(Variable1)*0,22 [..] AS Ergebnisvariable FROM (SELECT YY AS Variable1).

Erkenntnis:
Aber ich glaube ich kenne jetzt den Fehler: ich beziehe die Daten der Variablen (B, C und D) zwar aus verschiedenen Measurements ("Summen" und "AC"), aber aus der gleichen Datenbank ("solaranzeige"). Die Anleitung bezieht sich aber auf verschiedene Datenbanken ("solaranzeige" und "solaranzeige_1"), vermutlich funktioniert der Trick mit den Variablen nur über mehrere Datenbanken hinweg, nicht innerhalb derselben DB (?)

Antworten