Studierende: |
Dominik Riedweg, riedwdom |
|
Hannes Zurcher, zuerchan |
Betreuer: |
Markus Thaler, tham |
|
Roland Büchi, bhir |
Die Zurcher Hochschule Winterthur nimmt seit einigen Jahren regelmassig am Smartrob EPFL Robot Contest teil. Dabei mussen autonome Roboter verschiedene Aufgaben losen. Ein grosses Problem stellt dabei die autonome Roboternavigation dar, bei der es darum geht, anhand einer Karte und Sensordaten, einen kurzesten Weg zu finden. Egal, welche Aufgabe gelost werden muss, autonome Navigation ist immer ein Teil davon. Mit der Roboternavigation hat sich bereits eine Projektarbeit befasst. Jedoch wurde in dieser Arbeit nur mit einem kleinen Testgebiet und einer geringen Anzahl definierter Hindernisse gearbeitet. Das Ziel dieser Diplomarbeit ist es, das Problem auch fur grosse Raume mit einer unbegrenzten Anzahl unbekannter Hindernisse zu losen. Dazu wurde ein Algorithmus, der A* Algorithmus, verwendet, respektive eine davon abgeleitete Version, der sehr flexible und machtige D* Lite Algorithmus. Die Implementation verwendet eine dynamisch erweiterbare Karte und ist nicht an spezifische Sensoren gebunden.
Das Endprodukt ist eine Robotersteuerung, welche dem Roboter erlaubt, ein Ziel in bekanntem oder unbekanntem Gelande anzufahren. Diese Robotersteuerung basiert auf einem wiederverwendbaren Navigationsmodul. Der Roboter verwendet verschiedene Sensoren um Hindernisse und Landmarken zu detektieren. Landmarken konnen in der Karte vermerkt werden, sodass der Roboter, wenn er eine Landmarke findet, seine Position und Orientierung korrigieren kann. Das Navigationsmodul kann fur verschiedenes Gelande, genauso wie fur verschiedene Konstruktionen des Roboters, angepasst werden. Dies macht das Navigationsmodul sehr flexibel und damit sehr gut wiederverwendbar.
Die Schlussfolgerung aus diesem Projekt ist, dass das Problem der autonomen Roboternavigation, selbst in einfachem Gelande, sehr kompliziert ist. Der A* Algorithmus und seine abgeleiteten Versionen losen dieses Problem jedoch sehr elegant, ohne dabei viel Rechenzeit zu verbrauchen.
|