|
Programmierung von LEGO Mindstorms Robotern mit dem Java-Betriebssystem leJOS
VorwortLEGO ermöglicht mit dem Baukastensystem LEGO Mindstorms die einfache Konstruktion von Robotern. Es handelt sich hierbei um Roboter, die über einen eigenen Computer (RCX-Einheit) verfügen. Dieser kann frei programmiert werden, sodass die Roboter autonom in der Umwelt agieren und reagieren können. Anstelle des von LEGO original vorgefertigten Frameworks wurde ein auf Java basierendes Framework namens leJOS eingesetzt. Die nachstehende Arbeit beschreibt verschiedene Versuche mit diesen Robotern.
Diese Arbeit wurde im Jahre 2006 verfasst. Für etwaige Kritik wäre ich dem Leser sehr dankbar.
Inhalt
Folgen einer Linie mit einem Lichtsensor
Wir gehen zu Beginn davon aus, dass sich der Lichtsensor am Roboter direkt über einer schwarzen Linie befindet (Abbildung 3a). Solange sich dies nicht ändert, fährt der Roboter einfach gerade aus. Trifft er nun auf eine Kurve, so befindet sich der Lichtsensor nicht mehr länger über der schwarzen Linie und der Roboter hält (Abbildung 3b). Anschließend dreht er sich solange um die eigene Achse, bis er die Linie wieder gefunden hat oder eine vorgegeben Zeitspanne T abgelaufen ist (Abbildung 3c). Diese Zeitspanne soll verhindern, dass der Roboter sich um 180° dreht und damit die fahrt in falscher Richtung fortsetzt. Hat er nun die Linie wieder gefunden, so fährt er weiter gerade aus. Ist dies nicht der Fall, so rotiert er in entgegengesetzter Richtung, bis er die Linie wieder entdeckt (Abbildung 3d). An dieser Stelle kann es durchaus vorkommen, dass der Roboter sich um 180° dreht. Und dies ist genau dann der Fall, wenn das Ende der schwarzen Linie erreicht worden ist und der Roboter die Strecke zurück fahren soll (Abbildung 3e). Nachdem nun die Linie wieder ausfindig gemacht worden ist, fährt der Roboter weiter gerade aus und verhält sich beim Abweichen von der Linie nach oben beschriebener Methode. Damit der Roboter möglichst wenig Kurskorrekturen vornehmen muss, merkt er sich die Drehrichtung bei der die Linie wieder entdeckt wurde und beginnt bei nächsten Kurskorrekturen eine Rotation mit derselben Richtung.
Folgen einer Linie mit zwei LichtsensorenDer Roboter in Abbildung 4 ist der gleiche wie aus dem letzten Abschnitt, nur dass jetzt anstelle des einen zwei Lichtsensoren montiert wurden (Abbildung 5). Auch verhält er sich ähnlich wie der erste Roboter, nur dass mit den zwei Lichtsensoren sofort klar ist, in welche Richtung rotiert werden muss, um die Strecke wieder zu finden. Weicht nämlich genau ein Lichtsensor von der schwarzen Linie ab, so muss der Roboter in Richtung des anderen Lichtsensors drehen.
Kopieren einer Linie mit Hilfe zweier Roboter
Abbildung 6: Zeichnender Roboter (Empfänger)
Folgen einer unterbrochenen Linie mit Steigung
Abbildung 8: Roboter mit Räder
Produzenten-Konsumenten-Problem
Abbildung 12: Arena
|