• 15 heures
  • Moyenne

Ce cours est visible gratuitement en ligne.

course.header.alt.is_video

course.header.alt.is_certifying

J'ai tout compris !

Mis à jour le 08/11/2019

Découvrez la constitution des servomoteurs

Connectez-vous ou inscrivez-vous gratuitement pour bénéficier de toutes les fonctionnalités de ce cours !

Dans ce chapitre, nous allons découvrir le principe général de fonctionnement d’un servomoteur standard de modélisme, en détailler les principaux constituants et aborder le principe de l’asservissement de position. 

Puis, nous verrons le principe de fonctionnement du servomoteur à rotation continue, qu’on peut comprendre comme une modification simple du servomoteur standard.
Enfin, nous aborderons la question de la commande ou pilotage des deux types de servomoteurs, pour préparer le chapitre suivant.:magicien:

Principe de fonctionnement d’un servomoteur standard de modélisme, notion de boucle d’asservissement

Un servomoteur standard est un système relativement complexe qui intègre dans un boîtier de petite taille des constituants électroniques et électromécaniques. Sa fonctionnalité est de tenir une position angulaire donnée fournie au système en entrée sous forme d’un signal électrique.

En ce sens, c’est un système asservi ou encore système bouclé. La théorie des systèmes asservis ou automatiques étant une branche importante des sciences de l’ingénieur, il n'est pas possible d'en faire une étude rigoureuse qui serait un cours à part entière (voire plusieurs cours) . Nous nous contentons ici d’un niveau de description qualitatif qui permet une compréhension globale, mais qui ne rentre pas dans les subtilités.

Commençons par présenter les constituants élémentaires. La figure ci-dessous montre comment ces constituants sont placés dans le boîtier.

Les constituants élémentaires d’un servomoteur standard. Source : https://www.cf-techno.com
Les constituants élémentaires d’un servomoteur standard. Source : https://www.cf-techno.com. Cette image est utilisée avec l'autorisation de son auteur.

Les principaux constituants sont :

  • un moteur électrique à courant continu (MCC) ;

  • un train d’engrenages ;

  • un potentiomètre relié au train d’engrenages par l’intermédiaire d’une roue dentée, pour fournir la mesure de l’angle de déviation de l’axe ;

  • et une carte électronique pour gérer l’asservissement ;

  • dans le servomoteur standard, il y a une butée mécanique qui limite l’excursion en angle de -90° à +90° par rapport à la position dite neutre, soit une excursion de 180° ;

  • enfin, le palonnier permet la liaison avec la partie mobile, les roues du robot pour les deux servomoteurs à rotation continue et le capteur de distance, pour le servomoteur standard qui entraîne la tourelle du capteur de distance.

Le moteur à courant continu (MCC)

Le moteur à courant continu (MCC) est alimenté par une tension constante (quelques volts). Par principe, un MCC tourne à vitesse angulaire proportionnelle à sa tension d’alimentation, en première approximation. Typiquement, dans un servomoteur standard, sous 5 V, le moteur tourne à vitesse élevée, plusieurs milliers de tours par minute.

En revanche, le couple sur l’axe est faible. C’est la raison pour laquelle on place sur l’axe du moteur un train d’engrenages appelé aussi réducteur.

Le train d’engrenages

Il s’agit d’une cascade d’étages constitués chacun d’un couple de roues dentées. Chaque étage possède son rapport de réduction qui est égal au rapport du nombre de dents des deux roues ou pignons. Au total, le rapport de réduction est le produit de tous les rapports et peut atteindre typiquement une valeur de l’ordre de 400 ou 500.

Sur un plan électromécanique, la puissance de sortie du moteur (P) est donnée par le produit :

P=Cm.Ωm

où  Cm représente le couple sur l’axe du moteur et Ωm , la vitesse angulaire de rotation de l’axe du moteur.

Dans l’hypothèse où la puissance du moteur est entièrement reportée sur le palonnier (en réalité, il y a des pertes), on a alors au niveau du palonnier,

P=Cp.Ωp

où  Cp représente le couple sur l’axe du palonnier et Ωp , la vitesse angulaire de rotation de l’axe du palonnier.

Aux pertes près, le produit P=C.Ω est constant. La réduction de vitesse est ainsi associée à la démultiplication du couple dans des rapports identiques.

Le potentiomètre et la carte électronique

Le potentiomètre joue le rôle de capteur de position du palonnier. Il délivre une tension proportionnelle à la position angulaire, tension exploitée par la carte électronique dans la boucle d’asservissement.

