Hi Leute,
wir haben hier zwecks Ermittlung der Blickrichtung unseres Roboters einen Phidget 1044 3/3/3 Spatial Sensor. Das Ding sollte ja eigentlich prädestiniert sein, um daraus einen vergleichsweise sauberen Blickwinkel zu ermitteln, theoretisch. Nun ja, Rollen und Neigen ist aufgrund des Beschleunigungssensors auch kein größeres Problem. Aber das Gieren bereitet mir Schwierigkeiten.
Genau der Gierwinkel ist es aber, den wir brauchen. Rollen und sich neigen tut unser Roboter nicht, da er per definitionem ausschließlich auf einer ebenen Fläche fährt.
Wie bei einem Gyro üblich, hat das Teil natürlich einen gehörigen Drift.
Ich habe nun schon einiges gelesen über die Verwendung von Kalman Filtern für die Verschmelzung von Kompass und Gyro, um daraus einen sauberen Winkel zu erhalten. Allerdings habe ich noch keine konkrete Umsetzung eines solchen gefunden, der sich auf den Gierwinkel beschränkt - was die Sache ja eigentlich vereinfachen sollte. Und verstanden habe ich den Filter wohl auch noch nicht so recht.
Wir sind bezüglich des Einbaus des Sensors flexibel, das heißt, wenn er irgendwo irgendwie platziert werden sollte, um die Implementierung des Algorithmus zu vereinfachen, dann wird er dort auch hinkommen können.
Der Roboter ist abstrakt betrachtet schlicht ein Kasten, der über zwei Räder als Differentialantrieb gefahren wird. Komplexe Bahnkurven wird er nicht fahren. Das komplexeste ist ein durch drei Punkte definierter Kreisbogen. Der Rest ist geradeaus fahren und auf der Stelle drehen.
Die Frage ist nun, wie sollte der Sensor platziert werden und wie sieht dann die Implementierung eines entsprechenden Kalman Filters aus, um den Drift zu minimieren?
Ich sage meinen Dank.
Viele Grüße,
Hendrik
Lesezeichen