Aller au contenu
Académie JediSith · Composants

Le servo

En une phrase : un servo est un petit moteur qui sait où il est : on ne lui dit pas « tourne », mais « va à cet angle », et il y va tout seul, puis tient la position.

L'image à retenir

Pense à un pilote qui garde son vaisseau sur une trajectoire : il regarde sans arrêt où il est, compare avec où il doit aller, et corrige. Le servo fait pareil avec son axe, des dizaines de fois par seconde. Son nom vient d'ailleurs de « servomécanisme » : un mécanisme asservi, qui obéit à une consigne.

À quoi sert un servo ?

Rôle Exemple
Aller à une position précise la porte du hangar (mission 3), une direction de véhicule
Tenir une position contre un effort un bras qui porte une charge, une trappe qui reste fermée
Balayer une tourelle, un radar, un capteur qui scrute
Tourner en continu, doucement (servo à rotation continue) une petite roue lente, un tapis roulant
Balayer sur un grand angle (servo 360° à position) le radar à balayage (mission 4)

Plus en profondeur

Ce qu'il y a dedans

Un servo contient quatre éléments qui travaillent en équipe :

  1. un moteur électrique, petit et rapide ;
  2. des engrenages, qui ralentissent le mouvement et le rendent beaucoup plus costaud ;
  3. un capteur de position (souvent un potentiomètre), accroché à l'axe de sortie : il mesure l'angle réel ;
  4. une petite carte électronique, qui compare l'angle demandé et l'angle mesuré, et fait tourner le moteur dans le bon sens jusqu'à ce qu'ils soient égaux.
signalélectroniquecomparemoteurrapideengrenagesralentit, renforceaxecapteur d'angle« je suis à 120°, on me demande 135° : je tourne encore »La boucle de rétroaction d'un servo
L'électronique compare la consigne (le signal) et la mesure (le capteur), et fait tourner le moteur jusqu'à ce qu'elles soient égales.

C'est la boucle de rétroaction : mesurer, comparer, corriger, recommencer. Si on pousse l'axe, le capteur le voit, et le moteur résiste pour revenir. C'est pour ça qu'il ne faut jamais forcer un servo alimenté : on lutte contre son moteur… et ce sont ses engrenages qui paient.

La commande : une impulsion

Le servo reçoit sa consigne sur son fil signal : une impulsion répétée 50 fois par seconde (toutes les 20 ms). C'est la durée de l'impulsion qui indique l'angle demandé.

Pour un servo de 270° comme notre Geekservo, avec la convention la plus courante :

Impulsion Angle demandé
500 µs (0,5 ms) 0°
1 500 µs (1,5 ms) 135°, le milieu
2 500 µs (2,5 ms) 270°
angleimpulsion0°500 µs135°1500 µs270°2500 µs90° → 1 167 µs
Une droite : chaque degré de plus ajoute environ 7,4 µs à l'impulsion. En bleu, le calcul 1 plus bas.

Entre les deux, c'est proportionnel : 2 000 µs pour 270°, soit environ 7,4 µs par degré. La bibliothèque ESP32Servo fabrique ces impulsions pour nous, avec writeMicroseconds() ou write(). Le lien avec les signaux carrés est expliqué dans le PWM.

Chaque servo a sa plage

500 à 2 500 µs est une convention, pas une loi : certains servos s'arrêtent avant, d'autres utilisent 1 000 à 2 000 µs. C'est pour ça qu'on calibre chaque servo, comme à la mission 3.

Position ou rotation continue

Certains servos ont été modifiés pour tourner sans fin : leur électronique ne compare plus des angles, et l'impulsion règle alors la vitesse et le sens.

Servo à position Servo à rotation continue
Impulsion de 1,5 ms (write(90)) va au milieu s'arrête
Impulsion plus courte va vers une extrémité tourne dans un sens
Impulsion plus longue va vers l'autre extrémité tourne dans l'autre sens
Plus on s'écarte de 1,5 ms… plus l'angle est grand plus il tourne vite
Il sait où il est ? oui non : il ne connaît que sa vitesse
Servo à positionServo à rotation continue« va à 120° » : il y va et s'arrête« tourne à mi-vitesse » : il tourne sans fin
Même forme, même câble, même signal… mais pas la même façon de le comprendre.

Le couple : la force qui fait tourner

La force d'un servo s'exprime en couple, souvent en kg·cm (ou g·cm). Un couple de 0,5 kg·cm veut dire : le servo peut soulever 500 g accrochés à 1 cm de son axe. Plus loin de l'axe, il soulève moins, dans la même proportion : 250 g à 2 cm, 125 g à 4 cm. C'est la loi du bras de levier, la même qu'avec une balançoire.

charge maximale = couple ÷ longueur du bras

