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
    314

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    9
    1
    290

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

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.
  • 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 Offline
    A Offline
    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 Offline
          A Offline
          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

                      353

                      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