Blog Zenika

#CodeTheWorld

ÉvénementsFabLabIoT & Mobilité

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 🖊

  • 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
    • 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

Répondre à Cynthia StaeblerAnnuler la réponse.

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

En savoir plus sur Blog Zenika

Abonnez-vous pour poursuivre la lecture et avoir accès à l’ensemble des archives.

Continue reading