batterie
This commit is contained in:
@@ -55,7 +55,7 @@ class Batterie extends IPSModule
|
|||||||
$stepSize = 250; // Schrittgröße
|
$stepSize = 250; // Schrittgröße
|
||||||
|
|
||||||
// Erstellen der PowerSteps
|
// Erstellen der PowerSteps
|
||||||
for ($i = 0; $i <= $maxleistung * 2; $i += $stepSize) {
|
for ($i = -$maxleistung; $i <= $maxleistung; $i += $stepSize) {
|
||||||
$array_powersteps[] = $i;
|
$array_powersteps[] = $i;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -103,8 +103,8 @@ public function RequestAction($Ident, $Value)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
// Batterie entladen oder laden basierend auf der Leistung
|
// Batterie entladen oder laden basierend auf der Leistung
|
||||||
if ($power > $maxleistung) {
|
if ($power >= 0) {
|
||||||
$ladestrom = ($power - $maxleistung) / $spannung;
|
$ladestrom = $power / $spannung;
|
||||||
$this->SetValue("Ladestrom", $ladestrom);
|
$this->SetValue("Ladestrom", $ladestrom);
|
||||||
$this->SetValue("Entladestrom", 0);
|
$this->SetValue("Entladestrom", 0);
|
||||||
//IPS_LogMessage("Batterie", "Ladestrom: " . $ladestrom);
|
//IPS_LogMessage("Batterie", "Ladestrom: " . $ladestrom);
|
||||||
@@ -148,7 +148,7 @@ public function RequestAction($Ident, $Value)
|
|||||||
if ($Peak) {
|
if ($Peak) {
|
||||||
if ($batterieladezustand <= $minimumentladen) {
|
if ($batterieladezustand <= $minimumentladen) {
|
||||||
$filtered_powersteps = array_filter($array_powersteps, function ($value) use ($maxleistung) {
|
$filtered_powersteps = array_filter($array_powersteps, function ($value) use ($maxleistung) {
|
||||||
return $value > $maxleistung; // Hochpass filtern
|
return $value >= 0; // Hochpass filtern
|
||||||
});
|
});
|
||||||
$filtered_powersteps_laden = array_values($filtered_powersteps);
|
$filtered_powersteps_laden = array_values($filtered_powersteps);
|
||||||
$this->SetValue("PowerSteps", json_encode($filtered_powersteps_laden));
|
$this->SetValue("PowerSteps", json_encode($filtered_powersteps_laden));
|
||||||
@@ -156,7 +156,7 @@ public function RequestAction($Ident, $Value)
|
|||||||
|
|
||||||
} elseif ($batterieladezustand >= $aufdasnachladen) {
|
} elseif ($batterieladezustand >= $aufdasnachladen) {
|
||||||
$filtered_powersteps_entladen = array_filter($array_powersteps, function ($value) use ($maxleistung) {
|
$filtered_powersteps_entladen = array_filter($array_powersteps, function ($value) use ($maxleistung) {
|
||||||
return $value < $maxleistung; // Tiefpass filtern
|
return $value < 0; // Tiefpass filtern
|
||||||
});
|
});
|
||||||
$this->SetValue("PowerSteps", json_encode($filtered_powersteps_entladen));
|
$this->SetValue("PowerSteps", json_encode($filtered_powersteps_entladen));
|
||||||
IPS_LogMessage("Batterie", "Batterie entladen: " );
|
IPS_LogMessage("Batterie", "Batterie entladen: " );
|
||||||
@@ -172,12 +172,16 @@ public function RequestAction($Ident, $Value)
|
|||||||
|
|
||||||
} else { // Solar
|
} else { // Solar
|
||||||
|
|
||||||
$filtered_powersteps_solar = array_filter($array_powersteps, function ($value) use ($maxleistung) {
|
if ($batterieladezustand <= $minimumentladen) {
|
||||||
return $value > $maxleistung; // Hochpass filtern
|
$this->SetValue("PowerSteps", max($array_powersteps));
|
||||||
});
|
} else {
|
||||||
|
$filtered_powersteps = array_filter($array_powersteps, function ($value) use ($maxleistung) {
|
||||||
$this->SetValue("PowerSteps", json_encode($filtered_powersteps_solar));
|
return $value >= 0; // Hochpass filtern
|
||||||
IPS_LogMessage("Batterie", "Solarmodus");
|
});
|
||||||
|
$filtered_powersteps_laden = array_values($filtered_powersteps);
|
||||||
|
$this->SetValue("PowerSteps", json_encode($filtered_powersteps_laden));
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -215,5 +219,6 @@ public function RequestAction($Ident, $Value)
|
|||||||
$this->SetValue("Idle", true);
|
$this->SetValue("Idle", true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
@@ -6,7 +6,7 @@
|
|||||||
"compatibility": {
|
"compatibility": {
|
||||||
"version": "7.1"
|
"version": "7.1"
|
||||||
},
|
},
|
||||||
"version": "1.037",
|
"version": "1.038",
|
||||||
"build": 0,
|
"build": 0,
|
||||||
"date": 0
|
"date": 0
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user