Entrée Analogique et sortie Analogique

technopujades

Senior Member
Bonjour,
J'ai une idée de projet en tête, mais je me pose plusieurs questions avant de me lancer dedans ...
L'idée : mesurer l'angle d'inclinaison d'une moto à l'arrêt (qui n'avance donc pas).

Pour mesurer l'angle je serais bien parti sur ce type de capteur : http://www.gotronic.fr/art-module-gyroscope-grove-1-axe-sen05091p-20339.htm
Alors effectivement, il mesure en deg/sec mais vue que la moto ne bouge pas je me retrouve uniquement avec des degs ... Je me trompe ?

Le module gyroscope sera donc câblé sur une entrée analog, le picaxe fait l'acquisition de la valeur puis fait un petit calcul et renvoi la valeur recalculée sur une sortie Analogique (dacsetup %10100000 et daclevel de 0 à 31 en fonction).

Merci d'avance de vos remarques ...
 

MGU

Senior Member
Bonjour,

Ma première impression est que si le capteur mesure une vitesse angulaire, il donnera 0 si il ne bouge pas.
Pour l'utiliser, il faudrait partir de la verticale et intégrer le mouvement jusqu'à la position d'équilibre, ce qui donnerait un angle.
Je crois...

MM
 

PieM

Senior Member
Bonjour southrider ,

Non, un capteur gyroscopique ne convient pas pour ce que tu veux faire.
En statique, il faut utiliser un accéléromètre, qui lui est sensible à une accélération, donc à celle de la gravité terrestre. En fonction de l'angle de variation et de la résolution souhaités , il y a plusieurs capteurs et montages possibles.
Tu veux une sortie en degrés ? avec quelle précision ? et sur quelle échelle ?
De base tu as une valeur qui est une fonction du sinus ou du cos de l'angle.
 

technopujades

Senior Member
Merci de vos réponses. Effectivement, c'est ce que je recherche une sortie qui m'indique le degrés d'inclinaison de la moto. Plus on penche, plus la valeur en volt est importante ... entre 0 et 5v. Pour la précision, je suis large du moment que ça fonction "un peu" ...
 

PieM

Senior Member
Oui bien entendu, mais la sortie va varier de 0 à 600 mV en positif ou négatif par rapport à Vcc/2.
Avec un readadc10 cela donne une résolution meilleure que 1/100 sur l'étendue de mesure sinus
 

PieM

Senior Member
Voir la réponse de Michel en #2.
La sortie du capteur gyroscopique est en °/s. donc si on veut des ° il faut procéder à une intégration en f(t) qui n'est pas particulièrement du goût d'un Picaxe.


En statique, sa sortie est à 0, aux dérives près. Donc il ne donne qu'une position relative par rapport à sa dernière position statique.
 

technopujades

Senior Member
Je me permets de revenir vers vous, après plusieurs recherches sur le net, je n'ai pas trouvé la relation entre la sortie du capteur (x ou y) en fonction de l'angle (http://www.gotronic.fr/art-accelerometre-accm2g-11508.htm). Pourquoi parle ton de sinus et cosinus ? (Dans le triangle rectangle vertical/sol ?) Avant de me lancer dans le projet, j'aimerai être sur que ce type de capteur répond au problème technique sans qu'il ne soit trop complexe pour les élèves. Mais pour le coup, c'est moi qui comprend rien ...
Au cas ou voici l'idée de départ de mon projet : réaliser un simulateur de moto à partir d'une console de jeux Xbox. D'abord étudier le signal de chaque bouton de la manette puis réaliser tous les boutons de la manette sous forme de capteur sur la moto (capteur tout ou rien pour la boîte de vitesse, un potar pour l'accélérateur, idem pour le frein et embrayage ...) mais j'ai peur que le rendu ne soit pas à la hauteur si l'on met un potar pour gérer l'inclinaison de la moto (problème niveau mécanique même si les pièces seront réalisé en 3D avant de les imprimer ou usiner ... Chaque capteurs sera ensuite relier à la manette en parallèle du bouton original. Pour les profs qui se posent des questions de faisabilité avec des élèves de college sur ce type de projet, sachez que j'ai des stars et une motivation exceptionnelle dans certaines classes. Exemple de projet de cette année, qui a fini au passage 6eme du concours "faites de la science" : https://m.youtube.com/watch?v=IjY9ZbR7J1A
Merci d'avance pour vos coups de pouces par rapport à ce type de capteur : http://www.gotronic.fr/art-accelerometre-accm2g-11508.htm
 

BESQUEUT

