Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Objekt nicht schalten, wenn ein anderes bereits wahr ist

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Objekt nicht schalten, wenn ein anderes bereits wahr ist

    This topic has been deleted. Only users with topic management privileges can see it.
    • N
      n811e @Gutscho last edited by

      @gutscho
      vielen dank für deine Erklärung.

      Aber warum kann man da nicht eintragen, falls wahr, mach nichts, fall falsch, schalte ein.

      So richtig erschließt es sich mir leider immer noch nicht. Oder steige ich zu hoch in die Blockly-Scripte ein?
      Alles was ich so gesehen habe (youtube und foren) kann ich zwar eins zu eins nach bauen (wenn ich die passenden Bausteine finde), aber deswegen habe ich das ja noch nicht verstanden.

      So wie ich es oben gemacht habe, klappt es bei mir leider nicht.

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

        @n811e sagte: soll der Shelly-BWM ganz normal einschalten.

        Schaltet der BWM das Licht direkt (ohne Skript)? Dann muss man es anders lösen: BWM sperren, falls möglich.

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

          @paul53
          Ja, der BWM Lastausgang, geht lediglich auf einen Shelly, der dann die Lampe(n) schaltet.
          Und genau dies soll nicht passieren, wenn der andere Shelly bereits an ist.

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

            @n811e sagte: Ja, der BWM Lastausgang, geht lediglich auf einen Shelly, der dann die Lampe(n) schaltet.

            Gibt es einen Datenpunkt, mit dem man dies sperren kann? Bitte zeigen, denn ich habe keine Shellys.

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

              @paul53

              Ja, die gibt es.
              Ich hänge mal Fotos dran.

              4A93F672-FC34-4633-8078-0857FB584FD8.jpeg EA689389-B3E1-421A-A0CC-3756C0892F3D.jpeg A8EE488B-2252-4FC0-8CD7-580CA2780636.jpeg

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

                @n811e
                Hat der BWM keine eigenen Datenpunkte? Was bewirkt "Input / Detach"?

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

                  @paul53 Doch, die hat er. Alles was unter Relay0 bei Shelly_1_Bewegungsmelder_Flur steht, sind doch Datenpunkte, oder verstehe ich das falsch.

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

                    @paul53
                    Was Input/Detach bewirkt weiß ich leider nicht.
                    Ich weiß aber, wenn der Bewegungsmelder ausgelöst hat, dass der Datenpunkt Switch von false auf true wechselt.

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

                      @n811e sagte: der Datenpunkt Switch von false auf true wechselt.

                      Ist das nicht der Datenpunkt, der das Licht schaltet?

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

                        @paul53 Doch genau der ist das.

                        N 1 Reply Last reply Reply Quote 0
                        • N
                          n811e @n811e last edited by

                          @n811e
                          Reicht der nicht?

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

                            @n811e sagte: Reicht der nicht?

                            Man kann das Licht sofort wieder ausschalten, wenn die Dekobeleuchtung an ist, was allerdings nur eine Notlösung ist, da das Licht kurz aufblitzen kann.

                            Bild_2022-01-30_101138.png

                            Besser wäre es, man könnte den BWM vom Lichtaktor entkoppeln (detach).

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

                              @paul53

                              Vielen Dank, mit Deiner Hilfe, habe ich es geschafft, dass umzusetzen.
                              Ich weiß leider nicht, wie Du deinen Code hier postest, sodass er direkt als Blockly angezeigt wird.

                              Du hast völlig recht. es blinkt manchmal (komischer weise nicht immer) kurz auf.
                              Wie meinst Du das mit dem entkoppeln? Müsste ich da Hardwaremäßig etwas umbauen?

                              <block xmlns="https://developers.google.com/blockly/xml" type="on" id="ev7;H-21-9lCB,^gCGF$" x="63" y="138">
                                <field name="OID">shelly.0.SHSW-1#3083988BFF1E#1.Relay0.Switch</field>
                                <field name="CONDITION">true</field>
                                <field name="ACK_CONDITION">true</field>
                                <statement name="STATEMENT">
                                  <block type="controls_if" id="V1(GXQraEhPon-5HUv!L">
                                    <mutation elseif="1"></mutation>
                                    <value name="IF0">
                                      <block type="logic_compare" id="M:d=WS}Y7Q]l*LmTim7x">
                                        <field name="OP">EQ</field>
                                        <value name="A">
                                          <block type="get_value" id="a)9NZz]W8Z_ik{.4=X8D">
                                            <field name="ATTR">val</field>
                                            <field name="OID">shelly.0.SHRGBW2#2B9098#1.lights.Switch</field>
                                          </block>
                                        </value>
                                        <value name="B">
                                          <block type="logic_boolean" id="Jh7G@JAgxY2FKk:z,qXg">
                                            <field name="BOOL">FALSE</field>
                                          </block>
                                        </value>
                                      </block>
                                    </value>
                                    <statement name="DO0">
                                      <block type="control" id="dx=nv+k_HC(qI,*%gJH9">
                                        <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                        <field name="OID">shelly.0.SHSW-1#3083988BFF1E#1.Relay0.Switch</field>
                                        <field name="WITH_DELAY">FALSE</field>
                                        <value name="VALUE">
                                          <block type="logic_boolean" id="%@F.DAz|Dbs^(|=JufUi">
                                            <field name="BOOL">TRUE</field>
                                          </block>
                                        </value>
                                      </block>
                                    </statement>
                                    <value name="IF1">
                                      <block type="logic_compare" id="/ga,85@6z#MV4FZNxVc=">
                                        <field name="OP">EQ</field>
                                        <value name="A">
                                          <block type="get_value" id="2@wbmsJT=e!p9Z?OX2/g">
                                            <field name="ATTR">val</field>
                                            <field name="OID">shelly.0.SHRGBW2#2B9098#1.lights.Switch</field>
                                          </block>
                                        </value>
                                        <value name="B">
                                          <block type="logic_boolean" id="7NgRjHUmeM]?A$x1I9$i">
                                            <field name="BOOL">TRUE</field>
                                          </block>
                                        </value>
                                      </block>
                                    </value>
                                    <statement name="DO1">
                                      <block type="control" id="1Sf=Xd[EmBGc!352kYko">
                                        <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                        <field name="OID">shelly.0.SHSW-1#3083988BFF1E#1.Relay0.Switch</field>
                                        <field name="WITH_DELAY">FALSE</field>
                                        <value name="VALUE">
                                          <block type="logic_boolean" id="VzY|~2QJO-qy-7BN8^3~">
                                            <field name="BOOL">FALSE</field>
                                          </block>
                                        </value>
                                      </block>
                                    </statement>
                                  </block>
                                </statement>
                              </block>
                              
                              paul53 2 Replies Last reply Reply Quote 0
                              • paul53
                                paul53 @n811e last edited by paul53

                                @n811e sagte: Wie meinst Du das mit dem entkoppeln? Müsste ich da Hardwaremäßig etwas umbauen?

                                Wie hast Du den BWM an den Shelly angeschlossen?
                                Ich habe irgendwo gelesen, dass man Shellys in einen Detached Mode bringen kann. Dann wirken die Eingänge nicht mehr direkt auf den Aktor, sondern es muss per Programm (Blockly) geschaltet werden.

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

                                  @n811e sagte: wie Du deinen Code hier postest, sodass er direkt als Blockly angezeigt wird.

                                  Mit dem Snipping Tool von Windows.
                                  Besser so:

                                  Blockly_temp.JPG

                                  <xml xmlns="https://developers.google.com/blockly/xml">
                                   <block type="on" id="ev7;H-21-9lCB,^gCGF$" x="63" y="138">
                                     <field name="OID">shelly.0.SHSW-1#3083988BFF1E#1.Relay0.Switch</field>
                                     <field name="CONDITION">true</field>
                                     <field name="ACK_CONDITION">true</field>
                                     <statement name="STATEMENT">
                                       <block type="controls_if" id="V1(GXQraEhPon-5HUv!L">
                                         <value name="IF0">
                                           <block type="get_value" id="2@wbmsJT=e!p9Z?OX2/g">
                                             <field name="ATTR">val</field>
                                             <field name="OID">shelly.0.SHRGBW2#2B9098#1.lights.Switch</field>
                                           </block>
                                         </value>
                                         <statement name="DO0">
                                           <block type="control" id="1Sf=Xd[EmBGc!352kYko">
                                             <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                             <field name="OID">shelly.0.SHSW-1#3083988BFF1E#1.Relay0.Switch</field>
                                             <field name="WITH_DELAY">FALSE</field>
                                             <value name="VALUE">
                                               <block type="logic_boolean" id="VzY|~2QJO-qy-7BN8^3~">
                                                 <field name="BOOL">FALSE</field>
                                               </block>
                                             </value>
                                           </block>
                                         </statement>
                                       </block>
                                     </statement>
                                   </block>
                                  </xml>
                                  

                                  1 Reply Last reply Reply Quote 0
                                  • G
                                    Gutscho @n811e last edited by

                                    @n811e said in Objekt nicht schalten, wenn ein anderes bereits wahr ist:

                                    @gutscho
                                    vielen dank für deine Erklärung.

                                    Aber warum kann man da nicht eintragen, falls wahr, mach nichts, fall falsch, schalte ein.

                                    So richtig erschließt es sich mir leider immer noch nicht. Oder steige ich zu hoch in die Blockly-Scripte ein?

                                    Das kannst du natürlich auch machen. Aber wieso sollte man Zeilen toten Codes produzieren die einfach nicht benutzt werden wenn es auch mit einem Konstrukt geht wo ich nicht zusätzlich Zeilen brauche. Als Pseudocode stelle ich dir das ganze schnell mal gegenüber:

                                    Wenn wahr:
                                       mache nichts
                                    Sonst:
                                      mache das was ich dir sage
                                    
                                    Wenn nicht wahr:
                                       mache das was ich dir sage
                                    

                                    Du hast natürlich schon recht dass das andere für jemanden der nicht so oft programmiert leichter zu lesen ist. Die Logik ist aber die selbe.

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

                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate

                                    808
                                    Online

                                    32.0k
                                    Users

                                    80.4k
                                    Topics

                                    1.3m
                                    Posts

                                    4
                                    22
                                    1117
                                    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