Schwachlast-Tarif ermitteln

Hallo,

ich möchte gerne ermitteln ob sich für mich ein Schwachlasttarif rechnet

Zur Zeit setze ich das folgende Script zum auslesen der Zähler ein.

//Summenzähler Zählerplatz 1

$imp_kw = 800;         // Impulse pro kw/h
$counter = GetValue(45137 /*[Erdgeschoss\Zwischenzaehler\ZaehlerPlatz 1\Haupt-Zaehler]*/);

// 1 minütlicher Verbrauch
//echo  "Counter: $counter
";
$delta = $counter - GetValue(42095 /*[Erdgeschoss\Zwischenzaehler\ZaehlerPlatz 1\Haupt-Zaehler\Counter old 1  Min Summen]*/);
//echo  "Delta: $delta
";
$data =  IPS_GetVariable(42095 /*[Erdgeschoss\Zwischenzaehler\ZaehlerPlatz 1\Haupt-Zaehler\Counter old 1  Min Summen]*/);
$delta_t =time()-($data['VariableUpdated']);
//echo  "delta_t: $delta_t Sekunden
";
SetValue(42095 /*[Erdgeschoss\Zwischenzaehler\ZaehlerPlatz 1\Haupt-Zaehler\Counter old 1  Min Summen]*/, $counter );
$delta = (double)($delta * 3600 / $delta_t / $imp_kw);
SetValue(12888 /*[Erdgeschoss\Zwischenzaehler\Haupt Zähler\Hauptz. durchschn. Verbrauch]*/,$delta);
//echo  "Verbrauch: ".$delta ." kW/h
";

// stündlicher Verbrauch
$data =  IPS_GetVariable(59078 /*[Erdgeschoss\Zwischenzaehler\ZaehlerPlatz 1\Haupt-Zaehler\Counter old 60 Min Summenzaehler]*/);
$delta_t =time()-($data['VariableUpdated']);
if ($delta_t >= 3600){
   $delta = $counter - GetValue(59078 /*[Erdgeschoss\Zwischenzaehler\ZaehlerPlatz 1\Haupt-Zaehler\Counter old 60 Min Summenzaehler]*/);
    SetValue(59078 /*[Erdgeschoss\Zwischenzaehler\ZaehlerPlatz 1\Haupt-Zaehler\Counter old 60 Min Summenzaehler]*/, $counter );
    $delta = (double)($delta * 3600 / $delta_t / $imp_kw);
    SetValue(58702 /*[Erdgeschoss\Zwischenzaehler\Haupt Zähler\Hauptz. letzte 60 Min]*/,$delta);
}

// Tages-Verbrauch
$id_event = $IPS_EVENT;
if ($id_event == 49230 /*[Erdgeschoss\Zwischenzaehler\ZaehlerPlatz 1\Zaehlerauslesen\]*/){
      $delta = $counter - GetValue(16186 /*[Erdgeschoss\Zwischenzaehler\ZaehlerPlatz 1\Haupt-Zaehler\Counter old Midnight Summenzaehler]*/);
    SetValue(16186 /*[Erdgeschoss\Zwischenzaehler\ZaehlerPlatz 1\Haupt-Zaehler\Counter old Midnight Summenzaehler]*/, $counter );
    $delta = (double)($delta / $imp_kw); //Tagesverbrauch  berechnen
    SetValue(42288 /*[Erdgeschoss\Zwischenzaehler\Haupt Zähler\Hauptz. Tagesverbr.]*/,$delta);
}




//EDV-Zähler Zählerplatz 1
$imp_kw = 1000;         // Impulse pro kw/h
$counter = GetValue(16169 /*[Erdgeschoss\Zwischenzaehler\ZaehlerPlatz 1\EDV-Zaehler]*/);

