ROCKETRY FRANCE
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Le deal à ne pas rater :
Cdiscount : -30€ dès 300€ d’achat sur une sélection Apple
Voir le deal

étude du MPU6050 avec mon ARDUINO Uno

2 participants

Aller en bas

étude du MPU6050 avec mon ARDUINO Uno Empty étude du MPU6050 avec mon ARDUINO Uno

Message par lem75pat Jeu 26 Aoû - 16:26

Bonjour

Déjà ce capteur (accélération triaxes, vitesse rotation triaxes, température) demande ces librairies
Wire.h (www.arduino.cc/en/reference/wire)
Adafruit_MPU6050.h (github.com/adafruit/Adafruit_MPU6050)
Adafruit_Sensor.h (github.com/adafruit/Adafruit_Sensor)
et enfin github.com/adafruit/Adafruit_BusIO

Les instructions de départ sont :
resultat = mpu.begin(0x68); 0x69 avant
mpu.setAccelerometerRange(MPU6050_RANGE_16_G);
mpu.setGyroRange(MPU6050_RANGE_250_DEG);
mpu.setFilterBandwidth(MPU6050_BAND_21_HZ);

Celles de lecture sont :
sensors_event_t a, g, temp;
mpu.getEvent(&a, &g, &temp); 3.5 ms

Serial.print(a.acceleration.x);
Serial.print(a.acceleration.y);
Serial.print(a.acceleration.z);

Serial.print(g.gyro.x);
Serial.print(g.gyro.y);
Serial.print(g.gyro.z);

Serial.print(temp.temperature);

Ce temps a été mesuré à l'oscilloscope et avec les instructions
const int ledPin = 13; LED connected to digital pin 13

pinMode(ledPin, OUTPUT);
digitalWrite(ledPin, LOW); turn the LED off by making the voltage LOW

digitalWrite(ledPin, HIGH);
sensors_event_t a, g, temp;
mpu.getEvent(&a, &g, &temp); 3.5 ms
digitalWrite(ledPin, LOW);

Cordialement
lem75pat
lem75pat

Messages : 783
Date d'inscription : 08/04/2016
Localisation : Paris

Revenir en haut Aller en bas

étude du MPU6050 avec mon ARDUINO Uno Empty Re: étude du MPU6050 avec mon ARDUINO Uno

Message par lem75pat Sam 28 Aoû - 13:27

programme MPU6050

www.aranacorp.com/fr/utilisation-dun-module-mpu6050-avec-arduino/

SDA à la broche A4
SCL à la broche A5
VCC à la broche 5V
GND à la broche GND

exemple programme MPU6050

Libraries
Wire.h www.arduino.cc/en/reference/wire
Adafruit_MPU6050.h github.com/adafruit/Adafruit_MPU6050
Adafruit_Sensor.h github.com/adafruit/Adafruit_Sensor
github.com/adafruit/Adafruit_BusIO

Objects
Adafruit_MPU6050 mpu;

int   resultat;

void setup()
{
Init Serial USB
  Serial.begin(9600);
  Serial.println(F("Initialize System"));
resultat = mpu.begin(0x68);   0x69 avant
if (!resultat)
{ Change address if needed
    Serial.print("Failed to find MPU6050 chip   status = ");
        Serial.println(resultat);
  while (1) {
      delay(100); 10
    }
  }
  Serial.println(resultat);
  delay(2000);
  mpu.setAccelerometerRange(MPU6050_RANGE_16_G);
  mpu.setGyroRange(MPU6050_RANGE_250_DEG);
  mpu.setFilterBandwidth(MPU6050_BAND_21_HZ);
}

void readMPU( )
{
function readMPU
  Read acceleromter data
  sensors_event_t a, g, temp;
  mpu.getEvent(&a, &g, &temp);

  Print out the values
  Serial.print("Acceleration X: ");
  Serial.print(a.acceleration.x);
  Serial.print(", Y: ");
  Serial.print(a.acceleration.y);
  Serial.print(", Z: ");
  Serial.print(a.acceleration.z);
  Serial.println(" m/s^2");

  Serial.print("Rotation X: ");
  Serial.print(g.gyro.x);
  Serial.print(", Y: ");
  Serial.print(g.gyro.y);
  Serial.print(", Z: ");
  Serial.print(g.gyro.z);
  Serial.println(" rad/s");

  Serial.print("Temperature: ");
  Serial.print(temp.temperature);
  Serial.println("°C");
}

