Modul für "Human Centric Lighting"

Begonnen von The Grue, 24 Februar 2021, 20:21:49

Vorheriges Thema - Nächstes Thema

The Grue

Servus zusammen,

ich würde gerne mein erstes FHEM-Modul zur Diskussion stellen: Hcl für "Human Centric Lighting". Es dient der Ansteuerung von "tunable white" - Leuchten um den Farbtemperaturzyklus der Sonne von warmweiss am Morgen, kaltweiss am Mittag und wieder warmweiss am Abend zu simulieren.

Da es mein erstes FHEM-Modul ist habe ich wohl jede Menge Anfängerfehler gemacht. Ich würde mich enorm freuen, wenn die Profis das mal anschauen könnten und Hinweise geben. Der Code funktioniert und ist in meinem Homeoffice so im Einsatz:


Internals:
   BEGIN      07:00
   DEF        Office.Lightbar.* 07:00 19:00
   DEVICE     Office.Lightbar.*
   END        19:00
   FUUID      60369c3c-f33f-39ae-f527-f9cc3323200af937
   INTERVAL   900
   NAME       Office.HCL
   NOTIFYDEV  global
   NR         549
   NTFY_ORDER 50-Office.HCL
   STATE      inactive
   TYPE       Hcl
   READINGS:
     2021-02-24 20:02:20   state           inactive
Attributes:
   alias      Büro: Human Centric Lighting
   begin      07:02
   end        17:49
   icon       weather_sun
   room       Maschinenraum
   userattr   lightSceneParamsToSave lightSceneRestoreOnlyIfChanged:1,0


cu
Markus

Jamo

Hallo Markus,
ich habe nur HUE Lampen, die koennen kein wcrgb. Gibts da eine Lösung? Googlen hat mir nicht geholfen, man finden unter Human Centric Lighting nur deine beitraege hier im Forum, aber evtl weisst Du was?
Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/ConbeeII, FB, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack

The Grue

Hallo Jamo,

Zu HCL findet man schon was im Netz, mindestens das hier bei Wikipedia: https://www.wikiwand.com/de/Human_Centric_Lighting

Im Prinzip kann man das mit allen Leuchten bei denen man die Farbtemperatur einstellen kann verwenden. Ich hab' hier halt nur Z-Wave, aber wenn Du mir sagen kannst wie man die Farbtemperatur bei den HUEs setzen kann, versuche ich da was.

cu

Jamo

Hallo Markus,
ja den link hatte ich auch gesehen, aber ich habe die Rechnung nicht verstanden wie Du die Farbtemperatur über die Zeit ermittelst, bzw was dann für Hue die beste morgendliche und die abendliche Farbtemperatur ist. Also im Prinzip die Umrechnung zwischen wcrgb (ZWAVE) und ct/color (Hue).

Bei den Hue, wo man die Farbtemperatur einstellen kann, ist das entweder mit
set HueDevice color <wert> einstellen, mit 2000 (warmweiss) <= wert <= 6500 (kaltweiss) (also insgesamt 4500 Schritte)
set HueDevice ct    <wert> einstellen, mit 155 (kaltweiss)  <= wert <= 500(warmweiss)  (insgesamt 355 Schritte)

Rein Optisch entspricht color 2000 der Farbe von ct 155, und die color 6500 der warmen Farbe ct 500.

Hilft das?
Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/ConbeeII, FB, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack

binford6000

Hallo Markus,
erst mal Gratulation zum ersten FHEM-Modul! Mit Doku und allem Pipapo!  :)

Das Thema HCL interessiert mich auch sehr. Momentan mache ich das mit dem Code aus
https://forum.fhem.de/index.php/topic,106739.0.html

Das schöne daran ist, dass es allgemeingültig für alle Leuchtmittel verwendet werden kann.
Bei mir steuert Deconz das Licht im Flur und Klo (keine Fenster) via Bewegungsmelder. Da Deconz noch nicht
HCL kann, setze ich 5 Sekunden nachdem Bewegung erkannt wurde den ct Wert aus dem Dummy
an allen Lampen. Der dummy sieht so aus:

Internals:
   FUUID      5e552e79-f33f-0308-6e29-6040e520376c8a8f
   FVERSION   98_dummy.pm:0.206650/2019-12-06
   NAME       hcl.dum
   NR         257
   STATE      CT: 3001 PCT: 20
   TYPE       dummy
   READINGS:
     2021-02-21 18:25:11   ct              3001
     2021-02-21 18:25:11   pct             20
     2021-02-21 07:45:59   state           Volume 0
Attributes:
   alias      Human Centric Lighting
   group      HCL
   icon       weather_sun
   room       20_Licht
   stateFormat CT: ct PCT: pct


Vielleicht wäre es ja eine Überlegung wert, dein Modul so zu erweitern.
Also dass die ct-Werte allgemein bereitgestellt werden. Am Ende noch in Mireds und Kelvin  :)

VG Sebastian

Jamo

Hallo Sebastian, Markus,
hcl() aus https://forum.fhem.de/index.php/topic,106739.0.html liefert die color Werte zwischen 2000 und 6500.
Um color in ct umzurechnen, muss man ct=int(1000000/color) anwenden
color ist der Wert in Kelvin, ct ist die Farbtemperatur in "Megakelvin Reziprok", also 2700 Kelvin sind 370 ct, 4000 Kelvin sind 250 ct.
Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/ConbeeII, FB, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack

binford6000

Zitat von: Jamo am 27 Februar 2021, 22:40:00
Hallo Sebastian, Markus,
hcl() aus https://forum.fhem.de/index.php/topic,106739.0.html liefert die color Werte zwischen 2000 und 6500.
Um color in ct umzurechnen, muss man ct=int(1000000/color) anwenden
color ist der Wert in Kelvin, ct ist die Farbtemperatur in "Megakelvin Reziprok", also 2700 Kelvin sind 370 ct, 4000 Kelvin sind 250 ct.

Unsere HUEs können jedenfalls beides:
Zitatct <value> [<ramp-time>]
set colortemperature to <value> in mireds (range is 154-500) or kelvin (range is 2000-6493).

Jamo

Hallo Sebastian,
ja, hatte ich gesehen. Meine Hue steuere ich über den ct Wert, und es hat mich einige google Zeit gekostet, bis ich rausgefunden hatte, wie die Umrechnung ist, erst hatte ich angenommen es waere umgekehrt linear, aber das hat dann nicht funktioniert.
Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/ConbeeII, FB, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack

Prof. Dr. Peter Henning

Ich betreibe so etwas auch seit vielen Jahren - allerdings hatte ich bisher keine Notwendigkeit gesehen, das in ein Modul zu gießen. So etwa ist m.E. eher etwas für eine Helperfunktion, die man beliebig einbauen kann - so etwa wie die pahcolor-Routinen, die im Wiki beschrieben sind.

Zum Thema des Einflusses der Farbtemperatur auf das Wohlbefinden gibt es einen längeren Abschnitt in meinen "SmartHome Hacks" von 2016, wir haben auch entsprechende Forschungsergebnisse.

Um das ganz kurz und klar zu sagen: So etwas wie einen "besten" Verlauf der Farbtemperatur gibt es nicht - es kommt immer darauf an, was man damit erreichen (bzw. unterstützen) will.

Ich schlage außerdem vor, in diesem Thread einheitliche Begrifflichkeiten zu verwenden - "warme" Farben haben nämlich die geringere Farbtemperatur.

LG

pah