ahoy
ahoy copied to clipboard
Verbesserungsvorschlag max power Live Seite
Ich bin nicht 100% sicher, da ich mir nicht die Zeit genommen haben es nachzuvollziehen, aber ich vermute auf der Live Seite wird unter Total/max power einfach die Summe der max power der Umrichter ausgegeben, die ja aber nicht gleichzeitig aufgetreten sein müssen. Besser wäre hier die Tagesmaximum Leistung des Tageshistorygraphen anzugehen.
@mellow5 Ist das ja jetzt in der 0.8.100/101 nicht richtig? Es werden die jeweiligen Maxima der Graphen angegeben. Diese Maxima werden aus den Verläufen der Summe der Leistungen aller Inverter zu einem Zeitpunkt gebildet. Oder habe ich Dich falsch verstanden?
Beim Kurzfristverlauf ist das ja völlig adäquat, da macht die Anzeige eines Tagesmaximums keinen Sinn. Bei Tagesverlauf bin ich mir unsicher, ob die DTU das echte Tagesmaximum überhaupt auslesen kann. Wenn nicht, bleibt nur das Auswerten der bisher geholten Werte und daraus die Ermittlung des Maximums.
Ich verstehe jetzt auch den Begriff Gesamtleistung, obwohl ich drüber stolperte. Gemeint ist wohl: Der Verlauf der Gesamtleistung aller Inverter.
Bei den Graphen passt es meiner Meinung nach. Hier ein Screenshot meines aktuellen Tagesverlaufs.
Allerdings sollte im auf der "Live" Seite im Total Bereich auch dieses Maximum ausgegeben werden.
Beispiel der Umrichter 1 leistet 1000 W irgendwann am Vormittag und Umrichter 2 1000 W am Nachmittag. Dann werden auf der "Live" Seite 2000 W bei Maximum unter "Total" angegeben, wobei die beiden Maxima nicht gleichzeitig aufgetreten sind und das Totalmaximum der Erzeugung niedriger als 2000 W liegt und dem Maxima aus dem Tagesverlaufsgraphen entspricht.
0.8.100 und 0.8.101 identisch und vorherige Versionen auch.
Ah! Du meinst also, die 1031,2W sind nie wirklich aufgetreten und unter Max Power sollte daher 954W aufgetragen sein, statt einfach die Summe mehrerer Maximalwerte von mehreren Invertern? Das scheint mir logisch, da nie ein Gesamtmaximum von 1031,2W aufgetreten ist.
Außerdem sollten die Einheiten in der zweiten Zeile unten auch nicht kleingeschrieben sein, denn Großschreibung ist die Definition dieser Einheiten.
Dieses Maximum ist nicht so einfach zu generieren, da man dafür alle Werte 'mitbekommen' muss. Das ist aber leider auf der /live Seite nicht so. Aktuell wird, wie ihr richtig geschrieben habt, einfach die Summe aller Maxima gebildert. Ich überlege, wie man das Gesamtmaximum elegant bekommen könnte - im aus meiner Sicht schlimmsten Fall müsste man es direkt im ESP erzeugen
Etwa so: Per Abfragerunde in Primivsprache, falls sowas nicht zuviel Platz/Zeit kostet:
daymax = 0
while not dark
maxwert = 0
For i = 1 to #Inverter
maxwert = maxwert + AbfragekWh(i)
end i
if daymax < maxwert
daymax = malwert
updatedisplay(daymax)
end if
end while
bei mir in der steuerung ist das (inkl. batterie und solar inverter erkennung) für ahoydtus so eingebaut: (kleines code snippet, falls das wer für sein projekt brauchen kann)
// php code snippet:
$dtu_data_array["metacontrol"]["total"]["p_ac_solar"]=0;
$dtu_data_array["metacontrol"]["total"]["p_ac_battery"]=0;
// solar und batterie inverter anhand des namens erkennen und p_ac getrennt aufsummieren:
foreach ($dtu_data_array["index"]["inverter"] as $inverter_key => $inverter_data_array)
{
if (preg_match("/agm|akku|bat|blei|lifepo|lipo|nacht/msi", $dtu_data_array["metacontrol"]["inverter"][$inverter_key]["name"]) or preg_match("/agm|akku|bat|blei|lifepo|lipo|nacht/msi", $dtu_data_array["inverter/id"][$inverter_key]["ch_name"][1]))
{
$dtu_data_array["metacontrol"]["total"]["p_ac_battery"] += $dtu_data_array["metacontrol"]["inverter"][$inverter_key]["p_ac"];
}
else
{
$dtu_data_array["metacontrol"]["total"]["p_ac_solar"] += $dtu_data_array["metacontrol"]["inverter"][$inverter_key]["p_ac"];
}
}
// bisherigen peak mit p_ac summe vergleichen, wenn höher, dann mit timestamp und temperatur merken:
if ($dtu_data_array["metacontrol"]["total"]["p_ac_solar"] > $dtu_data_array["metacontrol"]["total"]["p_ac_peak_solar"])
{
$dtu_data_array["metacontrol"]["total"]["p_ac_peak_solar"] = $dtu_data_array["metacontrol"]["total"]["p_ac_solar"];
$dtu_data_array["metacontrol"]["total"]["p_ac_peak_solar_temp"] = $dtu_data_array["metacontrol"]["total"]["temp_solar"];
$dtu_data_array["metacontrol"]["total"]["ts_p_ac_peak_solar"] = $dtu_data_array["index"]["ts_now"];
}
if ($dtu_data_array["metacontrol"]["total"]["p_ac_battery"] > $dtu_data_array["metacontrol"]["total"]["p_ac_peak_battery"])
{
$dtu_data_array["metacontrol"]["total"]["p_ac_peak_battery"] = $dtu_data_array["metacontrol"]["total"]["p_ac_battery"];
$dtu_data_array["metacontrol"]["total"]["p_ac_peak_battery_temp"] = $dtu_data_array["metacontrol"]["total"]["temp_battery"];
$dtu_data_array["metacontrol"]["total"]["ts_p_ac_peak_battery"] = $dtu_data_array["index"]["ts_now"];
}
In der 0.8.101 stimmen die maximalen Leistungswerte auf der Live Seite für die einzelnen Inverter und auch für die Gesamtleistung nicht. Da wird schon morgens das Maximum der Inverter angezeigt bei "Max AC Leistung" bzw. "Maximale Leistung". Das stammt wohl von vor ein paar Tagen, als es mal wirklich sonnig war. Heute war bis jetzt die Maximale "Gesamtleistung heute" im Verlauf bisher höchstens 1/4 dieses Werts.
besser die peaks extern abbilden. vor allem, wenn man getrennte batterie inverter hat.
hab' die problematik von unterschiedlichen peak zeiten verschiedener inverter, wo die summe dadurch nicht einer moment-maximalsumme entspricht, damals nicht erwähnt. (dachte bisher dass nur wenige nutzer ohne oder mit externen steuerungen, dies bemerken, bzw.benötigen)
In der 0.8.101 stimmen die maximalen Leistungswerte auf der Live Seite für die einzelnen Inverter und auch für die Gesamtleistung nicht. Da wird schon morgens das Maximum der Inverter angezeigt bei "Max AC Leistung" bzw. "Maximale Leistung". Das stammt wohl von vor ein paar Tagen, als es mal wirklich sonnig war. Heute war bis jetzt die Maximale "Gesamtleistung heute" im Verlauf bisher höchstens 1/4 dieses Werts.
dafür gibt es einen "Reset" in den Einstellungen
Ich hab den Fuß von der Leitung genommen. Danke fürs Schubsen @lumapu :-)
Das also:
Ist aus meiner Sicht jetzt richtig umgesetzt.