Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Blockly bildet Schleife

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Blockly bildet Schleife

    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      saeft_2003 Most Active last edited by

      Hallo,

      Es kommt 1-2 mal im Jahr vor das dieses Blockly eine Schleife bildet und alle Millisekunden von false auf true schaltet und alles eskaliert.

      Diese Art von Blockly habe ich sehr oft und die Schleife passiert nur bei diesem. Der DP Licht Treppe wird von zwei Bewegungsmelder gesteuert die zufällig auch fast zeitgleich auslösen könnten. Kann es dadurch die besagte Schleife geben, bzw. kann ich das irgendwie komplett verhindern?

      879C32A3-3FD2-4D5F-8152-6146BAE50EE6.jpeg

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

        @saeft_2003
        Du könntest noch den "Ursprung" auswerten, damit das Script sich nicht selbst triggert.

        MartinP S paul53 3 Replies Last reply Reply Quote 0
        • MartinP
          MartinP @Codierknecht last edited by

          @codierknecht Macht es eigentlich einen Unterschied, ob man die beiden Trigger-Blöcke aneinander dockt, oder sie separat hält?

          haus-automatisierung 1 Reply Last reply Reply Quote 0
          • haus-automatisierung
            haus-automatisierung Developer Most Active @MartinP last edited by

            @martinp Nein. Guck doch einfach den generierten Code an 🙂

            MartinP 1 Reply Last reply Reply Quote 0
            • MartinP
              MartinP @haus-automatisierung last edited by MartinP

              @haus-automatisierung said in Blockly bildet Schleife:

              @martinp Nein. Guck doch einfach den generierten Code an 🙂

              Da Brett vor meinem Kopf ist gerade auf meine Zehen gefallen - aua

              EDIT

              Die Reihenfolge der Funktionen ändert sich.
              Dockt man Trigger-Blöcke aneinander, werden die Javascript-Funktionen auch hintereinander gehängt.
              Bei freistehenden Blöcken wird wohl von oben nach unten das Blockly Board abgearbeitet und in Javascript umgewandelt...

              Codierknecht 1 Reply Last reply Reply Quote 0
              • S
                saeft_2003 Most Active @Codierknecht last edited by

                @codierknecht sagte in Blockly bildet Schleife:

                @saeft_2003
                Du könntest noch den "Ursprung" auswerten, damit das Script sich nicht selbst triggert.

                Wie genau macht man das habe ich noch nie benutzt?

                MartinP 1 Reply Last reply Reply Quote 0
                • MartinP
                  MartinP @saeft_2003 last edited by MartinP

                  @saeft_2003
                  537491aa-3973-49e8-902a-94ef82c3cb46-grafik.png

                  EDIT IST QUATSCH, bitte warten

                  So, habs gefunden

                  dd29e3de-25b7-4e40-a4ad-9021474fecd3-grafik.png

                  "Ursprung" kann man auch als Debug-Meldung schicken lassen, um herauszufinden, was da überhaupt an Varianten bei den verschiedenen Varianten der Auslösung der Trigger kommen ...

                  S 1 Reply Last reply Reply Quote 1
                  • S
                    saeft_2003 Most Active @MartinP last edited by

                    @martinp

                    Alles klar danke probiere ich aus.

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

                      @martinp sagte in Blockly bildet Schleife:

                      Die Reihenfolge der Funktionen ändert sich.
                      Dockt man Trigger-Blöcke aneinander, werden die Javascript-Funktionen auch hintereinander gehängt.
                      Bei freistehenden Blöcken wird wohl von oben nach unten das Blockly Board abgearbeitet und in Javascript umgewandelt...

                      Was aber völlig unerheblich ist.

                      MartinP 1 Reply Last reply Reply Quote 0
                      • MartinP
                        MartinP @Codierknecht last edited by

                        @codierknecht Könnte etwas an der Reihenfolge ändern, in der z.B. Trigger abgearbeitet werden... Weiß aber nicht, wie da die internen Strukturen aufgebaut sind, die die on(...) Funktionen verwalten...

                        Wenn zwei Funktionen auf das gleiche Ereignis warten, wird die weiter unten im Quellcode stehende Funktion aufgrund der Position im Quellcode erst nach der weiter oben stehenden Funktion bedient?

                        haus-automatisierung 1 Reply Last reply Reply Quote 0
                        • haus-automatisierung
                          haus-automatisierung Developer Most Active @MartinP last edited by

                          @martinp sagte in Blockly bildet Schleife:

                          Wenn zwei Funktionen auf das gleiche Ereignis warten, wird die weiter unten im Quellcode stehende Funktion aufgrund der Position im Quellcode erst nach der weiter oben stehenden Funktion bedient?

                          Wenn die Reihenfolge wichtig ist, dann gehört die Logik in den gleichen Trigger.

                          MartinP 1 Reply Last reply Reply Quote 1
                          • MartinP
                            MartinP @haus-automatisierung last edited by

                            @haus-automatisierung Das sowieso - aber ich könnte mir auch bei dem ersten Beispiel oben aus dem Thread vorstellen, dass eine Vertauschung der beiden Blöcke sich irgendwie auswirken könnte ....

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

                              @codierknecht sagte: Du könntest noch den "Ursprung" auswerten, damit das Script sich nicht selbst triggert.

                              ... oder den Skriptnamen.

                              Blockly_temp.JPG

                              Dann können andere Skripte noch ein Licht steuern und beide Lichter schalten gleich.

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

                                @martinp
                                Die beiden Trigger im Eröffnungsthread befeuern sich gegenseitig.
                                Das sieht nach 'ner wunderbaren Endlosschleife aus.

                                Wird "Licht Treppe" geändert, reagiert der Trigger und setzt einen Wert des Schaltaktors.
                                Der Aktor hat aber einen eigenen Trigger, der dann wiederum "Licht Treppe" schaltet.
                                So beginnt der Spaß gleich wieder von vorne.

                                In welcher Reihenfolge die beiden Trigger definiert werden, ist dabei völlig Wumpe.

                                @saeft_2003
                                Nimm mal das Beispiel von @paul53. Damit sollte dann Ruhe sein.

                                1 Reply Last reply Reply Quote 0
                                • S
                                  saeft_2003 Most Active last edited by

                                  Alles klar ich probiere es aus danke für eure Hilfe...

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

                                  Support us

                                  ioBroker
                                  Community Adapters
                                  Donate

                                  787
                                  Online

                                  32.0k
                                  Users

                                  80.4k
                                  Topics

                                  1.3m
                                  Posts

                                  5
                                  15
                                  427
                                  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