Cómo usar el acelerómetro MPU6050 y el giroscopio con Arduino

How to Use the MPU6050 Accelerometer and Gyroscope with Arduino

El MPU6050 es un sensor versátil y asequible que combina un acelerómetro de 3 ejes y un giroscopio de 3 ejes en un solo paquete. Se comunica a través de la interfaz I2C y es perfecto para el seguimiento de movimiento, el equilibrio de robots y controles basados ​​en gestos. Este tutorial le mostrará cómo interactuar el MPU6050 con un Arduino.

Lo que necesitarás

  1. Módulo MPU6050
  2. Arduino Board (por ejemplo, Uno, Mega, Nano)
  3. Tablero de circuitos
  4. Cables de jersey
  5. Una computadora con el Arduino IDE instalado

Paso 1: Cableado el MPU6050 a Arduino

El MPU6050 usa el protocolo I2C, que requiere solo dos líneas de datos: SDA (datos) y SCL (reloj). Estas son las conexiones típicas:

Pasador MPU6050 Arduino uno pin
VCC 5V
Gnd Gnd
SDA A4 (SDA)
SCL A5 (SCL)

Nota: Verifique el pinout I2C de su tablero Arduino si está utilizando un modelo diferente.

Paso 2: Instale la biblioteca MPU6050

Para que sea más fácil interactuar con el MPU6050, usaremos la biblioteca "MPU6050".

  1. Abra el IDE Arduino.
  2. Ir a Bosquejo > Incluir biblioteca > Administrar bibliotecas.
  3. En el Administrador de la Biblioteca, busque "MPU6050 de Electronic Cats".
  4. Seleccione la biblioteca y haga clic Instalar.

Paso 3: cargar el código

Aquí hay un ejemplo básico para leer datos de acelerómetro y giroscopio de la MPU6050:

#include <Wire.h>
#include <MPU6050.h>

MPU6050 mpu;

void setup() {
  Serial.begin(9600);
  Wire.begin();

  Serial.println("Initializing MPU6050...");
  if (!mpu.begin()) {
    Serial.println("Failed to find MPU6050 sensor!");
    while (1) {
      delay(10);
    }
  }
  Serial.println("MPU6050 Initialized.");
}

void loop() {
  mpu.update();

  Serial.print("Accel X: ");
  Serial.print(mpu.getAccX());
  Serial.print(" | Accel Y: ");
  Serial.print(mpu.getAccY());
  Serial.print(" | Accel Z: ");
  Serial.println(mpu.getAccZ());

  Serial.print("Gyro X: ");
  Serial.print(mpu.getGyroX());
  Serial.print(" | Gyro Y: ");
  Serial.print(mpu.getGyroY());
  Serial.print(" | Gyro Z: ");
  Serial.println(mpu.getGyroZ());

  delay(500);  // Update every 500ms
}

Paso 4: prueba la configuración

  1. Conecte su Arduino a la computadora con un cable USB.
  2. Abra el IDE Arduino y seleccione el correcto Junta y Puerto desde Herramientas menú.
  3. Cargar el código haciendo clic en el Subir botón.
  4. Abra el monitor en serie (Herramientas > Monitor en serie) y establecer la tasa de baudios en 9600.
  5. Debería ver las lecturas de acelerómetro en vivo y giroscopio que se muestran.

Comprender los datos

  • Acelerómetro (Accel X, Y, Z): Mide la aceleración lineal en tres ejes.
  • Giroscopio (Gyro X, Y, Z): Mide la velocidad angular (velocidad de rotación) alrededor de tres ejes.

Solución de problemas

  • Sensor no detectado: Compruebe dos veces el cableado y asegúrese de que las líneas I2C estén correctamente conectadas.
  • No hay salida en el monitor en serie: Verifique que la tasa de baudios coincida con la configuración del código (9600).
  • Lecturas incorrectas: Mantenga el nivel del sensor durante la inicialización para evitar la deriva.

Aplicaciones de MPU6050

  1. Balancing Robots
  2. Reconocimiento de gestos
  3. Seguimiento de movimiento para VR/AR
  4. Dispositivos de seguimiento de fitness

Conclusión

¡Felicidades! Has interactuado con éxito el MPU6050 con un Arduino y lee los datos de movimiento en tiempo real. Este sensor es increíblemente versátil y puede usarse en innumerables proyectos. ¡Intente integrar el MPU6050 en su próximo proyecto basado en la movimiento y desatar su potencial!

Escribir un comentario

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.