Club robotique de Sophia-Antipolis

Accueil > POBOTpedia > Capteurs > Capteurs de position > Potentiomètre linéaire

Potentiomètre linéaire

... et en plus motorisé !

vendredi 3 septembre 2010, par Julien H.

Cet article rassemble les différents tests réalisés avec un potentiomètre motorisé de marque Alps, disponible pour 30 euros. C’est un capteur de position (une quinzaine de centimètres de débattement) qui peut être bricolé pour être relié à un robot (sa fonction première étant plutôt d’être manipulé par un humain). Par exemple relier une tige mobile au curseur pour savoir de combien un bras articulé s’est déplacé, etc..

C’est un bon petit atelier pour démarrer en robotique puisqu’il y a à la fois :
 une entrée analogique simple (le potentiomètre)
 une commande de moteurs (faire bouger le curseur)
 du traitement du signal (filtre du touché du curseur)
 de l’algorithmique (commande PID pour un déplacement souple)
 de la logique de commande (arrêter le moteur quand le curseur est touché)
 de la programmation de micro-contrôleur avec l’Arduino

Description rapide

Comme tout potentiomètre, ce composant permet de récupérer une information de position par une résistance variable.

Mais il est motorisé : une minuscule mécanique (attention fragile) et un moteur à courant continu permettent de modifier la course du curseur dans les deux directions, à grande vitesse (attention fragile une seconde fois), la précision étant apportée par le retour d’information du potentiomètre.

Enfin, le curseur métallique est capable de donner une information : par effet capacitif, le potentiel du curseur est modifié si quelqu’un le touche. On peut capturer ce potentiel grâce à une patte spéciale (à ne pas confondre avec les pattes du potentiomètre.

Ce système est très pratique, et séduit beaucoup les néophytes : attention, les trois fonctions décrites ci-dessus ne sont pas automatiquement liées les unes aux autres. Il n’y a aucun système de contrôle intégré, qui arrêterait le moteur quand il est en butée du potentiomètre, ou quand le curseur est touché. Il n’y a pas non plus de mémoire permettant de revenir à une position précédente, etc...

Tout doit donc être fait par vous-même... et c’est bien ce qui nous intéresse dans cet article, donc continuez votre lecture avec sérénité, nous sommes là pour vous aider.

Datasheet

Pas forcément très claire, mais nous reprenons les informations essentielles (câblage) par la suite.

Datasheet "motorfader" Alps

Connexions

Il est important de faire de bonnes connexions, avec de la gaine thermorétractable si possible et en utilisant des couleurs différentes pour vous y retrouver.

Faites attention de ne pas faire chauffer le moteur ni de tordre ses pattes.

Nous avons choisi les couleurs suivantes :

Nom Couleur Fonction Type
A vert borne du moteur entrée
B orange borne du moteur entrée
1 noir borne min du potentiomètre entrée
2 bleu valeur variable du potentiomètre sortie
3 rouge borne max du potentiomètre entrée
gris curseur métallique sortie

Le noir n’est pas visible sur la photo ci-dessus, je ne l’avais pas câblé..

Utilisation

Lecture de la valeur du potentiomètre

La datasheet du potentiomètre montre un diagramme de principe du circuit. On voit d’ailleurs que les 3 connecteurs du potentiomètre ne sont pas ceux qu’on pourrait croire, ne vous laissez pas abuser en pensant que les 3 connecteurs côte à côte correspondent au potar.

Donc ce potentiomètre fonctionne comme une résistance variable : on va envoyer un potentiel maximum (masse et tension nominale disponible) et on recevra en retour un potentiel variable correspondant au curseur, situé entre la masse et la tension nominale (5 volts dans le montage).

Il suffit ensuite de mettre ce potentiel variable en entrée d’un convertisseur analogique numérique et on obtient une valeur qui correspond à la position du curseur le long de la ligne.

La précision dépend du convertisseur (CAN) utilisé : sur Arduino Duemilanove, c’est 10 bits donc une valeur entre 0 et 1024.

Contrôle du moteur

Comme tout moteur à courant continu, on utilise un composant de puissance pour convertir une consigne de vitesse en alimentation variable. Un pont en H fait très bien l’affaire, tel le L293D ou le SN754410 utilisé dans cet article sur le contrôle simple d’un moteur.

Ces petits circuits intégrés fonctionnent sans autre composant puisque les sécurités (diodes de roue libre, le D du L293D) sont déjà dans la puce.

Voici le résultat :

Détection du touché du curseur

On peut choisir de filtrer le signal, avec une résistance et un condensateur :

Une explication sur ce filtre est donnée ici : Filtrer un signal analogique. Cet article prend justement comme exemple le curseur de ce potentiomètre motorisé.

Schéma global

A venir.

Sous Fritzing, nous pouvons modéliser de manière réaliste les connexions entre une carte Arduino, un potentiomètre linéaire, un moteur à courant continu, et les différents composants électroniques (puces, câbles, résistances, piles, ...) pour permettre à un débutant de refaire le montage.

Amélioration

Même quand vous aurez fait fonctionner les 3 éléments de ce système, vous pourrez continuer à apprendre en développant vos propres algorithmes.

Algorithme de contrôle

Ce dispositif est idéal pour voir concrètement comment fonctionne un asservissement : il s’agit d’une boucle de contrôle qui permet de déclencher une action, d’observer le résultat et d’en déduire une réaction (correction de l’action).

Un asservissement classique en robotique est le PID (Proportionnel Intégral Dérivé) que nous introduisons dans cet article.

Démonstrateur public

Pour des explications scientifiques sur l’électricité, les moteurs, les entrées analogiques, le traitement du signal, etc... nous allons proposer aux élèves, aux étudiants et aux enseignants de pouvoir utiliser un de ces potentiomètres dans un montage qu’ils pourront manipuler et faire fonctionner.

Un message, un commentaire ?

modération a priori

Attention, votre message n’apparaîtra qu’après avoir été relu et approuvé.

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.