Un servo qui grogne en fin de course, un axe qui ne revient pas deux fois au même point, trois servos qui ne s’accordent pas sur le même châssis : ces défauts se voient à l’établi, pas une fois le montage terminé. Ce testeur de servomoteur CCPM est l’appareil prévu pour cet essai. Il tient lieu d’ensemble émetteur-récepteur le temps de la vérification : il alimente le servo, il lui envoie les impulsions de commande, et il conduit jusqu’à trois servos ou trois variateurs en même temps.
Trois groupes de broches en sortie, un par servo : c’est ce qui a donné son autre nom à l’appareil, Servo Consistency Master. Les trois voies reçoivent exactement le même signal, et c’est la comparaison entre les servos qui parle. Un servo en fin de vie se repère alors tout de suite — il prend du retard sur ses voisins, s’arrête avant la butée ou vibre au point milieu. Le même boîtier sert aussi de générateur de signal pour un variateur, ce qui fait tourner un moteur brushless sans émetteur ni récepteur.
Caractéristiques techniques
| Fonction | testeur de servos et générateur de signal de commande, sans émetteur ni récepteur |
|---|---|
| Voies | trois servos ou trois variateurs raccordables simultanément, sur trois groupes de broches au pas de 2,54 mm repérés S, + et - |
| Mode manuel | le bouton rotatif règle la position du servo et la vitesse de manœuvre |
| Mode neutre | impulsion de 1,5 ms, le servo se place au point milieu |
| Mode automatique | balayage continu d’une butée à l’autre, comme un essuie-glace |
| Signal de sortie | 1,5 ms ± 0,5 ms, soit une impulsion de 1 à 2 ms — la norme d’un signal de servo ordinaire |
| Courant annoncé en sortie | 15 mA au plus par voie sous 5 V : c’est le courant du signal, pas celui du moteur |
| Alimentation | 4,8 à 6 V continu par la rangée d’entrée : quatre piles, un UBEC, ou la sortie d’un variateur |
| Témoins | trois, un par mode ; ils s’allument tous à la mise sous tension, puis seul celui du mode en cours reste allumé |
| Commandes | un bouton rotatif pour le réglage, une touche pour passer au mode suivant |
| Boîtier | plastique bleu, environ 46 sur 32 sur 17 mm |
Brancher le testeur
L’alimentation d’abord
L’entrée d’alimentation est une petite rangée de trois broches repérée S, + et - sur la sérigraphie. Le testeur accepte de 4,8 à 6 V : quatre piles montées dans un support de piles 4xAA 6V conviennent parfaitement, la sortie d’un UBEC ou celle d’un variateur aussi. Une pile 9 V, elle, est hors plage.
Rien n’est prévu sur un appareil de cette taille pour rattraper une inversion de polarité : le repère du moins se vérifie avant de brancher, pas après. Une alimentation qui manque de courant, elle, se reconnaît tout de suite — les trois témoins clignotent ensemble et les servos deviennent erratiques, en saccades, alors que le signal envoyé est parfaitement normal.
Les servos ensuite
Chaque servo se branche sur un groupe de trois broches, dans l’ordre des fils de sa prise : masse (brun ou noir) du côté du moins, alimentation au milieu (rouge), signal (orange, jaune ou blanc) sur la broche S. C’est l’ordre normalisé de toutes les prises de servo, et c’est aussi le point d’attention du testeur : rien ne détrompe un connecteur à trois fils, un décalage d’une broche reste possible, et un servo branché de travers ne fonctionne pas. Les trois groupes de sortie sont indépendants, mais tous leurs + et tous leurs - sont reliés à l’entrée : les servos se nourrissent donc du même bloc que le testeur.
C’est ce qui limite l’essai bien plus que le testeur lui-même. Un seul servo métallique de forte taille peut demander plusieurs centaines de milliampères, et trois d’entre eux en pleine accélération davantage que ce qu’une petite alimentation fournit. Le signal, lui, ne change jamais : une impulsion de 1 à 2 ms, la norme que respecte tout servo à commande analogique, du micro-servo de 9 grammes au modèle de forte puissance.
L’ordre du test
On met sous tension, et on commence par le mode manuel : le bouton rotatif fait bouger les servos et donne immédiatement la mesure de leur vivacité et de leur course. Vient ensuite le mode neutre, qui place l’axe au point milieu : c’est dans cette position qu’on monte le palonnier, l’axe étant à mi-course, ce qui évite d’avoir à corriger au trim par la suite. Le mode automatique termine l’essai en faisant travailler le servo sur toute sa plage, ce qui révèle les points durs, les sauts de pignon et les arrêts intempestifs qu’une manœuvre lente laisse passer.
Les trois modes, et ce qu’ils apprennent
- Manuel — le bouton rotatif pilote la position, et la vitesse avec laquelle on le tourne indique la réactivité du servo. Un servo mou qui suit le bouton avec un temps de retard, ou qui s’arrête avant la butée, est un servo fatigué.
- Neutre — une impulsion de 1,5 ms ramène l’axe au point milieu. C’est le mode du montage : on place le palonnier et la tringlerie dans cette position, de sorte que le neutre radio corresponde au neutre mécanique.
- Automatique — le balayage va d’une butée à l’autre sans intervention, exactement comme un essuie-glace. Trois servos branchés côte à côte dans ce mode se comparent d’un seul regard : celui qui prend du retard, qui n’atteint pas la butée ou qui tremble à l’arrêt est celui qui posera problème.
Un cas mérite une explication à part : le servomoteur à rotation continue. Son axe ne se positionne pas, il tourne, et la largeur d’impulsion règle sa vitesse et son sens. Le mode neutre y devient le point d’arrêt — c’est même la façon la plus simple de calibrer un tel servo, puisqu’on cherche par tâtonnement la position du bouton rotatif qui immobilise l’axe, et qu’on la retrouve à chaque fois. Le mode automatique, lui, le fait tourner alternativement dans un sens puis dans l’autre.
Applications
- Comparer deux micro-servos avant d’en choisir un — un Servomoteur SG90 et un Servomoteur MG90S branchés sur deux voies et balayés ensemble : la différence de vitesse et de tenue se voit immédiatement, ce qu’aucune fiche technique ne montre.
- Contrôler un servo de forte puissance — un Servomoteur métallique MG995 12 kg se teste comme les autres, à condition de lui fournir le courant qu’il demande, ce qui est justement le genre de servos qui inquiète sur un montage neuf.
- Vérifier un servo d’occasion ou de récupération — avant d’engager un projet sur un lot de servos, l’essai sur les trois voies sépare ceux qui tiennent la position de ceux qui frémissent.
- Centrer les servos avant le montage définitif — le mode neutre donne le point milieu mécanique, et le palonnier se visse droit ; c’est un travail presque impossible à faire proprement une fois le modèle assemblé.
- Faire tourner un moteur brushless ou un moteur à balais — branché sur l’entrée de commande d’un variateur, le testeur remplace l’émetteur et le récepteur : on vérifie le sens de rotation et la réaction du moteur sans rien monter d’autre. Dans ce cas, rester en mode manuel, et n’approcher aucune hélice.
- Aligner une commande de gouvernail ou une tringlerie — le mode neutre sert de référence commune aux deux servos d’une même commande, ce qui évite de les régler l’un contre l’autre.
- Trier un lot de servos avant un atelier ou un cours — les trois voies testent trois servos en une seule manipulation, sans ordinateur ni radio.
Mini-projet : après le testeur, la carte prend le relais
Le testeur est un appareil de vérification : il commande les servos, il ne décide rien à leur place. Un montage qui doit bouger tout seul a besoin de la même fonction dans la carte de commande. Ce mini-projet reprend donc les trois modes du testeur sur un Arduino — le bouton rotatif pour le manuel, une touche pour changer de mode — et il vient après le passage au testeur, qui a montré que les trois servos se valent et où se trouve leur point milieu mécanique.
Ce qu’il faut
| La référence | le testeur de cette page, pour vérifier chaque servo et repérer son point milieu avant de le confier à la carte |
|---|---|
| La carte | Uno R3 + cable usb |
| Les trois servos | trois servos identiques, par exemple trois SG90 ou trois MG90S, qui se comparent entre eux |
| Le bouton rotatif | Potentiometer 10 Kohms, qui joue le rôle du bouton du testeur |
| L’alimentation des servos | Alimentation 5v 2A, à préférer à la sortie 5 V de la carte dès que les servos sont trois |
| Le montage | Plaque d’essai 400 breadboard et quelques fils de prototypage mâle-mâle |
Le câblage
Les trois servos sont commandés par trois sorties numériques de la carte, la bibliothèque Servo n’exigeant pas de broche PWM particulière. Le potentiomètre se câble en diviseur de tension entre le 5 V et la masse, son curseur arrivant sur une entrée analogique. Le point qui compte est l’alimentation des servos : elle vient d’un bloc 5 V séparé, et la masse de ce bloc doit être reliée à celle de la carte, sans quoi les impulsions de commande n’ont aucune référence commune et les servos restent muets ou trépident.
| Servo du milieu | le fil d’alimentation (rouge) sur + du bloc 5 V, la masse (brun ou noir) sur - du même bloc |
|---|---|
| Servo du milieu | le signal (orange, jaune ou blanc) sur D9 de la carte |
| Deuxième et troisième servo | mêmes + et -, signaux sur D10 et D11 |
| Potentiomètre, broche du milieu | le curseur sur A0 |
| Potentiomètre, broches du bout | l’une sur 5V de la carte, l’autre sur GND |
| Bouton de mode | entre D2 et GND, la résistance de tirage étant interne à la carte |
| Masses | GND de la carte reliée à - du bloc 5 V des servos |
Le programme
Le mode manuel lit le potentiomètre et applique la même consigne aux trois servos ; le mode neutre les place à 90 degrés ; le mode automatique les fait balayer ensemble, comme le mode essuie-glace du testeur.
/*
* Trois servos menes ensemble, avec les trois modes du testeur CCPM
* Carte : Arduino Uno -- A0 : potentiometre, D2 : bouton, D9 D10 D11 : servos
*
* Composants, brochage et fiche complete : www.marocproduits.com
*/
#include "Servo.h"
const byte PIN_POTENTIOMETRE = A0;
const byte PIN_BOUTON = 2;
const byte PIN_SERVO_1 = 9;
const byte PIN_SERVO_2 = 10;
const byte PIN_SERVO_3 = 11;
const byte ANGLE_MIN = 10; // butee basse, en degres
const byte ANGLE_MAX = 170; // butee haute, en degres
const byte ANGLE_NEUTRE = 90; // impulsion de 1,5 ms
Servo servo1;
Servo servo2;
Servo servo3;
byte mode = 0; // 0 = manuel, 1 = neutre, 2 = automatique
byte angle = ANGLE_NEUTRE;
bool montee = true; // sens du balayage
unsigned long dernierAppui = 0;
unsigned long dernierPas = 0;
void appliquer(byte a) { // les trois voies bougent ensemble
servo1.write(a);
servo2.write(a);
servo3.write(a);
}
void lireBouton() {
if (digitalRead(PIN_BOUTON) == LOW) {
if (millis() - dernierAppui > 300) { // anti-rebond de 300 ms
dernierAppui = millis();
mode = (mode + 1) % 3; // manuel, neutre, automatique
Serial.print("Mode ");
Serial.println(mode);
if (mode == 1) {
appliquer(ANGLE_NEUTRE); // point milieu immediat
}
}
}
}
void setup() {
pinMode(PIN_BOUTON, INPUT_PULLUP); // bouton entre D2 et la masse
servo1.attach(PIN_SERVO_1);
servo2.attach(PIN_SERVO_2);
servo3.attach(PIN_SERVO_3);
appliquer(ANGLE_NEUTRE);
Serial.begin(9600);
Serial.println("Mode 0 : manuel, le potentiometre fait bouger les trois servos");
}
void loop() {
lireBouton();
if (mode == 0) {
int lecture = analogRead(PIN_POTENTIOMETRE); // 0 a 1023
int consigne = map(lecture, 0, 1023, ANGLE_MIN, ANGLE_MAX);
appliquer(consigne);
}
if (mode == 2) {
if (millis() - dernierPas > 20) { // 50 pas par seconde
dernierPas = millis();
if (montee) {
angle = angle + 1;
} else {
angle = angle - 1;
}
if (angle == ANGLE_MAX) {
montee = false; // on redescend
}
if (angle == ANGLE_MIN) {
montee = true; // on remonte
}
appliquer(angle);
}
}
}Comment ça marche
- La bibliothèque Servo se charge de la trame : elle maintient une impulsion répétée à intervalle régulier, dont la largeur va de 1 ms à 2 ms. L’angle demandé n’est donc qu’une autre façon d’écrire la même largeur d’impulsion que le testeur produit avec son bouton rotatif.
- La fonction d’application est commune aux trois servos : c’est la traduction logicielle des trois groupes de broches du testeur, un signal pour trois voies.
- La mesure du potentiomètre va de 0 à 1023, valeur du convertisseur dix bits de la carte, et la fonction de mise à l’échelle la ramène entre 10 et 170 degrés. Rester à distance des butées évite de faire forcer un servo d’essai contre sa limite mécanique.
- Le mode neutre écrit 90 degrés, l’équivalent de l’impulsion de 1,5 ms : c’est la position qui doit correspondre au neutre de la radio si la carte prend un jour la place du testeur dans un montage complet.
- L’anti-rebond de 300 ms évite qu’un appui un peu long ne fasse défiler deux modes d’un coup, et la touche est câblée entre la broche et la masse, la résistance de tirage interne tenant l’entrée haute au repos.
- La ligne série n’est pas décorative : elle affiche le mode en cours, ce qui évite de chercher pourquoi le montage ne répond plus au potentiomètre quand on est passé en automatique sans s’en rendre compte.
- Le bloc 5 V séparé n’est pas un luxe : la sortie de la carte ne fournit pas assez de courant pour trois servos en mouvement, et un servo privé de courant fait exactement ce que le testeur permettait de repérer — il tremble, s’arrête, ou repart en arrière.
Questions fréquentes
Le servo ne bouge pas, ou les trois témoins clignotent ensemble
Deux causes se ressemblent et se distinguent en une mesure. La première est l’alimentation : vérifier la tension aux bornes du bloc branché sur l’entrée avec un multimètre numérique, et la comparer à ce qui reste quand un servo force ; une chute sous 4,8 V explique à elle seule les témoins qui clignotent et les mouvements erratiques. La seconde est le sens de la prise d’alimentation : le moins est la broche du bord, et une inversion ne pardonne pas sur cet appareil.
Puis-je alimenter le testeur avec une pile 9 V ?
Non, 9 V sont au-dessus de la plage acceptée, qui va de 4,8 à 6 V. Quatre piles AA ou AAA donnent 6 V et conviennent, tout comme la sortie d’un UBEC ou d’un variateur réglée dans cette plage. Une pile 9 V a de plus une capacité très limitée en courant : elle ne pourrait pas nourrir un servo, même si la tension était acceptée.
Le testeur peut-il rester dans le montage pour commander les servos en permanence ?
Non, et ce n’est pas son rôle : il envoie une consigne réglée à la main, il ne lit aucun capteur et ne décide rien. Un montage qui doit réagir à une mesure, à une télécommande ou à un programme a besoin d’une carte et d’un pilote. Pour conduire beaucoup de servos depuis une carte sans occuper ses sorties, un pilote I2C comme le PCA9685 est fait pour cela : le bus I2C commande seize voies avec deux fils.
Pourquoi mon servo ne s’arrête pas exactement au milieu en mode neutre ?
Le mode neutre envoie bien l’impulsion de 1,5 ms attendue par le servo ; ce qui décale l’axe, c’est presque toujours le montage du palonnier, vissé quelques crans trop à gauche ou trop à droite. C’est précisément ce que ce mode sert à corriger : placer l’axe au neutre, puis remonter le palonnier droit plutôt que de compenser avec la télécommande. Un servo dont l’axe revient à chaque fois dans une position différente est un autre problème — jeu dans la pignonnerie, et l’essai des trois voies le montre tout de suite.
Que faire des servos qui vibrent ou grognent pendant l’essai ?
Un léger frémissement au point milieu est normal sur un micro-servo à engrenages plastiques, surtout si la charge est déjà montée. Un grognement continu, en revanche, signale soit une butée mécanique atteinte avant la fin de la course, soit une alimentation insuffisante. Essayer le servo seul, sans charge, puis avec une alimentation plus généreuse : si le bruit disparaît dans les deux cas, le servo n’était pas en cause.
À combiner avec
Un servo se teste plus proprement quand il est déjà fixé : le support pour servo SG90 tient le corps pendant l’essai et permet de juger la tenue en position plutôt que de poursuivre un boîtier qui tourne sur l’établi. Après la vérification, l’étape suivante consiste à confier la commande à une carte : pour piloter plusieurs servos, dont les servos métalliques de forte taille, le driver I2C PCA9685 prend seize voies sur deux fils et fournit son propre régulateur de puissance aux servos — un testeur pour choisir et centrer, un pilote pour commander : les deux appareils se complètent au lieu de se remplacer.








