ahoy icon indicating copy to clipboard operation
ahoy copied to clipboard

Verbesserungsvorschlag max power Live Seite

Open mellow5 opened this issue 1 year ago • 10 comments
trafficstars

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 avatar Mar 27 '24 22:03 mellow5

@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.

kiu77 avatar Mar 28 '24 09:03 kiu77

Bei den Graphen passt es meiner Meinung nach. Hier ein Screenshot meines aktuellen Tagesverlaufs.

image

Allerdings sollte im auf der "Live" Seite im Total Bereich auch dieses Maximum ausgegeben werden.

image

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.

mellow5 avatar Mar 28 '24 12:03 mellow5

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.

kiu77 avatar Mar 28 '24 20:03 kiu77

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

lumapu avatar Mar 30 '24 21:03 lumapu

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

kiu77 avatar Mar 30 '24 21:03 kiu77

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"];
}

MetaChuh avatar Mar 31 '24 09:03 MetaChuh

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.

kiu77 avatar Apr 01 '24 10:04 kiu77

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)

MetaChuh avatar Apr 01 '24 11:04 MetaChuh

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

lumapu avatar Apr 01 '24 14:04 lumapu

Ich hab den Fuß von der Leitung genommen. Danke fürs Schubsen @lumapu :-) Das also: Bildschirmfoto 2024-04-01 um 16 25 00

kiu77 avatar Apr 01 '24 14:04 kiu77

Ist aus meiner Sicht jetzt richtig umgesetzt.

mellow5 avatar May 17 '24 12:05 mellow5