Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. Hilfe bei Blockly zur Bewässerungssteuerung

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    17
    1
    603

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    5.6k

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

Hilfe bei Blockly zur Bewässerungssteuerung

Scheduled Pinned Locked Moved Blockly
blockly
8 Posts 4 Posters 559 Views 3 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • E Offline
    E Offline
    EStegemann
    wrote on last edited by
    #1

    Guten Abend Zusammen.
    Ich habe ein Problem mit eine Blockly Script bei dem ich absolut nicht weiter komme. Es geht dabei um die Steuerung meiner Bewässerung. Jeder Bewässerungskreis soll 3x für eine bestimmt Zeit eingeschaltet werden. In meinem derzeitigen Stand vom Script ist hier lediglich eine Testzeit von 30 Sek. eingestellt. Mit einem Kreis klappt es aktuell wie es soll, doch nun möchte ich den nächsten Kreis mit einbinden und da ist die Problemstelle. Ich bekomme den zweiten Kreis ums verrecken nicht ins Skript vernünftig eingebunden. Zuerst soll der Kreis "Dusche" starten und nach Ablauf der Zeit soll Dusche wieder ausgeschaltet werden und der nächste Kreis "Feuerschale" starten. Anschließend soll der Durchlaufzähler "DLF" um 1 erhöht werden und der nächste Bewässerungszyklus startet (Bis 3 Durchläufe erreicht sind).

    Hat hier jemand einen Vorschlag wie sich das schlank lösen lässt?
    Danke im Vorfeld.
    FB_IMG_1625000852493.jpg

    paul53P D 2 Replies Last reply
    0
    • E EStegemann

      Guten Abend Zusammen.
      Ich habe ein Problem mit eine Blockly Script bei dem ich absolut nicht weiter komme. Es geht dabei um die Steuerung meiner Bewässerung. Jeder Bewässerungskreis soll 3x für eine bestimmt Zeit eingeschaltet werden. In meinem derzeitigen Stand vom Script ist hier lediglich eine Testzeit von 30 Sek. eingestellt. Mit einem Kreis klappt es aktuell wie es soll, doch nun möchte ich den nächsten Kreis mit einbinden und da ist die Problemstelle. Ich bekomme den zweiten Kreis ums verrecken nicht ins Skript vernünftig eingebunden. Zuerst soll der Kreis "Dusche" starten und nach Ablauf der Zeit soll Dusche wieder ausgeschaltet werden und der nächste Kreis "Feuerschale" starten. Anschließend soll der Durchlaufzähler "DLF" um 1 erhöht werden und der nächste Bewässerungszyklus startet (Bis 3 Durchläufe erreicht sind).

      Hat hier jemand einen Vorschlag wie sich das schlank lösen lässt?
      Danke im Vorfeld.
      FB_IMG_1625000852493.jpg

      paul53P Offline
      paul53P Offline
      paul53
      wrote on last edited by paul53
      #2

      @estegemann sagte: Jeder Bewässerungskreis soll 3x für eine bestimmt Zeit eingeschaltet werden.

      Initialisiere einen Count down Zähler für das Intervall mit 3 * Kreis-Anzahl, berechne cnt % 3 als Wert, der den laufenden Kreis aus und den nächsten Kreis einschaltet. Das funktioniert natürlich nur, wenn die Bewässerungsdauer für alle Kreise identisch ist. Es bietet sich ein Array of IDs an.
      Besser nicht mit "umschalten" arbeiten.

      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

      E 1 Reply Last reply
      0
      • paul53P paul53

        @estegemann sagte: Jeder Bewässerungskreis soll 3x für eine bestimmt Zeit eingeschaltet werden.

        Initialisiere einen Count down Zähler für das Intervall mit 3 * Kreis-Anzahl, berechne cnt % 3 als Wert, der den laufenden Kreis aus und den nächsten Kreis einschaltet. Das funktioniert natürlich nur, wenn die Bewässerungsdauer für alle Kreise identisch ist. Es bietet sich ein Array of IDs an.
        Besser nicht mit "umschalten" arbeiten.

        E Offline
        E Offline
        EStegemann
        wrote on last edited by
        #3

        @paul53
        Hi Paul,
        Vielen Dank. Leider hat jeder Bewässerungkreis unterschiedliche Beregnungszeiten die jeweils in einem separaten Datenpunkt hinterlegt sind und sich auch ändern können. Zudem verstehe ich leider nicht, was du mit den ID's meinst. Warum nicht mit umschalten arbeiten?

        AsgothianA 1 Reply Last reply
        0
        • E EStegemann

          @paul53
          Hi Paul,
          Vielen Dank. Leider hat jeder Bewässerungkreis unterschiedliche Beregnungszeiten die jeweils in einem separaten Datenpunkt hinterlegt sind und sich auch ändern können. Zudem verstehe ich leider nicht, was du mit den ID's meinst. Warum nicht mit umschalten arbeiten?

          AsgothianA Offline
          AsgothianA Offline
          Asgothian
          Developer
          wrote on last edited by
          #4

          @estegemann

          Ich gehe davon aus das

          • Du für jeden Kreis einen State hast in dem hinterlegt wird wie lange der laufen soll.
          • Diese Zeiten in Sekunden angegeben sind

          Dann kann so etwas gehen (ist dann auch erweiterbar auf mehr als 2 Kreise, einfach die beiden Listen erweitern.)
          Screenshot 2021-06-30 at 07.22.31.png

          Weggelassen habe ich den Zeitplan um den Durchlaufzähler initial zu starten. In dem müsstest Du den Durchlaufzähler auf die Anzahl der gewünschten Durchläufe setzen.

          Nebenbei: Ein Intervall mit 1x pro Sekunde laufen lassen nur um per "falls" block einen Zähler beim Runterzählen zu beobachten ist Ressourcenverschwendung. Du kannst die Dauer eines Timeouts vorher berechnen (muss in ms sein).

          A.

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

          E 2 Replies Last reply
          0
          • AsgothianA Asgothian

            @estegemann

            Ich gehe davon aus das

            • Du für jeden Kreis einen State hast in dem hinterlegt wird wie lange der laufen soll.
            • Diese Zeiten in Sekunden angegeben sind

            Dann kann so etwas gehen (ist dann auch erweiterbar auf mehr als 2 Kreise, einfach die beiden Listen erweitern.)
            Screenshot 2021-06-30 at 07.22.31.png

            Weggelassen habe ich den Zeitplan um den Durchlaufzähler initial zu starten. In dem müsstest Du den Durchlaufzähler auf die Anzahl der gewünschten Durchläufe setzen.

            Nebenbei: Ein Intervall mit 1x pro Sekunde laufen lassen nur um per "falls" block einen Zähler beim Runterzählen zu beobachten ist Ressourcenverschwendung. Du kannst die Dauer eines Timeouts vorher berechnen (muss in ms sein).

            A.

            E Offline
            E Offline
            EStegemann
            wrote on last edited by
            #5

            @asgothian absolut klasse!
            Deine beiden genannten Punkte sind vorhanden.
            Sobald die Regenmassen sich bei uns hier verzogen haben, werde ich das Script testen.
            Hab vielen Dank für deine Zeit.

            Besten Gruß,
            Eric

            1 Reply Last reply
            0
            • AsgothianA Asgothian

              @estegemann

              Ich gehe davon aus das

              • Du für jeden Kreis einen State hast in dem hinterlegt wird wie lange der laufen soll.
              • Diese Zeiten in Sekunden angegeben sind

              Dann kann so etwas gehen (ist dann auch erweiterbar auf mehr als 2 Kreise, einfach die beiden Listen erweitern.)
              Screenshot 2021-06-30 at 07.22.31.png

              Weggelassen habe ich den Zeitplan um den Durchlaufzähler initial zu starten. In dem müsstest Du den Durchlaufzähler auf die Anzahl der gewünschten Durchläufe setzen.

              Nebenbei: Ein Intervall mit 1x pro Sekunde laufen lassen nur um per "falls" block einen Zähler beim Runterzählen zu beobachten ist Ressourcenverschwendung. Du kannst die Dauer eines Timeouts vorher berechnen (muss in ms sein).

              A.

              E Offline
              E Offline
              EStegemann
              wrote on last edited by
              #6

              @asgothian Mich würde dennoch interessieren, wie das Script aussehen müsste, wenn man nach Zeitplan steuern würde. Gibt es da evtl. auch die Möglichkeit den Wochentag sowie die Startzeit variabel zugestalten? Ich würde das dann gern in meine VIS einbauen und per checkbox die Wochentage auswählen, an denen bewässert werden soll sowie die Uhrzeit.

              Hast du vlt. Zeit das Script nochmal dahingehend anzupassen? Das wäre klasse.

              Mit besten Grüßen,
              Eric

              AsgothianA 1 Reply Last reply
              0
              • E EStegemann

                @asgothian Mich würde dennoch interessieren, wie das Script aussehen müsste, wenn man nach Zeitplan steuern würde. Gibt es da evtl. auch die Möglichkeit den Wochentag sowie die Startzeit variabel zugestalten? Ich würde das dann gern in meine VIS einbauen und per checkbox die Wochentage auswählen, an denen bewässert werden soll sowie die Uhrzeit.

                Hast du vlt. Zeit das Script nochmal dahingehend anzupassen? Das wäre klasse.

                Mit besten Grüßen,
                Eric

                AsgothianA Offline
                AsgothianA Offline
                Asgothian
                Developer
                wrote on last edited by Asgothian
                #7

                @estegemann

                Du brauchst:

                • Diese 3 Bausteine, am besten in einer Funktion:Screenshot 2021-07-01 at 07.13.57.png
                • Je nach dem was du über die Vis ansteuern willst ersetzt du die "*" Bausteine durch ein "wert von ...". Dabei darauf achten das die Werte zu den Cron Regeln passen
                • im Schedule setzt du wie gehabt einfach deinen Durchlaufzähler auf die Anzahl an Durchläufen die du haben willst.
                • einen Trigger auf alle States mit denen du den Zeitplan ansteuern willst, in dem du die 3 obigen Bausteine nutzt.Screenshot 2021-07-01 at 07.17.37.png
                • Die Funktion solltest du dann auch bei Skriptstart aufrufen.

                A.

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

                1 Reply Last reply
                0
                • E EStegemann

                  Guten Abend Zusammen.
                  Ich habe ein Problem mit eine Blockly Script bei dem ich absolut nicht weiter komme. Es geht dabei um die Steuerung meiner Bewässerung. Jeder Bewässerungskreis soll 3x für eine bestimmt Zeit eingeschaltet werden. In meinem derzeitigen Stand vom Script ist hier lediglich eine Testzeit von 30 Sek. eingestellt. Mit einem Kreis klappt es aktuell wie es soll, doch nun möchte ich den nächsten Kreis mit einbinden und da ist die Problemstelle. Ich bekomme den zweiten Kreis ums verrecken nicht ins Skript vernünftig eingebunden. Zuerst soll der Kreis "Dusche" starten und nach Ablauf der Zeit soll Dusche wieder ausgeschaltet werden und der nächste Kreis "Feuerschale" starten. Anschließend soll der Durchlaufzähler "DLF" um 1 erhöht werden und der nächste Bewässerungszyklus startet (Bis 3 Durchläufe erreicht sind).

                  Hat hier jemand einen Vorschlag wie sich das schlank lösen lässt?
                  Danke im Vorfeld.
                  FB_IMG_1625000852493.jpg

                  D Offline
                  D Offline
                  darkiop
                  Most Active
                  wrote on last edited by
                  #8

                  @estegemann Du kannst dir auch mal das Skript von Kuddel anschauen: https://forum.iobroker.net/topic/33573/vorlage-gartenbewässerung-mit-6-ventilen falls du es noch nicht kennst.

                  Proxmox-ioBroker-Redis-HA Doku: https://forum.iobroker.net/topic/47478/dokumentation-einer-proxmox-iobroker-redis-ha-umgebung

                  1 Reply Last reply
                  0
                  Reply
                  • Reply as topic
                  Log in to reply
                  • Oldest to Newest
                  • Newest to Oldest
                  • Most Votes


                  Support us

                  ioBroker
                  Community Adapters
                  Donate

                  623

                  Online

                  32.7k

                  Users

                  82.6k

                  Topics

                  1.3m

                  Posts
                  Community
                  Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                  ioBroker Community 2014-2025
                  logo
                  • Login

                  • Don't have an account? Register

                  • Login or register to search.
                  • First post
                    Last post
                  0
                  • Home
                  • Recent
                  • Tags
                  • Unread 0
                  • Categories
                  • Unreplied
                  • Popular
                  • GitHub
                  • Docu
                  • Hilfe