Inhaltsverzeichnis:

LED-Würfel 4x4x4 - Gunook
LED-Würfel 4x4x4 - Gunook

Video: LED-Würfel 4x4x4 - Gunook

Video: LED-Würfel 4x4x4 - Gunook
Video: How to make LED Cube (4x4x4) 2024, Juli
Anonim
LED-Würfel 4x4x4
LED-Würfel 4x4x4
LED-Würfel 4x4x4
LED-Würfel 4x4x4
LED-Würfel 4x4x4
LED-Würfel 4x4x4

Erstaunliche 3-dimensionale LED-Anzeige. 64 LEDs bilden diesen 4 x 4 x 4 Würfel, der von einem Atmel Atmega16-Mikrocontroller gesteuert wird. Jede LED kann per Software einzeln adressiert werden, wodurch erstaunliche 3D-Animationen angezeigt werden können! 8x8x8 LED-Würfel jetzt verfügbar, auf vielfachen Wunsch:

Schritt 1: Was Sie brauchen

Was du brauchst
Was du brauchst

Zunächst einmal braucht man ziemlich viel Zeit, um 64 LEDs zusammenzulöten;)Wissensliste:

  • Grundkenntnisse in Elektronik und Löten
  • Wissen, wie man einen AVR-Mikrocontroller programmiert - ich werde das in diesem anweisbaren nicht behandeln.

Komponentenliste:

  • Protoboard. Der Typ mit Kupferkreisen.
  • Atmel AVR Atmega16 Mikrocontroller
  • Programmierer zum Programmieren des Atmega16
  • 64 LEDs
  • 2 Status-LEDs. Ich habe Rot und Grün verwendet. (Optional)
  • Max232 RS-232-Chip oder gleichwertig.
  • 16 Widerstände für LEDs. (100-400 Ohm) wird darauf zurückkommen.
  • 2x Widerstand 470 Ohm. für Status-LEDs
  • 1x Widerstand 10k
  • 4x Widerstand 2,2k
  • 4x NPN-Transistor BC338 (oder ein anderer Transistor, der 250-ish mA schalten kann)
  • 1x 10uF Kondensator
  • 1x 1000uF Kondensator
  • 6x 0,1uF Keramikkondensator
  • 2x 22pF Keramikkondensator
  • 1x Quarz 14,7456 MHz
  • 2x taktile Taste
  • optionaler Stromschalter
  • Anschluss für 12V Strom
  • optionaler Anschluss für 5V-Strom

Schritt 2: Multiplexen

Multiplexen
Multiplexen
Multiplexen
Multiplexen

Wie steuert man 64 LEDs, ohne 64 einzelne Drähte zu verwenden? Multiplexen!

Das Verlegen eines Drahtes zur Anode jeder LED wäre offensichtlich unpraktisch und würde wirklich schlecht aussehen. Eine Möglichkeit, dies zu umgehen, besteht darin, den Würfel in 4 Schichten von 16x16 LEDs aufzuteilen. Alle LEDs, die in einer vertikalen Spalte ausgerichtet sind, teilen sich eine gemeinsame Anode (+). Alle LEDs auf einer horizontalen Schicht teilen sich eine gemeinsame Kathode (-). Wenn ich nun die LED in der oberen linken Ecke hinten aufleuchten möchte (0, 0, 3), liefere ich einfach GND (-) an die obere Ebene und VCC (+) an die Spalte in der linken Ecke. Wenn ich nur eine LED auf einmal aufleuchten möchte oder nur mehr als eine Schicht gleichzeitig aufleuchten möchte.. das funktioniert gut. Wenn ich allerdings auch die rechte untere Ecke vorne beleuchten möchte (3, 3, 0), stoße ich auf Probleme. Wenn ich GND an die untere Schicht und VCC an die vordere linke Spalte liefere, leuchte ich auch die obere rechte LED vorne (3, 3, 3) und die untere linke LED hinten (0, 0, 0) auf. Dieser Geisterbildeffekt kann ohne das Hinzufügen von 64 einzelnen Drähten nicht umgangen werden. Sie können dies umgehen, indem Sie jeweils nur eine Ebene aufleuchten, aber so schnell, dass das Auge nicht erkennt, dass immer nur eine Ebene beleuchtet ist. Dies beruht auf einem Phänomen namens Persistenz des Sehens. Jede Ebene ist ein 4x4 (16)-Bild. Wenn wir 4 16 LED-Bilder einzeln aufblitzen lassen, erhalten wir ein 4x4x4 3D-Bild!

