Betriebsstunden mittels geloggter Bool-Variablen berechnen möglich

Hallo zusammen,

sitze nun schon seit geraumer Zeit daran, mir über die geloggten Betriebszustände meiner Variablen (z. B. Licht Wohnzimmer), welche ja nur den Wert 0 oder 1 haben können, die tatsächlich in einem Zeitraum angefallen Betriebsstunden zu berechnen. Leider scheitere ich bislang daran.

Hatte es bis jetzt so probiert:

<?

$Start = mktime(0, 0, 0, 1, 1, 2015);
$Ende = mktime(23, 59, 59, 12, 31, 2015);

$Zeitraum = 4;                    // lese Jahreswerte
$Limit = 0;                       // kein Limit
$Archiv = 49390 /*[Archiv]*/ ;
$Variable = 29132 /*[HTTP\WC.WC_LICHT_SPIEGELA]*/ ;

$werte = AC_GetAggregatedValues($Archiv, $Variable, $Zeitraum, $Start, $Ende, $Limit);

foreach($werte as $wert) {
	$wert['Avg'];
}

$dauer = $wert['Avg'];

echo $dauer. PHP_EOL;

SetValue(37869  /*[Testumgebung\Test_Bh]*/,$dauer);

?>

Nur hat man ja hier das Problem, dass sich der Durchschnittswert ständig ändert, da ja der Anteil der Ein-Zustände mit fortlaufender Zeit immer kleiner wird. Wie könnte man dies korrigieren?

Oder hat jemand einen ganz anderen Ansatz zur Berechnung der Betriebsstunden einer boolschen Variable?

Danke für die Antwort und Hilfe.

Grüße
Dan

Hi,

HIERist was :wink:

Läuft auf Windows gut. Leider bekomme ich den Script mit Raspi nicht zum laufen.

Gruß