Senior Member
Un accéléromètre du type indiqué donne 1g quand il est posé à plat.
Quand on l'incline, la pesanteur étant appliquée en biais sur le capteur, l'accélération mesurée diminue.
Il suffit de dessiner le triangle des forces :
- la pesanteur s'applique au centre de gravité du capteur et est strictement verticale, dirigée vers le bas,
- une force de réaction orthogonale à la face plane du capteur (c'est cette force qui est mesurée),
- une autre force de réaction orthogonale à la précédente pour fermer le triangle.
Dans le cas extrême où le capteur est posé sur champ, la force mesurée est évidement nulle et la réaction orthogonale vaut moins g.

On constate immédiatement qu'il faut faire un peu de trigo pour résoudre la triangle et sortir l'angle en fonction de la pesanteur, ce qui passe effectivement par un arc- qq chose (sinus ou cosinus suivant l'angle souhaité)
Personnellement, un potentiomètre me semble bien suffisant pour couvrir votre besoin, mais c'est aussi possible via un accéléromètre.
A noter que nous avons longuement discuté sur ce forum de la possibilité de mesurer l'inclinaison d'une moto en mouvement, et là, c'est une toute autre paire de manches !
 

PieM

Senior Member
Pour compléter un petit schéma:

2014-06-22 002.jpg

la platine étant horizontale, si elle est alimentée en 5V, la tension lue sur la sortie Y sera 5V /2 soit 2.5V
Si elle est dans un plan vertical (rotation autour de X) la tension sera 2.5V + 0.660 V dans un sens et 2.5V - 0.660 V dans l'autre , Y étant dans l'axe de g
entre les deux, la valeur de Y sera liée à la composante de g selon Y soit sin (alpha). Donc 2.5V + 0.660 sin(alpha) ou 2.5V - 0.660 sin(alpha) selon le sens.

Selon le Picaxe, la fonction sin() n'est pas disponible .
Mais si l'angle est nécessaire (?):
A priori si c'est l'inclinaison statique d'une moto, un angle de 0 à +/- 45° serait suffisant. Donc il est facile de mettre une table en EEPROM du Picaxe faisant la relation tension lue > angle.

Ce type de capteur fonctionne très bien et la résolution avec un readadc10 sur 45° (soit 466mV) sera de l'ordre du °

Sur une manette de jeu , l'autre axe peut être utilisé en accélérateur/frein.

Un accéléromètre du type indiqué donne 1g quand il est posé à plat.
Non, Il mesure une accélération dans son propre plan. Donc il donne 0 sur les deux axes soit 2.5V.

PS: Un conseil aux profs de techno (et aux autres) : allez voir le site de technopujades. Ou comment donner le goût de la techno aux élèves...
 
Last edited:

PieM

Senior Member
Petit complément ...

Si tu ne cherches pas la précision suprème , alors c'est très simple:

un readac10 va te donner une certaine valeur A quand ton capteur est à l'horizontale. (en principe 512)
incliné il va donner une valeur B

si tu calcules A-B (ou B-A selon le sens) * 11/24 tu as directement une valeur en degrés à 1.2° près pour des angles compris entre 0 et 45°

Il est possible de mesurer un angle entre + 90° et -90° avec la même précision en montant la platine capteur dans un plan vertical, en utilisant la valeur d'un axe ou de l'autre si on dépasse 45°.
Il faut éviter de raisonner avec un cosinus car peu de précision aux alentours du 0. donc utiliser le sinus de l'angle complémentaire (donc l'autre axe) dès que l'on passe 45°.
 
Last edited:

PieM

Senior Member
Pour faire des tests à bas coût :
http://www.ebay.fr/itm/3-axis-Analog-Output-Accelerometer-Module-angular-transducer-for-Arduino-ADXL335-/271499551321?pt=LH_DefaultDomain_0&hash=item3f36a26259
sensibilité/2 mais même principe
Sur ces petits circuits, il y a juste un régulateur 3,3v et 0g est à 3,3v/2 même si on alimente en 5v
Attention que ces capteurs ne sont pas pourvus d'ampli de sortie, donc l'impédance de sortie est 32k, ce qui est trop élevé pour attaquer une entrée ADC de Picaxe.
 

GM39

Senior Member
Personnellement je n'ai pas rencontré de pb avec ce type de composant pour des variations d'accélérations qui ne sont pas très rapides.

Voilà ce que conseille microchip :
"Often the source impedance of the analog signal is high (greater than 10 kΩ), so the current drawn from the source to charge the sample capacitor can affect accuracy. If the input signal does not change too quickly, try putting a 0.1μF capacitor on the analog input.
This capacitor will charge to the analog voltage being sampled and supply the instantaneous current needed to charge the 4.4 pF internal holding capacitor."

Il y a des capa pour le filtrage des sorties de même valeur.
 
Top