LED 3D Würfel

#1057855
Lesenswert?

@ Chris R. (mrgreen)

Deine Ansteuerung der Rows ist sehr unorthodox. Da hast du 
wahrscheinlich was falsch verstanden. Ne Emitterschaltung mit NPNs wäre 
dort wesentlich einfacher und besser. Und einie LED-Matrix mit drei 
Auswahlebenen ist wenig sinnvoll.

>Will ich Page=1 Row=1 Col=1 einschalten, dann leuchtet aber die gesamte
>Spalte auf Ebene 1 (also LEDs 1, 17, 33, 49).

>Was ist denn falsch?

Dein Verständnis einer LED-Matrix. Dabei werden seltenst LEDs 
einzeln angesteuert, sonder immer gruppenweise. Und schau dir einden 
Schaltplan an.

Page=1 Row=1 Col=1

Nur weil Page 2 = 0V ist, heisst das noch lange nicht, dass aus dem 
Emitter von T10, T15 und T20 kein Strom raus kommen kann. Der wird 
nämlich über die Basis geliefert, über Col=1 ;-)

Bau ein LED-Matrix wie der Rest der Welt und es wird funktionieren.

MFG
Falk
Gast #1057872
Lesenswert?

>Will ich Page=1 Row=1 Col=1 einschalten, dann leuchtet aber die gesamte
>Spalte auf Ebene 1 (also LEDs 1, 17, 33, 49).

Ich vermute, das die Kaskadierung von Page/Col nicht korrekt arbeitet.
Schmeiß die Page-Tasnsistoren raus und mach das über die Ansteuerung.


>Ne Emitterschaltung mit NPNs wäre dort wesentlich einfacher und besser.

Find ich nicht. Kollektorschaltung anywhere ;-)

Aber du musst beachten, dass bei der pnp-Kollektorschaltung (Row) ein 
LOW ausgegeben werden muss, damit die entsprechende Zeile aktiviert ist.
#1057882
Lesenswert?

1. Du möchtest PNP-Transistoren die "Rows" schalten, diese schalten aber 
nicht bei "1" sondern bei "0"
2. Die "Colums" und "Pages" möchtest Du mit NPN-Transistoren schalten. 
Diese verwendest du in "Emitter"-Schaltung. Daher das merkwürdige 
Verhalten.

Ich würde es so machen:
Verwende für die "Rows" die NPN-Transistoren, es geht für diesen Zweck 
auch das IC ULN2003 oder ULN2803. Wenn du NPN-Transistoren verwendest, 
lege die Emitter auf Masse. Die Kathode der LED´s schließt du an die 
Kollektoren an.
Dann kommen an die Anode der LED´s die Vorwiderstände.

Nun folgen PNP-Transistoren.
Die Colum und Page-Signale würde ich mit "UND"-Gattern verknüfen und 
dann damit die PNP-Transitoren steuern.
Gast #1057892
Lesenswert?

>das IC ULN2003 oder ULN2803.

iiiiiiiiih


>Diese verwendest du in "Emitter"-Schaltung.

Sechs Setzen.

Lass die Kollektorschaltung!


>Klar, damit die Matrix mit ECL-Geschwindigkit muxen kann. . .
24,56789MHz Ausgabefrequenz muss schon sein.
Warum? Weil wirs können ;-)

>Bei blauen LEDs wirds jetzt schon eng.

Davon steht nix da. Zweimal Kollektorschaltung sind 1,2..1,4V weg, 
ergibt 3,6V, bleiben 0,3V für den Vorwiderstand ;-)

Ist eng, aber eng ist gut ;-)
OP #1057943
Lesenswert?

Falk Brunner wrote:
> @ Chris R. (mrgreen)
>
> Deine Ansteuerung der Rows ist sehr unorthodox. Da hast du
> wahrscheinlich was falsch verstanden. Ne Emitterschaltung mit NPNs wäre
> dort wesentlich einfacher und besser. Und einie LED-Matrix mit drei
> Auswahlebenen ist wenig sinnvoll.
>
>>Will ich Page=1 Row=1 Col=1 einschalten, dann leuchtet aber die gesamte
>>Spalte auf Ebene 1 (also LEDs 1, 17, 33, 49).
>
>>Was ist denn falsch?
>
> Dein Verständnis einer LED-Matrix. Dabei werden seltenst LEDs
> einzeln angesteuert, sonder immer gruppenweise. Und schau dir einden
> Schaltplan an.

Den von der LED-Matrix? Ich kann doch aber nicht 64 LEDs nebeneinander 
als Matrix verschalten und sie dann hinterher durch die Ansteuerung 
(Maskieren im Schieberegister meinetwegen) "stapeln"??
Ist das der Sinn dahinter?

Und warum scheint das hier zu funktionieren:
http://www.bralug.de/wiki-common/images/f/f7/Cube_matrix_schaltung.png

MfG
Mr.Green
#1057961
Lesenswert?

@ Chris R. (mrgreen)

>Den von der LED-Matrix? Ich kann doch aber nicht 64 LEDs nebeneinander
>als Matrix verschalten und sie dann hinterher durch die Ansteuerung
>(Maskieren im Schieberegister meinetwegen) "stapeln"??

Warum nicht? Die ELEKTRISCH Verschaltung sagt doch rein GAR NICHTS über 
die MECHANSICHE Anordnung aus.

>Ist das der Sinn dahinter?

Ja.

>Und warum scheint das hier zu funktionieren:
>http://www.bralug.de/wiki-common/images/f/f7/Cube_...

Weil das ne "echte" LED-matrix ist mir nur zwei Auswahlebenen.
Q1..3 schalten die Ebenen (Digits), die restlichen Transitoren das 
Muster der 9 LEDs. Klassischer 3:1 MUX mit 9 Segmenten pro Digit.

MFG
Falk
Persönliche Seite #1057989
Lesenswert?

Falk Brunner wrote:
> Nachtrag. Die Schaltung ist aber auch nicht wirklich schön. Die
> Widerstände zur Strombegrenzung sitzen an der falschen Stelle.
>
mag sein, hat deshalb auch ein kleines Manko (ist auf der Seite 
beschrieben), wurde auch hier schon mal diskutiert, funktioniert aber 
trotzdem so wie ich es mir vorgestellt hatte...

Grüße Uwe
#1058018
Lesenswert?

ich habe einen 6x6x6-cube gebastelt und mit SPI angesteuert. 
funktioniert wunderbar und ist simpel. siehe attachment (ok, ist nicht 
gerade toll gemacht, aber egal). der würfel ist so aufgebaut, dass alle 
'minus' der LEDs auf einer ebene zusammengeschlossen sind und jeweils an 
ein Pad1..6 gehen, und alle 'plus' der übereinanderliegenden LEDs an ein 
gemeinsamer Con1..36 gehen. also, an Con1..36 wird das bild für die 36 
LEDs einer ebene angelegt und mit Pad1..6 wird eine ebene 
durchgeschaltet. bezüglich shiftregister schaust dir am besten den 
artikel auf dieser seite an.

in meinem fall müsste man folgendes durch den SPI-bus jagen:
Send_SPI([6 bytes für die 1. ebene] [0x01]);
wait(2ms);
Send_SPI([6 bytes für die 2. ebene] [0x02]);
wait(2ms);
Send_SPI([6 bytes für die 3. ebene] [0x03]);
wait(2ms);
Send_SPI([6 bytes für die 4. ebene] [0x04]);
wait(2ms);
Send_SPI([6 bytes für die 5. ebene] [0x05]);
wait(2ms);
Send_SPI([6 bytes für die 6. ebene] [0x06]);
wait(2ms);

ich weiss, nicht ob das offiziell so richtig ist und auch so gemacht 
wird, aber so funktioniert meiner mit lediglich 3 leitungen und braucht 
bei einem PIC18 etwa 2% ressourcen für die anzeige (interruptgesteuert).
Angehängte Dateien:
Gast #1058025
Lesenswert?

mp4 geht bei mir irgendwie nicht

>ich weiss, nicht ob das offiziell so richtig ist und auch so gemacht
>wird,

EIn offizielles richtig/falsch gibt es nur in BWL oder Jura ;-)

Wenn es funktioniert kann es zumindest nicht falsch sein. Höchstens 
nicht optimal.

Das delay() sollte raus...
#1058029
Lesenswert?

> mp4 geht bei mir irgendwie nicht
VLC installieren und du wirst 99% der videos abspielen können ;)

naja, das 'wait()' sollte nur symbolisieren, dass eine ebenen etwa 2ms 
angezeigt werden soll bevor die nächste ebene angezeigt wird 
(refresh-rate der LEDs sollte ca. 80x/sec sein)

edit: das ebenen-ein/ausschalten würde noch ein bisschen schöner sein 
mit einer BAT-diode zwischen basis und collector des transistors ;)
Gast #1058039
Lesenswert?

>VLC installieren und du wirst 99% der videos abspielen können ;)

yo. sieht gut aus..


>naja, das 'wait()' sollte nur symbolisieren,

Timer...


>edit: die transistoren würden noch ein

Kollektorschaltung.. spart auch die Basiswiderstände
Persönliche Seite #1058183
Lesenswert?

Dominique Görsch wrote:
> Wie verdrahtet ihr die Dinger? Lackdraht?
> Nehmt ihr normale LEDs? Und woher die Stabilität? In Acryl gefasst?
> Würde mal gerne ein Bild bei Licht sehen, wo man den Verdrahtungswust
> sieht.
>
http://bralug.de/wiki/3D-LED-Display#LED-Matrix

