banner
Centre d'Information
Société intégrée

Potentiomètres vs encodeurs rotatifs et comment les utiliser avec Arduino

May 29, 2023

Les potentiomètres et les codeurs rotatifs semblent presque identiques à première vue, mais ils fonctionnent de différentes manières. Découvrez comment utiliser les deux avec un Arduino.

Parmi les composants électroniques de contrôle utilisateur, les boutons rotatifs se distinguent comme étant parmi les plus satisfaisants à utiliser. Ils peuvent compléter les écrans tactiles et autres périphériques d’entrée, tout en fonctionnant bien avec les boutons et les commutateurs. Mais comment pouvez-vous ajouter un bouton à vos propres projets DIY Arduino ?

Vous avez deux options principales : un potentiomètre ou un encodeur rotatif. Ces composants peuvent sembler similaires, mais les méthodes pour les utiliser avec un périphérique tel qu'une carte microcontrôleur Arduino sont très différentes. Voyons comment ils se comparent les uns aux autres.

La plupart des potentiomètres et encodeurs rotatifs que les bricoleurs rencontreront se présentent sous une forme similaire. Ils ont une base cuboïde ou cylindrique avec des pattes de connecteur attachées et une tige ronde qui se tord et comporte des découpes pour y poser un capuchon.

Certains potentiomètres ont un aspect différent, comme ceux qui se présentent sous la forme de longues diapositives, comme celles que l'on trouve sur les platines de mixage musicale. Cependant, en ce qui concerne les encodeurs rotatifs, à première vue, ils semblent presque identiques aux encodeurs rotatifs, vous seriez donc pardonné de penser qu'ils sont identiques.

Un potentiomètre est essentiellement une résistance variable. Lorsque l'arbre tourne, la résistance à l'intérieur du potentiomètre change, permettant à l'utilisateur de modifier les propriétés d'un circuit sans avoir à le reconstruire. Les potentiomètres peuvent être à la fois analogiques et numériques, mais les potentiomètres numériques imitent les potentiomètres analogiques, ce qui les rend très similaires à utiliser.

Les potentiomètres ont toujours un point de départ et un point final définis où l'arbre ne peut plus tourner. Certains potentiomètres ont une sensation de bosse lorsqu'ils sont tournés, mais beaucoup sont également lisses, comme ceux que l'on trouve sur les anciennes chaînes stéréo.

Bien qu'ils soient analogiques, les potentiomètres fonctionnent bien avec les microcontrôleurs. Vous pouvez facilement configurer un potentiomètre avec un Raspberry Pi Pico ou un Arduino.

Les codeurs rotatifs déterminent la position de leur arbre à l'aide d'un capteur pour fournir un signal analogique ou numérique à l'appareil auquel ils sont connectés. Cela indique à l'appareil dans quelle position se trouve l'encodeur. À côté de l'arbre rotatif, les encodeurs rotatifs ont généralement également un bouton intégré qui est actionné en poussant l'arbre vers le bas.

Contrairement aux potentiomètres, les codeurs rotatifs peuvent tourner sans s'arrêter et comportent presque toujours des bosses tactiles pour chacune des positions de l'arbre. De nombreuses voitures modernes utilisent des encodeurs rotatifs pour contrôler leurs systèmes de divertissement.

Grâce à leur conception simple, utiliser un potentiomètre avec un Arduino est simple. Votre potentiomètre dispose de trois connecteurs : masse, sortie et vref. Les broches de masse et vref se connectent respectivement aux connecteurs GND et 5V de votre Arduino, tandis que la broche de sortie du potentiomètre se connecte à l'une des entrées analogiques de votre carte.

Le code de votre potentiomètre Arduino commence par la baseinstallation()etboucle() modèle que vous verrez lorsque vous créerez un nouveau fichier dans l’IDE ​​Arduino. Tout d'abord, ajoutez unconst entiervariable au début du code pour enregistrer la connexion de la broche analogique du pot – dans ce cas, A0.

Suite à cela, leinstallation() la fonction est simple : il vous suffit de déclarer la broche de votre potentiomètre comme entrée. Vous pouvez également démarrer une connexion série si vous souhaitez envoyer des données à votre PC à des fins de diagnostic.

Ensuite, il est temps de configurer leboucle() fonction. Commencez par créer unintvariable en utilisant lelectureanalogique() fonction pour mémoriser la position de votre potentiomètre. Suite à cela, vous pouvez utiliser lecarte() fonction pour réduire la taille de la valeur à laquelle vous avez affaire - dans cet exemple pour correspondre aux spécifications PWM, par exemple pour contrôler la luminosité d'une LED. Ajoutez un court délai pour assurer la stabilité.

Maintenant que vous avez la position de votre potentiomètre, vous pouvez l'utiliser avec d'autres parties du code. Par exemple, unsi