Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Wenn 2 Datenpunkte true dann setze Datenpunkt auf true

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Wenn 2 Datenpunkte true dann setze Datenpunkt auf true

    This topic has been deleted. Only users with topic management privileges can see it.
    • Codierknecht
      Codierknecht Developer Most Active @Dr.Pie last edited by Codierknecht

      @dr-pie sagte in Wenn 2 Datenpunkte true dann setze Datenpunkt auf true:

      Es ist ziemlich schwierig das zu beschreiben

      Ist das schwierig zu beschreiben oder traust Du Dich nicht?
      Keine Sorge - wir haben hier schon die beklopptesten Ideen gehört.

      Und nur falls das mit der bool'schen Algebra noch nicht so ganz verstanden wurde:
      true UND true ergibt true
      true UND false ergibt false
      false UND true ergibt false

      Wenn der DP3 mit dem Ergebnis von DP1 UND DP2 beschrieben wird, erhält er das Ergebnis dieser bool'schen Berechnung ... also entweder true oder false.

      https://de.wikipedia.org/wiki/Boolesche_Algebra

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

        @codierknecht ach was!?

        normale boolsche Matrix!
        as I told

        @homoran sagte in Wenn 2 Datenpunkte true dann setze Datenpunkt auf true:

        was kann nicht funktionieren?
        die boolsche Mathematik klappt

        1 Reply Last reply Reply Quote 0
        • paul53
          paul53 @Dr.Pie last edited by

          @dr-pie sagte: der DP3 müsste einen dritten Zustand bekommen können.

          Dann kann er z.B. vom Typ "Zahl" sein und 3 Werte erhalten:

          • beide false: 0
          • einer true: 1
          • beide true: 2

          Blockly_temp.JPG

          Dr.Pie 1 Reply Last reply Reply Quote 0
          • Dr.Pie
            Dr.Pie @paul53 last edited by

            @paul53 Ich will euch meine Anstrengungen nicht vorenthalten.

            garage.png
            Damit schreibe ich den Zustand in einen Datenpunkt, mit dem ich dann weiter arbeiten kann.

            Und hier ist das was ich mit dem Datenpunkt mache:
            garage1.png

            Grüße

            paul53 1 Reply Last reply Reply Quote 0
            • paul53
              paul53 @Dr.Pie last edited by

              @dr-pie sagte: meine Anstrengungen nicht vorenthalten.

              Was für ein Ressourcenverbrauch:

              • 4 Trigger
              • 11 mal Wert holen
              • 8 mal Wert schreiben

              Sparsame Version:

              Blockly_temp.JPG

              Dr.Pie 1 Reply Last reply Reply Quote 1
              • Dr.Pie
                Dr.Pie @paul53 last edited by

                @paul53 magst du mir das Blockly zur Verfügung stellen ?

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

                  @dr-pie wo liegt denn das Problem beim Nachbau?
                  So etwas übt!

                  zwei Variablen anlegen, der Rest ist out of the Box.

                  Dr.Pie 1 Reply Last reply Reply Quote 0
                  • Dr.Pie
                    Dr.Pie @Homoran last edited by

                    @homoran ja das dachte ich mir schon ... schade

                    Homoran 1 Reply Last reply Reply Quote 0
                    • paul53
                      paul53 @Dr.Pie last edited by paul53

                      @dr-pie sagte: das Blockly zur Verfügung stellen ?

                      <xml xmlns="https://developers.google.com/blockly/xml">
                       <variables>
                         <variable id="2M5w5y%d}Ir82Iorfz^N">preset</variable>
                         <variable id="g$)ffp|}W6r%PP]CYAVg">garagentor</variable>
                       </variables>
                       <block type="on_ext" id="5/(#h!^]|%;=XV~6q1Kt" x="62" y="37">
                         <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
                         <field name="CONDITION">ne</field>
                         <field name="ACK_CONDITION"></field>
                         <value name="OID0">
                           <shadow type="field_oid" id="E(PUF,(~^qtC=3Rso(#x">
                             <field name="oid">0_userdata.0.Blockly.Switch1</field>
                           </shadow>
                         </value>
                         <value name="OID1">
                           <shadow type="field_oid" id="j0kv=1PT!,k]Vz=}+AqE">
                             <field name="oid">0_userdata.0.Blockly.Switch2</field>
                           </shadow>
                         </value>
                         <statement name="STATEMENT">
                           <block type="variables_set" id="Uv{nC#_HKrGrgM]eIiS,">
                             <field name="VAR" id="2M5w5y%d}Ir82Iorfz^N">preset</field>
                             <value name="VALUE">
                               <block type="math_arithmetic" id="92uqn+RV)aSt[-)!F1GQ" inline="false">
                                 <field name="OP">ADD</field>
                                 <value name="A">
                                   <shadow type="math_number" id="{vLV7mo`x;s2xKXoSN`m">
                                     <field name="NUM">1</field>
                                   </shadow>
                                   <block type="logic_ternary" id="fPbvy[osYHG(d@4)h7#6" inline="true">
                                     <value name="IF">
                                       <block type="get_value" id="_0Tjyq_Is3TdzyjG$dnM">
                                         <field name="ATTR">val</field>
                                         <field name="OID">0_userdata.0.Blockly.Switch1</field>
                                       </block>
                                     </value>
                                     <value name="THEN">
                                       <block type="math_number" id="T22mGR]pZh5M!Nm-zLs[">
                                         <field name="NUM">1</field>
                                       </block>
                                     </value>
                                     <value name="ELSE">
                                       <block type="math_number" id="4t0/ZlzVk}pSxLrbtS0}">
                                         <field name="NUM">0</field>
                                       </block>
                                     </value>
                                   </block>
                                 </value>
                                 <value name="B">
                                   <shadow type="math_number" id="84d(P}zQ:l9f,me1H7er">
                                     <field name="NUM">1</field>
                                   </shadow>
                                   <block type="logic_ternary" id="6#?-_Gg9vVRQh0RUrMU0" inline="true">
                                     <value name="IF">
                                       <block type="get_value" id="^uJxxIlW%zk.)baR@EL~">
                                         <field name="ATTR">val</field>
                                         <field name="OID">0_userdata.0.Blockly.Switch2</field>
                                       </block>
                                     </value>
                                     <value name="THEN">
                                       <block type="math_number" id="`d_{x#Jo#5M1u6P](_R8">
                                         <field name="NUM">1</field>
                                       </block>
                                     </value>
                                     <value name="ELSE">
                                       <block type="math_number" id="mrlG%O!R|iK@u}xaPOa7">
                                         <field name="NUM">0</field>
                                       </block>
                                     </value>
                                   </block>
                                 </value>
                               </block>
                             </value>
                             <next>
                               <block type="controls_if" id="3;X[z|`umBETA:eK}c(m">
                                 <mutation elseif="1" else="1"></mutation>
                                 <value name="IF0">
                                   <block type="logic_compare" id="Zlp.Eur5bE.^qc26dz|n">
                                     <field name="OP">EQ</field>
                                     <value name="A">
                                       <block type="variables_get" id="%4ZK5bv/nr?WpazN+KTJ">
                                         <field name="VAR" id="2M5w5y%d}Ir82Iorfz^N">preset</field>
                                       </block>
                                     </value>
                                     <value name="B">
                                       <block type="math_number" id="TL!E.`(zwutuWstr0uh~">
                                         <field name="NUM">2</field>
                                       </block>
                                     </value>
                                   </block>
                                 </value>
                                 <statement name="DO0">
                                   <block type="variables_set" id="]aJOghV5qcv];r+lvINK">
                                     <field name="VAR" id="g$)ffp|}W6r%PP]CYAVg">garagentor</field>
                                     <value name="VALUE">
                                       <block type="text" id="Y^)}dwnZ!d2S,MQJ2L~/">
                                         <field name="TEXT">offen</field>
                                       </block>
                                     </value>
                                   </block>
                                 </statement>
                                 <value name="IF1">
                                   <block type="logic_compare" id="6?nkO=w=8!+A!YW*Ts+l">
                                     <field name="OP">EQ</field>
                                     <value name="A">
                                       <block type="variables_get" id="i(~[d|,N(wbk}1tu1WO%">
                                         <field name="VAR" id="2M5w5y%d}Ir82Iorfz^N">preset</field>
                                       </block>
                                     </value>
                                     <value name="B">
                                       <block type="math_number" id="/wk=b(.RcpSq9}AmWYYJ">
                                         <field name="NUM">1</field>
                                       </block>
                                     </value>
                                   </block>
                                 </value>
                                 <statement name="DO1">
                                   <block type="variables_set" id="g]@`|-Ijs:LA8@D-Y0k=">
                                     <field name="VAR" id="g$)ffp|}W6r%PP]CYAVg">garagentor</field>
                                     <value name="VALUE">
                                       <block type="text" id="QUSV1WXL0M|nl.jLi9Gb">
                                         <field name="TEXT">fahren</field>
                                       </block>
                                     </value>
                                   </block>
                                 </statement>
                                 <statement name="ELSE">
                                   <block type="variables_set" id="D3f@-|xy@^{4HYm^RU^-">
                                     <field name="VAR" id="g$)ffp|}W6r%PP]CYAVg">garagentor</field>
                                     <value name="VALUE">
                                       <block type="text" id="9nxWb@(=!%$7*pwR/N4l">
                                         <field name="TEXT">geschlossen</field>
                                       </block>
                                     </value>
                                   </block>
                                 </statement>
                                 <next>
                                   <block type="update" id="Hb6n$O(U[*Z=~@M?$DfV">
                                     <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                     <field name="OID">0_userdata.0.Blockly.Garagentor</field>
                                     <field name="WITH_DELAY">FALSE</field>
                                     <value name="VALUE">
                                       <block type="variables_get" id=";J/4@wD-^}flXE-9n/V6">
                                         <field name="VAR" id="g$)ffp|}W6r%PP]CYAVg">garagentor</field>
                                       </block>
                                     </value>
                                     <next>
                                       <block type="control" id="zSrrvY,zD24=;O}.Ds3`">
                                         <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                         <field name="OID">0_userdata.0.Test.OnOff</field>
                                         <field name="WITH_DELAY">FALSE</field>
                                         <value name="VALUE">
                                           <block type="logic_compare" id="3=99sf*kkX3U$QzG`|.P">
                                             <field name="OP">GT</field>
                                             <value name="A">
                                               <block type="variables_get" id="oocj.ff!$SsTSMQ%B_+O">
                                                 <field name="VAR" id="2M5w5y%d}Ir82Iorfz^N">preset</field>
                                               </block>
                                             </value>
                                             <value name="B">
                                               <block type="math_number" id="VcdV$t1!mL!geZ8gI.X+">
                                                 <field name="NUM">0</field>
                                               </block>
                                             </value>
                                           </block>
                                         </value>
                                         <next>
                                           <block type="controls_if" id="|T^f=g}Bv60zloPi.|Rw">
                                             <value name="IF0">
                                               <block type="variables_get" id="ZX`tsdX27}yf20!Tyv/l">
                                                 <field name="VAR" id="2M5w5y%d}Ir82Iorfz^N">preset</field>
                                               </block>
                                             </value>
                                             <statement name="DO0">
                                               <block type="control" id="zPOo:eF9n/k8:.[2lOq{">
                                                 <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                 <field name="OID">Object ID</field>
                                                 <field name="WITH_DELAY">FALSE</field>
                                                 <value name="VALUE">
                                                   <block type="variables_get" id="0R;:]^?1WOThB$Z?r}M$">
                                                     <field name="VAR" id="2M5w5y%d}Ir82Iorfz^N">preset</field>
                                                   </block>
                                                 </value>
                                               </block>
                                             </statement>
                                           </block>
                                         </next>
                                       </block>
                                     </next>
                                   </block>
                                 </next>
                               </block>
                             </next>
                           </block>
                         </statement>
                       </block>
                      </xml>
                      

                      @homoran sagte: wo liegt denn das Problem beim Nachbau? So etwas übt!

                      Offenbar möchte @Dr-Pie lieber die Datenpunkt-IDs austauschen als Blockly zu üben.

                      1 Reply Last reply Reply Quote 0
                      • Homoran
                        Homoran Global Moderator Administrators @Dr.Pie last edited by

                        @dr-pie sagte in Wenn 2 Datenpunkte true dann setze Datenpunkt auf true:

                        schade

                        warum?

                        Willst du es nie selber können?
                        Das wäre schade!

                        Dr.Pie 1 Reply Last reply Reply Quote 2
                        • Dr.Pie
                          Dr.Pie @Homoran last edited by

                          @homoran Ich habe kein Problem mir Hilfe zu holen 😊 👍

                          crunchip 1 Reply Last reply Reply Quote 0
                          • crunchip
                            crunchip Forum Testing Most Active @Dr.Pie last edited by

                            @dr-pie andere haben auch kein Problem zu helfen,
                            aber
                            helfen ist nicht gleichgestellt mit, die ganze Arbeit übernehmen

                            eine gewisse Bereitschaft es selbst umzusetzen muss schon gegeben sein

                            Dr.Pie 1 Reply Last reply Reply Quote 1
                            • Dr.Pie
                              Dr.Pie @crunchip last edited by

                              @crunchip eine gewisse Bereitschaft es selbst umzusetzen muss schon gegeben sein

                              Ich habe tagelang daran gesessen. Untätigkeit kann man mir nicht vorwerfen ... 😊

                              crunchip 1 Reply Last reply Reply Quote 0
                              • crunchip
                                crunchip Forum Testing Most Active @Dr.Pie last edited by

                                @dr-pie sagte in Wenn 2 Datenpunkte true dann setze Datenpunkt auf true:

                                Ich habe tagelang daran gesessen. Untätigkeit kann man mir nicht vorwerfen

                                durchaus möglich, jedoch zu Beginn nicht ersichtlich

                                andere Herangehensweise

                                ...ich möchte dies und das erreichen, leider funktioniert das nicht wie gewollt...hier das blockly, (mit export)

                                somit wäre sofort ersichtlich, ah er hat es versucht, gerne hilft man

                                es wurde sich in dem Fall sogar die Zeit genommen, das blockly zu verbessern in dem ein neues erstellt wurde, allerdings mit der Erwartung dies zu verstehen, durch selbst Nachbau.

                                und eine Aussage wie

                                @dr-pie sagte in Wenn 2 Datenpunkte true dann setze Datenpunkt auf true:

                                habe kein Problem mir Hilfe zu holen

                                machts dann auch nicht gerade besser

                                Dr.Pie 1 Reply Last reply Reply Quote 1
                                • Dr.Pie
                                  Dr.Pie @crunchip last edited by

                                  Wie soll man das auch sehen können.
                                  Man sieht nur wenn man Hilfe braucht, aber nicht unbedingt was man vieles selber macht.
                                  Ich zumindest bin froh soweit gekommen zu sein und das ohne direkte Hilfe.
                                  Außerdem habe ich mir die Finger wund gegooglet und bin so weit gekommen das ich schon stolz bin.
                                  Mir ist es auch egal was andere denken aufgrund von Vermutungen 😉

                                  Von mir hier mal ein FETTES Dankeschön an die die unermüdlich helfen.

                                  1000 Dank an ALLE

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

                                  Support us

                                  ioBroker
                                  Community Adapters
                                  Donate

                                  586
                                  Online

                                  32.0k
                                  Users

                                  80.5k
                                  Topics

                                  1.3m
                                  Posts

                                  6
                                  45
                                  1100
                                  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