stehe gerade auf dem Schlauch. Aktuell berechne ich die aktuellen „Verbrauchswerte“ im Haushalt und bekomme so alle 15s einen Wert in Watt für Erzeugung, Verbrauch, Eigenverbrauch, Speicherung, … Für weitere Auswertungen möchte ich diese Werte in Variablen als kWh aufsummieren.
Hat jemand einen Ansatz? Bin im Forum nicht wirklich fündig geworden.
Ich habe etwas ähnliches bei mir realisiert. Allerdings genau umgekehrt. Die Zähler geben über S0 ihre Signale an die SPS z.B. 800 Imp/kWh. In der SPS wird dann einfach Addiert, pro Impuls Zählerwert + 0,00125kWh.
In einem Intervall z.B. 120sek wird dann von dem neuen Zählerwert der alte (vor10sek) abgezogen.
Die Differenz mit dem Fakor ((3600/120)*1000) Multiplizieren dann habe Ich die Leistung in kW.
Danach bilde Ich noch den Mittelwert aus der letzten und der aktuellen berechnung und habe rechne um in W.
Hier das Beispiel für den Gaszähler:
$Interval = 120;
$Faktor = ((3600/$Interval)*1000);
// Gaszähler in kWh umrechnen:
$ZZahl = 0.9488; // Z-Zahl muss von Gasrechnung abgelesen werden.
$Brennwert = 11.078; // Brennwert ebenfalls von Gasrechnung.
$Gaszaehler = GetValue(44552 /*[Haus Allgemein\Zähler\Zählerstände(Rechts)\Gaszähler\Gaszähler]*/ );
$kWh = $ZZahl * $Brennwert * $Gaszaehler;
$GasZaehler_alt = GetValue(53486 /*[Haus Allgemein\Zähler\GasZähler Leistungsberechnung]*/ );
$HeizungLeistung_Alt = GetValue(37784 /*[Haus Allgemein\Zähler\Zählerstände(Rechts)\Leistung\Leistung Gas Heizung]*/ );
$HeizungLeistung = $kWh - $GasZaehler_alt;
$HeizungLeistung = $HeizungLeistung * $Faktor; // 2kWmin in 2kWmin
$HeizungLeistung = ($HeizungLeistung + $HeizungLeistung_Alt)/2; // Mittelwert bilden
$HeizungLeistung = $HeizungLeistung/1000; // Umrechnen in kW
SetValueFloat(53486 /*[Haus Allgemein\Zähler\GasZähler Leistungsberechnung]*/ ,$kWh);
SetValueFloat(37784 /*[Haus Allgemein\Zähler\Zählerstände(Rechts)\Leistung\Leistung Gas Heizung]*/ ,$HeizungLeistung);
Du könntest den jeweils neusten Wert immer auf eine bestehende Variable aufaddieren und jede Stunde über einen Event diese Variable wegspeichern und auf 0 setzen.