Voici un exemple rapide qui permet de comprendre comment contrôler un servo avec un Arduino. La particularité de ce montage est d’utiliser une alimentation indépendante pour le servo. En effet, un servo peut générer un courant plus important que ce qui est admis par l’alimentation fournie par l’Arduino. C’est vrai si on veut contrôler plusieurs servos.
Dans ce cas, il faut faire attention à connecter les masses des deux alimentations ensembles. Sinon le servo ne suit pas la consigne donnée par la carte Arduino.
Voici le montage ainsi que le code fonctionnel. Une entrée dans la console Série permet de donner la consigne au servo et de le voir bouger. (Ouvrez le montage dans Tinkercad en liquant sur le logo coloré pour qu’il soit plus aisé de voir code, montage et console Série en même temps).
Et ici on reproduit le code:
#include <Servo.h> // Include Servo library
Servo servo; // Instanciate Servo object
int position; // Declare variable to store servo position
// Setup procedure (executed once)
void setup() {
Serial.begin(9600); // Serial comm begin at 9600bps
servo.attach(9);// Declare servo pin as Arduino pin 9. Pin 2 to 13 can be used for servos.
}
// Loop procedure (executed endlessly)
void loop() {
if (Serial.available()) // When serial stream is available, allow reading
{
position = Serial.parseInt(); // Parse Serial buffer looking for int
servo.write(position); // Set position value to servo object
delay(20);// Wait for Servo to reach position before reading Serial again
}
}


Pingback: Un contrôleur pour 12 servos avec un Arduino – RandomCraftr