Autor Thema: Lichtsteuerung mit DOIF.... ist eventuell besser möglich?  (Gelesen 107 mal)

Offline hene42

  • New Member
  • *
  • Beiträge: 23
Hallo,

ich habe mir folgendes DOIF zusammen gestellt...

Zitat
([HM_A5A502:digitalInput] eq "1"
   and [KLV_Lichtautomatik_Speicher:state] eq "off"
   and [HUEDevice16:state] eq "off")
      (set HUEDevice16 ct 366 : bri 254)
      (set KLV_Lichtautomatik_Speicher on)
      
DOELSEIF ([HM_A5A502:digitalInput] eq "1"
         and [KLV_Lichtautomatik_Speicher:state] eq "on")
            (delete at_KLV_Licht_aus)
            (delete at_KLV_Lichtautomatik_Speicher)
            (set KLV_Lichtautomatik_Speicher on)
            (set HUEDevice16 ct 366 : bri 254)
            
DOELSE ([HM_A5A502:digitalInput] eq "0"
         and [KLV_Lichtautomatik_Speicher:state] eq "on")
            (define at_KLV_Lichtautomatik_Speicher at +00:00:20 set KLV_Lichtautomatik_Speicher off)
            (define at_KLV_Licht_aus at +00:00:20 set HUEDevice16 off)

Nun stellt sich mir die Frage geht das auch besser, einfacher oder ist das okay so?

Ich habe einen Bewegungsmelder welcher das Licht im Raum einschalten soll wenn es aus ist, das Licht soll wenn keine Bewegung mehr vorhanden ist nach ca. 20 sek. aus gehen.
Jetzt habe ich das ganze nach obigen Beispiel angelegt und es geht auch soweit, nur ist es eventuell besser das alles auch ohne die kurz angelegten "at" zu verwirklichen,
oder ist das mit den "at" gar nicht so schlimm und soll ich es einfach so lassen?

Ich habe auch noch ein weiteres DOIF mit noch etwas mehr Angaben, könnten mir die Profis sagen ob ich es da zu Umständlich mache oder ob das so Okay ist....

Zitat
([HM_A5A503:digitalInput] eq "1"
   and [HM_A5A503:brightness] < 4
   and [SZ_Lichtautomatik_Speicher:state] eq "off"
   and [SZ_Bewegungsmelder:state] eq "on"
   and [HUEDevice10:state] eq "off")
      (set HUEDevice10 ct 366 : bri 254)
      (set SZ_Lichtautomatik_Speicher on)
      
DOELSEIF ([HM_A5A503:digitalInput] eq "1"
         and [SZ_Lichtautomatik_Speicher:state] eq "on")
            (delete at_SZ_Licht_aus)
            (delete at_SZ_Lichtautomatik_Speicher)
            (set SZ_Lichtautomatik_Speicher on)
            (set HUEDevice10 ct 366 : bri 254)
            
DOELSE ([HM_A5A503:digitalInput] eq "0"
         and [SZ_Lichtautomatik_Speicher:state] eq "on")
            (define at_SZ_Lichtautomatik_Speicher at +00:00:30 set SZ_Lichtautomatik_Speicher off)
            (define at_SZ_Licht_aus at +00:00:30 set HUEDevice10 off)

Für eventuelle Rückfragen stehe ich gern zur Verfügung...

Danke
hene42

Offline laberlaib

  • Jr. Member
  • **
  • Beiträge: 87
Antw:Lichtsteuerung mit DOIF.... ist eventuell besser möglich?
« Antwort #1 am: 16 August 2019, 14:04:08 »
Ich habe so etwas ähnliches mit
wait
von DOIF. Da wird dann die Ausführung verzögert und wenn die Bedinung nicht mehr war ist weil sich was ändern gar nicht erst ausgeführt.
--
FHEM in einer VM auf Ubuntu Server 16.04 LTS
Steckdosen (HM, Sonoff), Rollläden (HM), Balkonbewässerung (HM, MYSENSORS), Anwesenheit (G-Tags) (und vllt bald Sprachsteuerung (Snips))

Online Per

  • Hero Member
  • *****
  • Beiträge: 1523
Antw:Lichtsteuerung mit DOIF.... ist eventuell besser möglich?
« Antwort #2 am: 16 August 2019, 15:01:38 »
a: wait statt at (dadurch wird die config nicht geändert), zur Not sleep nehmen
b: DUIF cmd abfragen statt Dummy Variable setzen

Für Lichtsteuerung i.V. Bewegungsmeldern mit wait dürfte es etliche Beispiele im Forum geben. Dürfte ein Zweizeiler werden (+ 1 Zeile für das Attribut wait).