8x8x8 LED Cube: realisierung mit PIC

Gast #1122223
Lesenswert?

Hallo
ich bin schüler am TRBK in Iserlohn.
wir haben als facharbeit den pic-brenner von sprut.de gebaut und 
brauchten ein projetk... habe ein bisschen gegoogelt und nen 3x3x3 led 
cube gefunden und gebaut http://www.instructables.com/id/3x3x3-LED-Cube

sieht soweit ganz cool aus und funktioniert auch :)

aber jetzt zum wesentlichen,
nachdem das geklappt hat, wollen wir einen 8x8x8 cube bauen,
da stellt sich aber die frage, da das mit einem pic gemacht werden soll, 
welchen nimmt man?
http://www.mercateo.com/p/139-1146540/16BIT_MCU_128K_FLASH_40MIPS_SMD_Typ_PIC24HJ128GP510_I_PF.html

den habe ich gefunden, weil er genung i/o pins hat.
habe auch schon angefangen mit EAGLE den schaltplan und das board zu 
machen.

meine frage wäre, gibt es einen anderen pic, mit dem das besser geht, 
und wenn nicht,wo finde ich eine fassung für nen 100pol. smd ic ?

danke schonmal

mfg
Max
Gast #1122243
Lesenswert?

Wofür brauchst du so einen großen µC? Soll der Cube RGB könnnen, wenn 
nicht reichen 24 IO Ports. Zwei mal 8 für Reihe und Spalte und dann 
nochmal 8 um in die Teife zu gehen, da ist das Zauberwort multiplexing. 
Da der Cube dann 8PWM Kanäle braucht könnte man auch gleich einen Chip 
nehmen, der PWM Kanäle in Hardware bereit stellt. Mir persönlich gefällt 
da der TLC59116 von Texas Instruments. Der hat 16 PWM Kanäle jeweils mit 
eigener Konstantstromquelle, die pro Kanal bis zu 100mA leisten kann. 
Den muss man dann nur über I2C ansteuern. Zusammen mit einer Matrix zum 
Multiplexen reichen dann schon 10 Port-Pins aus.
Gast #1122322
Lesenswert?

hey
erstmal danke für dieschnelle antwort,...
ich habe mich mit dem großen noch nicht so genau auseinader gesetzt,
es kam mir halt nur die idee einen größeren als 3x3x3 zu machen, und 
habe dann gedacht, muss ja im pinzip das gleiche sein, nur halt "etwas" 
erweiter<;)

das mit dem cip, hört sich gut an, nur leider müssen bei nem pic 
bleiben, weil das unser projekt ist,
wie genau geht das denn dann mit dem multiplexen?

mfg
Max
Gast #1122443
Lesenswert?

den Chip würdest du ja mit dem PIC ansteuern. Von daher wüsste ich 
nicht, warum man ihn nicht nehmen sollte. Multiplexen ansich ist relativ 
einfach, zumindest von der Idee her. Die Ausführung ist etwas schwerer.

Fürs Multiplexen braucht man erstmal ein paar Transistoren. Am besten du 
stellst dir erstmal eine Matrix vor. Also sagen wir 3x3 LEDs. Jetzt 
könnte man ja hingehen und jeder LED einen eigenen Portpin zuweisen, 
macht 9. Oder man geht hin und denkt sich die LEDs weils als eine Reihe, 
die man Spaltenweise ansteuert. Dann braucht man 3 Pins für die LEDs in 
den Reihen und nochmal drei Pins für die Ansteuerung der Zeilen. Da sind 
es schon nur noch 6 zusammengezählt.

Ach menno etwas kompliziert zu erklären das ganze. Also. Wenn wir die 
Matrix von 3x3 durchnummerieren

1 2 3
4 5 6
7 8 9

dann kann man ja hingehen und die LEDS 1,4 und 7 auf einen Port Pin 
schalten, das selbe für 2,5 und 8, sowie 3,6 und 9. Nur würden dann ja 
immer 3 LEDs gleichzeitig leuchten. Deshalb baut man sich jetzt noch 
einen Transistor ein, der die Reihen gezielt mit Strom versorgt.

1 2 3 T1
4 5 6 T2
7 8 9 T3

Somit kann man dann jede Zeile einzeln einschalten und die LEDs einer 
Spalte leuchten nicht mehr Gleichzeitg. Das bedeutet aber auch, daß man 
die LEDs drei mal öfter umschalten muss. Sagen wir du willst die LEDs 
1,5 und 9 leuchten lassen, dann musst du nacheinander schnell

Led1 und T1, dann Led5 und T2, dann Led9 und T3 schalten und das schnell 
immer wieder hintereinander. Natürlich kann man das Spielchen jetzt auch 
noch in Ebenen machen, bedeutet aber wieder daß sich die Frequenz des 
Multiplexings erhöhen muss.

Ich hoffe das war einigermaßen verständlich.
#1122851
Lesenswert?

War nicht der ganze Sinn eines so "großen" 3D Kubus, die nützlichkeit 
von "charlieplexing" zu demonstrieren: Wie kann man L=n*(n-1) LEDs mit n 
Pins treiben?

Für 8x8x8 = 512 LEDs braucht man da 24 pins bei optimaler Ausnutzung; 
Jeder Pin muss tri-state fähig sein; Und die Helligkeit der LEDs wird 
etwas eingeschränkt sein (es sei den, dein Programm macht statische 
Anzeigen, und optimiert das simulaten Anzeigen mehrerer LEDs 
gleichzeitig und dynamisch).

Bei einer "primitiven" 2D multiplexing-matrix kommst du "nur" auf 
L=(n/2)^2 LEDs (bei 24 Pins also 144), dafür kannst du aber mit externen 
Transistoren
den Strom hoch jagen; deine Zykluszeit pro LED ist nicht mehr 1/L, 
sondern 1/(n/2) - d.h. signifikant mehr.

Aber ein 8x8x8 Raster aufzubauen, für optimales charlieplexing ist 
sicher eine Herausforderung in sich selbst :)
#1122953
Lesenswert?

Mad Mike wrote:
> Passt nicht ganz zum Thema, aber das Teil hier zeigt wie eine solche
> Ansteuerung in Perfektion aussieht
>
> 
http://cgi.cnet.de/alpha/artikel/monitore/200804/seekway-led-cube-3d-mit-4096-leds.htm

muss....ich....haben.... sabber

Schade dass man nichts näheres zu der Verarbeitung erkennt. Das werden 
sie ja nicht per Hand zusammen frickeln... Und je Tiefer es geht um so 
dünner muss das Gerüst ja irgendwie werden. Und halbwegs stabil auch.
Gast #1122990
Lesenswert?

Bevor du irgendwelche Pläne bezüglich Schaltplan usw. machst, solltest 
du dir mal das Datenblatt deiner LEDs mal anschauen. Wichtig ist vor 
allem der maximale Impulsstrom. Mit dem kannst du die Multiplexrate 
deiner LEDs bestimmen. 1:64 wird vermutlich nicht gehen 
(64*20mA=1280mA). Du wirst also mehr als 8 LEDs gleichzeitig leuchten 
lassen müssen.

D.h. du brauchst irgendeine Art der Porterweiterung. Am besten schaust 
du mal hier:

http://www.mikrocontroller.net/articles/LED-Matrix
Gast #1123430
Lesenswert?

Abend,
also das hörst sich alles schon mal besser an, als das was wir uns 
überlegt haben,... weil das wäre dann echt was geworden =/

ja das mit dem strom haben wir auch schon festgestellt, haben uns dann 
gedacht, das wir nehmen treiberstufen (2803)und widerstandsnetzwerke
aber es bleibe trotzdem noch höllisch viel zu verdrahten, vor allem am 
PIC

@Richard Scheffenegger / Mad Mike

