Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. BWM Lichtsteuerung mit Helligkeitserkennung

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    BWM Lichtsteuerung mit Helligkeitserkennung

    This topic has been deleted. Only users with topic management privileges can see it.
    • Asgothian
      Asgothian Developer @Jan1 last edited by

      @Jan1 sagte in BWM Lichtsteuerung mit Helligkeitserkennung:

      @chrbo80
      Da fehlt ein stop timeout direkt vor dem ersten timeout, dann kannst Dir in der ODER dir erneute Abfrage der beiden Trigger sparen, wird ja bereits im Trigger erledigt.

      Das stimmt so nicht. Die Abfrage der BWM im Falls kann nicht entfallen, da ja auf "ändern" des Datenpunktes getriggert wird, also auch wenn ein BWM von "occupied" auf "unoccupied" geht. Man kann das vereinfachen in dem direkt mit dem "wert" Baustein (Zu finden bei den Trigger Bausteinen, in der Auswahlliste steht meines Wissens "object ID" drin, denn kann man auf "wert" umstellen) der Wert des BWM genommen wird der ausgelöst hat - das ist aber weniger einfach erklärt.
      Ein "stop timeout" ist nicht unbedingt notwendig, da

      • ein einzelner BWM nicht 2 mal innerhalb von 100 ms auslösen kann
      • es unwahrscheinlich ist, das beide BWM innerhalb von 100 ms auslösen. Und selbst wenn das passiert wird schlimmstenfalls die Lampe doppelt eingeschaltet.

      Es ist allerdings guter Stil, grundsätzlich den Timeout zu löschen bevor man den startet.

      Den Timeout zur Erkennung dr Helligkeit kannst eigentlich komplett weglassen, da ich die Dinger auch habe und die Erkennung so schnell geht, dass es nicht wirklich nötig ist. Dann haben die Dinger auch eine Verzögerung von 10 Sekunden drin, in der sie keine neue Bewegung erkennen. Die erkannte Bewegung musst auch mit einer Angabe in den DPs wiedr nach einer gewissen Zeit zurück setzten, sonst bleibt das auf true und es funktioniert nur ein mal.

      Hier der DP in rot:
      56c3b68e-4d19-44ec-b095-a470ff8d8e40-grafik.png

      Das gilt so nur wenn die BWM am Zigbee-Stick hängen. Ist aber aus dem Script oben nicht zu ersehen. Sie können auch am Xiaomi Gateway oder Deconz Gateway hängen. Die Verzögerung bei der Erkennung ist je nach dem wie sie eingebunden sind unterschiedlich - aber immer vorhanden. Ob da die 20 Sekunden ausreichen damit das Licht an bleibt wenn jemand sich im Treppenhaus bewegt weiss ich nicht.

      J 1 Reply Last reply Reply Quote 0
      • J
        Jan1 @Asgothian last edited by

        @Asgothian
        Das mit Wert aus dem Trigger funktioniert doch nur bei einem Trigger, der ein Objekt enthält, ober bezieht sich dann Wert auf jedes Objekt im Trigger? Wobei ich einige Scripte laufen habe, bei denen ich von dem ausgehe was ich oben schon geschrieben habe und der Trigger eben die ODER Auswertung übernimmt. Das läuft bei mir wie gewünscht.
        Der Einwand zum timeout ist gerechtfertigt, es ist sehr unwahrscheinlich, dass der doppelt läuft. Wobei Du ja auch gleich mein Hintergedanken mit in Deiner Antwort drin hast und man sich das am besten einfach so angewöhnt.

        Ja der TE schreibt nicht wie er eingebunden hat, da die verwendeten DP allerdings den entsprechen die ich über Zigbee habe, liegt der Verdacht nahe 😉

        T 1 Reply Last reply Reply Quote 0
        • T
          ticaki Developer @Jan1 last edited by ticaki

          @Jan1 sagte in BWM Lichtsteuerung mit Helligkeitserkennung:

          @Asgothian
          Das mit Wert aus dem Trigger funktioniert doch nur bei einem Trigger, der ein Objekt enthält, ober bezieht sich dann Wert auf jedes Objekt im Trigger?

          Der Trigger übergibt ein Objekt das zu einem Triggerereignisse die entsprechende ID und die ganzen restlichen Informationen enthält. Also Wert enthält immer den Wert des auslösenden Objektes.

          EDIT: Wert ist keine Verknüpfung der benannten Objekte.

          Zu der Aussage mit den 100ms sag ich nur Murphy 🙂

          J 1 Reply Last reply Reply Quote 0
          • J
            Jan1 @ticaki last edited by

            @ticaki
            Sehr gute Erklärung und da kann ich doch glatt einige Scripte gleich mal optimieren. Da war ich mir nie sicher, auf welches Objekt (bei mehrfach Trigger), sich nun der Wert bezieht.

            dslraser 1 Reply Last reply Reply Quote 0
            • dslraser
              dslraser Forum Testing Most Active @Jan1 last edited by

              @Jan1 sagte in BWM Lichtsteuerung mit Helligkeitserkennung:

              Da war ich mir nie sicher, auf welches Objekt (bei mehrfach Trigger), sich nun der Wert bezieht.

              Ich dachte auch immer das bei mehreren Triggern "Wert" so nicht funktioniert, jedenfalls wurde das hier im Forum oft so geschrieben. Probiert und geht. Ich habe mal 3 Steckdosen als Trigger genommen und dann nur eine davon eingeschaltet. Wieder was gelernt....

              Bildschirmfoto 2020-04-21 um 10.52.00.png

              21.4.2020, 10:51:07.425	[info ]: javascript.0 (4218) Start javascript script.js.18_Test.Wert
              21.4.2020, 10:51:07.434	[info ]: javascript.0 (4218) script.js.18_Test.Wert: registered 1 subscription and 0 schedules
              21.4.2020, 10:51:23.956	[info ]: javascript.0 (4218) script.js.18_Test.Wert: Name: Tischdeko.STATE Wert: true
              
              J 1 Reply Last reply Reply Quote 0
              • J
                Jan1 @dslraser last edited by

                @dslraser
                Bisschen aufpassen muss man aber schon, da wenn eine andere ausgeht, wird alles ausgeschaltet, da nur der geänderte Wert der Trigger ist und wenn die andern noch auf true stehen, wird eben trotzdem ausgeschaltet. Ist doch nicht ganz so einfach und wie oben schon geschrieben wurde, ist der Trigger an sich nicht wirklich eine ODER Funktion, da der Rest nicht berücksichtigt wird, sondern eben nur das Objekt welches sich ändert 😉

                dslraser 1 Reply Last reply Reply Quote 0
                • dslraser
                  dslraser Forum Testing Most Active @Jan1 last edited by

                  @Jan1
                  genau

                  J 1 Reply Last reply Reply Quote 0
                  • J
                    Jan1 @dslraser last edited by

                    @dslraser
                    Wenn das keine Rolle spielt und gewünscht ist, passt das 🙂

                    T 1 Reply Last reply Reply Quote 0
                    • T
                      ticaki Developer @Jan1 last edited by ticaki

                      @Jan1
                      Eine ODER/UND Verknüpfung zu erzeugen ist relativ einfach möglich. Einen Zähler der beim Start initialisiert wird in dem jedes True eines Datenpunktes den Zähler erhöht und im Falls Block (geändert) wird dieser Zähler erhöht oder verringert wenn sie eine Objekt verändert.
                      Zähler > 0 -> ODER
                      Zähler == Anzahl Objekte -> UND

                      J 1 Reply Last reply Reply Quote 0
                      • J
                        Jan1 @ticaki last edited by

                        @ticaki
                        Ja, aber noch einfacher ist es eben ein FALLS mit UND/ODER Block dran zu hängen. Es ging jetzt etwas OT um die genaue Funktionsweise des "multi" Trigger und das ist nun geklärt.

                        1 Reply Last reply Reply Quote 0
                        • C
                          chrbo80 last edited by

                          hi, Danke für Eure Hilfe. Ich komme klar 🙂 Zu Eurer Info: Ich habe die BWM über zigbee eingebunden, sie sind gelötet und stehen auf "occupancy timeout: 5 sek". Das klappt auch, heißt nach 5 Sekunden ist true wieder auf false...

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

                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          844
                          Online

                          31.8k
                          Users

                          80.0k
                          Topics

                          1.3m
                          Posts

                          blockly
                          5
                          14
                          448
                          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