Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Anfängerfrage: Mehrere Objekte zusammenfassen

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Anfängerfrage: Mehrere Objekte zusammenfassen

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

      Hallo,

      bin gerade vor dem Problem mehrere Feuermelder (4) zusammen zu fassen, falls einer auslöst soll eine Sirene geschaltet werden.

      Aber ich kann ja nur einmal angeben "Falls Objekt geändert u.s.w dann mache dies oder dass"
      Muss ich für jedes Objekt dann einen Block machen, oder geht das auch einfacher? 🙄

      Danke schon mal

      viele Grüße

      OliverIO mickym 2 Replies Last reply Reply Quote 0
      • OliverIO
        OliverIO @zariomahn last edited by

        @zariomahn
        wenn du auf das kleine zahnrädchen im event-Block klickst
        kannst du weitere objectid-blöcke hinzufügen

        Z 1 Reply Last reply Reply Quote 0
        • mickym
          mickym Most Active @zariomahn last edited by

          @zariomahn Bei ähnlichen Strukturen kannst auch mit Wildcards arbeiten

          1 Reply Last reply Reply Quote 0
          • Z
            zariomahn @OliverIO last edited by

            @oliverio
            Da hätte ich auch darauf kommen können 🤦

            Ich habe es jetzt so gemacht, funktioniert, aber ob es richtig ist.... keine Ahnung 🙄

            Bildschirmfoto 2023-08-29 um 08.34.38.png

            N paul53 2 Replies Last reply Reply Quote 0
            • N
              Nordischerjung @zariomahn last edited by

              @zariomahn Nicht ganz, du musst die Sirene auch wieder ausschalten

              b930d89b-8b43-420a-9c69-94ba4740c424-image.png

              G 1 Reply Last reply Reply Quote 0
              • G
                guergen @Nordischerjung last edited by

                @nordischerjung Die oder-Nummer kannst Du lassen, die Objekte sind oben schon so verknüpft:
                e2a777af-fd31-46ea-970f-70057abf2455-grafik.png

                Schmakus N 2 Replies Last reply Reply Quote 0
                • Schmakus
                  Schmakus Developer @guergen last edited by

                  @guergen sagte in Anfängerfrage: Mehrere Objekte zusammenfassen:

                  @nordischerjung Die oder-Nummer kannst Du lassen, die Objekte sind oben schon so verknüpft:
                  e2a777af-fd31-46ea-970f-70057abf2455-grafik.png

                  Bedingt! Je nach Anwendungsfall! Wenn man alle Objekte nochmals per ODER verknüpft, bleibt die Sirene solange an, bis der letzte Melder false liefert.
                  Wenn man es nicht tut, schaltet die Sirene ab, sobald einer der 3 Melder auf false wechselt.

                  1 Reply Last reply Reply Quote 2
                  • N
                    Nordischerjung @guergen last edited by

                    @guergen Aber wird nicht der aktuell Wert vom Trigger auslösenden DP dort im "Wert" geschreiben? Es wird doch nicht im Triggerblock auf alle gleichzeittig geachtet, oder doch?

                    DP 1 auf True = Wert ist True
                    DP2 auf False = Wert ist False und da ist es egla ob DP1 True oder False ist.

                    Homoran 1 Reply Last reply Reply Quote 0
                    • Homoran
                      Homoran Global Moderator Administrators @Nordischerjung last edited by Homoran

                      @nordischerjung sagte in Anfängerfrage: Mehrere Objekte zusammenfassen:

                      oder doch?

                      !

                      und WERT gibt den gerade triggernden Wert aus

                      N 1 Reply Last reply Reply Quote 1
                      • N
                        Nordischerjung @Homoran last edited by

                        @homoran Ja, ist falsch von mir geschrieben. Natürlich wird auf alle DPs gleichzeitig geachtet, nur nicht in einer Verknüpfung.

                        Homoran 1 Reply Last reply Reply Quote 0
                        • Homoran
                          Homoran Global Moderator Administrators @Nordischerjung last edited by

                          @nordischerjung sagte in Anfängerfrage: Mehrere Objekte zusammenfassen:

                          nur nicht in einer Verknüpfung.

                          jetzt hast du mich ganz abgehängt.
                          Natürlich sind die Triggernden Objekte in einer ODER-Verknüpfung zu sehen.
                          Sonst hättest du ja recht, dass es nicht geht.
                          es mus nur a ODER b ODER c triggern

                          M 1 Reply Last reply Reply Quote 0
                          • M
                            Matthes @Homoran last edited by

                            Das geht auch mit einer Aufzählung. Hat den Vorteil, daß neue Objekte (hier Rauchmelder) der Aufzählung mit dem DP zugeordnet werden - fertig. Das Script hat ohne Veränderung/Anpassung sofort alle Rauchmelder enthalten und läuft.
                            Aufzählungen sind recht mächtig z. B. auch für Licht, Heizung, Rollläden usw.

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

                              @zariomahn sagte: funktioniert, aber ob es richtig ist....

                              Wenn die Sirene bei Rauch nur eingeschaltet werden soll, genügt es so (gleiches Ergebnis wie dein Skript):

                              Blockly_temp.JPG

                              Soll die Sirene ausgeschaltet werden, wenn kein Rauchmelder mehr aktiv ist, benötigt man die Oder-Verknüpfung der Werte.

                              Blockly_temp.JPG

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

                                @paul53
                                Danke (wieder mal) 😳 hätte die Sirene laufen lassen bis ich sie manuell beendet hätte 😀

                                werde aber das zweite Skript auch mal testen..

                                vielen dank an alle

                                viele Grüße

                                1 Reply Last reply Reply Quote 0
                                • rtwl
                                  rtwl last edited by

                                  Meine Frage passt hier ganz gut rein, daher eröffne ich keinen eigenen Thread. Hoffe das passt so.

                                  Ziel dieses Blockly:
                                  Wenn einer der 4 Datenpunkte false wird, soll "Geräte_online" auf false gesetzt werden. Ansonsten soll er auf true bleiben.

                                  Funktioniert das so?
                                  432aa288-033a-424d-b82d-a0e4275b8b5a-image.png

                                  Kann mir zusätzlich vielleicht jemand helfen/zeigen wie man das ganze mit den "Aufzählungen" machen kann? - Ich arbeite viel zu selten mit Aufzählungen, weil ich es noch nicht verstanden habe wie man diese in Blockly korrekt einsetzen kann.

                                  e33165c6-4ef7-4f8c-b5b1-c803b682e0c0-image.png

                                  mickym 1 Reply Last reply Reply Quote 0
                                  • mickym
                                    mickym Most Active @rtwl last edited by mickym

                                    @rtwl Du kannst es mal so versuchen:

                                    da8a176a-0aaa-43fd-ba2e-827e61639cd0-image.png

                                    <xml xmlns="https://developers.google.com/blockly/xml">
                                     <variables>
                                       <variable id="DH{$|-#4OY{OCwet=fKJ">geraete</variable>
                                       <variable id="umWd`8}ddzQ?s_9F84`S">online</variable>
                                       <variable id="FZa??o;NlVXFQ1TLr#3f">geraet</variable>
                                     </variables>
                                     <block type="variables_set" id="@(-[oCBK[8,p|lF*P*w=" x="87" y="63">
                                       <field name="VAR" id="DH{$|-#4OY{OCwet=fKJ">geraete</field>
                                       <value name="VALUE">
                                         <block type="selector" id="j:Kh!8NK[4M9.c+Z`|/|">
                                           <field name="TEXT">(functions=geraete)</field>
                                         </block>
                                       </value>
                                       <next>
                                         <block type="on_ext" id="Xt34KX2#vyU~y@~fUZzm">
                                           <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                           <field name="CONDITION">ne</field>
                                           <field name="ACK_CONDITION"></field>
                                           <value name="OID0">
                                             <shadow type="field_oid" id=".oc)mPVVjmlO6~]]c^:+">
                                               <field name="oid">default</field>
                                             </shadow>
                                             <block type="selector" id="/7Xw:%#1MEh]`|0FCgi_">
                                               <field name="TEXT">(functions=geraete)</field>
                                             </block>
                                           </value>
                                           <statement name="STATEMENT">
                                             <block type="variables_set" id="CyRc|PLuaO+QKfXRB%?p">
                                               <field name="VAR" id="umWd`8}ddzQ?s_9F84`S">online</field>
                                               <value name="VALUE">
                                                 <block type="logic_boolean" id="TD`=adt_^o4ZY@96|P]h">
                                                   <field name="BOOL">TRUE</field>
                                                 </block>
                                               </value>
                                               <next>
                                                 <block type="controls_forEach" id="f4,C6Cr[RtyA6yK:Ik3R">
                                                   <field name="VAR" id="FZa??o;NlVXFQ1TLr#3f">geraet</field>
                                                   <value name="LIST">
                                                     <block type="variables_get" id=".4fYw*3;wHTHr5Eg}lT9">
                                                       <field name="VAR" id="DH{$|-#4OY{OCwet=fKJ">geraete</field>
                                                     </block>
                                                   </value>
                                                   <statement name="DO">
                                                     <block type="controls_if" id="qeQcagLF9NZdu$AS5e{N">
                                                       <value name="IF0">
                                                         <block type="logic_negate" id="O1z8%Gsd|I;5#lkwPLBw">
                                                           <value name="BOOL">
                                                             <block type="get_value_var" id="3g/$_dMS@F0c3g@ssM}9">
                                                               <field name="ATTR">val</field>
                                                               <value name="OID">
                                                                 <shadow type="field_oid" id="MRhSB*q3:OIlr0W=AKYV">
                                                                   <field name="oid">Object ID</field>
                                                                 </shadow>
                                                                 <block type="variables_get" id="M^!m=1--JIYEbUn,y#jM">
                                                                   <field name="VAR" id="FZa??o;NlVXFQ1TLr#3f">geraet</field>
                                                                 </block>
                                                               </value>
                                                             </block>
                                                           </value>
                                                         </block>
                                                       </value>
                                                       <statement name="DO0">
                                                         <block type="variables_set" id="rAE6Dn;)nm@kl|}%~*~*">
                                                           <field name="VAR" id="umWd`8}ddzQ?s_9F84`S">online</field>
                                                           <value name="VALUE">
                                                             <block type="logic_boolean" id="~l3W(5bSQoNz.DrBZgIV">
                                                               <field name="BOOL">FALSE</field>
                                                             </block>
                                                           </value>
                                                         </block>
                                                       </statement>
                                                     </block>
                                                   </statement>
                                                 </block>
                                               </next>
                                             </block>
                                           </statement>
                                         </block>
                                       </next>
                                     </block>
                                    </xml>
                                    

                                    1 Reply Last reply Reply Quote 0
                                    • rtwl
                                      rtwl last edited by

                                      Danke @mickym
                                      Ich hab es mal nachgebaut - ist es korrekt, dass geraet sowie geraete (Einzahl/Mehrzahl) verwendet wird?

                                      mickym 1 Reply Last reply Reply Quote 0
                                      • mickym
                                        mickym Most Active @rtwl last edited by mickym

                                        @rtwl Ja geraete sollte eine Liste mit allen Geräten aus der Aufzählung enthalten und geraet ist das einzelne Gerät. Kannst ja prüfen, wenn Du eine Debugausgabe der Variable geraete machst.

                                        rtwl 1 Reply Last reply Reply Quote 1
                                        • rtwl
                                          rtwl @mickym last edited by

                                          @mickym ach so - logisch.
                                          unter dem Schleifen Block kommt dann der "Steuere" Block, korrekt?
                                          0406f48e-b2f4-4cb7-beb1-713b1f65e22f-image.png

                                          mickym 2 Replies Last reply Reply Quote 0
                                          • mickym
                                            mickym Most Active @rtwl last edited by mickym

                                            @rtwl Na ganz ausserhalb der Schleife schreibst Du Deine Variable online wohin Du willst.

                                            2f9e6234-22bf-44f2-b2ff-400b0d6a9c99-image.png

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            828
                                            Online

                                            31.6k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

                                            10
                                            26
                                            1265
                                            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