MPU-6050 - Gyroskop und Beschleunigungssensor

MPU-6050 - Gyroskop und Beschleunigungssensor

Wichtig

Gyroskop / Bewegungssensor: Das Gyroskop detektiert die Drehbewegungen bzw. Winkelgeschwindigkeit in °/s um die X-, Y- und Z-Achse. Gemeint ist, wie schnell sich etwas dreht. In Ruhe sollte das Gyroskop Werte nahe 0°/s liefern. Kleine Abweichungen durch Drift sind möglich.

Accelerometer / Beschleunigungssensor: Das Accelerometer misst die Beschleunigung in Richtung der X-, Y- und Z-Achse. In Ruhe zeigt es die Erdbeschleunigung (9,81 m/s²) an, insbesondere auf der Z-Achse, wenn das Modul flach liegt.

  • Drehgeschwindigkeitsmesser (Gyroskop)
  • Messen der Winkelgeschwindigkeit (in Grad pro Sekunde , °/s, rad/s)
  • Beschleunigungssensor (Accelerometer)
  • Messen der Beschleunigung (in Meter pro Sekunde im Quadrat, m/s²)

Der MPU-6050 von TDK InvenSense ist ein IMU-Sensor (Inertial Measurement Unit). Er kombiniert ein 3-Achsen-Gyroskop und einem 3-Achsen-Beschleunigungssensor mit einem digitalen Bewegungsprozessor und einem Temperatursensor auf einem einzigen Chip.

Das MPU-6050-Modul (Modulbezeichnung GY-521) liefert die Winkelgeschwindigkeit und Beschleunigung auf jeweils 3 Achsen. Heutzutage haben alle modernen Smartphones einen vergleichbaren inertialen Bewegungssensor integriert. Der MPU-6050 gehört ebenfalls zu dieser Sensorkategorie und bietet eine vollständige Lösung für ein sechsachsige Bewegungserfassungssystem.

Die integrierten Sensoren basieren auf der MEMS-Technik (Micro-Electro-Mechanical System), deren Daten von einem digitalen Bewegungsprozessor (DMP) verarbeitet werden. Der DMP führt alle komplexen Berechnungen intern durch und macht die Daten über die I2C-Schnittstelle verfügbar.

Für Anwender ist es oft schwierig die Funktionsweise eines solchen Systems zu verstehen. Empfehlenswert ist es, sich mit der Funktionsweise von Gyroskop und dem Beschleunigungssensor separat voneinander zu befassen und die Achsen einzeln zu betrachten.

  • Das Gyroskop misst die Drehgeschwindigkeit eines Objekts um eine Achse. Es wird verwendet, um eine Drehung zu erkennen und Daten zur Orientierung zu sammeln.
  • Das Accelerometer misst die Beschleunigung und lineare Bewegungen (einschließlich der Schwerkraft). Es wird verwendet, um Neigungen zu erkennen und bewegungsbezogene Daten zu sammeln.

MPU-6050 jetzt bestellen

Pinbelegung

MPU-6050 - Gyroskop und Beschleunigungssensor

Die Kommunikation zwischen dem MPU-6050-Modul und einem Mikrocontroller erfolgt über die I2C-Schnittstelle. Benötigt wird in der Regel eine Bibliothek, um die Sensordaten bequem zu lesen.

  • VCC: Spannung zwischen 3 bis 5 Volt der Stromversorgung
  • GND: Ground bzw. Masse der Stromversorgung
  • SCL: Taktleitung vom Mikrocontroller für die I2C-Kommunikation
  • SDA: Datenleitung vom Mikrocontroller für die I2C-Kommunikation
  • XDA: Datenleitung für einen externen I2C-Sensor (optional)
  • XCL: Taktleitung für einen externen I2C-Sensor (optional)
  • AD0: Adressauswahl (Address Select) als I2C-Slave (optional)
  • INT: Digitaler Ausgang für eine Interrupt-Steuerung, um einem Mikrocontroller anzuzeigen, dass Daten verfügbar sind (optional).

Hinweis: Standardmäßig hat das MPU-6050-Modul die I2C-Adresse 0x68. Wenn man ein weiteres Modul am selben I2C betreiben will, kann man durch die Beschaltung von AD0 die Adresse 0x69 einstellen.

  • 0x68 (Pin AD0 = GND oder unverbunden)
  • 0x69 (Pin AD0 = HIGH)

Ausrichtung und Position

MPU-6050: Ausrichtung und Position

Die Module sind mit der Position der X- und Y-Achse gekennzeichnet. Die Z-Achse steht senkrecht zu den Modulen. Es ist jedoch zu beachten, dass die Ausrichtung der Achsen je nach grundlegender Ausrichtung des Aufbaus variieren kann.

  • In einem typischen dreidimensionalen Koordinatensystem entspricht die X-Achse der horizontalen Achse, die von links nach rechts verläuft, wenn das Objekt flach liegt und sich nicht bewegt.
  • In einem typischen dreidimensionalen Koordinatensystem entspricht die Y-Achse der vertikalen Achse, die von hinten nach vorne verläuft, wenn das Objekt flach liegt und sich nicht bewegt.
  • In einem typischen dreidimensionalen Koordinatensystem entspricht die Z-Achse der Achse, die von unten nach oben verläuft, wenn das Objekt flach liegt und sich nicht bewegt. Das ist die Achse, die senkrecht zur Oberfläche des Sensors steht.

Hinweis: Wenn man das MPU-6050-Modul zum Verbinden mit einem Mikrocontroller befestigt, zum Beispiel auf einem Steckbrett, dann sollte man beachten, dass das Modul nur auf einer Seite eine Steckleiste hat. Dabei besteht die Gefahr, dass es schief steckt. Damit die gemessenen Werte des Beschleunigungssensors richtig interpretiert werden können, sollte man auf eine korrekte Positionierung des MPU-6050-Moduls achten.

