Artikel-Schlagworte: „Wortuhr“

Neu im Wohnzimmer – die Wort-Uhr

Foto: Wortuhr

Wortuhren sind seit einiger Zeit ja der letzte Schrei in Sachen Uhr – und wenn man sie kaufen will, zahlt man dafür je nach Anbieter und Ausführung ein kleines Vermögen. Aber es geht zum Glück auch anders. Das Zauberwort heißt Eigenbau. Im Netz der Netze kursieren unzählige Anleitungen zum Bau dieser Uhren und ich habe mir das für mich passende daraus zusammengesucht und einfach mal losgelegt.

Die Basis der Uhr bildet ein Bilderrahmen in der Größe 23x23cm aus einem schwedischen Möbelhaus. Leider wird der seit einiger Zeit nur noch mit einer Scheibe aus Plexiglas geliefert, welches relativ dünn ist und deshalb für die Uhr durch eine Glasscheibe aus der Glaserei um die Ecke ersetzt wurde.

Im Inneren der Uhr werkelt ein RaspberryPi Zero W, welcher in der neuesten Version meiner Uhr 114 Neopixel-LEDs ansteuert. Sicher wird jetzt manch Fachmann die Augen verdrehen und sagen, dass das völlige Ressourcenverschwendung ist und es ein kleinerer Mikrokontroller auch getan hätte. Stimmt! Aber: warum sollte ich es mir unnötig schwer machen?

Den Raspi kann ich super in Python programmieren, ich brauche NULL Bedienelemente, habe keine Sorgen wegen der Genauigkeit der Uhr und muss mir keine Gedanken wegen der jährlichen Zeitumstellungen machen. Ein Update der “Firmware” ist jederzeit problemlos per WLAN möglich und außer einem Netzteil ist keinerlei zusätzliche Hardware zum Betrieb der Uhr nötig.

Foto: Neopixel-Streifen auf der Rückwand des Bilderrahmens

Die Neopixel-LEDs gibt es in diversen Ausführungen zu kaufen. Für die Uhr fiel die Wahl auf LEDs auf selbstklebende Streifen. Diese kann man nach jeder LED teilen und so fast beliebige Designs erstellen. Ich habe sie in 10 Streifen mit je 11 LEDs aufgeteilt. In der zweiten Version der Uhr sind noch vier einzelne LEDs in den Ecken zur Anzeige der genauen Minute verbaut. Das besondere an den Neopixeln ist die serielle Ansteuerung der einzelnen LEDs. Einfach die Versorgungsspannung und die Datenleitung von Streifen zu streifen durchschleifen und fertig. Über die genaue Ansteuerung dieser LEDs lasse ich mich an dieser Stelle nicht aus, wer mehr wissen möchte, bemühe bitte die Suchmaschine seiner Wahl ;-). Dazu gibt es reichlich Informationen auf vielen anderen Seiten. Hier nur soviel: jedes “Neopixel” besteht aus einer roten, einer grünen und einer blauen LED. Durch Ansteuern dieser einzelnen LEDs mit unterschiedlichen Helligkeitswerten lassen sich fast alle Farben erzeugen.

Foto: Pappstreifen zur optischen Trennung der LEDs

Damit beim Ansteuern einzelner LEDs nicht die benachbarten Buchstaben mit ausgeleuchtet werden, müssen alle LEDs optisch voneinander getrennt werden. Dazu habe ich aus einfacher Pappe zuerst mit der CNC-Fräse, dann mit dem Lasercutter Streifen geschnitten, die dann zusammengesetzt werden und ein passendes Raster ergeben. Darauf wird zur besseren Streuung des Lichts ein Blatt Transparentpapier geklebt. Dann alles Zusammensetzen und in den Rahmen packen – fertig. Naja… fast. Vorher müssen die Buchstaben ja noch irgendwie auf die Glasscheibe. Der erste Schritt dazu bestand in der Anschaffung eines Schneidplotters. Der war nicht ganz billig, aber ich hatte genug gute Argumente, um ihn der besten aller Ehefrauen schmackhaft zu machen ;-). Dank einiger zwischenzeitlich damit für sie angefertigter Bastelprojekte hat sie die Nützlichkeit dieses Teils anerkannt. 😉

Als nächstes entwarf ich mit dem Opensourceprogramm Inkscape das “Ziffernblatt” der Uhr. Dabei kam ich ziemlich ins Schwitzen, denn es musste auf Anhieb alles passen – in der Packung Folie, die ich bestellt hatte, waren nur zwei Bögen in schwarzer Farbe enthalten und nachbestellen wollte ich nicht unbedingt. Zudem war der Schneidplotter auch noch nagelneu und die richtigen Einstellungen zum Schneiden der Folie musste ich auch erst noch herausfinden.
Zum Glück passte wirklich alles gleich beim ersten Versuch. Auf verschiedenen Webseiten hatte ich zwar viel darüber gelesen, wie man eine Folie am Sichersten auf eine Glasscheibe bekommt, aber wenn man es dann selbst machen muss, sieht vieles anders aus, als in der Theorie… Also noch eine Sprühflasche organisiert, Wasser und ein Tropfen Spülmittel dazu und dann die Glasplatte ordentlich einsprühen. Folie drauf und fertig? So einfach war es dann doch nicht. Aber mit etwas Geduld und dem Nachplotten einiger Buchstaben (R,O,A,D) passte dann doch noch alles super. Bei der zweiten Uhr lief das dann zum Glück viel entspannter.

Wie schon geschrieben, wird die Uhr von einem RaspberryPi gesteuert, auf dem ein Pythonscript läuft. Ganz sicher ist er damit total unterfordert. Aber ich habe so noch genügend Reserven für einen möglichen Ausbau der Uhr. Im Moment zeigt sie nur die Zeit an, aber irgendwann fällt mir bestimmt noch etwas geniales ein, um die Uhr zu erweitern. Auf dem Plan steht zum Beispiel ein Webinterface. Zurzeit hat die Uhr ja keinerlei Bedienelemente. Für die Grundfunktion sind auch keine nötig. Um die Farbe der LEDs, die Helligkeit, einen Wecker oder Timer zu steuern, wäre ein Webinterface eine feine Sache. Damit könnte man vom Computer, Smartphone oder Tablet alles einstellen und anpassen.

Möglich wäre auch der Anschluss eines kleinen Verstärkers und damit z.B. auf Wunsch die Ansage der Uhrzeit oder das Abspielen von Melodien, zum Geburtstag ein gesprochener Glückwunsch, die Erinnerung an Termine und, und, und…

Foto: Wortuhr, Version 2

Der Schaltplan ist an sich auch sehr simpel. In der neuesten Version habe ich noch einen Taster angebaut, der nach dem Drücken ein sauberes Herunterfahren des Raspberries gewährleistet. Dazu fragt ein Pythonscript den Zustand des Tasters regelmäßig ab und setzt nach dem Betätigen das Kommando zum Herunterfahren des Rechners ab.

Außerdem ist für den Fall, dass das WLAN mal nicht zur Verfügung steht und der Raspberry keinen NTP-Server kontaktieren kann, jetzt ein RTC-Modul mit einer DS3231 bzw. DS1307 installiert. So ist sichergestellt, dass immer die korrekte Zeit angezeigt wird.

Und zum Schluss noch der Schaltplan, der zeigt, dass der Schaltungsaufwand wirklich minimal ist…