Forum: Mikrocontroller und Digitale Elektronik Machbarkeit von 32 Meter WS2812


von Attila C. (attila)


Lesenswert?

Hallo!

Es soll ein Aikido Trainingsraum an 3 Seiten, 3 mal  12 Meter, mit LED 
Streifen ausgestattet werden die alle möglichen Farbmuster darstellen 
können.

Mein Ansatz wäre dies mit entsprechenden Streifen WS2812 zu tun. Neben 
Problemen wie der Stromversorgung stellen sich, in der 
Vorbereitungsphase, diverse Fragen:

- Ist der Ansatz mit WS2812 überhaupt schlau? Gibt es, nach Eurer 
Erfahrung, bessere Bauteile für dieses Projekt?

-Kann man das ganze überhaupt noch mit den üblichen 8bit AVR Steuern? 
Ohne genauer darüber nachgedacht habe sehe ich Arrays mit tausenden 
Variablen auf mich zukommen.

-Ohne mich damit asuzukennen: Sind Lösungen wie Raspbeery PI , Intel 
Edison oder ähnliches in Betracht zu ziehen? Oder gar: Ansteuern über 
AVR und die Farbmuster von einem PC generieren lassen?

-Hat jemand Erfahrung? Schon mal ähnliches gemacht? Tipps? Tricks? 
Links?

Vielen Dank!

von Thomas W. (Gast)


Lesenswert?

Attila C. schrieb:
> -Kann man das ganze überhaupt noch mit den üblichen 8bit AVR Steuern?
> Ohne genauer darüber nachgedacht habe sehe ich Arrays mit tausenden
> Variablen auf mich zukommen.

Das kommt auf die Dynamik deiner Beleuchtungsideen an. Algorithmisch 
erzeugte Muster brauchen keine tausende von Variablen.

von Thorsten (Gast)


Lesenswert?

Hallo Atilla.

Die wesentlichen Probleme hast Du schon erkannt.

Die üblichen WS2812 Ketten haben auf der Versorgungsspannung nach ein 
paar Metern schon einen erheblichen und sichtbaren Verlust, man sollte 
also alle 2-3 Meter erneut einspeisen und für die Versorgung 
entsprechend dicke Extraleitungen verlegen.

Eine Kette kann im Prinzip beliebig lang sein, länger als 5-6Meter würde 
ich sie aber dennoch nicht machen, wenn eine hohe Updaterate 
(>25/Sekunde) gewünscht ist.

Bei der Ansteuerung würde ich die Variante PC + Microcontroller wählen, 
wobei ich da einen STM32 einem AVR vorziehen würde, da dieser mehr 
Reserven beim doch recht kritischen Timing der WS2812 hat.

von Noch einer (Gast)


Lesenswert?

Kommt drauf an, wie viel Zeit du in die Programmierung stecken willst.

Für die dargestellten Muster kommen wahrscheinlich zig Änderungswünsche. 
Ein Script auf einem Raspberry ändern, dafür brauchst du nur einen 
Bruchteil der Zeit, die du bei einem Mikrocontroller brauchst.

Die zeitkritsche Ansteuerung auf einem PC? Dafür musst du dich ja erst 
mal in die Treiberentwicklung einarbeiten.

Ich schließe mich dem vorigen Beitrag an. PC bzw. Linux-Platine + 
Mikrocontroller.

von holger (Gast)


Lesenswert?

>Die zeitkritsche Ansteuerung auf einem PC?

Wenn man APA102 LEDs nimmt wird es völlig unkritisch mit der Zeit.
Das schafft ein PI spielend.

von Ulrich F. (Gast)


Lesenswert?

Schon mal ausgerechnet, wie viele WS2812 das werden?
Und das dann mal 3, für RGB, dann haste schon mal den nötigen 
Speicherverbrauch. Alleine für den (Sende)Buffer.


Attila C. schrieb:
> Kann man das ganze überhaupt noch mit den üblichen 8bit AVR Steuern?

Mit ein bisschen Softwareklimzug kannste die Daten für 8 Stripes über 
einen 8 Bit Parallelport gleichzeitig raus schieben.
Aber ob das Ram für 8 X 3m reicht möchte ich bezweifeln.


Beispielrechnung:
Wand 3m hoch bei 60 LED pro Meter, macht 120 LED, für eine senkrechte 
Linie.
3 Wände, a 12m, sind 36m Wand, bei 60 Streifen pro Meter, sind das 2160 
Streifen.
Also insgesamt 129600 WS2812.
Bei einem Spromverbrauch von 3 X 20mA pro WS2812 ist man dann bei 7776A 
bei 5V, bzw. 38880 Watt
39kW!

Jeder in dem Raum erblindet sofort und wird dazu noch gegrillt.
ohne Gewähr

von Attila C. (attila)


Lesenswert?

Ulrich: Nein , nein, nein! :-) Ich habe es nicht präzise genug 
ausgedrückt: EIN Streifen pro Wand! 4 mal 3 (12 Meter)  mal 3 (Wände) 
mal 60 = 2160 WS2812.

Ansonsten schon mal vielen Dank an alle für den Input!

von Marc V. (Firma: Vescomp) (logarithmus)


Lesenswert?

Attila C. schrieb:
> Es soll ein Aikido Trainingsraum an 3 Seiten, 3 mal  12 Meter, mit LED
> Streifen ausgestattet werden die alle möglichen Farbmuster darstellen
> können.
>
> -Kann man das ganze überhaupt noch mit den üblichen 8bit AVR Steuern?
> Ohne genauer darüber nachgedacht habe sehe ich Arrays mit tausenden
> Variablen auf mich zukommen.

 Kommt darauf an, was für Muster du darstellen willst und wie schnell
 dieses Muster wechseln soll.

 Einfache Rechnung:
 24bit x 1.25us = 30us pro LED.
 3Wände x 12m x 60LEDs = 2160 LEDs.
 2160LEDs x 30us = 64800us = 64.8ms = 15,4Hz
 Also, egal ob AVR oder STM, ein uc mit einer Datenleitung wird kaum
 genug sein.
 Man könnte jeweils 8 Streifen mit einem Port steuern, dann wären das
 etwa 123Hz - nur lässt sich 36 schlecht mit 8 teilen.
 Aber mit 3 AVRs, die jeweils eine Wand (12m) steuern, wäre das Ganze
 überhaupt kein Problem und 46Hz sind mehr als genug selbst für ziemlich
 komplizierte Farbwechsel.

 Und damit kommen schon Probleme auf dich zu:
 Wie soll das Ganze (wenn überhaupt) gesteuert werden ?
 Wie werden bestimmte Sequenzen (Farbmuster) ausgewahlt / gewechselt ?
 Wo werden die Farbmuster aufbewahrt ?

 Selbst wenn du das Ganze über DMX  steuerst, wirst du irgendwo die
 Sequenzen aufbewahren müssen, da die 512 Kanäle nicht ausreichen um
 etwas vernünftiges mit 2160 LEDs anzufangen, da wirst du dir schon
 ein ganzes Bündel von Befehlen ausdenken müssen, z.B. 8 oder 16 LEDs
 zu einer Gruppe zusammenfassen, einer Anzahl LEDs eine bestimmte
 Sequenz zuteilen usw.

 Also, mit PC Sequenzen erzeugen, im Flash aufbewahren, mit DMX
 auswählen. Meiner Meinung nach sind ATMEL FLASH (Serie AT45xx) die
 beste und preiswerteste Lösung, aber das ist nur meine Meinung...

