Hilfe bei Arduino Uno LED Matrix benötigt

Hallo liebe Arduinisten,

ich wende mich an euch, weil ich leider im Elektrotechnischen bereich nicht so sehr bewandert bin, aber dennoch gerne ein kleines Projekt umsetzen würde.

Und zwar ist mein Problem erstmal, dass ich mit meinem Arduino Uno eine 11x19 LED-Matrix ansteuern möchte.

Es sind 11 LED Streifen mit je 19 WS2812b LEDs und an jeder einen WS2811 Controller.
Die LED-Streifen sind die hier

Jeder Streifen soll an einem digitalen PIN liegen.

Kann mir jemand sagen was ich dazu alles benötige, auch um die Stromversorgung hinzubekommen? Oder hätte jemand ein Tutorial um so etwas selbst zu erlernen? Ich weiß leider auch nicht wie das hier anzugehen habe und schon allein, wie ich eine externe Stromquelle mit einbinde und was für eine externe Stromquelle ich dafür benutzen soll.
Bin in dem Themengebiet, wie mir scheint, einfach eher untalentiert, würde aber trotzdem gerne weiter in die Materie eindringen...

Ich weiß leider nicht was Ihr dazu noch wissen müsst, deshalb bitte human bleiben diesbezüglich :wink:

Liebe Grüße und schon mal Danke im voraus!

Es ist meist hilfreich, sich vor dem Kauf die Datenblätter zu besorgen, da steht alles Wissenswerte drin.

DrDiettrich:
Es ist meist hilfreich, sich vor dem Kauf die Datenblätter zu besorgen, da steht alles Wissenswerte drin.

Nur bedingt, der Threadstarter hat selbst gesagt, dass er nur wenig Ahnung von Elektronik hat. Wenn ihm schon unklar ist, wie die Spannungsversorgung der WS2812 zu realisieren ist, hilft ein Datenblatt gar nicht bei der Projektumsetzung.

exizt:
Jeder Streifen soll an einem digitalen PIN liegen.

Von dieser Idee solltest du dich gleich verabschieden. Die Datenübertragung zu den WS2812 geschieht mit einem bestimmten Takt (400 kHz, soweit ich mich recht erinnere), das an 11 Pins des Atmega328 zu realisieren ist aussichtslos.
Das ist aber weniger schlimm, du bekommst ja die Streifen auch als durchgehende Kette geliefert. Nichts hindert dich daran, die Kette nach jeder 19. LED zu trennen, mittels ein paar Litzen die getrennten Anschlussstellen zu verbinden und deine 11x19-Konstruktion schlaufenartig aufzubauen. An diesen flexiblen Punkten kannst du dann auch mehrmals die Versorgungsspannung für die LEDs einspeisen.

Was möchtest du denn auf dem entstehenden Display anzeigen?

[edit] Uwe sagt weiter unten 800 kHz, dann wirds wohl so sein. Danke für die Berichtigung!

Aha Du hast die aktuelle Nummer von MAKE gelesen? Artikel-Archiv | Make Magazin 1/2015, Seite 12 | Heise Magazine Dort ist auch eine Beispielsketch unter Folien und Software für MakeBlock herunterladbar.

Jede LED verbraucht maximal 60 mA bei 5V. Das sind bei 11x19 LED stolze 12,5A.
Du mußt die Spannung an mehreren Punkten einspeisen. Da Du 11 Streifen zu 19 LED hast kannst Du jeden Streifen an beiden Enden einspeisen.
Die Streifen werden alle in Serie geschaltet ( Do mit Di Verbinden) und von einem Pin des Arduino gesteuert.

Achtung diese LED-Streifen sind 50 cm lang (30 LED) und dann zusammengelötet. Der Abstand zwischen LED und LED bei einer Lötstelle ist nicht ganz gleich wie zwischen LED und LED ohne Lötstelle.

Grüße Uwe

