Berechnen des Ertrags der PV aus

Hallo,

ich versuch aus der Input Power Variablen unserer Huawei PV Anlage den täglichen, wöchentlichen, monatlichen und jährlichen PV Ertrag zu ermitteln.

Die Werte aus der PV sehen so aus in der Archiv-Variablen

D.h. es werden alle paar Sekunden die aktuellen Ertragswerte weggeschrieben.

Folgendes Skript habe ich mir aufgebaut:

<?php

// ID der archivierten Variable für die aktuelle Input Power
$inputPowerVarID = 18305;

// IDs der Variablen zur Speicherung der Tages-, Wochen-, Monats- und Jahreswerte
$dailyYieldVarID = 50286;
$weeklyYieldVarID = 14900;
$monthlyYieldVarID = 27661;
$yearlyYieldVarID = 26063;

// Startdatum
$startDate = strtotime("2025-01-01");

// Funktion zur Berechnung des PV-Ertrags für einen bestimmten Zeitraum
function getAndSumValues($variableID, $startTime, $endTime) {
    $values = AC_GetAggregatedValues(21633/* Archiv-Instanz-ID */, $variableID, 0 /* Rohdaten */, $startTime, $endTime, 0);
    $yield = 0;
    foreach ($values as $value) {
        $yield += $value['Avg'];
    }
    return $yield;
}

// Aktuelles Datum und Uhrzeit
$currentTime = time();

// Täglicher PV-Ertrag
$startTime = strtotime("today", $currentTime);
$endTime = $currentTime;
$dailyYield = getAndSumValues($inputPowerVarID, $startTime, $endTime);
SetValue($dailyYieldVarID, $dailyYield);

// Wöchentlicher PV-Ertrag
$startTime = strtotime("last Monday", $currentTime);
$endTime = $currentTime;
$weeklyYield = getAndSumValues($inputPowerVarID, $startTime, $endTime);
SetValue($weeklyYieldVarID, $weeklyYield);

// Monatlicher PV-Ertrag
$startTime = strtotime("first day of this month", $currentTime);
$endTime = $currentTime;
$monthlyYield = getAndSumValues($inputPowerVarID, $startTime, $endTime);
SetValue($monthlyYieldVarID, $monthlyYield);

// Jährlicher PV-Ertrag
$startTime = strtotime("first day of January", $currentTime);
$endTime = $currentTime;
$yearlyYield = getAndSumValues($inputPowerVarID, $startTime, $endTime);
SetValue($yearlyYieldVarID, $yearlyYield);

echo "PV-Ertragswerte wurden erfolgreich berechnet und gespeichert.";
?>

Leider stimmt das Ergebnis nicht

Ertrag heute bis jetzt 23,58 kWh und für das Jahr ca. 424 kWh.

Woran kann das liegen, ist mein Script fehlerhaft?

Hi, steht die Archivierung der variable auf Zähler?

hi bgersmann,

nein stand bisher nicht darauf, muss ich wenn ich einzelne Werte von einer Variablen erhalte immer auf Zähler stellen, damit ich die „Summe“ bzw. den Gesamtwert erhalte?

Das Ergebnis passt leider immer noch nicht

Immer, wenn du eine Variable loggst, welche hochzählt, muss diese auf Zähler gestellt werden…
Alle anderen stellst du auf ‚Standard‘

1 „Gefällt mir“

Hi mb-stern,

ich habe verschiedene Werte welche ich Berechne:

  • Stromverbrauch
  • Einspeisung in kW
  • Ertrag der PV
  • etc.

Diese bringen permanent einzelne Werter, so dass ich die Variablen als „Zähler“ definiere.

Leider sehen die Diagramme bescheiden aus, auch wenn die einzelnen Werte super aussehen.

Hier die Werte dazu aktuell

Weshalb stimmt die Darstellung in den DIagrammen nicht, heute hatten wir

2,72 kWh Netzbezug, 44,11 kWh Erzeugt per PV und 25,58 kWh eingespeißt. Das Diagramm stellt das jedoch nicht dar.

kW nicht auf Zähler, das ist die Leistung und gehört auf Standard. Damit stellst du den Verlauf dar…
kWh auf Zähler, das ist die Energiemenge und gehört gezählt…

Danke für den Hinweis, jetzt sieht es besser aus. Wie gehe ich vor wenn ich in Summe Tageswerte möchte?

Gab es hier nicht genau dafür schon ein fertiges Modul, um aus der Leistung (W) und der Zeit die Arbeit (kWh) zu berechnen und zu loggen?
Das wäre genau das,was du benötigst wenn dein Wechselrichter die aufsummierten kWh nicht liefert.

Mache das selber aber auch per Script.

Keine Ahnung was du meinst…

Summe Verbrauch, Ertrag…

Rechenmodul von Symcon

Oder Energierechner von Kai…

Wenn du die Verbrauchsleistung und Einspeiseleistung usw. hast, wie auch die PV Leistung, wirst du doch bestimmt auch die Wirkarbeit auslesen können oder woher beziehst du deine ganzen Werte?
Müsstest schon ein bisschen mehr Informationen zur HW liefern.
Irgendwie hört es sich so an, als ob dein Weg gerade nicht viel Sinn macht.