Funktionsweise und Anwendungen des Gyroskops

Das Gyroskop im MPU-6050 misst die Winkelgeschwindigkeit in Grad pro Sekunde (°/s) entlang der drei Achsen (X, Y, Z). Es misst die relative Drehbewegung, also wie schnell sich das Objekt um eine Achse dreht.

Wichtig: Das Gyroskop misst keine lineare Geschwindigkeit, sondern die Winkelgeschwindigkeit (°/s), also wie schnell sich etwas um eine bestimmte Achse dreht. Es ist also nicht möglich festzustellen, wie schnell sich ein Objekt geradlinig bewegt, wie bei einem Auto. Die lineare Geschwindigkeit kann nur durch Integration der Beschleunigung geschätzt werden. Das aber nur mit Fehlern (Drift).

Mögliche Anwendungen:

  • Navigation (Richtungsbestimmung)
  • Stabilitätskontrolle
  • Erfassung von Bewegungen bzw. Bewegungserkennung
  • Lagebestimmung
  • Erschütterungssensor

Funktionsweise und Anwendungen des Accelerometers

Der Beschleunigungssensor im MPU-6050 misst, wie stark etwas gedrückt oder gezogen wird. Selbst dann, wenn der Sensor nicht bewegt wird, misst er etwas, weil die Erde mit der Erdanziehungskraft (Schwerkraft = 9,81 m/s²) am Sensor „zieht“. Wenn man das Modul zu einer Seite (X/Y-Achse) kippt, dann zieht die Schwerkraft an dieser Seite mehr, wodurch sich der Wert verändert. Wenn eine Achse stillsteht, bleibt ihr Wert gleich, weil sich nichts verändert, aber die Schwerkraft immer noch wirkt.

Der Beschleunigungssensor misst die Beschleunigung entlang der X-, Y- und Z-Achse, wodurch er Neigungen und Orientierungen relativ zur Erdoberfläche erkennen kann, wenn das Objekt kippt oder sich dreht.

Mögliche Anwendungen:

  • Neigung eines Objekts relativ zur Erdoberfläche
  • Aktivitätstracking
  • Lagebestimmung

Messbereiche

Die Angaben ±2G, ±4G, ±8G und ±16G bei einem Beschleunigungssensor (Accelerometer) beziehen sich auf den Messbereich des Sensors. Das „G“ steht dabei für die Erdbeschleunigung, also 1G ≈ 9,81 m/s².

Die Bedeutung:

  • ±1G: Der Sensor kann Beschleunigungen von -1G bis +1G messen (etwa -9,81 m/s² bis + 9,81 m/s²).
  • ±2G: Der Sensor kann Beschleunigungen von -2G bis +2G messen (etwa -19,62 m/s² bis +19,62 m/s²).
  • ±4G: Der Sensor kann Beschleunigungen von -4G bis +4G messen (etwa -39,24 m/s² bis +39,24 m/s²).
  • ±8G: Der Sensor kann Beschleunigungen von -8G bis +8G messen (etwa -78,48 m/s² bis +78,48 m/s²).
  • ±16G: Der Sensor kann Beschleunigungen von -16G bis +16G messen (etwa -156,96 m/s² bis +156,96 m/s²).

Warum gibt es mehrere Messbereiche?

Ein Sensor mit einstellbarem Bereich erlaubt es, zwischen verschiedenen Empfindlichkeiten zu wählen. Welcher Messbereich der richtige ist, hängt von der Anwendung ab. Hierbei sollte man berücksichtigen, wie stark die Beschleunigung auftritt.

  • Kleiner Messbereich (z.?B. ±2G): Höhere Auflösung und Empfindlichkeit, aber bei großen Beschleunigungen kommt es schneller zur Sättigung. Ein kleinerer Messbereich ist besser für genaue Bewegungsanalysen (z.?B. beim Schrittzähler, Neigungserkennung).
  • Großer Messbereich (z.?B. ±16G): Geringere Auflösung, aber man kann heftigere Bewegungen messen (z.?B. bei einem Crash oder einem Stoß). Ein großer Messbereich ist besser für Anwendungen mit starken Beschleunigungen bei Fahrzeugen oder fliegenden Objekten.

MPU-6050 programmieren

Anwendungen mit MPU-6050 als Beschleunigungssensor

Anwendungen mit MPU-6050 als Gyroskop

Anwendungen mit MPU-6050 als Temperatursensor

Weitere verwandte Themen:

Frag Elektronik-Kompendium.de

Elektronik-Sets für das Hardware-nahe Programmieren

Elektronik-Fibel

Elektronik einfach und leicht verständlich

Die Elektronik-Fibel ist ein Buch über die Grundlagen der Elektronik, Bauelemente, Schaltungstechnik und Digitaltechnik.

Das will ich haben!

Programmieren mit dem Raspberry Pi Pico
Online-Workshop

Programmieren mit dem Raspberry Pi Pico

Gemeinsam mit anderen und unter Anleitung experimentieren? Wir bieten unterschiedliche Online-Workshops zum Raspberry Pi Pico und MicroPython an. Einführung in die Programmierung, Sensoren programmieren und kalibrieren, sowie Internet of Things und Smart Home über WLAN und MQTT.

Online-Workshop buchen

Besuchen Sie unser fast monatlich stattfindendes Online-Meeting PicoTalk und lernen Sie uns kennen. Die Teilnahme ist kostenfrei.

Termine und Newsletter-Anmeldung