Wordclock V2 mit WS2812B LEDs (2)
9. Juli, 2015 in: ElektronikHier werde ich, wie im ersten Teil angekündigt, etwas über die Software und den Hardware Aufbau meiner Wordclock schreiben.
Da meine Frontplatte zwischen den Buchstaben Abstände von etwa 3,1cm und 2,8cm hat, passt natürlich der Abstand der verfügbaren Ws2812B Strips nicht direkt. Bei den Strips mit 30 LEDs/m ergibt sich ein rechnerischer Abstand von 3,33cm zwischen den LEDs. Etwas zu groß für die vertikalen Abstände von 3,1cm, aber da es nicht sonderlich tragisch ist, wenn die LED nicht 100% in der Mitte sitzt, können gerade so ein Streifen mit 5 LEDs am Stück in den Löchern platz finden. Daraus ergibt sich dann das nachfolgende Muster und genau so habe ich es angeschlossen. Den Anschluss der LEDs in den Ecken habe ich bereits davor fertig gelötet gehabt, daher passen diese nicht ganz zum Rest 😉
Neben den LEDs habe ich noch einen Spannungsteiler aus LDR (Light Dependent Resistor) und 10kOhm Widerstand an einen Analogeingang gelegt um die Helligkeit des Raumes zu erkennen und die LEDs bei Dunkelheit dann herunterregeln zu können.
Das Einstellen der Uhrzeit ist nur einmalig beim bzw. vor dem eigentlichen Programmupload möglich. Auf eine Einstellmöglichkeit der Uhrzeit mittels 2 Tastern, wie bei der ersten Version meiner Wordclock habe ich bewusst verzichtet, da ich hoffe, dass die DS3231 RTC möglichst lange sehr genau laufen wird 😉
Die Software ist sehr einfach gestrickt, es existiert einfach eine Hauptschleife die immer wieder durchlaufen wird (Auf Energiesparen wurde bewusst verzichtet :D). Die Uhr benötigt im normalen Betrieb mit einem 12V Steckernetzteil zwischen 1W und 3W.
Der Ablauf sieht dabei in etwa so aus:
- Abfragen der Uhrzeit aus der RTC
- Einlesen der Helligkeit über den LDR inkl. gleitendem Mittelwert
- Berechnung ob Sommer- oder Winterzeit angezeigt werden muss
- Farbrad weiterdrehen (HSV Farbraum, unter Einbeziehung der Helligkeit)
- Berechnen der angezeigten LEDs mit neuem Farbwert
- Übertragen der Daten an die LEDs
Die Hardware besteht aus der Edelstahlfrontplatte, einem Zwischenboden aus 16mm MDF und einer Rückseite aus 3mm MDF. Auf die 3mm Rückseite habe ich die LEDs aufgeklebt und die Stränge verlötet. In den Zwischenboden habe ich 114 Löcher gebohrt und auf der Rückseite mit einer Oberfräse Nuten für die Kabel, LED-Strips und Platinen gefräst.
Die zwei MDF Platten habe ich dann noch grob etwas geweiselt und die Rückplatte an den Zwischenboden genagelt, sodass ich es theoretisch wieder öffnen könnte, falls mal was nicht stimmt. An die Edelstahlfrontplatte habe ich einige Neodymmagneten angeklebt mit 2K-Kleber, ebenso wie in den Zwischenboden. Die Frontplatte ist damit abnehmbar. Das Endergebnis hängt nun in unserem Wohnzimmer und sieht so aus:
Entschuldigt das schlechte Foto, ich habe derzeit nur ein Lumia 520 als Kamera zur Hand 🙂 Die Zuleitung der Versorgungsspannung (12V) erfolgt hier übrigens von der Oberseite her über 0,1mm Kupferlackdraht, ab der Sockelleiste der Holzdecke wird die restliche Strecke mit einem 0,25mm² Lautsprecherkabel überbrückt. Und das alles nur, damit kaum noch die Zuleitung sieht, für einen erhöhten WAF 😉
Hier gibt es die WordclockSoftware, benötigt werden noch die folgenden Librarys:
Nachtrag 16.03.2017: Da die Software für das Eclipse Arduino Projekt war mit getrennter .cpp/.h Datei, hier eine Version für direkten Einsatz in der Arduino IDE.
Gute Arbeit. Ich verstehe zwar nichts so wirklich, aber schlecht ist’s nicht.
Hey, cooles Projekt.
Wo bekommt man denn so eine Edelstahlfrontplatte günstig her bzw. wo kann man sich die günstig machen lassen?
Vg
Daniel
Hi Daniel,
im Mikrocontroller Forum gibt es immer mal wieder Sammelbestellungen dazu. Stand 04.02. gab es noch Frontplatten von der letzten Sammelbestellung: https://www.mikrocontroller.net/articles/WordClock_mit_WS2812#WC12h_Sammelbestellung_Edelstahl_Frontplatten
Dort gibt es auch das fertige .dxf File, mit dem man online bei diversen Dienstleistern Laser/Wasserstrahlzuschnitt machen lassen kann.
Gruß
Philipp