Forum: PC-Programmierung MPU6050 für Bewegungserkennung


von Alexander S. (schokio)


Lesenswert?

Hallo,

ich versuche derzeit mit dem MPU6050 verschiedene Gesten zu erkennen. 
Einmal die Rotation und die Bewegung entlang der Achsen. Die Kombination 
beider Sachen bereitet mir jedoch die meisten Probleme.
Die Sensorwerte auszulesen, skalieren usw. war bisher kein Problem; 
Diese Werte richtig zu verwenden jedoch schon.

Folgende Ansätze für die Rotation hatte ich bereits schon probiert, 
jedoch endeten alle im selben Misserfolg:
- Rotation/Neigung anhang einer Winkelberechnung zu ermitteln
- Neutralposition (Acceleration auf z-Achse mit ungefähr 9,81) und mit 
Hilfe des Gyroskopes erkennen in welche Richtung man rotiert, danach 
wieder in die Neutralposition zu gehen, um weitere Rotationen zu 
erkennen
- Neigung anhand des Wechsels der Beschleunigung (z sinkt, x steigt)

Verbinde ich jedoch nun die Ansätze mit einer Beschleunigungserkennung 
entlang bspw. der x-Achse tritt folgendes Problem auf:
Bspw: Eine Bewegung nach rechts wird erkannt, wenn z ungefähr 9,81 
beträgt und x einen steigenden Wert hat
Funktioniert soweit, aber: Neige ich den Sensor, steigt mein 
Accelerator-Sensorwert für die X-Achse und der für die z-Achse sinkt, 
dieser jedoch nicht schnell genug. Dies interpretiert mein Programm 
ebenso als Rechtsbewegung, da halt Z weiterhin nahe der 9,81 ist und X 
ansteigt.

Sieht jemand eine Möglichkeit dies zu unterbinden, oder hätte einen 
Vorschläg wie ich die Sensorwerte anders interpretieren könnte?

Würde mich sehr freuen!


Grüße,
Alexander

von Irgend W. (Firma: egal) (irgendwer)


Lesenswert?

Alexander S. schrieb:
> Sieht jemand eine Möglichkeit dies zu unterbinden, oder hätte einen
> Vorschläg wie ich die Sensorwerte anders interpretieren könnte?

Das ganze hört sich irgendwie nach Sensor-Fusion mittels Kalman-Filter 
an:
Do als Einstiegdie Wiki und danach gibt es zur vertiefung noch tausende 
Artikel im iNet zu dem Thema "Sensor Fusion Kalman":

https://de.wikipedia.org/wiki/Kalman-Filter

z.B.: https://reposit.haw-hamburg.de/handle/20.500.12738/8460

von Alexander S. (schokio)


Lesenswert?

Irgend W. schrieb:
> Das ganze hört sich irgendwie nach Sensor-Fusion mittels Kalman-Filter
> an:
Ist dies nicht ein kleiner Overkill, wenn jegendlich Neigungen und 
lineare Bewegungen erkannt werden wollen?
Sowas wie hier im Video gezeigt ist, will ich nicht hinaus 
https://www.youtube.com/watch?v=qmd6CVrlHOM

Bzw. ist die Kombination mit Hilfe des Kalman-Filters nicht nur 
hilfreich, wenn ich genaue Pitch, Yaw und Roll Winkel haben will?

: Bearbeitet durch User
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.