Publié 2026-04-06
Cet article explique le principe de fonctionnement fondamental de la modulation de largeur d'impulsion (PWM) pour contrôler lesservomoteurmoteurs. Vous apprendrez comment un simple signal d'impulsion variable détermine leservomoteurLa position de l'arbre, en utilisant des exemples courants du monde réel tels que des bras robotiques et des véhicules télécommandés (RC). Aucun nom de marque ou d'entreprise n'est mentionné et toutes les informations sont basées sur des normes industrielles largement adoptées pour les amateurs et les industriels.servomoteursystèmes.
La modulation de largeur d'impulsion (PWM) est une méthode de codage d'une commande de position dans un signal numérique répétitif. Les servomoteurs utilisent le PWM car ils ne nécessitent qu'un seul fil de commande, sont très fiables et faciles à générer avec des microcontrôleurs.
Un signal PWM a deux caractéristiques clés :
Période– le temps d'un cycle marche-arrêt complet.
Largeur d'impulsion– la durée pendant laquelle le signal reste élevé (activé) pendant chaque période.
Pour les servos standard, la largeur d'impulsion se traduit directement par une position angulaire spécifique de l'arbre de sortie.
Presque tous les servos conventionnels suivent la même norme PWM :
Important:La largeur d'impulsion détermine l'angle, tandis que la période reste constante à 20 ms. Le servo ignore le temps restant (période d'arrêt) jusqu'à l'arrivée de la prochaine impulsion.
À l'intérieur d'un servo standard, il y a un petit moteur à courant continu, un potentiomètre (capteur de rétroaction) et un circuit de commande. Voici le processus étape par étape :
1. Le circuit de contrôle reçoit le signal PWM.
2. Il mesure la largeur d'impulsion du signal entrant.
3. Il compare cette largeur d'impulsion avec la position actuelle de l'arbre (rapportée par le potentiomètre).
4. S'il y a une différence, le circuit entraîne le moteur à courant continu pour faire tourner l'arbre jusqu'à ce que la position corresponde à la largeur d'impulsion commandée.
5. Le servo maintient cette position tant que la même largeur d'impulsion est répétée toutes les 20 ms.
Principe de base : La largeur d'impulsion est égale à l'angle cible.Plus l'impulsion est large, plus l'arbre tourne loin dans un sens ; plus l'impulsion est étroite, plus elle tourne dans la direction opposée.
Un amateur construit un bras robotique à 3 articulations. Le joint de base utilise un servo standard. Pour faire pivoter le bras de 30° dans le sens des aiguilles d'une montre, le microcontrôleur envoie une impulsion de 1,0 ms toutes les 20 ms. Pour le faire pivoter de 150° dans le sens inverse des aiguilles d'une montre, il envoie une impulsion de 2,0 ms. Le bras se déplace en douceur dans chaque position et le maintient fermement, même lorsque vous transportez un objet léger.
Dans une voiture RC, un servo contrôle les roues avant. Lorsque le volant de l’émetteur est centré, le récepteur émet une impulsion de 1,5 ms – les roues pointent droit. Tourner la roue complètement à gauche réduit l'impulsion à 1,0 ms, dirigeant les roues jusqu'à la butée gauche. Tourner complètement à droite augmente le pouls à 2,0 ms et se dirige vers la butée droite. Le conducteur bénéficie d’une réponse de direction instantanée et proportionnelle.
Bien que différents modèles de servos aient des plages légèrement différentes, la relation typique est la suivante :
Relation linéaire :Entre 1,0 ms et 2,0 ms, l'angle change de manière linéaire. Par exemple, 1,25 ms donne environ 45° et 1,75 ms donne environ 135°.
Largeur d'impulsion minimale :L'envoi d'impulsions inférieures à 0,5 ms peut provoquer un comportement erratique ou l'absence de mouvement.
Largeur d'impulsion maximale :Des impulsions supérieures à 2,5 ms peuvent entraîner le servo au-delà de ses limites mécaniques, endommageant potentiellement la butée interne.
Fréquence des signaux :Le servo attend un signal de 50 Hz (période de 20 ms). Des fréquences plus élevées (par exemple 100 Hz ou 300 Hz) sont utilisées par des servos « numériques » spéciaux, mais les servos analogiques standard surchaufferont ou trembleront.
tension:La plupart des servos standard fonctionnent entre 4,8 V et 6,0 V. Une tension plus basse réduit le couple ; une tension plus élevée peut détruire le circuit de commande.
> La position de l'arbre d'un servomoteur standard est déterminée uniquement par la largeur d'impulsion du signal PWM, à condition que le signal se répète toutes les 20 ms. La modification de la largeur d'impulsion modifie l'angle ; garder la largeur d'impulsion constante maintient la position.
C’est le concept le plus important à retenir. Le servo ne se soucie pas du pourcentage du rapport cyclique – seulement de la largeur d'impulsion absolue en millisecondes.
Sur la base des principes ci-dessus, suivez ces étapes pratiques pour vous assurer que votre système d'asservissement fonctionne correctement :
1. Génère un signal PWM précis de 50 Hz (période de 20 ms)– Utilisez une bibliothèque de servos dédiée ou une minuterie matérielle sur votre microcontrôleur. Évitez les retards logiciels qui provoquent une instabilité temporelle.
2. Commencez par l'impulsion neutre (1,5 ms)– Avant de connecter une charge, envoyez une impulsion de 1,5 ms. Cela centre le servo et évite les sauts brusques.
3. Limiter la plage d'impulsions à 1,0 ms – 2,0 ms– Cela respecte la course mécanique sûre de la plupart des servos. Testez les points finaux exacts de votre servo spécifique en augmentant lentement de 1,0 ms à 2,0 ms tout en observant l'arbre.
4. Utilisez une alimentation séparée pour les servos– Les servos peuvent consommer de 0,5 A à 2 A ou plus pendant le mouvement. N’alimentez jamais un servo directement à partir de la broche 5 V d’un microcontrôleur.
5. Ajoutez un gros condensateur (1 000 µF ou plus)à travers les lignes électriques du servo à proximité du servo pour absorber les pics de tension et empêcher les réinitialisations.
6. Actualiser le signal au moins toutes les 20 ms– Si le signal PWM s'arrête, la plupart des servos conserveront leur dernière position mais risquent de se desserrer. Envoyez toujours des impulsions continues.
7. Calibrer chaque servo individuellement– En raison des tolérances de fabrication, deux servos du même modèle peuvent avoir des largeurs d'impulsion légèrement différentes de 0° et 180°. Écrivez une routine d'étalonnage pour trouver les valeurs min/centre/max exactes.
Le contrôle PWM des servomoteurs est une méthode robuste et standard de l'industrie basée sur une relation simple : la largeur d'impulsion est égale à l'angle. Avec une période fixe de 20 ms, la variation du temps haut de 1,0 ms à 2,0 ms fait tourner l'arbre de 0° à 180°. Les applications du monde réel telles que les bras robotiques et les véhicules RC s'appuient quotidiennement sur ce principe. En respectant les spécifications de signal recommandées et en suivant les étapes concrètes ci-dessus, vous pouvez obtenir un positionnement de servo précis, reproductible et fiable dans vos propres projets.
Heure de mise à jour:2026-04-06
Contactez le spécialiste des produits Kpower pour recommander un moteur ou une boîte de vitesses adapté à votre produit.