64 RGB-LED Matrix, TLC5940, Leistungsversorgung

Hallo zusammen!

Schon seit einiger Zeit habe ich kleinere Projekte mit dem Arduino umgesetzt, unter anderem eine Ansteuerung für 30 LEDs mit 2 TLC5940.
Nun habe ich mich an ein größeres Projekt gewagt und bräuchte leider ein bisschen Hilfe.
Da ich Maschinenbau studiere sind meine Elektronikkenntnisse leider beschränkt...

Ich würde gerne eine 8x8 RGB-LED Matrix ansteuern. Dazu habe ich bereits 12 TLC5940 besorgt.
Meine Frage ist nun, wie ich die LEDs mit Leistung versorge. Bei meinem anderen Projekt mit den 30 LEDs (Rot low current) habe ich diese einfach direkt an die TLCs bzw. den Arduino angeschlossen und somit über den Arduino/USB gespeist.
Das dürfte ja bei der Anzahl an LEDs nicht der richtige Weg sein.
Wenn ich richtig rechne, müsste es ja ein Strom von (3*20mA)88=3,84A sein. Dementsprechend würde ich mir ein Netzteil mit etwa 4A besorgen.
Meine Frage ist nun, wie ich das am besten/elegantesten verschalte.
Eine Möglichkeit sollte ja sein vor jede LED einen Transistor zu schalten, denke aber mal, dass es da doch wesentlich elegantere und auf günstigere Methoden geben sollte.

Würde mich über Hilfe sehr freuen.

Sind die TLCs nicht Stromsenken mit einstellbarer Stromstärke? Dann sehe ich dein Problem nicht, du verteilst ja die Last auch auf mehrere TLC5940...

Das denke ich auch, da Du ja wie es scheint auch jede LED einzeln ansteuern willst. Dazu reichen die 12 TLCs ja genau aus.
Nur noch eine Frage, willst Du die LED Matrix selsbt bauen? Die zu kaufenden LED-Matrizen sind ja im normalerweise für Multiplexing ausgelegt und haben nicht für jede LED einzelne Anschlüsse.

Wie bereits gesagt hat der TLC5940 aus Ausgänge Konstantstromsenken. (der Strom fließt in den Ausgang hinein und die interne beschaltung begrenzt den Strom auf einen durch den Widerstand an Iref einzustellenden Strom). Die LED nuß zwischen + Versorgugspannung und Ausgang geschaltet sein.

Eine vorgefertigte LED-Matrix ist nicht so einfach an einen TLC5940 anzuschließen. Die Ansteuerung der Anodenspalten muß synchronisiert zum PWM-Zyklus erfolgen.
Am enfachsten erfolgt es Durch die Verwendung von A2983- Transistor Arrays und dr TLCMUX Bibiothek.
Ich ahbe mit der Nibiothek von Mini Monome gute Ergebnisse erziehlt, mußte die Bibiothek aber teilweise umschreiben da die Definition der Ausgänge für die Ansteuerung der Anodenspalten und die Größe der Matrix in der Bibiothek hinterlegt ist und nicht außerhalb wie zb bei der LCD-Bibiothek erfolgt.

Eine zweite Bibiothek ist Google Code Archive - Long-term storage for Google Code Project Hosting.

Grüße Uwe

Erstmal vielen Dank für eure Antworten! :slight_smile:
Musste leider gerade nochmal spontan weg, daher antworte ich erst jetzt.

Das mit den TLCs stimmt natürlich, da habe ich nicht weit genug gedacht... :blush:
Ich habe das Projekt schon vor ca. einem halben Jahr angefangen, hatte dann aber leider keine Möglichkeit weiter zu machen, so dass ich jetzt etwas "raus bin".

Das macht die ganze Sache dann natürlich wesentlich leichter, dann kann ich ja das Netzteil direkt an die TLCs bzw. die LEDs anschließen.

Die LED Matrix habe ich soweit schon aufgebaut, die RGB-LEDs sind bereits in ein Brett montiert. Hab an jede LED ein 4 adriges Kabel(+Pol jeweils zusammen) gelötet, sodass ich dann jede LED einzeln ansteuern kann.

Hätte auch noch eine Frage bezüglich des Anschließens an die TLCs. Ist es "üblicher" dass man die einzelnen Farben jeweils auf die TLCs verteilt (also 4 TLCs rot, 4 TLCs grün, 4 TLCs blau) oder dass man die LEDs nacheinander Schaltet (LED1_Rot, LED1_Grün, LED1_Blau, LED2_Rot, ...) .
Da ich auch nicht die riesige Programmiererfahrung habe, weiß ich nicht, welche Methode zum Programmieren komfortabler ist.

Werde auch gleich mal in die Bibliotheken reinschauen, die 2. Bibliothek hatte ich auch schon einmal gefunden.

Die erste Bibiothek verwendet die RGB Led mit aufeinanderfolgenden Kathoden, also nicht nach Farben gruppiert. Mit einer Funktion der Bibiothek setzt Du die jeweilige Farbe pro RGB LED.
Grüße Uwe

Ok, dann werde ich wohl die Kathoden aufeinanderfolgend verschalten, passt auch wesentlich besser zu meiner bisherigen Verkabelung.

Gerade habe ich noch überlegt, wie ich die Spannungsversorgung realisieren will.
Eigentlich hätte ich mir ein 12V Netzteil mit 4-5A (also so ca. 60W) besorgt und dann mit den Spannungsreglern 7805 die TLCs sowie den Arduino versorgt.
Nun bin ich gerade bei Reichelt noch auf dieses Netzteil gestoßen.
Eigentlich könnte ich doch direkt dieses benutzen, oder? Preislich tut sich da ja nicht viel, ein anderes Netzteil + ein paar 7805, Kondensatoren,... kommt man zu einem ähnlichen Preis.
Spricht etwas gegen das Netzteil?

EDIT:
Interessant wäre ja vielleicht auch dieses Netzteil. Da hätte man mal noch die Option auf 12V, falls man eine größere Spannung benötigt.

Welche LED willst Du ansteuern?
Wenn Du die 8x8 Matrix multiplext dann brauchst du nur 8x den LED-Strom. Bei 50mA sind das maximal 400mA. Wenn Du 100mA wählst dann sind das immernoch nur 800mA.
Eine 5V Versorgung ist für diese LeD ausreichend.
Du kannst ein 5V 1A Netzteil nehmen.
Grüße Uwe

Hallo,
danke für deine Antwort.

Das Datenblatt von den LEDs habe ich in meinem 2. Beitrag verlinkt, sind 20mA, also pro LED 60mA.
An sich hatte ich nicht vor die LEDs im Multiplexbetrieb anzusteuern, ich habe ja durch die 12 TLCs die Möglichkeit jede LED einzeln mit PWM anzusteuern. Ich habe auch dementsprechend bereits die Kabel verlegt. Deswegen der hohe Strom...

Würdest du mir trotzdem zum Multiplexbetrieb raten? Hätte natürlich den Vorteil einer deutlich geringeren Leistungsaufnahme.
Was mich vom multiplexen abgeschreckt hat ist der "hohe" Programmieraufwand. Natürlich gibt es schon die fertigen Bibliotheken, die man ggf. nur anpassen müsste. Ich würde aber halt gerne möglichst viel selbst schreiben, damit der Lerneffekt größer ist. Daher wollte ich als Programmieranfänger erst mal ohne Multiplex arbeiten...

Ich weiß jetzt nicht was Du mit des LED-Matrix machen willst. Hast Du sie zu Bleuchtungszwecken oder ist es ein Tisch?
Je nach Einsatz kannst du die LED aber auch mit kleinern Strömen betreiben.

Ich hab mich verrechent. Da es RGB -LED sind ist der Strom 3 fach zu nehmen. Das Datenblatt gibt die Daten für 20mA an aber als Max-strom 50mA Dauerstrom bzw 100mA für Impulse. Bei Multiplexing könntest Du bis 100mA gehen. Also 8x3x100mA sind 2,4A.

Viele Grüße Uwe

Die LED-Matrix ist in einen Tisch verbaut, die LEDs dienen somit als Licht-Effekt, sie müssen nicht den Raum beleuchten.

Wie gesagt würde ich eigentlich lieber jede LED direkt ansteuern, ohne Multiplex. Ich würde einfach jede Farbe von jeder LED direkt in die TLCs führen. Die Kabel wäre auch schon dementsprechend vorbereitet.

Daher bin ich auf den hohen Strom von 3,84A gekommen (s. post 1).

Habe ich von der Methode sonst Nachteile, außer der höheren Leistungsaufnahme und dem höheren Verkabelungsaufwand(ist ja aber schon erledigt)?

Dann ist mal zu sehen wieviel Licht Du brauchst damit der Tisch ordentlich leuchtet aber noch kein Scheinwerfer ist.
Grüße Uwe

