Die Erkundung ist ein wichtiger Aspekt der autonomen Navigation in der Robotik. Simultane Lokalisierung und Kartierung (SLAM) ist eine grundlegende Technik, die es Robotern ermöglicht, unbekannte Umgebungen zu navigieren und zu kartieren. Visual Simultaneous Localization and Mapping oder Visual SLAM (VSLAM) ist eine spezielle Art von SLAM, die es Robotern ermöglicht, ihre Umgebung zu kartieren und ihre eigene Position, d. h. die Odometrie, in Echtzeit mithilfe visueller Eingaben von Kameras zu schätzen. Diese Technik ist in verschiedenen Anwendungen weit verbreitet, darunter Mars-Rover, Mars-Helikopter, Bodenroboter, Unterwasserroboter und Staubsaugerroboter. Es wurde untersucht, wie gut die Time-of-Flight (ToF)-Kamera mit RTAB-Map für die autonome Navigation von autonomen mobilen Robotern (AMR) funktioniert, die nur Tiefenbilder verwenden. Die ToF-Kamera nimmt sowohl Infrarot- (IR) als auch Tiefenbilder auf. Das Tiefenbild wird verwendet, um eine 3D-Punktwolke zu erstellen. Die 3D-Punktwolke und die Rad-Odometrie werden von RTAB-Map verwendet, um eine korrigierte Odometrie und eine 2D-Belegungsraster-Karte für die autonome Navigation von AMR auszugeben.
Die ToF-Kamera ist eine Tiefenkamera von Analog Devices, die auf dem TOF-Signalprozessor ADSD3100 basiert. Sie bietet Unterstützung für die Datenverarbeitung auf der eingebetteten Prozessorplattform sowie eine USB-, Ethernet- oder Wi-Fi-Verbindung zu einem Host-Computer. Die ToF-Kamera ist für den Einsatz in Industrie-, Automobil- und Verbraucheranwendungen konzipiert. Sie verwendet ein Time-of-Flight-Verfahren, um die Entfernung zu Objekten in der Szene zu berechnen, wodurch sie genaue Tiefenkarten erstellen kann. Die ToF-Kamera liefert sowohl Infrarot- (IR) als auch Tiefenbilder und ist inAbbildung 1 dargestellt.
Real-Time Appearance-Based Mapping (RTAB-Map) ist eine graphbasierte SLAM-Technik. RTAB-Map umfasst einen auf dem Erscheinungsbild basierenden Loop-Closure-Detektor-Ansatz und einen Speicherverwaltungsansatz, um groß angelegte und langfristige Online-Kartierungen zu bewältigen. Die Odometrie, d. h. die Position des AMR, ist eine externe Eingabe für RTAB-Map. Daher kann jede Art von Odometrie verwendet werden, die für eine bestimmte Anwendung geeignet ist, einschließlich Radodometrie, visuelle Odometrie und ICP-Odometrie. Mit RTAB-Map können vier verschiedene Eingabekonfigurationen verwendet werden:
Abbildung 2zeigt die verschiedenen Blöcke von RTAB-Map. Eine 3D-Punktwolke und Odometrie sind die Eingaben, die RTAB-Map für unseren Anwendungsfall verwendet. Zusätzlich benötigt es zwei Eingabetransformationen: die Transformation von odom zu base_link und die Transformation von base_link zu camera_link. RTAB-Map gibt die Transformation von map zu odom, eine 2D-Belegungsgitterkarte und eine korrigierte Odometrie aus. Der RTAB-Map-Knoten besteht aus den folgenden Blöcken: Synchronisation, Kurzzeitgedächtnis (STM), Langzeitgedächtnis (LTM), Schleifenschließung und Näherungserkennung, Graphenoptimierung und globale Kartenzusammenstellung.
Die gesamte Pipeline für die Durchführung der autonomen AMR-Navigation unter Verwendung von rtabmap, ToF-Kamera und fusionierter Rad-IMU-Odometrie ist in Abbildung 3 dargestellt. Die fusionierte Rad-IMU-Odometrie wird durch Verschmelzen von Rad-Encoder-Daten und IMU-Daten mit Hilfe eines erweiterten Kalman-Filters erhalten, um eine robuste Odometrie zu erhalten. Wie wir sehen können, gibt es sieben Knotenpunkte: ToF-Kamera-Knoten, image_proc-Knoten, Punktwolken-Knoten, rtabmap-Knoten, Rad-IMU-fusionierter Odometrie-Knoten, Nav2-Knoten und Rviz-Knoten. Im nächsten Abschnitt wird die Funktionalität dieser Knoten erläutert.
Der erste Knoten in der Pipeline ist der ToF-Kameraknoten, der sowohl IR- als auch Tiefenbilder aufnimmt. Die erfassten Bilder werden dann durch den image_proc-Knoten entzerrt, um tangentiale und radiale Verzerrungen zu beseitigen. Die entzerrten IR-Bilder werden für die Visualisierung in Rviz verwendet. Der Punktwolkenknoten erzeugt 3D-Punktwolken aus entzerrten Tiefenbildern. Der Knoten wheel-IMU fused odometry schätzt die Odometrie des AMR anhand von Rad-Encodern und IMU-Daten. Der rtabmap-Knoten verwendet die fusionierte Rad-IMU-Odometrie und die generierte Punktwolke, um die 2D-Belegungsraster-Karte und die korrigierte Odometrie (d. h. die Pose) zu erstellen. Ein Nav2-Knoten verwendet die generierte Occupancy Grid Map und die Odometrie, um eine Costmap zu erstellen, die für die Pfadplanung und die autonome Navigation des AMR verwendet wird. Der Rviz-Knoten schließlich dient als Visualisierungstool zur Anzeige des IR-Bildes, der Odometrie und der Belegungsraster-Karte. Er ermöglicht auch die Einstellung der Zielposition für den AMR. Insgesamt kombiniert die Pipeline verschiedene Sensoren und Knotenpunkte, um die autonome Navigation des AMR zu ermöglichen.
Abbildung 3zeigt den AMR, was er durch die daran angebrachte Realsense-Kamera sieht, und die daraus resultierende 3D-Punktwolkenkarte als Netz.Abbildung 4zeigt die erstellte Karte mit dem vorgegebenen Zielzustand, dem geplanten Weg und dem AMR, der sicher am Zielzustand ankommt, indem er dem geplanten Weg folgt.
Darüber hinaus zeigt die anhand des korrigierten Tiefenbilds der ToF-Kamera generierte Punktwolke flache Oberflächen in der realen Welt als gekrümmte Oberflächen in der Punktwolke. Daher ist eine Nachbearbeitung erforderlich, um dieses Problem zu beheben. Abbildung 6 zeigt die Belegungsrasterkarte vor und nach der Filterung der Punktwolke. Die blauen Linien in diesem Fenster kennzeichnen die geschätzte Odometrie des AMR.
Abbildung 6 Daslinke Fenster zeigt die Belegungsrasterkarte vor der Filterung der Punktwolke, während das rechte Fenster die Belegungsrasterkarte nach der Filterung der Punktwolke zeigt. Die blauen Linien in beiden Fenstern kennzeichnen die geschätzte Odometrie des AMR.
Abbildung 7veranschaulicht die verschiedenen Phasen des autonomen Navigationsprozesses. Die erste Abbildung auf der linken Seite zeigt die generierte Karte mit der aktuellen Position des AMR. Die Karte wird vom rtabmap-Knoten unter Verwendung der Rad-IMU-fusionierten Odometrie und der Punktwolke generiert. Die zweite Abbildung in der Mitte zeigt die Zielposition mit dem geplanten Weg. Sobald die Zielposition in Rviz festgelegt ist, plant der Nav2-Knoten einen Weg unter Verwendung der aus der Belegungsgitterkarte und der Odometrie-Position generierten Kostenkarte. Der geplante Weg wird in Rviz zur Visualisierung angezeigt. Die dritte Abbildung auf der rechten Seite zeigt schließlich, dass der AMR den Zielzustand erreicht hat. Sobald der Weg geplant ist, nutzt der AMR die korrigierte Odometrie-Position und die Kostenkarte, um zur Zielposition zu navigieren. Der AMR aktualisiert seine Position kontinuierlich mithilfe der Rad-IMU-fusionierten Odometrie und der Belegungsgitterkarte und passt seine Flugbahn an, um dem geplanten Weg zu folgen. Wenn der AMR die Zielposition erreicht, hält er an und der Navigationsprozess ist abgeschlossen.
Die ToF-Kamera wurde in RTAB-Map und Nav2 Stack integriert, um den AMR in einer Laborumgebung autonom zu navigieren. Bei der Verwendung von ToF mit RTAB-Map für die autonome Navigation des AMR gab es verschiedene Herausforderungen. Die von ToF gelieferten IR- und Tiefenbilder müssen korrigiert werden, da unkorrigierte Tiefenbilder zu ungenauen Karten führen können. Wir haben beobachtet, dass flache Objekte in der Punktwolke gekrümmt aussahen, was durch eine Nachbearbeitung der Punktwolke behoben wurde. Es ist notwendig, die Punktwolke zu filtern, bevor sie an RTAB-Map übergeben wird. Parallel dazu erstellte der AMR die Karte und lokalisierte seine Position in der Karte für eine sichere Navigation unter Verwendung des Tiefenbildes von ToF und des RTAB-Map-Algorithmus. Wir konnten auch die erfolgreiche autonome Navigation des AMR unter Verwendung der ToF-Kamera und RTAB-Map beobachten. Wir gehen davon aus, dass die Ergebnisse unserer Experimente den Einsatz von ToF für eine Reihe kommerzieller Robotersysteme beschleunigen werden.
Sagar Dhatrak schloss 2011 sein Masterstudium in Elektrotechnik ab und legte 2021 seine Doktorarbeit zum Thema „Monokulares Visual SLAM“ vor. Derzeit ist er als VSLAM-Spezialist bei Einfochips (einem Unternehmen der Arrow-Gruppe) tätig und beschäftigt sich mit der autonomen Navigation mobiler Roboter unter Verwendung von Visual SLAM. Er arbeitet seit rund sechs Jahren an Projekten im Bereich eingebettete Systeme und Robotik.
Vishal Raval hat einen Bachelor of Engineering (BE) in Elektronik und Kommunikation. Derzeit arbeitet er als Senior Embedded Engineer bei Einfochips (einem Unternehmen von Arrow). Er verfügt über rund 8 Jahre Erfahrung im IT-Bereich. Er ist ein erfahrener Programmierer in C, C++, LINUX und ROS2. Derzeit forscht er an der autonomen Roboternavigation unter Verwendung von Visual SLAM mit ToF-Sensor.
Vereinbaren Sie ein 30-minütiges Beratungsgespräch mit unseren Experten für Automobil-Lösungen
Vereinbaren Sie ein 30-minütiges Beratungsgespräch mit unserem Experten für Batteriemanagementlösungen
Vereinbaren Sie ein 30-minütiges Beratungsgespräch mit unseren Expertenfür Industrie- und Energielösungen
Vereinbaren Sie ein 30-minütiges Beratungsgespräch mit unseren Experten