Werbung
Wenn Sie sich mit einigen Arduino-Projekten für Anfänger beschäftigt haben, aber etwas Dauerhaftes und auf einer ganz anderen Ebene suchen, ist der bescheidene 4 x 4 x 4 LED-Würfel eine natürliche Wahl. Der Aufbau ist weitaus einfacher als Sie vielleicht denken, und mit einem Multiplexing können wir alle LEDs direkt von nur einer Arduino Uno-Karte aus steuern. Es ist eine großartige Lötpraxis, und die Gesamtkosten für Komponenten sollten nicht mehr als 40 US-Dollar betragen.
Heute werde ich die Konstruktionsseite der Dinge ausführlich beschreiben und Software bereitstellen, die sowohl beeindruckend aussieht als auch Ihnen die Grundlagen vermittelt.
Du wirst brauchen
- Ein Arduino. Der mitgelieferte Code geht von einem Arduino Uno aus, könnte aber auch an ein größeres Modell angepasst werden.
- 64 LEDs - Die genaue Wahl liegt bei Ihnen, aber ich habe diese superhellen 3 mm blauen LEDs verwendet (3,2 V 30 mA) @ £ 2.64 für 50.
- 16 Widerstände des entsprechenden Wertes für Ihre LEDs. Für die oben genannten LEDs kauften 99 Pence 100 davon. Benutzen ledcalc.com - Geben Sie 5 V 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 mit beschrifteten Box angezeigt "Nächster Widerstand mit höherer Nennleistung", dann suchen Sie einfach bei eBay nach diesem Wert.
- Etwas Basteldraht zur Stärkung der Grundstruktur und zur Dekoration - ich habe verwendet 0,8 mm Dicke.
- EIN Prototyping Board von einem Typ, an den Sie alle Ihre Bits anlöten können. Ich habe eine verwendet, die keine vollständigen Spuren enthält, da ich keinen Spurschneider habe, sondern alles verwende, was zu Ihnen passt. Ein Arduino-Prototyping-Schild ist jedoch etwas zu klein, es sei denn, Sie drücken Ihre LEDs wirklich zusammen.
- Zufälliger Komponentendraht - Einige Netzwerkkabelstränge und einige der 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 Altholz.
- Ein Bohrer mit der gleichen Größe wie Ihre LEDs.
Hinweis: Die 3D-Zeichnungen in diesem Tutorial wurden in wenigen Minuten mit erstellt TinkerCAD. Ich folgte einem vorhandenen Build, der vom Benutzer in Instructables beschrieben wurde forte1994, die Sie möglicherweise auch lesen möchten, bevor Sie dies versuchen.
Lesen Sie unbedingt alle diese Anweisungen durch zuerst bevor Sie dies selbst versuchen.
Das Prinzip dieses Entwurfs
Bevor Sie mit dem Bau beginnen, ist es wichtig, einen vollständigen Überblick über die Funktionsweise dieses Dings zu haben, damit Sie im Laufe der Zeit improvisieren und Fehler identifizieren können. Einige LED-Würfel verwenden einen einzelnen Ausgangspin für jede einzelne LED - in einem 4x4x4-Würfel würde dies jedoch erforderlich sein 64 Stifte - was wir auf einem Arduino Uno sicherlich nicht haben. Eine Lösung wäre zu verwenden Schieberegister Arduino-Programmierung - Spielen mit Schieberegistern (a.k.a. noch mehr LEDs)Heute werde ich versuchen, Ihnen ein wenig über Schieberegister beizubringen. Dies ist ein ziemlich wichtiger Teil der Arduino-Programmierung, im Grunde genommen, weil sie die Anzahl der Ausgänge erhöhen, die Sie im Austausch für ... Weiterlesen , aber das ist unnötig kompliziert.
Um alle diese LEDs in nur 20 Pins zu steuern, verwenden wir eine Technik namens Multiplexing. Durch Aufteilen des Würfels in 4 separate Schichten benötigen wir nur Steuerstifte für 16 LEDs - um a zu beleuchten Bei einer bestimmten LED müssen wir sowohl die Schicht als auch den Steuerstift aktivieren, was eine Gesamtanforderung von 16 + 4 ergibt Stifte. Jede Schicht hat eine gemeinsame Kathode - den negativen Teil der Schaltung - so dass alle negativen Schenkel miteinander verbunden und mit einem einzigen Stift für diese Schicht verbunden sind.
Auf der Anode (positiv) Seite wird jede LED mit der entsprechenden LED in der darüber und darunter liegenden Schicht verbunden. Im Wesentlichen haben wir 16 Spalten der positiven Beine und 4 Schichten der negativen. Hier sind einige 3D-Ansichten der Verbindungen, um Ihnen das Verständnis zu erleichtern:
Konstruktion
Da wir keine Vollmetallstruktur zum Löten verwenden, möchten wir, dass sich alle Beine der LEDs um etwa ein Viertel überlappen und der Struktur Steifheit verleihen. Falten Sie die Kathode Ihrer LEDs - die Seite mit der flachen Kerbe im Kopf und dem kürzeren Bein - wie in der Abbildung gezeigt um. (Es spielt keine Rolle, ob Sie es nach links oder rechts biegen, solange Sie konsistent sind und es niemals die Anode berührt.)
Der erste kritische Teil dieses Projekts ist die Herstellung einer Holzschablone. Dadurch wird eine Schicht LEDs gehalten, während Sie die Beine zusammenlöten. Daher muss diese genau und nicht zu locker sein. Messen Sie mit einem Bohrer der gleichen Größe wie Ihre LEDs eine 4 × 4-Matrix aus und bohren Sie sie anschließend äquidistant Löcher. Denken Sie daran, dass sich etwa ein Viertel des Beins mit dem Nachbarn überschneiden soll, und verwenden Sie ein tatsächliches Lineal. Überprüfen Sie jedes Loch, um sicherzustellen, dass eine LED fest sitzt, aber nicht so fest, dass Sie sie nicht wieder herausholen können. Andernfalls treten Probleme auf, wenn Sie versuchen, eine vollständig gelötete Schicht zu entfernen.
Löten Sie die Kathoden von 4 LED-Reihen. Achten Sie darauf, die LEDs nicht durchzubrennen - Sie möchten ein gutes heißes Bügeleisen und müssen ein- und ausgehen. Hier sind meine ersten vier Zeilen abgeschlossen.
Um die Steifigkeit der Schicht zu verstärken, schneiden und löten Sie zwei gerade Teile des Basteldrahtes an beiden Enden und stellen Sie sicher, dass sie mit jeder Reihe verbunden sind. Dies ist Ihre erste Schicht abgeschlossen. Lassen Sie alle überschüssigen Beine vorerst seitlich herausragen.
Jetzt wäre ein guter Zeitpunkt zum Testen - laden Sie einfach die Standard-Arduino-Blink-App und legen Sie bei angeschlossenem Widerstand die Erdung auf den Layer-Frame und drücken Sie nacheinander die positive Leitung zu jeder LED.
Hoffentlich leuchten sie alle auf. Wenn nicht, stellen Sie sicher, dass Sie nicht irgendwo eine Lötstelle verpasst haben, und ersetzen Sie gegebenenfalls die LED.
Entfernen Sie diese Schicht von der Schablone und wiederholen Sie den Vorgang 3 weitere Male.
Machen Sie sich keine Sorgen, wenn Ihr Löten nicht perfekt ist - solange es nicht bricht und die Verbindung fest ist, hat dies keine Auswirkungen auf das Endprodukt. Ich gebe zu, mein Löten war ziemlich hoffnungslos, meine Schablone war ausgeschaltet 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 abgeschlossene Ebenen haben, möchten Sie alle vertikalen Beine miteinander verbinden. Ich fand, dass dies der schwierigste Teil des Builds ist, und um den Prozess zu unterstützen, habe ich einen Riser aus der Karte geschnitten.
Dadurch wurden die Schichten auf der richtigen Höhe gehalten, aber viele Beine waren immer noch nicht perfekt ausgerichtet. Dazu habe ich einige Krokodilklemmen verwendet, um sie an Ort und Stelle zu halten.
1. Dumme Fehler zu vermeiden
Erst nach Abschluss einer vollständigen Schicht 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 länger an der Seite und verbinden Sie die Kartenstücke Wenn Sie die Ebene fertiggestellt haben, können Sie den Riser dekonstruieren und den herausziehen Karte.
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 sein und sonst nichts.
Testen Sie erneut, nachdem jede Schicht angebracht wurde. Testen Sie alle Schichten, indem Sie nur die positive Leitung bis zur Spitze der obersten Schicht berühren, um sicherzustellen, dass Sie durch alle Schichten einen guten Kontakt haben.
Als alle 4 Schichten zusammengelötet waren, machte ich mich an die Reinigung - ich ließ ein einziges Bein übrig aus jeder Schicht in einer Art Sprungbrett heraus verlängert - dies würde auf die fallen gelassen werden Board später. Andere äußere Teile des Metallrahmens und der Beine wurden abgeschnitten. Schneiden Sie natürlich keine der vertikalen Beine ab - wir müssen diese in unser Protoytping-Board stecken.
Befestigung an der Platine
Erinnerst du dich, als ich sagte, dass es am schwierigsten ist, jede Schicht an sich selbst zu befestigen? Ich habe gelogen. Der Versuch, 16 LED-Beine in winzige Löcher auf einem Prototyping-Board zu stecken, ist tatsächlich schwieriger. Der einfachste Weg, den ich gefunden habe, war, 4 gleichzeitig zu durchstöbern, sie mit Krokodilklemmen darunter zu sichern und dann zur nächsten 4er-Reihe überzugehen. Verwenden Sie einen Markierungsstift, um den Abstand im Voraus zu markieren, wenn dies hilfreich ist.
Im Nachhinein hätte ich die Widerstände eigentlich zuerst in das Protoboard eingesetzt. So wie es ist, habe ich zuerst alle Beine des Würfels in die Platine gelötet und dann versucht, die Widerstände zwischen den einzelnen vorsichtig zusammenzudrücken. Lerne aus meinem Fehler und platziere deine Widerstände zuerst.
Ich habe versucht, sie schrittweise zu platzieren, damit ich eine ganze Seite des Würfels für alle endgültigen Verbindungen zum Arduino verwenden kann. Hier ist der Schaltplan, mit dem ich gegangen bin:
Für die vier negativen Schichten habe ich einen einzelnen Draht von jeder Schicht heruntergelassen und sie dann einfach zur Seite gezogen:
Schließlich fügte ich einige Stecker hinzu, die ich dann in die entsprechenden Arduino-Pins stecken konnte. Verwenden Sie die längste Art, die Sie haben. Hinweis: Ich habe die Bestellung aufgrund schlechter Planung an einigen Stellen durcheinander gebracht. Jede LED-Reihe war jedoch farbcodiert.
Das ist es. Fertig!
Programmieren Sie Ihren Cube
Ich weiß, dass Sie es kaum erwarten können, dieses Ding in Gang zu bringen, also stecken Sie die 4 negativen Schichten in Analoge E / A. Häfen A2 (untere Schicht) durch A5 (oberste Schicht)(Diese können auch als digitale E / A fungieren). Stecken Sie dann die 16 LED-Steuerstifte ein, beginnend mit +1 ganz rechts zu digitale E / A. Port 0mit +15 und +16 in analog gehen A0 und A1. (Verwenden Sie nicht AREF und GND.)
Laden Sie die Demomuster und Code vom anweisbaren Benutzer forte1994. Er hat auch eine hilfreiches Online-Tool zum Entwerfen der Bytemuster zum Anpassen Ihrer eigenen Sequenz. Hier ist ein Video dieses Codes in Aktion auf meinem Cube (Ich habe die Geschwindigkeit auf 5 eingestellt, anstatt auf die Standardeinstellung 20).
Dies ist natürlich nicht die einzige Möglichkeit, Ihren Würfel zu programmieren. Lassen Sie mich daher einige Minuten damit verbringen, Ihnen die Grundlagen der Erstellung Ihrer eigenen Muster beizubringen programmatisch, anstatt voreingestellte Muster wie in der obigen Demo wiederzugeben.
Es gibt einige Dinge, die Sie wissen sollten, wenn Sie versuchen, Ihren Cube zu programmieren:
- Um eine einzelne LED zu adressieren, verwenden Sie a Flugzeug (Schicht-) Nummer 0–3 und eine LED-Pin-Nummer 0–15. Drehen Sie die Ebene auf LOW-Ausgang (da dies der negative Zweig ist) und die LED-Pin-Nummer HIGH (der positive Zweig), um die LED zu aktivieren.
- Stellen Sie vor dem Aktivieren einer einzelnen LED sicher, dass alle anderen Ebenen ausgeschaltet sind. Stellen Sie sie daher auf HIGH-Ausgang. Wenn Sie dies nicht tun, leuchtet eine LED-Spalte anstelle einer einzelnen LED.
In diesem Sinne habe ich zwei sehr einfache programmatische Sequenzen erstellt, die Sie untersuchen können: Laden Sie den Code hier herunter. Die erste leuchtet einfach jede LED nacheinander auf. Wir verwenden hierfür zwei for-Schleifen, die über jede Schicht und jeden Steuerstift 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 Steuerstift aus und blinkt sie ein und aus.
Zusammenfassung
Lassen Sie sich von diesem Build nicht einschüchtern - mir fehlen ernsthaft die Lötfähigkeiten, und ich habe das in Ordnung geschafft (Ich denke?). Die gesamte Bauzeit 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, dass Sie diese Woche gemeinsam mit mir Ihren eigenen Würfel erstellen Laden Sie nächste Woche neuen Code - und wenn Sie Ihre eigenen fantastischen Apps oder Sequenzen erstellen, laden Sie diese bitte in Pastebin hoch und lassen Sie es uns im Internet wissen Bemerkungen!
James hat einen BSc in künstlicher Intelligenz und ist CompTIA A + und Network + zertifiziert. Er ist der Hauptentwickler von MakeUseOf und verbringt seine Freizeit mit VR-Paintball und Brettspielen. Er baut seit seiner Kindheit PCs.