Beschleunigungssensor Drift schätzen

#4821441
Lesenswert?

Hallo Leute,

ich messe meine Beschleunigung und Winkel. Bei meinem 
Beschleunigungssensor habe ich immer einen Drift in 
X-Richtung(Fahrzeuglängsachse). Der Drift ist immer da aber immer 
unbekannt hoch und wenn ich mit dem Fahrzeug am Berg stehe und die 
Beschleunigung in X-Richtung 0 (z.B ich stehe) ist soll er mir auch in 
X-Richtung 0 ausgeben und nicht noch den Anteil von der 
Erdbeschleunigung.

Jetzt hab ich mich natürlich erkundigt und bin auf den Kalman Filter 
gestoßen. Das wäre auch schon meine erste Frage bin ich damit richtig? 
kann ich sowas überhaupt schätzen? Wenn ich am Berg stehe ist ja meine 
Winkelbeschleunigung 0, Geschwindigkeit 0 und meine Beschleunigung.

Danke schonmal :)

Grüße
Gast #4826121
Lesenswert?

Matthias H. schrieb:
> ich messe meine Beschleunigung und Winkel.

Winkel oder Winkelgeschwindigkeit?

Matthias H. schrieb:
> Wenn ich am Berg stehe ist ja meine
> Winkelbeschleunigung 0, Geschwindigkeit 0 und meine Beschleunigung.

Der Beschleunigungssensor misst im Stillstand die Erdbeschleunigung. Man 
kann somit die Lage berechnen, wenn man 2 Vektoren gegeben hat. In 
deinem Fall ist einer dieser Vektoren der g-Vektor. Ein Magnetometer 
könnte als zweiter Vektor dienen. Wenn du wirklich, wie von dir 
geschrieben, schon Winkel misst => umso besser : siehe nächster Punkt

Matthias H. schrieb:
> Der Drift ist immer da aber immer
> unbekannt hoch und wenn ich mit dem Fahrzeug am Berg stehe und die
> Beschleunigung in X-Richtung 0 (z.B ich stehe) ist soll er mir auch in
> X-Richtung 0 ausgeben und nicht noch den Anteil von der
> Erdbeschleunigung.

Im Grunde hast du 2 Koordinatensysteme: Fahrzeug und "Erde".
Mit der bekannten Lage könntest du deine in Fahrzeugkoordinaten 
gemessenen Werte ins Erdkoordinatensystem umrechnen. Beziehungsweise den 
g-Vektor herausrechnen...

Matthias H. schrieb:
> Jetzt hab ich mich natürlich erkundigt und bin auf den Kalman Filter
> gestoßen.

Ja, kann man damit machen. Aber nur der Kalman allein nützt auch nix. 
Die Umrechnung der Koordinatensystem ergibt außerdem Nichtlinearitäten 
=> also siehe EKF, UKF, Partikel Filter,...
Gast #4826140
Lesenswert?

Matthias H. schrieb:
> ich messe meine Beschleunigung und Winkel. Bei meinem
> Beschleunigungssensor habe ich immer einen Drift in
> X-Richtung(Fahrzeuglängsachse). Der Drift ist immer da aber immer
> unbekannt hoch und wenn ich mit dem Fahrzeug am Berg stehe und die
> Beschleunigung in X-Richtung 0 (z.B ich stehe) ist soll er mir auch in
> X-Richtung 0 ausgeben und nicht noch den Anteil von der
> Erdbeschleunigung.

Geht ganz einfach: Doppler-Radar am Fahrzeug schräg nach unten zur 
Messung der Fahrzeuggeschwindigkeit über dem Untergrund. Geschwindigkeit 
nach der Zeit ableiten und schon hat man die Beschleunigung.
Gast #4826143
Lesenswert?

Matthias H. schrieb:
> Der Drift ist immer da aber immer unbekannt hoch ...

Was meinst du mit "Der Drift ..:"?

> ... wenn ich mit dem Fahrzeug am Berg stehe und die Beschleunigung
> in X-Richtung 0 (z.B ich stehe) ist soll er mir auch in
> X-Richtung 0 ausgeben und nicht noch den Anteil von der
> Erdbeschleunigung.

Wie denn nun?
Wenn du am Berg stehst, ist die X-Achse (vermutlich) nicht horizontal 
ausgerichtet, sondern bergab bzw. bergauf. Der Beschleunigungssensor 
kann nicht zwischen dynamischer Beschleunigung und Schwerebeschleunigung 
unterscheiden. Natürlich taucht dann die Erdbeschleunigung mit dem Sinus 
der Neigung als X-Wert auf.

Bei Verwendung des Erdmagnetfeldes als Bezugssystem, musst du erstmal 
die örtliche Inklination berücksichtigen. Es gibt als Modell fürs 
Erdmagnetfeld z.B. das WMM, das aber nichts von lokalen Effekten weiss.
#4826669
Lesenswert?

Okay,

Also was ich möchte ist, dass sobald ich stehe egal ob am Berg oder 
nicht, die Beschleunigung in X-Richtung 0 ist. Damit, wenn ich die 
Beschleunigung integriere, auch meine echte Geschwindigkeit bekomme und 
meine "echte" Beschleunigung in X-Richtung(Längsrichtung) regeln kann.

Ich hab die Rotationsmatritzen aber damit funktioniert es nicht ganz und 
deswegen dachte ich, ich könnte mit dem Kalman Filter schätzen wann 
meine Beschleunigung in X-Richtung 0 sein muss.


Ich hab meinen "Drift" mal angehängt. Die Zeit ist in Sekunden. Also 
eigentlich nicht so arg groß.
Angehängte Dateien:
Gast #4826692
Lesenswert?

Matthias H. schrieb:
> Also was ich möchte ist, dass sobald ich stehe egal ob am Berg oder
> nicht, die Beschleunigung in X-Richtung 0 ist.

Du kannst soviel mögen wie du willst, die Beschleunigung wird sich nicht 
darum scheren. Stehst du am Berg, ist die Beschleunigung in Richtung der 
Fahrzeuglängsachse nicht 0, ob du willst oder nicht. Daher rollt dein 
Fahrzeuge ja auch weg, wenn es nicht gebremst wird.

MfG Klaus
#4827210
Lesenswert?

Ok, ok :D.

Wenn ich hier grad schon ein Fachpublikum habe, kann ich euch fragen wie 
ihr die Fahrzeugmasse schätzen würdet? ich hab da mal wieder an den 
Kalman Filter gedacht.

Ich brauche für den Kalman Filter zwei Eingänge u und y, was sind das 
für Eingänge??... Ich messe meine Beschleunigung und kann meine Kräfte 
ungefähr bestimmen. Kann ich damit dann schon meine Masse schätzen?






in Simulink hab ich den Block wie im Anhang.

Danke ;):-*
Angehängte Dateien:
#4876585
Lesenswert?

Der Drift entsteht eigentlich meist durch numerische Integration, da die 
Daten des Accelerometers stark verrauscht sind.

Kalman Filter wird für Datenfusionierung von Gyroscope und Accelerometer 
eingesetzt um den Drift von Gyroscope und das Rauschen vom Accelerometer 
zu schätzen.
Gast #4876598
Lesenswert?

Matse H. schrieb:
> Also was ich möchte ist, dass sobald ich stehe egal ob am Berg oder
> nicht, die Beschleunigung in X-Richtung 0 ist.

Nunja, so einfach geht das auch wieder nicht. Wenn du eine konstante 
Geschwindigkeit (z.B. 50km/h) fährst, ist die Beschleunigung in 
Fahrzeugrichtung auch gleich 0.

Ich vermute, dass Du den Stillstand rel. zum Boden nicht so einfach ohne 
Messwerte von sich bewegenden Teilen, (Reifen....) messen kannst. Vll. 
ein Drucksensor nach vorne, der die relative Änderung misst. Solange in 
Bewegung übt der Fahrtwind Druck aus.
#4876627
Lesenswert?

Schreibe mal, was für ein Projekt du betreibst.

Ich habe ein Segway Clone gebaut und bin auch auf das Problem gestoßen.
Kalman erfordert statistische Parameter über die Daten, die vom Gyro- 
und Acc-Sensor kommen. Diese haben mit gefehlt.

Sehr gut funktioniert auch ein Komplementär-Filter, in welchem neben 
einer Reduzierung des Rauschens (Tiefpass) auch das die Drift des Gyro 
(Hochpass) unterdrückt wird.

Ich war mit dem Ergebnis zufrieden.

W.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren