Sensorfusion – Teil 1

Dieser Blogbeitrag ist der erste Teil einer zweiteiligen Serie, in der wir den Einsatz von Sensorfusion in autonomen mobilen Robotern (AMRs) vorstellen, die für die Arbeit mit ROS 2 (Robot Operating System 2) ausgelegt sind. In diesem Teil werden wir die Sensorfusion vorstellen, kurz auf einen Sensorfusionsalgorithmus namens EKF (Extended Kalman Filter) eingehen und anschließend einige der Experimente durchgehen, die wir in der Simulation und an unserem AMR durchgeführt haben.

Autoren: Harsh Vardhan Singh, Mayank Mukesh, Anisha Thakkar | Datum: 21. März 2023 | Kategorie: Automobilindustrie

Einleitung

Das Problem, das wir lösen wollen, besteht darin, den Zustand eines dynamischen Systems genau zu schätzen. Ein dynamisches System lässt sich als ein System definieren, dessen Zustand sich im Laufe der Zeit ändert. Diese Zustandsänderung kann durch eine natürliche Entwicklung des Systems bedingt sein oder auch durch einen externen Einfluss ausgelöst werden. Mathematisch wird ein dynamisches System dadurch dargestellt, dass sein Zustand durch ein System von Differentialgleichungen definiert wird, die beschreiben, wie sich ein bestimmtes System im Zeitverlauf verhält.

Wir bezeichnen dies als das Bewegungs-/Prozessmodell unseres Systems. Ausgehend von einer Eingabe (nicht zwingend erforderlich) in das System und den beobachteten Messwerten lässt sich der Systemzustand für den nächsten Zeitschritt abschätzen. Dies wird als Zustandsschätzung bezeichnet. Ein Beispiel für ein solches System ist ein autonomer mobiler Roboter (AMR), der sich in einem Lager oder einem Labor bewegt.

Hier würde der Zustand des AMR aus seiner Position relativ zu einem festen Ursprung, seiner Geschwindigkeit und seiner Beschleunigung bestehen. Diese Zustandsvariablen können direkt gemessen oder mathematisch aus den Sensorwerten abgeleitet werden. Es ist jedoch wichtig zu bedenken, dass einzelne Sensoren ihre eigenen individuellen Unzulänglichkeiten aufweisen. Ein Radausleser hilft uns beispielsweise dabei, die Anzahl der Umdrehungen eines Rades zu zählen. Anhand dieser Informationen und der Dynamik des AMR (Bewegungsmodell) können wir die neue Position des AMR vorhersagen.

Sollten die Räder jedoch durchdrehen, würden die Radausleser zusätzliche Radumdrehungen melden, was dazu führen würde, dass unsere Vorhersage des Zustands des AMR fehlerhaft wird. Diese Art von Problemen wird durch Sensorrauschen und die physikalische Umgebung noch weiter verschärft. Um die Einschränkungen einzelner Sensoren auszugleichen, können Messwerte mehrerer Sensoren so kombiniert werden, dass eine bessere Zustandsschätzung des dynamischen Systems erzielt wird. Der Prozess der Kombination mehrerer Sensordaten zur Verringerung der Unsicherheit oder zur Verbesserung der Genauigkeit bei der Zustandsschätzung eines dynamischen Systems wird als Sensorfusion bezeichnet.

Erweiterter Kalman-Filter

Der erweiterte Kalman-Filter (EKF) ist ein weit verbreitetes Verfahren zur Fusion von Daten aus mehreren Sensoren. Er stellt eine Erweiterung des bekannten Kalman-Filters (linear) dar, der zur Zustandsschätzung linearer dynamischer Systeme verwendet wird. Eine grundlegende Annahme bei Kalman-Filtern ist, dass jede Variable unseres Zustands durch eine Gauß-Verteilung definiert ist und dass das Sensor- und Prozessrauschen unabhängig voneinander verteilte Gauß-Verteilungen mit dem Mittelwert Null sind. Abbildung 1 zeigt ein Blockdiagramm, das veranschaulicht, wie eine Sensorfusion mithilfe eines Vorhersage- und Aktualisierungszyklus in Kalman-Filtern erreicht werden kann. Gehen wir die einzelnen Schritte durch, um zu sehen, wie dies funktioniert:

  1. Wir gehen von einer anfänglichen Zustandsschätzung, der dazugehörigen Kovarianzmatrix und einem Bewegungsmodell unseres Systems aus.
  2. Sobald wir eine Eingabe erhalten haben, führen wir unseren Vorhersageschritt durch, um unsere neue Zustandsschätzung und Kovarianz zu berechnen, indem wir unser System unter Verwendung unseres Bewegungsmodells und der gegebenen Eingabe zeitlich vorwärts simulieren.
  3. Wenn wir Messwerte von verschiedenen Sensoren wie IMU (Inertial Measurement Units) und Raddrehgebern erhalten, aktualisieren wir unsere Zustandsschätzung und Kovarianz, indem wir die vorherige Vorhersage mit den neuen Messwerten kombinieren.
  4. Die Vorhersage- und Aktualisierungsschritte laufen während der gesamten Laufzeit unserer Anwendung weiter.


