Vorgeschichte:

Den Ausschlag für den Bau des ServoBot kam vom Künstler Daniel Knorr. Er kam eines Tages in die Firma, weil er Unterstützung bei der Verwirklichung eines seiner Kunstwerke benötigte. Sein Ziel war es eine "Horde" von kleinen Robotern zu bauen, die vereinfacht ausgedrückt eine Art lebende Gesellschaft simulieren. (Eine bessere Erklärung seiner Arbeit kann man hier finden.)

Für seine Roboter waren wir auf der Suche nach möglichst günstigen Motoren. Nachdem wir verschiedene Motoren aus Spielzeugmodellen als Antrieb für die Roboter getestet hatten, die allerdings alle nicht standfest genug waren, haben wir uns dann für Servomotoren aus dem Modellbau entschieden.

Servomotoren haben ein unschlagbares Preisleistungsverhältnis. Ab 5,- Euro bekommt man einen Servo, d.h. einen zuverlässigen Motor mit Getriebe und Leistungsstufe zur Ansteuerung! Außerdem ist zu jedem Servo ein ausführliches Datenblatt erhältlich in dem das Drehmoment, die Winkelgeschwindigkeit und die Stromaufnahme angegeben ist. Damit kann man den optimalen Servo für den Roboter aus einer großen Anzahl unterschiedlicher Typen wählen. Einziger Nachteil ist allerdings, dass der Servomotor für den 360°-Betrieb modifiziert werden muss. Anleitungen zur Modifikation und zur Ansteuerung von Servo's findet man z.B. im Tips & Links-Bereich.

Da Daniel sich für seine Roboter ein eigenes Getriebe gebaut hat, weil Ihm die Servo's u.a. zu laut waren musste ich mir einen eigenen Roboter bauen, um zu testen, wie gut sich die "Originalservos" für Roboter eignen...

Die Mechanik + Sensoren:

Die Grundlage für das neue Fahrwerk/Gehäuse ist eine leere 50'er CD-Spindel, die zufällig gerade zur Hand war. In das Bodenteil der Spindel werden einfach Löcher für die Räder geschnitten. Die Servomotoren werden mit Montagebolzen direkt unter den Boden der Spindel geschraubt. Eine zusätzliche Versteifung des Fahrwerks wird durch die Verschraubung eines Gewindebolzens zwischen den Servos erreicht. Die Narben der Reifen werden etwas aufgebohrt und dann direkt auf die Achse des Servos montiert.

Boden des Servobot

Das Bugrad zur Stabilisierung besteht aus ein paar Gewindebolzen und zwei Kugellagern, die ebenfalls direkt mit dem Boden der Spindel verschraubt werden. Damit das Rad nicht ausreist sollten große Unterlegscheiben benutzt werden.

Bugrad

Als Sensoren werden neben Lichtsensoren (LDRs) auch Fühler eingesetzt, die über Taster abgefragt werden. Die Fühler selbst bestehen aus den Spitzen von Kabelbindern. Mit Schrumpfschlauch werden die Kabelbinder an zwei Tastern befestigt. Bei den ersten Tests stellte sich dann heraus, dass sich die Fühler gerne während der Drehung irgendwo verhaken. Damit die Fühler nicht nur auf Druck, sondern auch auf Zug reagieren, werden an den Fühlern noch zwei Kupferdrähte befestigt, die zwei Taster bei Zug aktivieren. Damit die Anordnung aus Schaltern ausreichend stabil ist wird sie auf einer Lochrasterplatine aufgebaut und dann an die Bodenplatte der Spindel geschraubt.

Servobotfühler

Da der Boden der CD-Spindel allein nicht sehr stabil ist, sollte während des Betriebs immer der Deckel der Spindel auf den Roboter gesetzt werden.

Die Elektronik:

Die Elektronik besteht aus einem Controllerboard mit einem MSP430F149 Mikrocontroller, dass auf eine Lochrasterplatine gesteckt wird. Auf der Lochrasterplatine sind alle Komponenten untergebracht, die für die Spannungsversorgung und die Anpassung der Sensorsignale notwendig ist. Als Lichtsensoren werden zwei lichtempfindliche Widerstände eingesetzt, die auf der rechten und linken Vorderseite des Roboters angebracht sind. Mehr Info's zu dem MSP430-Board findet man im Elektronikbereich meiner Seite.

Die Versorgung des Roboters erfolgt durch 4 Mignon Akkus.

 

Servobot Elektronik

Front

Was kann der Roboter?

Ehrlich gesagt nicht viel... Während der Fahrt misst der Roboter die Helligkeit mit den beiden LDRs und vergleicht die Messwerte. Wenn sich die beiden Messwerte unterscheiden ändert er die Geschwindigkeit so, dass er immer in Richtung des Licht fährt.

Außerdem fragt der Roboter während der Fahrt die Fühler ab. Wenn die Fühler etwas detektieren, dreht sich der Roboter so lange, bis die Fühler wieder frei sind. Wenn beide Fühler gleichzeitig auslösen fährt der Roboter außerdem erst ein Stück zurück bevor er sich dann dreht.

Das Programm des Roboters kann hier als C-Sourcecode für den MSP430-GCC heruntergeladen werden. Es enthält auch die Routinen zur Servoansteuerung.