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 ;-).

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 :