Wie man einen pulsierenden Arduino-LED-Würfel macht, der aussieht, als wäre er aus der Zukunft gekommen
Wenn Sie sich mit einigen Arduino-Anfängerprojekten befasst haben, aber etwas dauerhaftes und auf einer ganz anderen Ebene fantastischer Art suchen, ist der bescheidene 4 x 4 x 4-LED-Würfel eine natürliche Wahl. Die Konstruktion ist viel einfacher als Sie vielleicht denken. Mit einem Multiplexing können wir alle LEDs direkt von einem einzigen Arduino Uno-Board aus steuern. Es ist eine großartige Lötpraxis und die Gesamtkosten für Komponenten sollten nicht über 40 Dollar liegen.
Heute werde ich ausführlich auf die Konstruktionsseite eingehen und Software bereitstellen, die sowohl beeindruckend aussieht als auch die Grundlagen vermittelt.
Du wirst brauchen
- Ein Arduino. Der mitgelieferte Code setzt einen Arduino Uno voraus, könnte aber auch an ein größeres Modell angepasst werden.
- 64 LEDs - Die genaue Wahl liegt bei Ihnen, aber ich habe diese superhellen 3mm blauen LEDs verwendet (3,2v 30ma) @ 2,64 für 50.
- 16 Widerstände des entsprechenden Werts für Ihre LEDs. Für die LEDs oben kauften 99 Pence 100 davon. Verwenden Sie ledcalc.com - geben Sie 5V für die Versorgungsspannung, die Spannung der LEDs (in meinem Fall 3.2) und den Strom in Milliampere (3.2) ein. Ihr gewünschter Widerstand wird in der Box angezeigt “Nahezu höherer Widerstand”, Dann suchen Sie einfach bei eBay nach diesem Wert.
- Etwas Basteldraht zur Stärkung der Grundstruktur und zur Dekoration - habe ich verwendet 0,8 mm Dicke.
- EIN Prototyping-Board von einem Typ, den Sie alle Ihre Bits löten können. Ich habe eine verwendet, die keine vollständigen Spuren enthielt, da ich keinen Spurabschneider habe, aber was immer Sie wollen. Ein Arduino-Prototyping-Schild ist jedoch etwas zu klein, wenn Sie nicht wirklich Ihre LEDs zusammendrücken.
- Zufälliger Komponentendraht - Einige Netzwerkkabelstränge und einige Prototyping-Drähte aus einem Kit funktionieren einwandfrei.
- Krokodilklemmen oder “helfende Hände” sind nützlich, um Bits an Ort und Stelle zu halten.
- Lötkolben und Lötmittel.
- Etwas Restholz.
- Ein Bohrer mit der gleichen Größe wie Ihre LEDs.
Hinweis: Die 3D-Zeichnungen in diesem Lernprogramm wurden mit TinkerCAD in wenigen Minuten erstellt. Ich folgte einem vorhandenen Build, das von Inte- bables forte1994 ausführlich beschrieben wurde. In diesem Artikel sollten Sie vielleicht auch etwas lesen, bevor Sie es versuchen.
Lesen Sie alle diese Anweisungen sorgfältig durch zuerst bevor Sie dies für sich selbst versuchen.
Das Prinzip dieses Designs
Bevor Sie mit der Konstruktion beginnen, ist es wichtig, einen vollständigen Überblick über die Funktionsweise dieses Dings zu haben, damit Sie im Laufe der Zeit Fehler beheben und Fehler erkennen können. Einige LED-Cubes verwenden einen einzelnen Ausgangspin für jede einzelne LED - dies wäre jedoch bei einem 4x4x4-Cube erforderlich 64 Pins - was wir sicherlich nicht auf einem Arduino Uno haben. Eine Lösung wäre die Verwendung von Schieberegistern. Arduino-Programmierung - Mit Schieberegistern spielen (a.k.a Noch mehr LEDs) Arduino-Programmierung - Mit Schieberegistern spielen (a.k.a Noch mehr LEDs) Heute möchte ich Ihnen ein wenig über Shift-Register beibringen. Dies ist ein ziemlich wichtiger Teil der Arduino-Programmierung, im Wesentlichen, weil sie die Anzahl der Ausgänge, die Sie verwenden können, im Gegenzug für… Lesen Sie mehr, aber dies ist unnötig kompliziert.
Um all diese LEDs auf nur 20 Pins zu steuern, verwenden wir eine Technik, die Multiplexing genannt wird. Wenn wir den Würfel in 4 separate Schichten unterteilen, benötigen wir nur Kontrollstifte für 16 LEDs. Um eine bestimmte LED zu beleuchten, müssen wir sowohl die Schicht als auch den Kontrollstift aktivieren, so dass wir insgesamt 16 + 4 Pins benötigen. Jede Schicht hat eine gemeinsame Kathode - den negativen Teil der Schaltung -, so dass alle negativen Schenkel miteinander verbunden sind und für diese Schicht mit einem einzigen Pin verbunden sind.
Auf der Anode (positiv) Auf dieser Seite wird jede LED mit der entsprechenden LED in der darüber- und darunterliegenden Schicht verbunden. Im Wesentlichen haben wir 16 Spalten der positiven Beine und 4 Schichten der negativen. Hier sind einige 3D-Ansichten der Verbindungen, um das Verständnis zu erleichtern:
Konstruktion
Da wir keine komplette Metallstruktur zum Löten verwenden, möchten wir, dass sich alle Beine der LEDs um etwa ein Viertel überlappen und der Struktur Starrheit verleihen. Falten Sie die Kathode Ihrer LEDs - die Seite mit der flachen Kerbe im Kopf und das kürzere Bein - wie in der Abbildung gezeigt. (Es spielt keine Rolle, ob Sie es nach links oder rechts biegen, solange Sie konstant sind und die Anode niemals berührt.)
Der erste kritische Teil dieses Projekts ist die Herstellung einer Holzlehre. Dadurch wird eine Schicht LEDs gehalten, während Sie die Beine zusammenlöten. Daher muss sie genau sein und darf nicht zu locker sein. Messen Sie mit einem Bohrer der gleichen Größe wie Ihre LEDs eine 4 × 4-Matrix aus gleich weit entfernt Löcher. Denken Sie daran, dass sich etwa ein Viertel des Beines mit dem Nachbarn überlappen soll, und verwenden Sie ein Lineal. Überprüfen Sie jedes Loch, um sicherzustellen, dass eine LED fest sitzt, aber nicht so fest sitzt, dass Sie es nicht wieder herausholen können, oder wenn Sie versuchen, eine vollständig gelötete Schicht zu entfernen.
Löten Sie die Kathoden von 4 LED-Reihen. Achten Sie darauf, dass Sie die LEDs nicht ausbrennen - Sie wollen ein gutes heißes Bügeleisen und müssen rein und raus sein. Hier sind meine ersten vier Reihen abgeschlossen.
Um die Steifigkeit der Schicht zu verstärken, schneiden Sie zwei gerade Stücke Handwerkdraht an beiden Enden, und stellen Sie sicher, dass sie mit jeder Reihe verbunden sind. Dies ist deine erste Schicht. Lassen Sie jetzt alle überschüssigen Beine an der Seite stehen.
Nun wäre ein guter Zeitpunkt zum Testen - laden Sie einfach die Standard-Arduino-Blink-App herunter, und legen Sie bei angeschlossenem Widerstand die Masse an den Layer-Rahmen an, und drücken Sie die positive Leitung zu jeder LED nacheinander.
Hoffentlich leuchten sie alle. Wenn nicht, vergewissern Sie sich, dass Sie an keiner Stelle eine Lötstelle verpasst haben, und ersetzen Sie gegebenenfalls die LED.
Entfernen Sie diese Schicht aus der Vorrichtung und wiederholen Sie den Vorgang 3 weitere Male.
Machen Sie sich keine Sorgen, wenn das Löten nicht perfekt ist. Solange es nicht bricht und die Verbindung stabil ist, hat dies keinen Einfluss auf das Endprodukt. Ich gebe zu, mein Löten war ziemlich hoffnungslos, meine Vorrichtung war aus und alles ähnelte dem schiefen Turm von Pisa. Trotzdem bin ich stolz auf den fertigen Würfel, und wenn die LEDs leuchten, werden Sie sowieso nicht auf die Lötstellen schauen!
Ebenen verbinden
Sobald Sie 4 fertige Ebenen haben, sollten Sie alle vertikalen Beine zusammenfügen. Ich habe festgestellt, dass dies der schwierigste Teil des Builds ist, und um den Prozess zu unterstützen, schneide ich einen Riser aus der Karte.
Dadurch wurden die Schichten auf der richtigen Höhe gehalten, aber viele Beine waren immer noch nicht perfekt ausgerichtet. Dafür habe ich Krokodilklemmen verwendet, um sie an Ort und Stelle zu halten.
1. dummer Fehler zu vermeiden
Erst als ich eine vollständige Schicht fertiggestellt hatte, wurde mir klar, dass mein Karten-Riser feststeckte, also musste ich ihn ausschneiden! Machen Sie nicht den gleichen Fehler wie ich - machen Sie den Riser an der Seite länger und fügen Sie die Kartenteile außerhalb des Würfels zusammen. Wenn Sie die Ebene abgeschlossen haben, können Sie den Riser dekonstruieren und die Karte herausziehen.
2. dummer Fehler zu vermeiden
Löten Sie das vertikale Bein offensichtlich nicht an den Kathodenrahmen. Vertikale Beine sollten nur mit anderen vertikalen Beinen verbunden werden und sonst nichts.
Testen Sie den Test erneut, nachdem jede Schicht angefügt wurde. Testen Sie alle Schichten, indem Sie nur die positive Leitung bis zur Spitze der obersten Schicht berühren, um sicherzustellen, dass Sie einen guten Kontakt durch alle Schichten haben.
Nachdem alle vier Schichten zusammengelötet waren, machte ich mich daran, etwas aufzuräumen - ich ließ ein einzelnes Bein in einer Art Sprungbrettweise aus jeder Schicht herausragen - dies würde später auf die Platine fallen. Andere fremde Stücke Metallrahmen und Beine wurden abgeschnitten. Schneiden Sie offensichtlich keine der vertikalen Beine - wir müssen diese in unser Prototyping-Board stecken.
Befestigung an der Tafel
Erinnern Sie sich noch, als ich sagte, jede Schicht an sich zu befestigen, war der schwierigste Teil? Ich habe gelogen. Der Versuch, 16 LED-Beine in winzige Löcher auf einer Prototyping-Platine einzubauen, ist tatsächlich schwieriger. Der einfachste Weg, den ich gefunden habe, bestand darin, die 4 durchzudrehen, sie mit Krokodilklemmen darunter zu befestigen und dann zur nächsten Reihe von 4 zu gehen. Verwenden Sie einen Markierungsstift, um den Abstand im Voraus zu markieren, falls dies hilfreich ist.
Im Nachhinein hätte ich die Widerstände eigentlich zuerst in das Protoboard eingebaut. In diesem Moment habe ich zuerst alle Beine des Würfels in die Platine gelötet, dann habe ich versucht, Widerstände vorsichtig zwischen die einzelnen Elemente zu drücken. Lerne aus meinem Fehler und platziere zuerst deine Widerstände.
Ich habe versucht, sie schrittweise zu verteilen, sodass ich eine ganze Seite des Würfels für alle endgültigen Verbindungen zum Arduino verwenden konnte. Hier ist der Schaltplan, mit dem ich gegangen bin:
Bei den vier negativen Schichten habe ich einen einzelnen Draht von jeder Schicht heruntergelassen und dann einfach zur Seite gezogen:
Zum Schluss habe ich noch ein paar Steckerdrähte hinzugefügt, die ich dann in die entsprechenden Arduino-Pins stecken konnte. Verwenden Sie die längste Art, die Sie haben. Hinweis: Ich habe die Reihenfolge an Orten durcheinander gebracht, weil die Planung schlecht war. Jede LED-Reihe war jedoch farblich gekennzeichnet.
Das ist es. Fertig!
Programmieren Ihres Würfels
Ich weiß, dass Sie es kaum erwarten können, dieses Ding in die Luft zu bekommen, also stecken Sie die 4 negativen Schichten in das Gerät Analoge E / A Häfen A2 (unterste Schicht) durch A5 (oberste Schicht) (diese können auch als digitale E / A fungieren). Stecken Sie dann die 16 LED-Steuerpins ein, beginnend mit +1 ganz rechts zu digitale E / A Port 0, mit +fünfzehn und +16 in analog gehen A0 und A1. (Verwenden Sie nicht AREF und GND)
Laden Sie die Demo-Muster und den Code von instruierbaren Benutzern herunter forte1994. Er hat auch ein hilfreiches Online-Tool zum Entwerfen der Byte-Muster zur Verfügung gestellt, um Ihre eigene Sequenz anzupassen. Hier ist ein Video dieses Codes in Aktion auf meinem Cube (Ich habe die Geschwindigkeit auf 5 anstatt der Standardeinstellung 20 eingestellt).
Natürlich ist dies nicht die einzige Möglichkeit, Ihren Cube zu programmieren. Lassen Sie mich ein paar Minuten damit verbringen, Ihnen die Grundlagen für das Erstellen eigener Muster zu vermitteln programmatisch, anstatt die voreingestellten Muster wie die obige Demo abzuspielen.
Es gibt ein paar Dinge, die Sie beim Programmieren Ihres Cubes beachten sollten:
- Um eine einzelne LED anzusprechen, verwenden Sie eine Ebene (Schicht) Nummer 0-3 und eine LED-Pin-Nummer 0-15. Drehen Sie das Flugzeug auf LOW-Ausgang (da dies das negative Bein ist) und die LED-Pin-Nummer HIGH (das positive Bein), um die LED zu aktivieren.
- Vergewissern Sie sich vor dem Aktivieren einer einzelnen LED, dass alle anderen Ebenen ausgeschaltet sind, dh setzen Sie sie auf HIGH-Ausgang. Andernfalls wird anstelle einer einzelnen LED eine LED-LED leuchten.
Zu diesem Zweck habe ich zwei sehr einfache programmatische Sequenzen erstellt, die Sie untersuchen können. Laden Sie den Code hier herunter. Die erste leuchtet einfach nacheinander jede LED einzeln auf. Wir verwenden hierfür zwei for-Schleifen, die über jede Ebene und jeden Steuer-Pin iterieren.
Die zweite ist eine Zufallsschleife (Sie müssen die erste auskommentieren und diese in der Hauptschleife aktivieren, um sie zu testen). Es wählt einfach eine zufällige Ebene und einen zufälligen Kontroll-Pin aus, der sie ein- und ausblinkt.
Zusammenfassung
Lassen Sie sich nicht von diesem Build einschüchtern - mir fehlt es wirklich an Löttechniken, und ich habe das gut geschafft (Meiner Ansicht nach?). Die Gesamtbauzeit betrug ungefähr eine Stunde pro Tag für eine Woche. Nächstes Mal werde ich versuchen, Ihnen etwas ehrgeizigeres Programmieren für den Würfel beizubringen. Ich hoffe, Sie werden diese Woche mit mir einen eigenen Würfel bauen und nächste Woche neuen Code laden - und wenn Sie Ihren eigenen erstellen tolle Apps oder Sequenzen, laden Sie sie bitte in Pastebin hoch und lassen Sie uns dies in den Kommentaren wissen!
Erfahren Sie mehr über: Arduino.