Hallo.
Ich hab vor einen Roboter zu bauen der seine Umgebung selber erfassen kann, aber auch von mir vorgegebene Orte befahren soll... Hab die letzte Woche ziemlich viel gelesen, etliche Erfolgsberichte gelesen, unheimlich viel "so hab ichs gemacht" usw gefunden, aber leider keine detaillierte Vorgehensweise, mit was man beginnen muss usw oder ein konkretes Codebeispiel was mich weiter bringen würde (Screenshots und Videos findet man sehr viele)
Aber zunächst mal grobe Details was ich mir bisher gedacht habe:
- Als Plattform dacht ich entweder an den RP6v2 oder Rover5. (mit Odometriesensorik)
- Zur Umgebungserfassung möchte ich Ultraschall- und IR- Sensoren nutzen. 2D würde mir denk ich reichen.
- Ein bis zwei AVR's steuern Motoren und Sensoren an.
- Als Gehirn möchte ich ein RaspberryPI verwenden.
- An den RaspberryPI schließe ich dann alle AVR's via USB an um mit diesen in beide Richtungen zu kommunizieren und ein WiFi Stick am PI zur Kommunikation zu meinem PC.
Leider weiß ich nicht _wie_ eine Karte erstellt wird, auch nicht wie diese für mich darstellbar angezeigt werden kann, und wie ich Karten speicher und später dem Roboter wieder zur Verfügung stellen kann
Ich weiß das es verschiedene Algorithmen gibt, die je nach Situation besser oder schlechter sind. A*-Star, BUG2 und Wavefront sind aber die, die ich anpeile da mir SLAM zu komplex erscheint.
Auch denk ich zu wissen das eine Karte aus "Fliesen" besteht, wo befahrbare und nicht-befahrbare jeweils markiert sind...
Aber wie gesagt tu ich mich unheimlich schwer damit wie ich mit den Daten der Sensoren in eine brauchbare Karte erstelle, diese für spätere Verwendung speichern kann, aber vorallem wie ich diese Visuell darstellen und ggf Korrekturen vornehmen kann.
Vorzugsweise würde ich das gerne in Python (pygame) umsetzen, da ich Java hasse und nicht wirklich kann, und C++ gerade erst lerne..
Kann mir Bitte jemand bei dem Problem unter die Arme greifen und mir möglichst detailliert erklären wie ich das anstelle und was ich dafür benötige?
Vielen Dank!
Geändert von meigrafd (18.07.2014 um 21:42 Uhr)
Eine Anleitung, wie man so eine Karte erstellen könnte und die Sensoren einbindet, findest Du z.B. in Sebastian Thruns Kurs "Programming a Robotic Car". https://www.udacity.com/course/cs373
Die Kursbeispiele sind in Python programmiert. Einige Kursteilehmer haben ihre Programme dazu veröffentlicht, z.B.:
https://github.com/salimchedrawi/Python-AI-Robots
Und wenn Dir dann Python zu langsam ist, kannst Du sie mit Cython ( http://cython.org/ ) zu C-Programmen kompilieren.
Gruß, Günter
Lesezeichen