Hi zusammen,
ich habe mir einen kleinen, autonomen Roboter gebaut.
Hardware:
- Arduino Duemilanove
- 2 DC Motoren
- PING Ultraschall-Sensor
- Diverse Plastikbauteile
Mit Hilfe des Ultraschall-Sensors kann der Roboter Hinternisse erkennen und versucht entsprechend meinem Algorithmus einen Alternativweg zu suchen. Im Prinzip fährt der Robot zufällig durch einen Raum
Nun möchte ich einen zweiten Roboter bauen. Eine neue Anforderung wäre, dass der eine Roboter den anderen Roboter sucht und auch findet bzw. mehrere Roboter andere Roboter sauber finden und unterscheiden können. Mein Ziel wäre, dass ein Roboter vorweg läuft und die anderen folgen.
Ich habe mir schon einige Gedanken gemacht wie man das realisieren könnten bin mir aber noch unsicher.
GPS:
Mit einem GPS Module könnten die Roboter ihre Position angeben. Auf Basis der Koordinaten wäre ich in der Lage von Punkt A (Roboter 1) zu Punkt B (Roboter 2) zu gelangen. Das ist zwar nicht ganz so einfach aber sollte klappen. Das Problem was ich sehe ist, der Raum in dem sich die Roboter bewegen ist gerade mal ca. 10m2. Vermutlich sind die Low-Budget GPS Module gar nicht in der Lage sinnvolle Positionen zu bestimmen. Weiterhin können die Robotos nicht kommunizieren.
XBee:
Mesh-Netzwerk mit Hilfe des Pro-Modules. Jedoch löst das nicht das Problem der räumlichen Ortung. Die Robots könnten aber untereinander kommunizieren. Gibt es irgendwie eine Möglichkeit über den XBee Stack auch auf die Position im Raum zu schließen? Irgendwie Signal-Richtung und Signal-Geschwindigkeit auswerten?
GPRS/GSM:
Kommunikation nur über SIM d.h. die Robots müssten hardcodiert die Nummern der anderen Robots kennen. Räumlichen Ortung ungenau.
Pattern Recognition mit Kamera:
Vermutlich gar nicht realisierbar auf einem so kleinen Microcontroller.
Ich denke mit GPS + XBee könnte man etwas hinbekommen aber gibt es keine einfachere Möglichkeit? Gibt es keinen Sensor der ein gewisses Signal ausstrahlt und ich darauf auf die Positon des Senders schließen kann? Wie erkennen sich Roboter?
Vielen lieben Dank