B Mesure de la vitesse du moteur

Afin de réaliser l’asservissement en vitesse du moteur, il est indispensable d’avoir un retour de la vitesse réelle de celui-ci. Selon les technologies de moteurs, il est possible d’utiliser différents moyens de mesure.
Les moteurs que nous avons à disposition sont équipés d’encodeurs en quadrature de phase. Nous avons donc utilisé ces encodeurs afin de réaliser la mesure de vitesse.
L’encodeur repose sur le principe suivant: une source lumineuse vient éclairer un capteur de lumière. Entre les deux se trouve le disque rotatif troué accouplé au moteur. Ce qui va donc faire que du point de vue du capteur de lumière, la source lumineuse va être allumée puis éteinte. Ce fonctionnement est illustré sur la figure ci-dessous:

L’encodeur renvoie donc un signal carré dont la fréquence dépend directement de la vitesse de rotation du moteur. En connaissant le nombre de trous dans l’encodeur, il est possible de remonter à l’information de vitesse. Ci-dessous une photo de l’encodeur liés aux moteurs du robot Pioneer.

En plus de donner une information sur la vitesse, il est également possible de connaître le sens de rotation des moteurs équipés d’encodeurs. Pour y parvenir, les encodeurs sont équipés de deux rangées de trous pour générer deux signaux carrés déphasés. Le déphasage entre les deux signaux permet de conclure si le moteur est en marche avant ou arrière. En observant l’illustration ci-dessous, il apparaît que le déphasage de 90° des deux signaux fera que lors d’un front montant de la voie A, la voie B sera à l'état haut ou bas selon le sens de rotation du moteur.

Utilisation d’un microcontrôleur pour la mesure de vitesse

Pour retrouver la vitesse de rotation du moteur, le microcontrôleur compte le nombre de tics générés par l’encodeur sur une seconde. C’est à dire qu’il compte les fronts montants. Au niveau technique, cela se présente ainsi:

Un timer du microcontrôleur compte une seconde pendant laquelle il active les interruptions externes. La broche correspondant à ces interruptions externes est reliée sur l’une des voies de l’encodeur. Lorsqu’une interruption est générée (cela veut dire qu’un front montant a été détecté) le microcontrôleur regarde si le deuxième signal est à “1” ou à “0” pour incrémenter ou décrémenter le compteur.

Une fois le nombre de front montants comptés sur une seconde relevés, le microcontrôleur le convertir en vitesse. Comme les encodeurs sont équipés de 500 trous, il suffit de diviser la valeur du compteur par 500 pour retrouver la vitesse en tr/s.


Validation des mesures de vitesse

Afin de s’assurer de la validité des mesures de vitesse grâce à la roue codeuse, ces dernières ont été comparées à des mesures de vitesses faires par un stroboscope. la correspondance de ces valeurs a permis de valider la démarche de mesure de vitesse à l’aide de l’encodeur.

1.png

3.png

2.bmp