Header Ads

BNO055 - Une centrale inertielle à orientation absolue pour Arduino et Raspberry

A a base, ce produit fût ajouter à notre gamme pour sur demande... mais comme c'est souvent le cas avec les produits sélectionné chez Adafruit, on découvre un jouet à la point de la technologie.
Le BNO055 est vraiment un composant captivant... je vous laisse le découvrir.

Qu'est ce qui se cache sous le BNO055 ?
Le BNO055 est une "centrale inertielle" à orientation absolue, un senseur à 9 degrés de libertés (9-DOF).

Si vous avez acheté et branché un senseur 9-DOF (9 degrés de libertés), il est fort probable que vous réaliser également le challenge que représente la conversion des données d'un accéléromètre, gyroscope et magnétomètre pour réaliser un senseur "d'orientation spatiale 3D"!
Breakout BNO055 d'Adafruit - disponible chez MCHobby
S'orienter est un problème difficile à résoudre. L'algorithme de fusion (la sauce secrète qui mélange les données de l'accéléromètre, magnétomètre et gyroscope en use sortie d'orientation 3-axes stable) peut être incroyablement difficile à implémenter et à mettre au point sur un système temps réel à faible coût.
Breakout BNO055 d'Adafruit - disponible chez MCHobby
Bosch est la première société à mettre cela au point en utilisant un accéléromètre MEMS, magnétomètre et gyroscope pour centraliser tout ces élément dans une seule puce  avec un processeur de type ARM Cortex-M0 (à haute vitesse) pour digérer les données des senseurs, fait abstraction de l'algorithme de fusion et s'occupe des aspects "temps réel" du problème pour fournir des données que vous pouvez utiliser en quaternions, angles d'Euler ou vecteurs.

Plutôt que de dépenser des semaines ou des mois à réaliser un algorithme d'une précision et complexité variante, vous pouvez obtenir les données d'orientation voulue grâce au BNO055 - une senseur 9-DOF intelligent qui masque toute la complexité de la fusion des données! Vous pouvez lire les données depuis le bus I2C et voilà!
Fonctionnalités du BNO055
Le BNO055 peut offrir les données sensorielles suivantes:
  • Orientation Absolue (Vecteur Euler, 100Hz). Données d'orientation trois axes basé sur une sphère de 360°. Voyez également la définition de l'angle d'Euler.
  • Orientation Absolue (Quaternion, 100Hz) une sortie quaternion à 4 points. Permet une manipulation des données plus précise. Voyez la définition de Quaternion.
  • AVecteur de vitesse angulaire - Angular Velocity Vector (100Hz) Trois axes de 'vitesse de rotation' en radian/seconde
  • Vecteur d'accélération (100Hz). Trois axes de l'accélération (gravité + mouvement linéraire) en m/s^2
  • Force du vecteur du champ magnétique (20Hz) Trois axes du champs magnétique relevé par le senseur, en micro Tesla (µT)
  • Vecteur d'accélération linéaire (100Hz) Trois axes de données d'accélération linéaire (accélération moins la gravité) en m/s^2
  • Vecteur de Gravité (100Hz) Le trois axes de l'accélération gravitationnelle (moins n'importe quel mouvement) en m/s^2
  • Température (1Hz) témpérature ambiante en degrés celsius
Pratique n'est-ce pas? Ce senseur est placé sur un breakout avec un régulateur de tension 3.3v et le convertisseur de niveau logique pour le Reset et les broches I2C, un cristal externe 32.768KHz (recommandé pour de meilleurs performances)... ainsi que le breakout de quelques autres broches que vous pourriez trouver utile.

Tutoriel
Adafruit propose plusieurs tutoriels intéressants pour utiliser ce breakout
Où acheter