comment programmer un servomoteur Comment programmer un servomoteur ? Trois étapes pour résoudre la gigue et contrôler facilement les angles_Servo_Industry Insights_Kpower
Maison > Aperçu de l'industrie >Servomoteur
ASSISTANCE TECHNIQUE

comment programmer un servomoteur Comment programmer un servomoteur ? Trois étapes pour résoudre la gigue et contrôler facilement les angles

Publié 2026-03-25

Avez-vous déjà rencontré cette situation : vous avez acheté unservomoteuret je voulais l'utiliser sur votre petite invention, mais lorsque vous le branchez, soit il ne bouge pas, soit il vibre de façon folle ? Ne vous inquiétez pas, ce n'est pas que leservomoteurest cassé, il est fort probable que vous n'ayez pas trouvé la bonne façon de « communiquer » avec lui. Aujourd'hui, nous allons parler de la façon d'écrire un programme pour leservomoteurafin qu'il puisse obéir à vos instructions et le tourner autant que vous le souhaitez.

Quelle est la cause première des vibrations de l’appareil à gouverner ?

De nombreux amis ont simplement connecté avec désinvolture les trois fils du servo (alimentation, masse et signal) à la carte de développement dès qu'ils ont commencé, puis ont commencé à douter de leur vie lorsqu'ils ont vu le servo « trembler ». En fait, la cause première des vibrations des servos est, la plupart du temps, une alimentation électrique insuffisante. Il y a un petit moteur à l'intérieur du servo, et le courant instantané au démarrage est très important. Si votre alimentation (telle que la broche 5 V sur la carte) ne peut pas fournir ce courant instantané, la tension sera abaissée, provoquant une confusion dans la logique de la puce à l'intérieur du servo.

Une autre raison courante est que le câble de signal n'est pas connecté correctement ou que la fréquence du signal PWM envoyé par le programme est incorrecte. Le servo contrôle l'angle en envoyant une largeur d'impulsion spécifique de 50 fois par seconde (soit 50 Hz) sur la ligne de signal. Si vous définissez d'autres fréquences dans le programme, le servo ne comprendra pas ce que vous dites et commencera naturellement à se déplacer de manière aléatoire. Vérifiez votre code pour voir si la fréquence PWM n'est pas réglée sur 50 Hz.

Comment choisir une alimentation stable pour l'appareil à gouverner

Ce problème est directement lié à la question de savoir si l'appareil à gouverner peut fonctionner normalement. Si vous n'utilisez qu'un seul servo, et qu'il s'agit d'un petit servo comme 9g, vous pouvez à peine utiliser la broche 5V de la carte de développement pour alimenter directement, mais ce n'est vraiment que "à peine". Pour la stabilité du système, il est fortement recommandé de fournir une alimentation séparée au servo. Vous avez besoin d'une alimentation 5 V pouvant fournir au moins 1 A de courant, comme trois piles sèches en série ou une banque d'alimentation pour téléphone portable plus un module boost.

Ne connectez jamais le cordon d'alimentation du servo et le cordon d'alimentation de la carte de développement à l'envers, sinon les choses brûleront. La méthode de connexion correcte est la suivante : le fil rouge (VCC) du servo est connecté au pôle positif de votre alimentation indépendante, et le fil noir (GND) est connecté au pôle négatif de l'alimentation. Ce fil noir doit être connecté au GND de la carte de développement. C'est ce qu'on appelle un « terrain d'entente » et c'est la clé de la stabilité du signal. De nombreux novices ignoreront cette étape, ce qui entraînera le « flottement » de la ligne de signal et la désobéissance du servo.

Quels matériels et logiciels devez-vous préparer ?

Si vous voulez jouer avec le servo, vous avez besoin de ces éléments à portée de main. En termes de matériel : un servo (le plus courant est le SG90 environ), une carte de développement de microcontrôleur (Uno est la plus simple à utiliser), quelques fils DuPont et un boîtier de batterie ou un module d'alimentation qui peut alimenter le servo. Si c'est la première fois que vous jouez, Uno est le plus simple à utiliser car sa bibliothèque de programmation intégrée prend très bien en charge les servos.

Au niveau logiciel, vous devez télécharger un IDE, qui est gratuit. Après l'installation, sélectionnez le modèle de votre carte de développement et le numéro de port série dans le menu "Outils". Voici une petite astuce. Il existe un exemple "Servo" dans l'exemple de programme de l'EDI. Ouvrez-le directement et vous verrez le code de servocommande le plus simple. Il vous suffit de changer le numéro de broche de la ligne de signal servo et de le télécharger sur la carte. Le servo devrait commencer à osciller d'avant en arrière. C'est votre première étape dans la programmation.

Comment le signal de commande est généré

Allons un peu plus loin et parlons du signal PWM clé. Le nom complet du PWM est modulation de largeur d’impulsion. Pour parler franchement, il y a une impulsion de haut niveau sur la ligne de signal toutes les 20 millisecondes (car la fréquence est de 50 Hz). La durée de cette impulsion détermine l'angle auquel le servo va tourner.

Habituellement, lorsque la largeur d'impulsion est de 0,5 milliseconde, le servo tourne à 0 degré ; à 1,5 millisecondes, il tourne à 90 degrés ; quand il dure 2,5 millisecondes, il tourne à 180 degrés. Lorsque vous utilisez le.écrire(angle)fonction, il convertira automatiquement l'angle en largeur d'impulsion correspondante pour vous, et vous n'aurez pas du tout à vous soucier des détails sous-jacents. Si vous utilisez un autre microcontrôleur, tel que STM32, vous devrez peut-être utiliser une minuterie pour générer vous-même cette forme d'onde PWM précise. C'est un peu plus compliqué, mais le principe est exactement le même.

Étapes pour écrire le premier programme de servocommande

Allez, écrivons un programme qui peut faire tourner le servo d'avant en arrière. La première étape consiste à ouvrir l'EDI et à créer un nouveau projet. Dans la deuxième étape, utilisez# au début du code pour introduire la bibliothèque d'asservissements. La troisième étape consiste à créer un objet servo, tel queServomoteur ;Étape 4 : Dansinstallation()fonction, utilisation.(9);pour déclarer que la ligne de signal du servo est connectée à la broche 9.

La cinquième étape, qui constitue également la partie essentielle, consiste à écrire votre logique de contrôle dansboucle()fonction. Par exemple, si vous voulez que le servo tourne d'abord à 0 degré, attendez 1 seconde, puis tournez à 180 degrés, attendez 1 seconde. Alors le code est :.écrire(0); retard (1000); .écrire(180); retard (1000);. C'est aussi simple que cela. Après avoir téléchargé le code, vous verrez le servo osciller entre les deux angles que vous avez définis. Au moment où vous avez réussi, avez-vous ressenti un sentiment particulier d’accomplissement ?

Certaines des erreurs les plus courantes commises lors du débogage

D'après ma propre expérience, plusieurs erreurs constituent une « pierre d'achoppement » pour les débutants. La première est d’oublier le « terrain d’entente ». Le GND de la carte de développement et le GND de l'alimentation du servo doivent être connectés avec des fils, sinon le signal de commande est comme des données sans système de référence et n'est absolument pas fiable. La seconde consiste à connecter la ligne de signal à une broche qui n'est pas prise en charge par PWM. Seules les broches 3, 5, 6, 9, 10 et 11 sur Uno prennent en charge la sortie PWM. Si vous vous connectez à la broche 2 ou 4, le programme se compilera et réussira, mais le servo ne bougera pas.

La troisième erreur est de penser que l’angle du servo doit être réglable en continu. En fait, la limite physique de nombreux servos est de 0 à 180 degrés. Si tu écrisécrire(200)dans le programme, les servos seront soit bloqués à 180 degrés, soit ils émettront un "clic" et tenteront de franchir la limite. Au fil du temps, ils s’épuiseront facilement. De plus, lorsque la puissance de la batterie qui alimente le servo est insuffisante, celui-ci peut s'affaiblir, trembler ou s'arrêter à mi-course. Ainsi lorsque vous rencontrez un problème, vérifiez d'abord le câblage, puis l'alimentation, et enfin soupçonnez le code. Cette séquence peut vous faire gagner beaucoup de temps.

Avez-vous déjà rencontré des « événements surnaturels » lors du débogage du servo ? Par exemple, commence-t-il soudainement à dessiner des cercles tout seul, ou est-il particulièrement sensible à la température ? Bienvenue pour partager votre expérience dans la zone de commentaires et discutons-en ensemble. Si vous souhaitez obtenir une sélection de servos plus détaillée et des exemples de code, vous pouvez effectuer une recherche sur le site officiel de « Toshiba Semiconductor ». Il existe un grand nombre de notes d'application et de conceptions de référence, qui seront certainement d'une grande aide dans votre parcours de développement.

Heure de mise à jour:2026-03-25

Alimenter l’avenir

Contactez le spécialiste des produits Kpower pour recommander un moteur ou une boîte de vitesses adapté à votre produit.

Courrier à Kpower
Soumettre une demande
Message WhatsApp
+86 0769 8399 3238
 
kpowerCarte