Make Magazin 2/2019
S. 98
Community-Projekte
Aufmacherbild

Physical-Computing-Blöcke für den Raspi

Günstige Holzwürfel mit LED und Tastern machen aus dem Raspberry Pi eine Lernplattform, die besonders für die Arbeit mit Grundschulkindern geeignet ist.

Mit Holz, LEDs und Arcade-Knöpfen wird aus dem Einplatinenrechner Raspberry Pi eine kostengünstige Lernplattform zum Anfassen. Dank der grafischen Programmieroberfläche Scratch und dem beliebten Spiel Minecraft ist das Projekt insbesondere für die Arbeit mit Grundschulkindern geeignet. Denn so nützlich der Raspi sonst ist, für einige Kinder ist das Anschließen von Hardware an die ungekennzeichneten Pins oder an fummelige Steckbretter eine zu große Hürde, wie wir in unseren Workshops in der Codingschule Düsseldorf immer wieder merken.

Daher haben wir die „physical computing blocks“ nachgebaut, die die Raspberry Pi Foundation 2017 auf der Maker Faire New York vorstellte. Unser erstes Set besteht aus einem Raspi sowie zwei Blöcken mit jeweils einem großen Arcade-Button und einem LED-Block. Für Workshops sollte man gleich einen Klassensatz herstellen. Zum Glück reichen ältere Varianten des Raspi locker aus und finden so vielleicht einen neuen Einsatzzweck.

Statt fummeligen Pins wird bei den Blöcken mit deutlich sichtbaren Schrauben gearbeitet.

Zur Herstellung einer Station benötigt man mehrere kleine Holzplatten. Die nächstgelegene Schreinerei oder der Baumarkt hilft, die Bretter zurechtzusägen, oder man erledigt es im Makerspace selbst. Je nach Anwendung müssen noch Löcher für LEDs, Taster und Kabel gebohrt werden. Die Kabel werden an größeren Schrauben befestigt, die als Anschlüsse für Krokodilklemmen dienen. Der Raspberry Pi wird auf einer Holzplatte befestigt und die wichtigen Pins ebenfalls über Schrauben leicht zugänglich herausgeführt.

Der Raspberry Pi wird mit Spacern auf der Holzplatte befestigt.

Als Betriebssystem haben wir uns für eine ältere Variante von „Raspbian Jessie“ entschieden, die noch die Option bietet, direkt nach dem Start „Scratch“ im Vollbildmodus zu öffnen. So spart man sich die Erklärung der grafischen Benutzeroberfläche. In der aktuellen Version von Raspbian steht die Option leider nicht mehr zur Verfügung. Unser Raspbian verbraucht außerdem weniger Ressourcen und läuft auf älteren Raspberry Pis. Mit einigen Modifizierungen passt es sogar auf 4-GB-SD-Karten. Ein erstes Scratch-Projekt für die Physical-Computing-Blocks ist eine Modifizierung des „Astronaut Reaction Games“.

Die fertigen Blöcke können mit Krokodilklemmen angeschlossen werden.

Die Blöcke eignen sich auch für den Einsatz in Python – etwa um in „Minecraft“ neue Blöcke in die Welt zu setzen. Dank der gpiozero-Bibliothek geht dies schnell von der Hand und ist selbst für kleinere Kinder machbar. Vielleicht hat der ein oder andere Leser Ideen zu neuen Blöcken. Gerade arbeite ich an Buzzer- und Ultraschall-Sensor-Blöcken. hch

Aufmacherbild

MyPlant-Informer

Über die Bodenfeuchte meiner Keimlinge hält mich der IoT-Controller Particle Photon auf dem Laufenden, indem er die Sensorwerte an meine Blynk-App schickt.

Im Frühling empfiehlt es sich, Topfkeimlinge anzuzüchten, sodass man später reiche Obst- oder Gemüseernte einfahren kann. Manche Pflanzen, wie meine Pfefferminz- und Feigensamen, benötigen dabei ein feuchtes Erdreich. Um das gleichmäßig zu gewährleisten, habe ich für die winzigen Samen eine elektronische Feuchtigkeitsüberwachung gebaut. Dafür nutze ich den Wifi-Mikrocontroller Particle Photon sowie die Internet-of-Things-Dienste IFTTT und Blynk – so kann ich die aktuellen Werte auf dem Smartphone ansehen und werde benachrichtigt, wenn ich zur Gießkanne greifen oder die Wasserpumpe aktivieren muss.

  1 void loop() {
  2    Blynk.run();
  3 //    !!! http://docs.blynk.cc/#troubleshooting-flood-error
  4 if ((millis() - lastmillis) > 1000) {
  5        lastmillis = millis();
  6        readData();
  7        displayData();
  8    }
  9 }  
 10 
 11 // step 1 - read the soil moisture Plant1
 12 value_water_Plant1 = analogRead(soilMoisturePlant1);
 13 water1 = ((int)((((double)value_water_Plant1/dry)*100.0)));
Das Auslesen und Anzeigen der Daten geschieht mittels zweier Funktionen in einer kurzen loop-Schleife. Die Rohwerte werden in readData() ausgelesen und anschließend in Prozent umgerechnet.

Für dieses Projekt habe ich alle Teile einfach mit Jumperkabeln und einem Breadboard verbunden. Die Sensoren werden jeweils über SIGNAL an die A/D-Wandlereingänge A0 und A1 des Photon angeschlossen. Das OLED-Display zeigt die errechnete Feuchtigkeit in Prozent an. Verbunden ist es über den I2C-Bus an den Ausgängen D0 und D1. Für die Programmierung habe ich die Particle IDE genutzt, die der Programmierumgebung von Arduino ähnelt.

Über ein Display wird das aktuelle Feuchtigkeitslevel angezeigt.
In meiner App werden die Feuchtigskeitswerte komfortabel grafisch angezeigt. Mit dem Schieberegler werden die Schwellenwerte für die Gießerinnerung eingestellt.

Darüber hinaus gibt es eine Einschätzung, ob die Erde mit Wasser benetzt ist oder bei Trockenheit Maßnahmen erforderlich sind. Dies wird über die App von Blynk auf dem Smartphone angezeigt. Der Cloud-Dienst stellt einen deutschen Server, Software-Bibliotheken für Maker-Boards wie den Particle Photon und eine Smartphone-App bereit. Diese lässt sich leicht an die eigenen Bedürfnisse anpassen, sodass man sich auf das Design der eigenen App konzentrieren kann. Wer möchte, kann einen Summer als akustisches Signal in der Schaltung hinzufügen. Ich bekomme außerdem über IFTTT Benachrichtigungen per E-Mail. Dazu habe ich eine Untergrenze für die Feuchtigkeitswerte festgelegt. Diese können über die Blynk-App angepasst werden.

Der erste Aufbau mit Feuchtigkeitssensoren aus China

Die gute Nachricht: Die ersten Minz-Setzlinge waren schnell zu sehen. Die schlechte Nachricht: Ich hatte zuerst Feuchtigkeitssensoren aus China genutzt, die bereits nach wenigen Tagen nur noch unbrauchbare Werte lieferten. Die Sensoren sind einfach korrodiert. Stattdessen habe ich dann Edelstahldraht genutzt. Da er sich schlecht löten lässt, verwende ich Schraubklemmen, um den Draht mit Standardbrücken zu verbinden. Edelstahldraht gibt es im örtlichen Baumarkt oder im Schweißer-Handwerk. Eine Alternative sind auch kapazitative Sensoren, die allerdings teurer sind. hch

Aufmacherbild
Bilder: Taylor Tabb

Cheeseborg

Großer Hunger und wenig Motivation, in der Küche selbst aktiv zu werden? Der Cheeseborg grillt auf Kommando und vollautomatisch Käsesandwiches.

Einfach rufen „Hey Google, mach mir bitte ein heißes Käsesandwich!“, dann nur noch kurz warten, und ein frischer Käsetoast purzelt aus dem Sandwichmaker. Ein studentisches Team der Carnegie Mellon University lässt den Traum fauler Käsefans wahr werden. Ihr Cheeseborg ist eine automatisierte Fertigungsstrecke für gegrillte Käsetoasts, die sogar in die Smart-Home-Steuerung eingebunden werden kann.

Der Cheeseborg saugt die Brotscheiben an, um sie auf das Band zu legen. Später kommt der Käse (rechts) auf die gleiche Weise dazu.

Den Ablauf zeigen sie in einem Demovideo: Ein Roboterarm nimmt eine Scheibe Toast vom Stapel und legt sie auf die Fertigungsstraße. Anschließend schichtet er eine Scheibe Käse und einen zweiten Toast darauf. Über das Förderband wird der Stapel in einen Klappgrill geschoben. Dieser schließt automatisch, um später den heißen Toast wieder freizugeben. Ein zweiter Schieber befördert ihn auf eine Rutsche zur Entnahme.

Von der Produktionsstraße wird das Brot in den Sandwichmaker geschoben.

Insgesamt sieben einzelne Systeme haben die Bastler dafür entworfen und zunächst einzeln getestet: je eine Schubeinheit für Brot und Käse, einen Roboterarm, eine Förderstrecke zum Sandwichmaker und einen Grill-Controller sowie einen Butterspray-Mechanismus und den „Ausgang“. Für den Design-Prozess und die schnelle Entwicklung von Prototypen der Teilsysteme nutzte das Team einen Lasercutter. Erst nachdem alle Untereinheiten funktionierten, wurden sie in das gemeinsame Cheeseborg-Gehäuse eingebaut. Dabei gab es einige Herausforderungen zu meistern. Der Roboterarm etwa arbeitet mit Vakuumansaugung, um sowohl die dicken Toastscheiben als auch den deutlich flacheren Käse anzuheben. Nicht zu sehen ist das Antihaftsystem für den Grill: In einer Halterung ist eine Dose Sprühbutter befestigt, die erst den Grill und später den eingeschobenen Toast einfettet.

Blick von oben auf einen Prototyp

Die Servos und Motoren der verschiedenen mechanischen Systeme werden von einem Arduino Mega gesteuert. Außerdem ist der Einplatinenrechner Raspberry Pi 3B verbaut, auf dem Google Assistant läuft. Darüber funktioniert die Sprachsteuerung des Cheeseborgs und auch die Einbindung in ein Smart-Home-System sei möglich. Der Befehl „Hey Google, make me a grilled cheese please“ ist zum Glück gut sichtbar auf der Maschine ausgestellt. Mit diesem Projekt wollen die Studierenden Snacking noch einfacher machen. hch