Une inspection minutieuse de la page 35 (figure 58) de la fiche technique ADXL345 montre que sous charge gravitationnelle uniquement, la puce utilise un système de coordonnées pour gaucher. Mes propres expériences avec cette puce le confirment.
J'utilise généralement la puce uniquement pour indiquer le vecteur de gravité. Donc, lorsque j'utilise cette puce, je nie simplement les valeurs pour obtenir un système de coordonnées droitier. Mais cela ne semble pas juste. Je suppose qu'il y a une explication logique et mathématique pour le système de coordonnées gaucher mais je ne peux pas comprendre ce que cela pourrait être.
Réponses:
La réponse est que les accéléromètres à 3 axes n'ont pas de système de coordonnées gaucher juste pour la gravité. Dans des conditions statiques (c'est-à-dire si l'accéléromètre n'accélère pas par rapport à n'importe quel châssis inertiel), ils mesurent l' opposé de l'accélération de la gravité, pas l'accélération de la gravité elle-même.
De façon plus générale, les accéléromètres mesurent la différence entre l' accélération réelle du capteur par rapport à tout châssis inertiel et l'accélération gravitationnelle: Cette "accélération" mesurée par l'accéléromètre est parfois appelée bonne accélération .
Cela peut être facilement vérifié en vérifiant la mesure d'un accéléromètre en chute libre: comme dans ce cas l' accélération réelle du capteur sera égale à , la mesure de l'accéléromètre sera .g 0
la source
Cela n'utilise pas un système de coordonnées pour gaucher! Découvrez mes modifications brutes du diagramme.
Notez que chaque système de coordonnées (RVB pour XYZ, noir pour la gravité) a le vecteur de gravité aligné dans la direction négative de l'axe approprié, tandis que le diagramme montre une lecture positive. J'aurais pu les dessiner dans l'autre sens mais l'accélération réelle en l'absence de gravité serait vers le haut pour produire la même lecture. C'est peut-être la raison pour laquelle la négation des valeurs fonctionne pour votre application.
la source
À la fin de la journée, vous pouvez utiliser une matrice pour transformer tout système de coordonnées utilisé en votre propre système. C'est généralement le cas lorsque vous devez placer des pièces dans une certaine direction en raison de difficultés d'acheminement. En utilisant une matrice 3x3 simple, vous pouvez transformer les lectures X, Y, Z afin qu'elles s'alignent toutes sur plusieurs capteurs. La matrice aura des valeurs 0, 1 et -1 en fonction de la façon dont la transformation doit être effectuée.
la source
Ma meilleure supposition serait qu'avec un système de coordonnées pour gaucher, la gravité est positive lorsque vous êtes à droite et négative lorsque vous êtes à l'envers. Comme mentionné dans mon commentaire, faites attention à la façon dont vous "transformez" vos systèmes de coordonnées - la négation de toutes les valeurs vous fait simplement passer d'un octant à un autre.
la source