Farbort (x,y) über den Strom einstellen?

Unser Wiki: Erläuterung und Definitionen für Begriffe wie "SMD", "mcd", "Lumen" usw.

Moderator: T.Hoffmann

Antworten
LagomR
Mini-User
Beiträge: 6
Registriert: Do, 28.10.10, 14:06

Do, 28.10.10, 14:25

Hallo Forumgemeinde,

ich arbeite gerade an meiner Diplomarbeit zur LCD-Backlight und muss idealerweise eine RGB-LED charakterisieren. Ich versuche analytisch (ggf. mit Näherungen) den Zusammenhang zwischen dem Farbort der RGB-LED und den jeweiligen Strömen der einzelnen Farbdioden (i_R, i_G und i_B) herzustellen. Idealerweise sollte sowas am Ende rauskommen:

i_R = 37mA
i_G = 17mA
i_B = 20 mA

ergibt einen Farbort im CIE-Diagramm bei x = y = 1/3.


Weis jemand wie sowas gehen könnte?


Meine Idee war folgende:
Man bestimme die Tristimuluswerte X, Y und Z. Für X gilt (für Y und Z analog):
http://upload.wikimedia.org/math/2/1/5/ ... 3ed716.png

hier gilt es also die relative SPD (Strahlungsveteilung) zu bestimmen, diese ist für Schwarze Strahler nach dem Plank´schen Gesetz
http://upload.wikimedia.org/math/1/0/c/ ... 817b62.png

aus dem Datenblatt geht auch hervor, dass die (dominante) Wellenlänge mit dem Diodenstrom variiert.

Und anschließend hängt der Farbort mit den Tristimuluswerten folgendermaßen zusammen:

x = X / (X + Y + Z)
y = Y / (X + Y + Z)
z = Z / (X + Y + Z)

setzt man alles ein hat man ein kompliziertes Gleichungssystem mit 3 Gleichungen, die nur nummerisch gelöst werden können. Aber sollte man diese Gleichung nach den Strömen auflösen können, würde es den Farbort im Zusammenhang mit den Diodenströmen darstellen?

Das Problem ist jedoch, dass das Planksches Gesetz nur für Schwarze Körper, die LED aber keine Schwarzen Strahler sind!

Danke im Voraus!

Gruß
Richard
Borax
Star-Admin
Star-Admin
Beiträge: 11980
Registriert: Mo, 10.09.07, 16:28

Do, 28.10.10, 16:38

Hallo LagomR,
welcome on board!

Schwieriges Thema...
Umrechnen RGB->CIE:
http://www5.informatik.tu-muenchen.de/l ... COL_21.htm
aus dem Datenblatt geht auch hervor, dass die (dominante) Wellenlänge mit dem Diodenstrom variiert.
Stimmt. Aber den Punkt würde ich vernachlässigen. Der ist auch stark 'chargenabhängig' und müsste daher wohl für jede Sorte LEDs aus einem Herstellungslos erst bestimmt werden.
LagomR
Mini-User
Beiträge: 6
Registriert: Do, 28.10.10, 14:06

Di, 02.11.10, 11:05

Ja das stimmt, auf die Angaben im Datenblatt kann man sich nicht 100% verlassen.

Ich würde mich auch zufriedengeben, wenn ich über das Verhältnis von relativen Intensitäten R, G und B den Farbort einstellen würde. Laut dieser Matrix:

http://en.wikipedia.org/wiki/CIE_1931_c ... Guild_data

kann man in X,Y und Z von R, G und B umrechnen. Für gleiche Intensität R=G=B=1 (allg. R=G=B) bekomme ich über x = X/(X+Y+Z) und y = Y/(X+Y+Z), den Farbort x=y=1/3 raus. Was soweit mit der Vorstellung übereinstimmt, das bei Anwesenheit aller Farben mit gleicher Intensität man weiß bekommt.

