peak verbessert

This commit is contained in:
belevo\mh
2025-02-26 15:50:54 +01:00
parent 375d93dfbe
commit 4117a0ceb8
2 changed files with 11 additions and 14 deletions

View File

@@ -181,15 +181,6 @@ public function RequestAction($Ident, $Value)
if($batterieladezustand >= $aufdasnachladen){
$this->SetValue("Hysterese_peak", false);
$netzbezug = GetValue($this->ReadPropertyInteger("Netzbezug"));
if (abs($netzbezug)>$maxleistung){
$dummy_array[] = $maxleistung*(-1);
} else{
$dummy_array[] = $netzbezug;
}
$this->SetValue("PowerSteps", json_encode($dummy_array));
$this->SetValue("Hysterese_peak", 0);
IPS_LogMessage("Batterie", "Peak: netzbezug" );
}
if ($batterieladezustand <= $minimumentladen) {
@@ -201,7 +192,7 @@ public function RequestAction($Ident, $Value)
$this->SetValue("Hysterese_peak", true);
IPS_LogMessage("Batterie", "Peak: unter minimum" );
} elseif ($batterieladezustand < $aufdasnachladen) {
} elseif ($batterieladezustand > $minimumentladen) {
if ($inhystere_peak == true){
$filtered_powersteps = array_filter($array_powersteps, function ($value) use ($maxleistung) {
@@ -211,8 +202,14 @@ public function RequestAction($Ident, $Value)
$this->SetValue("PowerSteps", json_encode($filtered_powersteps_laden));
IPS_LogMessage("Batterie", ": peak: Hysterese " );
}else{
$this->SetValue("PowerSteps", json_encode($array_powersteps));
IPS_LogMessage("Batterie", ": peak: keine Hysterese " );
$netzbezug = GetValue($this->ReadPropertyInteger("Netzbezug"));
if (abs($netzbezug)>$maxleistung){
$dummy_array[] = $maxleistung*(-1);
} else{
$dummy_array[] = $netzbezug;
}
$this->SetValue("PowerSteps", json_encode($dummy_array));
IPS_LogMessage("Batterie", "Peak: netzbezug, keine hysterese" );
}
}
@@ -244,7 +241,7 @@ public function RequestAction($Ident, $Value)
return $value >= 0;
});
$filtered_powersteps_laden = array_values($filtered_powersteps);
$this->SetValue("PowerSteps", json_encode($filtered_powersteps));
$this->SetValue("PowerSteps", json_encode($filtered_powersteps_laden));
IPS_LogMessage("Batterie", ": solar: Hysterese " );
}else{
$this->SetValue("PowerSteps", json_encode($array_powersteps));