Go Down

Topic: Accéléromètre ou gyroscope pour un cube ? (Read 5927 times) previous topic - next topic

Christian_R

tu utilises des  matrices 8x8 de type Max7219 ?
Christian

xYwo


tu utilises des  matrices 8x8 de type Max7219 ?

Visiblement oui, c'est celles-ci : https://www.adafruit.com/products/902

Je vais faire le calcule pour la batterie.

patg_



tu utilises des  matrices 8x8 de type Max7219 ?

Visiblement oui, c'est celles-ci : https://www.adafruit.com/products/902


Pas vraiment. C'est pas piloté par un Max7219 mais par un pilote intégré adressable en I2C.
Ca a l'air plutôt sympa et très simple niveau câblage.
Par contre la datasheet n'indique pas le courant max consommé avec toutes les leds allumées à la plus forte luminosité.
Mes Arduineries: http://breizhmakers.over-blog.com/

xYwo

ok merci !
Il y a un ligne : "peak forward current" qui correspond à 150 mA. (datasheet)
C'est pas ça ?

3Sigma


Heu...le gyroscope donne bien une orientation, à partir d'une référence donnée.
L'horizon artificiel et le conservateur de cap d'un avion sont construits à partir d'un gyroscope dans une cage par exemple, et nécessitent un étalonnage avant le décollage. Ils indiquent ensuite l'inclinaison à partir de cette référence sur un ou plusieurs axes.


Oui, en fait le gyroscope mesure les orientations et le gyromètre mesure les vitesses angulaires. Mais par abus de langage, dans le monde qui nous concerne ici, le gyromètre est couramment baptisé gyroscope...
Donc concrètement, quand on trouve sur un site un truc qui est baptisé "gyroscope", en fait c'est quelque chose qui mesure les vitesses angulaires. Conclusion: mieux vaut lire les datasheet avant d'acheter  ;)


Bon bin en fait j'ai vu que l'inclinomètre n'est rien de plus qu'un accéléromètre.


C'est plutôt moins qu'un accéléro. Un truc vendu comme un inclinomètre est la plupart du temps basé sur une masse qui se déplace et ne donne qu'une info de type tout ou rien. Alors que l'accéléro, mesurant la pesanteur, te permettra de calculer l'angle d'orientation.


Le prix d'un acceléro MPU6050 doit être moindre que 12 interupteurs, et ça utilise moins de pins sur l'arduino.


C'est clair que le MPU6050 me semble imbattable pour ce projet. D'ailleurs si quelqu'un connait quelque chose de mieux pour n'importe quel projet qui nécessite un accéléro et/ou un gyro, je suis preneur !

xYwo



C'est clair que le MPU6050 me semble imbattable pour ce projet. D'ailleurs si quelqu'un connait quelque chose de mieux pour n'importe quel projet qui nécessite un accéléro et/ou un gyro, je suis preneur !

Ok merci !

Est ce que 3 V suffisent pour faire marcher une arduino pro mini (3.3V) plus cette matrice de led et cet accéléromètre ?
J'aimerai utiliser une pile 3v.

3Sigma

Il faut regarder les datasheets.
Pour l'Arduino Pro mini, a priori oui.
Pour le MPU6050, ça dépend du module que tu vas choisir. Il faut pouvoir attaquer directement le composant avec la pile, sans passer par un régulateur de tension 5V -> 3.3V, comme on trouve sur certains modules.

nulentout

#22
Jun 15, 2014, 11:58 am Last Edit: Jun 15, 2014, 12:08 pm by nulentout Reason: 1
Coucou les copains,
On voit dans ce sujet à quel point la rigueur de signification des mots est importante quand on aborde des problèmes techniques. A quel point la confusion de langage peut introduire de la fausse interprétation. Avec votre permission, (C'est de la frime puisque vous ne pouvez pas m'interrompre  :) ) je mais m'autoriser ici quelques petites précisions.
Une ACCELERATION nous indique comment change la vitesse.  Encore faut-il préciser si c'est une vitesse linéaire ou une vitesse angulaire qui nous préoccupe.
Un accéléromètre va donc nous fournir une valeur exprimée en degrés par seconde et par seconde pour les rotations, et en mètres par seconde et par seconde que l'on exprime très confusément en mètres par secondes au carré … ce qui physiquement ne veut strictement rien dire.
La vitesse nous indique de combien change la position par rapport au temps, que cette position soit linéaire ou angulaire. Elle s'exprime en mètres par seconde ou en degrés par secondes.
L'orientation … ne doit pas être confondue avec confondue avec un angle.  C'est bien un (des) angle, mais par rapport à une référence. Par exemple, dans la famille des orientations on peut citer l'azimut, le gisement etc.
Dans ces deux exemples, on référence l'orientation par rapport à une "direction zéro" spécifique. Pour l'azimuth, c'est l'angle entre le nord magnétique local et l'axe vers lequel je regarde. L'angle est mesuré dans un plan horizontal local. Le gisement, c'est l'angle que fait ma visée avec l'axe longitudinal du mobile dans lequel je me trouve. Par exemple dans un avion, ou un navire c'est l'angle mesuré entre ma cible et l'avant de mon avion ou navire.
Un accéléromètre ne mesure pas spécifiquement l'accélération terrestre.  Posez-le sur la table, il va indiquer zéro. Si vous voulez mesurer l'accélération terrestre, il faut le laisser tomber à la verticale, et qu'il soit correctement orienté.
L'inclinomètre, fondamentalement est un simple balancier amorti pour atténuer les oscillations. Sur un voilier par exemple, en général seul le roulis justifie un tel instrument … encore que le marin aura vite fait de regarder l'inclinaison du mât par rapport à l'horizon matérialisé par la mer. Si l'on veut une plateforme orientée par rapport à la verticale, c'est alors deux inclinaisons croisées qu'il faut traiter. Par exemple ce type d'application se retrouve sur les niveaux à laser auto-initialisés, sur les télescopes à orientation automatique etc.
Et le gyroscope dans tout ça ?
Scope : mesurer & Gyro : tourner >>> Donc mesurer comment ça tourne.
Fondamentalement, c'est un instrument qui va mesurer des changements d'orientation par rapport à sa structure. Les gyroscopes d'origine sont des dispositifs montés sur articulations de Cardan trirectangles libres de s'orienter librement dans l'espace. Une masse est entrainée en rotation rapide autour d'un pivot, la structure de ce pivot est libre de tourner dans l'espace grâce à trois cardans. Un tel gyroscope conserve dans l'Univers une direction fixe. (Oublions les frottements SVP)
Ce type d'instrument ne nous donne que les variations de position angulaires mesurées sur les trois axes orthogonaux des articulations de Cardan. On a uniquement des angles. Si l'on désire des vitesses angulaires, il faut alors calculer de combien l'angle à changé au cour du temps. Un calcul analogue sur la vitesse angulaire nous indique alors l'accélération angulaire.
Actuellement, les accéléromètres et les dispositifs gyroscopiques sont des systèmes optico-électroniques entièrement statiques, il n'y a plus de mécanique. Du coup, c'est l'inverse qui se passe. Ils déterminent les accélérations angulaires ou linéaires. Par un calcul inverse à celui présenté ci-avant, on détermine alors la vitesse, puis le changement de position. Si l'on veut savoir où l'on se trouve, que ce soit en position « linéaire » ou en orientation, il faut au départ informer le calculateur de la position initiale de notre mobile et son orientation au début du mouvement. C'est ce que l'on fait quand on initialise une centrale inertielle dans un avion de ligne où dans un vaisseau qui va décoller pour l'espace … mais c'est un autre sujet.  :smiley-roll-sweat:
C'est assez complexe tout ça, et surtout si l'on veut ne pas se fourvoyer, il importe de vraiment associer aux mots utilisés leur réelle signification. Effectivement ce n'est pas forcément le vocabulaire technico-commercial qui va nous aider dans cette voie …

3Sigma


Un accéléromètre ne mesure pas spécifiquement l'accélération terrestre.  Posez-le sur la table, il va indiquer zéro. Si vous voulez mesurer l'accélération terrestre, il faut le laisser tomber à la verticale, et qu'il soit correctement orienté.


Désolé de te contredire, mais pour ne pas que les lecteurs du forum se perdent, il est quand même très important de préciser que la plupart des modules "accéléromètres" (sinon tous) vendus dans le monde Arduino mesurent la pesanteur.
En particulier, le MPU6050 mesure la pesanteur. Ca veut dire que quand il est posé sur une table, en position fixe, avec son axe Z orienté vers le haut (par exemple), il renvoit une donnée correspondant à -9.81 m/s^2 (ce qui correspond à l'accélération de la pesanteur) sur cet axe.
Sur ce composant (le MPU6050), il y a également une fonction permettant de détecter la chute libre. Dans le cas d'une chute libre, le composant renvoie une accélération nulle sur chaque axe.
Je sais, pas très intuitif tout ça, mais très important à savoir.

Donc, pour revenir au fait que l'accéléro mesure l'accélération, c'est ça qui permet de connaître une position angulaire (dans le cas où le composant est soumis uniquement à l'accélération de la pesanteur): à partir des valeurs de la pesanteur sur chacun des axes, on peut remonter assez facilement via des calculs trigonométriques à l'orientation du module dans l'espace.

xYwo

Tout ça me paraît bien compliqué...
Je ne pensais pas que ma question allait susciter un tel débat !


Il faut regarder les datasheets.
Pour l'Arduino Pro mini, a priori oui.
Pour le MPU6050, ça dépend du module que tu vas choisir. Il faut pouvoir attaquer directement le composant avec la pile, sans passer par un régulateur de tension 5V -> 3.3V, comme on trouve sur certains modules.

Ok
J'ai regardé la datasheet de la matrice de 8x8 leds (ici : http://www.adafruit.com/datasheets/BL-M12A883xx.PDF)
J'ai vu marqué "reverse voltage" dans le deuxième tableau, qu'est ce que ça veut dire ?
Et dans le 1er tableau, il y a une colonne en V je crois, avec seulement 2.10 V et jusqu'à 2.50 V (si j'ai bien compris).
Cela veut dire qu'avec un courant de 3V (qui passe d'abord par l'arduino pro mini) ça fonctionne ?

Merci

3Sigma

Non, ça concerne les leds elles-mêmes alors que ce qui t'intéresse ici c'est s'il est possible d'alimenter en 3V le circuit qui gère l'i2c et les leds.
Il est écrit sur cette page (https://learn.adafruit.com/adafruit-led-backpack/1-2-8x8-matrix):
"Connect VCC+ to power - 5V is best but 3V also seems to work for 3V microcontrollers."

Donc, en gros, ça marche peut-être mais c'est pas sûr. Le mieux c'est d'essayer, de toute façon tu ne casseras rien. Si ça ne fonctionne pas, tu pourras acheter un module "step-up" qui te remontera la tension en 5V à partir de ton 3V.

Go Up