🛠 Piloter un micro-servo avec la PWM du GIGA R1

Arduino GIGA R1 · intermediaire · Schéma : IMG-giga-r1-i1-1-pwm-servo.svg — Micro-servo alimenté par une source externe 5 V, fil de commande relié à une broche PWM du GIGA R1, masses communes entre la carte et l'alimentation.

Objectifs

Maîtriser la sortie PWM (modulation de largeur d'impulsion) pour commander un micro-servo d'angle. Vous apprendrez à utiliser la bibliothèque Servo du cœur Arduino, à alimenter correctement une charge extérieure et à respecter la logique 3,3 V du GIGA R1 (76 broches GPIO disponibles sur la carte).

Matériel

Code complet

// GIGA R1 WiFi — balayage de micro-servo avec la bibliotheque Servo
#include <Arduino.h>
#include <Servo.h>

const int BROCHE_SERVO = D9;  // broche PWM de la sérigraphie
Servo monServo;
int angle = 0;
int sens = 1;

void setup {
  Serial.begin(115200);
  monServo.attach(BROCHE_SERVO);   // attache la broche au signal servo
  monServo.write(0);
}

void loop {
  angle += sens * 5;               // balle 0 -> 180 -> 0
  if (angle >= 180) sens = -1;
  if (angle <= 0)   sens = 1;
  monServo.write(angle);
  Serial.printf("angle = %d\n", angle);
  delay(30);
}

Câblage : fil orange (signal) vers D9, fil rouge vers +5 V externe, fil marron vers GND externe, et GND externe reliée à un GND de la carte (masse commune obligatoire).

Vérification attendue

Le servo balaie en aller-retour régulier de 0° à 180°. Le Moniteur série (115200 bauds) affiche l'angle courant. Le mouvement est fluide, sans tremblement ni sifflement de saturation.

Erreurs fréquentes

Autres tutoriels pour cette carte

Exemples de code pour cette carte

← Retour à la fiche 🛠 Tous les tutoriels