Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Lösung für eine Prüfung gesucht

    NEWS

    • Amazon Alexa - ioBroker Skill läuft aus ?

    • Monatsrückblick – September 2025

    • Neues Video "KI im Smart Home" - ioBroker plus n8n

    Lösung für eine Prüfung gesucht

    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      schonwiederich @paul53 last edited by

      @paul53 Sooooo, ich glaube und hoffe ich habe nun den fehlerteufel.
      ![0_1633374257603_IMG_20211004_210134.jpg](Uploading 100%)

      Drückt man den Taster der dann den Aktor schaltet, welcher dann die variable auf True setzt, geht aber sehr schnell dabei ins Bad, so dass die bewegungserkennung das bewegungsprogramm triggert bevor die variable gesetzt werden kann, steht die variable weiter auf false. So auch zu sehen in dem Screenshot in Orange eingefärbt.

      Ich denke das ist das Problem.
      In kurz... Bewegung triggert, bevor die variable auf True gesetzt werden kann.

      Habe ich eine chance das technisch abzufangen oder geht das nur durch einweisen der Familie =
      Knopf drücken, 1 Sekunde warten, rein gehen?

      Danke vielmals vorab.

      S paul53 2 Replies Last reply Reply Quote 0
      • S
        schonwiederich @schonwiederich last edited by

        @schonwiederich IMG_20211004_210134.jpg

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

          @schonwiederich sagte: Bewegung triggert, bevor die variable auf True gesetzt werden kann.

          Dauert die Reaktion der Direktverknüpfung so lange?
          Dann muss man die Bewegungserkennung verzögern.

          Bild_2021-10-04_220414.png

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

            @paul53 es ist ja knopf drücke - Direktverbindung schaltet - Aktor meldet Status Änderung an ccu - statusanderung wird von ccu an iob übertragen bzw dort registriert - Programm erkennt diese Änderung und setzt die variable.

            Wenn man also quasi in einer Bewegung den Knopf drückt und ins Bad hineingeht ist der bewegungsmelder ggf schneller als die variablenänderung

            Ich werde den timeout mal testen.
            An könnte auch auf... Wenn Taster aktualisiert.... Reagieren. Das wäre dann evtl schneller als den Aktor auszuwerten.
            Danke

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

              @schonwiederich sagte: Wenn Taster aktualisiert.... Reagieren. Das wäre dann evtl schneller als den Aktor auszuwerten.

              Zum Taster existiert ein Datenpunkt (PRESS_SHORT) in ioBroker?

              S 2 Replies Last reply Reply Quote 0
              • S
                schonwiederich @paul53 last edited by

                @paul53
                jepp, der mit diesem "Tasersymbol" was aussieht wie so eine Hotelempfangsklingel.
                Ich habe den Zustand mal im History geloggt. Der Taster steht immer auf True.
                Wenn man ihn betätigt wird er mit Abstand von ca 0,2 Sekunden 2 mal auf True aktualisiert.

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

                  @paul53 zzz.JPG

                  Asgothian 1 Reply Last reply Reply Quote 0
                  • Asgothian
                    Asgothian Developer @schonwiederich last edited by Asgothian

                    @schonwiederich
                    Letztendlich hast du in deinem Skript schon alles was du brauchst. Nur die Reihenfolge der Abfragen muss geändert werden:

                    Aktuell machst du:

                    falls nicht manuell ein:
                    falls wenig licht und BWM aktiv dann mach was
                    sonst falls bwm und nacht dann mach was anderes
                    sonst falls BWM falsch mach licht aus.

                    was Du willst ist:

                    falls wenig licht und BWM aktiv mach was
                    sonst falls BWM aktiv und nacht dann mach was anderes
                    sonst falls BWM inaktiv und nicht manuell ein mach licht aus.

                    Was passieren kann :

                    • Es wird der Knopf gedrückt und man wartet mit dem rein gehen - dann bekommt man das Verhalten des automatischen Licht an.
                    • Es wird der Knopf gedrückt und man geht direkt rein - dann sollte erst die BWM steuerung zuschlagen und danach das Licht wie vom Knopf gesteuert an gehen.

                    In beiden Fällen geht das licht nur dann automatisch aus wenn es nicht manuell eingeschaltet wurde.

                    A.

                    Nachtrag: Mir ist noch eine Sache aufgefallen: Wenn du die Lampe über den Taster direkt toggelst dann kann es dazu kommen das die Lampe abgeschaltet wird wenn das Tastersignal erst nach dem Auslösen der BWM erkannt wird.
                    In diesem Fall würde ich bei dem Skript welches die Lampe einschaltet (sofern es eines gibt) noch den BWM abfragen - ist der BWM aktiv dann sollte der Taster die Lampe nie ausschalten.

                    A.

                    S 1 Reply Last reply Reply Quote 0
                    • S
                      schonwiederich @Asgothian last edited by

                      @asgothian
                      Hi danke für dein Feedback.
                      ich bin nicht sicher ob wir uns richtig verstehen 🙂

                      das was du bei "was du willst" schreibst ist nicht ganz richtig.
                      was ich will ist, das wenn man das licht per hand eingeschlatet hat, das programm für den bwm garnicht reagiert, weder mit ein- noch mit ausschalten. = es bleibt so lange an bis man es von hand wieder ausschaltet.
                      wenn man das licht nicht zuvor eingeschlatet hat , dann soll das programm des bewegungsmelders durchlaufen und entsprechend an und aus schalten.

                      Demnach denke ich die reihenfolge die ich jetzt habe ist schon die richitige...

                      Nachtrag: Der Taster togeelt die Lampe nicht. Kanel 1 schaltet per HM direktverknüpfung an und Kanal 2 aus, unabhängig vom IOB.

                      VG und danke

                      Asgothian paul53 2 Replies Last reply Reply Quote 0
                      • Asgothian
                        Asgothian Developer @schonwiederich last edited by

                        @schonwiederich sagte in Lösung für eine Prüfung gesucht:

                        @asgothian
                        Hi danke für dein Feedback.
                        ich bin nicht sicher ob wir uns richtig verstehen 🙂

                        das was du bei "was du willst" schreibst ist nicht ganz richtig.
                        was ich will ist, das wenn man das licht per hand eingeschlatet hat, das programm für den bwm garnicht reagiert, weder mit ein- noch mit ausschalten. = es bleibt so lange an bis man es von hand wieder ausschaltet.
                        wenn man das licht nicht zuvor eingeschlatet hat , dann soll das programm des bewegungsmelders durchlaufen und entsprechend an und aus schalten.

                        Demnach denke ich die reihenfolge die ich jetzt habe ist schon die richitige...

                        Nachtrag: Der Taster togeelt die Lampe nicht. Kanel 1 schaltet per HM direktverknüpfung an und Kanal 2 aus, unabhängig vom IOB.

                        VG und danke

                        So hatte ich dich durchaus verstanden. Entscheidend ist folgendes:

                        Solange der Status des Schalters verzögert weiter gegeben wird kannst du nur wie @paul53 geschrieben hat das Auslösen des BWM um diese Zeit verzögern - mit dem Effekt das die Lampe ggf. erst einige Zeit nach betreten des Raumes an geht.

                        Alternativ kannst du zulassen das der BWM die Lampe auch einschaltet - was wenn sie schon eingeschaltet ist erst einmal kein Problem darstellen sollte - und dann das ausschalten der Lampe über den BWM verhindern. Genau das würde mein Ansatz oben realisieren.

                        Eine dritte Möglichkeit sehe ich ehrlich gesagt nicht.

                        A.

                        S 1 Reply Last reply Reply Quote 0
                        • S
                          schonwiederich @Asgothian last edited by

                          @asgothian
                          Nochmal danke,
                          Ich denke es gibt 3 Ansätze:

                          1. Den von @paul53 (Verzögerung)
                          2. Den von Dir (Wobei ich dann schauen müsste, ob der zu anderen "ungewünschten" effekten führt.
                            3, Das was ich noch vorgeschlagen hatte. (Nicht auf "Aktor wurde geändert" reagieren um die Variable zu setzen sondern auf "Taster wurde aktualsisert" Ich kann mir vorstellen dass das "schneller" ankommt als die Aktoränderung.

                          Wenn ich deinen Fall ausprobiere nehme ich das "Falls - nicht - manuell ein" am Anfang raus und setze es ausschließlich als zweite Bedingung zum AUS Befehl hinzu?!

                          VG

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

                            @schonwiederich sagte: Der Taster togeelt die Lampe nicht. Kanel 1 schaltet per HM direktverknüpfung an und Kanal 2 aus

                            Dann versuche mal, ob so schneller auf den Kanal-1-Taster reagiert wird:

                            Bild_2021-10-05_131603.png

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

                              @paul53
                              Danke.
                              Sollte ich den oberen Falls Block dann nicht rausnehmen? Nicht das die beiden Blöche sich "gegenseitig stören" wenn Sie beide die Variable schrieben wollen?!

                              Verständnissfrrage:
                              Press short ist immer "wahr" kann ich dennoch "ist wahr" nehmen oder muss ich "bei aktualisierung" nehmen?

                              Muss ich dann nicht noch ebenso einen Falls Block für Press short Kanal 2 und setzte manuell_ein auf "falsch" mit reinnehmen? Sonst bleibt doch die Variable für immer auf "wahr" stehen, oder?

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

                                @schonwiederich sagte: Sollte ich den oberen Falls Block dann nicht rausnehmen?

                                Nein, denn der stellt sicher, dass auch bei Einschalten über Vis oder Tab "Objekte" die Variable gesetzt wird und dass beim Ausschalten - egal wodurch - die Variable zurück gesetzt wird.

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

                                  @paul53
                                  ttttt.JPG
                                  Es ist wie ich vermutet hatte. Der Trigger über den Aktor dauert zu lange.
                                  Ich habe den Debug Block in beide Falls Blöcke (Aktor UND Taster) gepackt.
                                  Wie man sehen kann wird die Variable auf True gesetzt , fast unmittelbar nach Tastendruck, das zweite True kommt vom Aktor und kommt sage und schreibe 2,8 bis 2,9 Sekunden nach dem True des Tasters.

                                  Ich werde also heute Abend testen und dann wieder berichten.

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

                                    @schonwiederich
                                    Log-Ausgaben bitte in Code tags posten!
                                    Man kann nicht unterscheiden, welcher Debug-Baustein ausgibt. Deshalb bitte um einen Text ergänzen.

                                    Bild_2021-10-05_143515.png

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

                                      @paul53

                                      15:41:26.118	info	javascript.0 (485) script.js.common.Xiaomi_Schalter.Bewegungsmelder_Bad2: Tastertrue
                                      15:41:28.930	info	javascript.0 (485) script.js.common.Xiaomi_Schalter.Bewegungsmelder_Bad2: Aktortrue
                                      15:41:39.499	info	javascript.0 (485) script.js.common.Xiaomi_Schalter.Bewegungsmelder_Bad2: Aktorfalse
                                      15:41:41.800	info	javascript.0 (485) script.js.common.Xiaomi_Schalter.Bewegungsmelder_Bad2: Tastertrue
                                      15:41:44.952	info	javascript.0 (485) script.js.common.Xiaomi_Schalter.Bewegungsmelder_Bad2: Aktortrue
                                      15:41:46.239	info	javascript.0 (485) script.js.common.Xiaomi_Schalter.Bewegungsmelder_Bad2: Tastertrue
                                      15:41:47.877	info	javascript.0 (485) script.js.common.Xiaomi_Schalter.Bewegungsmelder_Bad2: Tastertrue
                                      15:41:48.870	info	javascript.0 (485) script.js.common.Xiaomi_Schalter.Bewegungsmelder_Bad2: Tastertrue
                                      15:41:49.861	info	javascript.0 (485) script.js.common.Xiaomi_Schalter.Bewegungsmelder_Bad2: Tastertrue
                                      15:41:55.036	info	javascript.0 (485) script.js.common.Xiaomi_Schalter.Bewegungsmelder_Bad2: Aktorfalse
                                      

                                      Jetzt nochmal zur besseren Nachvollziehbarkeit 🙂
                                      Vielen Dank !

                                      Nachtrag: Die mehrfachen Tastertrue einträge sind klicks nacheinander, wenn der Zustand bereits "AN" war.

                                      S 1 Reply Last reply Reply Quote 0
                                      • S
                                        schonwiederich @schonwiederich last edited by

                                        Kurzer Zwischenstand: Bisher kein unerwünschtes Verhalten mehr.
                                        Teste weiter......

                                        S 1 Reply Last reply Reply Quote 0
                                        • S
                                          schonwiederich @schonwiederich last edited by

                                          @schonwiederich
                                          Lange beobachtet.

                                          Alles funktioniert einwandfrei.

                                          DANKE

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

                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          544
                                          Online

                                          32.3k
                                          Users

                                          81.1k
                                          Topics

                                          1.3m
                                          Posts

                                          5
                                          37
                                          2328
                                          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