Forum: Mikrocontroller und Digitale Elektronik LED Cube 16*16*16 monochrome


von Max D. (cube_erbauer)


Lesenswert?

Hallo Community,
entschuldigt bitte falls ich hier in der falschen Unterkategorie bin und 
ich  euch mit meiner wahrscheinlich banalen Frage belästige, doch leider 
habe ich im web als auch insbesondere hier im Forum noch keine Antwort 
auf meine Frage gefunden.

Zu meiner Frage:
Als neues Projekt habe ich mir nun einen 16*16*16 monochromen LED Cube 
vorgenommen. Einfarbig deshalb weil mir bei einem RGB Würfel der Aufwand 
zu groß ist (auch schon 4 Ebenen fertig).
Für meinen vorherigen kleinen Würfel(5^3) habe ich einen ARDUINO UNO 
verwendet.

Der Aufbau des Würfels mit weißen diffusen LEDs, als auch die 
Ansteuerungstechnik per multiplexing ist mir bekannt. Jedoch weiß ich 
nicht ob ein Arduino UNO (benötige sowieso neuen, da der alte verbaut 
ist) für einen Würfel mit 4096 LEDs ausreicht. Im Forum habe ich öfters 
von FPGAs gelesen, doch die scheinen mir sehr kostspielig zu sein. Ich 
würde gerne einen Oneboard-PC wir Rasperripi, Intel Galileo, Aduino 
Mega, Arduino DUE oder Beagle Board Black (auch Arduino UNO wenn er 
ausreicht) hernehmen. Nur da im Web immer wieder steht, dass die 
Prozessoren schnell ausgelastet sind. Bin auch für anderes offen, doch 
die oben genannten sind bis jetzt meine Favouriten. Der Arduino/etc. 
sollte genügend Rechenleistung aufweisen um eine Soundsteuerung zu 
realisieren.
Außerdem will ich den Cube nach dem Programmieren per Wifi mit dem Handy 
steuern(mit eigener App).
Kann ich dafür an einem Arduino einfach einen WLAN-USB-Stick verwenden? 
Außerdem würde ich gerne vier Tasten und vier Helligkeitssensoren 
(Fotodioden?) verwenden.
Zur PWM habe ich mir einen Takt von mindestens 1,6kHz vorgestellt und 
jede Ebene dann halt immer einzeln anzusteuern. Besser wären natürlich 
ca. 10kHz zur besseren Helligkeitsregelung.
Dann nach der Steuerung würde ich zum Multiplexen der Säulen (jeweils 16 
LEDs) Schieberegister verwenden. Sind die schnell genug oder gibt es 
irgendwelche besonders schnellen Varianten?
Die Ebenen würde ich aufgrund des hohen Stroms (256LEDs bis zu 6A) mit 
MOSFETs ansteuern.

Was haltet ihr davon Verbesserungsvorschläge erwünscht.
Vielen Dank im voraus für euere konstruktiven Vorschläge und Bemühungen!

von Marcus W. (marcusaw)


Lesenswert?

Wenn dir einer nicht reicht, nimm eine ganze Batterie davon her und lass 
sie über I²C miteinander reden oder nimm einen größeren Controller.

P.S: Ein FPGA, ein SoC und ein µC haben ungefähr soviel miteinander zu 
tun, wie ein Glockenturm, eine Ameise und eine Ente - außer dass sie 
alle auf Kohlenstoff basieren - nix.

Die Arduinos (uno, due etc etc etc) sind Microcontroller - zum Steuern 
und datenerfassen gedacht.

Beaglebone/rPi/Galileo sind SoC / mini-Pcs mit Zusatzperipherie, mit 
richtigem Betriebssystem etc - zum auswerten und darstellen bzw 
transportieren der Daten gedacht.

Ein FPGA ist bare-metal - einfach ein haufen Logikgatter, denen du 
einprügeln musst, was sie tun sollen. Mit FPGAs kannst du vom kleinten 
Microcontroller bis hin zur komplexen CPU alles über Software nachbilden 
- mit entsprechendem Aufwand. Wenn du es dann Gatter für Gatter 
nachgebildet hast, geht die richtige Programmierung erstmal los. Das ist 
für anfänger genauso sinnvoll, wie wenn du ihnen einen Eimer 
Siliziumsand zum CPU-selber-machen gibts.

von Max H. (hartl192)


Lesenswert?

Ich denke mit einem 8bit µC sollte es leicht möglich sin. Nur als 
Beispiel: Wenn man alle 4096 bit mit 16MHz SPI rausschiebt, dauert das 
nur 256µs. Die Geschwindigkeit dürfte nicht das Problem sein. Du 
brauchst aber ein µC mit genug RAM und ROM für dein vorhaben. 512Byte 
RAM brauch der "Framebuffer".
In C oder ASM wäre es möglich, ich frage mich aber, ob es mit dem 
Overhead des Arduinos noch möglich ist...

Beim 1:16 Multiplexing hast du aber das Problem, dass die LEDs, da sie 
nur 1/16 der Zeit an sind mit dem 16 fachen Strom betreiben musst und 
die gleiche Helligkeit zu erreichen. Die meisten LEDs halten das nicht 
aus.

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