samedi 16 février 2019

Bras robotique Tinkerkit Braccio


J'ai eu l'occasion de faire l'essai du bras robotique Braccio, qui est spécialement conçu pour être utilisé avec une carte Arduino.

La boîte contient tout ce qui est nécessaire pour assembler un bras fonctionnel...sauf la carte Arduino, qui doit être achetée séparément (un modèle fonctionnement à un niveau logique de 5 V, comme par exemple le Uno, est nécessaire).

Assemblage

Le Braccio arrive en pièces détachées: une vingtaine de pièces de plastiques qui doivent être assemblées au moyen d'une soixantaine de vis (un tournevis cruciforme tout à fait conventionnel est fourni dans le kit, ce qui m'a semblé un peu discutable), 6 servomoteurs, une alimentation (5 V, 4 A) et le shield Braccio.


Les instructions d'assemblage fournies dans la boîte ressemblent à celles qui accompagnent un kit Lego: des illustrations, raisonnablement claires, et pas le moindre texte. En cas d'incertitude, des vidéos d'assemblage sont disponibles sur YouTube (celui-ci me semble très bien).

On commence par assembler la partie du bras se situant entre l'épaule et le coude (servomoteurs M2 et M3).





Le servomoteur M1 est fixé à la base.


L'épaule est reliée à la base rotative.


Assemblage de l'avant-bras (servomoteur M4).




On ajoute le poignet (servomoteur M5).




Assemblage de la pince (servomoteur M6)



Le shield Braccio V4

Le shield Braccio comporte 6 connecteurs de couleur orange auxquels vous branchez les servomoteurs (vous les insérez dans l'ordre, M1 étant situé du côté du jack d'alimentation).

Les connecteurs blancs permettent de brancher des capteurs analogiques (ils sont reliés aux entrées A0 à A5 de l'Arduino). Le connecteur jaune est pour la communication série, et le vert ("TWI") pour un capteur I2C.


Le bloc d'alimentation (5 V, 4 A) doit être branché au shield Braccio. Il supporte une tension d'entrée allant de 100 à 240 V, 50 ou 60 Hz.


Le shield Braccio doit être superposé à une carte Arduino qui fonctionne à un niveau logique de 5 V (Uno, par exemple).

La bibliothèque Braccio

Une bibliothèque spécialement conçue pour le contrôle du Braccio est disponible ici.

Une fois la bibliothèque installée, le premier exemple à essayer est testBraccio90, qui place le Braccio en position verticale, pour vérifier si tous les servomoteurs sont correctement alignés. Vous pouvez ensuite essayer les exemples simpleMovements et takethesponge.



Programmation

Mise à part la commande d'initialisation du Braccio ("Braccio.begin()" qui doit doit être placée dans "setup()"), tous les mouvements du Braccio sont contrôlés par une même commande:

Braccio.ServoMovement((step delay  M1 , M2 , M3 , M4 , M5 , M6);

  • Le premier paramètre (step delay) est le nombre de millisecondes de pause entre le mouvement de chaque servo. Les valeurs admises vont de 10 à 30.
  • M1 est l'angle de la base rotative, en degrés. Les valeurs admises vont de 0 à 180.
  • M2 est l'angle de l'épaule, en degrés. Les valeurs admises vont de 15 à 165.
  • M3 est l'angle du coude, en degrés. Les valeurs admises vont de 0 à 180.
  • M4 est l'articulation du poignet. Les valeurs admises vont de 0 à 180.
  • M5 contrôle la rotation de la pince. Les valeurs admises vont de 0 à 180.
  • M6 permet d'ouvrir ou fermer la pince. Les valeurs admises vont de 10° (complètement ouverte) à 73° (complètement fermée).
C'est une bonne idée, dans un premier temps, de faire bouger chaque servomoteur un par un, afin de bien visualiser ce que contrôle chaque paramètre, et pour vérifier que le mouvement peut bel et bien s'effectuer sur toute la plage des valeurs admissibles.

Résultats

Pour finir, une courte vidéo du Braccio qui s'amuse avec une éponge.




Yves Pelletier   (TwitterFacebook)

2 commentaires:

  1. could i have that code same in your video please ?
    thank you

    RépondreSupprimer
    Réponses
    1. C'est simplement un des exemples fournis avec la bibliothèque Braccio.

      Supprimer