Shelly soll bei Schalterbetätigung nur schalten, wenn seit der letzten Betätigung eine bestimmte Zeit vergangen ist.

  • Hallo Gemeinde,

    nachdem mir ein Arbeitskollege lange von der Funtkionalität der Shellys vorgeschwärmt hatte, habe ich tatsächlich einen Einsatzzweck dafür gefunden.:saint:

    Zum Betreiben/Schalten eines Heizelements (150W) setzte ich seit Kurzem einen Shelly Plus 1PM ein.
    Dieser wird - über den Eingang "SW" - durch einen Strömungsschalter in der Frischwasserleitung unseres Hauses geschaltet.


    Damit das Heizelement nicht überhitzt, wird der Ausgang "O" des Shelly über die "Auto OFF"-Einstellung (Home - Output - Automations - Timers) nach wenigen Sekunden wieder abgeschaltet.

    01_ShellyPlus1PM_Timers.jpg

    Dies funktioniert auch prima und lässt sich sekundengenau einstellen. Vorher hatte ich das mit einem ELTAKO-Zeitschaltrelais versucht, bei dem die Zeiteinstellung eine ziemliche "Frikkelei" war - weshalb dann auch die Hoffnung aufkam, dies mit einem Shelly besser hinzukriegen.

    Problem ist nun die Tatsache, das bei Betätigung des Strömungsschalters in kurzen Abständen, jedesmal - natürlich - auch der Shelly schaltet und damit das Heizelement in Betrieb gesetzt wird, weshalb dies dann doch zu heiß wird.

    Mein Gedanke ist nun - nachdem ich die "Actions" im Shelly entdeckt habe - das Einschalten nur dann zuzulassen, wenn die letzte Betätigung bereits seit einer Mindestzeit X verstrichen ist - also ein Mindestzeitabstand zwischen zwei Betätigungen vorliegt.
    Jedenfalls habe ich den Hinweis "Minimum interval in seconds for two consecutive invocations of the hook. If events which trigger the hook during this interval occur they will be suppressed. "bei der Actions-Definiton "Execute when" so verstanden, das dies möglich sein müsste.

    02_ShellyPlus1PM_Input-Action.jpg


    Leider funktioniert dies aber nicht. Habe schon alle möglichen Einstellungen probiert: Input-Action, Output-Action, verschiedene Schalterkonfigurationen, ... - immer mit dem selben negativen Ergebnis.

    Hier noch die aktuellen In-/Output-Einstellungen. Diese wurden - wie erwähnt - schon mit allen Möglichkeiten versucht.

    03_ShellyPlus1PM_Input-OUTput-Einstellungen.jpg

    Hat jemand von Euch Erfahrungen mit den Actions und kann einen Tipp geben, wo das Problem liegen könnte?


    Vielen Dank für Eure Bemühungen und schönes Wochenende

    Grüße von
    Martin

  • Ich weiß nicht, ob dein Anliegen per Actions gelingen kann - vielleicht ist dies möglich.

    Per Skript gelingt so etwas auf jeden Fall. Dies ist ein Grund, weshalb ich nicht versuche, die letzten Möglichkeiten von Actions auszureizen. Eine Implementation per Szenen (Cloud) kann ich eh nicht empfehlen, weil dann die Funktion Cloud abhängig ist und zudem wegen der Datenübertragung auch mehr Energie verbraucht.

    1. Eingang auf detached stellen. Damit werden Signaländerungen am Eingang erfasst, es erfolgt aber keine Reaktion am Ausgang. Diese Kopplung soll das Skript übernehmen.
    2. Das Skript braucht einen Event Handler, an welchen die Firmware das Ereignis "Eingangssignal geändert" o.ä. übermittelt.
    3. Das Skript nutzt eine boolesche Variable "Enable", um festzustellen, ob geschaltet werden darf oder nicht.
    4. Wenn Enable = true, schaltet der Event Handler den Ausgang, setzt Enable auf false und startet einen Timer, an dessen Ende Enable auf true gesetzt wird.
      Die Dauer des Timers legt fest, wie lang die Latenzzeit sein soll.

    Das ist nicht schwierig zu implementieren, braucht aber ein wenig Programmierkenntnisse, etwas Experimentierfreudigkeit und insbesondere das Studieren der Shelly API.

    Der Vorteil eines Skriptes gegenüber Actions ist, dass via Skript viel mehr Anwendungsorientierung implementierbar ist. Actions bieten nur einen eng begrenzten Rahmen von Anwendungen "von der Stange".

    Edit:

    Es dürfte auch möglich sein, hierfür HomeAssistant zu nutzen. Ich verwende kein fertiges übergeordnetes System, stattdessen Node-RED und, wie du an anderer Stelle schriebst, ebenfalls Influx und Grafana (neben Mosquitto). Der Shelly könnte vielleicht per Action HomeAssistant die Änderung am Eingang übermitteln, woraufhin HomeAssistant passend reagieren sollte.

    Dies hat allerdings den kleinen Nachteil, dass die gewünschte Funktion ausfällt, falls die Kommunikation zwischen deinem NUC und dem Shelly mal nicht gelingen sollte. Eine autarke Lösung auf dem Shelly ist in jedem Fall am sichersten.

    An Cloud-/Szenen-Benutzer (insbesondere für Regelungen): Was erwartest du, wenn Internet oder Cloud sabotiert werden? Nicht nur dafür meine kleine Skripteinführung  8)

    Die einzig existierende Konstante ist der Wandel. Oft liegt die größte Schwierigkeit darin, das Anliegen des Klienten zu verstehen.

    Einmal editiert, zuletzt von eiche (15. Juni 2024 um 14:53)

  • Ich nehme an, die Aktion findet nicht statt.

    Dann trage doch mal eine Zeit ein. From:00:00 To: 23:59 (Erstes Bild)

    Edit: Hatte jetzt Deinen Text nicht auf dem Schirm gehabt eiche  
    Aber sollte doch auch dann per Aktion funktionieren.

    Mit besten Grüßen

    Martin

    Falls sich Jemand von mir persönlich angegriffen fühlt, dann bitte ich um eine kurze Info. Es lässt sich alles klären. Ich bin, wie ich bin.

    Einen 3EM kann man übrigens in 1728 Varianten einbauen und verdrahten .Es sind nun noch weitere Möglichkeiten dazu gekommen.

    In den meisten Einbauanleitungen sind die Wandler in der falschen Richtung eingezeichnet.

  • Zum Betreiben/Schalten eines Heizelements (150W) setzte ich seit Kurzem einen Shelly Plus 1PM ein.
    Dieser wird - über den Eingang "SW" - durch einen Strömungsschalter in der Frischwasserleitung unseres Hauses geschaltet.

    Es hat zwar rein garnichts mit deiner Frage zu tun und ist nur Neugier, aber:

    Wo genau ist das Element eingesetzt und weshalb muss da dann geheizt werden?

  • Zunächst mal vielen Dank für die schnellen Rückmeldungen.

    eiche
    Die Umsetzung der Funktion sollte - nein muß - in jedem Fall ohne Cloud/Internet oder Home Assistant (das hat der erwähnte Kollege auch vorgeschlagen) ausgeführt werden, daher habe ich mich an den Actions versucht und die Einstellungsseite (Bild 2 oben) hat mir - vorallem mit dem oben erwähnten Hinweis - den Eindruck gemacht, daß mein Vorhaben damit realisierbar sei.
    Bei den grundlegenden Funktionalitäten der Haustechnik möchte ich ohne irgendwelche Automatisierungssysteme auskommen - schon auch deshalb, weil meine ´"Mitbewohnerin" damit gar nichts anfangen kann und es auch Handwerkern, die - wenn der aktuelle "Admin" mal ausfallen sollte ;) - auch vielleicht eher weniger "Lust" verspüren könnten, sich im Problemfall mit der Anlage zu beschäftigen.

    Danke für den Tipp mit den Skripts. Funktioniert das auch ohne Cloud?

    Ich habe keine Ahnung von Skriptprogrammierung, weshalb ich auch bei den Actions "gelandet" bin.
    Habe im Rahmen meiner Recherche auch schon Deine "Skripteinführung" überflogen, habe jedoch auf den "ersten flüchtigen Blick" nicht den Durchblick erlangt. Aber ich werde mir diese nochmal genauer anschauen.


    Krauskopp
    Ohne Zeitangabe sollte die Action doch nach meinem Verständnis immer ausgeführt werden - zumindest steht auf der Startseite des Shelly ganz unten bei den Actions "anytime".

    01.jpg

    Habe aber nichts desto trotz auch schon mal versuchsweise eine Zeit eingetragen gehabt - allerdings ebenfalls ohne Erfolg.


    Jay Bee
    Das Heizelement ist an die Wand geschraubt und soll den darauf montierten Temperatursensor der selbstlernenden Zirkulationpumpe (Vortex BWO 155 SL) aktivieren. Diese benötigt eine Warmwassertemperatur von mindestens 50° um ein Fliessen des Warmwassers detektieren zu können. Seit ich die WW-Temperatur aber auf einen kleineren Wert gesetzt habe, weil wir die "Hohe" nicht benötigen und dadurch weniger Energie verbraucht wird, funktioniert das nämlich nicht mehr.
    Die Überlegung war, den Sensor mit einem Heizelement zu erwärmen, um unabhängig von der WW-Temperatur zu sein.

  • Dieses Thema enthält 10 weitere Beiträge, die nur für registrierte Benutzer sichtbar sind, bitte registrieren Sie sich oder melden Sie sich an um diese lesen zu können.