Pumpe alle 15 Minuten ein und aus.

  • Hallo,

    ich war letztes Jahr schon zu doof um mein Vorhaben umzusetzen und habe es am ende mit NodeRed gelöst.

    Möchte es allerdings dieses Jahr endlich umsetzen.

    Habe einen Sonoff mit Tasmota geflasht. Dieser soll alle 15 Minuten einschalten und wieder ausschalten. Immer im Wechsel.

    Wie bekomme ich das am einfachsten umgesetzt?

    Über die Zeiteinteilung wäre das ganz schön klick arbeit.

    Geflasht ist die aktuellste Version.

  • Erstmal zeitunabhängig komplette 24 Stunden.

    Später würde ich gerne noch den Temperatursensor vom sonoff integrieren.

    Wenn über X dann komplett durchlaufen lassen. Sonst eben 15 Minuten aus 15 Minuten ein.

    Aber eins nach dem anderen

  • Rule1 1

    Rule1

    on System#Init do Backlog Power1 1; RuleTimer1 900 endon

    on Rules#Timer=1 do Backlog Power1 0; RuleTimer2 900 endon

    on Rules#Timer=2 do Backlog Power1 1; RuleTimer1 900 endon

    - Skript nur theoretisch, in der Praxis geht es nicht (aber unten Punkt C) !!

    2 Mal editiert, zuletzt von karoCB (7. April 2023 um 12:12) aus folgendem Grund: Test ergab - Skript verweigert den Loop

  • Das kopiere ich so wie es ist in die Konsole und schon funktioniert es?

    Oder muss ich es separat noch irgendwo aktivieren?

    Wenn ich es auf 15min ein und 30min aus ändern möchte würde es dann so aussehen?

    Rule1 1

    Rule1

    on System#Init do Backlog Power1 1; RuleTimer1 900 endon

    on Rules#Timer=1 do Backlog Power1 0; RuleTimer2 1800 endon

    on Rules#Timer=2 do Backlog Power1 1; RuleTimer1 900 endon

    Ich habe an dem sonoff noch einen Temperatur Sensor.

    Kann man noch folgendes hinzufügen. Sobald Wert X überschritten und Wert X unterschritten ist soll die Pumpe durchlaufen also immer ein, sonst den Timermodus beibehalten?

    Es geht darum das bei unter 0C und über 25C die Pumpe dauerhaft laufen sollte.

    Wäre ein tolles Feature wenn mir dabei noch jemand helfen kann.

    Ich blicke bei den Rule Themen einfach nicht durch.

  • Wenn wir deinen Temeraturfühler noch nicht kennen wird es mit Unterstützung schwer.

    A.) Console mal eingeben: Status 8 eingeben und den Output hier posten.

    B.) Ja in Console rein !

    - Ruleprogrammierung ist schon lustig und für kleine CPU-Kerne die Lösung mehreren Events und WLAN zu folgen.

    C.) ich hatte aber nicht getestet! - besser so, da sich sonst die RuleTimer verklemmen

    Rule1

    ON Wifi#Connected do Var1 1 endon ;Start wenn Timer aktiv

    on power1#state do Var1 1 endon ;Test mit Webbutton 1 möglich

    on Var1#State=1 do Backlog Var1 0; Ruletimer1 30 endon ; 30 Sekunden

    on Var1#State=2 do Backlog Var1 0; Ruletimer2 20 endon ; asymetrisch 20 Sekunden

    on Rules#Timer=1 do Backlog Power2 1; Var1 2 endon ; Test auf Power2

    on Rules#Timer=2 do Backlog Power2 0; Var1 1 endon

    ; Hinweise entfernen

    Einmal editiert, zuletzt von karoCB (6. April 2023 um 18:24)

  • Rule1

    ON Wifi#Connected do Var1 1 endon

    on power1#state do Var1 1 endon

    on analog#Temperature>24 do VAR1 1 endon  ; Wenn Temperatur erreicht RuleTimer erneuern

    on analog#Temperature<1 do VAR1 1 endon ; Wenn Temperatur erreicht RuleTimer erneuern

    on Var1#State=1 do Backlog Var1 0; Ruletimer1 30 endon

    on Var1#State=2 do Backlog Var1 0; Ruletimer2 20 endon

    on Rules#Timer=1 do Backlog Power2 1; Var1 2 endon

    on Rules#Timer=2 do Backlog Power2 0; Var1 1 endon


    Um CPU-Strom zu sparen kann ein tele- vor dem Trigger helfen, aber dann ist die teleperiode kleiner zu wählen als die RuleTimer-Zeit !

    Weitere Stromeinsparung ist durch WLAN-Abschaltung nach einer Startzeit möglich.

    Wenn Punkt (A) reflektiert wurde, wissen wir ob eventuell die folgenden Zeilen oder Andere erforderlich sind für die Temperaturzusatzsteuerung.

    on tele-DS18B20#Temperature>24 do VAR1 1 endon

    on tele-DS18B20#Temperature< do VAR1 1 endon

  • Danke für die Antworten.

    Ich hatte die Rule aus dem ersten Beiträgen in die Konsole eingetragen. Leider schaltet sich das Gerät nicht ein oder aus.

    Das ist die Ausgabe.

    19:49:16.263 CMD: Rule 1

    19:49:16.271 MQT: stat/tasmota/RESULT = {"Rule1":{"State":"ON","Once":"OFF","StopOnError":"OFF","Length":174,"Free":337,"Rules":"on System#Init do Backlog Power1 1; RuleTimer1 900 endon on Rules#Timer=1 do Backlog Power1 0; RuleTimer2 900 endon on Rules#Timer=2 do Backlog Power1 1; RuleTimer1 900 endon"}}

    Installiert ist das die neuste Tasmota Version 12.4.0

    Muss ich die Rule Sache noch irgendwo aktivieren.

    Status 8 Ausgabe sieht wie folgt aus.

    19:45:08.368 CMD: Status 8

    19:45:08.376 MQT: stat/tasmota/STATUS8 = {"StatusSNS":{"Time":"2023-04-07T19:45:08","DS18B20":{"Id":"0307977973AB","Temperature":8.6},"TempUnit":"C"}}

  • Dann bitte nochmals diese Lösung probieren !

    Rule1

    ON Wifi#Connected do Var1 1 endon

    on power1#state do Var1 1 endon

    on tele-DS18B20#Temperature>24 do VAR1 1 endon

    on tele-DS18B20#Temperature<0 do VAR1 1 endon

    on Var1#State=1 do Backlog Var1 0; Ruletimer1 30 endon

    on Var1#State=2 do Backlog Var1 0; Ruletimer2 20 endon

    on Rules#Timer=1 do Backlog Power2 1; Var1 2 endon

    on Rules#Timer=2 do Backlog Power2 0; Var1 1 endon

  • wenn du nur ein Power1 hast dann

    geht ein manueller Test nicht ( für später auf Power2 umgebaut)

    nimm den Skript

    Rule1

    ON Wifi#Connected do Var1 1 endon

    on power2#state do Var1 1 endon

    on tele-DS18B20#Temperature>24 do VAR1 1 endon

    on tele-DS18B20#Temperature<0 do VAR1 1 endon

    on Var1#State=1 do Backlog Var1 0; Ruletimer1 30 endon

    on Var1#State=2 do Backlog Var1 0; Ruletimer2 20 endon

    on Rules#Timer=1 do Backlog Power1 1; Var1 2 endon

    on Rules#Timer=2 do Backlog Power2 0; Var1 1 endon

  • Müssten hier die letzten beiden Werte nicht Power1 beide heißen?

    Und hier in der vorletzten Zeile aus Power 1 eine zwei machen?

    Oder verstehe ich das falsch?

  • So hast es geklappt

    Rule1

    ON Wifi#Connected do Var1 1 endon

    on power1#state do Var1 1 endon

    on tele-DS18B20#Temperature>24 do VAR1 1 endon

    on tele-DS18B20#Temperature<0 do VAR1 1 endon

    on Var1#State=1 do Backlog Var1 0; Ruletimer1 30 endon

    on Var1#State=2 do Backlog Var1 0; Ruletimer2 20 endon

    on Rules#Timer=1 do Backlog Power1 1; Var1 2 endon

    on Rules#Timer=2 do Backlog Power1 0; Var1 1 endon


    Was genau bewirkt der Eintrag tele eigentlich?

  • auf der Console ist teleperiod 300 im Standard eingestellt kann auch 10 oder anders gestellt werden.

    Zu diesen Ablaufperioden in Sekunden werden Ausgaben auf der Console erfolgen und zuvor Trigger abgearbeiter die das Vorwort tele- enthalten.

    PS: on power1#state do Var1 1 endon - diese Zeile sollte nur mit einem Power eingebaut werden der nicht das Zielrelais bedient, da sonst der Ablauf nicht den eingestellten Zeiten folgt - oder ?

    Einmal editiert, zuletzt von karoCB (18. April 2023 um 09:09)

  • PS: on power1#state do Var1 1 endon - diese Zeile sollte nur mit einem Power eingebaut werden der nicht das Zielrelais bedient, da sonst der Ablauf nicht den eingestellten Zeiten folgt - oder ?

    Ihr seid die Profis 🙂

    Habe da wirklich keine Ahnung.

    Also in das ändern?

    on power#state do Var1 1 endon

  • Heist die Rot Markierte Zeile kann weg?

    Rule1

    ON Wifi#Connected do Var1 1 endon

    on power1#state do Var1 1 endon

    on tele-DS18B20#Temperature>24 do VAR1 1 endon

    on tele-DS18B20#Temperature<0 do VAR1 1 endon

    on Var1#State=1 do Backlog Var1 0; Ruletimer1 30 endon

    on Var1#State=2 do Backlog Var1 0; Ruletimer2 20 endon

    on Rules#Timer=1 do Backlog Power1 1; Var1 2 endon

    on Rules#Timer=2 do Backlog Power1 0; Var1 1 endon