Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Processus de fabrication

Démarrage avec un Capteur de Mouvement IMU 6-DOF (MPU-6050)

Composants et Fournitures

Composant Description Qté
Arduino UNO 1
Module IMU MPU-6050 (6 axes) Accéléromètre 3 axes + Gyroscope 3 axes + DMP 1

À Propos du Projet

Le MPU-6050 combine accéléromètre et gyroscope sur une même puce avec un processeur de mouvement numérique (DMP) exécutant des algorithmes MotionFusion 6 axes. Idéal pour smartphones, tablettes, wearables.

Communication : Bus I2C (SDA → A4, SCL → A5, VCC → 5V ou 3,3V selon module, GND → GND, INT → Pin 2).

Installation des Bibliothèques

  1. Télécharger MPU6050.zip et I2Cdev.zip.
  2. Extraire et copier les dossiers dans Arduino/libraries/.
  3. Redémarrer l'IDE Arduino.

Test avec l'Exemple DMP

  1. Ouvrir Fichier > Exemples > MPU6050 > MPU6050_DMP6.
  2. Inclure I2Cdev.h et MPU6050_6Axis_MotionApps20.h.
  3. Compiler et téléverser.
  4. Ouvrir le Moniteur Série à 115200 bauds.
  5. Envoyer un caractère pour lancer la démo DMP.

Le DMP (Digital Motion Processing) fusionne accéléromètre et gyroscope pour donner Yaw, Pitch, Roll précis.

Comprendre l'I2C

Bus 2 fils (SDA données, SCL horloge) + masse. Multi-maître, adressage 7 bits. Arduino = maître, MPU-6050 = esclave.

Code Principal (Extrait MPU6050_DMP6)

#include "I2Cdev.h"
#include "MPU6050_6Axis_MotionApps20.h"
#if I2CDEV_IMPLEMENTATION == I2CDEV_ARDUINO_WIRE
  #include "Wire.h"
#endif

MPU6050 mpu; // AD0 bas = 0x68
#define OUTPUT_READABLE_YAWPITCHROLL
#define LED_PIN 13

// ... variables DMP, FIFO, quaternions, vecteurs ...

void setup() {
  Wire.begin();
  TWBR = 24; // 400 kHz I2C
  Serial.begin(115200);
  while (!Serial);
  mpu.initialize();
  if (mpu.testConnection()) Serial.println("MPU6050 OK");
  else Serial.println("Échec connexion");
  // Offsets gyro/accel (à calibrer)
  mpu.setXGyroOffset(220);
  mpu.setYGyroOffset(76);
  mpu.setZGyroOffset(-85);
  mpu.setZAccelOffset(1788);
  // Initialisation DMP
  if (mpu.dmpInitialize() == 0) {
    mpu.setDMPEnabled(true);
    attachInterrupt(0, dmpDataReady, RISING);
    dmpReady = true;
    packetSize = mpu.dmpGetFIFOPacketSize();
  }
  pinMode(LED_PIN, OUTPUT);
}

void loop() {
  if (!dmpReady) return;
  // Attente interruption ou FIFO
  // Lecture paquet FIFO → quaternions → Yaw/Pitch/Roll
  // Affichage série selon #define
  // Clignotement LED activité
}

Schéma de Câblage

Voir image : MPU-6050 VCC→5V/3.3V, GND→GND, SDA→A4, SCL→A5, INT→Pin 2.

Processus de fabrication

  1. Capteur de suivi de ligne KY‑033 avec Raspberry Pi : Détecteur de porte/lignes simple
  2. Créer une API robuste de température et capteurs sur Raspberry Pi avec le module GY‑91
  3. Contrôler une LED avec un capteur de mouvement PIR sur Raspberry Pi
  4. Maîtriser le GPIO Raspberry Pi : Interfacer un capteur PIR de mouvement sur B+/Modèle 2
  5. Comment connecter, calibrer et programmer le capteur de mouvement PIR HC‑SR501 avec un Raspberry Pi
  6. Démarrage avec TJBot : Construire, Configurer et Contrôler par la Voix Votre Propre Robot IA
  7. Guide Pas à Pas pour Déployer une Passerelle LoRa RAK 831 sur Raspberry Pi 3
  8. Construire une passerelle LoRa avec le module RAK831 sur Raspberry Pi 3 – Guide pas à pas
  9. IA dans l'assurance : Guide pratique de démarrage pour une implémentation réelle