Inhaltsverzeichnis:

Wordclock (deutsches Layout) - Gunook
Wordclock (deutsches Layout) - Gunook

Video: Wordclock (deutsches Layout) - Gunook

Video: Wordclock (deutsches Layout) - Gunook
Video: Time Told in Words: Custom Dutch Language LED Word Clock 2024, Juli
Anonim
Wordclock (deutsches Layout)
Wordclock (deutsches Layout)
Wordclock (deutsches Layout)
Wordclock (deutsches Layout)
Wordclock (deutsches Layout)
Wordclock (deutsches Layout)

Hey, ich möchte Euch hier mal mein letztes Projekt vorstellen. Ich habe eine Uhr gebaut. Allerdings keine "normale" Uhr, sondern eine Word Clock. Zu solchen Bastelprojekten gibt es hier zwar schon ein paar Artikel, aber trotzdem möchte ich mal zeigen was ich mir ausgedacht und gebaut habe. Vielleicht hilft es ja dem ein oder anderen ja bei seinem Projekt.

Auf sterben Idee dies hat mich vor ein paar Monaten ein Kollege gebracht, der mir ein bisschen über seine Mikrocontroller-Projekte erzählt hat und das er unter anderem auch eine solche Uhr für seine Frau gebaut hat. Die Idee fand ich so cool, dass ich mich auch entschieden habe so eine Uhr zu bauen. Sollte ja für einen Informatikstudenten im vierten Semester wohl irgendwie machbar sein. Danke Jannes:D

Glücklicherweise hatte ich zu diesem Zeitpunkt noch genug Zeit (5 Monate) bis zum Geburtstag meiner Freundin, sodass ich das kombinieren konnte und sie dann sterben Uhr zum Geburtstag bekommen hat.

Da das hier mein erstes richtiges Projekt war, bin ich sicher, dass ich bestimmt nicht alles perfekt gemacht habe. Allerdings bin ich mit dem Ergebnis mehr als zufrieden (und meine Freundin auch:). Von daher fällt ihr Anmerkungen und Tipps ihr, gerne in die Kommentare.

Schritt 1: Material

Baumaterialien:

  • MDF Holzplatte(n) (8mm und 12mm)
  • Frontplatte (Fotokarton)
  • Plexiglasplatte
  • Holzdübel
  • Schrauben:

    • Zylinderkopfschraube 25mm x M5
    • M5 Hülsenmutter
    • Schrauben 20mm x M4
    • Kleiner Metallwinkel
    • Großer Metallwinkel
    • Holzschrauben 40mm

Mikrocontroller:

  • Arduino Nano AtMega328p
  • RTC-Modul

Elektronik:

  • Netzteil (Extern, Ausgang: 5V, 3A (15W), Hohlstecker 2, 1x5,5mm)
  • WS2812b LEDs (60LED/m) (ca. 2m)
  • Kupferdraht
  • CR1220 Knopfzelle
  • Hohlsteckerbuchse 2, 1x5,5mm
  • Hohlstecker-Verlängerungskabel
  • Verlegekabel 3x0, 75mm^2
  • Infrarot-Fernbedienung (IR)
  • Schrumpfschläuche
  • Fotowiderstand
  • IR-Empfänger (TSOP4838 38 kHz)
  • Bauteile Platin:

    • Buchenleiste (1x15 polig)
    • Buchenleiste 90° gebogen (1x5 polig)
    • Spannung (470 Ohm, 1k Ohm)
    • Kondensator (1000µF)
    • Klemmleiste (Schraubklemmblock):

      • 2-polig
      • 3-polig
      • 10-polig

Und das Wichtigste:

Nerven und Geduld

Schritt 2: Planung

Planung
Planung
Planung
Planung
Planung
Planung
Planung
Planung

Zu Beginn habe ich mir erstmal Gedanken gemacht welche Funktionen die Uhr nachher haben soll. Anhand der dafür benötigten Bauteile konnte ich die Planung machen. Ich habe mich auf folgende Funktionen festgelegt:

  • Anzeige der aktuellen Uhrzeit (minutengenau)
  • Speicherung der Zeit (für Spannungsausfall)
  • Steuerung der LED-Farben
  • Automatische Anpassung der Helligkeit an die Umgebung + manuelle Einstellung der Helligkeit
  • Automatische Umstellung auf Sommer-/Winterzeit
  • Funktion zum manuellen Einstellen der Zeit (für den Fall der Fälle)
  • Steuerung über eine Infrarot-Fernbedienung (Farbe, Helligkeit, Blinkeffekte, Zeiteinstellung)

Außerdem soll die Uhr an der Wand montiert werden oder normal aufrecht hingestellt werden can.

Damit konnte ich mich an die Konstruktionswagen. Nachdem ich mit den ganzen Papierzetteln irgendwann dann fast den Überblick verloren hatte, bin ich auf eine CAD App (Shapr3D) fürs iPad umgestiegen. Die bekommt man als Student glücklicherweise kostenlos:). Damit konnte ich die Uhr als 3D-Modell aufbauen, was die Planung deutlich erleichtert hat (siehe Bilder)

Schritt 3: Frontplatte

Frontplatte
Frontplatte
Frontplatte
Frontplatte
Frontplatte
Frontplatte

Das wohl wichtigste Teil der Uhr ist die Frontplatte mit dem scheinbar wirren Buchstabenfeld. Ich habe damit auch angefangen, da sich die ganze Konstruktion der Uhr Daran orientiert.

Bei der Positionierung der Buchstaben bzw. Wörter habe ich ein Muster gewählt, bei dem der Name meiner Freundin senkrecht in der in Mitte des Buchstabenfeldes steht. Dazu musste ich ein bisschen rumprobieren, bis ein passendes Muster mit allen notwendigen Wörtern rauskam. Da aber nicht alle Buchstaben genutzt werden, hatte ich hier etwas Spielraum.

Die Frontplatte an sich besteht aus einem schwarzen Fotokarton. Diese habe ich bei formulor.de zeichnen lassen. Das maximale bestellbare rechteckige Maß beträgt 384mm x 384mm. This Maß liegt somit der gesamten Uhr zugrunde.

Die Buchstaben im Karton werden per Laser ausgeschnitten. Dazu muss eine Vektorgrafik auf der Formulor-Webseite hochgeladen Werden, sterben genau das auszuschneidende Muster definiert. Zur Erstellung Einer Vektorgrafik eignet sich sehr gut das OpenSource-Tool InkScape. Auf der Formulor-Webseite lässt sich eine Art "Vorlage" herunterladen, in der die Maße des Fotokartons bereits eingezeichnet sind.

Mit dem Programm habe ich ein Raster für die Buchstaben erstellt und die Buchstaben entsprechend positioniert. Hierbei müssen einige Buchstaben allerdings extra bearbeitet werden, damit sterben Innenbereiche (sog. "Punzen") nicht herausfallen beim Lasern. Dazu habe ich Pfade der betroffenen Buchstaben einzeln angepasst und "Stege" eingesetzt. Dabei entstand ein ziemlich schöner und passender Schriftstil wie ich finde.

Schritt 4: Konstruktion Und Fertigung Der Holzteile

Konstruktion Und Fertigung Der Holzteile
Konstruktion Und Fertigung Der Holzteile
Konstruktion Und Fertigung Der Holzteile
Konstruktion Und Fertigung Der Holzteile
Konstruktion Und Fertigung Der Holzteile
Konstruktion Und Fertigung Der Holzteile
Konstruktion Und Fertigung Der Holzteile
Konstruktion Und Fertigung Der Holzteile

Nachdem die Frontplatte fertig war, konnte ich mit der eigentlichen Konstruktion und dem Bau der Uhr beginnen.

Material:

Der Rahmen der Uhr besteht aus MDF-Platten (mitteldichte Holzfaserplatte). Die Holzbauteile habe ich im Internet mit den passenden Maßen bestellt. Kann man natürlich auch selbst zuschneiden, war aber einfacher:)

Rahmen:

Wie bereits erwähnt, orientiert sich die Größe der Uhr an der möglichen bestellbaren Größe der Frontplatte. Aus diesem Grund wurden die Rahmenteile entsprechend der Größe dimensioniert:

Die Ober-, Unter- und Seitenplatten sind gedübelt, verleimt und verschraubt. Damit wird eine optimale Stabilität gewährleistet, da die Uhr schon ein bisschen was wiegt.

Auf der Oberplatte ist neben den Löchern für die Befestigungsschrauben in der Mitte ein Loch gebohrt, in dem der Fotowiderstand für die automatische Helligkeitssteuerung eingesetzt ist. Die Unterplatte besitzt ebenfalls mittig ein Loch für die untere Hohlsteckerbuchse zur Spannungsversorgung.

Alle Rahmenteile wurden nach der Bearbeitung von außen und an den Rändern mit einer Grundierung schwarz lackiert (siehe spätere Bilder). Das habe ich von einem Malermeister aus dem Bekanntenkreis machen lassen. Vielen Dank an der Stelle nochmal Christoph:)

Mittelplatte:

Die Mittelplatte hält die Uhr im Grunde von innen zusammen. Hier sind alle Teile des Innenlebens befestigt. Die Mittelplatte besitzt vier äußere Bohrungen für die Hülsenmuttern zur Fixierung der Frontplatte. Außerdem sind sieben Löcher gesetzt, durch die Kabel für die LEDs und den IR-Empfänger durchgeführt.

Auf der Rückseite der Platte ist außerdem mittig mit einer Oberflächenfräse ein rechteckiger Bereich ausgefräst worden, in der später sterben Platine mit dem Arduino etc. eingelassen wurde. Hierdurch lässt sich die Uhr insgesamt etwas schmaler bauen. Die Fräse habe ich von einem Kollegen meines Vaters ausgeliehen. Vielen Dank auch an dieser Stelle nochmal:)

Lochplatte:

Die Lochplatte ist das aufwendigste Teil der Uhr. SIE hat die Aufgabe das Licht jeder einzelnen LEDs möglichst von den anderen abzuschirmen, DAMIT DIE VERFÜGBAREN Buchstaben NICHT "mitleuchten". Dazu habe ich für jede LED ein 23mm breites Loch mit einem Forstnerbohrer gefertigt.

Zusammen sind dies 110 Löcher für die LEDs, vier kleinere Löcher für die Minuten-LEDs und nochmal vier weitere Löcher an den Ecken zur Fixierung der Platte.

Außerdem sind auf der Rückseite dieser Platte Kerben für die LEDs und Kabel ausgefräst, damit sterben Platte möglichst bündig auf der Mittelplatte aufliegen can und so Eine gute Lichtabschirmung ermöglicht WIRD. Außerdem IST im oberen Bereich der Lochplatte ausgefräst, in der IR-Empfänger platziert ist.

Schritt 5: Elektronik

Elektronik
Elektronik
Elektronik
Elektronik
Elektronik
Elektronik
Elektronik
Elektronik

Schaltung und Platine

Die Steuerung der Uhr erfolgt über einen Arduino Nano. Der Mikrocontroller steuert die adressierbaren WS2812b LEDs hinter dem Buchstabenfeld. Die Uhrzeit für die Verarbeitung von Arduino aus einem RTCModul. This besitzt eine Batterie und kann sterben Zeit speichern und "zählt weiter", auch wenn die Spannungsversorgung unterbrochen ist. Externe Steuerungssignale können vom Arduino über einen Infrarotempfänger (TSOP4838 38 kHz) empfangen werden. Informationen über die Umgebungshelligkeit erhält er durch einen kleinen Fotowiderstand auf der Oberseite.

Zu beachten ist dabei die Datenleitung der WS2812b LEDs mit Einem Widerstand zwischen 300 und 500 Ohm. Die Werte des Fotowiderstands werden über einen Spannungsteiler mit dem analogen Eingang des Mikrocontrollers ermittelt.

Zur besseren Handhabung (und zum besseren Aussehen;)) Habe ich für sterben Schaltung Eine Platine Entwickelt. Dazu habe ich EAGLE von Autodesk used (ist für Hobbyanwender kostenlos und als Student bekommt man sogar die Vollversion). Hier wurde der Schaltplan nachgebaut und die Platine entsprechend designt. Die Platine an sich habe ich bei JLCPCB.com bestellt. Vielen Dank hier an Jonas, der mir mit EAGLE und der Bestellung geholfen hat:D

Die Spannungsversorgung für die LEDs läuft ebenfalls über die Platine. Die 10 (bzw. 11) LED-Reihen Sind in fünf zweier (bzw. die letzten in dreier) Parallelstränge aufgeteilt, damit die Strombelastung für die Leiterbahnen der ersten LEDs und der Spannungsabfall am Ende nicht zu groß wird.

Beim Netzteil habe ich mich für ein externes Netzteil entschieden, damit die Uhr etwas dünner gebaut werden kann. Die Dimensionierung basiert auf der Grundlage der erwarteten Leistungsaufnahme der LEDs. Pro LED sollte man mit 0,06A rechnen, die ungefähr benötigt werden wenn weißes Licht (alle 3 RGB LEDs an) leuchten soll. Bei 114 LEDs wären das theoretisch stolze 6, 8A. Da allerdings bei der Anzeige der Zeit niemals alle LEDs gleichzeitig leuchten, kann hier ein deutlich kleineres Netzteil verwendet werden. Ich habe mich für ein 3A Netzteil entschieden, das somit immer noch genug Reserven hat. (Bei der Programmierung sollte man das aber im Hinterkopf behalten und evtl. Grenzen für die Helligkeit in der Software einbauen, damit das Netzteil nicht abraucht)

Bau

Nach der sehnsüchtig erwarteten Ankunft meiner ersten selbstdesignten Platinen und dem verlöten der Bauteile konnte ich die 114 LEDs auf der Mittelplatte platzieren und ebenfalls zusammenlöten. Definitiv die unschönste Arbeit an der ganzen Uhr. Aber was macht man nicht alles….:) Dafür sollte man einige Abende einplanen. Zur Verbindung der LEDs innerhalb der Reihe eignet sich verzinnerter Kupferdraht hervorragend.

Nach dem Verlöten der LEDs wurden die Kabel für die Spannungsversorgung der Reihen auf der Rückseite der Mittelplatte festgeklebt und an die Schraubklemmen der Platine geführt.

Der Fotowiderstand wurde oben in der Oberplatte ebenfalls festgeklebt und die Kabel zur Platine gelegt. Ebenso wie beim IR-Empfänger, der auf der 3D-gedruckten Halterung auf der Vorderseite und der Oberplatte geklebt WIRD (später mehr).

Schritt 6: 3D-Druckteile

3D Druckteile
3D Druckteile
3D Druckteile
3D Druckteile
3D Druckteile
3D Druckteile

Zwei Teile der Uhr habe ich mit einem 3D-Drucker machen lassen. Da diese beiden Halterungen nur sehr kleine Bauteile tragen müssen und nicht viel Platz vorhanden ist, habe ich mich für einen 3D-Druck entschieden:

  • Halterung der rückwärtigen Hohlsteckerbuchse
  • Halterung des IR-Empfängers

Den Entwurf habe wieder mit der Shapr3D-App erstellt. Die daraus generierte STL-Datei konnte ich an einen Freund senden, der ganz zufällig einen 3D-Drucker hat. Danke nochmal dafür Jonas:D

Die Halterung für die Hohlsteckerbuchse befindet sich in der Uhr auf der Unterplatte auf der Rückseite. Damit sich die Uhr auch im Stand betreiben lässt, obwohl die untere Buchse verdeckt ist. Die zweite Halterung ist an der Unterseite der Oberplatte geklebt und positioniert den IR-Empfänger genau hinter der entsprechenden Öffnung der Frontplatte.

Schritt 7: Bau der Uhr

Bau der Uhr
Bau der Uhr
Bau der Uhr
Bau der Uhr
Bau der Uhr
Bau der Uhr
Bau der Uhr
Bau der Uhr

Nachdem alle notwendigen Teile gebaut wurden, konnte endlich die Uhr vollständig zusammengebaut werden.

Der Rahmenteile sind wie anfangs erwähnt mit der Mittelplatte verschraubt und verleimt. Die Schrauben habe ich hier noch schwarz lackiert, damit sie nicht so in dem Rahmen auffallen.

Mit dem zusammengebauten Rahmen könnte dann sterben Verkabelung für sterben Spannungsversorgung gemacht werden. Die beiden Hohlsteckerbuchsen sind Dazu zusammengeführt (parallel) und gehen zusammen auf die Eingangsklemmen der Platine, damit sterben Uhr sowohl hängend als auch aufrecht stehend betrieben werden kann. Außerdem könnte jetzt der Fotowiderstand und der IR-Empfänger mit der 3D-gedruckten Halterung verklebt und mit der Platine verkabelt werden.

Zur besseren Streuung des Lichtes und damit die LEDs hinter der Frontplatte nicht sichtbar sind, sind die Bohrungen der Lochplatte mit weißen, leicht transparentem Papier überdeckt. Dadurch leuchten die Buchstaben gleichmäßig.

Schritt 8: Programmierung

Zur Programmierung der Uhr habe ich die Arduino IDE verwendet. Die Programmierung läuft daher vielleicht nachher zwar nicht so super effizient, aber man kann sich mehr auf sein Programm konzentrieren als auf das Handling des Chips. Die Bibliotheken für die eingebauten Funktionen und Bauteile sind die folgenden:

  • DS3231.h RTC-Modul
  • Adafruit_Neopixel.h Steuerung WS2812b-LEDs
  • IRremote.h und IRremoteInt.h IR-Empfänger

Grundprinzip (einfach): Über das RTC-Modul werden bei jedem Zyklus des Mikrocontrollers die Zeitdaten bezogen. This Werden in 5-Minuten-Bereichen zerlegt und sterben entsprechenden, als Wörter definierte LEDs, aktiviert. Bei Jedem Zyklus WIRD zusätzlich sterben Umgebungshelligkeit überprüft und es WIRD überprüft, ob neue Signale über den IR-Empfänger empfangen wurden. Falls etwas davon zutrifft, WIRD in ausgelagerte Funktionen gesprungen um z. B. einen Helligkeits-Fading-Effekt zu erzeugen. Hier kann man sich beliebig austoben. Meine über die Software realisierten Funktionen sind die folgenden:

  • "Julia"-Intro beim Start der Uhr und jeder vollen Stunde (mit Fadeout-Effekt)
  • Steuerung der Farbe über IR-Fernbedienung (interne Verwendung HSV-Farbsystem)
  • Manuelle Steuerung der Helligkeit über IR-Fernbedienung
  • Fading-Effekt der LED-Helligkeit bei Änderung der Umgebungshelligkeit oder manueller Änderung
  • Automatische Zeitumstellung (Sommer/Winter)
  • Manuelle Zeitstellung (durch blinkendes "Menü" zum Durchschalten der Minutenbereiche und anschließendes flashen ins RTC) über IR-Fernbedienung
  • Blinkeffekt mit zufällig vergebenen Farben über die aktiven Buchstaben
  • Rainbow-Effekt

Und damit ist die Uhr auch (schon) fertig. Vielen Dank fürs lesen:)

Danke schön!