Pour décrire le principe très général d’une boucle d'asservissement ou de régulation, on peut se référer au schéma-bloc fonctionnel ci-dessous.

La boucle d’asservissement générale si possible enlever le fond bleu. Source : http://michel.lebeau.pagesperso-orange.fr/
La boucle d’asservissement générale. Source : http://michel.lebeau.pagesperso-orange.fr/

Dans ce schéma de principe très général, suffisant pour notre niveau de description, la sortie est bouclée directement sur le composant principal d’entrée, appelé comparateur. On parle de retour unitaire.

Toutefois, si on s’affranchit des réalités physiques, et notamment de la nature réelle des grandeurs physiques qui incarnent les grandeurs de l’asservissement — en l'occurrence angle de consigne et angle réel du palonnier — on peut interpréter le schéma ci-dessus comme suit :

  • la consigne est donnée sous forme d’angle en degrés, position qu’on veut faire maintenir au servomoteur pour, par exemple, piloter un aileron d’un modèle réduit d’avion ;

  • le bloc libellé “agir” ou “chaîne directe” est constitué du moteur et du train d’engrenages. L’ensemble est commandé par la valeur “Erreur” construite par la différence entre l'angle de consigne et l'angle mesuré par l'intermédiaire du potentiomètre, qui constitue ici la partie “capteur” dans la boucle, ou chaîne de retour. Quand cette différence est nulle, le palonnier a atteint la valeur de consigne, “écart” est nul. Le moteur ne tourne pas. En revanche, quand les deux angles ne coïncident pas, “écart” est non nul et le moteur tourne. L’angle réel du palonnier évolue vers la consigne.

Dans les boucles d’asservissement réelles, les deux principaux critères de performance sont vitesse et précision :

  • la vitesse caractérise le temps pour que la valeur réelle atteigne la consigne. Il doit être aussi court que possible ;

  • la précision est définie comme étant l’erreur résiduelle, c’est-à-dire la différence entre valeur réelle et consigne quand la valeur réelle n’évolue plus. Cette erreur doit être aussi faible que possible, voire nulle si possible.

Pour améliorer les performances, on peut complexifier la boucle de principe ci-dessus, notamment en incorporant un correcteur entre le comparateur d’entrée et le bloc “système”.

Principe de fonctionnement d’un servomoteur en rotation continue

Le servomoteur à rotation continue peut s’obtenir par modification assez simple du servomoteur standard, et on trouvera sans peine des sites qui expliquent comment procéder, pour peu qu’on soit un tant soit peu bricoleur. Par exemple, celui-ci ou celui-là. Mais on peut aussi les acheter tels quels.

Quand bien même vous utiliseriez la référence préconisée, il est tout de même intéressant de présenter les petites modifications du servomoteur standard pour en comprendre le principe. Pour plus de détails et notamment pour des photos illustratives efficaces, on recommande de lire les sites ci-dessus.

  • En premier lieu, il faut supprimer la butée mécanique qui contraint la rotation du palonnier entre -90° et +90°.

  • En second lieu, il faut supprimer le retour de la valeur réelle de l’angle, de manière à ce que la consigne soit directement présentée sur le bloc “chaîne directe”. Ainsi, l’écart ne diminue jamais et le système est commandé aussi longtemps que la consigne est appliquée, d’où la rotation continue. Concrètement, on peut, par exemple, désolidariser l’axe du potentiomètre et sa roue dentée.

  • En toute rigueur, il faut aussi “faire le zéro” du potentiomètre. L’idée consiste à envoyer par la carte Arduino la commande de vitesse nulle. Si le potentiomètre est déréglé, le moteur tournera peut-être légèrement. Il faut alors ajuster la vis du potentiomètre de manière à ce que le servomoteur ne tourne plus quand il reçoit la commande de vitesse nulle. Tout cela peut être fait plus tard quand on passera à la partie 2 de commande logicielle des servomoteurs par la carte Arduino.

  • Dès lors qu’on applique une consigne non nulle, l’écart devient différent de zéro et le moteur est commandé. Il tourne alors avec une vitesse proportionnelle à l’écart, c’est-à-dire à la consigne, puisque la valeur mesurée correspond à un angle nul. Tant que la consigne est appliquée, le moteur et le train d’engrenages tournent à vitesse constante, proportionnelle à la consigne.

Principe du pilotage des servomoteurs

Dans ce paragraphe, nous allons étudier la nature des signaux électriques qu’il convient de fournir aux servomoteurs pour les piloter.:magicien:

Nous admettons pour l’instant que ces signaux sont faciles à générer par la carte Arduino. Leur génération concrète sera étudiée dans la Partie 2.

Les illustrations sont extraites des documents techniques du fabricant (Parallax), disponibles ici pour le servomoteur standard et pour le servomoteur à rotation continue.

Alimentation du servomoteur standard et en rotation continue

Le schéma ci-dessous montre la connexion entre le servomoteur (à droite) et la carte électronique à microcontrôleur (à gauche) — Arduino, dans notre cas — qui le commande.

Connection électrique entre la carte Arduino et le servomoteur  Used with permission from Parallax Inc. Copyright © 2018 Parallax Inc. All rights reserved.
Connexion électrique entre la carte Arduino et le servomoteur. Used with permission from Parallax Inc. Copyright © 2018 Parallax Inc. All rights reserved.

La tension Vservo est comprise entre 4 et 6 V et peut être tout simplement la tension d’alimentation générale de l’électronique.

Commande de position du servomoteur standard

Le signal I/O est un signal dit "Tout ou Rien" qui correspond à la forme d’onde ci-dessous.
Il s’agit d’un signal dit MLI — Modulation à Largeur d’Impulsion (en anglais PWM — Pulse Width Modulation).

Commande MLI du servomoteur standard Used with permission from Parallax Inc. Copyright © 2018 Parallax Inc. All rights reserved.
Commande MLI du servomoteur standard. Used with permission from Parallax Inc. Copyright © 2018 Parallax Inc. All rights reserved.

Concrètement, la carte Arduino envoie une impulsion haute d’une durée comprise entre 1,3 ms et 1,7 ms toutes les 20 ms, soit à la fréquence de 50 Hz, pour assurer un bon maintien en angle de l’axe du servomoteur :

  • quand la durée de l’impulsion haute est minimale, de 1,3 ms, la consigne angulaire correspond à -90° ;

  • quand la durée est maximale à 1,7 ms, la consigne angulaire est à 90° ;

  • pour une durée d’impulsion de 1,5 ms, l’axe du servomoteur est asservi à l’angle nul, soit le point neutre.

Le potentiomètre fonctionne en diviseur de tension et élabore une tension continue, exacte image de l’angle que fait l’axe du palonnier mesuré à partir de la position neutre.
Le sens de rotation du moteur est lié au signe de la tension appliquée par l’intermédiaire d’un pont de transistors qui génère des tensions bipolaires (donc positives ou négatives) à partir du signal MLI. Le fonctionnement intime de cette électronique de commande sort du cadre de ce cours.

Commande en vitesse du servomoteur à rotation continue

Le servomoteur à rotation continue est également commandé en MLI comme dans le paragraphe précédent :

  • pour une durée d’impulsion haute à 1,5 ms, le moteur est à l’arrêt ;

  • quand cette durée d'impulsion devient inférieure à 1,5 ms, le moteur tourne dans le sens horaire et sa vitesse de rotation est commandée par la durée d’impulsion ;

Le principe de commande en durée d’impulsion est illustré ci-dessous.

Commande MLI du servomoteur en rotation continue : sens horaire Used with permission from Parallax Inc. Copyright © 2018 Parallax Inc. All rights reserved.
Commande MLI du servomoteur en rotation continue : sens horaire. Used with permission from Parallax Inc. Copyright © 2018 Parallax Inc. All rights reserved.
  • en revanche, si on souhaite que le moteur tourne dans le sens antihoraire, on applique alors une durée d’impulsion supérieure à 1,5 ms et le moteur tournera d’autant plus vite que la durée est élevée.

La figure ci-dessous correspond à ce cas de figure.

Commande MLI du servomoteur en rotation continue : sens antihoraire Used with permission from Parallax Inc. Copyright © 2018 Parallax Inc. All rights reserved.
Commande MLI du servomoteur en rotation continue : sens antihoraire. Used with permission from Parallax Inc. Copyright © 2018 Parallax Inc. All rights reserved.

En résumé

Nous avons vu dans ce chapitre les éléments constitutifs d’un servomoteur de petite puissance de type servomoteur d’aéromodélisme. En tant que système asservi, ses constituants sont assez nombreux et ils forment ensemble une structure électromécanique assez complexe. Nous savons à présent comment les commander et ces informations seront précieuses dans la partie 2 quand nous voudrons écrire des codes sous Arduino pour obtenir les premiers mouvements de notre robot. :magicien:

Exemple de certificat de réussite
Exemple de certificat de réussite