Go Down

Topic: Informations accéléromètre (Read 2526 times) previous topic - next topic

Stephanois57

Bonjour à tous,
Je dispose d'un accéléromètre ADXL 335 dont j'ai fait un programme (avec détermination d'une équation). Je comprends en majeure partie son fonctionnement, mais je ne vois pas à quoi correspond les valeurs qu'il m'envoie dans le moniteur série. C'est un chiffre qui varie de 395 à 625 environ, en fonction de l'inclinaison. Quelqu'un saurait-il ce qu'est ce nombre à 3 chiffres ?
Je laisse en pièce jointe la photo de l'accéléromètre, et une copie d'écran du moniteur série (le nombre qui apparait sur la photo est constant car l'accéléromètre était maintenu dans une certaine position, sans le bouger, au moment de la photo)
Merci de votre réponse, et bonne soirée à vous !

bigben99

Si c'est un accéléromètre, normalement, ça varie en fonction de l'accélération et non de l'inclinaison.

Alors avec le peu d'élément que tu nous fourni, je pense qu'il s'agit d'une représentation de la tension appliquée par l'accéléromètre sur l'une des entrées analogiques pour l'un des 3 axes (X, Y ou Z).

Stephanois57

#2
Mar 12, 2015, 06:31 pm Last Edit: Mar 12, 2015, 06:32 pm by Stephanois57
En fait j'ai fait un programme simple qui me permettait juste de voir ce que l'accéléromètre envoyait. J'ai donc vu que c'était un nombre entre 395 et 625. J'ai donc fait un "montage" où j'ai fixé mon accéléromètre sur un niveau à bulle pivotant, avec un rapporteur en degrés intégré. Ensuite sur un tableur, j'ai rentrée les différentes valeurs que le moniteur série m'indiquait, en fonction de l'angle que je pouvais lire sur mon niveau à bulle (voir photo jointe du montage ici).

Après différentes recherches, j'ai compris que l'accéléromètre envoyait une tension proportionnelle à l'accélération. Mais dans le moniteur série, il ne me dit pas "5V, 4V, 3V,4V" c'est un "code" à 3 chiffres qui apparait, je voulais simplement savoir à quoi correspondait ce "code".

(je n'utilise qu'un seul axe de l'accéléromètre)

Je sais qu'un accéléromètre varie en fonction de l'accélération, mais mon programme, grâce à l'équation déduite du tableur, me donne un angle d'inclinaison. C'est volontaire de ma part de vouloir trouver une inclinaison, donc un angle

Artouste

En fait j'ai fait un programme simple qui me permettait juste de voir ce que l'accéléromètre envoyait. J'ai donc vu que c'était un nombre entre 395 et 625. J'ai donc fait un "montage" où j'ai fixé mon accéléromètre sur un niveau à bulle pivotant, avec un rapporteur en degrés intégré. Ensuite sur un tableur, j'ai rentrée les différentes valeurs que le moniteur série m'indiquait, en fonction de l'angle que je pouvais lire sur mon niveau à bulle (voir photo jointe du montage ici).

Après différentes recherches, j'ai compris que l'accéléromètre envoyait une tension proportionnelle à l'accélération. Mais dans le moniteur série, il ne me dit pas "5V, 4V, 3V,4V" c'est un "code" à 3 chiffres qui apparait, je voulais simplement savoir à quoi correspondait ce "code".

(je n'utilise qu'un seul axe de l'accéléromètre)

Je sais qu'un accéléromètre varie en fonction de l'accélération, mais mon programme, grâce à l'équation déduite du tableur, me donne un angle d'inclinaison. C'est volontaire de ma part de vouloir trouver une inclinaison, donc un angle
bonsoir
principe de base :
déjà lire le datasheet
ensuite comment  tu connecté ton adxl et sur quelle carte ? uno ?

Stephanois57

Bonsoir,

Oui oui le datasheet je l'ai déjà lu, je me suis renseigné avant, la seule chose que je n'ai pas trouvé ( et c'est pourquoi je pose la question ici), c'est à quoi correspond le nombre qui apparait dans le moniteur série ?

Je dispose d'une carte arduino Uno. J'ai branché l'accéléromètre sur l'emplacement 3,3V de l'arduino (c'est un post sur un autre forum qui conseillait de faire ça), le GND de l'accéléromètre sur le GND de l'Arduino puis j'ai utilisé les pins A0 et A1. Je ne m'occupe que de l'axe X dans mon cas, donc les autres axes ne sont pas présents dans mon programme

Artouste

Bonsoir,

Oui oui le datasheet je l'ai déjà lu, je me suis renseigné avant, la seule chose que je n'ai pas trouvé ( et c'est pourquoi je pose la question ici), c'est à quoi correspond le nombre qui apparait dans le moniteur série ?

Je dispose d'une carte arduino Uno. J'ai branché l'accéléromètre sur l'emplacement 3,3V de l'arduino (c'est un post sur un autre forum qui conseillait de faire ça), le GND de l'accéléromètre sur le GND de l'Arduino puis j'ai utilisé les pins A0 et A1. Je ne m'occupe que de l'axe X dans mon cas, donc les autres axes ne sont pas présents dans mon programme
Alors la valeur que tu reçois est l'image de la tension (V) reçue par l'entrée analogique de l'arduino
la resolution en mode standard (ton cas)
est = à Valim(du 328) par confort pour la demonstration Valim=5V
la resolution dans ce cas est de 5V/1024 =~ 0,0049V (res)
ton signal est donc compris entre 395 X res et 625 X res
soit entre ~1.94 V et 3.06V
en travaillant ainsi tu perd enormement en precision , pour amliorer ça , il faute que la Vref de l'ADC soit le plus proche
de Vmaxout pour Gmax



Stephanois57

Merci beaucoup pour l'explication !

Mais pourquoi divises-tu par 1024 ?
Comment sais-tu que la résolution est 328 ?

en travaillant ainsi tu perd enormement en precision , pour amliorer ça , il faute que la Vref de l'ADC soit le plus proche
de Vmaxout pour Gmax
--> Je ne comprends pas ce que tu veux dire, et donc ne vois pas comment faire…



icare

Bonsoir,
Mais pourquoi divises-tu par 1024 ?
C'est la résolution de convertisseur AD (10 bits)
Comment sais-tu que la résolution est 328 ?
Ce n'est pas la résolution mais la référence du micro-contrôlleur de ta carte ;)
@+
2B OR NOT(2B) = FF
Arduino 1.0.5 à 1.8.5 + gEdit + Ubuntu 18.04 LTS

Stephanois57

#8
Mar 12, 2015, 09:02 pm Last Edit: Mar 12, 2015, 09:03 pm by Stephanois57
Ah oui 1024 car 2^10=1024 !

Ah oui pardon… Donc la résolution de mon micro contrôleur 328 est à Valim (3,3 V pour moi, mais 5V pour sa démonstration) ?

Merci pour l'aide icare !

Artouste

Ah oui 1024 car 2^10=1024 !

Ah oui pardon… Donc la résolution de mon micro contrôleur 328 est à Valim (3,3 V pour moi, mais 5V pour sa démonstration) ?

Merci pour l'aide icare !
non, tu confond certaines notions :smiley-mr-green:
tu alimente ton adxl par le 3.3V de l'arduino = ça ok
mais le Vref (Aref) de l'arduino (le 328)  est celui de son l'alim =5V


Stephanois57

Oui c'est possible, j'en suis désolé, je ne suis pas vraiment expérimenté…

D'accord, merci, c'est vrai que c'était flou pour moi :)

Pourrais-tu m'expliquer ce passage :

en travaillant ainsi tu perd enormement en precision , pour amliorer ça , il faute que la Vref de l'ADC soit le plus proche
de Vmaxout pour Gmax

Artouste

Oui c'est possible, j'en suis désolé, je ne suis pas vraiment expérimenté…

D'accord, merci, c'est vrai que c'était flou pour moi :)

Pourrais-tu m'expliquer ce passage :

pour faire simple (et là on oublie ton adxl   :smiley-mr-green:    )

Si un capteur qui fait du rendu "analogique" ne peut sortir que 3V au max ET que ton CAD(ADC) 10 bits a une reference de conversion (son plafond) à 5V , il est facile de comprendre que la portion comprise entre 3V et 5V ne sera jamais utilisée.
c'est une zone perdue et donc inutile

Pour ameliorer les choses , là la premiere chose à faire est "de baisser le plafond"  :smiley-mr-green: 

Stephanois57

C'est effectivement beaucoup plus clair avec des mots simple :)

Mais pour revenir à mon cas, comment dois-je faire pour "baisser le plafond" ?

Artouste

#13
Mar 12, 2015, 09:57 pm Last Edit: Mar 12, 2015, 10:01 pm by Artouste
C'est effectivement beaucoup plus clair avec des mots simple :)

Mais pour revenir à mon cas, comment dois-je faire pour "baisser le plafond" ?
Lire et surtout comprendre ça
 :smiley-cool:

Stephanois57

Je vais y méditer alors :p . Merci beaucoup pour ton aide précieuse !

Bonne soirée :)

Go Up