Forum: Mikrocontroller und Digitale Elektronik Schaltplan LED Cube


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Johannes E. (johannes_emunds)


Angehängte Dateien:

Lesenswert?

Hallo,

dies ist mein erster Beitrag in solch einem Forum, daher bitte ich um 
etwas Nachsicht. Falls ich etwas vergessen habe oder etwas ungeschickt 
erkläre also bitte einfach nachfragen. =)

Ich baue mir momentan einen 8x8x8 LED Cube und habe mir nun ein paar 
Gedanken zur Ansteuerung gemacht.
Es existiert immer ein 8x8 LED Feld und davon sind dann wieder 8 
übereinander gestappelt. (siehe Bild1)

Ich würde diese gerne über I2C lösen, sodass ich nachher 3 Bausteine 
(jeden für eine Achse "X,Y,Z") habe.

Das hieße ich bräuchte jeweils 8 Ausgänge pro Baustein um alle 512 (8^3) 
Kombinationen abzudecken.

Ich habe mich dabei für den "PCF8574" entschieden. Da dieser allerdings 
nur einen geringen Strom liefert, verwende ich dahinter noch Treiber 
Bauteine(74HC540 und 74HC541) um die Transistoren anzusteuern.

Es würde mich sehr freuen wenn jemand über meinen Schaltplan einmal 
drüber schauen könnte und mir sagt, ob das alles so ok ist, oder darin 
irgendwelche Fehler stecken.
Ich bin natürlich immer offen für Verbesserungsvorschläge. =)

Mit freundlichen Grüßen
Johannes Emunds

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Johannes E. schrieb:
> wenn jemand über meinen Schaltplan einmal drüber schauen könnte und mir
> sagt, ob das alles so ok ist, oder darin irgendwelche Fehler stecken.
Am etwas unleserlichen P3Y5 Pin 8 ist offenbar eine Verbindung zu viel.
Das ist aber nicht so schlimm, denn im Design "klemmt" es grundsätzlich:

> um die Transistoren anzusteuern.
Die dann einen Strom über einen 10k Widerstand in eine einzige LED-Zeile 
leiten? Da musst du das Licht aber ausmachen und eine sehr dunkle Nacht 
abwarten, um was zu sehen.

> Ich würde diese gerne über I2C lösen, sodass ich nachher 3 Bausteine
> (jeden für eine Achse "X,Y,Z") habe.
 Dass du über 2 Dimensionen hinweg multipexen willst, macht die Sache 
noch um fast eine Zehnerpotenz schlechter...

> Ich bin natürlich immer offen für Verbesserungsvorschläge. =)
Sieh dir mal an, wie Andere das gemacht haben, deren Ding nachweislich 
funktioniert. Analysiere diese Schaltung und dann mach dein Ding. Aber 
erst mal nur mit 3x3x3 oder 4x4x4. Das reicht für den Anfang aus, um den 
Überblick zu verlieren...

von Johannes E. (johannes_emunds)


Lesenswert?

erstmal vielen Dank für die schnelle Antwort. =)

> Am etwas unleserlichen P3Y5 Pin 8 ist offenbar eine Verbindung zu viel.
Die falsche Verbindung wurde natürlich sofort entfernt.

> Die dann einen Strom über einen 10k Widerstand in eine einzige LED-Zeile leiten?
Ich habe leider beim kopieren des Bauteils vergessen, den 
Widerstandswert zu ändern. Ich bin mir hier noch nicht ganz sicher, wie 
ich diesen dimensioniere, da ich mich noch für keinen bestimmten 
Transistor entschieden habe.

> Dass du über 2 Dimensionen hinweg multipexen willst, macht die Sache noch um 
fast eine Zehnerpotenz schlechter...
Was genau ist das Problem daran? Ich habe natürlich eine sehr hohe 
Anzahl an Transistoren, welche ich mir ansonsten natürlich sparen 
könnte. Allerdings würde ich gerne die Streben zwischen den einzelnen 
Ebenen vermeiden.

> Sieh dir mal an, wie Andere das gemacht haben, deren Ding nachweislich 
funktioniert.
Habe ich. Die meisten multiplexen auf 2 Ebenen und nehmen Transistoren 
für die Anode und ein Darlington Transistor Array für die Kathode. Wie 
oben erwähnt finde ich das Endprodukt allerdings optisch mit den Streben 
nicht so schön.

von Olaf (Gast)


Lesenswert?

> Ich habe mich dabei für den "PCF8574" entschieden. Da dieser allerdings

ES gibt mittlerweile fuer genausoviel Geld I2C-Ports mit 16Bit. Das 
koennte sich bei deinem Bedarf als preiswerter herausstellen.

> nur einen geringen Strom liefert, verwende ich dahinter noch Treiber
> Bauteine(74HC540 und 74HC541) um die Transistoren anzusteuern.

Die PCFs koennen zwar nicht soooo viel Strom, aber fuer den direkten 
Anschluss eines Transistors sollte es doch wohl reichen.

Bekommst du eigentlich bei 400khz I2C-Takt noch eine ausreichende 
Updaterate hin?

Olaf

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Johannes E. schrieb:
> Die meisten multiplexen auf 2 Ebenen
Die meisten Treffer, die ich mit 
https://www.google.com/search?q=led+cube+8x8x8+schematic finde, 
multiplexen nur in einer Dimension, nämlich ebenenweise. Da werden die 
64 LEDs pro Ebene mit 64 einzelnen Pins angesteuert, und dann noch mit 8 
Leitungen die 8 Ebenen adressiert.

>> Dass du über 2 Dimensionen hinweg multipexen willst, macht die Sache
>> noch um fast eine Zehnerpotenz schlechter...
> Was genau ist das Problem daran?
Dass eine "aktive" LED immer nur (bestenfalls) 1/64 der Gesamtzeit 
leuchtet. Und du kannst eben nicht einfach den LED Strom um diesen Wert 
vervielfachen, um wieder die "Grundhelligkeit" zu erreichen.

> Ich bin mir hier noch nicht ganz sicher, wie ich diesen dimensioniere,
> da ich mich noch für keinen bestimmten Transistor entschieden habe.
Der Vorwiderstand für die aktive LED hat im Wesentlichen nichts mit dem 
Transistor, sondern mit der gewünschten Helligkeit zu tun. Und die 8 
Vorwiderstände werden sicher nicht in 1 einziges Widerstandsarray 
passen. Das Ding raucht dir garantiert ab, wenn mal alle LEDs aktiv sein 
sollen.

: Bearbeitet durch Moderator
von MaWin (Gast)


Lesenswert?

Johannes E. schrieb:
> Es würde mich sehr freuen wenn jemand über meinen Schaltplan einmal
> drüber schauen könnte

Kann ich nicht, unlesbar.

Ich sehe keine LED Vorwiderstände.

Finde erst mal raus, welche Dauerströme und Spitzenströme deine LEDs 
aushalten, und überlege mit welcher Helligfkeit sie leuchten sollen, 
damit man eine sinnvolle Beschaltung überlegen kann.

Normalerweise würde man so was (8 x 64 Multiplex) wohl mit 4 CAT4016, 4 
Widerständen und 4 Dual MOSFETs wie IRF7329 aufbauen und nicht mit über 
100 Bauteilen.

von Thomas W. (diddl)


Lesenswert?

Ich würde 8 Stück Max7219 verwenden.


- der Max7219 kann 64 LED treiben
- es kann die Helligkeit gesteuert werden
- serielle Ansteuerung mit 10MHz
- die 8 Stück Max7219 können kaskadiert werden (nur zwei IO am 
Controller)
- der letzte Zustand bleibt gespeichert, nur Änderungen müssen gesendet 
werden

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

MaWin schrieb:
> Ich sehe keine LED Vorwiderstände.
Die sind im AR2 mit 8x10k.
Wie gesagt ein wenig arg hochohmig für zweidimensionales Multiplexing.

Thomas W. schrieb:
> Ich würde 8 Stück Max7219 verwenden.
Ich würde 256 der WS2812 (o.ä.) LEDs nehmen...

: Bearbeitet durch Moderator
von Thomas W. (diddl)


Lesenswert?

Lothar M. schrieb:
> Ich würde 256 der WS2812 (o.ä.) LEDs nehmen...

Es wären dann 512 Stück WS2812 …


Aber grundsätzlich … warum nicht … sind kostengünstig, flexibel und die 
Löt Arbeit ist auch geringer.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Thomas W. schrieb:
> Es wären dann 512 Stück WS2812
Jatatsächlich... ;-)
Das macht den Kohl dann letztlich auch nicht mehr fett.

Und wenns bedrahtet sein soll, dann sowas wie ebay 312248219222

von Thomas W. (diddl)


Lesenswert?

Lothar M. schrieb:
> Und wenns bedrahtet sein soll, dann sowas wie ebay 312248219222

Oh schön, ich wusste gar nicht dass es die auch in so einer Bauart gibt.
Genial, und nicht sehr teuer.


Die Verdrahtung des Cube könnte man schlangenförmig machen.
Womöglich kommt man praktisch fast ohne zusätzlichem Draht aus.

von MaWin (Gast)


Lesenswert?

Thomas W. schrieb:
> Ich würde 8 Stück Max7219 verwenden.

Wenn einem die Helligkeit der durchschnittlich 5mA reichen,
mit denen der MAX7219 seine LEDs betreibt.

von SinoTech (Gast)


Lesenswert?

MaWin schrieb:
> Thomas W. schrieb:
>> Ich würde 8 Stück Max7219 verwenden.
>
> Wenn einem die Helligkeit der durchschnittlich 5mA reichen,
> mit denen der MAX7219 seine LEDs betreibt.

Laut den Electrical Characteristics kann der MAX7219 bis zu 320 pro 
Digit bzw. 40mA pro Segment.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

SinoTech schrieb:
>> Wenn einem die Helligkeit der durchschnittlich 5mA reichen
> ... 40mA pro Segment.
Geteilt durch die 8 Ebenen ergibt das den besagten Durchschnittswert...

: Bearbeitet durch Moderator
von SinoTech (Gast)


Lesenswert?

Lothar M. schrieb:
> SinoTech schrieb:
>>> Wenn einem die Helligkeit der durchschnittlich 5mA reichen
>> ... 40mA pro Segment.
> Geteilt durch die 8 Ebenen ergibt das den besagten Durchschnittswert..

Ups ... habe jetzt erst gesehen das der MAX7219 acht Digits ansteueren 
kann, dann sind es tatsächlich nur noch 5mA. Danke für den Hinweis.

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.