Ich sitze an folgendem Vorhaben: 64 Hochleistungs-LEDs (350mA / Stück) sollen individuell vom Mikrocontroller gesteuert werden (inklusive dimmen). Mein Plan ist, 4 in Reihe geschaltete TLC5940-LED Treiber von TI (jeweils Ansteuerung von 16 LEDs) von MC aus zu steuern. Hinter den LED-Treiber hängen jeweils 2 ULN2003A (oder ähnliche sink-Transistor Arrays) die jeweils 8 der LEDs ansteuern. Da die TLC5940 Treiber über einen Referenzwiderstand in ihrem Stromwert begrenzt werden können brauche ich keinen Vorwiderstand zum schalten der einzelnen ULN2003 Transistoren. Vorwiderstände gebe es nur direkt in Reihe mit den einzelnen LUXEON LEDs. 1. Da ich nur wenig Praxiserfahrungen im Schaltungbereich habe, würde mich interessieren, ob ich für eine stabil laufende Schaltung noch etwas beachten muss.(?) Zweitens möchte ich, wenn ich schonmal eine größere (im Sinne des Materialaufwands) Schaltung baue, sie etwas variabler ist, und nicht genau für eine Leistungsspannung und eine LED Größe vorgesehen ist. Möglihckeit wäre, statt fester Widerstände, Spindeltrimmer zu nutzen, allerdings sind alle die ich gefunden habe für höchstens 0,5 oder 0,75W ausgelegt - was fast an der Grenze des jetzigen Setups liegen würde (bei 5V Einspeisung, 3,42V LED Spannung und 350mA ist die Verlustleistung ca. 0,55W). Ein wenig mehr Spielraum wär mir schon lieb. 2. Gibt es eine besser Möglichkeit, den Durchflussstrom variabel zu halten oder Spindeltrimmer die mind. 1W vertragen? danke paul
Hallo Paul, ganz schön anspruchsvolle Schaltung für den Einstieg. Die Verlustleistung derl TLC Bausteine wird wahrscheinlich zu hoch sein, je nachdem wie hoch der Spannungsabfall ist. Beim ULN2003 ist sie mit knapp 5W definitiv zu hoch (1.6V*0.35A*8), ich bin mir nicht sicher, ob der Baustein auch mit ausreichender Kühlung auf Dauer funktionieren würde (habe dazu keine Angaben im ST Datenblatt gefunden). Die Dimmung solltest du nicht mit Spindeltrimmer oder ähnlichem machen, die werden bei 350mA auf jeden Fall durchbrennen. Der TLC hat eine PWM implementiert. Du bist dir im Klaren, dass du 23A bereitstellen mußt ? Gruß, Kai
Herzlichen Dank für die Antwort Kai, so kompliziert ist die Schaltung nun auch nicht - und es ist ja auch nicht meine erste. Die PWM Funktion des TLC nutze ich natürlich. Trotzdem brauche ich Vorwiderstände an den LEDs zur Strombegrenzung. Die Spindeltrimmer dienen nicht der PWM Generierung sondern als variabler Vorwiderstand, um auch andere Power-LEDs nutzen zu können. Es sollen 64 Klemmen an die Schaltung statt die LEDs direkt zu verlöten. Die Frage ist also, ob ich statt Potentiometern eine andere Möglichkeit habe, Spannung bzw. Strom variabel zu halten? Ich hatte nicht berücksichtigt, daß die ULN2803 auf HIGH schalten. Der ULC5940 schaltet ja allerdings auf Ground deshalb muss ich sowieso eine andere Transistorlösung finden. (Da die LEDs nie alle zusammen laufen würden, wäre P-tot der ULN Arrays ausreichend). Eine Möglichkeit wäre, 64 TIP120 oder ähnliche Darlingtons zu nutzen und den Ground der Darlingtons jeweils an die TLC Ground-Ausgänge zu hängen und die BASE konstant mit mit Steuerstrom zu versorgen. (Siehe: http://www.ti.com/litv/pdf/slva280 ) Aber dafür ist wesentlich mehr Platz nötig und das hätte ich mir gern erspart. Würde mir die Nutzung der TIP120 Transistoren irgendwelche Probleme bereiten (abgesehen vom Material und Platzaufwand)? Immerhin würde auch wenn die ULC Treiber nicht schalten müssten, der gesamte Strom zu GND durch die Treiber laufen. Über die notwendigen 23Ampere bin ich mir übrigens vollends bewusst. Aber bei 5V fürchte ich mich nicht davor. Am Netzteil wirds nicht scheitern. Außerdem werden wohl immer nur wenige der LEDs angesteuert. Danke Paul
Anbei eine Skizze des Vorhabens. Allerdings mit nur einem TLC5940 Treiber. Letztlich soll es 4 davon geben. Es werden nicht alle LEDs parallel laufen und die ULN2803 werden gekühlt. Sollte meiner Meinung nach funktionieren. Vielleicht kann ja jemand mal einen Blick drauf werfen und Fehler oder Verbesserungen anmerken. Herzlichen Dank paul
Die Schaltung ist falsch, bzw. was soll es bringen mit dem TLC die Logik-Steurereingänge der ULNs anzusteuern ? Die ULNs sind quasi Schalter-Arrays und den Steuereingang dieser Schalter hast du am TLC angeschlossen. Der TLC ist selber so ein ULN, nur mit dem Unterschied das dessen Ausgangsschalter Konstantstromtreiber sind und per Seriellem Shiftregister angesteuert werden, statt parallel wie beim ULN. Möchtest du den Ausgangsstrom für die LEDs vergrößeren so solltest du mehrere Ausgänge der TLC parallel schalten und dann da nur 1 LED dranhängen. Laut AppNote zum TLC soll das gehen. Gruß Hagen
Davon mal abgesehen hat der TLC5940 schon intern eine PWM Einheit und kann somit seine Konstantstrom Ausgänge per PWM schalten und somit die LEDs dimmen. Gruß hagen
Schieberegister und gute Logic Level MosFets, PWM in Software serialisiert über den SPI raus schieben? Bei Strömen von 23A würde ich nicht mehr mit Bipolar Transistoren(Arrays) rumspielen. Bei allen LEDs an sind das ~15W Verlustleistung an den Transistoren. Was hast Du den für einen Microcontroller? 64 PWM Kanäle in Software sind ein haufen Holz, da kommt ein AVR ganz schön ins schwitzen falls er es überhaupt schaffen sollte.
Eine weitere Möglichkeit wäre das Verwenden von TPIC6A595 Schieberegistern von TI (http://focus.ti.com/docs/prod/folders/print/tpic6a595.html). Die Schaffen pro IO 350mA cont. und 1.1A max, das sollte also reichen. Dann musste dein Dimmen nur noch als SoftPWM umsetzen. Damit Sparst du dir zumindest die ganze geschichte mit den extra ULNs. Vieleicht schauste auch mal bei Allegro (http://www.allegromicro.com) vorbei. Die haben auch interessante ICs für LEDs. Gruß Fabian
>> Schaffen pro IO 350mA cont. und 1.1A max, das sollte also reichen.
Nicht wenn er alle 8 Ausgänge gleichzeitig einschalten möchte -> 8 *
350mA = 2.8A, das übersteigt die Leistung der Chips.
Gruß Hagen
Danke für die schnelle Antwort. Sicher hast Du mit der Aussage recht, daß ich keinen Konstantstromtreiber zum ansteuern der ULNs benötige. Ich nutze die TLC Treiber als Shiftregister mit interner PWM Funktion. Damit umgehe ich soft-PWM, weil es beim testen wie Fabian richtig bemerkt, an die Grenzen meines ATMEGA8 ging. Die ULNs sind also nur deshalb im Spiel, um auf die 350mA zu kommen weil der TLC Treiber nur 120mA per Channel sinken kann. Das Parallelschalten von TLCs soll, wie ich gelesen habe, Probleme bereiten sobald die interne PWM-Funktion genutzt wird. Der Punkt ist: So wie es in dem Schaltplan beschrieben ist funktioniert es solide inkulsive dimmen. Nur der Maximalstrom der ULNs begrenzt die Einsatzmöglichkeit ein wenig. Warum also ist die Schaltung falsch? Einzelne Mosfets oder Darlingtons zu nutzen wäre da aushelfend. Um den Aufwand von 64 Stück zu reduzieren war meine Hoffnung auf Arrays zurückgreifen zu können - deshalb die ULNs. Ich werd das Parallelschalten der TLCs nochmal testen. Auf soft-PWM will ich nicht wieder umsteigen müssen. soweit herzlichen Dank euch allen
@Hagen: kann ich nicht nachvollziehen. Im Datenblatt (http://focus.ti.com/lit/ds/symlink/tpic6a595.pdf) steht auf Seite 4: Continous drain current, each output, all outputs on 350mA Sicher, man muß die Verlustleistung beachten, aber 2,8W kann der Chip mit KK ... selbst ohne sind ja schon 2,5W angegeben (Seite4, NE-Package). Gruß Fabian
Sicher eine nette Lösung - wirft mich aber zurück auf software PWM und wie bereits geschrieben, hatte ich damit meine Probleme. Hatte über einen Tag daran gesessen und war mit der Geschwindigkeit des Ergebnisses bei 64 LEDs nicht zufrieden. trotzdem danke.
Nun hab ich die Ausgänge des TLC5940 parallel geschaltet. Ohne PWM läuft alles. Mit internen PWM genutzt flackert mein Lämpchen. Nicht akzeptabel. Es scheint minimale Verschiebungen zu geben. Ärgerlich.
Ja die gibt es, nämlich ~20ns pro Asugang. Ausgang 1 schaltet 20ns nach Ausgang 0 und ausgang 2 ebenfalls 20 ns nach Ausgang 1 usw. Ausgang 15 ist also 15*20ns später als Ausgang 0. Das verhindert den straken Impulsstrom wenn die Ausgänge alle gleichzeitig einschalten würden, steht auch im Datenblatt. Allerdings dürftest du das garnicht sehen da man normalerweise bis zu 30Mhz als PWM Takt benutzt, immerhin hast du eine 12 Bit PWM. Wenn du wirklich nur die Feature Shiftregister mit PWM vom TLC benutzen möchtest dann kannst du das so machen wie in deinem Schaltplan, allerdings brauchst du denoch deine LED Vorwiderstände. Ich bin davon ausgegangen das du Anfänger bist und nicht ganz genau wusstest was der TLC für ein Teil eigentlich ist. Ich persönlich finde deine Benutzung des TLCs trotzdem sehr ungewöhnlich und würde wohl ein garnz normales Shiftregister benutzen und die PWM per AVR machen mit weniger Stufen als die 4096 vom TLC. Gruß Hagen
Merci, Natürlich würde ich auch gern meine 595 dranhängen und Mosfets als Treiber nutzen - aber meine Programmiererfahrung lässt das nicht zu, weil ich die Geschwindigkeit für 64 LEDs und Software PWM nicht hinkriege. Hab ich ja bereits versucht, war aber zu langsam. Es kommen ständig neue Daten rein, die die LEDs steuern sollen und ich hab es nicht geschafft alles parallel mit der PWM über Interrupt zu schreiben. Deshalb wollte ich gern auf die PWM Funktion der TLCs zurückgreifen. Ich werde jetzt wohl n-Kanal Mosfets hintendranhängen. Problem dabei ist, daß die TLC5940 Treiber auf Masse schalten. Gibt es einen Weg, ohne dazwischengeschaltete PNP Transistoren die Mosfets direkt anzusprechen. Bis jetzt hab ich mit einem Pullup Widerstand die Mosfets entgegengesetzt geschaltet - also TLCs aus -> Mosfet Gate offen; TLCs an (also auf Masse) --> Mosfets aus. Gefällt mir nicht besonders weil bei Ausfall der TLCs die Mosfets voll durchlassen. Andersherum wär mir lieber. Danke paul
Schienbar muss ich doch die Logikpegel umkehren da ich keine andere Lösung sehe. Ist es günstiger einen P-Kanal Fet direkt vom TLC aus zu steuern oder einen pnp Transistor zwischenzuschalten der dann einen klassischen N-Kanal Fet mit weniger Verlustleistung steuert?
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.