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.
Ein Bit dauert 1,25 µs. Davon 24 pro LED x 1000 Stück und 50 µs Pause zwischen den Zyklen macht theoretisch ~33 fps.
>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
:
Bearbeitet durch User
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
cyblord ---- schrieb: > Ist für viele Anwendungen wahrscheinlich besser als mit Interrupts. Laß das bloß nicht den Karl-Heinz oder PeDa hören =8P
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.
:
Bearbeitet durch User
in welchem modus wurden eure ausgeliefert? in dem schnellen und somit 1,25µs pro Bit oder dem langsamen 2,5µs ?
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.