Lectures étranges du gyroscope ITG3200?

Josh

Lectures étranges du gyroscope ITG3200?


J’ai du mal à faire fonctionner ce gyroscope. Je peux en quelque sorte obtenir des lectures de l’axe Z. Si je ne le déplace pas, les axes X et Y affichent constamment -1. Lorsque je déplace le gyroscope, les X et Y sautent un peu (quelques centaines) mais dès que je m’arrête, ils reviennent à -1. Toute suggestion est appréciée. Merci!!

morsure

Veuillez indiquer avec quel code / bibliothèque vous travaillez; (et un schéma / croquis rapide de vos pièces serait également utile) pour arriver à une réponse rapide. Une valeur négative peut signifier un certain nombre de choses selon la façon dont le code est écrit.

Connor Wolf

Êtes-vous sûr qu’il ne fait pas ce qu’il est censé faire? On dirait qu’il sort le

Réponses


 Mikko Virkkilä

J’ai eu du mal avec les capteurs I2C et les implémentations de bibliothèque cassées. D’après mon expérience, le moyen le plus rapide de déboguer le problème est de capturer une trace et de s’assurer qu’elle semble correcte.

Il existe de nombreuses façons courantes de bousiller avec I2C:

  • Pas de tractions ou tractions trop faibles
  • Confondre les adresses I2C 7 bits et 8 bits
  • Implémentation de logiciel cassée omettant le NACK à la fin d’une lecture
  • Ne pas utiliser de démarrages répétés lorsqu’ils sont requis
  • SDA et SCL sont échangés

Consultez mon tutoriel sur I2C avec plus de conseils de débogage .

Pour l’ITG3200, je m’assurerais que la lecture du registre WHO_AM_I réussit avant d’essayer de lire les valeurs. Voir également cette question qui détaille l’étrangeté du Vlogic avec ce gyroscope .


 Barışcan Kayaoğlu

Essayez de lire d’abord le registre WHO_AM_I qui retournerait 0x69 ou 0x68 selon votre circuit. Après cela, assurez-vous de faire la bonne configuration qui nécessite d’écrire 9 sur le registre DLPF_FS et 25 sur SMPLRT_DIV (ces configurations sont par défaut, vous pourriez avoir besoin d’un diviseur différent et supprimer le filtre passe-bas, etc.). SI tout va bien et que vous obtenez toujours le même résultat, cela fonctionnerait correctement. Les gyroscopes fonctionnent avec la règle de changement de mouvement. Il ne calcule pas votre angle mais il calcule le changement d’angle dans le temps. Renvoyer -1 et changer le mouvement me semble bien. Vous devez également considérer que ce sont les valeurs ADC et ITG-3200 a des valeurs adc internes. Vous devez le maintenir immobile et tester les résultats pour obtenir le meilleur résultat.

 

du, étranges?, gyroscope, ITG3200?, lectures

 

google

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *