Magnétomètre et inclinaison
titusIII
Messages postés
93
Date d'inscription
Statut
Membre
Dernière intervention
-
titusIII Messages postés 93 Date d'inscription Statut Membre Dernière intervention -
titusIII Messages postés 93 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Est-il possible de récupérer l'inclinaison à partir d'un magnétomètre?
J'ai aussi un accéléromètre sur la carte, mais il permet de mesurer la vitesse. Il ne correspondra pas puisque ses valeurs vont bouger lors d'une accélération. En effet, l'accéléromètre est incapable de différencier accélération et inclinaison. Ma carte est susceptible d'être baladée dans tous les sens pendant ses mesures. Je m'occupe de tout ce qui est fusion de donnée par la suite. C'est ce qu'ils appellent l'angle "pitch" qui m'intéresse.
J'ai juste besoin de savoir si on peut récupérer une inclinaison avec ce que j'ai sur ma carte (accéléromètre + magnétomètre) pendant une accélération ou à vitesse constante.
Dans l'attente de vos futures réponse, merci
Titus.
Est-il possible de récupérer l'inclinaison à partir d'un magnétomètre?
J'ai aussi un accéléromètre sur la carte, mais il permet de mesurer la vitesse. Il ne correspondra pas puisque ses valeurs vont bouger lors d'une accélération. En effet, l'accéléromètre est incapable de différencier accélération et inclinaison. Ma carte est susceptible d'être baladée dans tous les sens pendant ses mesures. Je m'occupe de tout ce qui est fusion de donnée par la suite. C'est ce qu'ils appellent l'angle "pitch" qui m'intéresse.
J'ai juste besoin de savoir si on peut récupérer une inclinaison avec ce que j'ai sur ma carte (accéléromètre + magnétomètre) pendant une accélération ou à vitesse constante.
Dans l'attente de vos futures réponse, merci
Titus.
A voir également:
- Magnétomètre et inclinaison
- &Quot;Capteur magnetomètre non disponible ", que dois-je faire? - Forum Téléphones & tablettes Android
5 réponses
Salut,
Tu peux le faire avec 3 accéléromètres.
Ils ne te donneront pas l'inclinaison, mais seulement la façon dont l'appareil a bougé. C'est à toi de déterminer l'inclinaison à partir de ça.
Aussi, lorsqu'une vitesse est constante, l'accélération est nulle.
https://fr.wikipedia.org/wiki/Acc%C3%A9l%C3%A9rom%C3%A8tre
https://www.youtube.com/watch?v=FnQ43TJtE54
Tu peux le faire avec 3 accéléromètres.
Ils ne te donneront pas l'inclinaison, mais seulement la façon dont l'appareil a bougé. C'est à toi de déterminer l'inclinaison à partir de ça.
Aussi, lorsqu'une vitesse est constante, l'accélération est nulle.
https://fr.wikipedia.org/wiki/Acc%C3%A9l%C3%A9rom%C3%A8tre
https://www.youtube.com/watch?v=FnQ43TJtE54
Merci, je connais très bien le fonctionnement de l'accéléromètre. J'ai déjà écrit le code pour la récupération de la vitesse (intégration) et il fonctionne, mais seulement carte à plat.
Sur ma carte j'ai seulement un accéléromètre et un magnétomètre...
C'est donc impossible de récupérer l'inclinaison avec ce dont je dispose?
Sur ma carte j'ai seulement un accéléromètre et un magnétomètre...
C'est donc impossible de récupérer l'inclinaison avec ce dont je dispose?
La magnétomètre se sert de la gravité, il pourra te donner la rotation initiale.
Ensuite, tu peux te servir de l'un ou l'autre pour connaître l'accélération angulaire.
Il faut que tu arrives à reproduire un gyroscope avec ça, c'est tout. C'est faisable je pense.
Le problème, c'est qu'avec un seul détecteur, tu ne pourras pas savoir si il penche en dans l'axe perpendiculaire ni même si ton appareil est en fait retourné.
C'est pour ça il vaut mieux en avoir 3 (Rotation dans l'espace), minimum 2 (Rotation en plan). Admettons que ça t'en fait 2.
Musicalement,
DJ Fire-Bl@ck.
Ensuite, tu peux te servir de l'un ou l'autre pour connaître l'accélération angulaire.
Il faut que tu arrives à reproduire un gyroscope avec ça, c'est tout. C'est faisable je pense.
Le problème, c'est qu'avec un seul détecteur, tu ne pourras pas savoir si il penche en dans l'axe perpendiculaire ni même si ton appareil est en fait retourné.
C'est pour ça il vaut mieux en avoir 3 (Rotation dans l'espace), minimum 2 (Rotation en plan). Admettons que ça t'en fait 2.
Musicalement,
DJ Fire-Bl@ck.
Voilà, on arrive à mon problème. J'arrive pas à comprendre comment faire mes calculs avec le magnétomètre.
J'ai recopié le calcul de l'azimut sur internet, ca me donne un truc du genre 260°
Mais ça change tout le temps suivant comment je le tourne.
As-tu une idée de la façon avec laquelle je pourrais m'y prendre?
J'ai recopié le calcul de l'azimut sur internet, ca me donne un truc du genre 260°
Mais ça change tout le temps suivant comment je le tourne.
As-tu une idée de la façon avec laquelle je pourrais m'y prendre?
Tu vas avoir besoin d'informations sur ton capteur :
sa sensibilité (en V/T)
sa résolution (en T)
son bruit équivalent en champ magnétique
sa linéarité
son étendue de mesure
sa directivité
A intégrer dans le calcul.
Si tu tentes de construire l'équation toi même tu pourras mieux y arriver.
Tu peux récupérer les valeurs extrêmes (étendue de mesure), en tenant compte de sa linéarité puis convertir en angle.
Après, rien ne vaut un petit tour dans la documentation officielle du capteur, en général on le retrouve sur internet aussi, peut être même avec des exemples de code si tu utilises une interface simplifiée comme Arduino.
Là ça dépend vraiment des outils dont tu te serts. Il est possible que tu n'aies aucun calcul à faire, ou que tu dois te tapper toute la CAN ...
sa sensibilité (en V/T)
sa résolution (en T)
son bruit équivalent en champ magnétique
sa linéarité
son étendue de mesure
sa directivité
A intégrer dans le calcul.
Si tu tentes de construire l'équation toi même tu pourras mieux y arriver.
Tu peux récupérer les valeurs extrêmes (étendue de mesure), en tenant compte de sa linéarité puis convertir en angle.
Après, rien ne vaut un petit tour dans la documentation officielle du capteur, en général on le retrouve sur internet aussi, peut être même avec des exemples de code si tu utilises une interface simplifiée comme Arduino.
Là ça dépend vraiment des outils dont tu te serts. Il est possible que tu n'aies aucun calcul à faire, ou que tu dois te tapper toute la CAN ...
Il s'agit du HMC5883L, un magnétomètre 3 axes 12 bits. (I2C)
Pour mon développement j'utilise un Psoc, je peux faire a peut près ce que je veux. C'est super puissant.
Mes axes je les récupères sans problème. L'histoire du complément à 2 c'est fait aussi.
Je me doute que dans mes calculs je vais devoir me servir de la valeur en gauss, la conversion est faite aussi.
Actuellement ma résolution est de 0.73mg. C'est le plus sensible, ça sera le plus adapté je pense.
Ah oui, je travail en Gauss et pas en Tesla, mais ça peut s'arranger aussi.
La linéarité est de +-0.1% FS (? Je sais pas encore ce que c'est)
Le bruit est de 2mG (je suppose que c'est ça)
C'est pas vraiment plus clair. Y'a pas grand monde qui travaille avec ce genre de composant, j'ai pas beaucoup de source sur lesquelles m'appuyer.
Pour mon développement j'utilise un Psoc, je peux faire a peut près ce que je veux. C'est super puissant.
Mes axes je les récupères sans problème. L'histoire du complément à 2 c'est fait aussi.
Je me doute que dans mes calculs je vais devoir me servir de la valeur en gauss, la conversion est faite aussi.
Actuellement ma résolution est de 0.73mg. C'est le plus sensible, ça sera le plus adapté je pense.
Ah oui, je travail en Gauss et pas en Tesla, mais ça peut s'arranger aussi.
La linéarité est de +-0.1% FS (? Je sais pas encore ce que c'est)
Le bruit est de 2mG (je suppose que c'est ça)
C'est pas vraiment plus clair. Y'a pas grand monde qui travaille avec ce genre de composant, j'ai pas beaucoup de source sur lesquelles m'appuyer.
Peut être le mode de fonctionnement n'est pas le bon.
Regarde la page 18 : https://cdn-shop.adafruit.com/datasheets/HMC5883L_3-Axis_Digital_Compass_IC.pdf
Regarde la page 18 : https://cdn-shop.adafruit.com/datasheets/HMC5883L_3-Axis_Digital_Compass_IC.pdf
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question