von ThomasF (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich hab letztes Jahr eine LED-Matrix mit WS2812 gebastelt.
38*60 2280 LED's

2 Netzteile 90A + 45A

9 Mikrocontroller eHaJO Boards Mod. (WS5500 + ATXmega8E5)
9 Pegelwandler (3,3V auf 5V)

Das ganze wird über LAN von einem PC gesteuert mit 100Hz.
Eigenes C# Programm mit ArtNet Interface für MADRIX3 Software.

Ich kann nur sagen das hat viel Arbeit und Geld gekostet.
Habe aber auch viel gelernt und das Ergebnis entschädigt das.

Über LAN kann man das machen.

von Folker (Gast)


Lesenswert?

Eine interessante Möglichkeit WS2812 Strips anzusteueren ist der 
LED-Player-M
hier: http://www.ledswork.de/wp/2015/07/14/led-player-m-vorschau/
Das Teil gibts ab nächste Woche bei ELV im neuen Katalog und bei Diamex 
(LED-Genial) ab sofort.

Der Player kann maximal 2048 LED ansteuern in maximal acht Kanälen. Ist 
mit TPM2 direkt via USB ansteuerbar (Jinx! - sogar ein einfaches Windows 
- Tablet reicht dafür aus - oder ein Netbook oder irgendwas mit 
Windows). Die Jinx! Dateien kann man auch auf SD-Card exportieren, dann 
spielts der Player stand-alone ab.

Die Hinweise zu den Netzteilen oben sollte man ernst nehmen. Das dürfte 
der eigentliche Aufwand sein. Entweder dezentral mehrere kleine oder ein 
großes mit dementsprechenden Leitungsquerschnitten. Es sind bei 2048 
LEDs immerhin ca 120A (Volllast weiß) erforderlich. In der Praxis wird 
man das nicht schaffen, Ich arbeite mit einem Meanwell 90A 5V Netzteil, 
das ist für diese Anwendung ausreichend.

Bei der Signalverkabelung sollte man auch Leitungstreiber wegen der 
störsicheren Übertrageung einsetzen. Einfach 10m Signalleitung für jeden 
Kanal legen, das kann klappen - muss aber nicht, also eher nicht.

Leitungstreiber sind Pfennigware.

Hier mal ein Beispiel mit 8 Stück 16x16 Matrixen am LED-Player-M:
http://www.ledswork.de/wp/2015/08/02/led-player-m-steuert-8-16x16-digi-dot-matrixen/

Reichen 2048 LEDs nicht, dann nimmt man halt zwei von den teilen - ist 
sicher deutlich billiger und erheblich weniger Arbeit als so manche 
Bastellösung.

Viel Erfolg beim Projekt!

Folker

von Joachim B. (jar)


Lesenswert?

1. 32m WS2812B ist ja mal keine sinnvolle Aussage bei

30 LEDs/m oder 60 LEDs/m oder 144 LEDs/m (ich habe alle Typen gekauft)

32m x 144 LEDs/m gäbe 4608 LEDs * 60mA voll WEISS = 277A bei 5V

Thorsten schrieb:
> Eine Kette kann im Prinzip beliebig lang sein, länger als 5-6Meter würde
> ich sie aber dennoch nicht machen, wenn eine hohe Updaterate
> (>25/Sekunde) gewünscht ist.

pro LED 30µs bei 288 LEDs wordclock2 rund 9ms clockrate 800kHz, 
irgendwan wirds eng mit Video, LPD8806 mit 2MHz SPI wären da besser.

von Joachim B. (jar)


Lesenswert?

Thorsten schrieb:
> Eine Kette kann im Prinzip beliebig lang sein, länger als 5-6Meter würde
> ich sie aber dennoch nicht machen,

auch keine sinnvolle Angabe in Meter

Joachim B. schrieb:
> bei
>
> 30 LEDs/m oder 60 LEDs/m oder 144 LEDs/m

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Attila C. schrieb:
> Hat jemand Erfahrung? Schon mal ähnliches gemacht?

Ja. Viel Erfahrung hat Tim (https://cpldcpu.wordpress.com/) und auch ich 
habe sowas schon gemacht.

Attila C. schrieb:
> 2160 WS2812

Kein echtes Problem. Für "Schausteller" (Kirmes / Schützenfest) haben 
wir allerdings 8 Bit parallel ausgegeben, per DMA. Falls mal 'ne Leitung 
wackelt, sind nicht gleich alle LEDs aus, sondern maximal 12,5%.

Versorgung über kleine DC-DC-Wandler aus 24 Volt alle paar Meter:
http://www.aliexpress.com/item/-/1751218642.html, wie im
Beitrag "Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?"

Thorsten schrieb:
> … wobei ich da einen STM32 einem AVR vorziehen würde

Ja, denn der STM32 hat sogar DMA. Einen PC braucht man m.E. nicht.

Wie sollen die "Muster" entstehen? Es bieten sich zwei Möglichkeiten an: 
Vorprogrammiert auf SD-Karte (SPI und auch per DMA) oder in Echtzeit 
'berechnet'. Ersteres ist natürlich extrem flexibel.

: Bearbeitet durch User
von Marcel P. (souko)


Lesenswert?

Falls du dir einen kleinen PC irgendwo hinstellen möchtest, würde ich 
fast sogar zu dieser Kombination raten:

http://www.ulrichradig.de/home/index.php/dmx/art-net-pixel-con-neu

Das ding bekommt ArtNet über Ethernet und kann bis zu 1360 LED's des 
Typs WS28* steuern.

Auf den PC packst du dir unsere Software in Version 3.0:

http://www.dmxcontrol.de/

damit kannst du bis zu 16 DMX-Universen zu je 512 Kanälen steuern. Eine 
mächtige Effekt-Engine haben wir auch drin, welche Matrizen und 
Lauflichter in allen erdenklichen Variationen unterstützt. Natürlich ist 
die Software kostenlos ;-)

Oder du nimmst Jinx! , welches auch kostenlos ist:
http://www.live-leds.de/

: Bearbeitet durch User
von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Attila C. schrieb:
> Tipps? Tricks?

Ja, hier noch einer, sieht man am "Octo WS2812":
Da sind so genannte "digital isolators" drauf.

Das Problem ist der Spannungsabfall an der GND-Leitung, denn diese ist 
gleichzetig Stromversorgung und Signalmasse.

Bisher konnte ich durch Stern-Verkabelung und getrennte Masse-Leitungen 
für LED-Versorgung und MCU-Versorgung auf solche "Isolatoren" 
verzichten.

Da die LED-Streifen jedoch das meiste Geld kosten, ist der Preis für die 
Isolatoren vergleichsweise gering und man ist damit flexibler in der 
Verdrahtung, gerade wenn man 8 Ausgänge irgendwie auf 3 Wände verteilen 
will.

Wie würdest Du die Streifen verdrahten wollen?

Marcel P. schrieb:
> bis zu 1360 LED's

Und dann zwei davon, um 2160 LEDS zu schaffen?

200€ sind eine Hausnummer. Ich mache die Steuerung mit China-Boards für 
einstellige Euro-Beträge.

Für den, der es braucht und nichts selbst zusammen stöpseln will, sicher 
eine feine Sache, auch für den Preis.

Ansonsten würde ich, wenn man per PC drauf zugreifen will, einen ESP8266 
nehmen. Der hat für ~2€ WLAN on Board und genügend RAM.

: Bearbeitet durch User
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
Noch kein Account? Hier anmelden.