Programmation d'un servomoteur 180°
Programmation des Servomoteurs avec mBlock et Arduino IDE
Objectif :
Comprendre le fonctionnement des servomoteurs et apprendre à les programmer avec mBlock et Arduino IDE.
1. Introduction aux Servomoteurs
Qu’est-ce qu’un servomoteur ?
Un servomoteur est un moteur à rotation limitée, généralement 180°, qui est contrôlé par un signal PWM (Pulse Width Modulation). Il est utilisé dans de nombreux projets tels que les bras robotisés, les portes automatiques et les robots éducatifs.
Branchement d'un servomoteur à un Arduino Nano
Un servomoteur possède trois câbles :
-
Noir ou Marron → GND (Masse)
-
Rouge → 5V (Alimentation)
-
Jaune ou Orange → Signal (Entre les broches 2 et 13 du Nano)

➡️ Pour en savoir plus sur les servomoteurs, cliquez ici.
2. Configuration et Programmation avec mBlock :
Présentation des blocs spécifiques à la gestion des servomoteurs
Dans mBlock, la gestion des servomoteurs se fait à l’aide d’un bloc dédié permettant de définir un angle précis entre 0° et 180°.
Exercice 1 : Programmer un servomoteur en boucle
Consigne : Programmer un servomoteur 180° pour qu'il effectue en boucle un mouvement de 0° à 180° puis de 180° à 0°, avec une pause de 2 secondes entre chaque mouvement.
Correction :
Exercice 2 :
Programmation d’un Mouvement Automatisé avec mBlock
Créer un programme permettant :
✅ De faire bouger le servomoteur progressivement de 0° à 180° et inversement.
✅ De répéter le mouvement avec une boucle continue.
Correction :
3. Configuration et Programmation avec Arduino IDE :
Exercice 1 : Programmer un servomoteur pour un mouvement en boucle
Consigne : Faire osciller un servomoteur de 0° à 180° et inversement, avec une pause de 2 secondes entre chaque mouvement.
Etape 1 mouvement du servomoteur
Ecrire un programme qui fait en sorte de modifier l'angle de rotation de 0° a 180°
Etape 2 mouvement en boucle
Modifier le programme afin de crée une boucle tout en laissant une attente de 2 seconde pendant chaque rotation.
Correction : Code Arduino IDE :
#include <Servo.h>
Servo monServo; // Création de l'objet Servo
void setup() {
monServo.attach(9); // Connexion du servomoteur sur la broche D9
}
void loop() {
monServo.write(0); // Position à 0°
delay(2000); // Pause de 2 secondes
monServo.write(180); // Position à 180°
delay(2000); // Pause de 2 secondes
}
Exercice 2 :
Programmation d’un Mouvement Automatisé avec Arduino IDE
Créer un programme permettant :
✅ De faire bouger progressivement le servomoteur de 0° à 180° et inversement.
✅ D’utiliser une boucle pour répéter ce mouvement en continu.*
Etape 1 mouvement du servomoteur
Faire un programme permettant au servomoteur de faire une rotation de 0° a 180° et inversement.
Etape 2 mouvement en boucle
Modifier le programme pour crée une boucle regroupant la rotation du servomoteur de 0° à 180° et inversement pour que le servomoteur effectue les rotations de manière répétitive.
Correction :
#include <Servo.h>
Servo monServo;
void setup() {
monServo.attach(9);
}
void loop() {
for (int pos = 0; pos <= 180; pos++) { // De 0° à 180°
monServo.write(pos);
delay(15); // Ajuste la vitesse du mouvement
}
for (int pos = 180; pos >= 0; pos--) { // De 180° à 0°
monServo.write(pos);
delay(15);
}
}
4. Discussion et Applications
Applications pratiques
-
🤖 Bras robotisé
-
🗑️ Poubelle connectée
-
🤖 Little Bot
Questions et suggestions d’amélioration
✅ Ajouter un potentiomètre pour contrôler l’angle du servomoteur.
✅ Utiliser un bouton poussoir pour déclencher le mouvement.
✅ Remplacer le servomoteur 180° par un servomoteur à rotation continue.


No Comments