Zwischenstand zum Beginn der Fußball WM

Die Fußball WM in Brasilien beginnt heute offiziell und es dauert nur 36 Tage, bis die RoboCup WM beginnt. Hier ein aktueller Zwischenstand:

Wir nun nicht mehr auf die Kamera (CMUcam) angewiesen, die uns zuletzt ja noch einige Probleme bereitet hat. Sie wird aber dennoch auf jeden Fall eingebaut bleiben, wir sind uns sicher, dass wir sie bald noch gebrauchen könnten (selbst, wenn es nur für die Erkennung der Sackgassen ist (läuft ja jetzt über einen einfachen Infrarot Helligkeitssensor (IR Phototransistor und High Power IR LED), der auf den Boden gerichtet ist)). Implementiert haben wir außerdem und können von unserer To-Do Liste streichen:

  • Fehlerhafter Entfernungssensor:
    Wir haben ein paar neue Infrarotentfernungssensoren bestellt und den Sensor ausgetauscht. Nach einer zusätzlichen Neukalibration aller Sensoren (angepasst auf den neuen Roboter) liefern alle Sensoren perfekte Werte mit einer Genauigkeit von bis zu 1mm. Man merkt deutlich, dass der Roboter zielsicherer und exakter durch das Labyrinth fährt.
  • Kollisionserkennung 2.0:
    Auch hier konnten wir Fortschritte verzeichnen: Dank der neu kalibrierten Sensoren kann der relative Winkel (d.h. wir berechnen keinen absoluten Winkel in Grad sondern haben eine Zahl, die proportional zu einem Winkel ist, diesem aber nicht entspricht; Eine Umrechnung sparen wir uns, weil das nicht nötig ist), mit dem der Roboter zur Wand steht, sehr exakt bestimmt werden. Die zusätzliche Kollisionserkennung funktioniert so, wie wir uns das vorgestellt haben.
    Zudem haben wir die Ultraschallsensoren softwareseitig auf eine maximale Distanz von 30cm begrenz, weiter funktionieren diese nicht zuverlässig und weiter müssen wir auch nicht sehen können. Wir müssen ja nur erkennen, ob da außerhalb des Sichtfeldes der IR Sensoren etwas steht. Das funktioniert auch sehr gut.
    Getestet werden muss aber auch hier noch einiges.
  • Erkennung der Checkpoints:
    Wenn der Wert des Untergrundsensors nach der Geradeausfahrt (Positionswechsel) unter einem bestimmten Schwellwert liegt, steht der Roboter auf einem Checkpoint (silberne Fliese). Diese Position wird zwischengespeichert. Wenn der Roboter nun hochgehoben wird (Erkennung über einen nach unten gerichteten Sharp IR Entfernungssensor), wird dies erkannt und der Roboter setzt sich automatisch an den letzten Checkpoint zurück und fährt weiter, kurz nachdem er wieder abgesetzt wird. Wenn noch kein Checkpoint gespeichert wurde, setzt sich der Roboter zurück zur Startfliese.
  • Hindernisse:
    Hier haben wir seeeeeehr viel getestet, konnten aber noch keine brauchbaren Ergebnisse erzielen. Eine Idee war, dass der Roboter, wenn er ein Hindernis direkt vor ihm vermutet, einen Scan macht, indem er sich auf der Stelle dreht. Das sah dann so aus:
    Diese Scans sahen erstaunlich gut aus, gescheitert ist es dann letztlich an der Weiterverarbeitung der Informationen. Wir wollten eine Hough-Transformation implementieren (wenn diese ein Ergebnis liefert, also sicher eine Linie vor dem Roboter identifizieren kann, ist da kein Hindernis, sondern eine Wand, wenn der Algorithmus kein Ergebnis liefert und die Punkte irgendwie verstreut liegen, befindet sich ein Hindernis vor dem Roboter und bei gar keinen Messwerten ist da nichts vor dem Roboter), aber so richtig (zuverlässig) hat das alles nicht funktioniert und zu viel Zeit wollten wir in diese Idee auch nicht stecken, war nur auf jeden Fall sehr interessant anzusehen und dieses Ergebnis zeigt auch, dass es ohne Laserscanner möglich ist, genaue Informationen über die Umgebung zu bekommen, die auch ohne Probleme in eine Karte mit einer Auflösung von z.B. 1cm eingetragen werden könnten, vorausgesetzt, man hat genug Rechenleistung und Arbeitsspeicher. Aber das ist noch Zukunftsmusik 😀

    Mal sehen, ob uns da noch was einfällt…

  • Bei dem Abwurf der Rescuekits haben wir auch noch nicht sooo viele Fortschritte gemacht – einzelne Opfer können schon in die Karte eingezeichnet werden, Kits werden aktuell aber noch immer abgeworfen. Das sollte aber kein so großes Problem werden.

Es ist also noch einiges zu tun. Wir schreiben aktuell einige Klausuren, wahrscheinlich wird es also in den nächsten zwei Wochen nicht so richtig weitergehen, aber danach werden wir nochmal richtig Gas geben :)