OctoPrint donne des ailes à votre imprimante 3D

Facebooktwittergoogle_plusredditpinterestlinkedinmail

Octoprint est un serveur d’impression open source pour imprimantes 3D. Il se branche sur le port USB de l’imprimante, en tethering, et contient un serveur web qui permet de gérer les impressions à distance depuis un navigateur ou une application mobile.

OctoPi, est une distribution d’OctoPrint pour Raspberry Pi. C’est tout naturellement la version d’OctoPrint que j’ai mis en place il y a quelques semaines et sur laquelle porte ce test.

En ce qui concerne l’imprimante, j’ai bien sur testé sur la mienne, qui est pour rappel une Discovery200 de chez Dagoma.

Pour la configuration, j’ai utilisé un Raspberry Pi 3 flambant neuf acheté pour l’occasion. L’installation est on ne peut plus simple. On transfère l’image sur une carte micro SD et on démarre la machine. Pour accéder à l’interface, on fait pointer son navigateur sur l’URL http://octopi.local/ ou bien en allant chercher son adresse IP dans les options de votre point d’accès WiFi, de votre box Internet, ou encore de votre Raspberry Pi si vous l’avez relié à un écran et un clavier.

OctoPrint est capable d’auto-détecter les paramètres de connexion série à l’imprimante (via le câble USB), mais vous pouvez aussi imposer ces paramètres au besoin. Edit 28/12/2017: J’ai tenté de débrancher le câble réseau du Raspberry Pi pendant plusieurs minutes durant une impression sans aucune conséquence notable. L’impression continue normalement, et toutes les fonctionnalités reviennent quand on rebranche le câble.

Il peut gérer les fichiers Gcode locaux (sur le Raspberry Pi dans le cas d’OctoPi), ou sur la carte SD de l’imprimante. Edit 28/12/2017: Cela dit, sur Discovery200, la présence d’une carte micro SD dans l’imprimante semble désactiver la connexion USB.

Première évolution, par rapport à l’utilisation autonome de l’imprimante via carte micro SD : On peut avoir autant de fichiers Gcode sous la main que le permet l’espace disque d’OctoPrint, les nommer comme on le souhaite, et les ranger par dossiers. Alors qu’en mode autonome on n’a qu’un seul fichier à la fois, nommé dagoma0.g, sur la carte micro SD.

L’onglet Temperature donne accès au paramétrage de la tête d’impression hors cycle d’impression. Ce qui permet de l’allumer ou de l’éteindre à loisir, facilitant grandement les opérations de chargement et de déchargement des filaments.

Capture d'écran OctoPrint, onglet temperature.

La consigne de température et la température mesurée sont affichées sur un graphique qui se met à jour régulièrement. On peut donc les surveiller et savoir à quel moment insérer ou retirer le filament. Seul détail qui pêche : Les couleurs des deux tracés sont bien trop proches, et on les distingue assez mal. Surtout quand on est loin de l’écran, en train de manipuler l’imprimante. Sachez que le tracé qui ne fait que des lignes droites est la consigne, et celui qui fait des courbes est la température mesurée.

L’onglet Control permet de piloter manuellement la position de la tête et du plateau. Ce qui est bien pratique avant et après un cycle d’impression. Il permet aussi de sélectionner un outil lorsque votre imprimante est multi-tête (non-testé puisque ce n’est pas mon cas), d’extruder ou rétracter le filament (encore une fois bien pratique lors du remplacement de filament), et de gérer le verrouillage des moteurs de positionnement ou la ventilation.

Capture d'écran OctoPrint, onglet control

On peut déjà utiliser cette interface depuis un smart phone ou une tablette, mais comme nous allons le voir dans un prochain article, il existe aussi des applications mobiles qui exploitent l’API d’OctoPrint.

Il semblerait qu’un bug matériel sur la Discovery200 empêche d’éteindre totalement le ventilateur dès l’instant qu’une masse est trouvable sur le port USB. Même si l’interrupteur de l’imprimante est coupé, et que le Raspberry Pi est hors tension, elle ira chercher sa masse par le port USB, puis par le câble réseau du Raspberry Pi 🙂

L’onglet Gcode viewer vous permet, comme son nom l’indique, de visualiser les mouvements ordonnés par les instructions Gcode, couche par couche, et éventuellement en temps réel pendant un cycle d’impression. C’est une fonctionnalité que je connaissais de par ma CNC, et que je suis bien content de retrouver ici.

Capture d'écran OctoPrint, onglet gcode viewer

L’onglet terminal vous permet de visualiser en temps réel les échanges Gcode entre OctoPrint et votre imprimante. Vous pouvez aussi y saisir des instructions manuelles.

Capture d'écran OctoPrint, onglet terminal

L’onglet Timelapse vous permet enfin de prendre des photos régulièrement si une webcam est reliée à OctoPrint. N’ayant pas de webcam sous la main, je n’ai pas pu tester.

Capture d'écran OctoPrint, onglet timelapse

À noter pour conclure que la qualité de la solution est assez poussée. On y trouve pêle-mêle :

  • Une gestion des mises à jour automatique
  • Une gestion d’extensions
  • Un menu de redémarrage et d’extinction
  • Une API permettant l’utilisation, par exemple, d’applications mobiles

Dans l’ensemble, OctoPrint apporte toutes les fonctionnalités qu’un utilisateur de CNC est habitué à avoir sous la main, plus un pilotage et une surveillance à distance.

Facebooktwittergoogle_plusredditpinterestlinkedinmail

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *