Die autonome Navigation ist ein wichtiger Schritt für Robotersysteme. Eines der wesentlichen Elemente der Navigation autonomer mobiler Roboter (AMR) ist „Visual SLAM“ oder visuelle simultane Lokalisierung und Kartierung. Visual SLAM ist eine Technik, die mit einer Kamera aufgenommene Bilder nutzt, um gleichzeitig die Umgebung zu kartieren und die Position des Roboters zu schätzen. Der Phoenix-Lander, der Opportunity-Rover und der Ingenuity-Hubschrauber, die für die Erforschung des Mars eingesetzt werden, nutzen Visual-SLAM-Algorithmen für die autonome Navigation und Landung. Weitere Anwendungsbereiche sind Staubsauger, Endoskope sowie unbemannte Luft-, Boden- und Unterwasserroboter, bei denen Maschinen Aufgaben automatisiert ausführen.
Visual SLAM erfordert eine hohe Rechenleistung, um Positionen zu schätzen und aus den von einer Kamera aufgenommenen Bildern eine Karte zu erstellen. Die meisten Visual-SLAM-Algorithmen (VSLAM) nutzen die CPU-Leistung, was die Echtzeit-Positionsschätzung und Kartenerstellung einschränkt. Isaac ROS (Robot Operating System), VSLAM und Nvblox sind GPU-beschleunigte ROS2-Pakete, die dabei helfen, Positionen zu schätzen und eine Karte der Umgebung für die Navigation autonomer mobiler Roboter in Echtzeit zu erstellen. Es werden Experimente durchgeführt, um zu sehen, wie gut Isaac ROS VSLAM und Nvblox mit Realsense-Kameras für die autonome Navigation von AMRs zusammenarbeiten.
Abbildung 1 veranschaulicht die Funktionsweise und die Integration der NVIDIA ISAAC ROS Visual SLAM- und Nvblox-Pipeline. Dabei schätzt das VSLAM die Posen ab, und Nvblox rekonstruiert die Karte der Umgebung für die autonome Navigation des Roboters.
NVIDIA Isaac ROS VSLAMist ein ROS2-Paket, das simultane visuelle Stereo-Lokalisierung und Kartierung durchführt. Es berechnet die visuelle Stereo-Trägheitsodometrie anhand eines zeitlich synchronisierten Stereobildpaares und nutzt die GPU-beschleunigte Bibliothek Isaac Elbrus. Visuelle Trägheitsodometrie, Optimierung und Kartierung sind die drei Komponenten von Isaac ROS VSLAM. Die visuelle Odometrie (VO) ist eine Technik zur Schätzung der Position der Kamera relativ zu ihrem Startpunkt. Die inAbbildung 1gezeigte VO-Pose wird durch VO geschätzt. Die Methode der visuellen simultanen Lokalisierung und Kartierung (VSLAM) baut auf der VO-Pose auf und zielt darauf ab, die Qualität der VO-Posen durch Schleifenschließungserkennung und Schätzung von SLAM-Posen unter Verwendung zuvor gesehener Teile der Umgebung zu verbessern. Zusätzlich zu den visuellen Daten kann Elbrus Messungen einer Inertial Measurement Unit (IMU) verwenden. Wenn VO eine Pose nicht schätzen kann, z. B. bei schlechten Lichtverhältnissen oder einer langen, strukturlosen Oberfläche vor der Kamera, wechselt es zu IMU.Abbildung 1zeigt die von V-SLAM geschätzten SLAM-Posen.
NVIDIA Isaac ROS Nvbloxist ein ROS2-Paket, das für die Echtzeit-3D-Rekonstruktion der Umgebung um AMR anhand von Kamerabildern verwendet wird. Die Rekonstruktion soll von Wegplanern zur Generierung eines sicheren Navigationswegs verwendet werden. Nvblox nutzt NVIDIA CUDA, um diesen Prozess zu beschleunigen und einen Echtzeitbetrieb zu ermöglichen. Dieses Repository enthält die ROS2-Integration für die Nvblox-Kernbibliothek. Der Nvblox-Algorithmus besteht aus drei Schlüsselkomponenten: der Truncated Signed Distance Function (TSDF), dem Mesh und der Euclidean Signed Distance Function (ESDF). Nvblox verwendet ein RGB-Bild, ein Tiefenbild und eine SLAM-Pose als Eingabe und gibt Meshes zur Visualisierung sowie eine Distanz-Slice-Karte für die Wegplanung aus. Nvblox generiert einen 2D-Distanzkarten-Slice und ein 3D-Mesh aus einem Stream von RGB- und Tiefenbildern und der entsprechenden Pose des Tiefenbildes. Der RGB-Bildstream, der zur Farbgebung der 3D-Rekonstruktion der Umgebung für die Visualisierung verwendet wird, ist optional. Die 2D-Entfernungskartenscheibe zeigt die Entfernung zwischen jedem Punkt und dem nächstgelegenen rekonstruierten Hindernis sowie ein 3D-Netz für die RVIZ-Visualisierung. Die 2D-Entfernungskartenscheibe zeigt die Entfernung zwischen jedem Punkt und dem nächstgelegenen rekonstruierten Hindernis sowie ein 3D-Netz für die RVIZ-Visualisierung.
Die gesamte Pipeline für die autonome Navigation von AMR unter Verwendung von Isaac ROS V-SLAM, Nvblox und dem Nav2-Stack ist inAbbildung 2 dargestellt. Diese Pipeline besteht aus fünf Knoten: dem Realsense-Kameraknoten, dem Isaac ROS V-SLAM-Knoten, dem Isaac ROS Nvblox-Knoten, dem Nav2-Knoten und dem Rviz-Knoten. Im folgenden Absatz werden die einzelnen Blöcke erläutert.
Abbildung 3zeigt den AMR, was er durch die daran angebrachte Realsense-Kamera sieht, und die daraus resultierende 3D-Punktwolkenkarte als Netz.Abbildung 4 zeigt die erstellte Karte mit dem vorgegebenen Zielzustand, dem geplanten Weg und dem AMR, der sicher am Zielzustand ankommt, indem er dem geplanten Weg folgt.
Abbildung 3: Das Bild links zeigt den AMR in der Laborumgebung, das Bild in der Mitte zeigt, was der AMR sieht, und das Bild rechts zeigt die erstellte 3D-Karte als Netz.
Abbildung 4: Die Abbildung links zeigt die erstellte Karte mit dem vorgegebenen Ziel, die zweite Abbildung stellt den geplanten Weg dar und die dritte Abbildung rechts zeigt, dass das AMR das Ziel erreicht hat.
Um das AMR im Labor autonom zu navigieren, wurde eine Intel RealSense-Kamera in die Stacks Isaac ROS VSLAM, Isaac ROS Nvblox und Nav2 integriert. Das AMR bewegte sich zu Kartierungs- und Navigationszwecken innerhalb einer Laborumgebung. Isaac ROS VSLAM schätzte erfolgreich die Odometrie des AMR und erstellte gleichzeitig eine Karte der Umgebung um das AMR herum. Dank GPU-Beschleunigung bieten die NVIDIA Isaac ROS VSLAM- und Nvblox-Pipelines Echtzeitleistung. Gleichzeitig lokalisierte der VSLAM-Algorithmus seine Position auf der Karte und erstellte eine Karte für die sichere Navigation. Wir hoffen, dass die Darstellung unserer Experimente Robotikingenieuren bei der Entwicklung verschiedener kommerzieller Robotikprodukte helfen wird. Für weitere Details können Sie sich an die Autoren wenden.
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.
Naitik Nakrani ist derzeit als Solution Engineer bei Einfochips (einem Unternehmen der Arrow-Gruppe) am Standort Ahmedabad tätig. Er ist promoviert und verfügt über mehr als 9 Jahre Erfahrung in der Forschung und Entwicklung in Bereichen wie Robotik, SLAM, Navigation, Entwurf von Steuerungssystemen, KI/ML, Signalverarbeitung und Computer Vision. Derzeit arbeitet er an verschiedenen PoCs für ROS/ROS2-basierte Algorithmen zur Lösung von Problemen beim Entwurf und der Entwicklung von AMR-Systemen. Er verfügt über Erfahrung im Umgang mit verschiedenen Embedded-Plattformen, Abstandssensoren, Bildsensoren sowie bei der Systemprofilierung und dem Benchmarking.
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