Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. Bewegungsmelder schaltet Licht an für bestimmt Zeit

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    16
    1
    277

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    4.6k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.3k

Bewegungsmelder schaltet Licht an für bestimmt Zeit

Geplant Angeheftet Gesperrt Verschoben Blockly
26 Beiträge 6 Kommentatoren 2.1k Aufrufe 6 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • paul53P paul53

    @ParaChris82 sagte:

    Macht es bei so "kleinen" Skripten einen unterschied außer dass man eben mehr zusammen klicken muss bei Blockly?

    Der Unterschied im Ressourcen-Verbrauch ist minimal bzw. bei einem stark optimierenden Compiler nicht vorhanden. Ich würde allerdings nicht auf die Idee kommen, einen booleschen Wert, der nur false oder true liefert, auf true zu prüfen.

    J Offline
    J Offline
    jensven
    schrieb am zuletzt editiert von
    #17

    @paul53 said
    Ich würde allerdings nicht auf die Idee kommen, einen booleschen Wert, der nur false oder true liefert, auf true zu prüfen.

    Weil ?

    paul53P 1 Antwort Letzte Antwort
    0
    • xadoxX xadox

      Vielen Dank für die ganzen Tipps. So langsam wird es klarer. Aber ich muss erstmal verstehen was ihr da geschrieben habt.
      Momentan habe ich es nun so:
      97bca9e0-39ba-42ad-a154-46a36f759f27-image.png
      Allerdings geht das Licht nicht mehr aus.

      ParaChris82P Offline
      ParaChris82P Offline
      ParaChris82
      schrieb am zuletzt editiert von
      #18

      @xadox Wie lange hast du gewartet? Der Sensor muss zuerst False melden , das kann bei manchen Sensoren schon etwas dauern. Dauer nicht wundern wenn statt 30 Sek mal 60 Sek werden. Teste es doch mal mit einem kleineren Wert. Geh komplett aus den Raum und warte

      xadoxX 1 Antwort Letzte Antwort
      0
      • J jensven

        @paul53 said
        Ich würde allerdings nicht auf die Idee kommen, einen booleschen Wert, der nur false oder true liefert, auf true zu prüfen.

        Weil ?

        paul53P Offline
        paul53P Offline
        paul53
        schrieb am zuletzt editiert von paul53
        #19

        @jensven sagte:

        Weil ?

        Weil das Ergebnis eines jeden Vergleiches true oder false ist. Das liefert der boolesche Wert bereits.

        Blockly_temp.JPG

        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

        1 Antwort Letzte Antwort
        0
        • xadoxX Offline
          xadoxX Offline
          xadox
          schrieb am zuletzt editiert von xadox
          #20

          Würde sowas ebenfalls funktionieren:
          aade017b-4fca-4bd1-90a1-37b25cdba204-image.png
          Falls Schalter auf True prüfe ob Bewegung vorhanden ist und schalte Schalter off falls nicht.

          AsgothianA 1 Antwort Letzte Antwort
          0
          • xadoxX xadox

            Würde sowas ebenfalls funktionieren:
            aade017b-4fca-4bd1-90a1-37b25cdba204-image.png
            Falls Schalter auf True prüfe ob Bewegung vorhanden ist und schalte Schalter off falls nicht.

            AsgothianA Offline
            AsgothianA Offline
            Asgothian
            Developer
            schrieb am zuletzt editiert von
            #21

            @xadox

            Nein.

            Screenshot 2020-12-01 at 14.42.13.png

            Dieser Teil wird NIE so funktionieren wie du das erwartest.

            Innerhalb eines Bausteins aus dem "Trigger" Bereich ist generell KEIN weiterer "Falls Objekt" Baustein aus dem Trigger Bereich sinnvoll.

            Du kannst statt dessen einfach einen weiteren "falls" Baustein aus dem Logik Bereich nehmen, und darin den Baustein "wert von Objekt" aus dem System Bereich abfragen.

            A.

            ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
            "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

            xadoxX 1 Antwort Letzte Antwort
            0
            • AsgothianA Asgothian

              @xadox

              Nein.

              Screenshot 2020-12-01 at 14.42.13.png

              Dieser Teil wird NIE so funktionieren wie du das erwartest.

              Innerhalb eines Bausteins aus dem "Trigger" Bereich ist generell KEIN weiterer "Falls Objekt" Baustein aus dem Trigger Bereich sinnvoll.

              Du kannst statt dessen einfach einen weiteren "falls" Baustein aus dem Logik Bereich nehmen, und darin den Baustein "wert von Objekt" aus dem System Bereich abfragen.

              A.

              xadoxX Offline
              xadoxX Offline
              xadox
              schrieb am zuletzt editiert von
              #22

              @Asgothian Also eher so:
              eac9b3ef-5a33-44b9-a281-a6b5f881071d-image.png

              1 Antwort Letzte Antwort
              0
              • xadoxX Offline
                xadoxX Offline
                xadox
                schrieb am zuletzt editiert von
                #23

                Leider funktioniert das Script so auch nicht.
                Das Licht bleibt dauerhaft an. Auch nach 15 Minuten.

                AsgothianA 1 Antwort Letzte Antwort
                0
                • xadoxX xadox

                  Leider funktioniert das Script so auch nicht.
                  Das Licht bleibt dauerhaft an. Auch nach 15 Minuten.

                  AsgothianA Offline
                  AsgothianA Offline
                  Asgothian
                  Developer
                  schrieb am zuletzt editiert von
                  #24

                  @xadox das ist durchaus logisch.

                  Was Du machst:

                  Du triggerst die Lampe. Wann immer der Schalter in der Küche auf aus geht (Wert ist falsch) wartest Du 6 Minuten und dann machst Du die Lampe aus.
                  Wenn der Schalter auf an geht (wert ist wahr) schaust du nach ob der BWM an ist, wenn ja dann stoppst du einen timeout.

                  Was du willst:

                  • Einen Trigger auf den Schalter - der soll die Lampe immer an und aus schalten.
                  • Einen Trigger auf den BWM - der soll die Lampe ausschalten wenn keiner mehr in der Küche ist.

                  Wie das genau aussehen kann ist so ohne weiteres nicht zu sagen, da nicht klar ist

                  • was sich hinter der Objekt ID "Power" versteckt
                  • was sich hinter der Objekt ID "Switch" versteckt
                  • Welche Werte der DP "EG IR (Alarm Status)" annehmen kann.
                  • Wie der Schalter funktioniert. (Ist das ein Schalter, der 2 Zustände annehmen kann, oder ein Taster der bei jeder Betätigung einmal kurz auf einen Wert springt wird.

                  Jeder Vorschlag im Blockly ist jetzt stochern im dunkeln. Entscheidend ist das du die Events voneinander getrennt behandelst, und lokal angelegte Variablen dazu benutzt Informationen auszutauschen.

                  Das kann Z.Bsp. so aussehen:
                  In der Variablen "LampWasSwitchedOn" wird geschaut ob jemand die Lampe mit dem Taster explizit ein geschaltet hat. Wenn das der Fall ist, dann ist der BWM ohne Funktion.
                  Ansonsten steuert der BWM die Lampe (an wenn jemand erkannt wird, aus 30 Sekunden nachdem niemand mehr erkannt wurde.

                  Screen Shot 2020-12-02 at 12.26.08 .png

                  A.

                  ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
                  "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

                  1 Antwort Letzte Antwort
                  0
                  • ParaChris82P ParaChris82

                    @xadox Wie lange hast du gewartet? Der Sensor muss zuerst False melden , das kann bei manchen Sensoren schon etwas dauern. Dauer nicht wundern wenn statt 30 Sek mal 60 Sek werden. Teste es doch mal mit einem kleineren Wert. Geh komplett aus den Raum und warte

                    xadoxX Offline
                    xadoxX Offline
                    xadox
                    schrieb am zuletzt editiert von
                    #25

                    @ParaChris82 Auch nach 30 Minuten, ohne das der Bewegungsmelder auslöst, geht das licht leider nicht aus.

                    1 Antwort Letzte Antwort
                    0
                    • xadoxX Offline
                      xadoxX Offline
                      xadox
                      schrieb am zuletzt editiert von xadox
                      #26

                      Ich habe nun etwas umorganisiert. Ich nutzte nicht mehr die Bewegungsmelder meiner Alarmanlage sondern einen separaten Xiaomi Bewegungssensor der über RaspBee 2 & deConz Adapter angesteuert wird.

                      Hier das angepasste Script:
                      f1243c2b-82ec-40e3-9548-d7dd4f318331-image.png

                      var timeout;
                      on({id: 'deconz.0.Sensors.3.presence', change: "ne"}, function (obj) {
                        var value = obj.state.val;
                        var oldValue = obj.oldState.val;
                        if ((obj.state ? obj.state.val : "") && compareTime("15:00", "9:00", "between")) {
                          (function () {if (timeout) {clearTimeout(timeout); timeout = null;}})();
                          setState("shelly.0.SHSW-25#483FDA828AE1#1.Relay0.Switch"/*Switch*/, true);
                        } else {
                          timeout = setTimeout(function () {
                            setState("shelly.0.SHSW-25#483FDA828AE1#1.Relay0.Switch"/*Switch*/, false);
                            setState("shelly.0.SHSW-25#483FDA828AE1#1.Relay1.Switch"/*Switch*/, false);
                          }, 10000);
                        }
                      });
                      

                      Das Script funktioniert. Ich frage mich nur ob es so richtig ist oder ggf. optimiert werden sollte?

                      Wie bekomme ich es des Weiteren hin, dass es nur zwischen Sonnenuntergang und Sonnenaufgang auslöst?
                      Wenn ich meine Momentane Zeit austausche durch folgendes funktioniert es nicht:
                      d4d0fae2-9857-4e44-a03d-f9b356c8d686-image.png

                      Edit:
                      Funktioniert so wohl nicht da dies unterschiedliche Tage sind.
                      Ich habe es nun mal auf folgendes umgeändert und schaue nach Sonnenuntergang ob es funktioniert:
                      a4ca0b22-ac79-4e9c-963e-5361b0d48f46-image.png

                      1 Antwort Letzte Antwort
                      0
                      Antworten
                      • In einem neuen Thema antworten
                      Anmelden zum Antworten
                      • Älteste zuerst
                      • Neuste zuerst
                      • Meiste Stimmen


                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      275

                      Online

                      32.7k

                      Benutzer

                      82.5k

                      Themen

                      1.3m

                      Beiträge
                      Community
                      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                      ioBroker Community 2014-2025
                      logo
                      • Anmelden

                      • Du hast noch kein Konto? Registrieren

                      • Anmelden oder registrieren, um zu suchen
                      • Erster Beitrag
                        Letzter Beitrag
                      0
                      • Home
                      • Aktuell
                      • Tags
                      • Ungelesen 0
                      • Kategorien
                      • Unreplied
                      • Beliebt
                      • GitHub
                      • Docu
                      • Hilfe