Abbildung 1: Blockdiagramm des Kalman-Filters

Bei der Arbeit mit einem nichtlinearen System wie einem AMR müssen wir einige Änderungen am Kalman-Filter-Algorithmus vornehmen. Um sicherzustellen, dass unsere Zustandsdarstellung nach jedem Vorhersage- und Aktualisierungsschritt weiterhin einer Gauß-Verteilung entspricht, müssen wir die Bewegungs- und Messmodelle linearisieren. Dies geschieht durch die Verwendung von Taylor-Reihen, um die nichtlinearen Modelle als lineare Modelle zu approximieren. Diese Erweiterung des Kalman-Filters wird als erweiterter Kalman-Filter bezeichnet.

Sensorfusion in ROS

Eines der beliebtesten ROS-Pakete zur Durchführung von Sensorfusion mit ROS ist das Paket „robot_localization“. Das Paket „robot_localization“ ist ein universell einsetzbares Paket zur Zustandsschätzung mit Implementierungen des Extended Kalman Filters und einer weiteren Variante des Kalman-Filters, dem sogenannten Unscented Kalman Filter. Es bietet die Flexibilität, viele Sensoren zu fusionieren, und liefert eine Zustandsschätzung mit 15 Vektoren. Die Zustandsschätzung setzt sich aus Position, Orientierung, Lineargeschwindigkeit, Winkelgeschwindigkeit und Linearbeschleunigung in x-, y- und z-Richtung zusammen. Das von diesem Paket bereitgestellte Bewegungsmodell ist omnidirektional. Es kann bei Vorliegen relevanter Daten sowohl für die globale als auch für die lokale Zustandsschätzung verwendet werden. Weitere Details zum Paket finden Sie unter:http://docs.ros.org/en/noetic/api/robot_localization/html/index.html

Experimente in Gazebo

Gazebo ist eine ROS-2-fähige Simulationsumgebung, die viel Flexibilität beim Testen von Robotersystemen bietet. Sie ermöglicht es uns, Sensorrauschen zu simulieren, verschiedene Reibungskoeffizienten auszuprobieren und die Genauigkeit der Radausleser zu verringern. Auf diese Weise können wir realistische Szenarien nachbilden, die die Zustandsschätzung eines AMR in der realen Welt beeinflussen würden.

Um die Leistung der Sensorfusion zu quantifizieren, können wir einen Schleifenschluss-Test durchführen, bei dem das AMR auf einer zufällig geschlossenen Bahn gefahren wird, sodass der Start- und Endpunkt des AMR identisch sind. Anschließend können wir die vom EKF nach der Fusion von IMU- und Raddrehgeberdaten durchgeführte Zustandsschätzung grafisch darstellen und mit der Zustandsschätzung vergleichen, die ausschließlich auf den Rohdaten der Raddrehgeber basiert. Im Idealfall soll der geschätzte Zustand unseres AMR die Werte x, y und Gierwinkel jeweils als (0, 0, 0) angeben.

