Publié 2026-04-01
Le micro SG90servomoteurmoteur (communément appelé « 9gservomoteur" est l'un des actionneurs les plus largement utilisés dans les projets électroniques débutants et intermédiaires. Il s'agit d'un servo petit et léger qui fournit un contrôle angulaire précis, ce qui le rend idéal pour la robotique, les véhicules télécommandés et les systèmes d'automatisation. Comprendre ses spécifications exactes, son câblage approprié et ses méthodes de programmation est essentiel pour garantir un fonctionnement fiable et éviter les pannes courantes telles que la surchauffe ou les engrenages dénudés.
Ce guide fournit des spécifications techniques vérifiées, des instructions de câblage étape par étape et des exemples de programmation prêts à l'emploi pour vous aider à intégrer avec succès ce servo dans vos projets.
Toutes les valeurs répertoriées ci-dessous sont dérivées de la fiche technique officielle du fabricant et vérifiées par des tests indépendants. Ces spécifications sont essentielles pour sélectionner la bonne alimentation et garantir un fonctionnement sûr.
| Paramètre | Valeur | Remarques |
|---|---|---|
| Tension de fonctionnement | 3,0 V – 6,0 V | 4,8 V – 5,0 V recommandés pour un couple et une stabilité optimaux |
| Couple de décrochage | 1,8 kg·cm (à 4,8 V) | Le couple diminue considérablement en dessous de 4,5 V |
| Vitesse de fonctionnement | 0,10 s/60° (à 4,8 V) | La vitesse augmente avec une tension plus élevée |
| Plage de rotation | 0° – 180° | Les butées mécaniques limitent la rotation ; ne forcez pas au-delà de cette plage |
| Largeur de bande morte | 5 µs | Changement minimal de largeur d'impulsion requis pour initier le mouvement |
| Poids | 9g (±1g) | Comprend les fils et le connecteur attachés |
| Dimensions | 22,8x12,2x27,4mm | Peut varier légèrement entre les lots de production |
| Type de connecteur | Connecteur femelle 3 broches (norme JR/Futaba) | Ordre des broches : signal (S), alimentation (VCC), masse (GND) |
| Matériel d'engrenage | Nylon | Engrenages en plastique; ne convient pas aux applications à couple élevé ou à charge continue |
> Source:Fiche technique du fabricant et spécifications d'asservissement standardisées vérifiées par rapport aux normes de l'industrie.
Un câblage incorrect est la cause la plus courante de dommages aux servos. Le SG90 utilise une interface standard à 3 broches. Identifiez correctement les broches avant de vous connecter.
Fil marron ou noir :Terre (GND) – connectez-vous à la terre du système.
Fil rouge :Alimentation (VCC) – connectez-vous à une alimentation stable de 4,8 V à 5,0 V.
Fil orange ou jaune :Signal (PWM) – connectez-vous à une broche compatible PWM du microcontrôleur.
| Fil de servo | Arduino Uno | ESP32 | Alimentation externe |
|---|---|---|---|
| Marron (GND) | GND | GND | GND de l'alimentation |
| Rouge (VCC) | Broche 5 V (faible courant uniquement) | Broche 5 V (faible courant uniquement) | Borne positive de l'alimentation externe 5V |
| Orange (signal) | Broche PWM (par exemple, D9) | GPIO compatible PWM | Non connecté à l'alimentation électrique |
Remarque sur la puissance critique :
Le SG90 peut aspirer jusqu'à250 mA pendant le mouvementet plus500 mA au décrochage. La plupart des régulateurs de tension intégrés aux microcontrôleurs (par exemple, la broche Arduino 5 V) ne peuvent pas fournir ce courant en toute sécurité, en particulier lors de l'utilisation de plusieurs servos. Pour un fonctionnement fiable :
Utilisez un service dédiéAlimentation externe 5Vévalué pour au moins 1A par servo.
Connectez lemasse de l'alimentation externe à la masse du microcontrôleurpour compléter le circuit de signal.
Fairepasalimentez le servo directement à partir de la broche 5 V du microcontrôleur pour des mouvements prolongés ou répétés.
Le SG90 est contrôlé par un signal PWM standard de 50 Hz. Comprendre la plage de largeur d'impulsion est essentiel pour un positionnement précis.
Fréquence:50 Hz (période = 20 ms)
Plage de largeur d'impulsion :500 µs à 2400 µs (théoriquement) ; la plage mécanique réelle correspond à1 000 µs à 2 000 µssur la plupart des unités.
| Angle | Largeur d'impulsion | Cycle de service (à 50 Hz) |
|---|---|---|
| 0° | 1000 µs | 5.0% |
| 90° | 1500 µs | 7.5% |
| 180° | 2000 µs | 10.0% |
Problème courant :
Certains contrôleurs fonctionnent par défaut sur une plage de 500 µs à 2 400 µs, ce qui peut forcer le servo à s'arrêter mécaniquement, provoquant un bourdonnement, une surchauffe et des dommages aux engrenages. Calibrez toujours votre signal de sortie sur la plage de 1 000 à 2 000 µs.
Ces exemples sont conçus pour une utilisation immédiate. Ils supposent un câblage approprié et une alimentation externe comme décrit dans la section 2.
#inclureServo monServo ; void setup() { monServo.attach(9, 1000, 2000); // Attachez à la broche 9, définissez la plage de largeur d'impulsion } void loop() { myServo.write(0); // Déplacement vers un délai de 0 degré (1000); monServo.write(90); // Déplacement vers un délai de 90 degrés (1000); monServo.write(180); // Déplacement vers un délai de 180 degrés (1000); }
à partir de la broche d'importation de la machine, temps d'importation PWM # Configurer PWM sur la broche GPIO 15, fréquence 50 Hz servo = PWM (Pin (15), freq = 50, duty_u16 = 0) def set_angle (angle): # Convertir l'angle en rapport cyclique (0-180 à 1000-2000 µs) pulse_width = 1000 + (angle / 180)1000 devoir = int (pulse_width / 2000065535) # Période de 20 ms servo.duty_u16(duty) # Test de mouvement set_angle(0) time.sleep(1) set_angle(90) time.sleep(1) set_angle(180) time.sleep(1)
Le PWM matériel du Raspberry Pi est recommandé pour un fonctionnement stable.
import pigpio import time pi = pigpio.pi() if not pi.connected: exit() # Définir la plage de largeur d'impulsion sur GPIO 18 pi.set_servo_pulsewidth(18, 0) # Démarrer sans signal def set_angle(angle): pulse = 1000 + (angle / 180) * 1000 pi.set_servo_pulsewidth(18, pulse) # Sweep set_angle(0) time.sleep(1) set_angle(90) time.sleep(1) set_angle(180) time.sleep(1) pi.set_servo_pulsewidth(18, 0) # Signal d'arrêt pi.stop()
![]()
Cause:Alimentation électrique insuffisante ou masse partagée manquante.
Solution:Assurez-vous que la masse de l’alimentation externe est connectée à la masse du microcontrôleur. Vérifiez que l'alimentation peut fournir au moins 0,5 A en continu.
Cause:La largeur d'impulsion du signal dépasse la plage mécanique.
Solution:Limitez la plage PWM à 1 000-2 000 µs. Ne commandez pas d’angles au-delà de 0° ou 180°.
Cause:La charge mécanique dépasse le couple de décrochage ou le servo est bloqué.
Solution:Réduisez la charge. Le SG90 est conçu pour les petites liaisons et les mécanismes légers (par exemple, diriger une petite voiture RC, déplacer un cardan de caméra de moins de 50 g). Ne pas utiliser pour une rotation continue ou pour soulever des charges lourdes.
Cause:La plage du signal est calibrée entre 500 et 2 500 µs ou des paramètres de bibliothèque incorrects.
Solution:Définissez explicitement la plage de largeur d'impulsion dans votre code, comme indiqué dans l'exemple Arduino ci-dessus.
Le SG90 est conçu pour un fonctionnement intermittent et léger. Comprendre ses limites mécaniques évite une défaillance prématurée.
Mécanisme de direction pour petites voitures RC (poids du véhicule inférieur à 500 g)
Supports de caméra panoramiques et inclinables (poids de la caméra
Articulations de bras robotiques dans des kits pédagogiques (pas de charges utiles lourdes)
Mécanismes de verrouillage, petits leviers ou aiguilles indicatrices
Rotation continue ou entraînement des roues (nécessite un servomoteur à rotation continue ou un moteur à courant continu)
Applications nécessitant des engrenages métalliques ou un couple élevé
Fonctionnement continu sous charge (par ex. commande de tapis roulant)
Dans un projet typique de conversion de voiture RC à l'échelle 1/24, un seul SG90 est utilisé pour diriger les roues avant. Le servo se connecte directement à une tringlerie de direction. Dans ce scénario, le servo fonctionne à 5 V à partir d'une batterie séparée. Lorsque les roues se trouvent sur une surface à faible friction, la consommation de courant reste inférieure à 200 mA. Cependant, si les roues coincent contre un tapis ou un trottoir, le servo cale, consommant plus de 500 mA et peut endommager les engrenages en nylon. Pour éviter tout dommage, les utilisateurs installent unéconomiseur de servos(une liaison flexible qui absorbe les chocs) et assurez-vous que le mécanisme de direction se déplace librement avant de l'utiliser.
Le microservomoteur SG90 est un composant fiable et bien documenté lorsqu'il est utilisé dans les limites de sa conception. Une intégration réussie dépend de trois facteurs critiques :
1. Alimentation :Utilisez toujours une alimentation externe de 5 V avec une masse commune.
2. Étalonnage des signaux :Limitez les impulsions PWM à la plage de 1 000 à 2 000 µs.
3. Gestion des charges :Ne dépassez pas le couple de décrochage et n’appliquez pas de force continue.
Test avant installation :Exécutez le servo avec votre microcontrôleur et votre alimentation externe sur un banc pour vérifier la plage de mouvement et la consommation de courant.
Utilisez un économiseur de servo :Pour toute liaison mécanique susceptible de subir des chocs ou des grippages, ajoutez un coupleur flexible pour protéger les engrenages internes.
Surveiller la température :Si le servo devient trop chaud pour être touché après un fonctionnement normal, réévaluez la stabilité de l'alimentation et la charge mécanique.
En suivant les spécifications, les schémas de câblage et les exemples de code fournis dans ce guide, vous pouvez intégrer le SG90 de manière fiable dans vos projets et éviter les points de défaillance les plus courants.
Heure de mise à jour:2026-04-01
Contactez le spécialiste des produits Kpower pour recommander un moteur ou une boîte de vitesses adapté à votre produit.