View  Edit  Attributes  History  Attach  Print  Search

ACCUEIL | ARDUINO > S'INSTALLER > DEBUTER > APPROFONDIR | PROCESSING | MECATRONIQUE | MATERIEL | OUTILS | TESTS | Plus...|
Python > Shell > ATELIERS Python + Qt > PyQt apps > PyQt+Arduino | Mes Robots | RepRap | Mes lib'Arduino | Mes shields Arduino | Mes distros | Les Mini-PC |
ATELIERS ARDUINO| VIDEOS | COMPRENDRE | REFERENCES | CODER | TECHNIQUE | GNU/LINUX | LIENS | Rien à voir |

Principes d'utilisation des alimentations avec une carte Arduino et des servomoteurs

COMPRENDRE - X.HINAULT- Mai 2011

L'ESSENTIEL :

  • on peut utiliser directement jusqu'à 4 servos standard avec une carte Arduino
  • au-delà, utiliser une alimentation externe complémentaire

Principe de l'alimentation d'un servomoteur

  • Un servomoteur associe :
    • une motorisation de puissance qui va nécessiter une intensité de l'ordre de 100mA à plusieurs centaines de mA
    • une électronique de commande qui positionne l'axe du servomoteur en fonction de la largeur de l'impulsion PWM reçue sur une entrée numérique qui ne va nécessiter que 1mA.
  • La tension d'alimentation d'un servomoteur standard, tel que le Futaba S3003, doit être comprise entre 4V et 6V continus (variable selon les modèles), régulé ou non. Cet ordre de grandeur de tension est compatible avec les circuits numériques tel que la carte Arduino qui fonctionne en 5V régulé.
  • Les 2 grandeurs clés pour dimensionner l'utilisation d'un servomoteur avec un circuit numérique vont donc être :
    • l'intensité de fonctionnement, de l'ordre de 100mA à plusieurs centaines de mA.
    • l'intensité de commande, de l'ordre du mA.
  • Dans le cas du Futaba S3003, on a
    • l'intensité de fonctionnement, de l'ordre de 120mA
    • l'intensité de commande, de l'ordre de 1mA

Schéma électrique type de l'utilisation de servomoteurs avec une carte Arduino

  • Voici le schéma électrique type de l'utilisation d'un servomoteur avec une carte Arduino :
  • Dans le cas d'une carte Arduino :
    • l'intensité maximale disponible sur une broche est de 40mA
    • l'intensité maximale cumulée pour l'ensemble des broches est 200mA
    • l'instensité maximale que peut fournir l'alimentation 5V de la carte est 500mA.
  • Par conséquent, avec une carte Arduino :
    • En ce qui concerne la ligne de commande du servomoteur par la carte Arduino :
      • on pourra commander directement autant de servomoteur que l'on veut (broche de commande) avec une carte Arduino, le nombre maximal étant 200mA / I commande, soit 100 environ dans le cas du Futaba S3003, ce qui est largement supérieur au nombre de broches de la carte.
    • Il n'y aura par ailleurs pas besoin d'amplification (type ULN 2803) sur la ligne de commande du servomoteur même si l'on utilise un grand nombre de servomoteurs.
    • En ce qui concerne l'alimentation principale des servomoteurs par une carte Arduino
      • on ne peut alimenter que 3 à 4 servomoteurs simultanément par l'alimentation 5V de la carte Arduino, le nombre maximal étant 500mA / I fonctionnement = 500 / 120 = 4 servomoteurs dans le cas du Futaba S3003.
      • Une alimentation externe sera indispensable dès que l'on dépassera ce nombre pour ne pas risquer de "griller" la carte Arduino.

Cas 1 : Utilisation du 5V régulé de la carte Arduino

  • Dans ce cas de figure, l'alimentation du/des servomoteurs est fournie par la carte Arduino qui est alimentée soit par Vin en 7-12V, soit par le port USB en 5V.
  • Dans ce cas de figure, l'alimentation V+ du servomoteur se confond avec le 5V de la carte Arduino (mise en place du cavalier dans le cas de l'utilisation de la carte EasyCard).
  • Ce mode de fonctionnement ne permet l'utilisation que de 4 servomoteurs standard sans risque pour la carte Arduino

Cas 2 : Utilisation du 5V régulé d'une alimentation de PC

  • Dans ce cas de figure, l'alimentation du/des servomoteurs est fournie par une alimentation externe régulée 5V, une alimentation de PC par exemple, qui va pouvoir fournir plusieurs dizaines d'ampères sans problème.
  • Voir notamment la page : Utiliser une alimentation de PC comme alimentation 5V régulée
  • Dans ce cas de figure, l'alimentation V+ du servomoteur est le 5V de l'alimentation utilisée (ne pas mettre en place le cavalier dans le cas de l'utilisation de la carte EasyCard).
  • Ce mode de fonctionnement permet l'utilisation de plusieurs dizaines de servomoteurs standards sans risque pour la carte Arduino dans la limite de Imax alimentation / I fonctionnement servomoteur. Par exemple, dans le cas d'un Futaba S3003, une alimentation de PC fournissant 20A peut théoriquement alimenter 20A/0,120A = plus d'une centaine de servomoteurs !! A l'inverse pour commander 20 servomoteurs, il faut théoriquement une alimentation pouvant fournir 20 x 0,120A = 2.40 Ampères.

Cas 3 : Utilisation d'une alimentation 5-6V externe non régulée (bloc d'accumulateurs)

  • Dans ce cas de figure, l'alimentation du/des servomoteurs est fournie par une alimentation externe 5-6V non régulée, un paquet d'accumulateur typiquement, qui va pouvoir fournir 1 ou plusieurs ampères.
  • Dans ce cas de figure, l'alimentation V+ du servomoteur est la tension de l'alimentation utilisée (ne pas mettre en place le cavalier dans le cas de l'utilisation de la carte EasyCard).
  • Ce mode de fonctionnement permet l'utilisation de plusieurs servomoteurs standards sans risque pour la carte Arduino dans la limite de Imax alimentation / I fonctionnement servomoteur.
  • Par exemple, pour commander 20 servomoteurs, il faut théoriquement une alimentation pouvant fournir 20 x 0,120A = 2.40 Ampères. Il faudra cependant une capacité des accumulateurs trois fois supérieure au minimum (sinon, la tension aux bornes des accumulateurs chutera brutalement), soit 7500mA environ pour 20 servomoteurs standards.
  • Voir notamment : Bien dimensionner son alimentation