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-Programm startet nicht

    NEWS

    • [erledigt] 15. 05. Wartungsarbeiten am ioBroker Forum

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Blockly-Programm startet nicht

    This topic has been deleted. Only users with topic management privileges can see it.
    • T
      TripleX @paul53 last edited by

      @paul53 Ah...ok.
      Danke schonmal für die ganze Arbeit und die Unterstützung.
      Werde jetzt mal versuchen auf Basis deines Programms ein neues zu erstellen.
      Eins muss ich jetzt aber nochmal fragen...
      Wenn ich eine Schleife programmieren möchte, die so lange läuft bis sagen wir mal Wert A größer ist Als Wert B, welche der Objekt-ID-Blöcke muss ich dann verwenden?

      Wäre das so richtig?

      dad34448-dfec-4af7-bad6-f4a346c1f510-image.png

      Oder müsste ich den Block verwenden?

      858938ca-c4fc-49da-8208-ac4ff2fe8e79-image.png

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

        @triplex sagte: Schleife programmieren möchte, die so lange läuft bis sagen wir mal Wert A größer ist Als Wert B,

        Man kann eine Schleife "wiederhole bis" nicht auf die Prüfung von Datenpunkten anwenden, sondern man benötigt eine schnelle Abbruch-Bedingung. So entsteht eine Endlosschleife.
        Alternative: Innerhalb der Schleife "Pause" anstelle von "Timeout" oder "Intervall" verwenden.

        @triplex sagte in Blockly-Programm startet nicht:

        Oder müsste ich den Block verwenden?

        Das ist egal, sofern der ID-Selektor verwendet wird.

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

          @paul53 said in Blockly-Programm startet nicht:

          @triplex sagte: Schleife programmieren möchte, die so lange läuft bis sagen wir mal Wert A größer ist Als Wert B,

          Man kann eine Schleife "wiederhole bis" nicht auf die Prüfung von Datenpunkten anwenden, sondern man benötigt eine schnelle Abbruch-Bedingung. So entsteht eine Endlosschleife.
          Alternative: Innerhalb der Schleife "Pause" anstelle von "Timeout" oder "Intervall".

          @triplex sagte in Blockly-Programm startet nicht:

          Oder müsste ich den Block verwenden?

          Das ist egal, sofern der ID-Selektor verwendet wird.

          Ok...bin erst seit ein paar Tagen mit Blockly dran und steige an manchen Stellen noch nicht so ganz dahinter.
          Gibt es evtl. irgendwo ein Doku oder so, wo die Blöcke und deren Funktion etc. erläutert werden?

          Glasfaser paul53 2 Replies Last reply Reply Quote 0
          • Glasfaser
            Glasfaser @TripleX last edited by

            @triplex sagte in Blockly-Programm startet nicht:

            Gibt es evtl. irgendwo ein Doku oder so,

            Empfehlung ... siehe Signatur @haus-automatisierung

            T 1 Reply Last reply Reply Quote 0
            • T
              TripleX @Glasfaser last edited by

              @glasfaser said in Blockly-Programm startet nicht:

              @triplex sagte in Blockly-Programm startet nicht:

              Gibt es evtl. irgendwo ein Doku oder so,

              Empfehlung ... siehe Signatur @haus-automatisierung

              Den hatte ich auch schon ins Auge gefasst.
              War mir aber unsicher ob das Sinn macht den jetzt zu bestellen, da wohl gerade ein neuer in Arbeit ist.
              Oder weißt du ob man dann auf die Updates auch Zugriff hat wenn ich jetzt schon bestelle?

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

                @triplex sagte: wo die Blöcke und deren Funktion etc. erläutert werden?

                Unter anderem hier und hier.

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

                  @triplex sagte: Die Werte sind ins negative gelaufen

                  Dann sind offenbar die 200 ms zu kurz oder "ACTUAL" wird nach "ACTIVITY_STATE" aktualisiert.

                  EDIT: Die Reihenfolge der Aktualisierung spielt keine Rolle, wenn man nur einen Trigger verwendet:

                  Blockly_temp.JPG

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

                    @paul53 said in Blockly-Programm startet nicht:

                    @triplex sagte: Die Werte sind ins negative gelaufen

                    Dann sind offenbar die 200 ms zu kurz oder "ACTUAL" wird nach "ACTIVITY_STATE" aktualisiert.

                    EDIT: Die Reihenfolge der Aktualisierung spielt keine Rolle, wenn man nur einen Trigger verwendet:

                    Blockly_temp.JPG

                    Danke dir!
                    Werde es nachher mal nachbauen.

                    Das mit dem "Falls nicht Intervall" habe ich ja jetzt verstanden, aber was fragst du mit dem "Delta und" jetzt noch zusätzlich ab?

                    54b0990a-959d-43fc-9421-5b6bbbaab865-image.png

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

                      @triplex sagte: aber was fragst du mit dem "Delta und" jetzt noch zusätzlich ab?

                      Ich habe delta am Anfang auf 0 gesetzt. Wenn der Wert von "ACTIVITY_STATE" kein Delta von -1 oder 1 ergibt, wird das Intervall nicht ausgeführt. Die implizite Typwandlung von "falls" interpretiert eine 0 wie false.

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

                        @paul53 said in Blockly-Programm startet nicht:

                        @triplex sagte: aber was fragst du mit dem "Delta und" jetzt noch zusätzlich ab?

                        Ich habe delta am Anfang auf 0 gesetzt. Wenn der Wert von "ACTIVITY_STATE" kein Delta von -1 oder 1 ergibt, wird das Intervall nicht ausgeführt. Die implizite Typwandlung von "falls" interpretiert eine 0 wie false.

                        Muss ich hier die Objekt ID in dem Block auswählen oder muss ich das wirklich 1zu1 so aufbauen?

                        4b6a8260-9e2a-42ce-878a-52196ca98363-image.png

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

                          @triplex sagte: Muss ich hier die Objekt ID in dem Block auswählen

                          Ja. Ich habe einen Kommentar gewählt, da ich diesen Datenpunkt nicht habe.

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

                            @paul53 said in Blockly-Programm startet nicht:

                            @triplex sagte: Muss ich hier die Objekt ID in dem Block auswählen

                            Ja. Ich habe einen Kommentar gewählt, da ich diesen Datenpunkt nicht habe.

                            Denke ich bin fast am Ziel.
                            Habe dein Programm noch was verändert.

                            e838dbdc-4635-4e5b-83f4-e325365cc619-image.png

                            Folgendes soll passieren...

                            • Rollade bewegt sich
                            • Aktuelle Position wird in "... - Bewegung Simulation" geschrieben
                              --> "... - Bewegung Simulation" steuert die Animation in meiner Vis
                            • Es wird überprüft ob die Rollade nach oben oder unten fährt
                            • Anschließend soll der Datenpunkt "... - Bewegung Simulation" solange erhöht oder verringert werden bis tatsächliche Position erreicht ist. Dafür habe ich das hier eingesetzt.

                            6dcd73f5-0702-4e8e-aab0-ab67f7f5b4a0-image.png

                            • Da die Rollade schneller fährt als der Datenpunkt verändert wird, soll die Animation noch bis zu tatsächlichen Position weiterlaufen auch wenn die Rollade schon längst steht.

                            Aktuell ist es noch so, dass die Animation nicht bis zum Ende fährt sondern beim Stoppen der Rollade ebenfalls stoppt.
                            Zudem "hämmert" die Animation im Widget den Behang immer wieder auf und zu.

                            Muss ich evtl. das hier das "delta" entfernen?

                            e2ccc6b9-22b8-4c3f-9740-a6c60fb61ca7-image.png

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

                              @triplex sagte: Da die Rollade schneller fährt als der Datenpunkt verändert wird

                              Dann ist das Intervall mit 1000 ms zu lang.

                              Wo wird das Intervall gestoppt?

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

                                @paul53 said in Blockly-Programm startet nicht:

                                @triplex sagte: Da die Rollade schneller fährt als der Datenpunkt verändert wird

                                Dann ist das Intervall mit 1000 ms zu lang.

                                Wo wird das Intervall gestoppt?

                                Dachte das würde durch die Begrenzung automatisch gestoppt wenn eine der Grenzen erreicht ist.

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

                                  @triplex sagte: Dachte das würde durch die Begrenzung automatisch gestoppt wenn eine der Grenzen erreicht ist.

                                  Nein, das Intervall muss per Stop-Intervall-Block gestoppt werden, da sonst die Sperre aktiv bleibt.

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

                                    @paul53 said in Blockly-Programm startet nicht:

                                    @triplex sagte: Dachte das würde durch die Begrenzung automatisch gestoppt wenn eine der Grenzen erreicht ist.

                                    Nein, das Intervall muss per Stop-Intervall-Block gestoppt werden, da sonst die Sperre aktiv bleibt.

                                    Ok...wo müsste ich denn den den Stopbefehl unterbringen, damit das Interval aufhört wenn die Simulation die richtige Position erreicht hat.
                                    Ich müsst ja abfragen ob der Wert "...-Bewegung Simulation" den Wert 0 oder 100 oder ACTUAL erreicht hat.
                                    Und wie frage ich die 3 Werte am besten ab?

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

                                      @triplex sagte: wo müsste ich denn den den Stopbefehl unterbringen

                                      Es sollte unter "falls Wert = 3" funktionieren, denn dann bewegt sich das Rollo nicht mehr. Das Intervall darf aber nicht zu lang sein.

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

                                        @paul53 said in Blockly-Programm startet nicht:

                                        @triplex sagte: wo müsste ich denn den den Stopbefehl unterbringen

                                        Es sollte unter "falls Wert = 3" funktionieren, denn dann bewegt sich das Rollo nicht mehr. Das Intervall darf aber nicht zu lang sein.

                                        Aber dann würde doch das Intervall zeitgleich mit der Bewegung der Rollade stoppen.
                                        Das Intervall soll aber noch bis zur gewünschten Position zu Ende laufen, nachdem die Rollade gestoppt hat.

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

                                          @triplex sagte in Blockly-Programm startet nicht:

                                          zeitgleich mit der Bewegung der Rollade stoppen.

                                          ist nicht

                                          @triplex sagte in Blockly-Programm startet nicht:

                                          nachdem die Rollade gestoppt hat.

                                          ??
                                          geht es dir um Millisekunden?

                                          T 1 Reply Last reply Reply Quote 0
                                          • T
                                            TripleX @Homoran last edited by

                                            @homoran said in Blockly-Programm startet nicht:

                                            @triplex sagte in Blockly-Programm startet nicht:

                                            zeitgleich mit der Bewegung der Rollade stoppen.

                                            ist nicht

                                            Wenn die Rollade stoppt, wird der Wert auf 3 gesetzt und wenn das die Bedingung ist für das Stoppen des Intervalls, dann wird doch der Datenpunkt "...- Bewegung Simulation" nicht mehr verändert.

                                            @triplex sagte in Blockly-Programm startet nicht:

                                            nachdem die Rollade gestoppt hat.

                                            ??
                                            geht es dir um Millisekunden?

                                            Nein.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            791
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            5
                                            72
                                            1818
                                            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