sth77:
Von dieser Idee solltest du dich gleich verabschieden. Die Datenübertragung zu den WS2812 geschieht mit einem bestimmten Takt (400 kHz, soweit ich mich recht erinnere), das an 11 Pins des Atmega328 zu realisieren ist aussichtslos.

Beim WS2812B, wie auf dem Strip auf der verlinkten Seite, sind es 800kHz.
Grüße Uwe

exizt:
Kann mir jemand sagen was ich dazu alles benötige, auch um die Stromversorgung hinzubekommen? Oder hätte jemand ein Tutorial um so etwas selbst zu erlernen? Ich weiß leider auch nicht wie das hier anzugehen habe und schon allein, wie ich eine externe Stromquelle mit einbinde und was für eine externe Stromquelle ich dafür benutzen soll.

Endlich mal wieder jemand, der sich fuer Matrixsachen interessiert, ich dachte schon, ich vereinsame hier.

Zu Deinen Fragen: Du brauchst eine stabile 5V Quelle. Strombedarf siehe Uwes Posting. Vielleicht hast Du ein altes PC Netzteil rumliegen?!

Damit versorgst Du die LED Streifen mit Spannung. Ground (Minuspol) mit Ground vom Arduino verbinden.

Alle Leds an eine Datenleitung haengen. Din und Dout beachten - die funktionieren nur in eine Richtung. Gern noch einen 330 Ohm Widerstand zwischen Arduino und Din.

Leds IMMER zuerst oder gleichzeitig mit dem Arduino mit Spannung versorgen!

FastLED installieren und Beispiele testen.

Ausfuehrung!

Gruss, Helmuth

P.S. Hier ein paar von meinen Matrixinstallationen.

oh, dann muss ich wohl selbst wieder viel rumlöten :x
Aber erstmal Danke für die vielen Antworten und tollen Hilfen erstmal! :slight_smile:
Ja ich werd mir die Ausgabe von Make die Tage durchlesen und es sieht ja schonmal sehr vielversprechend aus! :slight_smile:
und ja, habe ein älteres Netzteil hier, aber wie kann man das so benutzen, bzw wie muss man das modifizieren?! :x
Maaan, dachte es ist zum programmieren und für den Arduino einfacher, die Reihen so aufzuteilen :confused:
Maan kotze ich mich damit an :smiley: aber das werde ich schon irgendwie schaffen!
Also nochmals Danke und ich werd mich mal in den kommenden Tagen melden, wie ich mich darin so mache :stuck_out_tongue:

Liebe Grüße

Hallo nochmal,

so also ich weiß jetzt auch dank Euch und Make:, wie ich jetzt weiter mache, jedoch weiß ich jetzt noch nicht, wie ich ein Netzteil an die LEDs bringe.
Also Es sind ja immer 19 LEDs, d.h. es sind ungefähr 0,315m, dann diese Mal die 11 Streifen, und mal die 3,6 Ampere, die pro Meter anfallen bei dem Streifen.
Also: W= (0,32m * 11 * 3,6A/m) * 5V oder wie?
Dann wären das 63 W bzw 12 A, kann das so sein? :smiley:
und wenn das stimmen sollte, dann einfach ein NT mit 5V und 12A bestellen? Aber wie gesagt kann ich mir das nicht so richtig vorstellen, wie ich das dann direkt an die LED-Streifen bekomme, bzw wie ich mit welchem Kabel das anschließen kann. :confused:

Liebe Grüße und Danke!

Bei 12A brauchst Du eine dicke Verbindung zwischen den + und - Anschlüssen der Streifen. Die Spannung in der Mitte dieser Verbindung einspeisen, ebenfalls mit einem dicken Kabel, und dort auch die Masse (Gnd) des Arduino anklemmen (dafür reicht ein dünneres Kabel, da darüber nur der Steuerstrom fließt). Was genau "dick" ist, kann ich aus dem Handgelenk nicht sagen. 1,5mm² dürfte das Minimum sein, 2,5mm² oder noch dicker schadet nicht. Und möglichst kein Steckernetzteil! Das Netzteil sollte möglichst kurz mit den Verbrauchern verbunden werden, das Netzkabel darf dagegen ruhig auch lang werden.

