Objectifs
- Savoir le fonctionnement d’un encodeur rotatif
- Savoir utiliser un encodeur
- Savoir les caractéristiques d’un encodeur
- Savoir les limites de l’encodeur
- Etc.
Applications
- Capteur de vitesse & sens de rotation (encodeur optique)
- Capteur angulaire
- Asservissement de l’angle
- Commutateur électromécanique multipositions
- Curseur/ Slider électronique
- Potentiomètre électromécanique linéaire
- Etc.
Qu’est-ce qu’encodeur rotatif ?
Un encodeur rotatif est un dispositif électromécanique qui permet de savoir l’angle ainsi la direction de la rotation. Il est constitué d’un curseur tournant comme celui du potentiomètre, mais graduel. Le nombre de pas du curseur par tour caractérise la résolution de l’encodeur. L’encodeur ci-dessous est constitué de 10 pas (ou micro-tous) par tour complète du curseur.
Le module KY-040
Le module KY-040 est un exemple d’un encodeur rotatif. Il dispose de trois sorties TOR et 10 micro-pas. Un front descendant apparut dans la sortie CLK (horloge) au moment de la détection d’une transition dans le curseur dans un sens ou dans l’autre sens. En parallèle, la sortie DT (direction) est positionnée en fonction du sens de rotation du curseur : DT=’0′ (Sens 1), DT=’1′ (Sens 2). Le module dispose aussi d’un bouton poussoir monté sur le curseur (il faut appuyer sur le curseur pour enclencher le bouton poussoir).
Voir le tuto concernant la procédure de la lecture de ‘encodeur ainsi les défauts de ce type de l’encodeur.
Programme Arduino
Le code ci-dessous permet de lire la position de l’encodeur en utilisant la fonction getRot(). Le bouton poussoir est utilisé pour initialiser le compteur de rotation.