Go Down

Topic: 64 RGB-LED Matrix, TLC5940, Leistungsversorgung (Read 6078 times) previous topic - next topic

dominikdh

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)*8*8=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.

sth77

Sind die TLCs nicht Stromsenken mit einstellbarer Stromstärke? Dann sehe ich dein Problem nicht, du verteilst ja die Last auch auf mehrere TLC5940...
Mein Arduino-Blog: http://www.sth77.de/ - letzte Einträge: Teensy 3.0 - Teensyduino unter Window 7 - Teensyduino unter Windows 8

mkl0815

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.

uwefed

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 http://www.thebox.myzen.co.uk/Hardware/Mini_Monome.html 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 http://code.google.com/p/tlc5940arduino/

Grüße Uwe



dominikdh

Erstmal vielen Dank für eure Antworten! :)
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... :smiley-red:
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.

uwefed

#5
Mar 31, 2012, 05:18 pm Last Edit: Mar 31, 2012, 11:01 pm by uwefed Reason: 1
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

dominikdh

#6
Mar 31, 2012, 09:54 pm Last Edit: Mar 31, 2012, 10:08 pm by dominikdh Reason: 1
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.

uwefed

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 

dominikdh

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...

uwefed

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

dominikdh

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)?

uwefed

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

dominikdh

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.

uwefed

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

dominikdh

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!

Go Up