Bedenke daß der LED Strom durch die Masseleitung alle Datensignale um die Spannung anhebt, die auf den Masseleitungen abfällt. Wenn's Probleme gibt, ggf. jedem Streifen noch einen Elko (+ Kondensator?) zwischen + und - spendieren. Eventuell noch eine Sicherung sekundär am Netzteil einbauen (Kfz-Bedarf?), nicht zu schnell damit die nicht gleich beim Einschalten fliegt.

Dem Netzteil würde ich lieber ein paar mehr Ampere spendieren, als Du ausgerechnet hast, da die Angaben der Hersteller manchmal etwas optimistisch sind.

HI also ich betreibe ebenso WS2812b ledstripes mit 15x11 Pixel so wie bei dir 19x11 led´s.

ich steuere alle leds über einen digital pin und kann damit bilder erzeugen. dazu eignet sich die Software Jinx.
Was du noch benötigst ist eine kleine Firmware die das sogenannte tpm2 Protokoll verarbeiten kann.

die firmware ( ino) lege ich mal als datei anhang bei.

In der software Jinx musst du dann nur noch deine Matrix dimensionen (11x19) XY angeben und zum schluss patchen. dann sollte alles soweit funktionieren.

tpm2_test.ino (9.84 KB)

Ich bin auch am überlegen eine WS2812-Bilderrahmen-Matrix zu bauen. Bei mir wird es dann eine 22x16 Matrix.
Damit ich nicht mit 21 A zum Bilderrahmen fahren muß, hab ich mir überlegt ein 24V Netzteil zu kaufen und dann 5 5A Step-Down Wandler im Bilderrahmen zu nehmen. Rückwand wo die LED draufgeklebt werden, wird in Aluminium sein um die Abwärme abzuleiten (sind ja über 100W bei allen LED weis).
Spannungsversorgung dachte ich an beiden Enden der LED-Streifen mit 5V einspeisen und jeweils in Grüppchen an eigenen Wandler. So halte ich die Kabelquerschnitte und Spannungverluste klein.
Das Projekt steht im Moment, da Chinabestellungen nach Italien normalerweise 5 bis 6 Wochen brauchen und somit gerade in meinem Urlaub fallen würde, wo niemend das Paket entgegennehmen kann.

Soweit meine Ideen.
Viele Grüße Uwe

mein ziel ist in nicht mehr all zu weiter zukunft ein led wall system auf Teensy 3.1 zu entwickel welches sich dann jeder nachbauen kann. Die angestrebte dimension wird dann 240x120led sein. das wären bei 60led/m 4x2m in diversen 1x1m panele. alternativ 8x4m mit 30leds/m.

mit der stromversorgung bin ich auch noch am rechnen, der ansatz mit den 24V klingt recht interessant. evtl könntest du ja mal deine erfahrungen posten und evtl einen schaltplan. wäre sicher interessant auch für die module günstige 12V netzteile zu nutzen die dann eben durch ein vorschaltgerät auf 5V runtergeregelt wird und aufgeteilt wird auf die stripes.

wo bestellst du die stripes und zu welchem preis?

Die Fertigstellung läßt sicher auf sich warten. Ich rechne damit das Projekt Ende Juni wieder in Angriff zu nehmen. Aber dann gerne meine Erfahrungen mit dem Projekt.
Meine Bestelladresse für LED Strips liefere ich nach; muß nachschauen.
Grüße Uwe

Hi, mal eine Anmerkung wegen Strombedarf und Abwärme: Natürlich neigt man als guter Techniker dazu, hier von einem Dauerbetrieb unter Maximallast auszugehen - aber praktisch passiert das nie.

100W LED Licht sind so hell, wie ein Baustrahler. Da kann man nicht schmerzfrei reinschauen. Wenn man also nicht vorhat, die Matrix als Beleuchtung zu verwenden, wird man sie mit deutlich weniger Leistung betreiben.

