Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. Einfache Timersteuerung mit rekursiver Prüfung

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    14
    1
    276

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    591

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    1.8k

Einfache Timersteuerung mit rekursiver Prüfung

Geplant Angeheftet Gesperrt Verschoben Blockly
14 Beiträge 3 Kommentatoren 775 Aufrufe 2 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • M M1R0O

    Hi,
    für meine Gartenbewässerung habe ich eine ganz einfach Timersteuerung gebaut, die soweit gut funktioniert. Ich weiß, dass es elegantere Möglichkeiten gibt, aber so finde ich es topp!
    Bei Betätigung einer Taste, startet die Bewässerung und endet nach 20 Min.
    Bildschirmfoto 2025-04-09 um 15.08.32.png

    Da ich den Ventilen noch nicht 100%ig vertraue, möchte ich sicher gehen, dass der "false"-Befehl so lange gesendet wird, bis das Ventil zu ist (="false").
    Nun meine Frage:
    Bildschirmfoto 2025-04-09 um 15.21.43.png

    So machte es mMn keinen Sinn, da der "wiederhole"-Befehl nicht auch nach 20 Min abgearbeitet wird.

    Könnte ich stattdessen nicht mit einer Verzögerung, sondern mit einer Pause arbeiten:
    Bildschirmfoto 2025-04-09 um 15.21.19.png

    Oder wie könnte ich es lösen?
    Danke für Eure Tipps!

    AsgothianA Offline
    AsgothianA Offline
    Asgothian
    Developer
    schrieb am zuletzt editiert von Asgothian
    #2

    @m1r0o sagte in Einfache Timersteuerung mit rekursiver Prüfung:

    Hi,
    für meine Gartenbewässerung habe ich eine ganz einfach Timersteuerung gebaut, die soweit gut funktioniert. Ich weiß, dass es elegantere Möglichkeiten gibt, aber so finde ich es topp!

    Da ich den Ventilen noch nicht 100%ig vertraue, möchte ich sicher gehen, dass der "false"-Befehl so lange gesendet wird, bis das Ventil zu ist (="false").
    Nun meine Frage:
    Bildschirmfoto 2025-04-09 um 15.21.43.png

    So machte es mMn keinen Sinn, da der "wiederhole"-Befehl nicht auch nach 20 Min abgearbeitet wird.

    Nein, wird er nicht. der Wiederhole Befehl wird deinen ioBroker mit 100% Systemlast belasten bis das Ventil offen ist - nicht ideal.
    nebenbei - es fehlt der Haken bei 'löschen falls läuft'

    Was du willst:
    An Stelle des wiederhole bis kommt zuerst ein 'anhalten Intervall' , dann ein 'ausführen Intervall' alle 1 s. Darin dein Falls-Baustein, zusammen mit einem 'sonst', in dem steht 'anhalten intervall'

    Zusätzlich empfehle ich (muss aber nicht):
    An Stelle des steuere set mit falsch mit Verzögerung kommt:

    • ein anhalten timeout
    • ein timeout in 20 Min. Darin ein steuere set mit falsch sowie ein anhalten Intervall

    Oder wie könnte ich es lösen?
    Danke für Eure Tipps!

    A.

    ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
    "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

    M 1 Antwort Letzte Antwort
    1
    • AsgothianA Asgothian

      @m1r0o sagte in Einfache Timersteuerung mit rekursiver Prüfung:

      Hi,
      für meine Gartenbewässerung habe ich eine ganz einfach Timersteuerung gebaut, die soweit gut funktioniert. Ich weiß, dass es elegantere Möglichkeiten gibt, aber so finde ich es topp!

      Da ich den Ventilen noch nicht 100%ig vertraue, möchte ich sicher gehen, dass der "false"-Befehl so lange gesendet wird, bis das Ventil zu ist (="false").
      Nun meine Frage:
      Bildschirmfoto 2025-04-09 um 15.21.43.png

      So machte es mMn keinen Sinn, da der "wiederhole"-Befehl nicht auch nach 20 Min abgearbeitet wird.

      Nein, wird er nicht. der Wiederhole Befehl wird deinen ioBroker mit 100% Systemlast belasten bis das Ventil offen ist - nicht ideal.
      nebenbei - es fehlt der Haken bei 'löschen falls läuft'

      Was du willst:
      An Stelle des wiederhole bis kommt zuerst ein 'anhalten Intervall' , dann ein 'ausführen Intervall' alle 1 s. Darin dein Falls-Baustein, zusammen mit einem 'sonst', in dem steht 'anhalten intervall'

      Zusätzlich empfehle ich (muss aber nicht):
      An Stelle des steuere set mit falsch mit Verzögerung kommt:

      • ein anhalten timeout
      • ein timeout in 20 Min. Darin ein steuere set mit falsch sowie ein anhalten Intervall

      Oder wie könnte ich es lösen?
      Danke für Eure Tipps!

      A.

      M Offline
      M Offline
      M1R0O
      schrieb am zuletzt editiert von
      #3

      @asgothian
      Wow, danke!
      DAs muss ich mir erstmal vor Augen führen.
      Dafür habe ich direkt Fragen:

      • was genau meint 'löschen falls läuft'?
      • was genau ist das 'anhalten Intervall'? (ausführen finde ich)
      AsgothianA 1 Antwort Letzte Antwort
      0
      • M M1R0O

        @asgothian
        Wow, danke!
        DAs muss ich mir erstmal vor Augen führen.
        Dafür habe ich direkt Fragen:

        • was genau meint 'löschen falls läuft'?
        • was genau ist das 'anhalten Intervall'? (ausführen finde ich)
        AsgothianA Offline
        AsgothianA Offline
        Asgothian
        Developer
        schrieb am zuletzt editiert von
        #4

        @m1r0o sagte in Einfache Timersteuerung mit rekursiver Prüfung:

        @asgothian
        Wow, danke!
        DAs muss ich mir erstmal vor Augen führen.
        Dafür habe ich direkt Fragen:

        • was genau meint 'löschen falls läuft'?

        Sollte das Skript ein zweites mal getriggert werden, dann wird - sofern der Haken gesetzt ist - die verzögerte Ausführung vom vorherigen mal (wenn sie noch aktiv ist) gelöscht bevor sie neu mit (in diesem Fall) 20 Minuten gesetzt wird

        • was genau ist das 'anhalten Intervall'? (ausführen finde ich)

        Siehe hier:
        Screenshot 2025-04-09 at 16.14.59.png

        ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
        "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

        M 1 Antwort Letzte Antwort
        1
        • AsgothianA Asgothian

          @m1r0o sagte in Einfache Timersteuerung mit rekursiver Prüfung:

          @asgothian
          Wow, danke!
          DAs muss ich mir erstmal vor Augen führen.
          Dafür habe ich direkt Fragen:

          • was genau meint 'löschen falls läuft'?

          Sollte das Skript ein zweites mal getriggert werden, dann wird - sofern der Haken gesetzt ist - die verzögerte Ausführung vom vorherigen mal (wenn sie noch aktiv ist) gelöscht bevor sie neu mit (in diesem Fall) 20 Minuten gesetzt wird

          • was genau ist das 'anhalten Intervall'? (ausführen finde ich)

          Siehe hier:
          Screenshot 2025-04-09 at 16.14.59.png

          M Offline
          M Offline
          M1R0O
          schrieb am zuletzt editiert von M1R0O
          #5

          @asgothian
          Bildschirmfoto 2025-04-09 um 16.24.24.png
          so?

          Ich habe bisher nicht mit Intervallen und Timeouts gearbeitet, sorry.

          AsgothianA 1 Antwort Letzte Antwort
          0
          • M M1R0O

            @asgothian
            Bildschirmfoto 2025-04-09 um 16.24.24.png
            so?

            Ich habe bisher nicht mit Intervallen und Timeouts gearbeitet, sorry.

            AsgothianA Offline
            AsgothianA Offline
            Asgothian
            Developer
            schrieb am zuletzt editiert von
            #6

            @m1r0o

            fast:

            • das stop timeout im Timeout ist unnötig.
            • du hat für das Intervall den falschen Baustein zum abschalten genommen.

            ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
            "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

            M 1 Antwort Letzte Antwort
            1
            • AsgothianA Asgothian

              @m1r0o

              fast:

              • das stop timeout im Timeout ist unnötig.
              • du hat für das Intervall den falschen Baustein zum abschalten genommen.
              M Offline
              M Offline
              M1R0O
              schrieb am zuletzt editiert von
              #7

              @asgothian
              Bildschirmfoto 2025-04-09 um 16.34.30.png
              ?

              AsgothianA 1 Antwort Letzte Antwort
              0
              • M M1R0O

                @asgothian
                Bildschirmfoto 2025-04-09 um 16.34.30.png
                ?

                AsgothianA Offline
                AsgothianA Offline
                Asgothian
                Developer
                schrieb am zuletzt editiert von Asgothian
                #8

                @m1r0o der stop timeout vor dem ausführen Intervall muss auch noch auf 'stop zyklische Ausführung Intervall' umgesetzt werden, sonst geht es nicht.

                A.

                ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
                "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

                M 1 Antwort Letzte Antwort
                1
                • AsgothianA Asgothian

                  @m1r0o der stop timeout vor dem ausführen Intervall muss auch noch auf 'stop zyklische Ausführung Intervall' umgesetzt werden, sonst geht es nicht.

                  A.

                  M Offline
                  M Offline
                  M1R0O
                  schrieb am zuletzt editiert von
                  #9

                  @asgothian
                  Bildschirmfoto 2025-04-09 um 16.39.00.png

                  AsgothianA 1 Antwort Letzte Antwort
                  0
                  • M M1R0O

                    @asgothian
                    Bildschirmfoto 2025-04-09 um 16.39.00.png

                    AsgothianA Offline
                    AsgothianA Offline
                    Asgothian
                    Developer
                    schrieb am zuletzt editiert von
                    #10

                    @m1r0o

                    Nun bist du fast da:

                    • im falls Baustein fehlt eingesetzt das 'steuere set mit wahr' um das ganze nochmal anzusteuern

                    A

                    ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
                    "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

                    M 1 Antwort Letzte Antwort
                    1
                    • AsgothianA Asgothian

                      @m1r0o

                      Nun bist du fast da:

                      • im falls Baustein fehlt eingesetzt das 'steuere set mit wahr' um das ganze nochmal anzusteuern

                      A

                      M Offline
                      M Offline
                      M1R0O
                      schrieb am zuletzt editiert von
                      #11

                      @asgothian
                      Danke. Ist am Handy gerade nicht machbar. Mache ich später.
                      Zum Verständnis: Ich setzte „falls ≠ falsch“ steuere „falsch“

                      Korrekt?

                      1 Antwort Letzte Antwort
                      0
                      • M M1R0O

                        Hi,
                        für meine Gartenbewässerung habe ich eine ganz einfach Timersteuerung gebaut, die soweit gut funktioniert. Ich weiß, dass es elegantere Möglichkeiten gibt, aber so finde ich es topp!
                        Bei Betätigung einer Taste, startet die Bewässerung und endet nach 20 Min.
                        Bildschirmfoto 2025-04-09 um 15.08.32.png

                        Da ich den Ventilen noch nicht 100%ig vertraue, möchte ich sicher gehen, dass der "false"-Befehl so lange gesendet wird, bis das Ventil zu ist (="false").
                        Nun meine Frage:
                        Bildschirmfoto 2025-04-09 um 15.21.43.png

                        So machte es mMn keinen Sinn, da der "wiederhole"-Befehl nicht auch nach 20 Min abgearbeitet wird.

                        Könnte ich stattdessen nicht mit einer Verzögerung, sondern mit einer Pause arbeiten:
                        Bildschirmfoto 2025-04-09 um 15.21.19.png

                        Oder wie könnte ich es lösen?
                        Danke für Eure Tipps!

                        paul53P Offline
                        paul53P Offline
                        paul53
                        schrieb am zuletzt editiert von paul53
                        #12

                        @m1r0o sagte: Oder wie könnte ich es lösen?

                        De Prüfung darf erst nach den 20 Minuten erfolgen, weshalb man sie in ein Timeout packt. Die eigentliche Prüfung erfolgt schon in der Schleifen-Bedingung und muss dann nicht nochmal erfolgen. Um nur z.B. jede Sekunden zu prüfen, kann man eine Pause in die Schleife setzen. Ohne die Pause wird im ms-Takt gefeuert!! Außerdem sollte man nach einer bestimmten Anzahl der Wiederholungen abbrechen und nicht unendlich oft senden.

                        Blockly_temp.JPG

                        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                        1 Antwort Letzte Antwort
                        1
                        • M Offline
                          M Offline
                          M1R0O
                          schrieb am zuletzt editiert von M1R0O
                          #13

                          ICh habe es jetzt so umgesetzt und auch verstanden (hoffe ich ;-) )!!
                          Bildschirmfoto 2025-04-09 um 19.51.56.png
                          Danke euch beiden!

                          Ich werde mir einen Shelly in die Pumpensteuerung setzen, der die Pumpe im Notfall ausschaltet, anstatt mir eine Mail zu senden, falls es zu häufig passiert.

                          paul53P 1 Antwort Letzte Antwort
                          0
                          • M M1R0O

                            ICh habe es jetzt so umgesetzt und auch verstanden (hoffe ich ;-) )!!
                            Bildschirmfoto 2025-04-09 um 19.51.56.png
                            Danke euch beiden!

                            Ich werde mir einen Shelly in die Pumpensteuerung setzen, der die Pumpe im Notfall ausschaltet, anstatt mir eine Mail zu senden, falls es zu häufig passiert.

                            paul53P Offline
                            paul53P Offline
                            paul53
                            schrieb am zuletzt editiert von paul53
                            #14

                            @m1r0o sagte: so umgesetzt und auch verstanden

                            Das Stoppen eines (nicht vorhandenen) Intervalls ist unnütz. Stattdessen muss die Schleife abgebrochen werden, wenn 50 Wiederholungen gelaufen sind.

                            Blockly_temp.JPG

                            Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                            Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                            1 Antwort Letzte Antwort
                            1
                            Antworten
                            • In einem neuen Thema antworten
                            Anmelden zum Antworten
                            • Älteste zuerst
                            • Neuste zuerst
                            • Meiste Stimmen


                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            583

                            Online

                            32.5k

                            Benutzer

                            81.9k

                            Themen

                            1.3m

                            Beiträge
                            Community
                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                            ioBroker Community 2014-2025
                            logo
                            • Anmelden

                            • Du hast noch kein Konto? Registrieren

                            • Anmelden oder registrieren, um zu suchen
                            • Erster Beitrag
                              Letzter Beitrag
                            0
                            • Home
                            • Aktuell
                            • Tags
                            • Ungelesen 0
                            • Kategorien
                            • Unreplied
                            • Beliebt
                            • GitHub
                            • Docu
                            • Hilfe