Guten Tag miteinander.
Ich habe eine Frage zur LED-Welt. Ich bin nämlich gerade daran für die
Schule einen 5x5x5 LED Cube zu bauen. Da dies dank meinen Vorkenntnissen
von dem Beruf her super geklappt hat, wollte ich nun privat einen
10x10x10 Cube bauen. Da mich dieser Würfel sehr gereizt hat, möchte ich
die LED`s gleich in 3 Farben darstellen, am besten RGB LED`s. Ich habe
mich mal ein bisschen schlaugemacht und ziemlich viele verschiedene 4
polige RGB LED`s gefunden.
Ich habe aber vor einiger Zeit mal etwas über 3 polige RGB LED`s
gelesen, bei denen man einen 0V Pin, einen Spannungsversorgungs Pin und
einen steuerungs Pin hat. Die Farbe wechselt dann, je nach dem wie viel
Spannung man auf dem Steuerungs Pin angelegt hat. Ich finde im Netz aber
nirgends solche LED`s darum wollte euch fragen, ob ihr wisst wo man
solche LED`s herbekommt oder ob es sie überhaubt gibt.
Das 3 Pin LED währe für den Würfel nathürlich extrem viel besser, da der
Vertratungsaufwand dann nicht so riesig wäre.
Freundliche Grüsse
Rouben
>Die Farbe wechselt dann, je nach dem wie viel>Spannung man auf dem Steuerungs Pin angelegt hat.WS2811, WS2812. Die Daten werden seriell übertragen.
Nix Spannung anlegen.
>Ah ok, gibt es aber dann solche 3 poligen LED`s?
Keine Ahnung. Noch nie welche gesehen. Aber selbst wenn es sie gibt,
wo nochmal wolltest du deine 1000 analogen Spannungen zum
ansteuern herbekommen?
Rouben schrieb:> Ah ok, gibt es aber dann solche 3 poligen LED`s?
Ja die WS28XX hat er doch geschrieben. Und die haben 4 pole, weil die
Daten hinten natürlich zur nächsten LED weitergereicht werden müssen. So
kannst du bis 1024 LEDs mit einem Signal d.h. einen Portpin ansteuern.
gruß cyblord
@holger
Man braucht ja nicht 1000 Analoge spannungen.
@cyblord
Ahaa oke, hab das ein bisschen falsch verstanden aber jetzt ist alles
klar. Ich muss mal schauen ob man dass irgendwie hinbekommt die LED`s
schlau mit den 4 Pins zu einem Würfel zu Löten.
Vielen Dank für die schnellen Antworten und noch einen schönen Abend
Led's mit drei Anschlüsse haben nur zwei Farben. Ich denke sowas was du
suchst gibt es nicht. Aber die WS28XX leds kannst du mit 3 Pins
betreiben.
Du musst dann allerdings jeden Pixel zu einem Controller verbinden.
Ist sicher einfacher wie analoge spannungen
Rouben schrieb:> @holger> Man braucht ja nicht 1000 Analoge spannungen.
ok. 1000 nicht.
Aber immerhin muss in einem 10*10*10 Cube eine komplette Ebene leuchten
können. Das sind dann - moment - 10*10*3 - also 300 LED, die i
schlimmsten Fall gleichzeitig leuchten.
>Ahaa oke, hab das ein bisschen falsch verstanden aber jetzt ist alles>klar. Ich muss mal schauen ob man dass irgendwie hinbekommt die LED`s>schlau mit den 4 Pins zu einem Würfel zu Löten.
Dann überleg dir mal wie du einen 100nF Kondensator an die
kleinen Dinger anlötest, und zwar an jede! Ohne wird das nix.
Mit einer Standard 4 poligen LED bist du da evtl. besser beraten.
Wenn du einen 10x10x10 Cube bauen willst dann ist eine
sorgfältige Planung nötig. Einfach willenlos Teile kaufen
ist nicht zweckmässig. Ausserdem solltest du mehrere hundert
Stunden Arbeit dafür veranschlagen. Ein Wochenende reicht da nicht.
Und dann solltest du dir auch überlegen wie du da überhaupt
Animationen für den Cube erzeugst. Das ist auch nicht mal so gemacht.
Ja, das mit der Analogen Geschichte war halt nur so ein Gedanke. Mit den
4 Pins wird es glaubich wesentlich einfacher.
Um das Programm für die Animationen machen ich mir nicht so Sorgen,
jedoch für die HardWare. Ich weiss nathürlich wie viel Arbeit in so
einem Würfel steckt aber ich möchte das Projekt bewältigen. Ich werde
nun zuerst ein System für die HardWare entwickeln dann schaue ich dann
mal weiter, ob ich das Projekt hinkriege.
Finn schrieb:> Led's mit drei Anschlüsse haben nur zwei Farben. Ich denke sowas was du> suchst gibt es nicht. Aber die WS28XX leds kannst du mit 3 Pins> betreiben.> Du musst dann allerdings jeden Pixel zu einem Controller verbinden.
Was für ein Unsinn! Die LEDs werden hintereinander geschaltet und
brauchen exakt 1 Portpin.
> Dann überleg dir mal wie du einen 100nF Kondensator an die> kleinen Dinger anlötest, und zwar an jede! Ohne wird das nix.
Sagt wer? Bei eBay kannst du ganze Ketten damit kaufe, mit 60 LEDs/m
z.B. und auch fertige Matrizen mit z.B. 16x16 LEDs, da ist auch nicht an
jeder ein Kondensator.
Die einzige Frage ist, taugt die Abstrahlform für einen Cube, und
wieviele LEDs davon kann man schnell genug ansteuern für eine Animation.
gruß cyblord
cyblord ---- schrieb:> Was für ein Unsinn! Die LEDs werden hintereinander geschaltet und> brauchen exakt 1 Portpin.
Schon klar. Aber du mußt seine Aussage im Kontext lesen, dann wird sich
dir der Sinn erschließen.
> Sagt wer?
Das Datenblatt und die Erfahrung von WS28xx Nutzern.
> Bei eBay kannst du ganze Ketten damit kaufe, mit 60 LEDs/m> z.B. und auch fertige Matrizen mit z.B. 16x16 LEDs, da ist auch nicht an> jeder ein Kondensator.
Ja, in der Bucht wird tatsächlich auch viel Mist vertickt.
Finn schrieb:
> Led's mit drei Anschlüsse haben nur zwei Farben. Ich denke sowas was du> suchst gibt es nicht. Aber die WS28XX leds kannst du mit 3 Pins> betreiben.> Du musst dann allerdings jeden Pixel zu einem Controller verbinden.
Was für ein Unsinn! Die LEDs werden hintereinander geschaltet und
brauchen exakt 1 Portpin.
cyblord ich habe geschrieben man kann. Es würde definitiv gehen !
Man kann sie aber auch hintereinander schalten wie es gedacht ist. Nur
braucht man dann 4 anschlüsse.
Kann mir jemand sagen wie lange es dauert bis bei den WS28xx die Daten
für die 1024 Pixel durchgetaktet sind?
Also was für eine Framerate hätte so ein 10x10x10 Cube?
Achso, das war auf die 3 Anschlüsse bezogen. Ok. Hab ich so nicht
verstanden. Aber es wär auch abwegig es so zu machen.
> Kann mir jemand sagen wie lange es dauert bis bei den WS28xx die Daten> für die 1024 Pixel durchgetaktet sind?> Also was für eine Framerate hätte so ein 10x10x10 Cube?
Schau mal ins Datenblatt. Da steht das. Müsste auch nachgucken. Ich
denke für 1000 LEDs wird es zu lange sein. Aber man kann es ja auf
mehrere Portpins aufteilen.
>Die einzige Frage ist, taugt die Abstrahlform für einen Cube,
Auch diese Frage gehört zur Planung eines Cubes. Die WS2811 sind
für LED Stripes konstruiert und strahlen nur wenig zur Seite.
Bei einigen Cubes hab ich gesehen das auf die LEDs
Stückchen von Heisskleber als Diffusor draufgesetzt wurden
weil die LEDs eben eher vorzugsweise in eine Richtung strahlen.
Man sollte mit ein paar Leds erst mal ausprobieren wie die
Richtungswirkung so ist bevor man 1000 Stück davon kauft.
holger schrieb:>>Die einzige Frage ist, taugt die Abstrahlform für einen Cube,>> Auch diese Frage gehört zur Planung eines Cubes. Die WS2811 sind> für LED Stripes konstruiert und strahlen nur wenig zur Seite.
Genau da seh ich auch das größte Problem.
Wobei allerdings die Ansteuerung so interessant ist, (und wen die 33 fps
tatsächlich erreicht werden können, habs nicht nachgerechnet) dann wär
ein 1000er Cube der 1 Portpin braucht natürlich wirklich ein Novum. Wenn
man bedenkt wievie Bauteilaufwand man dadurch einsparen könnte. Da lohnt
es sich schon hier mal dran zu bleiben.
gruß cyblord
cyblord ---- schrieb:> Wobei allerdings die Ansteuerung so interessant ist, (und wen die 33 fps> tatsächlich erreicht werden können, habs nicht nachgerechnet) dann wär> ein 1000er Cube der 1 Portpin braucht natürlich wirklich ein Novum.
Kommt auf das Programm drum rum an. Man muß bedenken, daß bei einer
Kette aus 1000 Stück WS2812 der Refreshzyklus 30ms dauert und NICHT
unterbrochen werden darf. Wegen des engen Timings müssen in dieser Zeit
auch alle Interrupts gesperrt werden.
Ich würde mir auch keinesfalls die Arbeit antun wollen, 1000 SMD-LEDs
händisch mit Lackdraht zu verbinden. Aber wenn man viel Zeit und nichts
Besseres vor hat...
Ich halte das für keine realisierbare Idee.
Der Abstrahlwinkel ist einfach nicht geeignet für einen Cube!
Des weiteren kann ich mir auch keine vernünftige Methode vorstellen, wie
du die verbinden willst und die 100nF würde ich dir eigentlich auch ans
Herz legen.
Ich würde da auf Standard 4-Pin RGBs zurückgreifen.
Gruss
Und einfach, dass ich es noch gesagt habe.
Ich nehme an dein 5x5x5 Cube war einfarbig, also 125 Pins.
Ich hoffe dir ist klar, dass du jetzt 3000 Pins hast.
Sprich: 24x mehr Strom, 24x mehr Daten und 24x mehr Aufwand beim Aufbau.
Ich will dich nicht davon abhalten, aber dass sollte dir schon klar sein
:)
Icke ®. schrieb:> cyblord ---- schrieb:>> Wobei allerdings die Ansteuerung so interessant ist, (und wen die 33 fps>> tatsächlich erreicht werden können, habs nicht nachgerechnet) dann wär>> ein 1000er Cube der 1 Portpin braucht natürlich wirklich ein Novum.>> Kommt auf das Programm drum rum an. Man muß bedenken, daß bei einer> Kette aus 1000 Stück WS2812 der Refreshzyklus 30ms dauert und NICHT> unterbrochen werden darf. Wegen des engen Timings müssen in dieser Zeit> auch alle Interrupts gesperrt werden.
Richtig, aber wenn der Zyklus um ist, hast du dafür alle Zeit der Welt
um z.B. das nächste Frame zu laden. Bei normaler Multiplex-Ansteuerung
muss halt dauernd was gemacht werden. Man könnte das ganze sogar ohne
Interrupts machen, eine einfache Schleife und feste Delays und alles
schön nacheinander ;-) Für die Freunde der Interruptfreien
Programmierung (auch Anfänger genannt).
> Ich würde mir auch keinesfalls die Arbeit antun wollen, 1000 SMD-LEDs> händisch mit Lackdraht zu verbinden. Aber wenn man viel Zeit und nichts> Besseres vor hat...
Aber ist es so viel einfacher 1000 normale RGB LEDs zu verlöten?
Allerdings an jede LED noch einen C ran wäre in der Tat aufwändig. Da
ich allerdings auch glaube dass der Abstrahlwinkel ungeeignet ist,
bleiben dafür wohl nur die 2D Anwendungen, für die das Ding ja auch
vorgesehen ist.
Ach ja, gehts eigentlich nur mir so, oder ist das Datenblatt vom 2812
etwas gewöhnungsbedürftig? Die Texte sind an vielen Stellen durchsetzt
mit dem typischen China-Englisch und z.B. die zulässige Betriebsspannung
findet sich als max nur in den AMR aber nirgends in den Electrical
Characteristics.
Ich habe das hier: http://www.adafruit.com/datasheets/WS2812.pdf
Ist das überhaupt das original Datenblatt? Ich finde kein besseres.
Welcher VSS und VDD ist denn nun zulässig? Min und Max?
gruß cyblord
cyblord ---- schrieb:> Aber ist es so viel einfacher 1000 normale RGB LEDs zu verlöten?
Bedrahtete auf jeden Fall. Dort übernehmen die Beinchen auch gleich die
mechanische Stabilität.
Die Ansteuerung der LEDs könnte man evtl. auf einen separaten Controller
auslagern und die 3000 Byte per SPI dorthin schieben. In der
Zwischenzeit kann sich der primäre µC um das Hauptprogramm kümmern.
cyblord ---- schrieb:> Welcher VSS und VDD ist denn nun zulässig? Min und Max?
Die Maximum Ratings sprechen von 6-7V, normal sind 5V +-10%. Im Forum
gibts schon jede Menge Ansteuerbeispiele und ein Wiki.
Icke ®. schrieb:> Die Ansteuerung der LEDs könnte man evtl. auf einen separaten Controller> auslagern und die 3000 Byte per SPI dorthin schieben. In der> Zwischenzeit kann sich der primäre µC um das Hauptprogramm kümmern.
Aber in der Zeit, in der man die 3000 Bytes per SPI überträgt, könnte
man doch auch die Daten direkt an die LEDs tackern. Klar, darf nicht
unterbrochen werden, aber sonst.
Je länger ich drüber nachdenke, desto besser erscheint mir sowieso das
ganze ohne Interrupts zu machen. Grade in Anwendungen wo man nicht
unbedingt 1000 von den Dingern hat, geht das Übertragen ja recht fix. Je
nach Refresh-Zeit die man haben will, kurz die Übertragungszeit opfern,
Interrupts abschalten und das ganze rauschreiben. Ist für viele
Anwendungen wahrscheinlich besser als mit Interrupts.
gruß cyblord
Ich persönlich halte die WS28xx Reihe hierfür geeignet, solange einen
die "niedrige" Aktualisierungsrate nicht stört. Die erhältlichen Ketten
sind fertig verdrahtet also fällt das Löten weg....Verwendet man WS2801
Pixel kann der Programmablauf auch kurz unterbrochen werden (>500µs +
Reserve) für eventuelle Interrupts.
Jedoch muss man sich im Klaren sein, das generell bei diesen Bausteinen
nicht 1000 Pixel hintereinandergeschalten werden können. Der
Spannungsabfall auf den Leitungen wird so groß, das die letzten in der
Reihe nicht mehr genug spannung erreicht. -> Also sind mehrere
Einspeisungen notwendig.
Kondensatoren sind auch nicht notwendig, da die Pixel bis zu nächsten
Ansteuerung selbstständig weiterleuchten.
Das größte Problem sind allerdings, meiner Meinung nach die
Astronomischen Kosten! 50 stk bekommt man in china für ca 15€ sind also
300€. Desweiteren sind die Dinger nicht gerade "schlank" einen würfel so
wie man sie in Youtube und dergleichen sieht wird man damit nicht
hinbekommen!!
Grüße
Matthias Lindner schrieb:> Die erhältlichen Ketten> sind fertig verdrahtet also fällt das Löten weg.
Dafür stören die Bänder die freie Sicht auf darunterliegende Ebenen.
Matthias Lindner schrieb:> Kondensatoren sind auch nicht notwendig, da die Pixel bis zu nächsten> Ansteuerung selbstständig weiterleuchten.
Die Kondensatoren dienen zum Abblocken der Spannung für den
Controllerchip. Wie man diversen Threads entnehmen kann, kommt es
insbesondere bei langen Stripes ohne Cs zu Funktionsstörungen bzw.
Verfälschungen der Bitfolge.
Icke ®. schrieb:> Kommt auf das Programm drum rum an. Man muß bedenken, daß bei einer> Kette aus 1000 Stück WS2812 der Refreshzyklus 30ms dauert und NICHT> unterbrochen werden darf. Wegen des engen Timings müssen in dieser Zeit> auch alle Interrupts gesperrt werden.
kommt doch stark auf die auswahl des controllers an
mit z.B. einem STM32 und DMA übernimmt die Hardware die üebrtragung zu
100%
da kann sich die CPU nach belieben um anderen kram kümmern :)
obowhl die 33 fps realistisch klingen würde ich das doch auf mindestens
2 Teile verteilen, vervielfacht gleich die fps :)
Hi,
- auch bei den fertigen Strips sind Stützkondensatoren verbaut
(zumindest bei denen die ich habe)
- Das eigentliche serielle Ansteuerungssignal wird bei jeder LED
"aufbereitet", somit könnten tatsächlich 1000 in Reihe geschaltet werden
- Das Übernehmen der neuen Leuchtwerte aus dem Latch erfolgt erst in der
Ansteuerungspause (50µs), d.h. alle LEDs werden dann synchron ihre Farbe
ändern
- Mit entsprechender Software und schnellem Controller könnte man z.B.
auch 8 Datenkanäle parallel füttern
Da man nun auch nicht einen Strip zerschneiden möchte um daraus einen
Cube zu bauen, würde es m.E. Sinn machen kleine Platinchen in etwa der
LED 5050 Größe zu haben, die auf der Oberseite die LED haben und auf der
Unterseite den Stützkondensator und die Pads um die Drähte anzulöten.
Dabei würde ich die Spannungsversorgung der LEDs, auch wg. der
mechanischen Stabilität, als Gitter bzw. Matrix bauen. Das Datensignal
würde ich mit dünnem Lackdraht routen.
Wie man das Abstrahlverhalten etwas "netter" gestalten kann ist noch
offen, cool wären durchsichtige "Plastikmurmeln" von ca. 8mm die man an
der Unterseite etwas abflachen und auf die LED kleben müsste o.ä...
Eine Menge Arbeit ist es auf jeden Fall... ich würde erstmal einen
"proof of concept" mit z.B. 4x4x4 bauen wollen.
Grüße
Markus
benwilliam schrieb:> mit z.B. einem STM32 und DMA übernimmt die Hardware die üebrtragung zu> 100%
Das ist natürlich was anderes, ich bin von 8-Bit AVR ausgegangen.
Markus M. schrieb:> - Das Übernehmen der neuen Leuchtwerte aus dem Latch erfolgt erst in der> Ansteuerungspause (50µs), d.h. alle LEDs werden dann synchron ihre Farbe> ändern
Da wär ich mir nicht so sicher. Wenn ich das richtig verstanden habe,
reicht der WS2811 anders als beim Schieberegister nur die überzähligen
Bits weiter, d.h. erst wenn er mehr als 24Bit empfängt, wird DO aktiv.
Die nächste LED behält dann wieder 24Bit für sich und so weiter. Da ein
Bit 1,25µs benötigt und pro LED 24Bit "hängenbleiben", bekommt die
jeweils nächste ihre Daten immer mit 30µs Verzögerung. Da die erste LED
in der Kette nichts von ihren Nachfolgern weiß, schaltet sie nach 50µs
LOW die Farbe gültig, während die Kollegen weiter hinten noch fleißig am
Durchreichen sind. Bevor also der RESET-Code an der 1000. ankommt,
vergehen immerhin fast 30ms. Bei schnellen Animationen könnte das schon
stören.
Oder habe ich einen Denkfehler?
Icke ®. schrieb:> Da wär ich mir nicht so sicher. Wenn ich das richtig verstanden habe,> reicht der WS2811 anders als beim Schieberegister nur die überzähligen> Bits weiter, d.h. erst wenn er mehr als 24Bit empfängt, wird DO aktiv.> Die nächste LED behält dann wieder 24Bit für sich und so weiter. Da ein> Bit 1,25µs benötigt und pro LED 24Bit "hängenbleiben", bekommt die> jeweils nächste ihre Daten immer mit 30µs Verzögerung. Da die erste LED> in der Kette nichts von ihren Nachfolgern weiß, schaltet sie nach 50µs> LOW die Farbe gültig, während die Kollegen weiter hinten noch fleißig am> Durchreichen sind. Bevor also der RESET-Code an der 1000. ankommt,> vergehen immerhin fast 30ms. Bei schnellen Animationen könnte das schon> stören.> Oder habe ich einen Denkfehler?
soweit ich das verstanden habe, gelten die 50µs sobald kein flanken
wechsel auf dem datenpin mehr statt findet, dies wäre aber der fall auch
wenn daten nur weiter gereicht werden.
Somit dürften die neuen Farbwerte erst übernommen werden wenn alle 1000
farbwerte übertragen wurden.
...ich hatte es auch ausprobiert, in dem ich einfach fortlaufend weitere
Daten geschickt habe -> die Werte wurden wirklich erst bei der Pause
übernommen.
Grüße
Markus
Durch diesen Thread hab ich jetzt auch mal wieder etwas mit den 2812
rumgespielt. Funktionieren an sich ja echt gut die Dinger.
Aber weiß zufällig jemand warum die Beschaltung von VCC im Datenblatt so
ist wie sie ist? Also warum soll da von VDD über einen 150 Ohm
Widerstand gegangen werden?
gruß cyblord
cyblord ---- schrieb:> Also warum soll da von VDD über einen 150 Ohm> Widerstand gegangen werden?
Das ist die Versorgungsspannung für den Controllerchip. Der Widerstand
und der Kondensator entkoppeln und glätten diese, weil die Stripes
gewöhnlich nur eine Leitung für die Betriebsspannung mitführen und dort
ripplemäßig ziemlich was los sein kann.
Mein Stripe funktioniert aber auch ohne den Widerstand problemlos, hat
jedoch für jede LED den 100nF-C.