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. [Vorlage] Gartenbewässerung mit 6 Ventilen

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    343

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.6k

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

[Vorlage] Gartenbewässerung mit 6 Ventilen

Geplant Angeheftet Gesperrt Verschoben Blockly
1.2k Beiträge 76 Kommentatoren 378.5k Aufrufe 88 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.
  • K Kuddel

    @puppet1912 ja das ist falsch.

    Eigentlich soll da der Intervall Counter auf 0 gesetzt werden und nicht die Anzahl.

    Das Ganze um 23:55 Uhr machen ist auch unglücklich, falls das Intervall über den Tageswechsel läuft.

    Nehme den Punkt mit und wird in der nächsten Version gefixt.

    P Offline
    P Offline
    puppet1912
    schrieb am zuletzt editiert von puppet1912
    #1011

    @kuddel said in [Vorlage] Gartenbewässerung mit 6 Ventilen:

    @puppet1912 ja das ist falsch.

    Eigentlich soll da der Intervall Counter auf 0 gesetzt werden und nicht die Anzahl.

    Das Ganze um 23:55 Uhr machen ist auch unglücklich, falls das Intervall über den Tageswechsel läuft.

    Nehme den Punkt mit und wird in der nächsten Version gefixt.

    Alles klar, dann haben wir da ja schon mal die Ursache gefunden. Würde das bei mir erstmal ändern und den Intervall_Counter eintragen, sofern ich die Variable finde. Müsste ja dann "intervall_aktuell" sein. Richtig?
    Intervalle über den Tageswechsel hatte ich persönlich jetzt nicht vor, aber wer weiß was vll jemand anders benötigt.

    Grüße

    ioBroker 4.0.23 - Debian Bullseye unter Proxmox auf IntelNuc7i5BNK

    1 Antwort Letzte Antwort
    0
    • K Kuddel

      @puppet1912 ja das ist falsch.

      Eigentlich soll da der Intervall Counter auf 0 gesetzt werden und nicht die Anzahl.

      Das Ganze um 23:55 Uhr machen ist auch unglücklich, falls das Intervall über den Tageswechsel läuft.

      Nehme den Punkt mit und wird in der nächsten Version gefixt.

      P Offline
      P Offline
      puppet1912
      schrieb am zuletzt editiert von puppet1912
      #1012

      Abend zusammen

      @kuddel wie bereits im Chat kurz angesprochen, hier nochmal meine Feststellung bzgl der Telegrambenachrichtigungen. Diese kamen bei mir nicht.
      Zum einen fehlte im Block 14 die Abfrage, ob die Variable für die Telegrambenachrichtigung aktiv ist. Diese habe ich einfach mal mit einer oder-Bedingung angefügt. Des Weiteren kam bei mir keine Benachrichtigung über das Ende der Bewässerung. Hier war ebenfalls eine Variable nicht gesetzt. Das Ganze unter Block 14.3.3. Hier fehlte die Variable der Instanz.

      telegram_aktiv.JPG

      telegram_stop.JPG

      Ebenso hatte ich heute das Problem, dass die Intervallschaltung trotz abschalten in der VIS und somit DP=false dennoch weiterlief. Scheinbar wurde hier der Cron-Job nicht gelöscht. Ich bin aktuell auf der Suche woran es liegt.

      Edit: Evtl habe ich die Ursache: Im Block 9 (Bewässerung autom. starten) triggert das Script auf eine Änderung von "vars_intervall_startzeit_uhrzeit_start". Im Block 9.6 (Intervall Start ) wird dann geprüft, ob "vars_intervall_startzeit_aktiv" = true ist. Ich finde aber nirgends einen Trigger, der bei "vars_intervall_startzeit_aktiv" = false das Intervall wieder stoppt.
      Wäre hier es hier vll sinnvoll auf diese Variable mit zu Triggern und dann über ein "sonst-falls" das Intervall zu stoppen?

      Beste Grüße

      ioBroker 4.0.23 - Debian Bullseye unter Proxmox auf IntelNuc7i5BNK

      B 2 Antworten Letzte Antwort
      0
      • P puppet1912

        Abend zusammen

        @kuddel wie bereits im Chat kurz angesprochen, hier nochmal meine Feststellung bzgl der Telegrambenachrichtigungen. Diese kamen bei mir nicht.
        Zum einen fehlte im Block 14 die Abfrage, ob die Variable für die Telegrambenachrichtigung aktiv ist. Diese habe ich einfach mal mit einer oder-Bedingung angefügt. Des Weiteren kam bei mir keine Benachrichtigung über das Ende der Bewässerung. Hier war ebenfalls eine Variable nicht gesetzt. Das Ganze unter Block 14.3.3. Hier fehlte die Variable der Instanz.

        telegram_aktiv.JPG

        telegram_stop.JPG

        Ebenso hatte ich heute das Problem, dass die Intervallschaltung trotz abschalten in der VIS und somit DP=false dennoch weiterlief. Scheinbar wurde hier der Cron-Job nicht gelöscht. Ich bin aktuell auf der Suche woran es liegt.

        Edit: Evtl habe ich die Ursache: Im Block 9 (Bewässerung autom. starten) triggert das Script auf eine Änderung von "vars_intervall_startzeit_uhrzeit_start". Im Block 9.6 (Intervall Start ) wird dann geprüft, ob "vars_intervall_startzeit_aktiv" = true ist. Ich finde aber nirgends einen Trigger, der bei "vars_intervall_startzeit_aktiv" = false das Intervall wieder stoppt.
        Wäre hier es hier vll sinnvoll auf diese Variable mit zu Triggern und dann über ein "sonst-falls" das Intervall zu stoppen?

        Beste Grüße

        B Offline
        B Offline
        benziman
        schrieb am zuletzt editiert von benziman
        #1013

        @Kuddel
        deine Bewässerung läuft ja bei mir schon die zweite Saison sehr zuverlässig, hast du bei dir schon einen Bodenfeuchtesensor mit eingebunden?
        Das wäre aus meiner Sicht die Krönung des ganzen.

        sowas zB https://www.growland.net/Ecowitt-Gateway-WLAN-Bodenmessgeraet-mit-Sensor
        der ist von der Bauart aber ungünstig

        Da gibt es auch bereits einen Thread hier im Forum, könntest du das in deinem Script theoretisch integrieren?

        Ich weiß es gibt bereits Bauanleitung für kapzitive Sensoren, allerdings möchte ich sowas ungerne selber bauen. Der Sensor von Gardena ist aus meiner Sicht von der Bauart am besten für Rasen geeignet, ich weiß aber nicht ob man den ohne weiteres mit dem Gardena Adapter einbinden und die Daten vernünftig in deinen Script integrieren kann.
        d02367ff-ab95-40ac-889b-e3723231dc40-grafik.png

        VG

        K 1 Antwort Letzte Antwort
        0
        • P puppet1912

          Abend zusammen

          @kuddel wie bereits im Chat kurz angesprochen, hier nochmal meine Feststellung bzgl der Telegrambenachrichtigungen. Diese kamen bei mir nicht.
          Zum einen fehlte im Block 14 die Abfrage, ob die Variable für die Telegrambenachrichtigung aktiv ist. Diese habe ich einfach mal mit einer oder-Bedingung angefügt. Des Weiteren kam bei mir keine Benachrichtigung über das Ende der Bewässerung. Hier war ebenfalls eine Variable nicht gesetzt. Das Ganze unter Block 14.3.3. Hier fehlte die Variable der Instanz.

          telegram_aktiv.JPG

          telegram_stop.JPG

          Ebenso hatte ich heute das Problem, dass die Intervallschaltung trotz abschalten in der VIS und somit DP=false dennoch weiterlief. Scheinbar wurde hier der Cron-Job nicht gelöscht. Ich bin aktuell auf der Suche woran es liegt.

          Edit: Evtl habe ich die Ursache: Im Block 9 (Bewässerung autom. starten) triggert das Script auf eine Änderung von "vars_intervall_startzeit_uhrzeit_start". Im Block 9.6 (Intervall Start ) wird dann geprüft, ob "vars_intervall_startzeit_aktiv" = true ist. Ich finde aber nirgends einen Trigger, der bei "vars_intervall_startzeit_aktiv" = false das Intervall wieder stoppt.
          Wäre hier es hier vll sinnvoll auf diese Variable mit zu Triggern und dann über ein "sonst-falls" das Intervall zu stoppen?

          Beste Grüße

          B Offline
          B Offline
          benziman
          schrieb am zuletzt editiert von benziman
          #1014

          @Kuddel

          habe deine aktuelle VIS 4.3.0 jetzt importiert, was mache ich falsch?

          109ae2d7-46b4-437f-b0dc-7f1a6d60c4dd-grafik.png

          im Editor werden Autoamtik und Wetter korrekt angezeigt in der Ansicht.

          da stimmt so einiges nicht, hat bei früheren Änderungen in der VIS und am Script immer funktioniert

          bd269e09-bdcb-4d79-adc1-6d4158accade-grafik.png

          1 Antwort Letzte Antwort
          0
          • B benziman

            @Kuddel
            deine Bewässerung läuft ja bei mir schon die zweite Saison sehr zuverlässig, hast du bei dir schon einen Bodenfeuchtesensor mit eingebunden?
            Das wäre aus meiner Sicht die Krönung des ganzen.

            sowas zB https://www.growland.net/Ecowitt-Gateway-WLAN-Bodenmessgeraet-mit-Sensor
            der ist von der Bauart aber ungünstig

            Da gibt es auch bereits einen Thread hier im Forum, könntest du das in deinem Script theoretisch integrieren?

            Ich weiß es gibt bereits Bauanleitung für kapzitive Sensoren, allerdings möchte ich sowas ungerne selber bauen. Der Sensor von Gardena ist aus meiner Sicht von der Bauart am besten für Rasen geeignet, ich weiß aber nicht ob man den ohne weiteres mit dem Gardena Adapter einbinden und die Daten vernünftig in deinen Script integrieren kann.
            d02367ff-ab95-40ac-889b-e3723231dc40-grafik.png

            VG

            K Offline
            K Offline
            Kuddel
            schrieb am zuletzt editiert von
            #1015

            @benziman prinzipiell spricht nichts dagegen Feuchtigkeitssensoren im Skript zu berücksichtigen.

            Ich müsste nur wissen, was für einen DP die Sensoren haben ( true / false oder Feuchtigkeit in % oder so).

            Bzgl deiner VIS sieht es so aus, als wenn in der VIS falsche Objekte hinterlegt sind

            B Chris_71C 2 Antworten Letzte Antwort
            0
            • K Kuddel

              @benziman prinzipiell spricht nichts dagegen Feuchtigkeitssensoren im Skript zu berücksichtigen.

              Ich müsste nur wissen, was für einen DP die Sensoren haben ( true / false oder Feuchtigkeit in % oder so).

              Bzgl deiner VIS sieht es so aus, als wenn in der VIS falsche Objekte hinterlegt sind

              B Offline
              B Offline
              benziman
              schrieb am zuletzt editiert von benziman
              #1016

              @kuddel

              ok, ich schaue mir das mal genauer an und melde mich erneut (die Gardena Sensoren sind echt Teuer und das GW erst recht, die Ecowitt sind günstiger aber nicht so schön flach. Ich melde mich wenn ich die DPs in iobroker habe.

              Bezüglich der VIS, ich habe die komplette VIS gelöscht sowie alle DPs, dann die Views importiert und danach das neue Script gestartet.
              sieht im Editor gut aus, ohne Fehler

              1be52cd8-f0ac-4e8c-8a5a-5fcbd3328e7e-grafik.png

              EDIT: habe mal mit den Elemten verlgichen die angezeigt werden

              auch bei der Werteberechnung scheint sich wieder ein Fehler eingeshclichen zu haben (hatte ich bei der lezten VIS auch!)
              ea856b79-2872-4b6b-822b-d552a1fd5e85-grafik.png

              zeigt immer noch auf java nicht userdat! dadurch kann man deine View nicht Fehlerfrei importieren (nur zur Info)
              habe ich per suchen und ersetzen und alles neu importieren gelöst, das passiert dann bei jeder neuen Version die du hochlädst
              Bei Steuerung Ende und Dauer sind zwei Schreibfehler drin deswegen sind die null
              kannst du gerne hochladen wenn du magst (läuft jetzt ohne Probleme)
              1650736468947-bewaesserung_vis_v1.1.1_fixed.zip

              1 Antwort Letzte Antwort
              0
              • K Kuddel

                @benziman prinzipiell spricht nichts dagegen Feuchtigkeitssensoren im Skript zu berücksichtigen.

                Ich müsste nur wissen, was für einen DP die Sensoren haben ( true / false oder Feuchtigkeit in % oder so).

                Bzgl deiner VIS sieht es so aus, als wenn in der VIS falsche Objekte hinterlegt sind

                Chris_71C Offline
                Chris_71C Offline
                Chris_71
                schrieb am zuletzt editiert von
                #1017

                @kuddel
                Der Gardena Sensor hat als DP Feuchtigkeit in Prozent und Temperatur

                a9673171-569a-4e94-9c50-a7d70394d436-grafik.png

                1 Antwort Letzte Antwort
                0
                • W Offline
                  W Offline
                  WaMa73
                  schrieb am zuletzt editiert von
                  #1018

                  Hallo liebes Forum und besonders @kuddel,

                  vielen, vielen Dank für die Mühe, so ein Skript (inkl. Vis) zu erstellen, und noch zu supporten.

                  Ich stehe gerade vor einem Problem. Erstens bin ich kein JAVA (Blockly) Experte, habe aber alles importiert bekommen und es läuft. Jetzt weicht mein Aufbau aber vom "Standard" ab. Ich habe einen SONOFF POW R3 für die Pumpe und einen 4CH Pro für 4 Ventile. Beide mit Tasmota (11.1.0). Der POW schaltet aber den CH4 erst ein. Daher benötige ich eine Pause, von ca. 10-15 Sekunden, nach dem Einschalten der Pumpe. Dann erst ist der CH4 hochgefahren und die PulseTime1-4 kann übertragen werden bzw. die POWER-States1-4 können geschaltet werden.
                  Leider kenne ich mich noch nicht so gut mit Blockly aus um den richtigen Ort für einen Pausenblock in Deinem Hammerskript zu finden. Kann mir da irgendwer nen Tipp geben?

                  Ich hoffe, ich habe mich halbwegs verständlich ausgedrückt.?
                  Nochmals vielen Dank für Deine bzw. Eure Arbeit.

                  K 1 Antwort Letzte Antwort
                  0
                  • W WaMa73

                    Hallo liebes Forum und besonders @kuddel,

                    vielen, vielen Dank für die Mühe, so ein Skript (inkl. Vis) zu erstellen, und noch zu supporten.

                    Ich stehe gerade vor einem Problem. Erstens bin ich kein JAVA (Blockly) Experte, habe aber alles importiert bekommen und es läuft. Jetzt weicht mein Aufbau aber vom "Standard" ab. Ich habe einen SONOFF POW R3 für die Pumpe und einen 4CH Pro für 4 Ventile. Beide mit Tasmota (11.1.0). Der POW schaltet aber den CH4 erst ein. Daher benötige ich eine Pause, von ca. 10-15 Sekunden, nach dem Einschalten der Pumpe. Dann erst ist der CH4 hochgefahren und die PulseTime1-4 kann übertragen werden bzw. die POWER-States1-4 können geschaltet werden.
                    Leider kenne ich mich noch nicht so gut mit Blockly aus um den richtigen Ort für einen Pausenblock in Deinem Hammerskript zu finden. Kann mir da irgendwer nen Tipp geben?

                    Ich hoffe, ich habe mich halbwegs verständlich ausgedrückt.?
                    Nochmals vielen Dank für Deine bzw. Eure Arbeit.

                    K Offline
                    K Offline
                    Kuddel
                    schrieb am zuletzt editiert von
                    #1019

                    @wama73 da dein Problem ein absoluter Sonderfall ist, sehe ich die Lösung nicht bei mir im Skript, sondern in einem extra Skript.

                    Der Ansatz wäre: Das extra Skript löst 20 Sekunden vor der Bewässerung aus und aktiviert somit deinen POW.
                    Im Anschluss startet mein Skript dann ganz normal.

                    Kann mir nächste Woche mal Gedanken dazu machen, wie das in Blockly aussehen würde.

                    W 1 Antwort Letzte Antwort
                    1
                    • K Kuddel

                      @wama73 da dein Problem ein absoluter Sonderfall ist, sehe ich die Lösung nicht bei mir im Skript, sondern in einem extra Skript.

                      Der Ansatz wäre: Das extra Skript löst 20 Sekunden vor der Bewässerung aus und aktiviert somit deinen POW.
                      Im Anschluss startet mein Skript dann ganz normal.

                      Kann mir nächste Woche mal Gedanken dazu machen, wie das in Blockly aussehen würde.

                      W Offline
                      W Offline
                      WaMa73
                      schrieb am zuletzt editiert von WaMa73
                      #1020

                      @kuddel
                      Danke für die schnelle Antwort.
                      Eigentlich müsste ich dann nur Dein Skript aus einem anderen aufrufen.?
                      Doch dafür fehlt mir das KnowHow.

                      Nachtrag: Werde einen DP anlegen, diesen durch ein neues Skript ändern bzw. den POW einschalten, 15 Sekunden Pause und dann Deinen DP "bewaesserung_aktiv" setzen. So wie ich Dein Skript verstehe, wird der Aktor_Pumpe, wenn "true", ignoriert bzw. nicht geschaltet.?

                      K 1 Antwort Letzte Antwort
                      0
                      • W WaMa73

                        @kuddel
                        Danke für die schnelle Antwort.
                        Eigentlich müsste ich dann nur Dein Skript aus einem anderen aufrufen.?
                        Doch dafür fehlt mir das KnowHow.

                        Nachtrag: Werde einen DP anlegen, diesen durch ein neues Skript ändern bzw. den POW einschalten, 15 Sekunden Pause und dann Deinen DP "bewaesserung_aktiv" setzen. So wie ich Dein Skript verstehe, wird der Aktor_Pumpe, wenn "true", ignoriert bzw. nicht geschaltet.?

                        K Offline
                        K Offline
                        Kuddel
                        schrieb am zuletzt editiert von
                        #1021

                        @wama73 so wie du das vorhast, würde das natürlich funktionieren.

                        Du startet die Bewässung dann ja quasi manuell.

                        Somit hebelst du dann aber die Schwellwerte aus und deine Bewässerung würde immer starten, auch wenn es bei dir seit 2 Wochen regnet und es nur 5 Grad sind.

                        Was genau meinst du mit der Pumpe ?

                        W 1 Antwort Letzte Antwort
                        1
                        • K Kuddel

                          @wama73 so wie du das vorhast, würde das natürlich funktionieren.

                          Du startet die Bewässung dann ja quasi manuell.

                          Somit hebelst du dann aber die Schwellwerte aus und deine Bewässerung würde immer starten, auch wenn es bei dir seit 2 Wochen regnet und es nur 5 Grad sind.

                          Was genau meinst du mit der Pumpe ?

                          W Offline
                          W Offline
                          WaMa73
                          schrieb am zuletzt editiert von
                          #1022

                          @kuddel
                          Ich setze in "meinem" Skript den "Aktor_Pumpe" auf TRUE, warte 15 Sekunden und setze dann den DP "bewaesserung_aktiv" auf TRUE. Dann sollte Dein Skript doch so ablaufen als hätte ich es über die VIS gestartet. Mit allem PiPaPo.?
                          Dann noch in der VIS einen zusätzlichen Button "Start" der "mein Skript triggert.
                          Kann es leider zur Zeit nicht umsetzen, da ich auf der Arbeit bin.

                          K 1 Antwort Letzte Antwort
                          0
                          • W WaMa73

                            @kuddel
                            Ich setze in "meinem" Skript den "Aktor_Pumpe" auf TRUE, warte 15 Sekunden und setze dann den DP "bewaesserung_aktiv" auf TRUE. Dann sollte Dein Skript doch so ablaufen als hätte ich es über die VIS gestartet. Mit allem PiPaPo.?
                            Dann noch in der VIS einen zusätzlichen Button "Start" der "mein Skript triggert.
                            Kann es leider zur Zeit nicht umsetzen, da ich auf der Arbeit bin.

                            K Offline
                            K Offline
                            Kuddel
                            schrieb am zuletzt editiert von
                            #1023

                            @wama73 die Bewässerung startet auf jeden Fall, aber ignoriert dabei halt alle Schwellwerte bzgl. Temperatur, Regen und Wind.

                            W 1 Antwort Letzte Antwort
                            1
                            • K Kuddel

                              @wama73 die Bewässerung startet auf jeden Fall, aber ignoriert dabei halt alle Schwellwerte bzgl. Temperatur, Regen und Wind.

                              W Offline
                              W Offline
                              WaMa73
                              schrieb am zuletzt editiert von
                              #1024

                              @kuddel
                              Aber ist es nicht egal, ob ich den Button in der VIS drücke oder den DP via Skript setze.
                              Ah, gerade kommt die Erinnerung... Wenn die Schwellwerte nicht passen, schaltest Du den Pumpen_Aktor erst gar nicht.?

                              Ok, ich hab da noch nen Sonoff mini in der Steuerung. Nutze aber nur den Switch (Taster am Pumpenhaus). Dessen "POWER" könnte ich nutzen um den 4CH zu aktivieren und dann Deinen DP "bewaesserung_aktiv" setzen.
                              Das ist echt blöd, so etwas zu bescheiben, wenn man es nicht vor sich hat. Sorry.

                              K 2 Antworten Letzte Antwort
                              0
                              • W WaMa73

                                @kuddel
                                Aber ist es nicht egal, ob ich den Button in der VIS drücke oder den DP via Skript setze.
                                Ah, gerade kommt die Erinnerung... Wenn die Schwellwerte nicht passen, schaltest Du den Pumpen_Aktor erst gar nicht.?

                                Ok, ich hab da noch nen Sonoff mini in der Steuerung. Nutze aber nur den Switch (Taster am Pumpenhaus). Dessen "POWER" könnte ich nutzen um den 4CH zu aktivieren und dann Deinen DP "bewaesserung_aktiv" setzen.
                                Das ist echt blöd, so etwas zu bescheiben, wenn man es nicht vor sich hat. Sorry.

                                K Offline
                                K Offline
                                Kuddel
                                schrieb am zuletzt editiert von
                                #1025

                                @wama73 wenn die Schwellwerte nicht passen, wird die Bewässerung gar nicht erst gestartet.

                                Du willst ja sicher autom. bewässern oder?

                                Was nimmst du als Start? Feste Uhrzeit oder Sonnenauf/ -untergang?

                                W 1 Antwort Letzte Antwort
                                1
                                • W WaMa73

                                  @kuddel
                                  Aber ist es nicht egal, ob ich den Button in der VIS drücke oder den DP via Skript setze.
                                  Ah, gerade kommt die Erinnerung... Wenn die Schwellwerte nicht passen, schaltest Du den Pumpen_Aktor erst gar nicht.?

                                  Ok, ich hab da noch nen Sonoff mini in der Steuerung. Nutze aber nur den Switch (Taster am Pumpenhaus). Dessen "POWER" könnte ich nutzen um den 4CH zu aktivieren und dann Deinen DP "bewaesserung_aktiv" setzen.
                                  Das ist echt blöd, so etwas zu bescheiben, wenn man es nicht vor sich hat. Sorry.

                                  K Offline
                                  K Offline
                                  Kuddel
                                  schrieb am zuletzt editiert von
                                  #1026

                                  @wama73 habe da mal fix etwas zusammengebastelt:

                                  Mit diesem Blockly kannst du deinen Aktor 20 Sekunden vorm Start von der Bewässerung zur festen Startzeit 1 starten.

                                  45797ba3-1b6b-4ccd-a518-09e1951369d3-grafik.png

                                  Export

                                  <xml xmlns="https://developers.google.com/blockly/xml">
                                   <variables>
                                     <variable id="s_fU$1u,HsOI-:CZM9pK">cron_uhrzeit</variable>
                                     <variable id="A-BOJoXL@]{XC${pmaag">cron_uhrzeit_neu</variable>
                                     <variable type="cron" id="timer">timer</variable>
                                   </variables>
                                   <block type="on_ext" id=":[.|JC2d6p:ox,DrPVJf" x="188" y="-262">
                                     <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
                                     <field name="CONDITION">ne</field>
                                     <field name="ACK_CONDITION"></field>
                                     <value name="OID0">
                                       <shadow type="field_oid" id="=5^zR;p.Msv3b-}ibhB[">
                                         <field name="oid">0_userdata.0.bewaesserung.zeitplan.feste_startzeit_1.feste_startzeit_1_uhrzeit_ende</field>
                                       </shadow>
                                     </value>
                                     <value name="OID1">
                                       <shadow type="field_oid" id="p5JyOXBV~vq-RnS1pa06">
                                         <field name="oid">0_userdata.0.bewaesserung.zeitplan.feste_startzeit_1.feste_startzeit_1_aktiv</field>
                                       </shadow>
                                     </value>
                                     <statement name="STATEMENT">
                                       <block type="schedule_clear" id="Wu0mt3LvlaC66yH~3{ZM">
                                         <field name="NAME">timer</field>
                                         <next>
                                           <block type="variables_set" id="El|Sk%[eEtzQ.]$y2HgI">
                                             <field name="VAR" id="s_fU$1u,HsOI-:CZM9pK">cron_uhrzeit</field>
                                             <value name="VALUE">
                                               <block type="convert_from_date" id="luqS|%7X~S_PGD%2^Hh[">
                                                 <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                                 <field name="OPTION">object</field>
                                                 <value name="VALUE">
                                                   <block type="get_value" id="U~6,!=(jBu:l!Z?oZiOk">
                                                     <field name="ATTR">val</field>
                                                     <field name="OID">0_userdata.0.bewaesserung.zeitplan.feste_startzeit_1.feste_startzeit_1_uhrzeit_start</field>
                                                   </block>
                                                 </value>
                                               </block>
                                             </value>
                                             <next>
                                               <block type="variables_set" id="J#abT3(ke,+z!~wu`@gM">
                                                 <field name="VAR" id="A-BOJoXL@]{XC${pmaag">cron_uhrzeit_neu</field>
                                                 <value name="VALUE">
                                                   <block type="math_arithmetic" id="}PF7:aL.h:Hl!l7}ctiA" inline="false">
                                                     <field name="OP">MINUS</field>
                                                     <comment pinned="false" h="80" w="160">Startzeit minus 20 Sekunden (in MS)</comment>
                                                     <value name="A">
                                                       <shadow type="math_number" id="!rX]1)l(Nz4=5[HK,[Am">
                                                         <field name="NUM">1</field>
                                                       </shadow>
                                                       <block type="variables_get" id="P4Xm{b4l6!3[DD6X#*Q{">
                                                         <field name="VAR" id="s_fU$1u,HsOI-:CZM9pK">cron_uhrzeit</field>
                                                       </block>
                                                     </value>
                                                     <value name="B">
                                                       <shadow type="math_number" id="EC*CfHTL]_RgI5#3oi[/">
                                                         <field name="NUM">20000</field>
                                                       </shadow>
                                                     </value>
                                                   </block>
                                                 </value>
                                                 <next>
                                                   <block type="variables_set" id="mW!=x*phcC$[`ho30mj`">
                                                     <field name="VAR" id="A-BOJoXL@]{XC${pmaag">cron_uhrzeit_neu</field>
                                                     <value name="VALUE">
                                                       <block type="convert_from_date" id="T9r_PV/}on$!4m5fGJ5r">
                                                         <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                                         <field name="OPTION">hh:mm:ss</field>
                                                         <value name="VALUE">
                                                           <block type="variables_get" id="{SFS~*Y8}:y2|%K_yyI=">
                                                             <field name="VAR" id="A-BOJoXL@]{XC${pmaag">cron_uhrzeit_neu</field>
                                                           </block>
                                                         </value>
                                                       </block>
                                                     </value>
                                                     <next>
                                                       <block type="schedule_create" id="bH?srlUpeTj.+poTHwQo">
                                                         <field name="NAME">timer</field>
                                                         <value name="SCHEDULE">
                                                           <shadow type="field_cron" id="@ymF3;mAQzsO$PnW5BqI">
                                                             <field name="CRON">* * * * *</field>
                                                           </shadow>
                                                           <block type="cron_builder" id="+|+UAT@maLu05!K0c.+:">
                                                             <mutation xmlns="http://www.w3.org/1999/xhtml" seconds="true" as_line="false"></mutation>
                                                             <field name="LINE">FALSE</field>
                                                             <field name="WITH_SECONDS">TRUE</field>
                                                             <value name="DOW">
                                                               <shadow type="text" id="xsg4.gCj}yx:IUVmvz_Y">
                                                                 <field name="TEXT">*</field>
                                                               </shadow>
                                                             </value>
                                                             <value name="MONTHS">
                                                               <shadow type="text" id="Gwns]4_1JnIkafG^-1:i">
                                                                 <field name="TEXT">*</field>
                                                               </shadow>
                                                             </value>
                                                             <value name="DAYS">
                                                               <shadow type="text" id="#$N-+b=v{+Hd!h*Lwc^.">
                                                                 <field name="TEXT">*</field>
                                                               </shadow>
                                                             </value>
                                                             <value name="HOURS">
                                                               <shadow type="text" id="kdrm?Kuz%MPh*O+G$xMf">
                                                                 <field name="TEXT">*</field>
                                                               </shadow>
                                                               <block type="text_getSubstring" id="=*X0L%F6`t`wMGN59@{6">
                                                                 <mutation at1="true" at2="true"></mutation>
                                                                 <field name="WHERE1">FROM_START</field>
                                                                 <field name="WHERE2">FROM_START</field>
                                                                 <value name="STRING">
                                                                   <block type="variables_get" id="-81LbUFU8zPJ`aKB][Y#">
                                                                     <field name="VAR" id="A-BOJoXL@]{XC${pmaag">cron_uhrzeit_neu</field>
                                                                   </block>
                                                                 </value>
                                                                 <value name="AT1">
                                                                   <block type="math_number" id="IJE3vctO3q9{61hkPaWO">
                                                                     <field name="NUM">1</field>
                                                                   </block>
                                                                 </value>
                                                                 <value name="AT2">
                                                                   <block type="math_number" id="Q:8L?k9#?FR`bc78:)|M">
                                                                     <field name="NUM">2</field>
                                                                   </block>
                                                                 </value>
                                                               </block>
                                                             </value>
                                                             <value name="MINUTES">
                                                               <shadow type="text" id="s$q]`20*`*Nr5hnaSDpD">
                                                                 <field name="TEXT">*</field>
                                                               </shadow>
                                                               <block type="text_getSubstring" id="?{!ypB6+Yzf~T1[0LX+b">
                                                                 <mutation at1="true" at2="true"></mutation>
                                                                 <field name="WHERE1">FROM_START</field>
                                                                 <field name="WHERE2">FROM_START</field>
                                                                 <value name="STRING">
                                                                   <block type="variables_get" id="W9rPV`,%*]Xc3MH?p7}2">
                                                                     <field name="VAR" id="A-BOJoXL@]{XC${pmaag">cron_uhrzeit_neu</field>
                                                                   </block>
                                                                 </value>
                                                                 <value name="AT1">
                                                                   <block type="math_number" id="D.6_dRO1g@3nt*Q7vG:y">
                                                                     <field name="NUM">4</field>
                                                                   </block>
                                                                 </value>
                                                                 <value name="AT2">
                                                                   <block type="math_number" id="Zf,Qy$NIdw}?^J={^!h~">
                                                                     <field name="NUM">5</field>
                                                                   </block>
                                                                 </value>
                                                               </block>
                                                             </value>
                                                             <value name="SECONDS">
                                                               <shadow type="text" id="t%mx9{u_4obi*c9iTz~w">
                                                                 <field name="TEXT">*</field>
                                                               </shadow>
                                                               <block type="text_getSubstring" id="lW*p`W4x^GUP3@:oaueo">
                                                                 <mutation at1="true" at2="true"></mutation>
                                                                 <field name="WHERE1">FROM_START</field>
                                                                 <field name="WHERE2">FROM_START</field>
                                                                 <value name="STRING">
                                                                   <block type="variables_get" id="fWTWi1:[-kE%a4Z$4RpO">
                                                                     <field name="VAR" id="A-BOJoXL@]{XC${pmaag">cron_uhrzeit_neu</field>
                                                                   </block>
                                                                 </value>
                                                                 <value name="AT1">
                                                                   <block type="math_number" id="E3Z)-b=T}_6iJu%DLh+3">
                                                                     <field name="NUM">4</field>
                                                                   </block>
                                                                 </value>
                                                                 <value name="AT2">
                                                                   <block type="math_number" id="D1VMM4==uIEXanC{/[~z">
                                                                     <field name="NUM">5</field>
                                                                   </block>
                                                                 </value>
                                                               </block>
                                                             </value>
                                                           </block>
                                                         </value>
                                                         <statement name="STATEMENT">
                                                           <block type="controls_if" id="+b[~?S6Dnrrb]Wdg~[3c">
                                                             <value name="IF0">
                                                               <block type="logic_operation" id="%Xb2rM]8RpBmOI0s;jd)" inline="false">
                                                                 <field name="OP">AND</field>
                                                                 <value name="A">
                                                                   <block type="logic_compare" id="`$`;opK5g[}gCEm,4:yL">
                                                                     <field name="OP">EQ</field>
                                                                     <value name="A">
                                                                       <block type="get_value" id=";ryN7Zn(IjZTeR6!*0^+">
                                                                         <field name="ATTR">val</field>
                                                                         <field name="OID">0_userdata.0.bewaesserung.zeitplan.feste_startzeit_1.feste_startzeit_1_aktiv</field>
                                                                       </block>
                                                                     </value>
                                                                     <value name="B">
                                                                       <block type="logic_boolean" id="3h:08gGQ8;S40ORy11KN">
                                                                         <field name="BOOL">TRUE</field>
                                                                       </block>
                                                                     </value>
                                                                   </block>
                                                                 </value>
                                                                 <value name="B">
                                                                   <block type="logic_compare" id="?%FO.T;*aFVatp%C.UFX">
                                                                     <field name="OP">EQ</field>
                                                                     <value name="A">
                                                                       <block type="get_value" id=",_y:hx.J`J-.^y.%J9kj">
                                                                         <field name="ATTR">val</field>
                                                                         <field name="OID">0_userdata.0.bewaesserung.bewaesserung_heute</field>
                                                                       </block>
                                                                     </value>
                                                                     <value name="B">
                                                                       <block type="logic_boolean" id="-*UgUpRdmB{Y)sjfBUx*">
                                                                         <field name="BOOL">TRUE</field>
                                                                       </block>
                                                                     </value>
                                                                   </block>
                                                                 </value>
                                                               </block>
                                                             </value>
                                                             <statement name="DO0">
                                                               <block type="comment" id="(L`yh+IHQ90,CD5qZ(Av">
                                                                 <field name="COMMENT">Aktor aktivieren</field>
                                                                 <next>
                                                                   <block type="control" id="Y([XFfP/Q$N4Jd69D4Tb">
                                                                     <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                                     <field name="OID">Object ID</field>
                                                                     <field name="WITH_DELAY">FALSE</field>
                                                                     <value name="VALUE">
                                                                       <block type="logic_boolean" id="w*I`e0#t6y^#zdnCUOq0">
                                                                         <field name="BOOL">TRUE</field>
                                                                       </block>
                                                                     </value>
                                                                   </block>
                                                                 </next>
                                                               </block>
                                                             </statement>
                                                           </block>
                                                         </statement>
                                                       </block>
                                                     </next>
                                                   </block>
                                                 </next>
                                               </block>
                                             </next>
                                           </block>
                                         </next>
                                       </block>
                                     </statement>
                                   </block>
                                  </xml>
                                  

                                  W 1 Antwort Letzte Antwort
                                  1
                                  • K Kuddel

                                    @wama73 wenn die Schwellwerte nicht passen, wird die Bewässerung gar nicht erst gestartet.

                                    Du willst ja sicher autom. bewässern oder?

                                    Was nimmst du als Start? Feste Uhrzeit oder Sonnenauf/ -untergang?

                                    W Offline
                                    W Offline
                                    WaMa73
                                    schrieb am zuletzt editiert von
                                    #1027

                                    @kuddel ich würde feste Uhrzeiten bevorzugen. Glaube am einfachsten ist es den 4CH dauerhaft mit Spannung zu versorgen und den ganzen Zauber sein zu lassen. Der CH4 verbraucht zwar 4-6 Watt im Leerlauf, aber egal.
                                    Der POW und der mini (kam erst nachträglich um die Pumpe "vor Ort" einzuschalten) sind dauerhaft versorgt. Der POW schaltet dann den 4CH und den Trafo dazu.

                                    K 1 Antwort Letzte Antwort
                                    0
                                    • W WaMa73

                                      @kuddel ich würde feste Uhrzeiten bevorzugen. Glaube am einfachsten ist es den 4CH dauerhaft mit Spannung zu versorgen und den ganzen Zauber sein zu lassen. Der CH4 verbraucht zwar 4-6 Watt im Leerlauf, aber egal.
                                      Der POW und der mini (kam erst nachträglich um die Pumpe "vor Ort" einzuschalten) sind dauerhaft versorgt. Der POW schaltet dann den 4CH und den Trafo dazu.

                                      K Offline
                                      K Offline
                                      Kuddel
                                      schrieb am zuletzt editiert von
                                      #1028

                                      @wama73 siehe Post von eben...

                                      W 1 Antwort Letzte Antwort
                                      1
                                      • K Kuddel

                                        @wama73 siehe Post von eben...

                                        W Offline
                                        W Offline
                                        WaMa73
                                        schrieb am zuletzt editiert von
                                        #1029

                                        @kuddel super, vielen Dank. Hab den Post beim Scheiben nicht gesehen:sunglasses:
                                        Werde beide Varianten mal probieren, also dauerhaft versorgt und Deine Lösung. Komme aber wohl erst am WE dazu.

                                        1 Antwort Letzte Antwort
                                        0
                                        • P Offline
                                          P Offline
                                          puppet1912
                                          schrieb am zuletzt editiert von
                                          #1030

                                          Mahlzeit die Herren,

                                          Das Script von @Kuddel läuft bei mir nun auch schon eine Weile und das auch zuverlässig. Da ich vor 18 Tagen komplett neu angesäht habe, nutze ich derzeit vorallem die Intervallschaltung. Dafür nochmals Danke ;)
                                          Allerdings konnte ich diese nicht mehr unterbrechen. Also egal ob die Automatik ausgeschalten wurde oder die Intervalle per Haken in der VIS abgeschalten wurden, es liefen alle zuvor geplanten Durchgänge bis zum erreichen der geplanten Anzahl.

                                          Ich war mal so frei und habe zumindest für mich ein workarround erarbeitet, was bis dato ganz gut läuft. Fehler hatte ich noch keine. Ob das dem ursprünglichen Script gerecht wird, sei dahin gestellt. Letztlich habe ich nur noch zwei kleine Abfragen eingefügt.

                                          intervallpause.JPG

                                          Wenn die Intervall_Startzeit = false gesetzt wird, läuft das Intervall zwar weiter, es wird aber keine Bewässerung ausgelöst. Quasi ein pausieren.
                                          Wenn die Automatik = false, dann wird das Intervall komplett abgebrochen. Letzteres ist zwar etwas unsauber, aber funktioniert.

                                          Beste Grüße

                                          ioBroker 4.0.23 - Debian Bullseye unter Proxmox auf IntelNuc7i5BNK

                                          K 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

                                          779

                                          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