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. Gartenbewässerung nach Feuchtigkeitsmessung

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    9
    1
    93

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.4k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.3k

Gartenbewässerung nach Feuchtigkeitsmessung

Geplant Angeheftet Gesperrt Verschoben Blockly
9 Beiträge 2 Kommentatoren 639 Aufrufe 1 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.
  • DreamsleeperD Offline
    DreamsleeperD Offline
    Dreamsleeper
    schrieb am zuletzt editiert von
    #1

    Hallo Zusammen,

    ich nutze in ioBroker eine Verbindung zu openHab um dort das Garden-Binding abzufragen.

    Zu einer fest definierten Uhrzeit soll den smarte Feuchtigkeitssensor überprüft werden. Sobald der einen bestimmten Wert unterschreitet soll das smarte Water Control sein Ventil öffnen und eine bestimmte Zeit Wasser laufen lassen und danach wieder schließen.

    Soweit so gut.

    chedule("55 15 * * *", function () {
      if (getState("openhab.0.items.gardena_sensor__humidity_humidity").val < 95) {
        for (var count = 0; count < 5; count++) {
          setState("openhab.0.items.gardena_watering_computer__outlet_valve_open"/*Ventil geöffnet*/, true);
          setStateDelayed("openhab.0.items.gardena_watering_computer__outlet_valve_open"/*Ventil geöffnet*/, false, 300000, false);
        }
      }
    });
    
    //
    

    Da ich einen manuellen gardena 6fachVerteiler hab (und 5 Kreisläufe dort angeschlossen) soll das Ventil 5x geöffnet werden und nach eine festgelegten Zeit wieder geschlossen. Dann gewartet, damit der Druckabfall im Kreislauf den 6-fach Verteiler umspringen lässt auf den nächsten Kreislauf.

    Die definierte Uhrzeit scheint zu klappen :-) das Abfragen des Sensors wohl auch...im Besipeil 95% (müsste noch testen ob bei 5% das Teil immer aus bleibt)
    Aber nachdem ersten Kreislauf ist Ende.....
    Es wird immer nur 1x ein Kreislauf bewässert und nicht alle 5...
    Wo ist da mein Denkfehler?

    Danke
    Grüße
    Dreamsleeper

    paul53P 1 Antwort Letzte Antwort
    0
    • DreamsleeperD Dreamsleeper

      Hallo Zusammen,

      ich nutze in ioBroker eine Verbindung zu openHab um dort das Garden-Binding abzufragen.

      Zu einer fest definierten Uhrzeit soll den smarte Feuchtigkeitssensor überprüft werden. Sobald der einen bestimmten Wert unterschreitet soll das smarte Water Control sein Ventil öffnen und eine bestimmte Zeit Wasser laufen lassen und danach wieder schließen.

      Soweit so gut.

      chedule("55 15 * * *", function () {
        if (getState("openhab.0.items.gardena_sensor__humidity_humidity").val < 95) {
          for (var count = 0; count < 5; count++) {
            setState("openhab.0.items.gardena_watering_computer__outlet_valve_open"/*Ventil geöffnet*/, true);
            setStateDelayed("openhab.0.items.gardena_watering_computer__outlet_valve_open"/*Ventil geöffnet*/, false, 300000, false);
          }
        }
      });
      
      //
      

      Da ich einen manuellen gardena 6fachVerteiler hab (und 5 Kreisläufe dort angeschlossen) soll das Ventil 5x geöffnet werden und nach eine festgelegten Zeit wieder geschlossen. Dann gewartet, damit der Druckabfall im Kreislauf den 6-fach Verteiler umspringen lässt auf den nächsten Kreislauf.

      Die definierte Uhrzeit scheint zu klappen :-) das Abfragen des Sensors wohl auch...im Besipeil 95% (müsste noch testen ob bei 5% das Teil immer aus bleibt)
      Aber nachdem ersten Kreislauf ist Ende.....
      Es wird immer nur 1x ein Kreislauf bewässert und nicht alle 5...
      Wo ist da mein Denkfehler?

      Danke
      Grüße
      Dreamsleeper

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

      @Dreamsleeper sagte:

      Wo ist da mein Denkfehler?

      Du benötigst setInterval() und clearInterval() zusammen mit count, um nach einer bestimmten Zeit das nächste Ventil zu öffnen.

      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
      0
      • DreamsleeperD Offline
        DreamsleeperD Offline
        Dreamsleeper
        schrieb am zuletzt editiert von
        #3

        OK. Danke. Da ich ein Noob bin was Skripten angeht...
        Den Intervall? in die wiederhole Sccleife?"

        var Intervall;
        
        
        schedule("55 15 * * *", function () {
          if (getState("openhab.0.items.gardena_sensor__humidity_humidity").val < 95) {
            Intervall = setInterval(function () {
              for (var count = 0; count < 5; count++) {
                setState("openhab.0.items.gardena_watering_computer__outlet_valve_open"/*Ventil geöffnet*/, true);
                setStateDelayed("openhab.0.items.gardena_watering_computer__outlet_valve_open"/*Ventil geöffnet*/, false, 300000, false);
              }
              (function () {if (Intervall) {clearInterval(Intervall); Intervall = null;}})();
            }, 1500000);
          }
        });
        
        paul53P 1 Antwort Letzte Antwort
        0
        • DreamsleeperD Dreamsleeper

          OK. Danke. Da ich ein Noob bin was Skripten angeht...
          Den Intervall? in die wiederhole Sccleife?"

          var Intervall;
          
          
          schedule("55 15 * * *", function () {
            if (getState("openhab.0.items.gardena_sensor__humidity_humidity").val < 95) {
              Intervall = setInterval(function () {
                for (var count = 0; count < 5; count++) {
                  setState("openhab.0.items.gardena_watering_computer__outlet_valve_open"/*Ventil geöffnet*/, true);
                  setStateDelayed("openhab.0.items.gardena_watering_computer__outlet_valve_open"/*Ventil geöffnet*/, false, 300000, false);
                }
                (function () {if (Intervall) {clearInterval(Intervall); Intervall = null;}})();
              }, 1500000);
            }
          });
          
          paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von paul53
          #4

          @Dreamsleeper sagte:

          Intervall? in die wiederhole Sccleife?"

          Nein, wie die Bezeichnung "Intervall" schon sagt, wiederholt es selbst. Es muss nur zum Ende (Zähler >= 5) gestoppt werden. In jedem Intervall den Zähler um 1 erhöhen.

          var Intervall; 
          var count;
          
          schedule("55 15 * * *", function () {
            if (getState("openhab.0.items.gardena_sensor__humidity_humidity").val < 95) {
              setState("openhab.0.items.gardena_watering_computer__outlet_valve_open"/*Ventil geöffnet*/, true);
              setStateDelayed("openhab.0.items.gardena_watering_computer__outlet_valve_open"/*Ventil geöffnet*/, false, 290000, false);
              count = 1;
              Intervall = setInterval(function () {
                 setState("openhab.0.items.gardena_watering_computer__outlet_valve_open"/*Ventil geöffnet*/, true);
                 setStateDelayed("openhab.0.items.gardena_watering_computer__outlet_valve_open"/*Ventil geöffnet*/, false, 290000, false);
                 count++;
                 if(count >= 5) clearInterval(Intervall);
              }, 300000); // alle 5 Minuten
            }
          });
          

          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
          0
          • DreamsleeperD Offline
            DreamsleeperD Offline
            Dreamsleeper
            schrieb am zuletzt editiert von
            #5

            @paul53
            Vielen Dank! Ich habs mal angepasst auf 1755 laufen lassen. das funzt... alle Kreisläufe laufen 5min.
            Ich werd mal schauen, dass ich jetzt noch die Zeit auf 20-30min anpasse.

            Das heisst ich muss

            setStateDelayed("openhab.0.items.gardena_watering_computer__outlet_valve_open"/*Ventil geöffnet*/, false, 290000, false);
            

            erhöhen und dann

            }, 300000); // alle 5 Minuten
            

            auch? oder?

            Damit hab ich die linke Seite meines Gartens abgedeckt...
            jetzt werde ich noch die rechte Seite meines Gartens (da ist die gardena smarte Steckdose dran und 3 Kreisläufe) analog anpassen.

            paul53P 1 Antwort Letzte Antwort
            0
            • DreamsleeperD Dreamsleeper

              @paul53
              Vielen Dank! Ich habs mal angepasst auf 1755 laufen lassen. das funzt... alle Kreisläufe laufen 5min.
              Ich werd mal schauen, dass ich jetzt noch die Zeit auf 20-30min anpasse.

              Das heisst ich muss

              setStateDelayed("openhab.0.items.gardena_watering_computer__outlet_valve_open"/*Ventil geöffnet*/, false, 290000, false);
              

              erhöhen und dann

              }, 300000); // alle 5 Minuten
              

              auch? oder?

              Damit hab ich die linke Seite meines Gartens abgedeckt...
              jetzt werde ich noch die rechte Seite meines Gartens (da ist die gardena smarte Steckdose dran und 3 Kreisläufe) analog anpassen.

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

              @Dreamsleeper sagte in Gartenbewässerung nach Feuchtigkeitsmessung:

              erhöhen und dann
              }, 300000); // alle 5 Minuten

              auch? oder?

              Ja.

              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
              0
              • DreamsleeperD Offline
                DreamsleeperD Offline
                Dreamsleeper
                schrieb am zuletzt editiert von
                #7

                So, ich habs jetzt mal so angepasst: (kaum verändert^^)

                Water Control

                var Intervall; 
                var count;
                 
                schedule("25 06 * * *", function () {
                  if (getState("openhab.0.items.gardena_sensor__humidity_humidity").val < 95) {
                    setState("openhab.0.items.gardena_watering_computer__outlet_valve_open"/*Ventil geöffnet*/, true);
                    setStateDelayed("openhab.0.items.gardena_watering_computer__outlet_valve_open"/*Ventil geöffnet*/, false, 1200000, false);
                    count = 1;
                    Intervall = setInterval(function () {
                       setState("openhab.0.items.gardena_watering_computer__outlet_valve_open"/*Ventil geöffnet*/, true);
                       setStateDelayed("openhab.0.items.gardena_watering_computer__outlet_valve_open"/*Ventil geöffnet*/, false, 1200000, false);
                       count++;
                       if(count >= 5) clearInterval(Intervall);
                    }, 1300000); // alle 5 Minuten
                  }
                });
                

                und Smarte Gardena Steckdose (mit Tauchpumpe angeschlossen)

                var Intervall; 
                var count;
                 
                schedule("18 18 * * *", function () {
                  if (getState("openhab.0.items.gardena_sensor__humidity_humidity").val < 95) {
                    setState("opopenhab.0.items.gardena_power__power_power_timer"/*Ventil geöffnet*/, true);
                    setStateDelayed("openhab.0.items.gardena_power__power_power_timer"/*Ventil geöffnet*/, false, 1200000, false);
                    count = 1;
                    Intervall = setInterval(function () {
                       setState("openhab.0.items.gardena_power__power_power_timer"/*Ventil geöffnet*/, true);
                       setStateDelayed("openhab.0.items.gardena_power__power_power_timer"/*Ventil geöffnet*/, false, 1200000, false);
                       count++;
                       if(count >= 3) clearInterval(Intervall);
                    }, 1300000); // alle 5 Minuten
                  }
                });
                

                Ich muss das zwar erst noch alles verstehen, aber hoffe das läuft.....

                und ja die Feuchtigkeit setz ich auf 40% sobald das Timing passt

                paul53P 1 Antwort Letzte Antwort
                0
                • DreamsleeperD Dreamsleeper

                  So, ich habs jetzt mal so angepasst: (kaum verändert^^)

                  Water Control

                  var Intervall; 
                  var count;
                   
                  schedule("25 06 * * *", function () {
                    if (getState("openhab.0.items.gardena_sensor__humidity_humidity").val < 95) {
                      setState("openhab.0.items.gardena_watering_computer__outlet_valve_open"/*Ventil geöffnet*/, true);
                      setStateDelayed("openhab.0.items.gardena_watering_computer__outlet_valve_open"/*Ventil geöffnet*/, false, 1200000, false);
                      count = 1;
                      Intervall = setInterval(function () {
                         setState("openhab.0.items.gardena_watering_computer__outlet_valve_open"/*Ventil geöffnet*/, true);
                         setStateDelayed("openhab.0.items.gardena_watering_computer__outlet_valve_open"/*Ventil geöffnet*/, false, 1200000, false);
                         count++;
                         if(count >= 5) clearInterval(Intervall);
                      }, 1300000); // alle 5 Minuten
                    }
                  });
                  

                  und Smarte Gardena Steckdose (mit Tauchpumpe angeschlossen)

                  var Intervall; 
                  var count;
                   
                  schedule("18 18 * * *", function () {
                    if (getState("openhab.0.items.gardena_sensor__humidity_humidity").val < 95) {
                      setState("opopenhab.0.items.gardena_power__power_power_timer"/*Ventil geöffnet*/, true);
                      setStateDelayed("openhab.0.items.gardena_power__power_power_timer"/*Ventil geöffnet*/, false, 1200000, false);
                      count = 1;
                      Intervall = setInterval(function () {
                         setState("openhab.0.items.gardena_power__power_power_timer"/*Ventil geöffnet*/, true);
                         setStateDelayed("openhab.0.items.gardena_power__power_power_timer"/*Ventil geöffnet*/, false, 1200000, false);
                         count++;
                         if(count >= 3) clearInterval(Intervall);
                      }, 1300000); // alle 5 Minuten
                    }
                  });
                  

                  Ich muss das zwar erst noch alles verstehen, aber hoffe das läuft.....

                  und ja die Feuchtigkeit setz ich auf 40% sobald das Timing passt

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

                  @Dreamsleeper
                  Wenn man setStateDelayed() für die Pause zwischen Ventil schließen und wieder öffnen verwendet, muss die Zyklusdauer nur an einer Stelle berücksichtigt werden.

                  const idVentil = "openhab.0.items.gardena_power__power_power_timer"/*Ventil geöffnet*/;
                  var Intervall; 
                  var count;
                   
                  schedule("18 18 * * *", function () {
                    if (getState("openhab.0.items.gardena_sensor__humidity_humidity").val < 95) {
                      setState(idVentil, true);
                      count = 1;
                      Intervall = setInterval(function () {
                         setState(idVentil, false);
                         count++;
                         if(count >= 3) clearInterval(Intervall);
                         else setStateDelayed(idVentil, true, 10000); // verzögert wieder öffnen
                      }, 1200000); // alle 20 Minuten
                    }
                  });
                  

                  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

                  DreamsleeperD 1 Antwort Letzte Antwort
                  0
                  • paul53P paul53

                    @Dreamsleeper
                    Wenn man setStateDelayed() für die Pause zwischen Ventil schließen und wieder öffnen verwendet, muss die Zyklusdauer nur an einer Stelle berücksichtigt werden.

                    const idVentil = "openhab.0.items.gardena_power__power_power_timer"/*Ventil geöffnet*/;
                    var Intervall; 
                    var count;
                     
                    schedule("18 18 * * *", function () {
                      if (getState("openhab.0.items.gardena_sensor__humidity_humidity").val < 95) {
                        setState(idVentil, true);
                        count = 1;
                        Intervall = setInterval(function () {
                           setState(idVentil, false);
                           count++;
                           if(count >= 3) clearInterval(Intervall);
                           else setStateDelayed(idVentil, true, 10000); // verzögert wieder öffnen
                        }, 1200000); // alle 20 Minuten
                      }
                    });
                    
                    DreamsleeperD Offline
                    DreamsleeperD Offline
                    Dreamsleeper
                    schrieb am zuletzt editiert von Dreamsleeper
                    #9

                    @paul53

                    Danke...
                    die smarte Steckdose will noch nicht.... der Befehl ist falsch..... muss ich nochmal ran.
                    Das andere bau ich ein.

                    Also Water Control läuft.... die smarte gardena Steckdose will nicht laufen....

                    EDIT 3:
                    Mit

                    setState("openhab.0.items.gardena_power__power_power_timer"/*Ventil geöffnet*/, 120000);
                        setStateDelayed("openhab.0.items.gardena_power__power_power_timer"/*Ventil geöffnet*/, false, 0, false);
                    

                    dem ersten setState läuft die Steckdose.... ob die mit dem zweiten ausgeht oder von alleine kein Plan... ich mach grad Try & Error

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


                    Support us

                    ioBroker
                    Community Adapters
                    Donate

                    811

                    Online

                    32.5k

                    Benutzer

                    81.7k

                    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