Hi, ich habe eine Frage zu meiner Schaltung (siehe Bild). Es sollen zahlreiche RGD-LED mit gemeinsamer Kathode mit einem TLC5940 angesteuert werden. Dieser Schaltkreis beinhaltet für jeden Ausgang eine Strombegrenzung, die beispielsweise auf 10mA justiert werden kann, so dass keine weiteren Vorwiderstände notwendig sind. Die Auswahl der Farbe erfolgt bei meiner Schaltung für alle LED gemeinsam, und zwar durch die Transistoren T1 bis T3, die ebenfalls über den IC gesteuert werden. Wenn der entsprechende Ausgang für eine Farbe aktiviert wird und auf L geht, schaltet der jeweilige Transistor durch und alle gleichzeitig über die anderen IC-Ausgänge aktivierten LED leuchten. Das funktioniert alles sehr gut, solange nur eine Farbe aktiv ist, d.h. wenn nur einer der 3 Transistoren durchgeschaltet ist. Wenn ich mehrere Farben aktiviere, klappt es leider nicht mehr so recht. Es sieht dann bei jeder LED ein wenig anders aus. Einige zeigen nur eine Farbe (z.B. blau), bei anderen leuchten die erwarteten mehreren Farben (z.B. blau und grün). Woran liegt das? An Bauteiltoleranzen? Was kann ich tun, um diese auszugleichen? Danke!
Ich denke: An den Anoden liegt an allen LED das gleiche Potential (nahezu 5 V) an. An der gemeinsamen Kathode somit 5 V minus die kleinste Durchflussspannung der 3 LEDs (rot) beim eingestellten Strom. Durch die anderen Farben fließt dann ein eher undefinierbarer Strom. Vorschlag: die Transistoren zu Konstantstromquellen umbauen und den Treiber auf maximalen Strom konfigurieren. Dann weiß man allerdings bei mehreren eingeschalteten LEDs nicht, wie der Strom fließt => Serienwiderstand an jede Anode (wird bei der Anzahl LEDs auch einfacher sein als Konstantstromquellen)
Wie kommt man denn auf so eine Schaltung? Wo ist die denn hergezogen? Jede LED einzeln steuern, und dann aber eine gemeinsamme Kathode mit Strombegrenzung? Ist nur eine LED an, so erhält sie den Strom, der in der Begrenzung eingestellt ist. Sind zwei LED eingeschalten, so teilt sich der Strom auf. Wie, das hängt von den Durchflußspannungen und anderen Dingen ab. Die Schaltung ist komplett ungeeignet. Nebenbei fehlen auch noch Basiswiderstände. Auf welchen Wert ist denn der Basisstrom begrenzt?
> Das funktioniert alles sehr gut, solange nur eine Farbe aktiv ist
Das liegt daran, dass die drei Farben jeweils unterschiedliche
Betriebsspannung erfordern.
1 | rot |
2 | +---|>|-----+ |
3 | | | |
4 | + o---[===]---+---|>|-----+---o - |
5 | blau |
Wenn du eine rote LED parallel zu einer blauen betreibst, wird die blaue gar nicht leuchten, da die Spannung zu gering ist. Der Fehler in deiner Schaltung ist der Betrieb mehrere LED's in Parallel-Schaltung. Das macht man vernünftigerweise nichtmal mit gleichen Farben.
Hallo, die 'Rettung' für Deine Schaltung heißt multiplexen, also erst nur T1 ansteuern, und die Kathoden der LEDs ansteuern, bei denen die T1 zugeordnete Farbe leuchten soll. Kurze Zeit später die Ansteuerung der Kathoden wegnehmen, T1 abschalten, T2 ansteuern. Nun an den Kathoden das Muster für diese Farbe anlegen, wieder etwas warten, und dann das Gleiche noch mit T3, und dann wieder mit T1. So immer rund rum. Die Helligkeit reduziert sich dabei natürlich, aber Du bekommst das gewünschte Ergebnis. Such mal nach 'Matrix' (Nicht den Film, sondern die Schaltung), Du hast hier nämlich eine gebaut. Mit Common-Anode RGBs wärst Du wesentlich besser bedient, der TLC hat ja genügend Ausgänge, da hätte dann jede der 12 Kathoden ihren eigenen TLC-Ausgang, und die 4 Anoden kommen einfach an VCC. @spontan (Gast): Da er einen Konstantstrom-Treiber hat, braucht es keine Basis-Widerstände. Mit freundlichem Gruß - Martin
Der Strom ist beim TLC einstellbar, allerdings nur ein Wert für alle Ausgänge, muß also auf LED übliche Werte eingestellt werden, also 10mA - 20mA, bei Multiplexing vielleicht auch etwas mehr. Mit freundlichem Gruß - Martin
Danke für die Kommentare. Den Strom zu erhöhen werde ich mal ausprobieren, möglicherweise verschiebt sich damit der Arbeitspunkt etwas in eine Richtung, so dass jede LED "ein wenig mehr" abbekommt und damit stärker leuchtet bzw. überhaupt erstmal ins leuchten kommt. Aber die Ungleichheit wird es vermutlich nicht lösen können. Ja, es war mir von Anfang an bewußt, dass die LED unterschiedliche Flussspannungen haben und es daher ziemlich undefiniert ist, welcher Strom wo fließen wird und was das Ergebnis sein würde. Aber man kann es ja mal ausprobieren. :-) Mit meiner Schaltung möchte ich insgesamt 122 LED ansteuern, wobei es mir wie gesagt ausreicht, wenn die Farbe für alle gemeinsam geschaltet wird. Daher habe ich auf LED mit gemeinsamer Anode verzichtet, denn um 122 * 3 = 366 Anschlüsse einzeln zu steuern, würde ich satte 23 TLC benötigen. Das wäre totaler Overkill. Dann könnte ich natürlich jeden "Pixel" anders färben, aber das wird ja gar nicht benötigt. So komme ich mit nur 8 TLC, 3 Transistoren und 3 + 8 Widerständen für alles aus. Natürlich mit der Einschränkung, dass "hardwareseitig" nur R, G und B als "saubere" Farben zur Verfügung stehen. Das mit dem Farbmultiplexing ist ein guter Vorschlag, da muss ich mal sehen, wie kompliziert das softwareseitig wird. Von der gegebenen Schaltung her wäre das eine sehr elegante und saubere Lösung, denke ich. Dabei würde es ausreichen, nur die Transistorsignale dynamisch umzuschalten (z.B. Rot / Grün alternierend für Gelb) und die LED Muster einfach "statisch" zu lassen, wie sie sind, weil ja alle LED die gleiche Farbe haben sollen und damit keine unterschiedlichen Muste pro Farbe haben. Negative Auswirkungen auf die Helligkeit würde ich eigentlich nicht erwarten, weil es ja keine Dunkelphasen gibt, sondern trotz Umschaltung immer irgendeine Farbe leuchtet. D.h. die gewählten 10mA müssten eigentlich reichen. Grüße, Pedro
Pedro C. schrieb: > So komme ich mit nur 8 TLC, 3 Transistoren und 3 + 8 Widerständen für > alles aus. Ein fertiger Stripe aus WS2812 wäre auch nicht viel teurer und benötigt außer einem einzigen Portpin am µC keinerlei zusätzliche Bauelemente. Ist mir schleierhaft, wieso sich überhaupt noch jemand die Mühe macht, das umständlicher zu lösen...
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.