Dieser Blog ist der zweite Teil einer zweiteiligen Serie, in der wir die Verwendung von Sensorfusion in autonomen mobilen Robotern (AMRs) vorstellen, die mit ROS (Robot Operating System) 2 arbeiten können. Im ersten Teil haben wir die Sensorfusion vorgestellt, kurz einen Sensorfusionsalgorithmus namens EKF (Extended Kalman Filters) behandelt und dann einige der Experimente durchgespielt, die wir in der Simulation und an unserem AMR durchgeführt haben. Den ersten Teil finden Sie unter Sensorfusion - Teil 1. In diesem Teil werden wir einige der Auswirkungen der Sensorfusion erörtern und zeigen, dass die genaue Kenntnis des Zustands unseres AMR ein grundlegender Schritt ist, der es dem AMR ermöglicht, andere Funktionen wie Navigation, Umgehung von Hindernissen, Kartierung usw. robust auszuführen. Wir werden dies tun, indem wir die Auswirkungen der Sensorfusion auf zwei verschiedene VSLAM-Algorithmen, nämlich RTAB-Map und Isaac ROS VSLAM (und Nvblox) beobachten.
Bevor wir fortfahren, wollen wir kurz erklären, was VSLAM ist. VSLAM steht für Visual Simultaneous Localization and Mapping (Visuelle gleichzeitige Lokalisierung und Kartierung). Es handelt sich dabei um eine Art simultane Lokalisierungs- und Kartierungstechnik (SLAM), die in der Robotik und der Computer Vision eingesetzt wird. VSLAM verwendet visuelle Informationen von Kameras, wie z. B. RGB- (Rot-Grün-Blau) und Tiefensensoren, um eine Karte der Umgebung zu erstellen und gleichzeitig die Position des Roboters innerhalb dieser Karte zu lokalisieren. Die visuellen Daten können verwendet werden, um Orientierungspunkte in der Umgebung zu identifizieren, die Bewegung des Roboters zu verfolgen und seine Position und Ausrichtung zu schätzen.
RTAB-Map ist ein Open-Source-Framework, das die gleichzeitige Lokalisierung und Kartierung (SLAM) in verschiedenen Arten von Robotern, einschließlich Drohnen, mobilen Robotern und humanoiden Robotern, ermöglicht. Dieser visuell basierte Ansatz verwendet Sensoren wie Kameras, um eine Karte der Umgebung zu erstellen und gleichzeitig den Roboter innerhalb dieser Karte zu lokalisieren. Das Framework integriert auch Odometrie und die Erkennung von Schleifenschlüssen, was zu einer sehr genauen Lokalisierung und Kartierung in schwierigen Umgebungen führt. Zu den Funktionen von RTAB-Map gehören die Kartierung von Punktwolken, graphbasierte Optimierung, Erkennung von Schleifenschlüssen und 3D-Visualisierung. Für Details zur Verwendung von RTAB-Map empfehlen wir unseren Lesern, unseren Blog Autonome Navigation von AMR mit RTAB-Map und ToF-Kamera durchzulesen.
Bei der Kartierung unserer Büroräume haben wir mit zwei verschiedenen Sensoren experimentiert: einmal mit den Realsense-RGBD-Daten des AMR und dann mit seinem Time-of-Flight-Sensor. Durch die Verwendung von RTAB-Map werden wir zeigen, wie die Kartierung durch eine schlechte Odometriequelle beeinträchtigt wird, und dies dann durch die Bereitstellung von Odometrie über Sensorfusion verbessern.
In unseren Experimenten zur Verwendung von RTAB-Map mit Realsense-RGBD-Daten erzielten wir in Umgebungen mit vielen Merkmalen sehr robuste Ergebnisse, und die visuelle Odometrie funktionierte gut. Wenn wir jedoch in Regionen mit wenigen Merkmalen arbeiteten, ging die visuelle Odometrie bis zu einem Punkt verloren, an dem sie nicht mehr wiederhergestellt werden konnte, und der Kartenerstellungsprozess musste neu gestartet werden. Wir haben auch beobachtet, dass selbst wenn die Odometrie nicht verloren geht, sich die Qualität der Karte etwas verschlechtert und die Gesamtkarte nicht sauber genug ist, um eine ordnungsgemäße Navigation zu ermöglichen. Dies könnte auf große Odometriedriften oder viele ähnliche Merkmale in der Umgebung zurückzuführen sein. In Abbildung 1 sehen Sie, wie eine solche Karte aussehen würde.
Nach dem Einsatz der Sensorfusion konnten wir eine gute Karte unserer Umgebung mit wenigen Merkmalen erstellen, indem wir RTAB-Map eine robustere Odometriequelle zur Verfügung stellten. Dies geschah durch die Fusion von IMU- und Rad-Odometrie. Abbildung 2 zeigt das Ergebnis. Wie man sieht, haben wir eine saubere Karte mit gut definierten, nicht überlappenden Grenzen erhalten. Eine solche Karte kann gespeichert und für die Innenraumnavigation verwendet werden.
Bei der Ausführung von RTAB-Map mit Punktwolkendaten, die von unserem Time-of-Flight-Sensor stammen, haben wir die Rad-Odometrie als Odometriequelle verwendet. Die Rad-Odometrie driftet, insbesondere beim Drehen, und beeinträchtigt die Qualität der erzeugten Karte. In Abbildung 3 ist zu erkennen, dass die Schleife nicht richtig geschlossen ist, was zu einer falschen Ausrichtung der Wände führt.
Nach der Fusion von IMU-Daten mit Rad-Odometrie konnten wir eine stabilere Odometriequelle bereitstellen, was zu einer besseren Gesamtkartierung und einem korrekten Schleifenschluss führte. Wie in Abbildung 4 zu sehen ist, enthält die endgültige Karte keine unbekannten Hindernisse, was sie für die Navigation besser geeignet macht.
Abbildung 1: Beeinträchtigtes Mapping in einer Umgebung mit wenigen Merkmalen
Abbildung 2: Saubere Karte in einer Umgebung mit wenigen Merkmalen nach der Verwendung der Sensorfusion.
Abbildung 3: Unsachgemäßer Schleifenschluss
Abbildung 4: Korrekte Wandausrichtung nach der Sensorfusion.
In diesem Abschnitt werden wir einen anderen Ansatz zur Sensorfusion verwenden. Anstatt EKF einfach als Odometriequelle zu verwenden (lokale Pose-Schätzung), werden wir es verwenden, um sowohl eine lokale als auch eine globale Pose-Schätzung durchzuführen. Bitte beachten Sie, dass die Odometriequelle als lokaler Posenschätzer betrachtet werden kann, der die Zustandsschätzung unseres AMR in Bezug auf seine Ausgangsposition liefert, während eine globale Posenschätzung die Schätzung der Roboterposition in Bezug auf eine gegebene globale Karte der Umgebung bedeuten würde. Wir werden die Isaac ROS VSLAM und Nvblox Algorithmen verwenden, um dies zu demonstrieren.
Isaac_ros_visual_slam ist ein ROS2-Paket, das eine leistungsstarke VSLAM-Lösung bietet. Das Paket verwendet Stereo-VSLAM und nutzt die Isaac Elbrus GPU-beschleunigte Bibliothek zur Schätzung der visuellen Stereo-Inertial-Odometrie. Durch die Aufnahme eines zeitsynchronisierten Paares von Stereobildern im Graustufenformat, zusammen mit den jeweiligen intrinsischen Kameraparametern, veröffentlicht das Paket die aktuelle Position der Kamera relativ zu ihrer Ausgangsposition.
Nvblox ist ein leistungsfähiges Werkzeug für die Erstellung genauer 3D-Modelle der Umgebung eines Roboters. Dieser Prozess wird durch den Einsatz von NVIDIA CUDA beschleunigt, was Echtzeit-Betriebsraten ermöglicht. Es bietet einen erheblichen Vorteil für die Pfadplanung und Navigation in dynamischen Umgebungen und ermöglicht es Robotern, sicher und effizient zu arbeiten. Das Paket ist in ROS 2 integriert, so dass es leicht mit ROS 2 - basierten Robotern verwendet werden kann.
Weitere Details zum Einsatz von Isaac ROS VSLAM und Nvblox finden Sie in unserem Blog AMR-Navigation mit Isaac ROS VSLAM und Nvblox mit Intel Realsense Kamera
Bei unseren Experimenten mit VSLAM stellten wir fest, dass die globale Zustandsschätzungsgenauigkeit von VSLAM zwar zufriedenstellend war, die von VSLAM erzeugte Odometrie jedoch ein Problem darstellte. In Abbildung 7 zeigen wir die Odometrie-Posen unseres AMR, wenn es in einer geschlossenen Trajektorie betrieben wurde. Die von VSLAM erzeugten Posen, wenn sich der AMR dreht, sind kinematisch nicht machbar, da unser AMR nur zwei Steuerparameter hat, nämlich die x-Geschwindigkeit und die Winkelgeschwindigkeit in z-Richtung. Der AMR ist zu einer solchen seitlichen Bewegung nicht fähig. Diese Art von Verhalten könnte auf das Fehlen eines Bewegungsmodells im Algorithmus zurückzuführen sein.
Bei der Ausführung von VSLAM mit NVBLOX konnten wir eine allmählich zunehmende Diskrepanz zwischen den vom NVBLOX-Kostenkarten-Plugin erzeugten lokalen und globalen Kostenkarten feststellen. Ein Schnappschuss davon ist in Abbildung 8 zu sehen. Dies begann sich negativ auf den Navigationsstapel auszuwirken, da der AMR anfing, Hindernisse in der lokalen Kostenkarte zu erkennen, wo es keine gab. Außerdem war der AMR bei der Ausrichtung auf eine bestimmte Zielposition etwas instabil, und unter bestimmten Umständen wurde die gesamte NVBLOX-Kostenkarte so verschmiert, dass sie nicht mehr wiederhergestellt werden konnte.
Genau wie bei RTAB-Map sinkt die Leistung in Umgebungen mit geringer Ausstattung, und die oben genannten Beobachtungen werden noch deutlicher.
Abbildung 7: Die visuelle Odometrie von Isaac ROS VSLAM ergibt kinematisch nicht realisierbare Posen.
Abbildung 8: Globale und lokale Kostenkarten sind falsch ausgerichtet
In diesem Blog haben wir uns zwei Anwendungsfälle angesehen, bei denen die Sensorfusion zur Verbesserung der Kartierungs- und Navigationsfähigkeiten eines AMR eingesetzt werden kann. Der erste Fall war die Bereitstellung einer stabilen Odometriequelle für RTAB-Map und im zweiten Fall die Bereitstellung globaler und lokaler Posenschätzungen unseres AMR für Nvblox zur Verbesserung der Kartierungsergebnisse. Diese Experimente halfen auch bei den Navigationsfähigkeiten unseres AMR.
Harsh Vardhan Singh hat einen M.S. in Informatik vom Georgia Institute of Technology mit Spezialisierung auf maschinelles Lernen. Er ist Solutions Research Engineer und arbeitet derzeit an der Sensorfusion und dem Navigations-Stack innerhalb der ROS 2-Umgebung für ein Proof-of-Concept eines autonomen mobilen Roboters. Mit Stand März 2023 verfügt Harsh über sieben Jahre Industrieerfahrung, von denen er zunächst sechs Jahre in Forschungs- und Innovationslabors verbracht hat. Er hat an mehreren Projekten wie autonomen Gabelstaplern für die Palettenkommissionierung, Flottenmanagement für Multi-Roboter-Systeme, Bin Picking, automatisierte Palettierung und Online Bin Packing gearbeitet, die die Anwendung von Computer Vision, AI, Deep Learning, Machine Learning, Reinforcement Learning und Robotik beinhalteten.
Akash Parikh hat einen M.Sc. in Mechatronik und Informationstechnologie vom Karlsruher Institut für Technologie, Deutschland, mit Spezialisierung auf Robotik. Er hat etwa 3 Jahre Erfahrung in verschiedenen Bereichen, z.B. in Computer Vision Techniken und hat an der Entwicklung von Objekterkennungs-, Klassifizierungs- und Segmentierungspipelines gearbeitet. Er hat auch mit ROS1/2 und 3D-Modellierungs-CAD-Software, wie CreO und Autodesk Inventor, gearbeitet.
eInfochips, ein Unternehmen von Arrow Electronics, ist ein führender Anbieter von Dienstleistungen in den Bereichen digitale Transformation und Produktentwicklung. eInfochips beschleunigt die Markteinführung für seine Kunden mit seinem Fachwissen in den Bereichen IoT, KI/ML, Sicherheit, Sensoren, Silizium, Wireless, Cloud und Energie. eInfochips wurde von vielen Top-Analysten und Branchengremien, darunter Gartner, Zinnov, ISG, IDC, NASSCOM und anderen, als führendes Unternehmen im Bereich technische F&E-Dienstleistungen anerkannt.
Hauptsitz
- USA, San Jose
- INDIEN, Ahmedabad
Schreiben Sie uns: marketing@eInfochips.com
©2025 eInfochips (ein Arrow-Unternehmen), alle Rechte vorbehalten. | Erfahren Sie mehr über die Datenschutzrichtlinie und die Cookie-Richtlinie von Arrow
Vereinbaren Sie einen 30-minütigen Beratungstermin mit unseren Automotive Solution Experts
Vereinbaren Sie einen 30-minütigen Beratungstermin mit unserem Experten für Batteriemanagementlösungen
Vereinbaren Sie einen 30-minütigen Beratungstermin mit unseren Experten für Industrie- und Energielösungen
Vereinbaren Sie einen 30-minütigen Beratungstermin mit unseren Experten