Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Zeitplan Probleme

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Zeitplan Probleme

    This topic has been deleted. Only users with topic management privileges can see it.
    • Asgothian
      Asgothian Developer @LaBamba last edited by Asgothian

      @labamba auch so geht es nicht - die Entscheidung Tag oder Nacht findet nur zum skriptstart statt.

      Vorschlag:

      • eine variable ’toggle’, vordefinieren mit True.
      • ein Zeitplan alle 17 Minuten.
      • darin ein falls für Tag-Nacht Unterscheidung.
      • bei Tag - jedes Mal Tag Skript ausführen.
      • bei nacht: toggle=nicht toggle. Falls toggle -> Nacht Skript ausführen.

      A.

      L 1 Reply Last reply Reply Quote 0
      • L
        LaBamba @Asgothian last edited by

        @asgothian
        da kenne ich mich leider zu wenig aus!

        paul53 1 Reply Last reply Reply Quote 0
        • paul53
          paul53 @LaBamba last edited by

          @labamba
          Prinzip:

          Blockly_temp.JPG

          1 Reply Last reply Reply Quote 0
          • Codierknecht
            Codierknecht Developer Most Active @LaBamba last edited by Codierknecht

            @labamba
            Wenn Nachtintervall bedeutet, dass nur jeder 2. Durchlauf nötig ist:

            d96a6883-87f8-4a1a-bee6-39f5920d5760-grafik.png

            Beim Start des Script wird die Variable "flag" auf false gesetzt.
            Ist es Nacht, wird geprüft, ob sie true ist. Das ist beim ersten Durchlauf nach 17 Minuten nicht der Fall. Die Variable wechselt auf true.
            Nach weiteren 17 Minuten ist sie dann true. Die Funktion ""hydroNachts" wird ausgeführt.
            Die Variable wechselt wieder auf false und der Spaß beginnt von vorne.

            Also ziemlich genau das was @Asgothian vorgeschlagen hat.

            Alternative: Man prüft, ob die aktuelle Minute gerade oder ungerade ist. Funktioniert natürlich nur mit einem ungeraden Intervall.

            66a83a70-00fd-4a59-9523-0a45943d8bef-grafik.png

            L 2 Replies Last reply Reply Quote 0
            • L
              LaBamba @Codierknecht last edited by LaBamba

              @codierknecht
              @Asgothian
              Erstmal danke, für das Skript. Ich werde jetzt mal versuchen es einzubinden.
              Jedoch bin ich noch im Versuchsstadium bzgl. der nächtlichen Bewässerung. Folglich kann es sein, dass ich die Zeiten noch wegen Energieeinsparung usw. verlängern muss. Das ist dann Imit diesem Skript nicht möglich oder?
              Wenn ich es richtig verstanden habe ist jetzt das Intervall am Tag 17 Minuten und in der Nacht 34 min. Ist es z.B. möglich die nächtliche Bewässerung dann nur alle 4 Intervalle z.B. 4*17 min also 68 Minuten zu schalten?

              Codierknecht paul53 2 Replies Last reply Reply Quote 0
              • Codierknecht
                Codierknecht Developer Most Active @LaBamba last edited by Codierknecht

                @labamba sagte in Zeitplan Probleme:

                Ist es z.B. möglich die nächtliche Bewässerung dann nur alle 4 Intervalle z.B. 4*17 min also 68 Minuten zu schalten?

                Dann müsste man statt mit 'nem einfachen Flag mit einer Zählvariablen arbeiten.
                Bei jedem Durchlaf hochzählen und wenn z.B. die 4 erreicht ist dann ausführen und Variable zurücksetzen.

                Oder aber, man setzt 2 Zeitpläne auf.
                Einer morgens, der ein "IntervallTags" z.B. alle 17 Minuten startet und "IntervallNachts" löscht.
                Und einer Abends, der ein "IntervallNachts" (z.B. alle 68 Minuten) startet und "IntervallTags" löscht.
                Das wäre insgesamt am variabelsten, da man dann nicht auf Vielfache von Intervall1 angewiesen ist.
                b70eb971-fda1-4daf-8d79-5eff1b865d53-grafik.png

                1 Reply Last reply Reply Quote 1
                • paul53
                  paul53 @LaBamba last edited by

                  @labamba sagte: Ist es z.B. möglich die nächtliche Bewässerung dann nur alle 4 Intervalle z.B. 4*17 min also 68 Minuten zu schalten?

                  Dann nimm anstelle der Toggle-Variable eine Zählvariable und vergleiche sie zum Ausführen und Rücksetzen mit 4.

                  1 Reply Last reply Reply Quote 0
                  • L
                    LaBamba @Codierknecht last edited by

                    @codierknecht

                    Ich habe es seit 1 1/2 Stunden laufen aber beim Skript passiert gar nichts. Ich überprüfe dies ja auch mit Telegramm. Vielleicht sehe ich meinen Fehler nicht.

                    Bildschirmfoto 2025-06-03 um 23.56.28.png

                    Das Blockly Skript ist leider zu lange um es hier reinzustellen.

                    L 1 Reply Last reply Reply Quote 0
                    • L
                      LaBamba @LaBamba last edited by

                      @Codierknecht

                      Ich habe jetzt die Alternative eingesetzt.
                      Bildschirmfoto 2025-06-04 um 00.27.00.png

                      Bei stop zyklische Ausführung gibt es bei mir keine Wahlmöglichkeit (direkt unter Astro). Das ist nur möglich wenn ich stop einsetze! Ob es geht werde ich morgen Abend mal testen.

                      Codierknecht 1 Reply Last reply Reply Quote 0
                      • Codierknecht
                        Codierknecht Developer Most Active @LaBamba last edited by Codierknecht

                        @labamba sagte in Zeitplan Probleme:

                        Bei stop zyklische Ausführung gibt es bei mir keine Wahlmöglichkeit

                        Du musst ein Intervall nehmen (alle X Minuten) - keinen Timeout (in X Minuten)!

                        L 1 Reply Last reply Reply Quote 0
                        • L
                          LaBamba @Codierknecht last edited by LaBamba

                          @codierknecht
                          Bildschirmfoto 2025-06-04 um 19.01.50.png

                          Bei der zyklischen Ausführung kann ich aber nichts auswählen!
                          Ich habe doch gar kein Timeout.

                          Asgothian 1 Reply Last reply Reply Quote 0
                          • Asgothian
                            Asgothian Developer @LaBamba last edited by

                            @labamba Es scheint du nutzt diesen Baustein:
                            Screenshot 2025-06-04 at 19.12.41.png

                            sollst aber diesen nutzen:

                            Screenshot 2025-06-04 at 19.13.00.png

                            Nur dadurch das du den timeout in ein Intervall umbenennst ändert sich nicht die Funktion.

                            A>

                            L 2 Replies Last reply Reply Quote 1
                            • L
                              LaBamba @Asgothian last edited by

                              @asgothian
                              Stimmt!!! Im Detail liegt der Fehler. Vielen vielen Dank! Schaue jetzt mal ob es funktioniert.

                              1 Reply Last reply Reply Quote 0
                              • L
                                LaBamba @Asgothian last edited by

                                @asgothian

                                Erstmal ist das Skript nicht angelaufen. Vermutlich läuft es erst an wenn bei Astro der Sonnenuntergang +30 min stattfindet? Kann man das verhindern. Wenn ich etwas verändere muss ich ja immer warten bis die Sonne auf oder unter geht.
                                Da gehen ja meine Pflanzen drauf wenn sie dann im schimmsten Fall mehrere Stunden kein Wasser bekommen.

                                Codierknecht 1 Reply Last reply Reply Quote 0
                                • Codierknecht
                                  Codierknecht Developer Most Active @LaBamba last edited by

                                  @labamba sagte in Zeitplan Probleme:

                                  Erstmal ist das Skript nicht angelaufen. Vermutlich läuft es erst an wenn bei Astro der Sonnenuntergang +30 min stattfindet?

                                  Natürlich.

                                  Kann man das verhindern. Wenn ich etwas verändere muss ich ja immer warten bis die Sonne auf oder unter geht.
                                  Da gehen ja meine Pflanzen drauf wenn sie dann im schimmsten Fall mehrere Stunden kein Wasser bekommen.

                                  Kann man. Zum Bleistift so:

                                  cbdb0b30-2149-494c-8f63-c4e5567c72ef-grafik.png

                                  paul53 L 2 Replies Last reply Reply Quote 1
                                  • paul53
                                    paul53 @Codierknecht last edited by

                                    @codierknecht sagte: Zum Bleistift so:

                                    ... oder so:

                                    Blockly_temp.JPG

                                    L Codierknecht 2 Replies Last reply Reply Quote 1
                                    • L
                                      LaBamba @Codierknecht last edited by

                                      @codierknecht

                                      Funktioniert!! Super, vielen vielen dank!

                                      1 Reply Last reply Reply Quote 0
                                      • L
                                        LaBamba @paul53 last edited by

                                        @paul53
                                        Schaut noch einfacher aus! Muss ich bei Gelegenheit mal ausprobieren. Danke!

                                        1 Reply Last reply Reply Quote 0
                                        • Codierknecht
                                          Codierknecht Developer Most Active @paul53 last edited by Codierknecht

                                          @paul53

                                          War das so gedacht?

                                          518569a6-e701-4ebc-8e99-3e3f25e6cccc-image.png

                                          EDIT
                                          Mit Timeout natürlich völlig OK!

                                          Asgothian 1 Reply Last reply Reply Quote 0
                                          • Asgothian
                                            Asgothian Developer @Codierknecht last edited by Asgothian

                                            @codierknecht

                                            Ja.

                                            Eine Kette von rekursiven Timeouts ist eine Alternative zu einem Intervall.
                                            Insbesondere wenn die Aktionen je nach Situation unterschiedlich lange dauern können kann es von Vorteil sein das so zu lösen, da dadurch absolut sicher gestellt wird das der nächste Satz an Aktionen erst ausgeführt wird wenn der vorherige Satz abgeschlossen ist.

                                            Allerdings muss dann mit berücksichtigt werden das der Zeitversatz ggf. um die Zeit reduziert werden muss die die Aktionen geplant dauern. Bei dem vom OP geposteten Skript sind das alleine durch die 'pause' Bausteine 6 Minuten.

                                            A

                                            Codierknecht 1 Reply Last reply Reply Quote 1
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            955
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            5
                                            57
                                            1071
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo