Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. 2 Shellys in abhängigkeit "schalten"

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    2 Shellys in abhängigkeit "schalten"

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

      Hallo zusammen, ich stethe gerade ein wenig auf den Schlauf und bräuchte mal einen Denkanstoß:
      Ich habe 2 Shelly mit je einem Taster und einem Verbraucher.
      Nun möchte ich, dass wenn an einem der Shellys der Zustand des Relays geändert wird, dies auch beim 2. mit (auf den gleichen Wert) geändert wird.
      Wenn ich den Trigger auf den Input (welcher ja das Relay schaltet) anwende, funktioniert dies auch, leider kann ich dann über die Weboberfläche des Shellys das Skript (den Trigger) nicht auslösen.
      Wenn ich jetzt den Triger direkt auf das Relay setzte, baue ich mir ja eine Schleife, da das Skript ja jeweils den Zustand des 2. Relays ändert und dies wieder den Trigger auslöst.
      Ich hoffe meine Angaben sind verständlich.

      d9b078df-22bf-4b46-b628-344d522d8b72-grafik.png

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

        @rolly82 sagte: Wenn ich jetzt den Triger direkt auf das Relay setzte, baue ich mir ja eine Schleife,

        Versuche es mal so:

        Bild_2022-12-30_145645650.png

        Anmerkung: Die "Objekt ID" ist eine Konstante.

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

          @paul53 Danke, werde ich gleich mal testen.
          was besagt der Eintrag "system.adapter.javascript.0" ?

          J paul53 2 Replies Last reply Reply Quote 0
          • J
            Jan1 @Rolly82 last edited by

            @rolly82
            Wenn Du einfach möchtest, das der eine immer tut was der andere vorgibt, dann brachst dafür nur ein Block und das ist dieser:
            fcd588ad-1bd3-40d1-8db0-75fe025dddc0-image.png

            Sollen beide Taster jeweils den anderen Shelly mit steuern, dann den Block einfach zweimal und die Objekte tauschen 😉

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

              @rolly82 sagte: was besagt der Eintrag "system.adapter.javascript.0" ?

              Wenn die Quelle der Wertänderung das Skript (die Javascript-Instanz) ist, wird kein "steuere" ausgeführt und somit die Trigger-Schleife verhindert.

              1 Reply Last reply Reply Quote 0
              • R
                Rolly82 last edited by

                @paul53 Danke für die Erklärung. Das Skript funktioniert nun so wie gewünscht 👍

                1 Reply Last reply Reply Quote 0
                • L
                  LxFFM @Jan1 last edited by LxFFM

                  @jan1 said in 2 Shellys in abhängigkeit "schalten":

                  @rolly82
                  Wenn Du einfach möchtest, das der eine immer tut was der andere vorgibt, dann brachst dafür nur ein Block und das ist dieser:
                  fcd588ad-1bd3-40d1-8db0-75fe025dddc0-image.png

                  Sollen beide Taster jeweils den anderen Shelly mit steuern, dann den Block einfach zweimal und die Objekte tauschen 😉

                  Läuft das nicht in eine Rekursion?

                  J paul53 2 Replies Last reply Reply Quote 0
                  • J
                    Jan1 @LxFFM last edited by Jan1

                    @lxffm sagte in 2 Shellys in abhängigkeit "schalten":

                    Rekursion

                    Nein, warum auch?
                    Nicht mal wenn Du das ein zweites mal mit getauschten Objekten einfügst.

                    W L 2 Replies Last reply Reply Quote 0
                    • W
                      Wildbill @Jan1 last edited by

                      @jan1 sagte in 2 Shellys in abhängigkeit "schalten":

                      @lxffm sagte in 2 Shellys in abhängigkeit "schalten":

                      Rekursion

                      Nein, warum auch?
                      Nicht mal wenn Du das ein zweites mal mit getauschten Objekten einfügst.

                      Ist bei einem „binde Objekt“ nicht automatisch die Bindung in beiden Richtungen drin? Ich meine, mich an sowas erinnern zu können…

                      Gruss, Jürgen

                      L 1 Reply Last reply Reply Quote 0
                      • L
                        LxFFM @Jan1 last edited by

                        @jan1 said in 2 Shellys in abhängigkeit "schalten":

                        @lxffm sagte in 2 Shellys in abhängigkeit "schalten":

                        Rekursion

                        Nein, warum auch?
                        Nicht mal wenn Du das ein zweites mal mit getauschten Objekten einfügst.

                        Naja ich dachte, es müsste ja quasi durchweg aufeinander triggern weil ja ständig ein Objekt das andere angleicht und vice versa. In Excel würde man Zirkelbezug sagen.

                        1 Reply Last reply Reply Quote 0
                        • L
                          LxFFM @Wildbill last edited by

                          @wildbill said in 2 Shellys in abhängigkeit "schalten":

                          @jan1 sagte in 2 Shellys in abhängigkeit "schalten":

                          @lxffm sagte in 2 Shellys in abhängigkeit "schalten":

                          Rekursion

                          Nein, warum auch?
                          Nicht mal wenn Du das ein zweites mal mit getauschten Objekten einfügst.

                          Ist bei einem „binde Objekt“ nicht automatisch die Bindung in beiden Richtungen drin? Ich meine, mich an sowas erinnern zu können…

                          Gruss, Jürgen

                          Habe es gerade ausprobiert. Bind ist immer nur Quelle => Ziel. Zwei binds untereinander funktionieren. Ich bilde mir ein das es den cpu load iobroker.js-con hochtreibt das muss ich aber nochmal beobachten.

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

                            @lxffm sagte: Läuft das nicht in eine Rekursion?

                            Da nur auf Änderungen getriggert wird, sollte es nicht passieren. Durch Laufzeiteffekte kann es trotzdem manchmal passieren, dass es in ein Trigger-Endlosschleife läuft.

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

                              @paul53 said in 2 Shellys in abhängigkeit "schalten":

                              @lxffm sagte: Läuft das nicht in eine Rekursion?

                              Da nur auf Änderungen getriggert wird, sollte es nicht passieren. Durch Laufzeiteffekte kann es trotzdem manchmal passieren, dass es in ein Trigger-Endlosschleife läuft.

                              Die Frage bezog sich auf ein doppel-bind. Da gibt es ja keinen Trigger. Die beiden Blöcke kannst du ja zum binden einfach in ein Script packen. Da gibt es quasi keinen Trigger, bzw. man kann den internen Trigger nicht kontrollieren.

                              Er reagiert allerdings nur auf changed das habe ich getestet.

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

                                @lxffm sagte: Da gibt es ja keinen Trigger.

                                Die Blöcke "bind" enthalten einen Trigger:

                                on({id: 'Object ID 1', change: "ne"}, function (obj) {
                                  setState('Object ID 2', obj.state.val);
                                });
                                

                                @lxffm sagte in 2 Shellys in abhängigkeit "schalten":

                                doppel-bind.

                                Wenn bei beiden Blöcken der Haken bei "nur Änderungen" entfernt wird, entsteht mit Sicherheit eine Trigger-Endlosschleife.

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

                                  @paul53
                                  Ich hatte das lange mit und ohne Haken für ne Wechselschaltung im Einsatz, nie Probleme.
                                  Mit Haken ist es von der Logik, aber sicherer.

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

                                  Support us

                                  ioBroker
                                  Community Adapters
                                  Donate

                                  883
                                  Online

                                  32.0k
                                  Users

                                  80.5k
                                  Topics

                                  1.3m
                                  Posts

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