Mindstorms Projekt Aufgabe 1 (A1 im Kalender)

Projects, SS10

Diese Aufgabe dient zur Vorbereitung des Um-die-Wette-Kisten-schieben-Spiels auf dem Kreuz-Spielfeld mit Ampel. Es wird in dieser Aufgabe ohne konkretes Spielfeld, d.h. ohne Straßen, Ampeln etc. gespielt, die ganze Fläche ist für einen Roboter freigegeben.

Die Aufgabe 1 ist unterteilt in folgende Teilaufgaben:

  1. Schreiben Sie einen JUnit-Test für folgendes Szenario (Simulation ohne GUI): Eine Kiste wird an die Position (50, 150) gesetzt. Der Roboter startet in der Spielfeldmitte. Die Kiste ist nun parallel zur X-Achse 300 Einheiten weit zu schieben. Die Endpositionen werden vom JUnit-Test geprüft. Überlegen Sie, welche Schnittstelle ihre Robotersteuerung haben wird (evtl. leere Klassen anlegen, Test muss nicht erfolgreich sein).
  2. Beschreiben Sie (handschriftlich) einen Algorithmus zum Finden der richtigen Position und Ausrichtung des Roboters zum Kisten schieben.
  3. Implementieren Sie die Robotersteuerung zum Kisten-Schieben. Beachten Sie, dass der Roboter die Kiste jederzeit verlieren kann – es muss dann neu angesteuert/aufgesetzt werden.
  4. Implementieren Sie eine Demo (Simulation mit GUI)! Die Kiste soll mit der Maus bewegt werden können!
  5. Zusatzteil: Implementieren Sie eine Selbst-Kalibration des Roboters: Radgröße und Abstand sollen automatisch erkannt werden.

Abgabe Teilaufgabe 1 bis Mittwoch 5.5. 12:00 Uhr, Rest bis Mittwoch 12.5. 12:00 Uhr, Abgabe im mindss10-CVS-Repository unter frei wählbarem Modulnamen (z.B. BoxMoveGame_<Initialien>)