Jedoch habe ich die Verteilung von Intensitäten für die Fälle R=2, G=1, B=1 und R=2, G=1, B=2 am Spektrometer gemessen und der berechnete Farbort stimmt nicht einmal annähernd mit der Messung überein.

Mir kommt es so vor, als wäre der Farbort der RGB-LED nicht nur von den relativen Verhältnissen von R,G und B, sondern auch von den absoluten Intensitäten abhängig. Also wenn ich den Farbort für R=2, G=1, B=1 messen würde, dann wäre der von R=4, G=2, B=2 anderer sein. Obwohl verhältnismäßig sich hier nichts geändert hat. Die Matrix im obigen Link sind die absoluten Intensitäten auch egal.

Vielleicht verstehe ich die Matrix falsch?
Benutzeravatar
Achim H
Star-Admin
Star-Admin
Beiträge: 13067
Registriert: Mi, 14.11.07, 02:14
Wohnort: Herdecke (NRW)
Kontaktdaten:

Di, 02.11.10, 12:43

Wenn das Rot einer Led anders aussieht wie das Rot einer LCD-Anzeige (gleiches für Grün und Blau und den Mischfarben), wirst Du nicht drumrum kommen, Dir deine eigene CIE-Farbtabelle zu basteln. Zumindest musst Du erst einmal mehrere Referenzpunkte haben, von denen aus Du starten kannst.

Ich denke, das Problem wird sein, dass neben Rot auch die anderen beiden Grundfarben minimal bestromt werden müssen, um ein gleiches Rot wie bei einer Led nachzuahmen (auch hier gleiches für Grün und Blau und den Mischfarben).

Ausgehend von den Referenzpunkten (Ströme für Rot, Grün und Blau) kannst Du dann eine Abstimmung auf den Weißpunkt herstellen. Damit hast Du nun schon 4 Referenzpunkte. Dann noch die Farbmischungen (Rot + Grün, Rot + Blau, Grün + Blau) und schon hast Du 7 Referenzpunke. Mit Schwarz (alle LCD-Farben aus) wären es sogar 8 Referenzpunkte (da aber eine dunkle Anzeige nicht schwarz ist, lassen wir es besser bei den 7 Referenzpunkten).

Mit den 7 Referenzpunkten weißt Du nun, welche Farbe mit welchem Strom betrieben werden muss, um diese oder jene Farbe zu erzeugen.

So, nun jede Strecke zwischen 2 Referenzpunkten einmal in der Mitte teilen (für eine spätere Kontrolle).

Da Leds logarhitmisch heller werden, muss auch der Strom logarhitmisch verstellt werden.
Die Anfangsströme der einzelnen Farben eines jeden Referenzpunkt sind bekannt, die Ströme müssen nun nur noch berechnet werden.

Beispiel für Rot:
R = 50mA
G = 5mA
B = 7mA

Weiß:
R = 50mA
G = 48mA
B = 49mA

Aber wie die Rechnung dafür aussieht, um zum Beispiel den Mittelpunkt zwischen dem Start- und dem Endwert zu berechnen, weiß ich leider nicht (bin kein Mathematiker).


Nur eine Idee, aber so einfach wie dieses wird es wohl nicht sein?

Theoretische Mitte:
R = (50mA + 50mA) / 2 = 50mA
G = (5mA + 48mA) / 2 = 26,5mA
B = (7mA + 49mA) / 2 = 28mA
LagomR
Mini-User
Beiträge: 6
Registriert: Do, 28.10.10, 14:06

Di, 02.11.10, 14:24

@Achim H:

Danke dir für den Denkanstoß mit den Referenzpunkten ...

Das die Farben nach der LCD-Matrix aussehen hatte ich mir auch vorgestellt, ich werde auch ein paar Messungen zu den Grundfarben machen mit und ohne LCD-Matrix, um zu sehen wie stark der Farbfilter die jeweilige LED-Farbe beeinflusst bzw. verändert. Zuerst muss ich allerdings nur die RGB-LED´s (ohne die LCD-Matrix) bzgl. des Farborts und der Ströme charakterisieren.
Benutzeravatar
Achim H
Star-Admin
Star-Admin
Beiträge: 13067
Registriert: Mi, 14.11.07, 02:14
Wohnort: Herdecke (NRW)
Kontaktdaten:

Di, 02.11.10, 15:17

Willst Du für jede X/Y-Koordinate auch eine Farbe ausgeben können oder mit welcher Auflösung gedachtest Du die RGB-Farben in der LCD-Anzeige anzusteuern?

Der Bereich
für X erstreckt sich von 0,0000 bis 0,8000. Das sind 8000 Werte mit 1/10.000stel Auflösung.
und Y von 0,0000 bis ca. 0,8250. Das sind 8250 Werte mit 1/10.000stel Auflösung.

Bei 1-Zehntausendstel Auflösung würdest Du 8000 x 8250 = 66.000.000 Farben erhalten. Das in RGB wäre größer als 3x 2^8 (2^8=256) aber kleiner als 3x 2^9 (2^9=512). Mit genau 405 Abstufungen (404 reicht nicht) je Farbe könntest Du 66.430.125 Mischfarben erzeugen.

Wenn man dann die errechneten Farben (bzw. Ströme) in einen nichtflüchtigen Speicher (Rom, Prom, Eprom, EEprom, o. ä.) einspeichert, kann man (dezimal-zu-binär) über die Adressleitungen die X/Y-Koordinaten eingeben und erhält an den Datenleitungen die Ströme für die 3 Farben. Diese Informationen stehen allerdings binärcodiert zur Verfügung und müsste erst einmal mit 3 Digital-Analog-Wandlern wieder in 3 Spannungen resp. in 3 Ströme umgewandelt werden.

Falls Du den Speicher nicht haben willst, muss die Umrechnung on_the_Fly erfolgen. Und dafür bräuchtest Du (denke ich zumindest) einen Mikroprozessor. Aber davon habe ich überhaupt keine Ahnung.
LagomR
Mini-User
Beiträge: 6
Registriert: Do, 28.10.10, 14:06

Di, 02.11.10, 17:05

Also deine Idee läuft auf eine Look-Up Tabelle hinaus, dass man sich die Ströme einstellt und den Farbort misst. Diese kann man ggf. fitten mit Matlab und auch daraus die genäherte Funktion bestimmen. Oder man speichert (wie du schon gesagt hast) das ganze im Speicher. Da die Ansteuerung des LCD und LCD-Backlight mit einem FPGA realisiert wird, kann man die Look-Up Tabelle an dieser Stelle sehr gut gebrauchen.

Nur muss ich jetzt für eine eine geringe Abstufung des Stroms von 3 Bit ---> 2^3 = 8 Abstufungen und bei einem Ansteuerungsbereich von 0 - 60mA ist es recht grob. Insgesamt muss also 512 Messungen (jeder Kanal 8 Abstufungen) machen ... :(
LagomR
Mini-User
Beiträge: 6
Registriert: Do, 28.10.10, 14:06

Mo, 08.11.10, 10:59

Ich bin vor einigen Tagen auf die Idee gekommen wie man den Farbort über den Strom ausrechnen (approximieren) kann. Ich habe zwar noch keine Messungen diesbezüglich gemacht, bin mir aber ziemlich sicher, dass es hinhaut. Also um den Thread abzuschließen hier meine Rechnung. Es gilt lediglich lambda(i) und C1(i) über Messungen zu bestimmen und dann z.B. über Matlab zu fitten.

Falls jedoch jemand der Meinung ist, dass es einen Fehler enthält bitte bescheidgeben! :)
Dateianhänge
IMG_7162.JPG
Benutzeravatar
Achim H
Star-Admin
Star-Admin
Beiträge: 13067
Registriert: Mi, 14.11.07, 02:14
Wohnort: Herdecke (NRW)
Kontaktdaten:

Mo, 08.11.10, 14:10

Ich habe Integralrechnung nie in der Schule gehabt, weiß also nicht, ob das richtig oder falsch ist was Du da hingekritzelt hast. Also werde ich meinen Brabbel (meine Schnute) geschlossen halten. Aber das Ergebnis würde mich schon interessieren.

Und was das Zumachen dieses Fred betrifft:
Erst wenn es geklappt hat. :wink:
Borax
Star-Admin
Star-Admin
Beiträge: 11980
Registriert: Mo, 10.09.07, 16:28

Mo, 08.11.10, 15:34

Die Gauß'sche Glockenkurve ist für die Abweichungen einer größeren Anzahl LEDs vom durchschnittlichen Lamda(max) mit Sicherheit eine gute Annahme. Ob diese Annahme aber auch für die Abweichung von Lamda zu Lamda(max) in Abhängigkeit vom Strom gilt (oder mind. halbwegs passt), bin ich nicht sicher. Das müsste man ggf. mal per Messung validieren. Ansonsten bin ich mit Deinen Überlegungen durchaus einverstanden.
LagomR
Mini-User
Beiträge: 6
Registriert: Do, 28.10.10, 14:06

Mi, 19.01.11, 19:57

Hallo nochmals, seit dem letzten Post ist einige Zeit vergangen und das Problem mit der Approximation der LED-Kurve habe ich gelöst. Ich verweise mal einfach auf die Ergebnisse, die ich im anderen Forum veröffentlicht habe, in dem vorletzten Beitrag gebe ich bekannt wie das vorgehen zur Approximation ist.

http://www.mikrocontroller.net/topic/196298#1922898

Technisch gesehen war der Ansatz mit der Gaußglocke ein Schritt in die richtige Richtung, jedoch habe ich andere Funktion gefunden, die das Spektrum besser beschreibt. Damit ist wohl das Problem gelöst :)
Benutzeravatar
strenter
Ultra-User
Ultra-User
Beiträge: 962
Registriert: Sa, 13.11.10, 21:29
Wohnort: Hessen

Mi, 19.01.11, 21:08

Ich gratuliere ganz herzlich zu der Lösung und schlage vor diesen Thread zur FAQ zu schieben und dort anzupinnen. :)
Benutzeravatar
Achim H
Star-Admin
Star-Admin
Beiträge: 13067
Registriert: Mi, 14.11.07, 02:14
Wohnort: Herdecke (NRW)
Kontaktdaten:

Mi, 09.02.11, 13:27

LagomR hat geschrieben:Und anschließend hängt der Farbort mit den Tristimuluswerten folgendermaßen zusammen:

x = X / (X + Y + Z)
y = Y / (X + Y + Z)
z = Z / (X + Y + Z)
Für Normalsterbliche (wie mir) hat Cree ein PDF mit genau diesen Rechnungen fertig gemacht. Da ist auch diese Formel enthalten. Die Rechnung ist dafür gedacht, zu ermitteln, welchen Farbort 2 verschiedene Leds erzeugen, deren Licht gemischt wird.

Guggstu hier: Led-Color-Mixing (PDF, 29 Seiten, 2.43MB)

Ich habe das mal zu eine Excel-Datei umgearbeitet.
Ihr braucht nur noch die x- und y-Koordinaten der Leds sowie deren Lumen (typisch) eingeben und erhaltet die neuen x- und x-Koordinaten.

Viel Spaß damit.
farbmischung.xls
Update: 23.02.2012
Die Excel-Tabelle errechnet jetzt aus den neuen x- und y- Koordinaten auch die Farbtemperatur (in Kelvin). Die Genauigkeit liegt bei ca. 1% Abweichung.
Antworten