Contrôle de la position d’un servomoteur à l’aide d’un potentiomètre avec un Arduino
Description :
Projet permettant de contrôler la position d’un servomoteur à l’aide d’un potentiomètre connecté à un Arduino.
La rotation du potentiomètre est lue via une entrée analogique, convertie en angle, et transmise au servo, qui se positionne en conséquence. Cette configuration offre un contrôle précis et interactif du servomoteur, idéal pour des applications en robotique, bras articulés, systèmes mécaniques ou tout projet nécessitant un ajustement dynamique de la position d’un servo.
Prérequis :
- 1 x Carte Arduino Uno
- 1 x Potentiomètre 10 KΩ
- 1 x Servo numérique Sg90
- 1 x Condensateur 100uf 25v
- 1 x Breadboard
- Fils de connexion
Version IDE :
- Arduino IDE 2.3.5
Vidéo de démonstration :
Schéma de câblage :


Code :
/*
Contrôle de la position d'un servomoteur à l'aide d'un potentiomètre (résistance variable)
par Michal Rinott <http://people.interaction-ivrea.it/m.rinott>
Modifié le 8 novembre 2013
par Scott Fitzgerald
http://www.arduino.cc/en/Tutorial/Knob
*/
#include <Servo.h>
Servo myservo; // créer un objet Servo pour contrôler un servo
int potpin = A0; // broche analogique utilisée pour connecter le potentiomètre
int val; // variable pour lire la valeur de la broche analogique
void setup() {
myservo.attach(9); // attache le servo sur la broche 9 à l'objet Servo
}
void loop() {
val = analogRead(potpin); // lit la valeur du potentiomètre (valeur entre 0 et 1023)
val = map(val, 0, 1023, 0, 180); // mettez-le à l'échelle pour l'utiliser avec le servo (valeur entre 0 et 180)
myservo.write(val); // définit la position du servo en fonction de la valeur mise à l'échelle
delay(15); // attend que le servo arrive
}
