Tageswerte PV-Ertrag

Die Solaranzeige ist ein Programm, was im Prinzip nur PHP 7.x, Grafana und InfluxDB benötigt. Diese Programme müssen zusammen auf einem angepassten Betriebssystem laufen.

Moderator: Ulrich

musicnrw
Beiträge: 1
Registriert: Do 23. Jan 2025, 07:23

Tageswerte PV-Ertrag

Beitrag von musicnrw »

Hallo,
ich bin total neu in Grafana unterwegs. Ich habe es geschafft, aus den Werten, die ich am Stromzähler auslese, meine Tagesverbräuche zu visualisieren, also kWh/Tag, z.B. für die aktuelle Woche.
Was ich nicht hinbekomme ist, das gleiche für die Erträge, also die täglich generierte PV-Leistung, abzubilden.
Für die Tagesverbräuche (Stromzählerwerte) sieht die Query so aus:
import "timezone"
option location = timezone.location(name: "Europe/Berlin")
from(bucket: "iobroker")
|> range(start: -7d)
|> filter(fn: (r) => r["_measurement"] == "smartmeter.0.1-0:1_8_0__255.value" and r["_field"] == "value")
|> difference()
|> aggregateWindow(every: 24h, fn: sum, timeSrc: "_start")

Das Ganze stelle ich dann in einzelnen Balken für den jeweiligen Tag dar.
Wenn ich das gleiche für die Erträge aus der PV-Anlage mache und statt des Messwertes aus dem Smartmeter die in Influx gespeicherten Werte der Leistung aus dem PV-Inverter (SENEC) nehme, kommt dabei nur Müll raus, was ja auch verständlich ist, weil das ja kW sind und ich ja kWh brauche.
Meine Frage nun, wie bekomme ich das unter Verwendung der Sprache "Flux" hin, also die Aufsummierung der Energie aus den Leistungswerten über jeweils einen Tag?
Vielen Dank!

bobbyric
Beiträge: 8
Registriert: Di 23. Jul 2024, 11:34
Danksagung erhalten: 2 Mal

Re: Tageswerte PV-Ertrag

Beitrag von bobbyric »

Du musst die Leistungswerte (kW) über den Tag aufsummieren, um die Energie (kWh) zu bekommen. Probier mal diese Flux-Query:

Code: Alles auswählen

import "timezone"

option location = timezone.location(name: "Europe/Berlin")

from(bucket: "iobroker")
|> range(start: -7d)
|> filter(fn: (r) => r["_measurement"] == "senec.PV_Leistung" and r["_field"] == "value")
|> map(fn: (r) => ({ r with _value: r._value / 60.0 })) // kW in kWh pro Minute umrechnen
|> aggregateWindow(every: 24h, fn: sum, timeSrc: "_start") // Tageswerte summieren
Falls dein Wechselrichter Werte in Watt liefert, musst du durch 60000 statt 60 teilen.

Zurück zu „Solaranzeige auf anderen Betriebssystemen“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast