Institut
für Informatik, Universität Freiburg
|
Institut für
Informatik |
Grundlagen der Künstlichen Intelligenz |
Abgabe/Vorführung: ????
Vorüberlegung: Autonome Roboter ermitteln üblicherweise
über eine Odometrie ihrer aktuelle Position.
Diese Odometrie besteht aus einem oder mehrerer Räder, die über einen „Inkrementalgeber“
die Drehbewegung des jeweiligen Rades messen können. Damit kann der zurückgelegte
Weg eines jeden Rades ermittelt und die aktuelle Position und Orientierung des
Roboters geschätzt werden.
Der Inkrementalgeber der Motoren
eines Pioneer 2 Roboters liefert 500 "Ticks" pro Umdrehung und die
Übersetzung von Motor zu dem jeweiligem Rad ist 19.7 : 1 (das bedeutet also,
daß für eine Umdrehung des Rades der Motor sich 19.7 mal dreht). Wie groß
ist die kleinste mit der Odometrie meßbare Strecke bzw. Drehung bei einem Raddurchmesser
von 165,0 mm?
Wodurch entstehen weitere Ungenauigkeiten?
Schreiben Sie eine Saphira-Modul, welches zur Laufzeit als „shared object“ geladen werden kann. Von diesem Modul sollen die folgenden Aktivitäten aufgerufen werden können:
Hinweis: Verwenden
Sie dieses Makefile zur Erstellung eines ladbaren
Saphira-Moduls.
Bei der Positionsbestimmung mittels
der Odometrie treten Abweichungen zwischen der tatsächlichen Position und der
berechneten Position auf. Diese Fehler beziehen sich auf die folgenden Größen:
Bestimmen Sie den Entfernungs-,
Dreh-, und Driftfehler eines Pioneer-Roboters. Vergleichen Sie dazu die Positionsschätzung
des Roboters (Odometrie-Daten, werden im Saphira-Fenster angezeigt) und die
tatsächliche Position des Roboters (diese müssen Sie "von Hand" nachmessen).
Erstellen Sie eine Statistik für
jede der angegebenen Fehlerarten, und bestimmen Sie daraus Mittelwert und Standardabweichung.
Achten sie darauf, daß genügend Messungen durchgeführt werden um statistisch
signifikante Aussagen machen zu können.
Frage: Sind die gemessenen Fehler normalverteilt,
bzw. in welchen Fällen sind sie es nicht?
Hinweis: Mindestens eine Gruppe sollte die Fehler
des Pioneer 2 Modells ermitteln. Entscheiden Sie anhand der Ergebnisse, welcher
Roboter-Typ zuverlässiger
ist.