Auf der Hauptplatine, die gleichzeitig das Deck des Chassis bildet, sitzen sechs verschiedenfarbige LEDs, ein Taster, der Motorcontroller, zwei IR-Reflexionssensoren und ein Ultraschallsensor zur Entfernungsmessung. Außerdem finden sich hier zwei Anschlussbuchsen für Servomotoren sowie ein 5V-Schaltregler. Letzterer sorgt dafür, dass sich aus sechs als Stromquelle dienenden AA-Akkus eine Laufzeit von über zwei Stunden quetschen lässt. Ein Steckverbinder für die RasPi-GPIO-Schnittstelle und Halterungen für die Motoren runden das Paket ab. Ein Anschluss führt zu einer zweiten, kleineren Platine, auf der unter anderem das lenkbare Vorderrad und die Sensoren zum Verfolgen von Linien Platz finden.
In der Grundausstattung (siehe Kasten “Pi2Go-Lite im Überblick”) lässt sich der Pi2Go-Lite bereits nutzen, um einen linienfolgenden oder auch autonom beweglichen Robot aufzusetzen. Mithilfe von Zusatzkits rüsten Sie ihn bei Bedarf weiter auf.
Pi2Go-Lite im Überblick
- Hauptplatine als selbst tragendes Chassis
- 5V-Schaltregler für die Versorgung von RasPi, Motoren und Sensoren
- 2 Wechselstrommotoren mit hoher Getriebeübersetzung (120:1)
- 2 IR-Hindernissensoren mit Funktionskontroll-LEDs
- 2 IR-Linienfolgesensoren mit Funktionskontroll-LEDs
- Ultraschall-Entfernungsmesser
- Programmierbarer Tastschalter
- 2 Paar per Software regelbare weiße LEDs
- 2 Servo-Outputs für einen optionalen schwenk- und neigbaren Pi-Cam-Aufsatz (ab 12 Pfund/16 Euro)
- Optionales Rad-Encoder-Set zum Messen der zurückgelegten Strecken (4 Pfund/5 Euro)
Optionale Erweiterungen
Derzeit stehen zwei solcher Aufrüstsätze für den Pi2Go-Lite zur Auswahl. Beim ersten handelt es sich um einen schwenk- und neigbaren Aufsatz, der speziell für das RasPi-Kameramodul konzipiert wurde. Mit dabei ist alles, was Sie zum Betrieb brauchen, inklusive eines längeren Anschlusskabels für die Kamera, des gesamten Montagematerials sowie zweier Servomotoren (für die es auf der Hauptplatine bereits Anschlüsse gibt).
Damit lassen sich drei Möglichkeiten des Kamera-Aufbaus realisieren: eine einfache Montage mit festem Blickfeld nach vorn, eine über einen einzelnen Servomotor nach links und rechts schwenkbare Variante sowie eine voll nach links, rechts, oben und unten ausrichtbare Pi-Cam, mit der sich der Pi2Go-Lite beispielsweise in einer neuen Umgebung “umsehen” kann.
Beim zweiten Nachrüstsatz handelt es sich um ein Encoder-Kit für die Räder. Damit lässt sich nicht nur die vom Pi2Go-Lite zurückgelegte Strecke messen, sondern auch der Geradeauslauf des Robots optimieren: Bekanntlich drehen ja keine zwei Wechselstrommotoren exakt mit derselben Geschwindigkeit, sodass der Pi2Go-Lite ohne Nachregeln dazu tendiert, statt geradeaus in einer sehr weiten Kurve zu fahren.
Zur Messung verwendet das Kit zwei zusätzliche IR-Reflexionssensoren sowie schwarz-weiß gestreifte Scheiben, die Sie innen an die Räder des Pi2Go-Lite montieren. Damit lässt sich für jedes Rad exakt bestimmen, wie viele Umdrehungen es gemacht hat, und auf dieser Basis die Laufrichtung des Robots nötigenfalls korrigieren.
Programmierung mit Python
Wie die meisten RasPi-Erweiterungen setzt der Pi2Go-Lite auf eine Programmierung in Python und bringt dazu eine passende Library samt Codebeispielen [3] bereits mit.
Um den Pi2Go-Lite zu initialisieren, rufen Sie am Anfang jedes Skripts zuerst einmal die Routine pi2go.init() auf. Als Gegenstück zum Aufräumen am Ende des Skripts dient pi2go.cleanup().
Zur Ansteuerung der Motoren verwenden Sie den Aufruf pi2go.forward(Speed) mit einem Wert von 0 bis 100 für Speed. Für Richtungswechsel ersetzen Sie forward (vorwärts) durch reverse (rückwärts) oder spinLeft (links drehen) beziehungsweise spinRight (rechts drehen). Daneben lassen sich die Motoren bei Bedarf für präzise Drehungen auch einzeln ansteuern.
Ähnlich unkompliziert erfolgt das Auslesen der Sensoren. Um etwa mithilfe des nach unten gerichteten IR-Reflexionssensors einer schwarzen Linie auf dem Boden zu folgen, verwenden Sie die beiden Aufrufe irLeftLine() und irRightLine(). Ähnliche Funktionsaufrufe stehen für die IR-Sensoren am Bug zur Verfügung, mit denen der Robot Hindernisse in seiner Fahrtrichtung identifizieren kann. Die entsprechenden Aufrufe pi2go.irLeft() und pi2go.irRight() liefern True zurück, wenn der entsprechende Sensor auslöst.
Neben diesen grundlegenden Kommandos bietet die exzellente Python-Bibliothek eine Vielzahl weiterer Befehle, darunter solche zum Ansteuern von Servos, zum Auswerten des Tasters auf der Platine oder zum Regeln der Helligkeit der auf der Platine verbauten LEDs.
Immer der Nase nach
In Listing 1 finden Sie ein Skript, das den Robot mithilfe der Befehle aus der Pi2Go-Lite-Bibliothek einer auf dem Boden angebrachten Linie folgen lässt. Eine entsprechende Spur beliebiger Form und Länge legen Sie beispielsweise mit schwarzem Klebeband auf einem hellen Bodenbelag.





