Inhaltsverzeichnis:

Infinity Clock - Arduino - WS2813 und DS3231 - Gunook
Infinity Clock - Arduino - WS2813 und DS3231 - Gunook

Video: Infinity Clock - Arduino - WS2813 und DS3231 - Gunook

Video: Infinity Clock - Arduino - WS2813 und DS3231 - Gunook
Video: Making the best Arduino Clock for beginners 2024, Juli
Anonim
Image
Image
Infinity-Uhr - Arduino - WS2813 und DS3231
Infinity-Uhr - Arduino - WS2813 und DS3231

Infinity-Uhr - Arduino - WS2813 und DS3231

Ich wollte eine Uhr bauen und mochte die Idee, mit einem Arduino eine Infinity-Uhr zu bauen. Ich wollte, dass es aus gewöhnlichen Elementen erstellt und das Programm selbst geschrieben wird.

Was ist eine Infinity-Uhr?

Der 3D-Illusionsspiegeleffekt wird immer dann erzeugt, wenn zwei parallele reflektierende Oberflächen vorhanden sind, die einen Lichtstrahl unendlich oft (theoretisch unendlich) hin und her werfen können. Die Reflexionen scheinen in die Ferne zu verschwinden, weil das Licht tatsächlich die Entfernung durchquert. Durch das Hinzufügen von farbigen LEDs zum Infinity-Spiegel versuchen wir, eine analoge Uhr zu simulieren, die das zurückweichende farbige Licht als Uhrzeiger verwendet.

In diesem anweisbaren werde ich Sie durch die Schritte zum Erstellen der Infinity-Uhr führen und dann einige abstimmbare Parameter im Programm überprüfen.

Schritt 1: Für dieses Projekt benötigte Teile

Für dieses Projekt benötigte Teile
Für dieses Projekt benötigte Teile

Liste der Einzelteile:

  1. Arduino Uno $6 für taydaelectronics
  2. Protoshield für Arduino Uno. Hier gibt es einen für 2,50 bei Amazon.
  3. DS3231 plus Batterie. Sie können einen für etwa 3,00 bei Amazon hier erhalten.
  4. WS2813 LED 144 für 1 Meter. 20 $ bei Amazon hier.
  5. 470 OHM 1 W Kohleschichtwiderstand ca. 1 Cent bei Taydaelectronics.
  6. 1000uf 16V Elektrolytkondensator 9 Cent auf Taydaelectronics
  7. 5V Netzteil - Ich habe ein altes Blackberry-Ladegerät verwendet.
  8. 6 Zoll runder Spiegel. etwa 5 $ bei Amazon
  9. 6in Acrylscheibe um 10 bei Amazon
  10. 2 - 6 "Holzstickreifen (yup das ist richtig) 2 $ pro Stück auf Amazon
  11. Silberne Einweg-Spiegelfolie. Ebay scheint am günstigsten zu sein.
  12. Verschiedene Drähte.
  13. 3/8" quadratischer Holzdübel HomeDepot für 1,27 $
  14. alter hölzerner uhrensockel oder anderer ausstellungsständer.
  15. 2 kleine Kabelbinder.

Der Prototyp-Schild ist nicht erforderlich, aber wenn Sie Arduino gerne verwenden, werden Sie es beim Erstellen dieser Projekte sehr praktisch finden. Tauschen Sie den Prototyp-Schild bei Bedarf mit einem Steckbrett aus.

Möglicherweise benötigen Sie auch einen Lötkolben.

Ich würde erwarten, dass das Projekt etwa 40,00 $ kostet

Schritt 2: Richten Sie Ihren PC ein

Richten Sie Ihren PC ein
Richten Sie Ihren PC ein
Richten Sie Ihren PC ein
Richten Sie Ihren PC ein
Richten Sie Ihren PC ein
Richten Sie Ihren PC ein

Wenn dies Ihr erstes Arduino-Projekt ist:

  1. Laden Sie die Arduino-Software von arduino.cc herunter
  2. Verbinden Sie den Arduino mit dem USB-Kabel mit dem PC.
  3. Nach dem Start der Software müssen Sie drei Bibliotheken installieren:

    • Klicken Sie auf das Menü „Skizze“, dann auf „Bibliotheken einschließen“und dann auf „Bibliotheken verwalten…“.
    • Installieren Sie die beiden Bibliotheken: FastLED und RTClib. Siehe Bilder für weitere Details.
  4. Holen Sie sich die Arduino-Skizze von meinem Github

    • Ich werde den Code am Ende überprüfen, damit Sie ihn bei Bedarf ändern können.
    • Laden Sie an dieser Stelle das Programm Infinity_Clock_DS3231_WS2813.ino
  5. Gehen Sie zu Sketch and Upload, um das Arduino zu laden.
  6. Dieser letzte Abschnitt des Instructable deckt einige der konfigurierbaren Parameter ab.

Am besten laden Sie die Skizze jetzt hoch, denn sobald die externe Stromversorgung hinzugefügt ist, verbinden Sie sie am besten nicht mit Ihrem PC.

Schritt 3: Verdrahten des Projekts

Verdrahtung des Projekts
Verdrahtung des Projekts
Verdrahtung des Projekts
Verdrahtung des Projekts

Wenn Sie das ProtoType Shield verwenden, legen Sie es auf den Arduino.

Die Verkabelung ist der komplexeste Teil des Projekts. Ich habe Bilder eingefügt, damit Sie sehen können, was ich getan habe. Ich empfehle, vor dem Einschalten alle Verbindungen zu überprüfen.

DS3231 - Echtzeituhrmodul

Stecken Sie das DS3231-Modul in das Steckbrett und verbinden Sie es wie im Bild.

  • Arduino Masse zu GND
  • Arduino 5V zu VCC
  • Arduino A4 zu SDA
  • Arduino A5 zu SCL

Im Bild verdrahte ich die 5V und die Masse mit ihrem eigenen Lauf auf dem Steckbrett, da wir später eine externe Stromversorgung anschließen möchten.

Befestigen Sie den WS2813 LED-Streifen

  • arduino 5V an Ihre 5V-Leistung.
  • Die mittleren beiden Anschlüsse sind redundante Datenpins. sie gehen zu Pin 7

    Achten Sie darauf, einen 470 OHM-Widerstand zwischen Pin7 und zwei Datenleitungen zu legen

  • Arduino Masse zum letzten Anschluss.

Schließen Sie das externe 5V-Netzteil an (es wird nicht empfohlen, den LED-Streifen über längere Zeit mit dem Arduino-Strom zu betreiben).

  • Setzen Sie einen 1000uf Elektrolytkondensator zwischen die Leitungen.
  • Verbinden Sie Strom und Masse mit Arduino Power (5V) und Masse (GND)

Ich empfehle nicht, die externe Stromversorgung und den USB gleichzeitig mit dem Arduino zu verbinden.

Schritt 4: Bauen Sie den Infinity-Spiegel

Baue den Infinity-Spiegel
Baue den Infinity-Spiegel

Schritte zum Bau des Infinity-Spiegels:

  1. Tragen Sie den Film auf die Acrylscheiben auf. Dadurch wird Ihr Einwegspiegel.
  2. Legen Sie die Acrylscheibe in den Stickrahmen. Ziehen Sie die Schraube fest, damit sie nicht verrutscht
  3. Setzen Sie den Spiegel in den anderen Stickrahmen ein. Ziehen Sie die Schraube fest.
  4. Schneiden Sie den quadratischen Dübel in kleine Abschnitte. etwa 1/2"
  5. Schleifen Sie den LED-Streifen mit den LEDs, die in den Kreis zeigen.

    1. Verwenden Sie die Kabelbinder, um die LED an Ort und Stelle zu halten.
    2. Möglicherweise müssen Sie eine Kerbe in den Kabelbinder schneiden.
  6. Legen Sie die Schlaufe auf den Spiegel

    1. Verwenden Sie Holzklötze als Abstandshalter
    2. Kleben Sie die Blöcke an Ort und Stelle. Sie sollten sicher genug sein, um die LED an Ort und Stelle zu halten.
  7. Setzen Sie den Acrylspiegel auf den Spiegel / die LEDs und kleben Sie ihn fest.

Schritt 5: Der Code

Der Code
Der Code
Der Code
Der Code

Das Programm verwendet die Real Time Clock-Bibliothek und die Fastled-Bibliothek.

Hier sind einige Code-Snippets, um das Verhalten anzupassen.

  • OFFSET - ist die Überlappung. Das Programm erwartet die Überlappung von LED0. Ich habe einen 3 LED-Offset.
  • CLOCKSTART - Hier steht der Mittag auf der Uhr. LED 30 stellt sie den elektrischen Anschlüssen gegenüber.

Ich habe das Programm geschrieben, um HTML-Farben zu verwenden. Sie können sie von https://htmlcolorcodes.com/ erhalten. Tauschen Sie einfach das # gegen 0x im Programm.

Sie können den Hintergrund für am/pm ändern

  • HintergrundAM = 0x070707;
  • HintergrundPM = 0x646D7E;

LED-Zeiger der Uhr:

  • Stundenzeiger =0x000FFF;
  • minHand =0x00CC00;
  • secHand = 0xcc0000;

Um es hervorzuheben, habe ich eine Option hinzugefügt, um 3 LEDs für den Stundenzeiger zu haben, aber Sie können die Farbe auf beiden Seiten der mittleren ändern, um sie hervorzuheben.

  • theeledhour=wahr; //Sie können es wahr oder falsch machen
  • extraHourHand =0x00001F;

Ein weiteres nettes Feature ist, dass die RTClib erkennt, dass die Batterie Ihres DS3231 entfernt wurde und die Zeit auf die PC-Kompilierungszeit einstellt. Es ist eine gute Funktion für den neuen DS3231.

Wenn Sie die Skizze am Anfang des Dokuments nicht erhalten haben, finden Sie sie auf GitHub

Vielen Dank für das Lesen dieses Instructable. Mein Sohn half und es war ein lustiges Projekt für uns. Ich hoffe, wir werden im Optikwettbewerb berücksichtigt.

Empfohlen: