Skip to content →

ANTY – Die Roboterameise

ANTY ist eine sechsbeinige, insektenartige Kreatur. Sie läuft herum und reagiert auf ihre Umgebung. Anhängig davon, was ANTY wahr nimmt, reagiert sie unterschiedlich.

Der Infrarotsensor dient ANTY als Augen. Der Roboter kann Objekte in der Umgebung erkennen und dadurch Futter finden.

Der Farbsensor im Schwanz misst Änderungen in der Umgebung. Verschieden farbige Objekte führen zu unterschiedlichem Verhalten des Roboters:

  • grüne Objekte: ANTY fühlt sich sicher und schläft
  • rote Objekte: ANTY wittert Gefahr und schüttelt sich aggressiv
  • blaue Objekte: ANTY läuft aus Angst weg
  • gelbe Objekte: ANTY ist hungrig und sucht Futter

Der Laufmechanismus

ANTY geht mit zwei Motoren, wobei jeder drei Beine steuert. Wenn der Motor vorwärts dreht, bewegen sich die angeschlossenen Beine nach vorne. Drehen sich beide Motoren vorwärts, bewegt sich ANTY auch vorwärts. Das funktioniert aber nur, wenn sich die Beine auf der linken Seite in entgegen gesetzter Position zu den Beinen auf der rechten Seite befinden.

Der Roboter verwendet den Berührungssensor, um die absolute Position der Motoren zu ermitteln. So können sie beim Programmstart in gegenüberliegende Positionen gebracht werden.

ANTY bauen

ANTY benötigt viele Teile vom LEGO Mindstorms-EV3-Kasten (31313), ist aber recht einfach zu bauen. Lediglich die beiden Beinreihen müssen exakt zueinander ausgerichtet werden, damit ANTY richtig laufen kann.

ANTY zum Gehen bringen

Wir wissen schon, dass ANTY läuft, wenn beide Motoren vorwärts drehen. Dazu müssen aber die Beine beim Start entgegengesetzt ausgerichtet sein. Zu Beginn jedes Programmes nutzen wir die Informationen des Berührungssensors, um die Position der Beine zu ermitteln und anschliessend auszurichten.

Mit Hebellenkungsblöcken bringen wir den Roboter zum Gehen, indem beide Motoren mit gleicher Geschwindigkeit drehen.

Den gegenüberliegenden eigenen Block erstellen

Beide Motoren verwenden den gleichen Berührungssensor. Deshalb weiss der Roboter nicht, ob der Sensor durch den linken, den rechten Motor oder beide Motoren ausgelöst wurde. Wir können die Position aber dennoch bestimmen, indem wir nur einen Motor laufen lassen.

  1. Beide Motoren einschalten, bis der Berührungssensor losgelassen wird. Der Roboter macht das, indem beide Motoren wiederholt etwas vorwärts drehen, bis der Sensor frei gegeben wird.
  2. Nun den linken Motor drehen lassen, bis der Berührungssensor ausgelöst wird.
  3. Den linken Motor 180° vorwärts drehen lassen.
  4. Den rechten Motor vorwärts drehen lassen, bis der Berührungssensor ausgelöst wird. Die rechten Beine befinden sich nun genau gegenüber den linken Beinen.

Diesen Programmteil packen wir in einen eigenen Block, da ANTY bei jedem Programmstart die Beine ausrichten muss.

Hindernisse ausweichen

Wir lassen den Roboter gehen, indem wir beide Motoren mit Hebellenkungsblöcken in gleicher Geschwindigkeit laufen lassen. Der Roboter dreht links oder rechts, indem er einen Motor rückwärts laufen lässt. Mit diesen Techniken können wir ein Programm schreiben, dass Hindernisse umgeht.

Dieses Programm lässt die Motoren vier ganze Umdrehungen im Modus «An für n Umdrehungen» laufen. Diese Bewegung wird wiederholt, bis die Messung des Infrarotsensors unter 50% fällt. Dann dreht sich der Roboter nach links. Dazu den linken Motor rückwärts und den rechten Motor vorwärts drei Umdrehungen lang laufen lassen.

ANTY funktioniert am besten auf glatten Oberflächen. Hat der Roboter Schwierigkeiten beim gehen, reduziere die Leistung von 75 auf 40.

Das Verhalten programmieren

Als nächstes erstellen wir ein Programm, dass den Roboter auf die Umgebung reagieren lässt.

Futter suchen

Wir lassen den Roboter nach der Fernbedienung suchen, was die Suche nach Futter simulieren soll. ANTY sucht nach dem Signal der Fernbedienung, geht darauf zu und hält an, wenn sie sie gefunden hat. Der Roboter macht zwei Schritte nach links oder rechts, abhängig von der Seite, von der das Signal kommt. Dann zwei Schritte vorwärts. Dieses Verhalten wird so lange wiederholt, bis das Signal in der Nähe ist.

Umgebung überwachen

ANTY reagiert auf Farben, die sie mit dem Farbsensor am Schwanz messen kann. Je nach Farbe reagiert ANTY anders. Dies programmieren wir mit einem Schalterblock im Modus «Farbsensor messen Farbe» für die Fälle:

  • keine Farbe
  • grün
  • gelb
  • blau
  • rot

 

Mit ANTY haben wir einen Roboter kennen gelernt, der sich ohne Räder vorwärts bewegt. Die Laufbewegung von ANTY sieht noch recht holprig aus und könnte verbessert werden. Roboter aber nicht immer nur rollen zu lassen, war eine sehr interessante Aufgabe und die Programmierung dazu eher einfach.

Published in Mindstorms Allgemein