Nein nein nein ... nicht noch ein weiteres RGB Led Projekt... Was mich viel mehr interessieren wuerde, die RGB Led leuchten verschieden hell. Leuchten alle drei Led 100% hell, ergibt es nie die weisse farbe. Manche LED hersteller geben die Weiss Werte an, andere nicht. Macht Ihr bei Euren RGB Led Projekten eine Farb korrektur oder laesst Ihr es ganz aus ?? Oder hat jemand eine Mathematische Idee ?? Wie macht Ihr es Leute ?? lg roman
:
Verschoben durch User
Wenn du die Helligkeitswerte für R, G und B nicht über RGB sondern über einen HSV-Algorithmus berechnest, kannst du die Farbkorrektur recht einfach in Hardware machen. In HSV lässt sich "Weiss" recht leicht einstellen. Jetzt brauchst du nur noch ne Möglichkeit die Ströme der einzelnen Farben so zu justieren, dass sich Weiss ergibt. Anschliessend kannst dann passende Vorwiderstände für alle RGB-LEDs verwenden, oder Softwareseitig einen entsprechenden Korrekturfaktor einfügen. Gruß Fabian
Fabian, Wie meinst du das ?? also .. zB. diese LED ( https://www.distrelec.com/distrelec/datasheets.nsf/WebAttachments/051232F928C84C99C12571A7004CDC25/$File/z_powerled_P5_RGB.pdf ) Seoul Z Power 3.5 W ... jede farbe vertraegt 350mA. Jedoch die mischfarbe fuer Weiss ist R 237mA G 370mA und B 120 mA. Dh. (wenn ich es richtig verstanden habe...) Wuerdes du die Stroeme auf diesen wert einstellen fuer 100% RGB ?? lg roman
Naja, ich hab immer nur "normale" 5mm RGB benutzt...da ist der Strom nicht angegeben. Aber die Verhältnisse sind doch schon da. Demnach musste deine Stromquellen so auslegen, dass von der Ansteuerung bei Farbe Weiss diese Ströme fliessen. Wie du die Ansteuerung für Weiss machst ist ja eine andere Sache. Ich nehm halt immer gern HSV und rechne dann HSV nach RGB für die PWM der Ansteuerung um...ist halt leichter vorstelbar. Gruß Fabian
ok, ok ... habe es kapiert.. Wie sind die Verhaeltnisse fuer weiss, bei den von dir verwendeten 5mm rgb Led's ?? lg roman
Weiss ist doch nicht gleich Weiss, es gibt ja verschiedene Farbtemperaturen. Mit mehr Blau hat man eben ein kälteres weiss als mit mehr Rot. Und die LEDs haben auch verschiedene Wirkungsgrade, gleicher Strom bei verschiedenen Farben heisst nicht gleiche Helligkeit. Die RGB LEDs werden sicher schon so ausgelegt sein das bei den typischen Betriebsdaten ein Weiss herauskommt, aber wenn man sowieso alle Kanäle getrennt ansteuert kann man sich auch eine Kalibrierung für das Lieblingsweiss einbauen.
Um ehrlich zu sein: keine Ahnung ;-) Bei kleineren Anwendungen stell ich den Strom der LEDs einfach über Potis als Vorwiderstände ein. Geht bei 350mA natürlich nicht, aber bei 5-20mA schon. Aber was was du an Strömen gepostet hast, klingt schon ganz realistisch. Eine Abstimmungsanleitung findest du im Dateianhang der HSV-to-RGB-Routine von Fly: Beitrag "HSV RGB Led Dimmer, C Code & Video & Doku" Gruß Fabian
Ja jojoS, Dessen bin ich mir bewusst. Es geht ja nur um Ca. werte .. ich meine soll ich wirklich die Grad Kelvin angeben ??? Was ich mich viel mehr frage... bei dem obigem beispiel von den seoul LED's, wenn ich den strom einstelle wie es Fabian vorgeschlagen hat, fliesst durch blau "nur" 120mA Strom. hmm... das ist ja nur 1/3 des moeglichen ?! gibt es evtl. andere moeglichkeiten die Fabkorrektur vorzunehmen ?? zB. durch entsprechenden matrix multiplikation oder so ?? lg roman
Der Punkt ist, dass du für "Weiss" weniger Blau- als Rotanteil brauchst. Jetzt ist das Auge zu allem Überfluss auch noch unterschiedlich empfindlich bei unterschiedlichen Wellenlängen und schon haste den Grund. Kannst es ja einfach mal probieren: Jag duch alle Farben 350mA durch und schau wie's ausschaut...Weiss wirds aber nicht. Du kannst natürlich softwareseitig dafür sorgen, dass bei Weiss z.B. Rot mit 100% Tastverhältnis angesteuert wird, und Blau nur mit 30%. Der Effekt ist der Gleiche, macht nur die Dimensionierung der Stromquelle leichter (alle drei gleich). Vorschlag: nimm dir drei Stromquellen mit max 350mA (im Zweifel einfach dicke Vorwiderstände) und hänge die jeweils über einen FET an einen PWM Ausgang eines uCs. Dann noch drei Potis zum einstellen der drei PWMs und schon kannste mal probieren. Evtl. reichen auch schon 100mA damit du nicht erblindest ;-). Gruß Fabian
Fabian, Das ist ja alles klar und sicherlich funktioniert es 100%. Der punkt ist, ich verliere damit den dynamik bereich von Blau. dh. mit deinem beispiel, ich betreibe blau mit max. 120mA. von max. 350 mA moeglichen. Kann man es soweit korriegieren, ohne das ich auf die 350mA von blau verzichten muss. verstehst du ?? Nur so als beispiel ... wenn ich mit matrixen arbeite und folgenden matrix verwende : 1.0 0.0 -0.33 <= input R -.17 1.0 -0.33 <= input G -.17 0.0 1.0 <= input B ==== ==== ==== o. R o.G o.B ergibt bei 100% RGB Input, 66% Rot 100% Gruen 34 % Blau anteil. Was in etwa Weiss ergeben sollte aus dem datenblatt. jedoch ... 0% Rot, Gruen und 100% Blau ergibt 100% Blau!! verstehst du ?? lg roman
Ja klar. Dann über Software-PWM. Du musst deine Farbberechnungs-Routinen dann "nur" so anpassen, dass bei Weiss das entsprechende Verhältnis rauskommt. In RGB ist Weiss halt (100%,100%,100%). Damit du jetzt tatsächlich Weiss siehst musst du aber die Ströme wie im DB angegeben einstellen. Du verlierst aber auch nicht wirklich Dynamik, sondern "nur" Helligkeit. Was du natürlich machen könntest ist, zwei Modi einzusetzen: - Echtfarbenmodus - Einzelfarbenmodus Im ersten rechnest du deine Farbe aus und korrigierst die PWM werte mittels der o.a. Verhältnisse, im zweiten gibst du die RGB-Werte direkt ohne Korrektur an. Hierbei würdest du zwar schon Dynamik verlieren, da du ja mit Korrekturmodus deine PWM für Blau z.B. nur von 0-30% fährst, aber ob das ins Gewicht fällt liegt eher an deinem Empfinden und an der Auflösung deiner PWM ;-). Prinzipell (d.h. mit unendlich aufgelöster PWM :-P) könntest du ja dennoch alle Farben des Spektrums darstellen. Gruß Fabian Guter Artikel zum Farben berechnen: http://de.wikipedia.org/wiki/HSV-Farbraum
Fabio, das ist doch der Trick mit der Matrix. Ich muss keine zwei modis fahren. Den bei die Matrix von 100% Blau ergibt 100 % Blau wenn alle anderen werte auf 0% sind, sieh mal : Input (RGB): 0 0 100 Output (RGB): -17.000000 0.000000 100.000000 Du hast zwar recht was die dynamik angeht (mein fehler). Aber die maximale Helligkeit verliere ich nicht. War nur als gedanken spiel gedacht ob dies gruendsaetzlich funzen wuerde :) lg roman
Ist ja im Endeffekt das Gleiche. Wie sehn denn deine Werte aus wenn du Weiss mit der Matrix darstellen willst? Gruß Fabian
Bei 100% rgb input, kommt 66% Rot 100% Gruen und 30% Blau. roman
Fabian, hier ein paar beispiele : ./mat_mult 100 100 100 <= input RGB in % 66.000000 100.000000 34.000000 <= output in % ./mat_mult 100 0 0 100.000000 0.000000 -33.000000 ./mat_mult 0 100 0 -17.000000 100.000000 -33.000000 ./mat_mult 0 0 100 -17.000000 0.000000 100.000000 ./mat_mult 100 100 0 83.000000 100.000000 -66.000000 ./mat_mult 100 0 100 83.000000 0.000000 67.000000 ./mat_mult 0 100 100 -34.000000 100.000000 67.000000 die matrix ist : 1.0 0.0 -0.33 0.0 -0.17 1.0 -0.33 0.0 -0.17 0.0 1.0 0.0 0.0 0.0 0.0 0.0 und der code dazu ist im anhang :) roman
Auch nicht schlecht. Das Einzige ist mal wieder die "Inkompatibilität" der Realität mit der Mathematik: LEDs können nunmal nicht negativ leuchten ;-) Kappt man die negativen Zahlen aber einfach zu 0 dürften die Verhältnisse auch nicht optimal stimmen. Aber es gilt halt wie immer: Die Realität ist eine Approximation der zugrunde liegenden Mathematik. (oder wars anders herum ;-) ) Gruß Fabian
Fabian, Die Surreale Mathematik kann auch mein Problem sein. Im notfalls kann ich es immer noch auf die Chaostheorie schieben :) Nein, Spass bei Seite... Die Konstanten der Matrix, sind auch nur so ...ehh.. so ala mal kucken ... dh. heisst die sind auch nicht 100% optimal. lg roman
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.