axe du servo500 g1 cm250 g2 cm125 g4 cmCouple de 500 g·cm : ce que le servo peut souleverplus c'est loin de l'axe, moins c'est lourd
Doubler la distance, c'est diviser par deux la charge que le servo peut tenir. (Échelle du dessin agrandie.)

La vitesse et le courant

  • La vitesse est souvent donnée en secondes pour 60° : « 0,12 s / 60° » veut dire qu'il faut 0,12 seconde pour tourner de 60°.
  • Le courant dépend de l'effort : faible au repos, plus fort pendant un mouvement, et beaucoup plus fort quand l'axe est bloqué (on dit qu'il « cale »). Les vendeurs de petits Geekservo annoncent de l'ordre de 100 à 200 mA en fonctionnement et plus de 500 mA bloqué : c'est ce qui peut faire redémarrer l'ESP32 sur l'USB.

Exemples de calculs

Calcul 1 · Quelle impulsion pour 90° ?

Plage : 500 µs pour 0°, 2 500 µs pour 270°, soit 2 000 µs pour 270°.

impulsion = 500 + 90 × 2 000 ÷ 270 = 500 + 666,7 ≈ 1 167 µs.

Calcul 2 · Quel angle pour 1 800 µs ?

On fait le chemin inverse : (1 800 − 500) × 270 ÷ 2 000 = 1 300 × 270 ÷ 2 000 ≈ 175,5°.

Calcul 3 · Que peut porter la porte de la mission 3 ?

Couple annoncé du Geekservo 270° : environ 500 g·cm. La porte est accrochée à un bras LEGO, et son centre est à 4 cm de l'axe.

charge maximale = 500 ÷ 4 = 125 g. Une porte en pièces LEGO pèse bien moins : c'est large. Mais en doublant la longueur du bras, on divise la charge possible par deux.

Calcul 4 · Combien de temps pour ouvrir en grand ?

À 0,12 s pour 60°, une course complète de 270° prend 270 ÷ 60 × 0,12 = 0,54 s à pleine vitesse. Dans le programme de la mission 3, la vitesse est réglée à 60 °/s : la même course prend alors 270 ÷ 60 = 4,5 s. Beaucoup plus doux pour la mécanique !

Calcul 5 · Deux servos sur l'USB ?

Deux servos qui calent en même temps : 2 × 550 = 1 100 mA, plus les 100 mA de l'ESP32. Bien au-delà des 500 mA de l'USB : il faudra une alimentation externe pour les grands projets (voir l'alimentation).

Mise en pratique

Chronométrer une course : avec le programme de calibrage de la mission 3, demande 30 puis 240, et filme le servo avec un téléphone au ralenti. Compte les images : tu peux mesurer le temps réel d'une course de 210° et le comparer au calcul.

L'expérience du bras de levier : fixe une poutre LEGO Technic sur l'axe (les trous sont espacés de 8 mm), et accroche un petit objet de plus en plus loin du centre. À un moment, le servo n'arrive plus à soulever, et grogne : c'est la limite de son couple. Coupe vite l'alimentation (ou redemande une position sans effort).

Les pièges

Le piège Ce qui arrive La bonne habitude
Forcer l'axe à la main, servo alimenté engrenages abîmés ne toucher l'axe que hors tension
Demander un angle derrière une butée le servo force, chauffe, consomme beaucoup calibrer, garder 5° de marge
Un bras trop long ou trop chargé le servo n'arrive pas à tenir la position raccourcir le bras, alléger, ou un servo plus costaud
Plusieurs servos sur l'USB l'ESP32 redémarre un seul à la fois, puis une alimentation externe

Exercices

1. Quelle impulsion pour 135° sur un servo 270° (500 à 2 500 µs) ?

500 + 135 × 2 000 ÷ 270 = 500 + 1 000 = 1 500 µs : le milieu, logique !

2. Un servo de 2 kg·cm porte une charge au bout d'un bras de 5 cm. Quelle charge maximale ?

2 000 g·cm ÷ 5 cm = 400 g.

3. Un servo à rotation continue reçoit write(90) mais tourne encore lentement. Pourquoi, et que faire ?

Son point d'arrêt n'est pas exactement à 90 (petites différences de fabrication). On cherche la valeur où il s'immobilise vraiment (88, 91…), en essayant des valeurs une par une, par exemple avec le programme d'enquête de la mission 4.

4. Combien d'impulsions un servo reçoit-il en une minute ?

50 par seconde × 60 = 3 000 impulsions.

À retenir

  • Un servo vise une position et la tient : moteur + engrenages + capteur + électronique.
  • La consigne est la durée d'une impulsion, répétée 50 fois par seconde (500 à 2 500 µs pour 0 à 270° sur notre Geekservo, à calibrer).
  • Rotation continue : la même impulsion règle la vitesse et le sens.
  • Couple ÷ longueur du bras = charge maximale. Ne jamais forcer l'axe alimenté.

Où ça sert dans l'atelier

Pour aller plus loin