(Update) Implementieren eines Kalman-Filters


Das bestimmen der eigenen Position zur Entscheidung, wie in Zukunft gas gegeben werden soll, ist nicht ganz einfach. Insbesondere ist es schwierig, herauszufinden, wie sich die Strecke verändert. Ein Mitstudent hat uns einen spannenden Artikel zukommen lassen.

Nach einigen Stunden Einlesen waren wir uns immer noch nicht sicher, wie gut sich ein Kalman-Filter auf unser Problem anwenden lässt. Vor allem das bestimmen der Daten, die durch den Filter gelassen werden. Die einfachen Beispiele, warfen zwei Dinge in den Filter: Geschwindigkeit und Position. Des weiteren sind uns noch andere Kandidaten in den Sinn gekommen, hier eine kurze Auflistung:

  • Geschwindigkeit: Eigentlich die ideale Grösse für unsere Rechnungen - Leider haben wir keinen Geschwindigkeitssensor, und die Berechnung aufgrund der Motorpower ist recht unverlässlich.
  • Position: Zu wissen, wo auf der Strecke wir uns befinden klingt super. Jedoch haben wir auch keinen Positionssensor und müssen uns deshalb die Position anhand der onehin schon unzuverlässigen Geschwindigkeit orientieren
  • Gyro-Z: Der einzige verlässliche Sensorwert. Wie genau dieser sich im Filter verwerten lässt ist jedoch unklar, da der Einfluss auf Geschwindigkeit und Position mathematisch nicht so einfach darzustellen ist.
  • Beschleunigung: Lässt sich auch aus dem Sensor ziehen, aber auch nach ausführlicher Analyse mit R lassen sich neben dem Rauschen kaum Schlüsse zur Strecke ziehen.
  • Motorpower: Ist nicht wirklich ein Sensorwert, gehört wahrscheinlich in die Kontrollmatrix?

Das generelle Problem: Wir haben eigentlich keine brauchbaren Sensordaten, und müssen eigentlich alles selbst berechnen. Wir waren uns dann nicht mehr sicher, ob es sich überhaupt lohnt, solch einen Filter zu implementieren. Auch war es nicht klar, wie genau die 3 Dimensionen der Sensordaten verwendet werden sollen.

Parallel zum ChallP1 kam in Prof. Müllers Vorlesung “Wahrscheinlichkeitsrechnung und Statistik” der Kalmanfilter im Unterrichtsstoff vor. Eine Diskussion mit Herrn Műller ergab, dass es sich durchaus lohnen würde, einen Kalman-Filter auf unser Problem anzuwenden. Die Daten für den Filter wären Geschwindigkeit und die zurückgelegte Distanz.

Aus Zeitmangel und Unsicherheit, wie genau wir die Korrelationsmatrizen ermitteln sollen, sind wir leider nicht mehr dauzgekommen, einen solchen Filter anzuwenden.