Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Einfaches Script tut nicht

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Einfaches Script tut nicht

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

      Hallo Zusammen!

      Ich habe einen Datenpunkt der "WAHR" ist, wenn irgend ein Bewegungsmelder was meldet.
      Dann habe ich einen Lichtschalter.

      Ziel: das Licht so solange anbleiben, bis eine Minute lang keine Bewegung mehr gemeldet wurde.
      Der Datenpunkt macht was er soll, aber das Script nicht das was ich will...

      Hier ist das Script:

      <block xmlns="https://developers.google.com/blockly/xml" type="on_ext" id="Nj(te{x3$e6!~{f@69xR" x="-662" y="-262">
        <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="c%l5fWgvmI!,g`p~4n;j">
            <field name="oid">0_userdata.0.Eigene_Datenpunkte.Bewegung_Treppenhaus</field>
          </shadow>
        </value>
        <value name="OID1">
          <shadow type="field_oid" id="g`rmn-%z=3@;OT1+ojJq">
            <field name="oid">tuya.0.bfe388d3df5efedf2biaa2.1</field>
          </shadow>
        </value>
        <statement name="STATEMENT">
          <block type="controls_if" id=";~VE8W;`.ex2=wwj/@Ts">
            <mutation elseif="1"></mutation>
            <value name="IF0">
              <block type="logic_operation" id=",?/,{8t1Ok[v~}O9s!Ma" inline="false">
                <field name="OP">AND</field>
                <value name="A">
                  <block type="logic_compare" id="sg#uwfHFEHu@VFjPHnGm">
                    <field name="OP">EQ</field>
                    <value name="A">
                      <block type="get_value" id="=q!=jm#p%j_?ItKK~6su">
                        <field name="ATTR">val</field>
                        <field name="OID">0_userdata.0.Eigene_Datenpunkte.Bewegung_Treppenhaus</field>
                      </block>
                    </value>
                    <value name="B">
                      <block type="logic_boolean" id=",szH!zRw2wr36mM#Lv;2">
                        <field name="BOOL">TRUE</field>
                      </block>
                    </value>
                  </block>
                </value>
                <value name="B">
                  <block type="logic_compare" id="spIprjI/7x5pOlbr9~%B">
                    <field name="OP">EQ</field>
                    <value name="A">
                      <block type="get_value" id="KI8}_3AwoOg/GziGTn^8">
                        <field name="ATTR">val</field>
                        <field name="OID">tuya.0.bfe388d3df5efedf2biaa2.1</field>
                      </block>
                    </value>
                    <value name="B">
                      <block type="logic_boolean" id="eN[K=?QMEO/sv0c$#wm)">
                        <field name="BOOL">TRUE</field>
                      </block>
                    </value>
                  </block>
                </value>
              </block>
            </value>
            <statement name="DO0">
              <block type="timeouts_cleartimeout" id="Zbw-y?`R?n}TqCVr8eS?">
                <field name="NAME">timeout</field>
              </block>
            </statement>
            <value name="IF1">
              <block type="logic_compare" id="xEH3SIM)qXmeepx*K[3A">
                <field name="OP">EQ</field>
                <value name="A">
                  <block type="get_value" id="iw:1ij6~`,|u:f}Ai[GI">
                    <field name="ATTR">val</field>
                    <field name="OID">0_userdata.0.Eigene_Datenpunkte.Bewegung_Treppenhaus</field>
                  </block>
                </value>
                <value name="B">
                  <block type="logic_boolean" id=".#VUo}Qq$Vq?;Yu=h.@{">
                    <field name="BOOL">FALSE</field>
                  </block>
                </value>
              </block>
            </value>
            <statement name="DO1">
              <block type="timeouts_settimeout" id="Sl7]EUvd]q9gXk%bteLN">
                <field name="NAME">timeout</field>
                <field name="DELAY">1</field>
                <field name="UNIT">min</field>
                <statement name="STATEMENT">
                  <block type="control" id="m|A:PzDnfvu95fRcW=_L">
                    <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                    <field name="OID">tuya.0.bfe388d3df5efedf2biaa2.1</field>
                    <field name="WITH_DELAY">FALSE</field>
                    <value name="VALUE">
                      <block type="logic_boolean" id="J?B*b7K]mz/dn_@OM_F}">
                        <field name="BOOL">FALSE</field>
                      </block>
                    </value>
                  </block>
                </statement>
              </block>
            </statement>
          </block>
        </statement>
      </block>
      

      Oder als Bild:
      3259b491-03e2-4879-a55a-27bb1cea4eee-grafik.png

      Wo ist mein Denkfehler???

      Gruß und Dank
      Tobias

      DJMarc75 Homoran geschild paul53 4 Replies Last reply Reply Quote 0
      • DJMarc75
        DJMarc75 @Fibricus last edited by DJMarc75

        @fibricus sagte in Einfaches Script tut nicht:

        Dann habe ich einen Lichtschalter.

        Und was soll der bei Dir bewirken ? 😉

        edit: sorry, grad gesehen dass der anscheinend im Skript integriert ist

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

          @fibricus sagte in Einfaches Script tut nicht:

          aber das Script nicht das was ich will...

          sondern was?

          F 1 Reply Last reply Reply Quote 0
          • geschild
            geschild @Fibricus last edited by geschild

            Post entfernt

            1 Reply Last reply Reply Quote 0
            • F
              Fibricus @Homoran last edited by

              @homoran said in Einfaches Script tut nicht:

              @fibricus sagte in Einfaches Script tut nicht:

              aber das Script nicht das was ich will...

              sondern was?

              Es schaltet das Licht auch OBWOHL der Datenpunkt auf WAHR steht.

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

                @fibricus sagte: Dann habe ich einen Lichtschalter.

                Wie soll er wirken? Das Licht an lassen, bis er wieder ausgeschaltet wird? Dann:

                Blockly_temp.JPG

                "Skriptname" durch den tatsächlichen Namen des Skriptes ersetzen.

                F 2 Replies Last reply Reply Quote 1
                • Homoran
                  Homoran Global Moderator Administrators @Fibricus last edited by Homoran

                  @fibricus sagte in Einfaches Script tut nicht:

                  @homoran said in Einfaches Script tut nicht:

                  @fibricus sagte in Einfaches Script tut nicht:

                  aber das Script nicht das was ich will...

                  sondern was?

                  Es schaltet das Licht auch OBWOHL der Datenpunkt auf WAHR steht.

                  ich nehme an es schaltet das Licht aus, obwohl einer von beiden States wahr ist?
                  welcher?
                  oder doch beide?
                  kann man den Schalter bedienen, ohne dass Bewegung erkannt wird?

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

                    @paul53 said in Einfaches Script tut nicht:

                    @fibricus sagte: Dann habe ich einen Lichtschalter.

                    Wie soll er wirken? Das Licht an lassen, bis er wieder ausgeschaltet wird? Dann:

                    Wie gesagt: Das Licht soll (nach dem es über einen mechanischen Schalter (Schalterreihe an Eltako) angeschaltet wurde) erst ausgehen, wenn 1 Minute lang keine Bewegung mehr gemeldet wurde. Also 1Minute nachdem der Datenpunkt auf "FALSCH" wechselte.
                    Sollte innerhalb der Minute wieder Bewegung gemeldet werden soll das Licht natürlich anbleiben.

                    1 Reply Last reply Reply Quote 0
                    • F
                      Fibricus @Homoran last edited by

                      @homoran said in Einfaches Script tut nicht:

                      ich nehme an es schaltet das Licht aus, obwohl einer von beiden States wahr ist?
                      welcher?
                      oder doch beide?
                      kann man den Schalter bedienen, ohne dass Bewegung erkannt wird?

                      Ja, genau das ist das Problem. Auch wenn der Datenpunkt "WAHR" ist, schaltet das Script oder auch viel zu früh, also nicht nach einer Minute.

                      Ich muss mal schauen, wie es mit der Zustandsmeldung vom Schalter aussieht. Das habe ich noch nicht beobachtet. Vielleicht liegt es an der UND-Verknüpfung von Schalterzustand WAHR und Bewegung WAHR.
                      Das habe ich noch nicht ausprobiert - erscheint mir aber auch nicht logisch...

                      Und ja, da der Zigbee-Schalter über den Ausgang vom Eltako gesteuert wird, kann ich den auch jederzeit mechanisch, über die angeschlossenen Wandschalter, wieder ausschalten.
                      Das tut auch zuverlässig.

                      Nur dumm eben, dass das Licht von alleine ausgeht, obwohl ich auf der Treppe unterwegs bin...

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

                        @fibricus

                        nochmal:
                        Was ist "der Datenpunkt"??

                        • Schalterstellung?
                        • Bewegung?

                        Die UND Verknüpfung dieser beiden Datenpunkte, führt bei nur einem wahr zum falsch des gesamten Ausdrucks

                        ein erneutes Triggern durch Bewegung läuft dann an der gesamten Logik vorbei

                        F 1 Reply Last reply Reply Quote 0
                        • F
                          Fibricus @Homoran last edited by

                          @homoran said in Einfaches Script tut nicht:

                          @fibricus

                          nochmal:
                          Was ist "der Datenpunkt"??

                          • Schalterstellung?
                          • Bewegung?

                          Das hatte ich im ersten Post Post beschrieben:
                          @fibricus said in Einfaches Script tut nicht:

                          Ich habe einen Datenpunkt der "WAHR" ist, wenn irgend ein Bewegungsmelder was meldet.

                          @homoran said in Einfaches Script tut nicht:

                          Die UND Verknüpfung dieser beiden Datenpunkte, führt bei nur einem wahr zum falsch des gesamten Ausdrucks

                          So war das ja auch geplan: wenn der Zustand des Lichtschalters WAHR ist (wurde manuell gedrückt) und der Zustand des DP WAHR ist (es ist jemand im Treppenhaus), dann stoppe den Timeout.

                          @homoran said in Einfaches Script tut nicht:

                          ein erneutes Triggern durch Bewegung läuft dann an der gesamten Logik vorbei

                          Ja, das könnte es sein und den Eindruck habe ich auch.
                          Was muss ich denn dann anders machen?

                          paul53 Homoran 2 Replies Last reply Reply Quote 0
                          • paul53
                            paul53 @Fibricus last edited by

                            @fibricus sagte: Was muss ich denn dann anders machen?

                            Siehe hier

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

                              @paul53 said in Einfaches Script tut nicht:

                              Siehe hier

                              Sorry, hatte ich am Handy überlesen. Teste ich gleich heute Abend.
                              Danke!

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

                                @fibricus sagte in Einfaches Script tut nicht:

                                Das hatte ich im ersten Post Post beschrieben:

                                natürlich, aber auch der Zustand des Licht"schalters" ist ein Datenpunkt. Oder etwa nicht?

                                @fibricus sagte in Einfaches Script tut nicht:

                                wenn der Zustand des Lichtschalters WAHR ist

                                Wann geht denn dieser Datenpunkt wieder auf false?

                                F 1 Reply Last reply Reply Quote 0
                                • F
                                  Fibricus @Homoran last edited by

                                  @homoran Entschuldigung - Typischer Anfängerfehler mit den Begriffen.

                                  Ja, natürlich ist auch der Zustand des Schalters ein Datenpunkt (im Tuya-Baum).
                                  Der DP-Bewegung ist ein Datenpunkt den ich selber angelegt habe. Daher dachte ich nur an diesen Datenpunkt...
                                  Der DP-Lichtschalter geht erst wieder auf FALSE wenn der manuell geschaltet wird. Der geht beim ersten Drücken eines der Wandschalter auf TRUE und bleibt auf TRUE bis er manuell oder eben über das Script ausgeschaltet wird.

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

                                    @fibricus sagte: ist auch der Zustand des Schalters ein Datenpunkt

                                    Ein vom Aktor "tuya.0.bfe388d3df5efedf2biaa2.1" getrennter Datenpunkt?

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

                                      @paul53 said in Einfaches Script tut nicht:

                                      @fibricus sagte: ist auch der Zustand des Schalters ein Datenpunkt

                                      Ein vom Aktor "tuya.0.bfe388d3df5efedf2biaa2.1" getrennter Datenpunkt?

                                      Bin Anfänger und habe vll / wahrscheinlich Probleme mit der Terminologie...
                                      Im Datenbaum Tuya ist der Schalter und in seinem Baum gibt es eine Punkt "switch" der den Zustand WAHR oder FALSCH haben kann. Das ist doch ein Datenpunkt oder nicht?
                                      Ich bin verwirrt!

                                      paul53 Homoran 2 Replies Last reply Reply Quote 0
                                      • paul53
                                        paul53 @Fibricus last edited by

                                        @fibricus sagte: Im Datenbaum Tuya ist der Schalter

                                        Bitte den Baum zeigen.

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

                                          @fibricus sagte in Einfaches Script tut nicht:

                                          Bin Anfänger und habe vll / wahrscheinlich Probleme mit der Terminologie...

                                          dann zeig's doch

                                          https://forum.iobroker.net/topic/51555/hinweise-für-gute-forenbeiträge/1

                                          F 1 Reply Last reply Reply Quote 0
                                          • F
                                            Fibricus @Homoran last edited by

                                            @homoran said in Einfaches Script tut nicht:

                                            dann zeig's doch
                                            https://forum.iobroker.net/topic/51555/hinweise-für-gute-forenbeiträge/1

                                            Ich war der Meinung mein Problem ausreichend genau geschildert zu haben. Auch habe ich den Hinweis für gute Forenbeiträge schon mehrfach gelesen und probiere es so zu machen.

                                            Leider habe ich keinen Fernzugriff auf meinen IOB. Ich machen einen Screenshot wenn ich zu Hause bin.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            878
                                            Online

                                            32.0k
                                            Users

                                            80.4k
                                            Topics

                                            1.3m
                                            Posts

                                            5
                                            30
                                            1077
                                            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