Ich arbeite gerade an einen Extended Kalman Filter (EKF). Das gesamte Projekt sieht so aus, dass ich von einem MEMS-Chip mit Gyroscopen und Acceleratoren Daten bekomme, diese an Matlab schicke und dann mit Hilfe eines EKF und Quaternionen die Orientierung des Chips bzw. irgendwann eine kurze Navigation ermögliche.
Allerdings stecke ich gerade ein bisschen in der Sackgasse, habs nicht verstanden oder sehe den Wald vor lauter Bäumen nicht mehr
Um mich langsam an den EKF ranzutasten, simuliere ich erstmal nur die Daten von einem Gyroskop in X Richtung. Er zeigt mir also die Rollgeschwindigkeit. Beschleunigungsmesser, lasse ich erstmal komplett weg. Ziel es eine Sekunde lang mit 45 Grad/s zu drehen. Also muss roll = 45 sein und yaw und pitch = 0;
Die allgemeine Frage: Welche Zustände nehme ich für den Zustandsvektor?
Ich habe Beispiele gesehen, in den alle Zustände, also Messwerte, Berechnungswerte und Ausgangswerte übernommen werden z.B.
[1] http://campar.in.tum.de/Chair/KalmanFilter
ab 'Extended Kalman Filter for position and orientation tracking'
Die Gleichungen unter Jacobian H, sind deren Ableitungen.
Irgendwo im Aufbau des Filters liegt ein Fehler. Zum Beispiel werden die Messwerte gx, gy, gz nie aktualisiert. Ich vermute, dass meine Messfunktion falsch ist. Obwohl in Beispiel [2] die Messwerte mithilfe ihrer nichtlinearen Zusammenhänge zu den Zuständen beschrieben werden.
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.