Für Effekte macht volle Leistung Sinn, wenn die Sonne direkt auf die LEDs scheint, im Dunkeln ist es ungedimmt viel zu hell.

Außerdem macht es Sinn, sich mal zu fragen, ob man tatsächlich vorhat, alle LEDs weiss leuchten zu lassen.

Nach meiner Erfahrung - und ich habe nun mittlerweile wirklich viel LED Hard- und Software gebaut, benutzt man selten mehr als die Hälfte des rechnerischen Stromverbrauchs (eventuelle kurze Spitzen federt ein Elko ab).

Hängt natürlich hochgradig davon ab, was man machen (also anzeigen) will.

@psyqjo: "Die angestrebte dimension wird dann 240x120led sein."

Das bräuchte 87kB allein für den Bildspeicher. Ein Teensy 3.1 hat aber nur 64k. Über die Updategeschwindigkeit von 28800 LEDs schreibe ich erstmal nichts...

@all: Wenn ihr jetzt alle Matritzen bauen wollt, solltet ihr unbedingt die Verwendung von APA102 LEDs in Betracht ziehen. Der Geschwindigkeitsvorteil ist Euch vielleicht egal, aber: mit WS281xx funktionieren keine Interrupts, weil deren Timing zu eng ist. IR Fernbedienung geht dann z.B. nicht.

@exizt: Maximalstrombedarf = LED Anzahl * 0,06 A , aber man kann es natürlich auch komplizierter machen. :wink:

Grüße und bin schon wieder weg,

Helmuth

P.S. Am billigsten sind LEDs bei Aliexpress, gefolgt von Ebay.

Helmuth:
100W LED Licht sind so hell, wie ein Baustrahler. Da kann man nicht schmerzfrei reinschauen. Wenn man also nicht vorhat, die Matrix als Beleuchtung zu verwenden, wird man sie mit deutlich weniger Leistung betreiben.

Du nimmst mir das Wort aus dem Mund :wink:

Für die größe von 240x120 pixel waren mehrere teensy 3.1 gedacht, jeder davon steuert nur ein teil der 28800 led´s. aufgeteilt wird immer in 4000 led schritten. da ein teensy in verbindung mit dem octoboard ja mehr als 4000 led steuern kann und diese über syncronisierung verfügen war das meine erste wahl.

@psyqjo: Wenn Du das Projekt ernsthaft angehen möchtest, rate ich dringend, Dich im PJRC Forum umzusehen. Da sind einige Projekte mit >10000 LEDs dokumentiert inkl. aller auftretenden Probleme. Bevor Du jeden möglichen Fehler selbst wiederholen musst. Trivial ist so ein Projekt nicht mehr, aber machbar.

Daniel hat übrigens auch einen 16/24 Kanal Paralleloutput gechrieben, falls Geschwindigkeit für Dich relevant ist. Wieviele fps strebst Du an?

Aber die Octoboards mit den Netzwerkkabelbuchsen sind natürlich sehr praktisch - leider nur für 8 Kanäle.

mir persönlich reichen 25-30 fps. das mit den 8 kanal ist mir bekannt, damit wollte ich pro kanal 500 led´s ansteuern. also pro 30x30 panele dann 2 kanal so das ich mit einem teensy dann bis zu 4 panele ansteuere.

So also ich habe jetzt ein Netzteil hierfür bestellt und zwar das hier:
http://www.amazon.de/dodocool-Netzgerät-Schalter-Transformer-Netzteil/dp/B00RMWZ2IO
jedoch weiß ich jetzt nicht wirklich weiter, weil es dazu keine anleitunf oder ähnliches gibt. Ich weiß leider nicht, wie ich das überhaupt mit was für einem kabel an den Strom anschließen soll...
Und kurz noch ich habe diese LED-Streifen hier:


also weiß ich nicht, was hier + und - auf dem streifen sein soll.

Und dann noch eine frage... und zwar muss ich alle LED-Streifen auch vom +5V miteinander in reihe verbinden, oder kann ich theoretisch jeden davon in die reihe von nem breadboard stecken und diese dann befeuern?

LG