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. Probleme mit Skript Licht an nach Erkennung Bewegung

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    343

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.6k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.5k

Probleme mit Skript Licht an nach Erkennung Bewegung

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
2 Beiträge 2 Kommentatoren 807 Aufrufe
  • Ä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.
  • H Offline
    H Offline
    HKF8770
    schrieb am zuletzt editiert von
    #1

    Ich habe ein Skript welches bei Erkennung von Bewegungen hier das Licht für 600 Sekunden einschaltet.

    Funktionier soweit ganz gut. Doch wenn ich länger im Raum bin uns der Bewegungsmelder erkennt mich immer wider und Motion ist immer true, wird das Lich aber nicht erneut eingeschaltet.

    Was ist da falsch in Skript dass dies nur beim Schalten von false auf true reagiert.

    Sollte auch reagierten wenn True erneut bestätigt wird und dann Licht erneut mit 600 Sekunden angeht

    on('hm-rpc.0.KEQ0236715.1.MOTION', function (obj) {                                                                      // Bewegung überwachen
        log("---> Licht - Gallerie - ausgelöst durch Bewegungsmelder............","info")
        var bewegung = getState('hm-rpc.0.KEQ0236715.1.MOTION');
        var helligkeit = getState('hm-rpc.0.KEQ0236715.1.BRIGHTNESS');
            if (obj.newState.val === true) {                                                                                    // Bewegung true 
            setState("hm-rpc.0.KEQ0801517.1.ON_TIME"/*LED Galerie ein - aus.ON_TIME*/, 600);                                // 600s Einschaltdauer
            setState("hm-rpc.0.KEQ0801517.1.STATE"/*LED Galerie ein - aus.STATE*/, true);                                   // schalte Lampe an
            log("---> Licht - Gallerie an für 600 Sekunden............" ,"info");
            } else { 
            log("---> Licht - Licht zu hell um anzuschalten da Helligkeit: " + helligkeit + " %"  ,"info");  
        }
    });
    
    

    Freddy

    1 Antwort Letzte Antwort
    0
    • P Offline
      P Offline
      pix
      schrieb am zuletzt editiert von
      #2

      Hallo Freddy,

      dein Subscribe ist die Kurzschreibweise. Lang geschrieben ist das das gleiche:

      on({id: 'hm-rpc.0.KEQ0236715.1.MOTION',
          change: 'ne' }, function (obj) {   
      
      

      Das bedeutet erstmal, dass das Skript nur gestartet wird, wenn der Wert sich ändert. Weiter unten fragst du dann ab, ob der neue Wert true ist (also nach einer Änderung, d.h. er muss vorher false sein). Bei den Variablen helligkeit und bewegung fehlt noch das .val.

      Probier mal so:

      on({id: 'hm-rpc.0.KEQ0236715.1.MOTION',
          change: 'any' 
      }, function (obj) {                                                                           // Bewegung überwachen
          var bewegung = getState('hm-rpc.0.KEQ0236715.1.MOTION').val;                              // hier aber auch obj.newState.val
          var helligkeit = getState('hm-rpc.0.KEQ0236715.1.BRIGHTNESS').val;
          if (obj.newState.val === true) {                                                          // Bewegung true                                    
              log("---> Licht - Gallerie - ausgelöst durch Bewegungsmelder............","info")
              if (helligkeit < 50) {                                                                // Helligkeitsgrenzwert bei Bedarf ändern
                  setState("hm-rpc.0.KEQ0801517.1.ON_TIME"/*LED Galerie ein - aus.ON_TIME*/, 600);  // 600s Einschaltdauer
                  setState("hm-rpc.0.KEQ0801517.1.STATE"/*LED Galerie ein - aus.STATE*/, true);     // schalte Lampe an
                  log("---> Licht - Gallerie an für 600 Sekunden............" ,"info");
              } else { 
                  log("---> Licht - Licht zu hell um anzuschalten da Helligkeit: " + helligkeit + " %"  ,"info");  // Helligkeitswert vom Melder sind keine Prozent
              }
          }
      });
      
      

      Gruß

      Pix

      ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

      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

      754

      Online

      32.5k

      Benutzer

      81.7k

      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