Beiträge von GigabitPower

    Hallo,

    @apreick: leider funktioniert es doch nicht so, wie gewünscht, denn die Action löst den timer sofort nach dem ersten "off" des Eingangs aus. Wellenbewegungen im Pool können damit nicht ignoriert werden. ;(

    Ich habe leider die Anforderung, dass die Aktion erst dann ausgelöst wird, wenn der Eingang permanent ohne Unterbrechung über eine Dauer von 300 Sekunden auf "off" steht. ;)

    Da hilft wahrscheinlich nur ein Javascript oder? :/

    Hallo zusammen,

    nach weiteren Stunden der Recherche habe ich den Fehler gefunden. 8) :thumbup:

    Der Code war prinzipiell richtig, jedoch dürfen pro Script nicht mehr als 5 Timer gesetzt werden.

    Ich habe das Ganze daher optimiert und komme jetzt mit 5 Timern aus. Außerdem habe ich jetzt für die Rückspüldauer 60 Sekunden angesetzt, was einigermaßen der Realität entspricht.

    Anbei noch der jetzt funktionierende Code des Scripts.

    VG Oliver :)

    Hallo zusammen,

    der folgende Aufruf funktioniert am Anfang des Javascripts:

    Shelly.call("http.get",{url: 'http://192.168.177.175/relay/0?turn=on'});

    Leider funktioniert folgendes für mit einer Zeitverzögerung von 4 Sekunden nicht:

    function timerCode12() {

    Shelly.call("http.get",{url: 'http://192.168.177.175/relay/0?turn=on'});

    };

    Timer.set(

    /* 3 Sekunden warten bis Rückspülventil auf Rückspülung geschaltet ist, zzgl. timerCode1*/ 4000,

    /* repeat? */ false,

    /* callback: Aufruf, Pumpe auf maximale Drehzahl zu schalten */ timerCode12

    );// Pumpe ist jetzt auf voller Drehzahl

    Als Fehler bekomme ich:

    pasted-from-clipboard.png

    Anbei nochmals die beiden Aufruf unten als Code. Was mache ich hier falsch? Bitte dringende um eine kleine Hilfe ;(

    Vielen Dank

    Oli :)

    Hallo zusammen,

    ich habe es jetzt doch irgendwie geschafft, das Ganze als in Form eines Scripts umzusetzen (siehe Code unten). Leider suche ich verzweifelt nach der Funktion/ Aufruf für das Einschalten eines Ausgangs (z.B. OUT1) auf einem remote Shelly Plus UNI (IP Adresse z.B. 192.168.178.156).

    Es wäre klasse, wenn mir hier jemand weiterhelfen könnte. Mit "Shelly.call (Switch.set"....) kann man nur lokale Ausgänge schalten.

    Vielen Dank im voraus.

    Viele Grüße Oli :)

    Und, wie hier alles wissen 😎, habe ich fast keine Ahnung mit Script (2-3 abgeänderte)

    Vielleicht wäre ein übergeordnetes System für dich besser geeignet, um unabhängig zu werden?

    Wird ja auch nicht dein letztes Projekt sein 😎

    ja, ein übergeordnetes System wie Home Assistant würde auch gehen, jedoch bin ich dann abhängig von der WLAN Verbindung. Ziel sollte es sein, dass der gesamte Vorgang innerhalb des einen Shelly Plus UNI gesteuert und kontrolliert wird. 8)

    Trotzdem vielen Dank für Deinen Beitrag :) :thumbup:

    Hallo zusammen,

    ich möchte mit meinem Shelly Plus UNI eine automatisierte Rückspülung für einen Pool konfigurieren. Dazu muss zuerst die laufende Pumpe über ein angezogenes Relais 1 (OUT1) ausgeschaltet werden, dann nach 2 Sekunden das Magnetventil für den Luftdruck des Rückspülventils per Relais 2-Anschaltung (OUT2) geöffnet werden, die Pumpe mit einer Verzögerung von 5 Sekunden wieder eingeschaltet werden und nach 25 Sekunden wieder ausgeschaltet werden. Nach einer weiteren Verzögerung von 2 Sekunden soll das Magnetventil wieder geschlossen werden (Relais ausgeschaltet). Nach einer weiteren Verzögerung von 5 Sekunden soll die Pumpe wieder eingeschaltet werden. Der ganze Vorgang soll freitags um 9:00 Uhr oder manuell über den digitalen Eingang IN1 ausgeführt werden.

    Kann ein solche Ablauf durch lokale Aktionen umgesetzt werden? Da nur 5 Aktionen innerhalb einer konfigurierbaren "Aktion" im Shelly Menü zugelassen sind, wird es wahrscheinlich schwierig.

    Daher nochmal der Ablauf in Stichworten:

    1. Auslöser, freitags 9:00 Uhr oder digitaler Eingang IN1

    2. Ausgang OUT1 anschalten (Pumpe aus)

    3. Verzögerung von 2 Sekunden (Wartezeit bis Wasserdruck abgebaut ist)

    4. Ausgang OUT2 anschalten (Magnetventil ein -> Luftdruck für Rückspülventil liegt an)

    5. Verzögerung von 5 Sekunden (Dauer für Umschaltung des Rückspülventils)

    6. Ausgang OUT1 ausschalten (Pumpe ein)

    7. Verzögerung von 25 Sekunden (Dauer für die eigentliche Rückspülung)

    8. Ausgang OUT1 anschalten (Pumpe aus)

    9. Verzögerung von 2 Sekunden (Wartezeit bis Wasserdruck abgebaut ist)

    10. Ausgang OUT2 ausschalten (Magnetventil aus -> Luftdrucksperre)

    11. Verzögerung von 5 Sekunden (Wartezeit bis Feder das Rückspülventil zurückstellt)

    12. Ausgang OUT 2 ausschalten (Pumpe an)

    Wahrscheinlich wäre eine Script geeigneter, doch leider komme ich als Anfänger und fehlenden Javascript-Kenntnissen nach mehrstündiger Recherche nicht weiter. ;(

    Daher bin ich über jede Hilfe von Euch dankbar. :)

    Viele Grüße

    Oliver

    @Olsche: ja, das kann ich mir vorstellen und ich würde meine Anforderungen auch viel lieber ohne Cloud umsetzen. Leider kenne ich mich mit den Befehlen, Sprache, Funktionen der lokalen Aktionen nicht aus, denn meine Anforderung für die Ausführung einer automatisieren Rückspülung "relativ" komplex:

    Dazu folgende Schritte:

    1. Auslöser des nachfolgenden Ablaufs kann z.B. wöchentlich freitags um 9:00 Uhr oder per Taster am IN1 erfolgen

    2. es folgen 2 parallele Aktionen a + b

    a) OUT1 (Pumpe mit Wechselrelais) wird für 10 Sekunden auf "on" gestellt (führt dazu, dass die Pumpe gestoppt wird), danach für 30 Sekunden auf "off" (Pumpe an). Danach wieder 10 Sekunden auf "on" (Pumpe aus)

    b) nach einer Wartezeit von 1 Sekunde soll OUT2 für 50 Sekunden auf "on" gestellt werden (Magnetventil für den Luftdruck des Rückspülventils wird geöffnet).

    3. nachdem die 50 Sekunden der beiden Aktionen unter Schritt 2 erfolgt sind soll OUT1 wieder auf "off" (Pumpe an) gestellt werden

    Vielleicht wäre auch ein Script die richtige Lösung dafür, leider kenne ich mich mit Java auch nicht aus.

    Vielen Dank für deine Hilfe

    VG Oliver

    @Olsche: eigentlich möchte ich mehrere Szenen hintereinander für eine automatische Rückspülung beim Pool (Pumpe ausschalten, Magnetventil ein, Pumpe für x Sekunden einschalten, Magnetventil aus...) zeitgesteuert ausführen. Ergänzend zur Zeit habe ich als Oder Bedingung einen digitalen Eingang zum Auslösen der ersten Szene konfiguriert und bin dort schon gescheitert.

    Daher habe ich eine ganz einfache Szene am definiert, die beim Schließend des Eingang IN1 des Plus UNI als Aktion das Schalten des OUT1 für 3 Sekunden bewirken soll. Egal, was ich als Bedingung nehmen, das Schalten von OUT1 oder auch OUT2 geht nicht

    Das Gleiche habe ich bei meinem UNI mit Erfolg umsetzen können.

    Interessant ist, dass ich den Eingang IN1 beim Plus UNI als Bedingung für das Schalten von OUT1 am UNI nehmen kann und es funktioniert. Umgekehrt (Bedingung beim Plus UNI oder beim UNI führt beim Schalten von OUT1 am Plus UNI nicht zum Erfolg).

    Das Schalten des OUT1 am Plus UNI unter dem Menüpunkt "Aktionen" mit der Bedingung http://localhost/relay/0?turn=off&timer=5 funktioniert perfekt.

    VG Oliver

    Hallo,

    ich bin auf der Suche nach einem Script für die automatische Nachspeisung eines Pools. Der Schwimmer schließt bei normalem Wasserstand die beiden Pole, wenn eine bestimme Wasserlinie unterschritten wird öffnet er den elektrischen Kreis. Um eine ungewollte Wellenbewegung abzufangen, muss diese Line mindestens 5 min unterschritten werden. Dann erst darf das Magnetventil für die Wassernachspeisung für eine bestimmte Zeit, z.B. 20 min, geöffnet werden.

    Konkret möchte ich dafür meinen neuen Shelly Plus UNI einsetzen. Den Wasserschimmer habe ich am digitalen Eingang 1 des Shelly Plus UNI eingeschlossen, das Magnetventil über ein zusätzliches Relais an OUT1 des Shelly Plus UNI.

    Die Anforderung bzgl. der Mindestdauer von 5 min ohne Zeitunterbrechung, nach der der Status "Eingang aus" (digitaler Eingang 1 = IN1 bildet mit GND keine elektrische Verbindung) vorhanden ist, lässt sich nicht über die Shelly Oberfläche als Bedingung definieren. Das der Schalter 1 (OUT1) dann nach dem Aktivieren nach 20 min wieder unterbrochen ist, lässt sich über die Shelly Oberfläche konfigurieren.

    Daher benötige ich ein Script, dass folgende Aufgaben erledigt:

    1. der digitale Eingang 1 (IN1) ist im Normalzustand (Pool hat genug Wasser) mit GND elektrisch über den Schwimmschalter geschlossen

    2. sofern der digitiale Eingang 1 (IN1) mindestens 5 Minuten ohne Unterbrechung von GND elektrisch über den Schwimmschalter unterbrochen wird soll der Ausgang OUT1 schalten, d.h. beiden Pole für 20 Minuten einen elektrischen Durchgang schalten

    Ich bin über jede Hilfe dankbar.