void loop()
{
  readMPU();
  delay(500); 100
}
lem75pat
lem75pat

Messages : 783
Date d'inscription : 08/04/2016
Localisation : Paris

Revenir en haut Aller en bas

étude du MPU6050 avec mon ARDUINO Uno Empty Re: étude du MPU6050 avec mon ARDUINO Uno

Message par bdureau Sam 28 Aoû - 18:46

c'est celui que j'utilise dans la premiere version de mon gimbal. Cependant depuis j'ai touvé le BNo080 qui est becoup plus facile à utiliser
bdureau
bdureau

Messages : 5027
Date d'inscription : 28/03/2016
Age : 52
Localisation : 92150 Suresnes (Région parisienne)

http://rocket.payload.free.fr/

Revenir en haut Aller en bas

étude du MPU6050 avec mon ARDUINO Uno Empty Re: étude du MPU6050 avec mon ARDUINO Uno

Message par lem75pat Dim 29 Aoû - 13:31

Reçu je m'en souviens parfaitement
Pour l'instant je suis ce que Saint Quentin Radio vend
lem75pat
lem75pat

Messages : 783
Date d'inscription : 08/04/2016
Localisation : Paris

Revenir en haut Aller en bas

étude du MPU6050 avec mon ARDUINO Uno Empty Re: étude du MPU6050 avec mon ARDUINO Uno

Message par lem75pat Mer 22 Sep - 16:39

Bonjour

Aujourd'hui j'ai avançé sur mon capteur MPU6050

Commençons par posé sur la table, côté composants au dessus, les bornes vers l'avant
Il est affiché pratiquement X=0 Y=0 Z=+G (G = 9.81 m/s²)

Je le mets debout côté composants sur la gauche
Cela donne X=0 Y=+G Z=0

Je continue côté composants sur la droite
Cela donne X=0 Y=-G Z=0

Côté composants vers l'avant
X=-G Y=0 Z=0

Côté composants vers l'arrière
X=+G Y=0 Z=0

Et enfin retourné
X=0 Y=0 Z=-G

Je le tourne posé sur la table, la vitesse de rotation selon axe Z devient non nulle
lem75pat
lem75pat

Messages : 783
Date d'inscription : 08/04/2016
Localisation : Paris

Revenir en haut Aller en bas

étude du MPU6050 avec mon ARDUINO Uno Empty Re: étude du MPU6050 avec mon ARDUINO Uno

Message par bdureau Mer 22 Sep - 19:24

Patrick
Je pense qu'il faut que tu montres les photos du capteur pour que tous comprennent bien. Il y a egalement un petit dessin dessus qui permet de montrer les axes.
C'est le premier capteur que j'ai utilisé dans mon gimbole et c'est celui dont je me sert pour faire l'enregistrement de mes vols de maniere à faire ensuite un replay. C'est un capteur courement utilisé dans les drones pour avoir leur position dans l'espace.
C'est cool que tu t'y mettes bientot tu pourras modeliser et debugger mon gimbal Very Happy Very Happy Very Happy Very Happy
bdureau
bdureau

Messages : 5027
Date d'inscription : 28/03/2016
Age : 52
Localisation : 92150 Suresnes (Région parisienne)

http://rocket.payload.free.fr/

Antoine aime ce message

Revenir en haut Aller en bas

étude du MPU6050 avec mon ARDUINO Uno Empty Re: étude du MPU6050 avec mon ARDUINO Uno

Message par lem75pat Jeu 23 Sep - 11:24

Oui tout à fait il faut un dessin/photo
mais je ne peux pas en rajouter là sur le forum, ça coince pour moi (plastic bertrand ?)


Ton gimbal/gimbole oui on va faire

Je suis pas mal pris, entre autres par le mpu6050
Dans le datasheet correspondant, il y a un dessin pour se repérer/référencer

Mais déjà, imaginons que l'on joue aux cartes
et que moi assis à une table, je pose l'as de pique sur la table
De ce fait je vois cette carte posée ainsi que l'as de pique
C'est la première qui donne Z = +G
Je la reléve et l'as de pique regarde vers la droite (ou est visible de la droite)
Y = -G
Idem mais l'as de pique regarde vers la gauche
Y = +G
L'as de pique regarde vers l'arrière (ou plutot me regarde, et inversement)
X = +G
L'as de pique regarde vers l'avant (ou vers mon voisin d'en face)
X = -G
L'as de pique contre la table (ou si on précise, contre la surface de la table)
Z = -G

Les indications sur X Y Z, je les ai eus avec mon ARDUINO Uno qui interroge cycliquement le MPU6050
lem75pat
lem75pat

Messages : 783
Date d'inscription : 08/04/2016
Localisation : Paris

Revenir en haut Aller en bas

étude du MPU6050 avec mon ARDUINO Uno Empty Re: étude du MPU6050 avec mon ARDUINO Uno

Message par lem75pat Jeu 23 Sep - 17:20

Bonsoir

Déjà au sujet de 'côté composants' et 'as de pique', il y a un rectificatif

Quand l'as de pique regarde vers l'avant (ou vers mon voisin d'en face)
nous avons en fait X = +G

Quand l'as de pique regarde vers l'arrière (ou plutot me regarde, et inversement)
nous avons X = -G

Il y a eu inversion avant arrière et c'est vrai que c'est mieux de parler avec des cartes

Oui sur le capteur, il est précisé les directions de X et Y

Cet après midi, avec le plateau tournant au sol du magasin réception dans la société
j'ai pu faire des manipulations avec ARDUINO & MPU6050 & SDcard

Je précise que ce plateau de diamètre 150cm effectue un tour tous les six secondes, donnant :
1.047 rd/s (que je retrouve bien sur l'axe rotation Z avec accélération Z = G)
0.412 m/s² (demi rayon) et 0.822 m/s² (rayon) que je retrouve bien en accélération Y

La formule pour l'accélération centripète (centrifuge) est égale à rayon * oméga²

J'ai aussi constaté que ce capteur triaxes est sensible
lem75pat
lem75pat

Messages : 783
Date d'inscription : 08/04/2016
Localisation : Paris

Revenir en haut Aller en bas

étude du MPU6050 avec mon ARDUINO Uno Empty Re: étude du MPU6050 avec mon ARDUINO Uno

Message par lem75pat Sam 25 Sep - 11:29


Bonjour

Par 'sensible' je veux dire que l'on se 'retrouve' vite avec une partie de notre pesanteur sur les axes X et Y
en accélération

La pesanteur est sur l'axe Z
Il faut le capteur bien 'à plat' ce qui n'est pas évident
lem75pat
lem75pat

Messages : 783
Date d'inscription : 08/04/2016
Localisation : Paris

Revenir en haut Aller en bas

étude du MPU6050 avec mon ARDUINO Uno Empty Re: étude du MPU6050 avec mon ARDUINO Uno

Message par lem75pat Sam 25 Sep - 11:30

Ah oui, les manipulations avec le plateau tournant ont intéressés les camarades de la société
Je les en ai remerciés
lem75pat
lem75pat

Messages : 783
Date d'inscription : 08/04/2016
Localisation : Paris

Revenir en haut Aller en bas

étude du MPU6050 avec mon ARDUINO Uno Empty Re: étude du MPU6050 avec mon ARDUINO Uno

Message par lem75pat Mer 29 Sep - 11:28


Bonjour

Pour mon capteur MPU6050, que j'ai posé bien à plat fixe sur la table, j'ai ceci :
accélérations X Y Z 0.4 -0.02 9.9
vitesse de rotation X Y Z -0.11 0.02 0.02
Hormis la pesanteur sur Z, il y a (je vois) des offsets

J'ai aussi la configuration par défaut utilisée par les fonctions
range16G (choix possibles : 2G 4G 8G 16G, avec G = 9.81 m/s²)
range250DEG (choix possibles : 250 500 1000 2000 degrés/seconde)
band21Hz (choix possibles : 5 10 21 44 94 184 260 Hz)
Avec aussi choix possibles : 1.25 5 20 40 Hz pour le Cycle Rate
lem75pat
lem75pat

Messages : 783
Date d'inscription : 08/04/2016
Localisation : Paris

Revenir en haut Aller en bas

étude du MPU6050 avec mon ARDUINO Uno Empty Re: étude du MPU6050 avec mon ARDUINO Uno

Message par lem75pat Ven 8 Oct - 17:08

Bonjour

J'ai adapté mon programme ARDUINO UNo avec MPU6050 et interface SDCard pour qu'il fasse
des enregistrements dans fichiers toutes les minutes, à raison de 0.1" par séries de mesures
Soit 600 séries enregistrées par fichier

J'ai aussi rajouté le calcul des moyennes par minute et passé de x1000 à x10000
en ne retenant que la partie entière des valeurs dans les fichiers

Je plaque le capteur contre la table
J'obtiens au bout d'un quart d'heure (15 files) des moyennes pratiquement stables mais
avec accélérationX accélérationY qui varient beaucoup
lem75pat
lem75pat

Messages : 783
Date d'inscription : 08/04/2016
Localisation : Paris

BENJAMIN59 aime ce message

Revenir en haut Aller en bas

étude du MPU6050 avec mon ARDUINO Uno Empty Re: étude du MPU6050 avec mon ARDUINO Uno

Message par bdureau Sam 9 Oct - 18:06

lem75pat a écrit:Bonjour

J'ai adapté mon programme ARDUINO UNo avec MPU6050 et interface SDCard pour qu'il fasse
des enregistrements dans fichiers toutes les minutes, à raison de 0.1" par séries de mesures
Soit 600 séries enregistrées par fichier

J'ai aussi rajouté le calcul des moyennes par minute et passé de x1000 à x10000
en ne retenant que la partie entière des valeurs dans les fichiers

Je plaque le capteur contre la table
J'obtiens au bout d'un quart d'heure (15 files) des moyennes pratiquement stables mais
avec accélérationX accélérationY qui varient beaucoup
C'est pour ça que je suis passé au bno055 qui est beaucoup plus stable
bdureau
bdureau

Messages : 5027
Date d'inscription : 28/03/2016
Age : 52
Localisation : 92150 Suresnes (Région parisienne)

http://rocket.payload.free.fr/

Revenir en haut Aller en bas

étude du MPU6050 avec mon ARDUINO Uno Empty Re: étude du MPU6050 avec mon ARDUINO Uno

Message par lem75pat Mer 20 Oct - 17:17

Bonjour

Avec mon ARDUINO Uno et un programmme faisant 6000 mesures sur MPU6050
(chaque mesure tous les 10ms donnant une minute au total)
j'ai pu déterminer moyenne et écart type
Mon programme fait aussi les calculs de statistiques requis (espérance ordres 1 & 2)

Les moyennes en X Y Z donnent :
0.22 -0.15 9.89 m/s²
et -0.11 0.018 0.017 rd/s

et pour les écarts types :
0.053 0.020 0.054 m/s²
et 0.0004 0.0005 0.0004 rd/s

Les variations observées s'étalent sur +-3 écart type autour des moyennes

Cela me donne donc les valeurs au repos,
qui devront être mémorisées pour être soustraites lors des mesures suivantes
lem75pat
lem75pat

Messages : 783
Date d'inscription : 08/04/2016
Localisation : Paris

Revenir en haut Aller en bas

étude du MPU6050 avec mon ARDUINO Uno Empty Re: étude du MPU6050 avec mon ARDUINO Uno

Message par bdureau Mer 20 Oct - 20:34

pour ma part j'avais remarqué une derive dans le temps
bdureau
bdureau

Messages : 5027
Date d'inscription : 28/03/2016
Age : 52
Localisation : 92150 Suresnes (Région parisienne)

http://rocket.payload.free.fr/

Revenir en haut Aller en bas

étude du MPU6050 avec mon ARDUINO Uno Empty Re: étude du MPU6050 avec mon ARDUINO Uno

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum