Silvester-Countdown
Komponenten und Verbrauchsmaterialien
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
Apps und Onlinedienste
|
Über dieses Projekt
Übersicht
Dieses atemberaubende Display wurde als Countdown für das neue Jahr 2019 erstellt, kann jedoch für den Countdown zu jedem Ereignis verwendet werden. Das Warten auf Geburtstage, Feiertage, Reisen und andere besondere Ereignisse kann mit diesem Projekt mit Leichtigkeit übertrieben werden.
Das Gerät wechselt automatisch zwischen den Datentypen (z. B. zeigt Tage und Stunden an, wenn Tage verbleiben, nimmt jedoch den gesamten Bildschirm mit den letzten Sekunden ein). Während der Anzeige von Informationen wird ein glatter RGB-Farbzyklus durch die Textfarbe angezeigt. Wenn das Ereignis eintrifft, wird eine personalisierte Nachricht und ein gemischter RGB-Hintergrund angezeigt.
Das Gerät kann dank einer RTC (Echtzeituhr) mit unabhängiger Batterie vom Stromnetz getrennt werden und die genaue Zeit beibehalten.
RTC-Setup
Um die RTC richtig zu verwenden, stellen wir ihre Zeit ein, bevor wir sie in unserem Projekt verwenden. Dazu verwenden wir Arduino Uno und RTC.
Legen Sie zuerst eine 3-Volt-Knopfzellenbatterie in die Echtzeituhr ein.
Stellen Sie zunächst die folgenden Verbindungen her:
- UNO GND -> RTC GND
- UNO 5V -> RTC VCC
- UNO A5 -> RTC SCL
- UNO A4 -> RTC SDA
Wenn dies abgeschlossen ist, kopieren Sie den Code "Accurate RTC Clock setter" aus dem unter Code verlinkten Repository. Fügen Sie den Code in eine neue Skizze in der Arduino IDE ein und klicken Sie dann auf Sketch -> Bibliothek einschließen -> Bibliothek verwalten. Suchen und installieren Sie die RTClib-Bibliothek. Während wir hier sind, machen Sie dasselbe für die RGBmatrixPanel-Bibliothek.
In der Setup-Funktion ist ein Aufruf der Methode rtc.adjust(). Dadurch wird die rtc-Uhr auf das aktuelle Datum und die aktuelle Uhrzeit beim Kompilieren des Sketches eingestellt.
Diesem Aufruf wird ein TimeSpan()-Attribut hinzugefügt, das der aktuellen Zeit eine Anzahl von Sekunden hinzufügt, um die Zeit zum Kompilieren und Hochladen zu kompensieren. Laden Sie die Skizze zum Arduino Uno hoch und öffnen Sie den seriellen Monitor.
Rufen Sie dann time.gov auf, um die genaue Zeit in Sekunden zu erhalten, vergleichen Sie diese mit dem seriellen Monitor und finden Sie den Unterschied, falls vorhanden. Wenden Sie diese Differenz auf den Aufruf von Time Span() an, bis die Zeiten nahezu perfekt synchron sind.
Sobald die RTC-Zeit synchronisiert ist, können Sie weitermachen.
"Aufbauen" des Displays
Verwenden Sie dies als Referenz:
https://learn.adafruit.com/32x16-32x32-rgb-led-matrix/featured_products
Das Wichtigste zuerst, die LED-Matrix verbraucht viel Strom, also werden wir damit beginnen, diesen Bedarf zu befriedigen. Schneiden und isolieren Sie die Enden des Stromkabels der Power-Matrix, es sollte Metallkreise oder -laschen haben. Führen Sie die Drähte in die DC-Buchse ein und befestigen Sie sie. Stellen Sie sicher, dass das blanke Kupfer der Drähte nicht miteinander verbunden ist. Um dies zu gewährleisten, wird ein Isolierband empfohlen.
Schließen Sie nun das Display an, um sicherzustellen, dass die Verbindungen funktionieren. Solange nichts funken, haben Sie Ihr Display erfolgreich mit Strom versorgt.
Folgen Sie nun den Anweisungen hier, um den Eingang des Displays zu finden.
Vervollständigen Sie dann die hier beschriebene Verkabelung, um das Arduino anzuschließen. Beachten Sie, dass jedes Mal, wenn die Anleitungsbilder einen D-Pin zeigen, dieser durch einen anderen Massestift ersetzt werden sollte.
Die fertige Verkabelung des Kabels sollte so aussehen:
Die Verkabelung für die RTC sollte gleich bleiben.
Codieren des Displays
Kopieren Sie den "Arduino-Code" aus dem in der Beschreibung verlinkten Repository und fügen Sie ihn in Ihre Aduino-IDE ein.
Ändern Sie vor dem Hochladen die Datums- und Uhrzeitinformationen des Ereignisses, auf das heruntergezählt wird, sowie die Meldung, die angezeigt werden soll, sobald das Ereignis eintritt. Diese können beide durch Kommentare oben in der Skizze umrissen gefunden werden.
Die RGBPulseSpeed kann auch geändert werden, um den RGB-Textfarbzyklus zu beschleunigen oder zu verlangsamen. Beginnen Sie damit, ihn unter 10 zu halten.
Bevor der Code hochgeladen werden kann, müssen einige Bibliotheken hinzugefügt werden. Gehen Sie zu Sketch->Bibliothek einschließen->Bibliothek verwalten. dann importieren Sie die Adafruti GFX-Bibliothek und die DS3231-Bibliothek.
Um dann die Time-Bibliothek zu importieren, gehen Sie zu https://github.com/PaulStoffregen/Time, laden Sie sie als Zip-Datei herunter. Gehen Sie in der Arduino IDE zu Sketch->Bibliothek einschließen->ZIP-Bibliothek hinzufügen und importieren Sie die Bibliothek.
Sobald diese Variablen geändert und die Bibliotheken hinzugefügt wurden, laden Sie die Skizze zum Arduino hoch.
Gehäuse
Ich muss noch ein formelles Gehäuse für dieses Gerät erstellen, aber mein Rat ist, die Verpackung der LED-Matrix zu verwenden, um das Arduino, die RTC und die zusätzliche Verkabelung einzuschließen, und dann das Panel mit den mitgelieferten Magnetschrauben oben zu montieren.
Ich schlage auch vor, ein Pauspapier (oder Pergament, obwohl ich es nicht versucht habe) auf die Matrix zu kleben, da es das irritierende Licht mildert und die unbenutzten LEDs etwas verbirgt. Mehr Papier führt zu einer wärmeren, aber matten Anzeige.
Verwenden
Verwenden Sie einen 5-V-USB-Stromblock (Ziegelstein), um den Arduino mit Strom zu versorgen. Ich weiß, dass es für das Gerät unpraktisch ist, 2 Stecker zu benötigen und eine ganze Steckdose einzunehmen, aber es ist die sicherste Bauweise.
Der Countdown ändert sich automatisch entsprechend der verbleibenden Zeit bis zum Event. Sobald das Ereignis eingetreten ist und Ihre Bekannten von der Nachricht und der RGB-Animation begeistert sind, ziehen Sie einfach beide Kabel vom Display ab.
Wenn der Countdown abgelaufen ist, verwenden Sie den RTC-Einstellcode, um ihn zu ändern, bis er genauer ist. Ich kann nicht betonen, wie wichtig ein genaues Timing ist.
Zukunft
Ich möchte mehr Animationen erstellen, die abgespielt werden können, wenn das Ereignis eintritt, z. B. spezielle Animationen wie Feuerwerk und Geburtstagskerzen. Ich arbeite auch daran, mehr Anpassungen für Nachrichten zu ermöglichen. Dies war ein schnell zusammengestelltes Projekt (an Silvester gestartet), also ist es sicherlich nicht der glorreichste Code. Ich kann daran arbeiten, die Lesbarkeit und Effizienz zu verbessern, wenn ich dazu komme.
Vielen Dank, dass Sie sich dieses Projekt angesehen haben. Wenn Sie Kommentare, Fragen oder Bedenken haben, zögern Sie bitte nicht, mich zu kontaktieren. Ich werde eine schnelle Antwort geben.
Während Sie hier sind, können Sie sich auch Folgendes ansehen:
Einige meiner anderen Projekte
Mein YouTube-Kanal
Meine Website
Respektieren Sie, wenn Ihnen dieses Projekt gefallen hat, und folgen Sie mir für weitere Projekte wie dieses.
Code
Code
Nachdem Sie die RTC an ein Arduino-Board angeschlossen haben, laden Sie die Skizze "genauer RTC-Uhrensteller" wiederholt hoch und ändern Sie die Zeit dpan im Setup, bis sie sehr genau ist. Fügen Sie "Arduino-Code" in Ihre Arduino-IDE ein, laden Sie sie in das Projekt hoch und lehnen Sie sich zurück https://github.com/miles-nash/countdown-clockHerstellungsprozess
- Herausforderungen bei der Entwicklung neuer Produkte
- New Jersey Offshore-Windlieferketten-Netzwerkveranstaltung
- UFO-Angriff!
- Das Ende einer Ära, der Beginn eines neuen Kapitels bei DVIRC
- 3D RGB Arduclock
- MyRiver
- Iron Man
- Joystick-Spiel
- Neue Technologien und Märkte bei World of Filament Winding Ereignis
- Was sind Ihre Neujahrsvorsätze für Druckluft?