// 1 minütlicher Verbrauch
//echo  "Counter: $counter
";
$delta = $counter - GetValue(35207 /*[Erdgeschoss\Zwischenzaehler\ZaehlerPlatz 1\EDV-Zaehler\Counter old 1   Min EDV]*/);
//echo  "Delta: $delta
";
$data =  IPS_GetVariable(35207 /*[Erdgeschoss\Zwischenzaehler\ZaehlerPlatz 1\EDV-Zaehler\Counter old 1   Min EDV]*/);
$delta_t =time()-($data['VariableUpdated']);
//echo  "delta_t: $delta_t Sekunden
";
SetValue(35207 /*[Erdgeschoss\Zwischenzaehler\ZaehlerPlatz 1\EDV-Zaehler\Counter old 1   Min EDV]*/, $counter );
$delta = (double)($delta * 3600 / $delta_t / $imp_kw);
SetValue(41055 /*[Erdgeschoss\Zwischenzaehler\EDV-Zähler\EDV durchschnittl. Verbr. ]*/,$delta);
//echo  "Verbrauch: ".$delta ." kW/h
";

// stündlicher Verbrauch
$data =  IPS_GetVariable(22610 /*[Erdgeschoss\Zwischenzaehler\ZaehlerPlatz 1\EDV-Zaehler\Counter old 60 Min EDV]*/);
$delta_t =time()-($data['VariableUpdated']);
if ($delta_t >= 3600){
   $delta = $counter - GetValue(22610 /*[Erdgeschoss\Zwischenzaehler\ZaehlerPlatz 1\EDV-Zaehler\Counter old 60 Min EDV]*/);
    SetValue(22610 /*[Erdgeschoss\Zwischenzaehler\ZaehlerPlatz 1\EDV-Zaehler\Counter old 60 Min EDV]*/, $counter );
    $delta = (double)($delta * 3600 / $delta_t / $imp_kw);
    SetValue(16737 /*[Erdgeschoss\Zwischenzaehler\EDV-Zähler\EDV letzte 60 Min]*/,$delta);
}

// Tages-Verbrauch
$id_event = $IPS_EVENT;
if ($id_event == 49230 /*[Erdgeschoss\Zwischenzaehler\ZaehlerPlatz 1\Zaehlerauslesen\]*/){
      $delta = $counter - GetValue(25427 /*[Erdgeschoss\Zwischenzaehler\ZaehlerPlatz 1\EDV-Zaehler\Counter old Midnight EDV]*/);
    SetValue(25427 /*[Erdgeschoss\Zwischenzaehler\ZaehlerPlatz 1\EDV-Zaehler\Counter old Midnight EDV]*/, $counter );
    $delta = (double)($delta / $imp_kw); //Tagesverbrauch  berechnen
    SetValue(59073 /*[Erdgeschoss\Zwischenzaehler\EDV-Zähler\EDV Tagesverbrauch]*/,$delta);
}



getriggert alle 60sec und um 00.01.00 täglich

Niedertarifzeit laut Stromanbieter:

Die Schwachlastregelung (= Niedertarifzeit) umfasst folgende Zeiten:

* an Werktagen (Montag mit Freitag): 00:00 Uhr bis 06:00 Uhr sowie 22:00 Uhr bis 24:00 Uhr
* an Samstagen, Sonntagen sowie an den in München geltenden gesetzlichen Feiertagen: 00:00 Uhr bis 24:00 Uhr. 

Wer kann mir bitte als PHP-Anfänger erklären wie ich das Script umbauen muss. Hab da leider keinen Dunst :confused:

Lukky

Hat keiner eine Idee :confused: ?

Lukky

Hallo Lukky,

verstehe dein Vorhaben nicht so ganz. Ich nehme mal an, dass Du die Variable(n) loggst. Warum ziehst Du dir dann nicht die Daten für die Nacht raus und wertest sie aus.

Dann siehst Du wieviel KW/h verbraucht wurden.

Meist rentiert sich dieses nicht, da die Gebühr für den Doppeltarifzähler mehr kostet als man einspart, es sei denn Du würdest Nachts richtig loslegen.

Nachtspeicherheizung wirst Du ja keine haben, sonst hättest Du wohl schon den Niedertarif.

Hallo Rainer,

Problem sind die Feiertage. Raffe ich nicht ganz. Schwachlasttarif zu Hause rentiert er sich. Wir sind den ganzen Tag nicht zu Hause. Erst am Abend wird der meiste Strom verbraucht.

Lukky