Utiliser un potentiomètre avec Arduino

Le potentiomètre 3 fils Arduino (résistance variable) est utilisé pour ajuster ou régler divers paramètres dans un circuit électrique – puissance, tension, volume sonore, etc. Voyons comment connecter correctement la résistance variable (module potentiomètre 10k) à l’Arduino et présentons quelques exemples de programmes pour régler la luminosité des LED et l’angle du servomoteur connecté au microcontrôleur Arduino.


Pour cette activité, nous aurons besoin:

  • Arduino Uno / Arduino Nano / Arduino Mega
  • potentiomètre 10k Arduino
  • LEDs et résistances
  • servo moteur 3 points
  • breadboard
  • fils de connexion

Matériel supplémentaire sur ce sujet:

  1. Branchement encodeur rotatif avec Arduino
  2. Branchement joystick analogique Arduino
  3. Saisie de texte avec encodeur sur LCD 1602

Potentiomètre (résistance variable) datasheet, pinout

La résistance variable dans le circuit électrique avec la carte Arduino Uno ou Nano est utilisée comme un diviseur de tension. Les broches du potentiomètre sont alimentées en tension (5V et GND), et la broche du milieu est un contact mobile. En tournant le bouton du potentiomètre, la tension du signal sur la broche du milieu passe de la valeur maximale (5V) à zéro.

Potentiomètre Arduino pinout (datasheet)
Potentiomètre Arduino pinout, datasheet

Caractéristiques potentiomètre 10k Arduino

  • Alimentation: 3,3 V – 5 V
  • Type: Linéaire
  • Impédance: 100kΩ

Les potentiomètres sont de différents types. En fonction de la nature de la variation de la résistance, ils sont divisés en: linéaire (la résistance change dans une relation directe), logarithmique et exponentielle (la résistance change avec une intensité différente). Selon le type de cas, il s’agit de: monotour, multi-tour, curseur, etc. Par usage: variables et de réglage.

Comment brancher potentiomètre 3 fils Arduino

Comment connecter potentiomètre Arduino
Comment connecter un potentiomètre avec Arduino

Les broches les plus extérieures de la résistance variable (module potentiomètre) sont connectées aux ports d’alimentation (5V et GND). Le contact central est un contact glissant, sur lequel la tension varie en raison de la modification de la résistance lorsque le bouton est tourné. La polarité de la connexion « + » et « – » n’a pas d’importance, seule l’inversion du signal du potentiomètre se produira. Assemblez le circuit suivant et chargez le code donné.

Programme Arduino pour potentiomètre

void setup() {
   Serial.begin(9600);  // ouvre le port série
   pinMode(A1, INPUT);
}

void loop() {
   int val = analogRead(A1);  // lit la valeur actuelle du potentiomètre

   Serial.println(val); 
   delay(500);  // attend 500 ms
}

Explication du code pour cablage potentiometre Arduino:

  1. si plusieurs potentiomètres 3 fils sont utilisés, ils doivent être connectés à d’autres entrées analogiques de l’Arduino.
Branchement le potentiomètre Arduino avec LED
Branchement potentiomètre 10k Arduino avec LED

Pour régler la luminosité de la LED à l’aide d’une résistance variable (potentiomètre), lisez le potentiomètre en le connectant à l’entrée analogique. En fonction de la rotation du bouton du potentiomètre, vous devriez modifier la luminosité de la LED selon une relation linéaire. Ceci est assez facile à faire sur le microcontrôleur, le schéma de connexion de potentiomètre (la résistance variable) avec un exemple de code est placé ci-dessous.

Programme Arduino pour potentiomètre et LED

void setup() {
   pinMode(10, OUTPUT);
   pinMode(A1, INPUT);
}

void loop() {
   int val = analogRead(A1);  // lit la valeur actuelle du potentiomètre

   val = val / 4;
   analogWrite(10, val);
}

Explication du code pour potentiomètre Arduino avec LED:

  1. la LED est connectée à la sortie analogique avec un signal PWM;
  2. les données du port A1, qui sont dans la gamme 0…1023, nous divisons par 4 et obtenons la gamme de 0 à 255 pour changer la luminosité de la LED.
Branchement le potentiomètre Arduino avec servo
Branchement potentiometre Arduino avec servomoteur

Le servomoteur est connecté aux sorties numériques de l’Arduino Nano. Dans le croquis, nous utilisons la fonction map, qui transfère la valeur de la variable de la plage de valeurs actuelle à la nouvelle plage de manière proportionnelle. Ainsi, les valeurs du potentiomètre dans la plage de 0…1023, nous les transférons dans la nouvelle plage de 0 à 180 (l’angle de rotation du servomoteur). Assemblez le circuit et chargez le croquis suivant.

Programme Arduino pour potentiomètre et servo

#include "Servo.h"
Servo servo;  // création de l'objet "servo"

void setup() {
   servo.attach(10);  // attache le servo au pin spécifié
   pinMode(A1, INPUT);
}

void loop() {
   int val = analogRead(A1);  // lit la valeur actuelle du potentiomètre

   val = map(val, 0, 1023, 0, 180);
   servo.write(val);
}

Explication du code pour potentiometre 3 fils avec servo:

  1. la fonction map Arduino transfère la valeur de la variable val de la plage de valeurs de 0 à 1023 à la nouvelle plage de valeurs de 0 à 180;
  2. un petit délai (delay) peut être ajouté au code.




12 Replies to “Branchement module potentiomètre Arduino 3 fils”

  1. Bonjour est t’il possible d’utiliser un potentiomètre à glissière bas profil PTB0143 sur un AZ-Nano V3-Board avec Atmega328 CH340. Pour pouvoir l’utiliser comme usb Pinball shooter sur windows avec le logiciel mouse Plunger

  2. bonjour, je ne comprend pas beaucoup Arduino mais je dois faire un projet sur un potentiomètre qui régularise le moteur HELP ME PLEASE !!!!!!
    si vous pouvais m’aider

    1. voicie le code :

      const int potPin = A0; // Broche analogique utilisée pour lire la valeur du potentiomètre
      const int motorPin1 = 9; // Broche numérique connectée au contrôle du moteur (IN1)
      const int motorPin2 = 10; // Broche numérique connectée au contrôle du moteur (IN2)

      void setup() {
      pinMode(motorPin1, OUTPUT);
      pinMode(motorPin2, OUTPUT);
      }

      void loop() {
      int potValue = analogRead(potPin); // Lire la valeur du potentiomètre (0-1023)
      int motorSpeed = map(potValue, 0, 1023, 0, 255); // Convertir la valeur du potentiomètre en une plage de 0 à 255 (PWM)

      // Définir la vitesse du moteur en utilisant la PWM
      analogWrite(motorPin1, motorSpeed);
      analogWrite(motorPin2, 0); // Mettre l'autre sens du moteur à l'arrêt
      }

      voici les etap:
      Matériel requis :

      Arduino Uno (ou tout autre modèle compatible)
      Potentiomètre (potentiomètre linéaire)
      Moteur DC
      Driver de moteur (L293D, L298N, etc.)
      Breadboard et fils de raccordement
      Alimentation externe pour le moteur (si nécessaire)
      Étapes :

      Connectez votre potentiomètre à l’Arduino :

      Connectez la patte gauche (ou droite) du potentiomètre à la broche 5V de l’Arduino.
      Connectez la patte droite (ou gauche) du potentiomètre à la broche GND (masse) de l’Arduino.
      Connectez la patte centrale du potentiomètre à l’une des broches analogiques de l’Arduino (par exemple, A0).
      Connectez votre moteur et le driver de moteur à l’Arduino :

      Consultez le schéma de votre driver de moteur pour savoir comment connecter les fils du moteur et de l’alimentation.
      Connectez les broches de commande du driver de moteur (par exemple, les broches IN1 et IN2 pour un driver L293D) à des broches numériques de l’Arduino.

    2. Bonjour! Pas de souci, je vais t’aider avec ça. Pour commencer, pourrais-tu me donner plus de détails sur ton projet avec le potentiomètre et le moteur? Quel type de moteur utilises-tu? Et qu’aimerais-tu que ton potentiomètre fasse exactement?

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. Découvrez comment les données de vos commentaires sont traitées.