Hallo zusammen,
ich möchte in einem Graphen darstellen, wie hoch meine Stromkosten täglich, monatlich etc sind. Ich habe dazu eine float Variable Bezug welche in 2 Sekunden 2x aktualisiert wird. Aber schon sehr zeitnah hintereinander (zwei Zähler schreiben in diese Variable).
Jetzt hab ich mir ein Skript gebastelt, welches den aktuellen Bezug in Euro in eine float Variable schreibt, welche dann geloggt wird. Allerdings passen die Werte von $_IPS[‚VALUE‘] und $_IPS[‚OLDVALUE‘] manchmal nicht. Jedes zweite mal is das „delta“ 0, obwohl die Variable Bezug richtig aktualisiert wird (momentan fange ich das durch das if ab). Das Skript wird durch ein Ereignis Variablenänderung auf die Variable Bezug aufgerufen. Semaphore haben leider nichts geholfen.
if (IPS_SemaphoreEnter("StromkostenUeberwachungBezug", 1000)) {
$preisBezug = GetValueFloat(30259 /*[Hardware\Zähler\Strom\Strom Kostenüberwachung\Aktueller Strompreis Bezug]*/) / 100;
if ($_IPS['SENDER'] === "Variable") {
$delta = $_IPS['VALUE'] - $_IPS['OLDVALUE'];
if ($delta != 0) {
updateIPSvar("Bezug", "purchaseEuro", $delta * $preisBezug, "float");
}
}
IPS_SemaphoreLeave("StromkostenUeberwachungBezug");
}
$preisBezug ist der Strompreis in Cent (25,07Cent)
Irgendwie werden mir viel zu wenig Stromkosten angezeigt:
Was mache ich hier falsch?
Vielen Dank!
Gruß Basti