schaue dir die Bilder an, ich denke da erkennt man es ganz gut. Ich habe 
für meine 8x8x-Matrix 1mm-Silberdraht verwendet. Die LED-Kathoden einer 
Ebene sind alle miteinander verbunden. Die 8 Ebenen "stehen" auf 64 
Säulen in denen jeweils 8 übereinander liegende Anoden verbunden sind. 
Dieses Kontrukt ist erstaunlicherweise sehr stabil. Mittlerweile hängt 
mein Würfel um 90Grad gedreht an der Wand...

Als LEDs habe ich ganz normale superhelle mit gängigen Abstrahlwinkel 
genommen, es gibt aber mit Sicherheit optimalere Bauformen, die einen 
größeren Abstrahlwinkel haben (ist auch eine Sache des Geldes).

Im Gegensatz zu snowmans Würfel werden die Animationen bei mir auf einem 
PC generiert und via Ethernet online zum Würfel übertragen, also ein 
echtes Client-/Server-System, in dem die Matrix der "Anzeigeserver" ist. 
Dazu existiert auch, ähnlich wie bei snowman, ein (TCL-)Programm 
(Client), mit dem man Animationen erstellen und zum Würfel senden kann. 
Aber auch jede andere Anwendung, die sich an das definierte Protokoll 
hält, kann Bilder übertragen.

Ich hatte auch mal angefangen im MC ein paar autonome Animationen zu 
generieren, bin aber an Speichergrenzen gestossen. Es existiert 
mittlerweile eine speichersparende Firmware, mit der man soetwas wieder 
machen könnte...

Grüße Uwe
#1058500
Lesenswert?

Sehr schick, sehr schick. Hab grad auf YouTube ein Video von einem 
16x16x16 RGB-Cube gefunden, auch sehr geil ;)

OK, RGB scheidet ersteinmal allein aus Kostengründen aus, ich überlege 
gerade ob ich auch 8x8x8 nehme oder gleich 10x10x10, wobei das halt 
schon fast doppelt so viele LEDs sind... nunja, mal schauen.

Danke für die Anregungen, echt tolle Projekte!

Gruß
Dominique Görsch
OP #1059134
Lesenswert?

Hallo zusammen,
kann das so klappen?
Die ShiftRegs füttern je eine Ebene, die dann durch Row ausgewählt wird.
Meinem Verständnis nach sollte die Kollektorschaltung richtig sein,
oder?

Wie muss die Dimensionierung der Widerstände ausschauen? Eigentlich
treiben die Ausgangsstufen max. 20 mA; kann man einen höheren Pulsstrom
entnehmen?

Bei 20mA wäre es 100 Ohm; kann ich kleiner nehmen, ohne mir die 595 zu
braten?

MfG
Mr.Green
Angehängte Dateien:
#1059187
Lesenswert?

@Chris R.: sieht fast gut aus! :) nimm NPN-transitoren anstelle der PNPs

und als kleiner tip würde ich alle emitors der NPN-transistoren auf 
einen gemeinsamen NPN-transitor, welcher grundsätzlich immer 
durchschaltet - bzw. genau dann nicht, wenn du die reset-taste drückst. 
beim reset-tasten-drücken bleibt das bild in der ebene stehen und da du 
wegen impulsschaltung mehr strom durch die LEDs lässt, könnte es sonst 
sein, dass die LEDs zu viel strom abkriegen. der zusätzliche transistor 
(ev. MOSFET) (mit einem widerstand zwischen basis und ground) öffnet, 
wenn der uC ge-resetet wird und somit erköschen alle LEDs im 
reset-zustand.

edit: http://www.mikrocontroller.net/articles/Transistor
Gast #1060387
Lesenswert?

>Klappt das so? Oder hab ich wieder was vergessen?

Die Schieberegister noch an Betriebsspannung legen, Abblockkondensatoren 
einbauen, und am Besten direkt über die Matrix, also direkt zwischen den 
Plus- und Minuspolen an den Transistoren noch paar Block-Cs.

>Ich wollte PNPs nehmen, damit ich mir den Widerstand am Emitter (bei nem
>NPN) spare.

Warum hast du das nicht gelassen?
Gast #1060412
Lesenswert?

Du musst aber folgendes Bedenken:

Auch eine Kollektorschaltung schaltet nur, wenn Basisstrom fließt.

Im Resetzustand wird zwar "nichts" ausgegeben, aber die Pins sind in 
High-Z, nicht in aktiv-Low.

Aber ist ok.
OP #1061162
Lesenswert?

Matthias Lipinsky wrote:
> Du musst aber folgendes Bedenken:
>
> Auch eine Kollektorschaltung schaltet nur, wenn Basisstrom fließt.
>
> Im Resetzustand wird zwar "nichts" ausgegeben, aber die Pins sind in
> High-Z, nicht in aktiv-Low.
>
> Aber ist ok.

AChso, also hätte ich die PNPs doch lassen können?? Oder hat das einen 
anderen Nachteil?

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