Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • 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. Variable Zeitsteuerung von Schaltimpulsen

NEWS

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    8
    1
    334

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    10
    1
    300

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    929

Variable Zeitsteuerung von Schaltimpulsen

Geplant Angeheftet Gesperrt Verschoben Blockly
20 Beiträge 5 Kommentatoren 118 Aufrufe 4 Beobachtet
  • Ä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.
  • SBorgS SBorg

    @homoran Du kannst die Listen natürlich auch fest im Blockly eintragen.
    Dann fängt man mit dem 1. Listeneintrag an und ackert sich bis "zur Länge" (=Anzahl der Listeneinträge) der Liste durch. Dann kannst du auch einfach weitere Kreise hinten anhängen. denn durch die Listen arbeitest du nur noch mit einer (oder bei zwei Listen eben mit 2 usw.) Variablen, die immer durch den Listenwert ersetzt wird.
    Man kann zwar auch alles in eine Liste packen, dass wird aber schnell unübersichtlich und fehleranfällig ;)

    HomoranH Nicht stören
    HomoranH Nicht stören
    Homoran
    Global Moderator Administrators
    schrieb am zuletzt editiert von
    #7

    @sborg Danke!
    aber ich glaube, der Teil ist mir noch halbwegs verständlich.

    Mein Problem (Denkknoten) ist es, wie ich den Teil nach der Iteration ausführe, in dem ich die Kreise (die ich jetzt mit variablen auf true/false setze und deren geplante Laufzeiten aussetzen/überspringen kann.

    kein Support per PN! - Fragen im Forum stellen -
    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
    Das Forum freut sich über eine Spende. Benutzt dazu den Spendenbutton oben rechts. Danke!
    der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

    A 1 Antwort Letzte Antwort
    0
    • HomoranH Homoran

      @sborg Danke!
      aber ich glaube, der Teil ist mir noch halbwegs verständlich.

      Mein Problem (Denkknoten) ist es, wie ich den Teil nach der Iteration ausführe, in dem ich die Kreise (die ich jetzt mit variablen auf true/false setze und deren geplante Laufzeiten aussetzen/überspringen kann.

      A Online
      A Online
      Ahnungsbefreit
      schrieb am zuletzt editiert von
      #8

      @homoran Im Prinzip so:
      46ca437d-3852-4b73-83be-de8b645f813d-image.png
      Allerdings ist der Teil Deines Scripts mit den true/false und warte noch irgendwie unlogisch. Wie soll sich den das Script verhalten?
      Auch die Pause da unten und das leere "Falls" sehen optimierungsfähig aus

      Wenn meine Antwort hilfreich war, dürft Ihr das gerne durch einen "Upvote" (der kleine "^" unten rechts) zum Ausdruck bringen.

      HomoranH 1 Antwort Letzte Antwort
      0
      • A Ahnungsbefreit

        @homoran Im Prinzip so:
        46ca437d-3852-4b73-83be-de8b645f813d-image.png
        Allerdings ist der Teil Deines Scripts mit den true/false und warte noch irgendwie unlogisch. Wie soll sich den das Script verhalten?
        Auch die Pause da unten und das leere "Falls" sehen optimierungsfähig aus

        HomoranH Nicht stören
        HomoranH Nicht stören
        Homoran
        Global Moderator Administrators
        schrieb am zuletzt editiert von Homoran
        #9

        @ahnungsbefreit sagte in Variable Zeitsteuerung von Schaltimpulsen:

        Auch die Pause da unten und das leere "Falls" sehen optimierungsfähig aus

        und nur darum geht es mir!
        das iterieren hatte ich ja schon verstanden, bei vielen Kreisen ist das mit Sicherheit eleganter, hier komme ich noch mit den Variablen aus.

        Der letztere Teil (der noch gar nicht da steht) ist es der mir Kopfzerbrechen bereitet.

        Ich möchte die Kreise nacheinander schalten, jeweils für die vorausgewählte Dauer.
        Aber wenn die Erde im Kreis 1 noch feucht genug ist will ich diesen Kreis überspringen und direkt mit Kreis 2 beginnen.
        Daher kann ich nicht einfach die Dauern als Timeout addieren, sondern muss irgendwie die Timeouts dynamisch füttern.

        Die Steuere Blöcke kommen dann natürlich in den Timeout Block

        kein Support per PN! - Fragen im Forum stellen -
        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
        Das Forum freut sich über eine Spende. Benutzt dazu den Spendenbutton oben rechts. Danke!
        der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

        paul53P A 2 Antworten Letzte Antwort
        0
        • HomoranH Homoran

          @ahnungsbefreit sagte in Variable Zeitsteuerung von Schaltimpulsen:

          Auch die Pause da unten und das leere "Falls" sehen optimierungsfähig aus

          und nur darum geht es mir!
          das iterieren hatte ich ja schon verstanden, bei vielen Kreisen ist das mit Sicherheit eleganter, hier komme ich noch mit den Variablen aus.

          Der letztere Teil (der noch gar nicht da steht) ist es der mir Kopfzerbrechen bereitet.

          Ich möchte die Kreise nacheinander schalten, jeweils für die vorausgewählte Dauer.
          Aber wenn die Erde im Kreis 1 noch feucht genug ist will ich diesen Kreis überspringen und direkt mit Kreis 2 beginnen.
          Daher kann ich nicht einfach die Dauern als Timeout addieren, sondern muss irgendwie die Timeouts dynamisch füttern.

          Die Steuere Blöcke kommen dann natürlich in den Timeout Block

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

          @homoran sagte: wenn die Erde im Kreis 1 noch feucht genug ist will ich diesen Kreis überspringen und direkt mit Kreis 2 beginnen. Daher kann ich nicht einfach die Dauern als Timeout addieren, sondern muss irgendwie die Timeouts dynamisch füttern.

          Vorschlag (nur Teil mit Auswertung der 4 Listen):

          Bild_2021-06-17_164741.png

          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

          HomoranH 1 Antwort Letzte Antwort
          0
          • HomoranH Homoran

            @ahnungsbefreit sagte in Variable Zeitsteuerung von Schaltimpulsen:

            Auch die Pause da unten und das leere "Falls" sehen optimierungsfähig aus

            und nur darum geht es mir!
            das iterieren hatte ich ja schon verstanden, bei vielen Kreisen ist das mit Sicherheit eleganter, hier komme ich noch mit den Variablen aus.

            Der letztere Teil (der noch gar nicht da steht) ist es der mir Kopfzerbrechen bereitet.

            Ich möchte die Kreise nacheinander schalten, jeweils für die vorausgewählte Dauer.
            Aber wenn die Erde im Kreis 1 noch feucht genug ist will ich diesen Kreis überspringen und direkt mit Kreis 2 beginnen.
            Daher kann ich nicht einfach die Dauern als Timeout addieren, sondern muss irgendwie die Timeouts dynamisch füttern.

            Die Steuere Blöcke kommen dann natürlich in den Timeout Block

            A Online
            A Online
            Ahnungsbefreit
            schrieb am zuletzt editiert von
            #11

            @homoran So?
            fee08f55-aec5-494c-b3c9-275a42ed302d-image.png

            Wenn meine Antwort hilfreich war, dürft Ihr das gerne durch einen "Upvote" (der kleine "^" unten rechts) zum Ausdruck bringen.

            HomoranH 1 Antwort Letzte Antwort
            0
            • A Ahnungsbefreit

              @homoran So?
              fee08f55-aec5-494c-b3c9-275a42ed302d-image.png

              HomoranH Nicht stören
              HomoranH Nicht stören
              Homoran
              Global Moderator Administrators
              schrieb am zuletzt editiert von
              #12

              @ahnungsbefreit sagte in Variable Zeitsteuerung von Schaltimpulsen:

              So?

              nicht wirklich, da müssen noch Zwischenschritte für jeden möglichen Kreis rein.
              Dein Vorschlag würde ja nur die Gesamtdauer berechnen, oder?

              Hier noch mal für Kreis 1 und 2 (statisch)
              Warte_1_2_02.png

              Jetzt noch der dritte dazu und dabei auch die Möglichkeit bedenken, dass nur 1+3 laufen :-(

              @paul53 sagte in Variable Zeitsteuerung von Schaltimpulsen:

              nur Teil mit Auswertung der 4 Listen

              Danke!
              darum geht es mir - sehe ich mir nachher am PC an!

              kein Support per PN! - Fragen im Forum stellen -
              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
              Das Forum freut sich über eine Spende. Benutzt dazu den Spendenbutton oben rechts. Danke!
              der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

              A 1 Antwort Letzte Antwort
              0
              • paul53P paul53

                @homoran sagte: wenn die Erde im Kreis 1 noch feucht genug ist will ich diesen Kreis überspringen und direkt mit Kreis 2 beginnen. Daher kann ich nicht einfach die Dauern als Timeout addieren, sondern muss irgendwie die Timeouts dynamisch füttern.

                Vorschlag (nur Teil mit Auswertung der 4 Listen):

                Bild_2021-06-17_164741.png

                HomoranH Nicht stören
                HomoranH Nicht stören
                Homoran
                Global Moderator Administrators
                schrieb am zuletzt editiert von
                #13

                @paul53 sagte:

                Vorschlag (nur Teil mit Auswertung der 4 Listen):

                Jetzt ist das natürlich wieder ein typisches Paul-Blockly 😂 und somit etwas schwerer verdaulich.

                sehe ich es richtig, dass du im Prinzip die Funktion nochmal innerhalb der Funktion im timeout aufrufst und damit "den Start der zweiten Verzögerung" auch um das erste timeout verzögerst.
                Dadurch brauchst du keine Rechnungen mehr?

                Das hatte ich auch vor, wusste aber nicht wie 😢
                An eine Funktion hatte ich natürlich nicht gedacht

                kein Support per PN! - Fragen im Forum stellen -
                Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                Das Forum freut sich über eine Spende. Benutzt dazu den Spendenbutton oben rechts. Danke!
                der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                paul53P AsgothianA 2 Antworten Letzte Antwort
                0
                • HomoranH Homoran

                  @ahnungsbefreit sagte in Variable Zeitsteuerung von Schaltimpulsen:

                  So?

                  nicht wirklich, da müssen noch Zwischenschritte für jeden möglichen Kreis rein.
                  Dein Vorschlag würde ja nur die Gesamtdauer berechnen, oder?

                  Hier noch mal für Kreis 1 und 2 (statisch)
                  Warte_1_2_02.png

                  Jetzt noch der dritte dazu und dabei auch die Möglichkeit bedenken, dass nur 1+3 laufen :-(

                  @paul53 sagte in Variable Zeitsteuerung von Schaltimpulsen:

                  nur Teil mit Auswertung der 4 Listen

                  Danke!
                  darum geht es mir - sehe ich mir nachher am PC an!

                  A Online
                  A Online
                  Ahnungsbefreit
                  schrieb am zuletzt editiert von
                  #14

                  @homoran Nein, das sollte schon funktionieren, egal ob einer oder alle oder mehrere Kreise geschaltet werden. Aber Du kannst natürlich gerne auch mit Paul's Vorschlag weiterarbeiten, der ist ja hier der Blockly/JS Guru.

                  Wenn meine Antwort hilfreich war, dürft Ihr das gerne durch einen "Upvote" (der kleine "^" unten rechts) zum Ausdruck bringen.

                  HomoranH 1 Antwort Letzte Antwort
                  0
                  • A Ahnungsbefreit

                    @homoran Nein, das sollte schon funktionieren, egal ob einer oder alle oder mehrere Kreise geschaltet werden. Aber Du kannst natürlich gerne auch mit Paul's Vorschlag weiterarbeiten, der ist ja hier der Blockly/JS Guru.

                    HomoranH Nicht stören
                    HomoranH Nicht stören
                    Homoran
                    Global Moderator Administrators
                    schrieb am zuletzt editiert von
                    #15

                    @ahnungsbefreit sagte in Variable Zeitsteuerung von Schaltimpulsen:

                    ber Du kannst natürlich gerne auch mit Paul's Vorschlag weiterarbeiten, der ist ja hier der Blockly/JS Guru.

                    Da wundere ich mich auch immer wieder, wo der noch was aus dem Hut zaubert.

                    @ahnungsbefreit sagte in Variable Zeitsteuerung von Schaltimpulsen:

                    Nein, das sollte schon funktionieren, egal ob einer oder alle oder mehrere Kreise geschaltet werden

                    Dann seh ich mir das noch mal intensiver an, ich will es ja auch verstehen und lernen

                    kein Support per PN! - Fragen im Forum stellen -
                    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                    Das Forum freut sich über eine Spende. Benutzt dazu den Spendenbutton oben rechts. Danke!
                    der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                    1 Antwort Letzte Antwort
                    0
                    • HomoranH Homoran

                      @paul53 sagte:

                      Vorschlag (nur Teil mit Auswertung der 4 Listen):

                      Jetzt ist das natürlich wieder ein typisches Paul-Blockly 😂 und somit etwas schwerer verdaulich.

                      sehe ich es richtig, dass du im Prinzip die Funktion nochmal innerhalb der Funktion im timeout aufrufst und damit "den Start der zweiten Verzögerung" auch um das erste timeout verzögerst.
                      Dadurch brauchst du keine Rechnungen mehr?

                      Das hatte ich auch vor, wusste aber nicht wie 😢
                      An eine Funktion hatte ich natürlich nicht gedacht

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

                      @homoran sagte: die Funktion nochmal innerhalb der Funktion im timeout aufrufst und damit "den Start der zweiten Verzögerung" auch um das erste timeout verzögerst.

                      So ist es.

                      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

                      HomoranH 1 Antwort Letzte Antwort
                      1
                      • paul53P paul53

                        @homoran sagte: die Funktion nochmal innerhalb der Funktion im timeout aufrufst und damit "den Start der zweiten Verzögerung" auch um das erste timeout verzögerst.

                        So ist es.

                        HomoranH Nicht stören
                        HomoranH Nicht stören
                        Homoran
                        Global Moderator Administrators
                        schrieb am zuletzt editiert von
                        #17

                        @paul53 sagte in Variable Zeitsteuerung von Schaltimpulsen:

                        So ist es.

                        Danke!

                        kein Support per PN! - Fragen im Forum stellen -
                        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                        Das Forum freut sich über eine Spende. Benutzt dazu den Spendenbutton oben rechts. Danke!
                        der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                        1 Antwort Letzte Antwort
                        0
                        • HomoranH Homoran

                          @paul53 sagte:

                          Vorschlag (nur Teil mit Auswertung der 4 Listen):

                          Jetzt ist das natürlich wieder ein typisches Paul-Blockly 😂 und somit etwas schwerer verdaulich.

                          sehe ich es richtig, dass du im Prinzip die Funktion nochmal innerhalb der Funktion im timeout aufrufst und damit "den Start der zweiten Verzögerung" auch um das erste timeout verzögerst.
                          Dadurch brauchst du keine Rechnungen mehr?

                          Das hatte ich auch vor, wusste aber nicht wie 😢
                          An eine Funktion hatte ich natürlich nicht gedacht

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

                          @homoran sagte in Variable Zeitsteuerung von Schaltimpulsen:

                          Jetzt ist das natürlich wieder ein typisches Paul-Blockly und somit etwas schwerer verdaulich.

                          Schwer verdaulich und auch mit Vorsicht zu geniessen. So wie @paul53 es geschrieben hat ist es sauber. Allerdings nutzt es eine "Rekursion", sprich das aufrufen einer Funktion aus genau dieser Funktion heraus. Das kann je nach Situation und Aufbau auch mal schief gehen (unsichtbare Endlosschleife und seltsames Verhalten)

                          Bitte nicht falsch verstehen - das Skript so ist gut und sollte gehen. Es geht nur darum das man bei Funktionen die sich selber aufrufen genau aufpassen muss damit am Ende alles passt.

                          Ich hätte das Skript mit einem Hilfs-State zusammen aufgebaut, der auch dafür sorgt das das Skript auch bei einem Neustart 'weiter' bewässert:

                          Screen Shot 2021-06-17 at 17.23.19 .png

                          Überall da wo nur "object ID" steht ist der von hand anzulegende Steuerstate gemeint.

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

                          HomoranH 1 Antwort Letzte Antwort
                          1
                          • AsgothianA Asgothian

                            @homoran sagte in Variable Zeitsteuerung von Schaltimpulsen:

                            Jetzt ist das natürlich wieder ein typisches Paul-Blockly und somit etwas schwerer verdaulich.

                            Schwer verdaulich und auch mit Vorsicht zu geniessen. So wie @paul53 es geschrieben hat ist es sauber. Allerdings nutzt es eine "Rekursion", sprich das aufrufen einer Funktion aus genau dieser Funktion heraus. Das kann je nach Situation und Aufbau auch mal schief gehen (unsichtbare Endlosschleife und seltsames Verhalten)

                            Bitte nicht falsch verstehen - das Skript so ist gut und sollte gehen. Es geht nur darum das man bei Funktionen die sich selber aufrufen genau aufpassen muss damit am Ende alles passt.

                            Ich hätte das Skript mit einem Hilfs-State zusammen aufgebaut, der auch dafür sorgt das das Skript auch bei einem Neustart 'weiter' bewässert:

                            Screen Shot 2021-06-17 at 17.23.19 .png

                            Überall da wo nur "object ID" steht ist der von hand anzulegende Steuerstate gemeint.

                            HomoranH Nicht stören
                            HomoranH Nicht stören
                            Homoran
                            Global Moderator Administrators
                            schrieb am zuletzt editiert von
                            #19

                            @asgothian Auch dir einen großen Dank!

                            jetzt sind wir doch weit über den Tritt gegen das Schienbein hinaus - war aber auch nötig.
                            da wäre ich nie drauf gekommen.

                            Ist alles weit über meinem momentanen Horizont.

                            Aber ich denke ich werde @paul53 s und dein ( @Asgothian s) Skript mir mal ganz langsam auf der Zunge zergehen lassen.
                            vielleicht kann ich es doch vollständig nachvollziehen.

                            Dann hat es die Lernkurve stark beschleunigt

                            kein Support per PN! - Fragen im Forum stellen -
                            Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                            Das Forum freut sich über eine Spende. Benutzt dazu den Spendenbutton oben rechts. Danke!
                            der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                            AsgothianA 1 Antwort Letzte Antwort
                            0
                            • HomoranH Homoran

                              @asgothian Auch dir einen großen Dank!

                              jetzt sind wir doch weit über den Tritt gegen das Schienbein hinaus - war aber auch nötig.
                              da wäre ich nie drauf gekommen.

                              Ist alles weit über meinem momentanen Horizont.

                              Aber ich denke ich werde @paul53 s und dein ( @Asgothian s) Skript mir mal ganz langsam auf der Zunge zergehen lassen.
                              vielleicht kann ich es doch vollständig nachvollziehen.

                              Dann hat es die Lernkurve stark beschleunigt

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

                              @homoran sagte in Variable Zeitsteuerung von Schaltimpulsen:

                              Dann hat es die Lernkurve stark beschleunigt

                              Dann hätte ich das Ziel erreicht weswegen ich diese Option gepostet hab. :)

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

                              1 Antwort Letzte Antwort
                              0

                              Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                              Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                              Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                              Registrieren Anmelden
                              Antworten
                              • In einem neuen Thema antworten
                              Anmelden zum Antworten
                              • Älteste zuerst
                              • Neuste zuerst
                              • Meiste Stimmen


                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              554

                              Online

                              32.8k

                              Benutzer

                              82.8k

                              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