Comment changer la direction d’un servomoteur arduino ?
Un servomoteur est un moteur dont l’arbre tourne pour positionner quelque chose en fonction d’un signal de commande. Ils sont généralement utilisés pour diriger des avions télécommandés en ajustant les volets d’aile, la position de vol pour les drones, le contrôle des vannes utilisées dans le contrôle du débit ou l’entraînement continu des roues pour les robots. Ils peuvent être utilisés pour positionner ou ajuster presque tout ce à quoi vous pouvez penser. Ils sont constitués d’un boîtier en plastique qui contient un moteur à courant continu, un circuit de commande et quelques engrenages pour le couple (voir figure 1).
Le contrôle de la position de l’arbre par le servomoteur provient de l’utilisation d’un signal de modulation de largeur d’impulsion (PWM) pour faire tourner l’arbre dans le sens des aiguilles d’une montre ou dans le sens inverse, selon la largeur d’impulsion du signal. Typiquement, une largeur d’impulsion de 1 ms fera tourner l’arbre dans le sens des aiguilles d’une montre et une impulsion de 2 ms fera tourner l’arbre dans le sens inverse des aiguilles d’une montre. Pour positionner l’arbre ½ chemin, ou au milieu, une impulsion de 1,5 ms fonctionne généralement. Vous aurez besoin de 20 ms entre chaque impulsion. La figure 2 ci-dessous montre le timing pour chaque position.
Déterminez si vous avez besoin d’une rotation limitée (180 degrés maximum) ou continue. Vous devez également noter la quantité de couple que l’arbre doit avoir pour votre application ainsi que la vitesse de rotation, qui est évaluée en RPM (tours par minute).
Vitesse de rotation du servo Arduino
Tout d’abord, nous allons inverser les fils qui sont connectés au moteur. Après cela, inversez les fils qui sont sur le potentiomètre. Ou ceux qui sont sur la carte. Et enfin, nous allons tester et remettre tout en place. Une autre façon est d’utiliser un inverseur de servo.
Vous voyez, il y a quelques principes géométriques que vous devez suivre. Et l’un d’eux est que les servos doivent être dans une position symétrique. Si vous les montez sans inverseur, ils ne répondront pas aux critères géométriques.
Il applique un système de rétroaction positionnelle afin de contrôler la position finale et le mouvement de l’arbre de sortie. Contrairement à un moteur normal, l’arbre peut être déplacé vers un certain angle, une certaine vitesse et une certaine position.
Un codeur agit comme un capteur qui fournit un retour d’information sur la position et la vitesse. L’ensemble de ce système est intégré au servomoteur avec les engrenages, le potentiomètre, l’amplificateur, l’arbre, le circuit de commande et le moteur.
En outre, l’inclusion d’un autre dispositif augmente le poids total du véhicule RC. Et une augmentation de poids un peu déséquilibrée est mauvaise si vous faites de la course. De plus, même dans le bashing, il est important de garder une bonne répartition du poids.
Servo-reverse
Contrairement à leurs homologues universels, qui ne peuvent tourner que de 0° à 180° et n’ont aucun contrôle de vitesse autre que le contrôle de position, les servos à rotation continue nous permettent de contrôler le sens de rotation et de régler également la vitesse.
FEETECH FS90R Micro servomoteur à rotation continue sur 360 degrésx1Arduino UNO R3x1Fils de liaison mâle-mâlex1Planche à painx1Potentiomètre de 10 kΩ (type planche à pain)x1Câble USB type A/Bxalimentation 15V (optionnel)x1
Les servomoteurs ont également un “couple de maintien”. Cela signifie que lorsque nous dirigeons un servomoteur vers une certaine position et que nous essayons de faire tourner l’arbre à la main/force extérieure, il va contrecarrer notre effort et essayer de maintenir sa position.
REMARQUE : pour minimiser le risque de consommer trop de courant et d’endommager votre port USB, n’imposez pas de charges lourdes au moteur. Si vous avez besoin du moteur pour contrôler la position de quelque chose, veuillez connecter une alimentation externe de 5V (ou une alimentation qui peut fournir la tension de fonctionnement du moteur) comme indiqué dans le schéma ci-dessous.
Comme je l’ai déjà mentionné, le servo à rotation continue/360 servo est une version spéciale du servo universel qui nous permet de contrôler non pas la position, mais la vitesse et la direction de la rotation du moteur.
Contrôle de la position d’un servo Arduino
Les moteurs électriques DC sont des actionneurs continus qui convertissent l’énergie électrique en énergie mécanique. Le moteur CC y parvient en produisant une rotation angulaire continue qui peut être utilisée pour faire tourner des pompes, des ventilateurs, des compresseurs, des roues, etc.
Outre les moteurs CC rotatifs classiques, il existe également des moteurs linéaires capables de produire un mouvement linéaire continu. Il existe essentiellement trois types de moteurs électriques conventionnels : Les moteurs de type AC, les moteurs de type DC et les moteurs pas à pas.
Dans ce tutoriel sur les moteurs électriques, nous nous intéresserons uniquement aux moteurs à courant continu et aux moteurs pas à pas simples et légers qui sont utilisés dans de nombreux types de circuits électroniques, de contrôle de position, de microprocesseurs, de PIC et de circuits robotiques.
Le moteur CC ou moteur à courant continu est l’actionneur le plus couramment utilisé pour produire un mouvement continu et dont la vitesse de rotation peut être facilement contrôlée, ce qui le rend idéal pour les applications nécessitant un contrôle de vitesse, un contrôle de type servo et/ou un positionnement. Un moteur à courant continu se compose de deux parties, un “stator” qui est la partie fixe et un “rotor” qui est la partie tournante. Il en résulte qu’il existe essentiellement trois types de moteurs CC.