Mit den TLCs habe ich ja die Möglichkeit der PWM, d.h. ich brauche die LEDs dann später ja nicht mit voller Leuchstärke betreiben, falls es zu hell wird.

Wenn die LED mit 50% PWM hell genug wären, wäre es besser den Strom auf 50% zu setzen und so Strom zu sparen und ein kleineres Netzteil zu nehmen.
Grüße Uwe

Ja, das stimmt natürlich.
Leider ist der Holzaufbau noch nicht komplett, sodass ich es gerade schlecht testen kann.
Mal schauen, vielleicht kann ich es später noch testen, ansonsten nächste Woche.

Aber schon einmal vielen Dank für die klasse Hilfe!

So, ich habe es mal mit 3 LEDs getestet, ich denke es sollte ein geringerer Strom reichen. Das schont natürlich zusätzlich auch die LEDs.
Habe nun mal ein zusätzliches Poti eingeplant mit dem ich den Strom einstellen kann. So könnte ich falls doch Bedarf besteht recht leicht nachrüsten.

Habe hier noch ein Netzteil rumliegen, das max 3150mA liefert, einstellbar von (6-24)V.
Dementsprechend würde ich den Widerstand auf ca. 2700 Ohm stellen, somit würde pro LED ein Strom von 39,06/2700=14,5mA fließen, insgesamt also 14,5mA38*8 = 2,784A. Das sollte das Netzteil dann ja bei 6V leisten können.

Nun kann ich das Netzteil leider nur bis auf 6V stellen, brauche ja aber für den Arduino und die TLCs eine Spannung von 5V.
Ich hätte nun vor die 5V mit Spannungsreglern 7805 zu regeln. Habe von denen noch ein paar rumliegen. Spricht da etwas gegen? Ich müsste mir nochmals das Datenblatt anschauen, wegen der max. Leistung, aber ggf. kann ich ja mehrere 7805 nehmen und jeweils beispielsweise 3-4 TLCs mit einem 8705 versorgen.

Die LED kannst Du an 6V anschließen das ist kein Problem.
Der L7805 funktioniert nicht weil der minimale Spannungsunterschied zwischen Eingang und Ausgang mindestens 1,5V betragen muß. Was ist die nächst höher einstellbare Spannung? Falls das Netzteil regelbar ist, dann stelle die Ausgangspannung auf 7V
Grüße Uwe

Hmm, im Datenblatt des TLC steht als supply voltage min. 3 max 5.5 V.
Deswegen dachte ich, dass ich auch für die TLCs die Spannung auf 5V regle.

Das der 7805 eine höhere Spannungsdifferenz braucht ist natürlich richtig, das hatte ich in der schnelle übersehen...
Das Netzteil ist regelbar, jedoch ist die nächst höhere Spannung schon 9V

Wenn das Netzteil maximal 3,15A leistet wird die Angabe denke ich mal auf die 6V bezogen sein, das würde dann einer Leistung von 6V*3,15A=18,9W.
Wenn ich dann das Netzteil auf 9V stelle steht mir dann ja nur noch ein Strom von 18,9W/9V=2,1A zur Verfügung, was dann schon wieder arg knapp ist...

Vielleicht besorge ich mir dann doch noch ein neues Netzteil mit 5V, dann kann ich mir auch die Spannungsregler ersparen.

Die Versorgungsspannung des logikteils des TLC ist 3 bis 5,5V; die max Versorgungsspannung der LED (Spannung die an den Ausgöngen anliegen kann) ist aber 17V. So kann man zB mehrere LED in Reihe schalten. Wenn die Versorgungsspannung der Dioden zu groß ist, wird die Verlustleistung zu groß, da an der Konstantstromsenke die LED-Versorgungsspannung minus der Durchlaßspannung der LED anliegt.

Ich kann Dir nichts über das Netzteil sagen. Aber wenn ein Nennstrom angegeben wird dann über den gesamten Spannungsbereich. Ansonsten ist es explizit angegeben. Notfalls im Datenblatt oder Gebrauchsanweisung.

Grüße Uwe

Die Stromangabe steht direkt auf dem Netzteil. Eine Anleitung habe ich nicht mehr. Mal im Internet suchen, vielleicht finde ich noch ein Datenblatt.

Ansonsten müsste ich erst mal zurecht kommen, sonst melde ich mich nochmals. :wink:

Also nochmals vielen Dank für die tolle Hilfe!