Welchen Algorithmus kann ich zum Erstellen einer Karte eines erkundeten Gebiets mit einer Reihe von Ultraschallsensoren verwenden?

9

Ultraschallsensoren sind heutzutage unglaublich billig, was sie zu einer beliebten Wahl für viele Hobby-Roboteranwendungen macht, und ich würde gerne ein paar davon (z. B. 10) um einen Roboter mit einem Algorithmus verwenden, um eine grobe Karte eines Gebiets (as) zu erstellen Der Roboter erforscht es.) Ich bin derzeit nicht daran interessiert, mich mit sich bewegenden Objekten zu befassen, sondern nur stationäre Objekte zu lokalisieren, und ich werde GPS als Standort verwenden. Mir ist klar, dass andere Komponenten wie ein Laserscanner viel genauere Ergebnisse liefern würden, aber solche Geräte sind auch astronomisch teurer.

Gibt es zu diesem Zweck einen Algorithmus?

berry120
quelle

Antworten:

5

Die Algorithmen sind im Wesentlichen gleich, unabhängig davon, welche Sensoren Sie verwenden.

Das eigentliche Problem, das Chris angesprochen hat , ist, dass SLAM selbst mit sehr guten Sensoren schwierig ist.

Ich würde GPS, Rad-Kilometerzähler und eine IMU als notwendig erachten, um überhaupt einen Slam mit Ultraschall zu versuchen.

Wenn Sie nur nach einer günstigen Lokalisierung suchen, empfehle ich Ihnen auch einen Blick auf Vision / Kinect-basierten Slam. Sowohl Webcams als auch der Kinect sind sehr billig und Visual Slam hat einen langen Weg zurückgelegt.

Der Kinect ist in Bezug auf Sensorleistung / -kosten so ziemlich der heilige Gral, solange Sie sich in Innenräumen befinden.

Hier ist ein Beispiel für einen Kinect auf einem Roboter und viel Mathematik: http://www.youtube.com/watch?v=9Y4RQVpp-BY

user65
quelle
6

Zu diesem Thema gibt es einen ganzen Bereich der Literatur. Die allgemeinste Idee ist die der Simultaneous Localization and Mapping ( SLAM ), bei der der Roboter eine Karte erstellen muss, während er sich in dieser Karte befindet. Abhängig davon, wie genau Ihre Karten sein sollen, können Sie ein einfacheres Problem beim Erstellen einer Belegungsgitterkarte versuchen , bei dem davon ausgegangen wird , dass Sie den Standort des Roboters kennen.

Im Allgemeinen ist GPS ziemlich schrecklich. Wenn Sie also ein Belegungsraster erstellen, das nur GPS als primäre Standortquelle verwendet, werden ziemlich unscharfe Karten generiert. Es ist jedoch möglich, GPS in Beschleunigung, Gyroskope, Kompasse, Kameras, Radgeber und andere Sensoren zu integrieren, um eine gute Position in der Welt zu erreichen. Andernfalls müssen Sie sich ein einfaches SLAM-System ansehen, um Ihre Probleme zu lösen.

Mit einem schönen Open-Source-Paket g2o für das sogenannte GraphSLAM können Sie Einschränkungen wie GPS und die relative Position zu Wänden festlegen. Es ist vielleicht keine exakte Passform, aber es ist ziemlich allgemein.

Chris Mansley
quelle
1
Ein zusätzlicher Gedanke wäre, alle Daten zu sammeln, grundlegende Vermeidungsverhaltensweisen zu verwenden, um sicherzustellen, dass der Roboter nicht gegen irgendetwas stößt, und dann einen Nachbearbeitungsgraphen-SLAM zu verwenden. Dies kann alle erfassten Daten nutzen, im Gegensatz zu nur den vorherigen Daten für einen Punkt. Vielleicht möchten Sie auschecken : openslam.org/ssa2d.html oder robots.stanford.edu/papers/thrun.graphslam.html
Barrett Ames
2

Um SLAM zu machen, benötigen Sie eine relativ gute Positionsschätzung.

Roboter, die Laserscanner verwenden, können nur mit Kilometerzählern auskommen, da die Daten relativ genau sind und die Scannerdaten zur Lokalisierung in nachfolgenden Zeitschritten verwendet werden können.

Ultraschallsensoren sind sehr unscharf, sie haben im Allgemeinen eine Richtungsunschärfe von mehr als 20 Grad und alles in der allgemeinen Richtung wird erkannt.

Daher sind sie bei der Lokalisierung vernachlässigbar hilfreich (außer in sehr strukturierten Umgebungen).

Eine GPS / IMU-Kombination kann verwendet werden, um eine angemessene Lokalisierung zu erzielen. Dies hängt natürlich von der Größe des Roboters ab, und wenn er sich in Innenräumen befindet, ist GPS möglicherweise nicht praktikabel.

Wenn Sie in der Lage sind, den Radschlupf sorgfältig zu kontrollieren, kann die Rad-Odometrie die Lokalisierung kurzfristig erheblich verbessern (obwohl eine absolute Lokalisierungsmethode bevorzugt wird). Ohne eine absolute Referenz (z. B. GPS) müssen Sie selbst mit einem Laserscanner in der Lage sein, das Problem des "Schließens der Schleife" zu lösen.

Strukturierte Umgebungen stellen möglicherweise eine geringere Genauigkeitsanforderung. Zum Beispiel eine labyrinthartige Umgebung mit Wänden in regelmäßigen quadratischen Gitterabständen, in der es einfach ist, das Vorhandensein einer Wand in jeder Richtung einer Gitterzelle zu erkennen.

ronalchn
quelle