Aus Raspberry Pi Geek 06/2014

Raspberry-Pi-Roboter Rapiro im Test (Seite 3)

Vorgefertigte Bewegungsabläufe

Befehl

Aktion

#M0

letzte Aktion stoppen, Ausgangsposition einnehmen

#M1

vorwärts gehen

#M2

rückwärts gehen

#M3

nach rechts drehen

#M4

nach links drehen

#M5

beide Hände heben, mit rechter Hand winken

#M6

nur mit der rechten Hand winken

#M7

Arme heben und mit beiden Händen eine Greifbewegung ausführen

#M8

mit linker Hand winken

#M9

rechten Arm heben und gleichzeitig die Hüfte drehen

Auf diese Weise überprüfen Sie die Motorik des Rapiro schneller, als wenn Sie erst einen Sketch dazu tippen müssten. Eine beliebige “Augenfarbe” (Abbildung 4) wählen Sie über den folgenden Befehl:

#PRRotwertGGrünwertBBlauwertTZeit

Die RGB-Werte definieren den Farbton, innerhalb der nach dem T angegebenen Zeit in Millisekunden überblenden die LEDs schrittweise auf die neue Farbe. Der Befehl #PR255G000B000T000 zeigt also beispielsweise sofort ein kräftiges Rot an. Einzelne Motoren lassen sich nach einem ähnlichen Schema bewegen. So bedeutet #PS01A180T010, dass der Servo mit der Nummer 01 (die Hüfte) innerhalb von 10 Millisekunden um 180 Grad drehen soll.

Abbildung 4: Sie können Rapiros Augen in jeder beliebigen RGB-Farbe aufleuchten lassen.

Abbildung 4: Sie können Rapiros Augen in jeder beliebigen RGB-Farbe aufleuchten lassen.

Eine Ebene höher

Besonders interessant wird der kleine Roboter erst im Zusammenspiel mit einem RasPi als Gehirn, sodass er auf die riesige Bandbreite an Software und Zusatzhardware für den Mini-Rechner zugreifen kann.

Über ein zum Arduino laufendes Kabel kann der RasPi die Kontrolle über alle Servos und LEDs übernehmen. Statt Sketches zu schreiben, programmieren Sie alles auf dem Raspberry. Das funktioniert verblüffend einfach: Der Pi erteilt dem Arduino über eine serielle Schnittstelle Befehle, so ähnlich also, als würde man den Arduino kabelgebunden vom PC aus steuern.

Um etwa den Rapiro aus einem Shell-Skript heraus in Aktion zu versetzen, installieren Sie zunächst das Paket minicom. Das Kommando schicken Sie dann mit einer Befehlszeile wie der folgenden ab:

$ echo "#Befehl" | sudo minicom -b 57600 -o -D /dev/ttyAMA0

Setzen Sie hier für #Befehl beispielsweise #PS00A000T010, dann dreht der Rapiro seinen Kopf (Servo 00) komplett nach links. Fast jede Programmiersprache verfügt über einfache Hausmittel, mit denen Sie Befehle an das Device /dev/ttyAMA0 schicken können. Das Python-Pendant für die Kopfdrehung sähe so aus, wie in Listing 1 gezeigt.

Listing 1

 

import serial
com = serial.Serial('/dev/ttyAMA0', 57600, timeout = 10)
com.write("#PS00A000T010")

Gesichts- und Spracherkennung

Der umfangreiche Software-Fundus von Raspbian ermöglicht dem Rapiro eine endlose Palette an Einsatzzwecken. Gary Fletcher beschreibt zum Beispiel auf seiner Homepage [11], wie er dem Rapiro Gesichtserkennung beibrachte. Dabei nimmt raspicam das Konterfei des Gegenübers auf, während opencv die optische Verarbeitung vornimmt. Ein Python-Skript steuert Training und Wiedererkennung.

Soll der Rapiro ähnlich wie Siri Sprache erkennen und passende Antworten geben, greifen Sie zum Code des Jasper-Projekts [12]. Anders als die Apple-Dame kann man dem kleinen Roboter jedoch wesentlich mehr einprogrammieren, als nur auf Zuruf Informationen im Internet zu recherchieren. So apportiert er gegebenenfalls auf Zuruf wie im Kickstarter-Clip eine frisch befüllte Kaffeetasse.

Fazit

Zweifellos stellt der Rapiro die bislang interessanteste Umsetzung eines Raspberry-Pi-Roboters dar. Im Test überzeugte er durch seine Gelenkigkeit, das knuffige Aussehen und die vielen zusätzlichen Möglichkeiten. Auch gefällt, dass sein Erfinder die STL-Dateien der Roboterhülle frei zur Verfügung stellt, sodass sich mit dem nötigen Geschick fast beliebige Anpassungen am Konzept vornehmen lassen. 

RASPBERRY PI GEEK KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Raspberry Pi Geek bei Google Play Readly Logo
Nach oben