Wir haben verschiedene Experimente mit den Turtlebot3 (TB3)-Paketen durchgeführt. Ein Beispiel hierfür ist in Abbildung 2 dargestellt. Hier steuern wir den TB3 mehrmals ferngesteuert durch die Turtlebot3-Welt und bringen ihn schließlich wieder an die Ausgangsposition zurück. Wie zu sehen ist, kann die vom EKF vorhergesagte Bahn (in Grün dargestellt) die Rückkehr des AMR an seine Ausgangsposition besser abschätzen, während bei ausschließlicher Verwendung der Radausleser (in Rot dargestellt) die Schätzung um etwa 1,4 Meter abweicht. Die Rohdaten der Radausleser ergeben einen endgültigen Positionsfehler von 0,405 m, -1,36 m und 29,72 Grad in x-, y- und Gierrichtung. Der vom EKF geschätzte Positionsfehler für x, y und Gierrichtung beträgt hingegen 0,103 m, -0,0165 m und 0,0187 Grad. Die prozentuale Gesamtverbesserung der euklidischen Entfernung im Vergleich zur Ausgangsposition betrug etwa 92,64 % – von 1,42 m bei ausschließlicher Verwendung der Raddatensensor-Daten auf 0,10 m nach Einsatz des EKF.

Abbildung 2: Schleifenverschluss-Test in Gazebo mit Turtlebot 3

Experimente zur Antibiotikaresistenz

Die in Gazebo durchgeführten Experimente lassen sich auch auf reale AMRs übertragen. Wir haben diese Experimente in unseren Büroräumen durchgeführt und konnten durch die Fusion der IMU- und Raddrehgeberdaten unserer AMRs zuverlässige Ergebnisse erzielen. Ein Beispiellauf ist in Abbildung 3 dargestellt. Bei ausschließlicher Verwendung der Raddatensender-Daten wies der geschätzte Zustand einen Fehler von 1,58 m in x-Richtung, -0,69 m in y-Richtung und einen Gierausrichtungsfehler von 55 Grad auf. Die EKF-Schätzung fiel jedoch besser aus, mit Fehlern von -0,35 m, -0,033 m und -5,9 Grad in der x-, y- und Orientierungsrichtung. Die prozentuale Gesamtverbesserung des euklidischen Abstands zum Ursprung betrug etwa 78,9 % und sank nach Implementierung des EKF von 1,699 m auf 0,35 m.

Abbildung 3: Schleifenschlussprüfung an einem echten AMR in den Büroräumen.

Fazit

Die Zustandsschätzung ist ein entscheidender Schritt, um anderen Modulen unseres AMR, wie beispielsweise der Navigation und der Kartierung, eine zuverlässige Odometriequelle zur Verfügung zu stellen. Durch unsere Experimente haben wir gezeigt, dass wir mithilfe von Sensorfusionstechniken den Zustand unseres AMR sowohl in der Simulation als auch in der realen Welt genauer schätzen können. Wir haben erweiterte Kalman-Filter eingesetzt, eine weit verbreitete Methode zur Sensorfusion in nichtlinearen Systemen. In Teil 2 dieser Reihe werden wir erörtern, wie die Sensorfusion die Navigations- und Kartierungsfähigkeiten unseres AMR verbessern kann.

Autoren

Harsh Vardhan Singh
Lösungsingenieur, eInfochips (ein Unternehmen der Arrow-Gruppe)
Mayank Mukesh
Embedded-Ingenieur, eInfochips (ein Unternehmen der Arrow-Gruppe)
Anisha Thakkar
Embedded-Ingenieur, eInfochips (ein Unternehmen der Arrow-Gruppe)

Bericht herunterladen

Beispielbericht herunterladen

Broschüre herunterladen

Nehmen Sie noch heute Kontakt auf

Vereinbaren Sie ein 30-minütiges Beratungsgespräch mit unseren Experten für Automobil-Lösungen

Nehmen Sie noch heute Kontakt auf

Vereinbaren Sie ein 30-minütiges Beratungsgespräch mit unserem Experten für Batteriemanagement-Lösungen

Nehmen Sie noch heute Kontakt auf

Vereinbaren Sie ein 30-minütiges Beratungsgespräch mit unseren Expertenfür Industrie- und Energielösungen

Nehmen Sie noch heute Kontakt auf

Vereinbaren Sie ein 30-minütiges Beratungsgespräch mit unseren Experten für die Automobilbranche

Nehmen Sie noch heute Kontakt auf

Vereinbaren Sie einen 30-minütigen Beratungstermin mit unseren Experten

Bitte geben Sie die folgenden Angaben ein und fordern Sie einen Musterbericht an

Referenzdesigns

Unsere Arbeit

Innovation

Transformieren.

Maßstab

Partnerschaften

Unternehmen

Produkte & IPs