Tuto Arduino - Servo

Faire fonctionner un servomoteur de modéliste à l'aide d'une Arduino UNO et d'un potentiomètre 1Kohms.

On fait appel à la librairie Servo.h de l'environement Arduino.

Attention : ici le sens des pattes du servo sont inversées par rapport à la photo. Les pistes + et - sont aussi inversées !

/*
Un potentiomètre 1Kohms sert de commande pour actionner un servomoteur
*/
 
 
#include <Servo.h> 
 
const int analogInPin = A0; // Numéro de la broche à laquelle est connecté 
                            // le potentiomètre (fil du milieu)
const int servo = 9;        // Numéro de pin du servo.
Servo myServo;              // Créé un "objet" de type servo, nommé "myservo".
int sensorValue = 0;        // Valeur du potentiomètre
int angleValue  = 0;        // Valeur envoyée au buzzer
 
 
void setup() 
{
 
  pinMode(analogInPin, INPUT); // Indique que la broche analogInPin est une
                               // entrée analogique.
 
  int sensorValue = 0;         // Valeur lue sur la photorésistance
 
  myServo.attach(servo);       // attache la pin du servo sur l'objet "myservo".
 
  Serial.begin(9600);          // Initialise la communication avec l'ordinateur.
 
}
 
 
void loop()
{
 
  // Lit la valeur de la photorésistance et
  // stocke le résultat dans sensorValue :
  sensorValue = analogRead(analogInPin);
 
  // envoie l'information à l'ordinateur
  Serial.println(sensorValue);
 
  // change sensorValue vers une intervalle de 0 à 180 (degrés)
  // et stocke le résultat dans angleValue :
  angleValue = map(sensorValue, 0, 1023, 0, 180) ;
 
  myServo.write(angleValue);
 
  delay(33);
 
}