würde jmd von euch mir vielleicht eine kleine skizze vom prinzipliellen 
aufbau machen? so wie du/ihr das meint?
kann auch von hand sein.

wäre euch sehr verbunden

mfg
Max

PS:
man kann zwar nicht ganz so viel erkennen, aber das war der erste 
gedanken,den wir verfolgt haben, wie wir das jetzt jetzt mit 8x8x8 bauen 
können, der PIC ist der hier:
PIC24HJ128GP510
http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en024688


http://img401.imageshack.us/img401/7767/ledcube1bh4.png
http://img177.imageshack.us/img177/3449/ledcube2ab7.png
http://img144.imageshack.us/img144/5410/ledcube3lx9.png
http://img228.imageshack.us/img228/1153/ledcube4mo3.png
Gast #1123486
Lesenswert?

Wie ist das jetzt genau, müsst ihr genau diesen 100 Pin PIC benutzen? Es 
gibt diverse Möglichkeiten, einen viel viel kleineren und/oder 
einfacheren PIC zu verwenden. Einige der Möglichkeiten wurden oben schon 
erwähnt, z.B. Charlieplexing. Dann werfe ich gerne noch als Idee das 
Stichwort Schieberegister in die Runde:
http://www.mikrocontroller.net/articles/AVR-Tutorial:_Schieberegister

Evtl bringt Euch das ja auf weitere Gedanken.

Wenn ich Eure Pläne richtig lese, habt ihr vor pro 64 LED's 8 IC und 8 
Transistoren einzusetzen, richtig?

Auch wäre gut zu wissen, mit welcher Frequenz ihr den ganzen Würfel 
ansteuern wollt, oder ob es reicht ein statisches Muster zu produzieren. 
Meiner Meinung nach braucht ihr keinen so leistungsfähigen PIC.
Gast #1123494
Lesenswert?

Wie sieht es mit den "absolute maximum ratings" des Pics in diesem Fall 
der verbratenen Gesamtleistung aus?

512 Led's mal 10 mA = 5,12 A wenn alle Leds leuchten.

Warum nicht das ganze auf ein paar Pics verteilen?
Gast #1123511
Lesenswert?

@R2D2: irgendeinen Treiber IC will Max glaube ich schon noch dazwischen 
schalten. Dennoch sehe ich beim Wunsch-PIC im Datenblatt ein Maximum von 
250mA total, und pro I/O Pin sogar nur 4mA.

@Max: was sind das für Treiber IC in Eurer Schaltung?
Gast #1123623
Lesenswert?

hi
@roman, es sind 2803, aber erst als reine "unterstützung".damit haben 
wir uns nicht auseinander gesetzt,also sind sie vllt noch nicht richtig 
dimensioniert.

und um auf den pic zu sprechen zu kommen, erst muss nicht genau "der" 
pic sein, aber sollte auf jeden fall schon ein pic sein.

ich glaube das der stromlaufplan nicht ganz verständlich ist, für die 
die den nicht geplant haben :) sry, mein fehler
ich bin offen für alle vorschläge die ihr mir unterbreitet :)
wir haben bei der planung jetzt nicht weiter über den tellerrand 
geschaut, haben uns gedacht: "ist ja ganz simple, muss ja nur erweitert 
werden"
und das ist erstmal dabei raus gekommen.


es werden insgesamt nur 8 transis und 64 widerstände sein.
der pic steuert die leds in der x und y eben und die transistoren die z 
(oder layer) ebene.

ist hier vielleicht besser zu erkennen:

http://img131.imageshack.us/my.php?image=cube1wx6.png
* das ist der kleine 3x3x3 led cube den ich vorher gebaut habe,mit einem 
pic16f690
Gast #1124650
Lesenswert?

Hi
@ Mad Mike

Ich habe mir mal das Datenblatt von deinem TCL59116 angesehen und muss 
sagen, du hast recht! :) is echt ein super dingen.
Am besten gefällt mir der Abschnitt


"16 LED Drivers (Each Output Programmable at
Off, On, Programmable LED Brightness, or to Detect Individual LED Errors
Programmable Group Dimming/Blinking Mixed
With Individual LED Brightness)"

Das ist für den Cube echt ideal. Stellt sich mir nur noch die frage, wie 
das dann alles zusammen gehört, bzw, wo der PIC ins Spiel kommt.

mfg
Max
Gast #1124743
Lesenswert?

Ich werde mir die Datenblätter mal zu gemüte führen :)
aber noch der Chip TI, mit dem muss nichts weiter gemacht werden, außer 
vom Pic angestuert werden?

ich hätte da noch ne kleine bitte, würdest du mir ne kleine skizze 
anfertigen?mit hand,paint oder so?
denn mit dem multiplexen, was du beschrieben hast, das steige ich noch 
nicht ganz durch schäm

wenn wir dann 8x8 (für jede Ebene) aso aufbauen dann bräuchte man doch 
für zeile [8 Pins] und spalte[8 Pins] =16
und muss dann jeder transistor auch nochmal mit extra 8 Pins zugewiesen 
werden?
aber das "system" gilt dann auch für alle 8 Ebenen, oder nicht?

Mfg
Max
#1124746
Lesenswert?

@  Max Kellermann (Gast)

>ich hätte da noch ne kleine bitte, würdest du mir ne kleine skizze
>anfertigen?mit hand,paint oder so?
>denn mit dem multiplexen, was du beschrieben hast, das steige ich noch
>nicht ganz durch schäm

Wär ja auch vollkommen sinnlos, mal die angebotenen Links zu lesen . . .

Siehe LED-Matrix.

>aber das "system" gilt dann auch für alle 8 Ebenen, oder nicht?

Jede deiner 8x8 Ebenen hat 64 LEDs. Die werden dann alle parallel 
angesteuert und die Ebenen 8:1 gemultilext.

MFG
Falk
Gast #1124761
Lesenswert?

Hier ist ein Bild für eine 8x5 Matirx mit Multiplexing. Will man das 
ganze noch in die Tiefe machen muss man die ganzen Matrixen prallel 
schalten und über einen zweiten Transistor in Reihe dann die passende 
auswählen.

Was den TI angeht, so steht alles wissenswerte zur Beschaltung im 
Datenblatt.
Gast #1124864
Lesenswert?

Alles klar, dann werd ich mich mal da durch arbeiten und dich erstmal 
nicht weiter belästigen ;)
aber du weißt nicht zufällig wo ich eine EAGLE Library für deinen 
genannten Chip herbekomme, in EAGLE selber und auf CadSoft finde ich 
keine...

Mfg
Max
Gast #1124872
Lesenswert?

hallo zusammen,

meine Frage richtet sich zurzeit eig. nur an "Max Kellermann":

hast du eine gute Deutschsprachige Anleitung zum Bau eines 3x3x3????? 
will auch son ding bauen :))) ..und geht das auch mit Atmega?

mfg
Gast #1126250
Lesenswert?

Abend,
also noch mal zum allgemeinen Verständnis,...
ich nehme mir einen  PIC (zb 18f4620), der steuert dann wiederum den TI 
Chip dem entsprechend an.An den Chip kommt die 8x8 LED Matrix, die ich 
dann wie im Link beschrieben aufbaue (mit den 74HC595N's? oder macht das 
der Chip?)

Dann wäre es im prinzip fertig.

Ich hätte dann noch ein paar fragen:
- kann ich anstatt des Chips auch Treiber IC's (ULN2803A) nehmen?
- muss ich für jede 8x8 Ebene, wieder eine neune Matrix nehmen?
  oder steuern die Transistoren auch die höhe?
- steuern die Ausgänge vom PIC (wenn das auch mit den 74HC595N's anstatt 
des
  Chips) die 'DATA','CLK','LOAD'?

das wäre es soweit :)

MfG
Max

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren