Drawbot, le robot 🤖 dessinateur du Devfest 🖊

Pour animer le stand du Devfest 2021, Stéphane Cohan et moi avons fabriqué un robot graffeur à base d’Arduino et de pièces imprimées en 3D. Ce robot est largement inspiré du projet Polargraph de Sandy Noble.

Un stylo-feutre est entraîné par le biais de courroies reliées à 2 moteurs afin de le déplacer. Ce système positionne le crayon à l’aide d’un système de double triangulation.

Dans cet article, nous allons vous détailler les différentes étapes de sa création.

Drawbot

🛠 Matériel de construction

Ce robot est montĂ© sur une grande planche de placard que nous avons dĂ©coupĂ©e aux dimensions de 240×90 cm et sur laquelle nous avons collĂ© du papier peint motif brique.

Préparation de la découpe
Ponçage pour le client

Le robot dessinateur est composĂ© de : 

  • D’une carte Ă©lectronique Arduino Uno et d’un shield CNC v3 : cette carte embarque notamment un micro-contrĂ´leur qui interprĂ©tera les ordres reçus via le port USB depuis l’ordinateur afin de piloter les moteurs. La seconde carte se branche sur le dessus de l’Arduino et produit les signaux Ă©lectriques de puissance pour les moteurs. (en rouge en haut de la photo);
Shield CNC monté sur une carte Arduino Uno
Moteur pas Ă  pas
  • D’un support de stylo appelĂ© “gondole” portant le stylo. Cette pièce, lestĂ©e d’environ 100g, se dĂ©place sur la feuille de dessin par l’intermĂ©diaire des courroies crantĂ©es reliĂ©es aux 2 moteurs. Un support magnĂ©tique a Ă©tĂ© conçu pour faciliter le changement de feutre et de couleur.
Vue frontale de la gondole
  • De plus, la gondole est Ă©quipĂ©e d’un servomoteur pour lever le stylo afin de ne pas dessiner lors de dĂ©placements comme nous le faisons lorsque nous tenons un crayon avec la main.
Vue arrière de la gondole
  • De nombreux modèles de gondole sont disponibles sur les sites de bibliothèque de modèles 3D mais nous avons prĂ©fĂ©rĂ© en redessiner une afin de permettre le changement de stylo plus facilement par le biais du support magnĂ©tique et d’optimiser l’emplacement du servomoteur.
Vue IRL de la gondole
  • Des contrepoids au bout de chaque courroie sont fixĂ©s afin d’assurer une tension dans celle-ci pour que les moteurs ne patinent pas et qu’il n’y ait pas de “saut” dans le dessin. 100g de plomb de pĂŞche sont installĂ©s dans chaque boĂ®te.
Contrepoids
  • 2 supports de moteurs Nema (lien thingiverse) pour fixer les moteurs Ă  la planche
Support Arduino

đź’» Logiciel

Le robot n’est pas autonome, il n’est pas capable de convertir directement un fichier vectoriel ou une image en ordres de déplacement, il faut passer par un outil fonctionnant sur un ordinateur.

Nous avons utilisé polargraph qui fournit un firmware pour l’Arduino Uno et une interface graphique sous Processing 2.2.1 fonctionnant sous Windows, Macos ou Linux.

L’IHM n’est pas très facile Ă  utiliser et n’est malheureusement plus maintenue… Il existe cependant des alternatives comme melt-app ou plus globalement le projet makelangelo qui fournit un autre firmware et une interface plus accessible.

Avant de commencer à dessiner, il faut calibrer le robot en fonction de la distance entre les moteurs, la longueur des courroies, le nombre de dents des poulies fixées aux moteurs et la position et taille de la zone à dessiner. Cette opération est plutôt fastidieuse car il faut tester de manière empirique la configuration mais le résultat final en vaut la peine.

Polargraph controller

Voici le rĂ©sultat d’un dessin :

Dessin d’une bombe de peinture

Voici un exemple de déplacement de la gondole en vidéo :

Les fichiers SVG que nous avons sélectionnés pour le DevFest sont uniquement constitués de lignes et de petites tailles.

Il faut environ 5 min pour dessiner la bombe de peinture sur la photo précédente, ce qui n’est pas très rapide. En effet, les déplacements sont découpés en fragments de 1 mm et sont transmis de manière synchrone entre le PC et l’Arduino ce qui induit une latence sur le bus USB et sur les moteurs qui ne restent pas en mouvement continuellement.

🚀 Vers l’infini et au-delà !

Nous avons passé du bon temps à réaliser ce projet et espérons que le robot fonctionnera tout au long de la conférence ;-).

2 rĂ©flexions sur “Drawbot, le robot 🤖 dessinateur du Devfest đź–Š

  • 5 fĂ©vrier 2022 Ă  10 h 23 min
    Permalien

    Bonjour,
    J’ai Ă©tĂ© poussĂ© sur cette page par le titre racoleur de https://blog.zenika.com/author/gmembre2/ me laissant penser que j’allais savoir comment construire un tel robot pas Ă  pas.
    Las, je tombe sur une page qui dĂ©gonfle rapidement les ambitions. Nulle rĂ©fĂ©rence prĂ©cise de matĂ©riel (quand elles sont citĂ©es), aucun partage des fichiers utilisĂ©s. Il est indiquĂ© que le logiciel est obsolète et complexe Ă  prendre en main, mais aucun retour d’expĂ©rience n’est exposĂ©, aucun conseil ou dĂ©but de tuto.
    Les belles images avec les logos zenika sur le papier peint montrent manifestement une maĂ®trise perfectible de photoshop de la part de l’auteur, sentiment de faux appuyĂ© par l’absence de vidĂ©o montrant le robot en action de dessin. Bref, vous avez probablement construit un système capable de dĂ©clencher deux moteurs et moi je viens de perdre mon temps.
    DĂ©solĂ© pour ce commentaire mais il fallait que je rĂ©agisse car c’est ici une belle page de consultant 🙂

    RĂ©pondre
    • 7 fĂ©vrier 2022 Ă  15 h 33 min
      Permalien

      Bonjour,
      Merci d’avoir pris le temps de vous arrĂŞter sur notre blog. DĂ©solĂ©e que l’article vous ait tellement déçu. Vos remarques ont Ă©tĂ© transmises Ă  l’auteur 🙂
      Bonne journée !

      RĂ©pondre

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

%d blogueurs aiment cette page :