Schritt 3: Erstellen des Würfels, Vorlage

Erstellen des Würfels, Vorlage
Erstellen des Würfels, Vorlage
Erstellen des Würfels, Vorlage
Erstellen des Würfels, Vorlage
Erstellen des Würfels, Vorlage
Erstellen des Würfels, Vorlage

Das Freihandlöten von Gittern aus 4x4 LEDs würde schrecklich aussehen! Um 4 perfekte 4x4-Gitter von LEDs zu erhalten, verwenden wir eine Schablone, um sie an Ort und Stelle zu halten. Ich wollte den Würfel so einfach wie möglich machen, also habe ich mich für die Verwendung der LEDs entschieden möglichst eigene Beine. Der Abstand zwischen den Linien im Raster wurde durch die Länge der LED-Beine bestimmt. Ich fand, dass 25 mm (etwa ein Zoll) der optimale Abstand zwischen jeder LED (zwischen der Mitte jeder LED) war, um das Löten ohne Hinzufügen oder Schneiden von Draht zu ermöglichen.

  • Finden Sie ein Stück Holz, das groß genug ist, um ein 4x4-Raster von 2,5 cm zu machen.
  • Zeichnen Sie ein 4x4-Raster aus Linien.
  • Machen Sie Dellen in allen Schnittpunkten mit einem Körner.
  • Finden Sie einen Bohrer, der Löcher klein genug macht, damit die LED fest an Ort und Stelle bleibt, und groß genug, damit die LED leicht herausgezogen werden kann (ohne die Drähte zu verbiegen).
  • Bohren Sie die 16 Löcher.
  • Ihre ledcube-Vorlage ist fertig.

Schritt 4: Würfel herstellen, Schichten löten

Würfel herstellen, Schichten löten
Würfel herstellen, Schichten löten
Würfel herstellen, Schichten löten
Würfel herstellen, Schichten löten
Würfel herstellen, Schichten löten
Würfel herstellen, Schichten löten

Wir machen den Würfel in 4 Schichten von 4x4 LEDs und löten sie dann zusammen. Erstellen Sie eine Schicht:

  • Setzen Sie die LEDs entlang der Rückseite und entlang einer Seite ein und verlöten Sie sie zusammen
  • Setzen Sie eine weitere Reihe von LEDs ein und löten Sie sie zusammen. Machen Sie eine Reihe nach der anderen, um Platz für den Lötkolben zu lassen!
  • Wiederholen Sie den obigen Schritt noch 2 Mal.
  • Fügen Sie vorne eine Querverstrebung hinzu, wo die LED-Reihen nicht verbunden sind.
  • 4 mal wiederholen.

Schritt 5: Erstellen des Würfels, Verbinden der Schichten

Würfel herstellen, Schichten verbinden
Würfel herstellen, Schichten verbinden
Würfel herstellen, Schichten verbinden
Würfel herstellen, Schichten verbinden
Würfel herstellen, Schichten verbinden
Würfel herstellen, Schichten verbinden

Jetzt, wo wir diese 4 Schichten haben, müssen wir sie nur noch zusammenlöten.

Legen Sie eine Schicht zurück in die Vorlage. Dies ist die oberste Ebene, also wähle die hübscheste:) Lege eine weitere Ebene darüber und richte eine der Ecken genau 25 mm (oder den Abstand, den du in deinem Raster verwendet hast) über der ersten Ebene aus. Dies ist der Abstand zwischen den Kathodendrähten. Halten Sie die Ecke mit einer helfenden Hand fest und verlöten Sie die Eckanode der ersten Schicht mit der Eckanode der zweiten Schicht. Tun Sie dies für alle Ecken. Prüfen Sie, ob die Ebenen in allen Dimensionen perfekt ausgerichtet sind. Wenn nicht, biegen Sie ein wenig, um sich anzupassen. Oder löten Sie den Höhenabstand, der ausgeschaltet ist. Wenn sie perfekt ausgerichtet sind, löten Sie die restlichen 12 Anoden zusammen. 3 mal wiederholen.

Schritt 6: Auswahl der Widerstandswerte

Auswahl der Widerstandswerte
Auswahl der Widerstandswerte
Auswahl der Widerstandswerte
Auswahl der Widerstandswerte

Bei der Auswahl eines Widerstandswerts für Ihre LEDs sind zwei Dinge zu beachten.

1) Die LEDs 2) Der AVR Der AVR hat einen maximalen kombinierten Nennstrom von 200 mA. Dies gibt uns 12 mA, mit denen wir pro LED arbeiten können. Sie möchten auch nicht den maximalen Strom überschreiten, für den Ihre LEDs ausgelegt sind. Ich habe 220 Ohm Widerstände auf meinem Würfel verwendet. Dies gab mir etwa 12 mA pro LED.

Schritt 7: Der Controller

Der Controller
Der Controller
Der Controller
Der Controller
Der Controller
Der Controller

Die Schaltungen, die den LED-Würfel steuern, sind im beigefügten schematischen Bild beschrieben.

Die RS-232-Schnittstelle ist optional. und kann weggelassen werden. Das ist IC2 und alle daran angeschlossenen Komponenten. Zukünftige Firmwares werden die PC-Kommunikation ermöglichen. Legen Sie zunächst alle Komponenten auf Ihrer Leiterplatte in einem Layout an, das es ermöglicht, alle Komponenten mit einer minimalen Anzahl von Drähten zu verbinden. Wenn alles passt, löten Sie die Schaltung. Ich werde dazu keine weiteren Anweisungen geben, da die Schaltung wahrscheinlich von Würfel zu Würfel sehr unterschiedlich aussehen wird, je nach Größe der Platine usw. Informationen zur Verkabelung des Würfels mit der Controller-Schaltung finden Sie im nächsten Schritt.

Schritt 8: Verdrahten Sie den Cube

Verdrahten Sie den Cube
Verdrahten Sie den Cube
Verdrahten Sie den Cube
Verdrahten Sie den Cube
Verdrahten Sie den Cube
Verdrahten Sie den Cube

Bilder erklären das besser als Worte. Bitte sehen Sie sich die Bilder an.

Schritt 9: Kompilieren und programmieren

Sie haben jetzt einen LED-Würfel. Um es nutzen zu können, braucht es Software. Ich habe einen Treiber zum Rendern eines 3D-Datenraums auf dem Würfel erstellt und Funktionen zum Anzeigen einiger cooler visueller Effekte auf dem Würfel. Sie können meinen Code verwenden, Ihren eigenen schreiben oder darauf aufbauen meinen Code und machen Sie weitere Effekte. Wenn Sie Ihre eigenen Effekte erstellen, senden Sie mir bitte den Code. Ich bin gespannt, was ihr macht!Um das Programm zu kompilieren. Öffnen Sie einfach eine Eingabeaufforderung, geben Sie das Verzeichnis mit dem Quellcodetyp "make" in die Befehlszeile ein. Wenn Sie einen ATMega32 anstelle des ATMega16 verwenden möchten, ändern Sie einfach die mcu-Einstellung im Makefile und kompilieren Sie neu (geben Sie make ein). Wenn Sie den m32 verwenden und diesen Schritt nicht ausführen, bootet der Cube nicht richtig (die roten und grünen Lichter blinken für immer). Sie sollten jetzt eine Datei namens main.hex im Quellverzeichnis haben. Der nächste Schritt zeigt Ihnen, wie Sie diesen Code in Ihren Cube bekommen.

Schritt 10: Programmieren Sie den Mikrocontroller

Programmieren Sie den Mikrocontroller
Programmieren Sie den Mikrocontroller
Programmieren Sie den Mikrocontroller
Programmieren Sie den Mikrocontroller
Programmieren Sie den Mikrocontroller
Programmieren Sie den Mikrocontroller

Wenn Sie Probleme mit der Geschwindigkeit haben und/oder einige LEDs nicht aufleuchten. Bitte lesen Sie diesen Schritt sorgfältig durch. Um den Mikrocontroller zu programmieren, verwende ich avrdude und den USBTinyISP-Programmierer.

  • https://savannah.nongnu.org/projects/avrdude/
  • https://www.ladyada.net/make/usbtinyisp/
  • https://www.adafruit.com/index.php?main_page=index&cPath=16

Meine Beispiele werden auf einem Ubuntu Linux-System sein. Das Verfahren sollte unter Windows ziemlich identisch sein, aber ich kann Ihnen dabei nicht helfen. Wenn Sie einen anderen Programmierer verwenden, lesen Sie das Handbuch für diesen Programmierer und avrdude. Zuerst mal sehen, ob wir mit dem AVR Kontakt aufnehmen können. Verbinden Sie den Programmierer mit Ihrem Cube und Ihrem Computer. Der Befehl lautet "avrdude -c usbtiny -p m16", wobei -c den Programmierer angibt und -p das AVR-Modell. Sie können die Ausgabe in den Bildern unten sehen. Laden Sie nun die Firmware hoch: "avrdude -c usbtiny -p m16 -U flash:w:main.hex". Inzwischen sollte der Cube neu starten und anfangen, Dinge zu tun. Es läuft mit 1 MHz (sehr langsam) unter Verwendung seines internen Oszillators. Und einige der LEDs funktionieren nicht, da einige GPIO-Ports standardmäßig für JTAG verwendet werden:w:0xef:m"und "avrdude -c usbtiny -p m16 -U hfuse:w:0xc9:m". Seien Sie bei diesem Schritt vorsichtig! Wenn Sie es falsch machen, können Sie Ihren Mikrocontroller dauerhaft zerstören! Wenn Sie einen anderen Mikrocontroller als den ATMega16 verwenden, lesen Sie das Datenblatt sorgfältig durch, bevor Sie die Sicherungsbytes ändern! Nachdem Sie die richtigen Sicherungsbytes geschrieben haben, sollte der Cube neu starten und mit normaler Geschwindigkeit mit allen LEDs arbeiten. Genießen Sie Ihren neuen Cube: D

Schritt 11: Gehen Sie groß - 8x8x8

Gehen Sie groß - 8x8x8
Gehen Sie groß - 8x8x8
Gehen Sie groß - 8x8x8
Gehen Sie groß - 8x8x8
Gehen Sie groß - 8x8x8
Gehen Sie groß - 8x8x8
Gehen Sie groß - 8x8x8
Gehen Sie groß - 8x8x8

Nachdem ich diesen ziemlich schicken 4x4x4 Würfel gemacht habe, habe ich auch einen riesigen 8x8x8 Würfel gemacht. Ich werde ein instructable für das machen, wenn ich Zeit habe. Inzwischen siehe Bilder:-)

Sie finden die 8x8x8-Version hier: https://www.instructables.com/id/Led-Cube-8x8x8/ Bitte bewerten Sie dieses instructable, wenn es Ihnen gefällt!:)

Empfohlen: