Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Einsteigerfragen
    4. Automatisierung
    5. Wie Blockly besser organisieren, schreibt mir Protokoll voll

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Wie Blockly besser organisieren, schreibt mir Protokoll voll

    This topic has been deleted. Only users with topic management privileges can see it.
    • W
      wotan2005 last edited by

      Großes Sorry für die Verwirrung dafür.
      Deshalb ja auch nun die ausführliche Erklärungen, wieso ich oben schrieb:

      @wotan2005 sagte in Wie Blockly besser organisieren, schreibt mir Protokoll voll:

      Ich habe mehrere Blockly's die sehr ähnlich sind und auch die selben Schalter benötigen. Gibt es da noch eine andere Lösungen?

      Damit man das vielleicht im Detail auch besser versteht, und mir dabei helfen kann, an den richtigen Schrauben zudrehen.

      Homoran Asgothian 2 Replies Last reply Reply Quote 0
      • Homoran
        Homoran Global Moderator Administrators @wotan2005 last edited by Homoran

        @wotan2005 Das ist ganz was anderes, da steht nichts von konkurrierenden Aufgaben!
        Deswegen immer alles zeigen!!!
        und keine Nacherzählungen

        Aber das Thema hatten wir ja alles schon in anderen Threads bei dir

        https://forum.iobroker.net/topic/51555/hinweise-für-gute-forenbeiträge/1

        1 Reply Last reply Reply Quote 0
        • Asgothian
          Asgothian Developer @wotan2005 last edited by

          @wotan2005 sagte in Wie Blockly besser organisieren, schreibt mir Protokoll voll:

          Damit man das vielleicht im Detail auch besser versteht, und mir dabei helfen kann, an den richtigen Schrauben zudrehen.

          Kleines Geheimnis am Rande - hier lesen einige der Entwickler mit. JS Funktionen werden da durchaus auch analysiert - wenn sie nicht ellenlang sind. Du wirst also für JS etwa so viel Hilfe bekommen wie für Blockly.

          Blockly ist schön für den schnellen einstieg - aber komplex wenn es um aufwändigere Lösungen geht.

          A.

          1 Reply Last reply Reply Quote 2
          • W
            wotan2005 last edited by

            Aber dafür muss man JS auch schreiben und verstehen können, nicht umsonst benutze ich Blockly.

            Codierknecht 1 Reply Last reply Reply Quote 0
            • Codierknecht
              Codierknecht Developer Most Active @wotan2005 last edited by

              @wotan2005 sagte in Wie Blockly besser organisieren, schreibt mir Protokoll voll:

              Aber dafür muss man JS auch schreiben und verstehen können

              Na soooo weit ist das ja nicht von PHP entfernt.
              Es gibt zwar einige "Eigenarten" (Promises etc.), aber die Syntax ist ziemlich ähnlich.

              Ich nutze Blockly nur noch zu Testzwecken.
              Alles was produktiv läuft, habe ich auf JS umgestellt. Da hat man etwas mehr Kontrolle, was z.B. den Scope von Variablen angeht. Auch Konstanten sind z.B. in Blockly nicht möglich.
              Und insgesamt wird der Code dann etwas kompakter und letztlich besser lesbar.

              Wenn Du in PHP ziemlich "sattelfest" bist, würde ich mich @Asgothian anschließen und JS empfehlen.
              Wenn nicht, dann bleib' bei Blockly.

              1 Reply Last reply Reply Quote 0
              • paul53
                paul53 @wotan2005 last edited by

                @wotan2005 sagte: komme ich mir mit der Bewässerung ins Gehege

                Um das zu vermeiden, steuere in den Zeitplänen und dem Trigger nur die Ventile und schalte die Pumpe abhängig von der Ventilöffnung.

                Blockly_temp.JPG

                1 Reply Last reply Reply Quote 1
                • W
                  wotan2005 last edited by wotan2005

                  @paul53
                  Laut der Dummie Anleitung von Blockly, soll man doch keine zwei Trigger ineinander verschachteln, wo setzte ich bei deinem Beispiel jetzt die Einschaltzeit auf 6:00Uhr früh an.
                  Und die Laufzeit pro Ventil von 15min an.

                  paul53 1 Reply Last reply Reply Quote 0
                  • paul53
                    paul53 @wotan2005 last edited by

                    @wotan2005 sagte: wo setzte ich bei deinem Beispiel jetzt die Einschaltzeit auf 6:00Uhr früh an.

                    Blockly_temp.JPG

                    1 Reply Last reply Reply Quote 1
                    • W
                      wotan2005 last edited by

                      Und das alles in einem Blockly?

                      paul53 1 Reply Last reply Reply Quote 0
                      • paul53
                        paul53 @wotan2005 last edited by paul53

                        @wotan2005 sagte: Und das alles in einem Blockly?

                        Weshalb nicht? Ist doch noch übersichtlich. Der Überlauf-Trigger kann auch noch mit rein.

                        Blockly_temp.JPG

                        1 Reply Last reply Reply Quote 3
                        • W
                          wotan2005 last edited by wotan2005

                          Uuuuiiiiiiii

                          @paul53
                          Nur Frage zum Verständnis, deine Switch1-3 sind die echten Switche der Ventile.

                          das [setze "pumpe" auf] ist eine Variable?!?!

                          paul53 1 Reply Last reply Reply Quote 0
                          • paul53
                            paul53 @wotan2005 last edited by

                            @wotan2005 sagte: deine Switch1-3 sind die echten Switche der Ventile.

                            Ja, das sind die Ventil-Datenpunkte ("Schalter" vom Shelly).

                            @wotan2005 sagte in Wie Blockly besser organisieren, schreibt mir Protokoll voll:

                            das [setze "pumpe" auf] ist eine Variable?!?!

                            Ja.

                            1 Reply Last reply Reply Quote 1
                            • W
                              wotan2005 last edited by

                              @paul53
                              Das Blockly wird dann aber trotzdem immer ausgeführt oder nur zu den Zeitplänen?

                              Dein [fals mache "Variable (pumpe) nicht gleich "Wert" von Objekt-ID "Pumpe"] -> ist der Status vom Shelly Switch der Pumpe?

                              paul53 1 Reply Last reply Reply Quote 0
                              • paul53
                                paul53 @wotan2005 last edited by paul53

                                @wotan2005 sagte: ist der Status vom Shelly Switch der Pumpe?

                                Ja, "Wert vom Objekt Pumpe" ist der Status des Pumpen-Shelly ("Schalter"), also der Ist-Zustand der Pumpe. Die Variable pumpe enthält den Sollzustand.

                                1 Reply Last reply Reply Quote 0
                                • W
                                  wotan2005 last edited by wotan2005

                                  @paul53
                                  Das Blockly wird dann aber trotzdem immer ausgeführt oder nur zu den Zeitplänen?

                                  paul53 Codierknecht 2 Replies Last reply Reply Quote 0
                                  • paul53
                                    paul53 @wotan2005 last edited by paul53

                                    @wotan2005 sagte: Das Blockly wird dann aber trotzdem immer ausgeführt oder nur zu den Zeitplänen?

                                    Das Blockly wird immer ausgeführt. Es enthält 5 Trigger: 3 Zeitpläne und zwei Trigger auf Wertänderung. Das Setzen der Variable ventil01 außerhalb der Trigger wird nur einmal bei Skriptstart ausgeführt.

                                    Ich habe den Überlauftrigger noch um eine Uhrzeitprüfung ergänzt:

                                    Blockly_temp.JPG

                                    1 Reply Last reply Reply Quote 2
                                    • Codierknecht
                                      Codierknecht Developer Most Active @wotan2005 last edited by

                                      @wotan2005 sagte in Wie Blockly besser organisieren, schreibt mir Protokoll voll:

                                      Das Blockly wird dann aber trotzdem immer ausgeführt oder nur zu den Zeitplänen?

                                      Ein Script in ioB - egal ob JS oder Blockly (was ja unter der Haub auch nur JS generiert) wird grundsätzlich 1x gestartet und "läuft" dann bis zum Sanktnimmerleinstag.
                                      Das Ganze ist Ereignisgesteuert. Beim Start werden Ereignisse (Trigger) und Zeitpläne "registriert".
                                      Tritt nun ein Ereignis ein oder ist der Zeitpunkt des Zeitplans gekommen, wird der dort hinterlegte Code ausgeführt. Ansonsten "schläft" das Script und wartet.

                                      1 Reply Last reply Reply Quote 2
                                      • W
                                        wotan2005 last edited by

                                        @paul53
                                        ich weiß du hast dir viel Zeit genommen um mich durch meine Blockly-Probleme durch zuleiten und mir gute Vorlagen geliefert.

                                        Ich habe das dann jetzt mal so umgesetzt (ganzes Blockly):
                                        Blockly-0.png

                                        und die einzelnen Teile:
                                        Blockly-1.png
                                        Blockly-2.png
                                        Blockly-3.png
                                        Blockly-4.png

                                        Kannst du da bitte mal drüber schauen nach Logikfehlern, danke dir @paul53

                                        paul53 1 Reply Last reply Reply Quote 0
                                        • paul53
                                          paul53 @wotan2005 last edited by paul53

                                          @wotan2005 sagte: Logikfehlern

                                          Die Pumpe darf nur im Trigger für die beiden Ventile geschaltet werden.
                                          Der Vergleich für "Ventil 00 aus" ist falsch herum.
                                          In einem Skript nur einen Trigger pro Datenpunkt ("Spannung 100") verwenden (Ressourcen).

                                          Blockly_temp.JPG

                                          Der kurze Timeout dient dazu, dass um 6:15 Uhr die Pumpe nicht kurz aus- und gleich wieder einschaltet.

                                          1 Reply Last reply Reply Quote 1
                                          • W
                                            wotan2005 last edited by

                                            @paul53
                                            in deinem Zeitplan setzt du einmal bewaessern01 auf wahr.
                                            und im zweiten Zeitplan gleich aus false.
                                            Sollte das nicht erst auf false gesetzt werden, wenn das letzte Ventil geschlossen wird?

                                            paul53 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            872
                                            Online

                                            32.0k
                                            Users

                                            80.4k
                                            Topics

                                            1.3m
                                            Posts

                                            5
                                            62
                                            193
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo