![]() |
AW: LED Lichtmischung?
Wenn man von allen 4 LEDs das Leistungsspektrum hätte dann könnte man diese doch addieren.
Jedes Einzelspektrum nehmen und mit einem Faktor zwischen 0% bis 100% multiplizieren. Die Einzelspektren sehen ungefähr so aus: ![]() Man nimmt ein
Delphi-Quellcode:
um das Gesamtspektrum zwischenzuspeichern.
array[350..780] of double
Dann braucht man das Empfindlichkeitsspektrum des menschlichen Auge: ![]() Für jedes der 3 Zäpfchenarten berechnet man die wahrgenommene Intensität. Diese 3 Intensitäten entsprechen dem Farb- und Helligkeitseindruck den das Auge bekommt. Dann nimmt man das Emissionsspektrum eines schwarzen Körper bei verschiedenen (Farb-)Temperaturen. Das kann man auch über eine Formel erzeugen: ![]() Für jede Temperatur berechnet man die Intensität der 3 Zäpfchenarten und speichert diese als Referenzwerte. Um mit den 4 LEDs eine Farbtemperatur von z.B. 4000K zu mischen muss man nur so lange an den 4 Leistungsparametern rumspielen und berechnen was die Zäpfchen sehen würden bis die abgespeicherten Referenzwerte getroffen werden. Viel Spass beim Programmieren. |
AW: LED Lichtmischung?
hab das was gefunden...
Code:
Muss ich mal testen...
void hsi2rgbw(float H, float S, float I, int* rgbw) {
int r, g, b, w; float cos_h, cos_1047_h; H = fmod(H,360); // cycle H around to 0-360 degrees H = 3.14159*H/(float)180; // Convert to radians. S = S>0?(S<1?S:1):0; // clamp S and I to interval [0,1] I = I>0?(I<1?I:1):0; if(H < 2.09439) { cos_h = cos(H); cos_1047_h = cos(1.047196667-H); r = S*255*I/3*(1+cos_h/cos_1047_h); g = S*255*I/3*(1+(1-cos_h/cos_1047_h)); b = 0; w = 255*(1-S)*I; } else if(H < 4.188787) { H = H - 2.09439; cos_h = cos(H); cos_1047_h = cos(1.047196667-H); g = S*255*I/3*(1+cos_h/cos_1047_h); b = S*255*I/3*(1+(1-cos_h/cos_1047_h)); r = 0; w = 255*(1-S)*I; } else { H = H - 4.188787; cos_h = cos(H); cos_1047_h = cos(1.047196667-H); b = S*255*I/3*(1+cos_h/cos_1047_h); r = S*255*I/3*(1+(1-cos_h/cos_1047_h)); g = 0; w = 255*(1-S)*I; } rgbw[0]=r; rgbw[1]=g; rgbw[2]=b; rgbw[3]=w; |
AW: LED Lichtmischung?
mathematisch, also in der Theorie habt ihr alle Recht... wenn man eine Großbildleinwand zur Bilddarstellung realisieren will, kann und sollte man auch so herangehen.
Ich vermute allerdings, das es um eine "simple" Beleuchtungslösung geht. Da muss man nicht "jede" Farbe realisieren können, denn das menschliche Auge erkennt Farbunterschiede nur relativ grob, nicht lineare Helligkeitsunterschiede fallen den meisten Leuten aber sofort auf. Ich kenne viele Beleuchtungssysteme die nur mit 16*16*16 = 4096 möglichen Farben arbeiten und diese jeweils auch nur in 16 Helligkeiten realisieren. "Zufällig" ist 16(R)*16(G)*16(B)*16 = 65536 = 2^16 = 16Bit (Hardware) PWM. Die "Trimmung" solcher Systeme erfolgt simpel über die Stromstärke, denn LED's ind "Rot" & "Blau" leuchten nun mal gefühlt intensiver als grüne LED's. Per Stromreduzierung werden also Rot&Blau soweit zurückgenommen das man zusammen mit Grün ein brauchbares Weiß hat. Der Rest ist dann PWM&Software. Wenn man es schnell genug macht, reichen 16Helligkeitsstufen völlig um dem Anwender noch ein gutes SoftDimmErlebnis vorzugaukeln, solange die Farbe gefühlt konstant bleibt und sich nur die Helligkeit merklich ändert. Einfach und simpel funktioniert da wirklich besser wie 24Bit/16Mio Farben, wenn's dann mit dem purem Dimmen der Helligkeit nicht klappt. Wer's nicht glaubt, der frage mal bei Innenarchitekten und Lichtdesignern: Die legen oft pro "Szene" nur die Farben der Leuchtmittel fest, der Nutzer/Anwender kann/will/darf dann aber "nur" noch die Helligkeit nach seinen Bedürfnissen selbst anpassen. Eigene "freie Farbwahl im RGB Würfel" ist praktisch bei Beleuchtungslösungen nach der Inbetriebnahme völlig irrelevant. |
AW: LED Lichtmischung?
Da hast Du sicherlich Recht.
Bei mir geht es wie gesagt um RGBWW Spotts. Die sind per DALI pro Kanal 0..255 zu steuern. Es gibt da so eine "Wohlfühltheorie"... Das die Farbtemperatur im Tagesverlauf dem Sonnenlicht nachgebildet werden sollte... Zum Duschen nehme ich sowieso 100% ROT/BLAU. :lol: Mavarik |
AW: LED Lichtmischung?
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
![]() Hast Du eine Tabelle Farbtemperatur im Tagesverlauf des Sonnenlichtes? Ausserdem: ![]() ![]() |
AW: LED Lichtmischung?
Aus unser Elektronikentwicklung / Messtechnik:
Zitat:
Mikhal |
AW: LED Lichtmischung?
Zitat:
Zitat:
Die Ansteuerung ist super simpel... Einfach per UDP ein Kommando an den Gira-Server senden. ("LICH1R 55%") und schon leitet die rote LED mit 55%. Oder "LICH1RGBW 55%,66%,10%,80%" schaltet alle Werte... (Ist auch deutlich einfacher als ein KNX-Telegramm ab zu setzen) Zitat:
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:00 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz