Make Magazin 3/2018
S. 58
Community-Projekte
Aufmacherbild

Becherbot mit Arduino

Ob Osterei oder Becher für die Gartenparty – der Becherbot verziert Gegenstände für allerlei Anlässe, ähnlich wie sein Vorbild, der Eggbot. Gebaut habe ich ihn aus Fischertechnik, mit einem Arduino als Steuerung.

Vom Eggbot der Evil Mad Scientists inspiriert habe ich den Becherbot auf Arduino-Basis konstruiert. Anders als beim Vorbild folgt der Stift nicht ganz so schön der Rundung eines Eis, dafür bemalt der Becherbot auch zylindrische Körper. So lassen sich individuelle Becher für die Geburtstagsparty genauso herstellen wie verzierte Biergläser für die nächste Fete.

Mein Ziel bei diesem Projekt war, nichts neu zu kaufen, sondern mit vorhandenen Mitteln auszukommen: Grundlage ist ein alter Flachbettscanner, der zuvor für den Styroporschneider aus Heft 4/13 verwendet wurde. Dazu kommen Fischertechnik unterschiedlichster Generationen, ein Arduino Uno, ein Adafruit Motorshield, ein Servo und ein Schrittmotor. Auch die Software ist dem Original nachempfunden.

Das Elegante an der originalen Eggbot-Lösung ist die Integration in das Zeichenprogramm Inkscape. Ein spezielles Add-In erlaubt die Kontrolle des Eggbots sowie die Übertragung eines Zeichenpfades per Knopfdruck auf den Plotter. Zudem gibt es einige Erweiterungen zum Add-in, welche die Erstellung von echten Vektorschriften oder von Füllmustern erlauben. Mit der Software Eggduino gibt es eine Lösung für den Arduino, die die Kommunikation des Eggbot-Controllers emuliert und somit auch mit den Inkscape-Add-ins funktioniert.

Zunächst wird ein Flachbettscanner ausgeschlachtet.
Der Schrittmotor wird am Rahmen befestigt.
Ein 10-µF-Kondensator zwischen Reset und GND unterbindet den Autoreset des Arduinos, der über die serielle Schnittstelle angesprochen wird.

Sie besteht aus der Eggduino-Bibliothek, die in der Arduino-Softwareumgebung eingebunden wird, und einem ino-Sketch für den Arduino selbst. Eine Quelldatei des Eggbot-Add-Ins muss noch etwas angepasst werden, damit sie den Arduino findet. Über das Add-In werden nach dem Zusammenbau die Motoren und der Servos manuell angesteuert, um die Einstellungen zu überprüfen. Gegebenenfalls müssen danach wiederum Werte im Arduino-Sketch verändert werden.

Statt vorbereitete Bauteile aus dem Lasercutter zu nutzen, wie sie im Eggbot-Bastelkit geliefert werden, habe ich außerdem den Aufbau aus Fischertechnik improvisiert. Ausgehend von dem ausgeschlachteten Flachbrettscanner habe ich zunächst einen Rahmen für den Plotter aus zwei aufrecht stehenden Grundplatten und einem Querträger gebaut. Den Schrittmotor des Scanners habe ich an das Motorshield angeschlossen sowie einen Schrittmotor für die Drehung des Werkstücks eingebaut. Der Servo bewegt den Stifthalter. Auf einer Drehscheibe können unterschiedliche Halter montiert und damit an die Größe und Form des jeweiligen Werkstücks angepasst werden. Die komplette Aufbauanleitung und die angepasste Version der Eggduino-Software finden Sie online. hch

Aufmacherbild
Bilder: Kurt Andro

Der Arduino-Überkopfwecker

Der kleine Funkwecker auf dem Nachttisch? Einfach unkomfortabel, meint Kurt Andro. Er hat sich einen individuellen Arduino-Wecker gebaut, der Uhr- und Alarmzeit getrennt anzeigt.

Der Wecker piepst, es ist noch dunkel, und statt den Snooze-Knopf zu erwischen, schmeißt man ihn auf den Boden, wo er munter weiter trötet. Bei Bastler Kurt Andro kommt dieses morgendliche Horroszenario nicht mehr vor. Er hat sich kurzerhand einen individuellen Arduino-Wecker mit Real-Time-Clock, Temperaturkontrolle und Lautsprecher gebaut und an der Wand über dem Bett verschraubt. Für mehr Komfort ist die „Benutzeroberfläche“ außerdem deutlich anders gestaltet als bei handelsüblichen Lösungen.

Statt einer Anzeige hat der Überkopf-Wecker gleich zwei besonders große Displays für Uhr- und Weckzeit, deren Bedienelemente ebenfalls doppelt vorhanden und klar gekennzeichnet sind. Durch die unterschiedliche Farbgebung sind die Ziffern, Knöpfe und Drehelemente auf den ersten Blick zu erkennen – verwirrende Tastenkombinationen muss man sich nicht merken. Da der Wecker an der Wand über dem Bett hängt, kann er selbst im Dunkeln einhändig bedient werden. Wer snoozen möchte, dreht einfach die Alarmzeit ein Stück vor.

Die Holzkiste wird für den Einbau der Teile vorbereitet.
Die Frontplattenvariante aus Plexiglas
Auf dem Arduino Mega wird die Anschlussplatine montiert.

Das Gehäuse ist eine umgebaute Holzkiste aus dem Baumarkt, in der ein Arduino Mega werkelt. Die Frontplatte kann aus Aluminium oder Plexiglas sein. Darüber kommt ein beschriftetes Blatt aus möglichst dickem Papier, sowie Tönungsfolie für die Displays. Auch das Innenleben ist so aufgeräumt wie die Bedienfläche, denn Andro hat eigens eine Platine für alle Bauteile entworfen. Auf ihr sitzen die Real-Time-Clock mit integriertem Temperatursensor, ein MP3-Modul mit SD-Slot und FRAM-Speicher. Durch den Temperatursensor läuft die Uhr auch bei wechselnden Temperaturen im Schlafzimmer genau. Eine eigene 3-Volt-Knopfzelle sichert sie außerdem gegen Stromausfälle ab – sollten das Netzteil und die Notversorgung aus dem USB-Akkupack beide gleichzeitig ausfallen. Das FRAM-Modul speichert die gewünschte Weckzeit.

An der Seite des Weckers sind schließlich der Lautsprecher und ein extra Lautstärkeregler angebracht. Der Weckton oder -song wird von der SD-Karte abgespielt und ist damit einfach austauschbar. Für Nachbauwillige hat Andro noch ein paar Ideen parat. So könnte statt des FRAM-Moduls der EEPROM-Speicher des Arduinos (wie im MP3-Monster Noko) genutzt oder das Gehäuse und die Anbringung an der Wand verbessert werden. Die ausführliche Anleitung für den Überkopf-Wecker hat er auf seiner Webseite veröffentlicht. Dort gibt es außerdem einige unrealisierte Projektideen wie ein Handtrainer mit Ladefunktion und ein Sound-Ring. hch

Aufmacherbild

Mini-Mac statt Grußkarte

Glückwunschkarten waren gestern. Stattdessen verschenken wir einen winzigen Mini-Computer, der Geburtstagsgrüße als Animation auf dem Bildschirm anzeigt. Vom 3D-gedruckten Gehäuse bis zum Arduino-Sketch ist alles selbst konzipiert.

Dank Arduino und 3D-Drucker lässt sich mit geringem Aufwand ein kleiner Grüßaugust realisieren. Bauteile sind lediglich ein Mikrocontroller-Modul, ein grafikfähiges Display und die Stromversorgung (Akku, Charger und Booster) sowie Schalter und Kabel. Alle Komponenten sollten so klein wie möglich sein. Immerhin muss die gesamte Elektronik in das selbstgedruckte Gehäuse passen. Das wiederum soll für einen Computer richtig klein, fast winzig, werden. Am liebsten nicht viel größer als ein Radiergummi.

Als Grundlage für das Gehäuse dient ein freies Design, das wir auf Thingiverse, der Plattform für CAD-Dateien, gefunden haben: der Apple Macintosh 128k aus dem Jahre 1984. Zur Anpassung an unsere Bedürfnisse sind nur wenige Veränderungen nötig. Für die Befestigung des Lademoduls brauchen wir zwei Führungsbolzen. Außerdem bauen wir eine Aussparung für den USB-Anschluss zum Laden des Akkus ein. Auch für den Einbau des An-/Aus-Schalter gibt es eine kleine Kerbe. Und damit die Anzeige richtig schick wird, bekommt das Display eine schwarze Frontblende, welche die Umrandung des verwendeten OLEDs (Organic Light Emitting Diode) formschön verdeckt.

Ist das Display angeklebt, können alle Bauteile in den Minirechner eingebaut werden.
Der Verdrahtungsaufwand unseres Geburtstagscomputers hält sich in Grenzen.
Das Gehäuse besteht lediglich aus drei Teilen.

Beim Mikrocontroller geht es mehr um einen möglichst kleinen Formfaktor als um maximale Rechenleistung. Daher fiel die Wahl auf den Arduino Pro Mini – mit 18 mm × 33 mm fast als winzig zu bezeichnen. Trotzdem hat er genügend Pins zum Anschluss der verwendeten Peripherie. Seine inneren Werte sind für unsere Aufgabe völlig ausreichend. So verfügt der kleine 8-Bitter über 32 kB Flash, 2 kB RAM und in der 5-V-Variante über eine Taktfrequenz von 16 MHz. Außerdem gibt es für ihn – immerhin trägt er Arduino im Namen – viele Software-Bibliotheken. Eine Kombination aus einem kleinen 3,7-V-LiPo-Akku und einem Lademodul mit integriertem Step-Up-Regler auf 5 Volt vom Elektronikanbieter SparkFun machen unseren kleinen Geburtstagscomputer unabhängig von einem Steckernetzteil. Statt des verwendeten Kombimoduls ist auch der Einsatz von zwei separaten Modulen zum Laden des Akkus und für den Step-Up-Regler denkbar.

Als „Monitor“ kommt bei unserem Mini-Computer ein kleines OLED zum Einsatz. Es handelt sich um ein monochromes Grafik-Modul mit 128 × 64 Pixeln und einer Bild-Diagonalen von 0,96 Zoll. Damit passt es genau in unser Gehäuse. Außerdem ist es ein Standardmodul, welches gut verfügbar und vor allem sehr preiswert ist. Sein Stromverbrauch ist gering und der Kontrast und die Ablesbarkeit von der Seite sind sehr gut. Angesprochen wird das Display über I2C, ein serielles Protokoll mit zwei Leitungen: SDA für die Daten und SCL für den Takt. Inklusive der Spannungsversorgung und einer Masseleitung sind somit lediglich vier Kabel zur Verbindung des Displays mit dem Arduino-Board nötig. Die komplette Anleitung und den Programmcode gibt es online. hch