Commande de servomoteur avec Arduino

Utilisation de capteurs et composants électroniques avec Arduino.
Une fiche de tutoriel pour chaque.

Commande de servomoteur avec Arduino

Messagepar tiptop » Mar 3 Déc 2013 22:11

Tutoriel d'utilisation d'un servo moteur avec une carte Arduino

Composants utilisés

Principe de fonctionnement
La carte Arduino utilise la librairie Servo.h
Elle génère un signal périodique de largeur d'impulsion variable.
Le servo se positionne précisément sur un angle (entre 0 et 180°) qui dépend de ce codage en largeur d'impulsions.

Image

Branchements
S'il y a plusieurs servos, rajouter une alimentation extérieure (limite de 40 mA maximum par pin Arduino en sortie !)
  • Rouge = +V
  • Marron = GND
  • Orange = Arduino pin 2, signal de commande du servo

Exemple de code

Code: Tout sélectionner
//==========================================================
// C ROLLAND dec 2012 - tiptopboards.com
// Commande d'un servomoteur rotation de 0 à 180 degrés
// ou un servo linéaire.
//==========================================================
// Branchements :
//Servo : Rouge = +V, Brun = GND, Orange = commande par arduino
// Brancher la commande de servo sur pin 2 dans cet exemple
// Arduino génère un signal périodique de largeur d'impulsion variable

#include <Servo.h>       //Bibliothèque servo à installer

Servo mon_servo;

void setup()
{
  pinMode(2, OUTPUT);   //Commande de servo branché sur pin 2
  mon_servo.attach(2);
 
  Serial.begin(9600);  //Pour le debuggage, affichage écran PC
  Serial.println("Test du servomoteur");
}

void loop()
{ // le servo avance lentement dans un sens puis repart vite en arrière
 int saut = 1;  //Finesse du pas de déplacement
 int attente=30;   //delai en millisecondes entre 2 positions
 for (int val=0; val<190; val=val+saut)
   {mon_servo.write(val);
    Serial.print("Le servo est en position: ");
    Serial.println(val, DEC);
    delay(attente);  //millisecondes entre 2 positions
   }
}


Références
tiptopboards - admin
Avatar de l’utilisateur
tiptop
Administrateur du site
 
Messages: 86
Inscription: Mar 13 Aoû 2013 20:38
Localisation: 38

Retourner vers Capteurs et composants

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité