Wasserverbrauch (Zeit-) messen

Moin,
meinen Wasserverbrauch messe ich mit dem EKM868 litergenau in Minutenabständen (pollen).

Wie kann ich mittels Script erreichen, dass z.b. eine Aktion ausgeführt wird, wenn 15min ununterbrochen Wasser entnommen wird (also 15x ein Impuls kommt).
Beispiel: Toilettenspülung ist undicht und es läuft permanent Wasser weg. Dadurch möchte ich auch kleinste Mengen erwischen.

Eine bestimmte Differenz innerhalb eines Zeitraumes ist ungenügend, da z.b. 2 Personen duschen und die Wasch-oder Spülmaschine laufen könnte.

if in 15min zähler >= 15
then action
else weiterschlafen

der Zähler müsste bei jeder Wasserentnahme starten und < 15x autom. stoppen

Viele Grüsse
Axel

Zählvariable und Scripttimer.

<?
$zaehler = GetValueInteger(39466);

switch($IPS_SENDER)
{
    case "Variable":                              
   if(($zaehler == 0) && (IPS_GetScriptTimer($IPS_SELF) == 0))
   {                                           
        IPS_SetScriptTimer($IPS_SELF, 900);
      SetValueInteger(39466, 1);
    }
   else
   {
      SetValueInteger(39466, $zaehler + 1);
    }
   break;
    case "TimerEvent":
    if($zaehler >= 15)
    {
       // mach Radau..............
    }
    else
    {
       SetValueInteger(39466, 0);
       IPS_SetScriptTimer($IPS_SELF, 0);
    }
    break;
}
?>

Wenn ich sowieso minütlich den Zähler abfrage und weiterverarbeite, brauche ich doch nur eine Variable um eins erhöhen, wenn ein Verbrauch in der letzten Minute war. Erreicht die Var den Wert 15, so löse ich Alarm aus.

Rainer, wenn du ganz unten den Zähler auf 0 setzt, wird dann nicht gleich eine neue Instanz dieses Skriptes ausgelöst? Kann es da nicht zu Timing-Problemen kommen (IPS_SetScriptTimer - IPS_GetScriptTimer)?

Nö, der Scripttimer und die Variable wird ja nur zurückgesetzt, wenn in 15min die Zählvariable unter 15 ist. Das Script prüft 1mal in 15min wo der Zähler steht. Die Zählvariable wird vom Trigger hochgezählt.

Sorry, ich stehe immer noch am Schlauch! Welche Variable triggert das Skript? Die 39466 oder eine andere?

die 39466 ist nur die Zählvariable. Getriggert wird über den Impuls des Wasserzählers.

Zurücksetzen nach Fehler musst Du natürlich von Hand. z.B. im Webfront über einen Button. So mach ich meine ganzen Meldungen, diese werden explizit quittiert.

Ich glaube, jetzt hab ichs endlich:

Du überwachst, wie oft wird das Skript durch die Variable in einer fixen Zeiteinheit getriggert.
Bei Änderung des Wasserverbrauchszählerstand wird das Skript getriggert (1x/min wenn Verbrauch>0)

hallo rainer,
erstmal vielen dank fürs script, habs mal bei mir eingefügt, nun müssen wir warten ob es funzt :smiley:

so, nach einigen tagen test läuft das script hervorragend.
für kurzzeitige tests habe ich die werte entsprechend runtergesetzt.
zur simulation einer def. wasserleitung habe ich das script mit dem stromzähler getriggert (da ist ja immer ein ereignis).
timerwerte stehen jetzt endgültig auf 720 sekunden und 12 takte (minütl.poll).
nach 12 min wird nun die wasserleitung geschlossen mit ansage und sms.
hinweis: script eignet sich eigentl nur bei 1 liter/counter um auch kleinste mengen wasser zu erfassen

hier noch kurzer hinweis:
beim testen habe ich die zähler-variable geloggt, damit man eine abfolge erkennen kann.