MPU6050 und Motor -> Abweichung

Ich betreibe einen MPU 6050 Gyro in der Nähe (15cm Abstand) eines bürstenlosen Motors (11 Volt). Die Daten des Gyro sind korrekt solange der Motor steht. Je mehr Leistung an dem Motor liegt, desto geringer wird der angezeigte Winkel. Bei Volllast ist die der Winkel 0 und entspricht genau der Motorrichtung. Ich vermute also, dass das Magnetfeld des Motors das Erdmagnetfeld überlagert. Viel weiter weg vom Motor möchte ich nicht gehen, da dann die Kabellängen zu weit werden und ich mir andere Störungen einfange. GIbt es eine Möglichkeit den Gyro/Motor abzuschirmen? Oder gibt es Gyros, die weniger empfindlich sind?

Der Gyro ist nicht Magnetfeldempfindlich.
Ich tippe eher auf Vibrationen.
Grüße Uwe

Der MPU 6050 bezieht die Lageinformationen aus dem Erdmagnetfeld - Vibrationen sollten dabei doch keinen Einfluss haben - oder?

Unfassbar!
Du solltest dringenst deine Informationsquellen wechseln.....
Wer weiß, was da sonst noch für Unsinn heraussprudelt.

Danke für Korrektur. Dann versuche ich die Vibrationen zu eliminieren.

Und vielleicht eine geerdete Blechschachtel da drum rum.
Das hält einiges an elektromagnetischen Einflüssen fern.

Fang lieber mit den Beschleunigungsdaten an. Die Empfindlichkeit kann man einstellen. Ich verstehe das so, dass du eigentlich nur die Erdbeschleunigung hast. Wie misst du "den" Winkel?
Schau dir an, wie die Rohdaten zittern und wie du sie bei Bedarf filtern kannst.

Der Sensor ist jetzt auf Gummi gelagert. Trotzdem gleiches Verhalten.

Ich nutze MPU6050_light. Die Grad-Angaben bekomme ich dann per getAngleX[X,Y]
Womit bekomme ich die Einzelwerte bzw. gibt es eine bessere Alternative?

...aber ohne Luftschraube sind Vibrationen geringer und jetzt geht es so einigermaßen.

Keine Ahnung ob besser, aber man kann Datenblatt lesen, die Dinger auch ohne lib (bzw. nur mit Wire.h) auslesen, schauen wie deine lib getAngle realisiert, und generell so tief man kann sich reinarbeiten.

aus Datenblatt

"The MPU-60X0 is the world’s first integrated 6-axis MotionTracking device that combines a 3-axis
gyroscope, 3-axis accelerometer, and a Digital Motion Processor™ (DMP) all in a small 4x4x0.9mm
package. "

Teoretisch muß es funktionieren da Quadricoptersteuerungen auch den MPU verwenden.

Grüße Uwe

Ich bin jetzt etwas weiter gekommen. Eine Lösung könnte der Low Pass Filter sein. Den kann ich im MPU6050.h und bei der Adafruit Variante setzen. Bei MPU6050_light nicht. Bei der MPU6050.h. weiß ich aber nicht wie ich Lageinformationen bekomme. Unterstützt die Bibliothek das nicht oder mache ich etwas falsch?

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.