Blog

Quel type de servomoteur utiliser pour un projet de robotique ? (indice : Dynamixel)

Apprendre la robotique
Partager
Quel servomoteur utiliser pour un projet robotique ? (indice : Dynamixel)

Vous recherchez un joli servomoteur à utiliser pour votre projet de robotique ?

Chez Niryo, nous avons testé certains des servomoteurs que vous pouvez acheter en ligne et nous avons constaté qu'un type de moteur est nettement supérieur aux autres. Il s'agit des moteurs Dynamixel, créés par la société Robotis. Nous les utilisons nous-mêmes sur notre systèmes de robot.

Nous vous expliquerons ici quelles sont les principales caractéristiques de ces moteurs et comment les utiliser réellement pour votre projet robotique.

Caractéristiques Dynamixel

Voici une liste des fonctionnalités intéressantes que vous obtenez des moteurs Dynamixel :

  • Contrôle du changement de mode : vous pouvez utiliser un contrôle de position en boucle fermée avec le « mode joint » (max 320-360°) ou passer en « mode roue », et le moteur peut alors tourner à l'infini avec un contrôle de vitesse.
  • Obtenez des commentaires utiles : position, vitesse, charge, température, tension, etc. Avec ces commentaires, vous pouvez toujours savoir quel est l'état du moteur et créer votre propre algorithme en boucle fermée en plus de cela.
  • Retour d'erreur : à chaque commande (lecture, écriture), le moteur vous renverra un tas d'informations. Parmi eux, vous pouvez voir s’il y a une erreur avec les données que vous avez envoyées, ou s’il y a une erreur interne, une surcharge, une surchauffe, …
  • Contrôle PID : donnez simplement les valeurs, et le moteur Dynamixel utilisera le PID comme méthode de contrôle principale.
  • LED : Ce n'est pas directement lié au servomoteur, mais cela vous permet de vérifier facilement les erreurs (par exemple, la LED clignote en cas de surchauffe), et de rendre votre robot plus joli !
  • Contrôler plusieurs moteurs en les enchaînant simplement. De cette façon, vous n'avez qu'un seul bus pour communiquer avec tous vos moteurs et vous pouvez réduire considérablement le nombre de câbles sur vos robots.

Quel moteur Dynamixel utiliser pour votre projet de robotique

Eh bien, si vous effectuez une recherche en ligne, vous pouvez trouver de nombreux servomoteurs Dynamixel différents, avec des capacités et des prix très différents.

Si vous débutez avec Dynamixel, nous vous recommandons soit de choisir XL-320 or AX-12 moteurs. Ce sont les 2 moteurs les plus courants, vous trouverez de nombreuses aides sur Internet pour les utiliser. Leur capacité sera probablement suffisante pour votre projet de robotique – du moins pour les tests si vous avez un projet plus important.

Comment utiliser les servomoteurs Dynamixel

Un servomoteur Dynamixel possédant un microcontrôleur interne, vous devez communiquer avec lui pour lui donner des commandes, et lire certaines données.

Les moteurs utilisent une série TTL communication semi-duplex.

Pour piloter un moteur Dynamixel, vous pouvez simplement utiliser un Module USB2Dynamixelqui vous permet de connectez facilement votre bus Dynamixel à votre ordinateur (ou Raspberry Pi) via USB, et ainsi ne pas avoir à vous soucier du fonctionnement de la communication.

Si vous souhaitez utiliser uniquement un microcontrôleur (sur une carte Arduino par exemple), vous pouvez utiliser directement les broches UART (avec une configuration semi-duplex).

Une fois vos moteurs connectés, vous devrez leur envoyer des instructions pour déplacer votre robot et obtenir des commentaires.

Différentes manières de programmer les moteurs Dynamixel existent, pour tous les niveaux :

Vous pouvez également chaîner plusieurs moteurs pour n'utiliser qu'un seul bus et ainsi réduire le nombre de câbles. Mais alors… Comment savoir comment communiquer avec un servo spécifique ?

Chaque moteur a un identifiant (vous pouvez le changer facilement), donc en gros il vous suffit de préciser l'ID du servo avec lequel vous souhaitez communiquer, lorsque vous envoyez vos données !

Exemple de projet robotique utilisant des servomoteurs Dynamixel

Chez Niryo nous utilisons actuellement des servomoteurs Dynamixel XL-320 sur notre robot, ce qui nous permet de :

  • Obtenez des trajectoires fluides par rapport à certains autres servomoteurs standards.
  • Augmenter la plage des axes à plus de 180°.
  • Prends-en commentaires utiles pour améliorer certaines fonctionnalités. Par exemple, on peut demander à une pince de se déplacer vers une position « fermée », et d'arrêter de forcer lorsqu'elle saisit un objet (avec retour de charge). De cette façon, nous évitons que le moteur ne se brise ou ne surchauffe.
  • Utiliser des LED pour donner des signaux à l'utilisateur : robot prêt, phase d'initialisation, problème détecté, …
  • signaux à l'utilisateur : robot prêt, phase d'initialisation, problème détecté, …


Les servomoteurs Dynamixel font partie des meilleurs servomoteurs pour les projets robotiques, car nous avons vu qu'ils ont bien plus de fonctionnalités que les servomoteurs standards.

Donc si vous souhaitez démarrer votre propre projet, vous devriez envisager d'en tester un, cela vous fera gagner du temps, et vous permettra de vous concentrer sur des fonctionnalités de plus haut niveau !

Vous pouvez également obtenir plus d'informations sur Niryo Un ici, et regardez des vidéos sympas sur son fonctionnement. Nous publierons bientôt de nouvelles photos et vidéos sur la façon dont nous utilisons les moteurs Dynamixel sur Niryo One.