Imprimante intelligente. Amélioration d'Octoprint

Lors du développement d'un projet ouvert pour l'imprimante Z-Bolt à 4 extrudeuses, nous avons été confrontés au problème du choix d'un écran pour contrôler l'imprimante. Parmi les écrans disponibles, seule la solution Duet Wifi peut contrôler plus de 2 extrudeuses. La solution, pour le moins, n'est pas budgétaire et l'interface n'est pas pour tout le monde. Nous avons donc décidé de chercher une alternative avec préférence et courtisanes. Cette histoire parle de lui ...

image

Sur Internet, il existe de nombreuses informations sur l'utilisation d'Octoprint. Il y a un peu plus de six mois, nous sommes devenus utilisateurs de cette solution, en appréciant immédiatement ses avantages. Il est très difficile de surestimer la capacité de contrôler l'imprimante via un internaute. Octoprint a beaucoup de plugins, et surtout pour nous - Octoprint est très bien contrôlé avec un nombre d'extrudeuses supérieur à 2. Mais il restait à résoudre un problème de plus.

De nombreux amateurs d'Octoprint affirment avec confiance qu'ils n'ont plus besoin d'un écran du mot «complètement», que c'est une partie absolument superflue de l'imprimante qui ne fait que les déranger.

Cependant, je suis convaincu qu'il existe une autre partie des utilisateurs d'OctoPrint. Chacun a ses propres habitudes et exigences pour l'utilisation quotidienne d'une imprimante 3D, et il existe des opérations plus pratiques à réaliser, avec un écran:

  • Remplacement du filament
  • Étalonnage au niveau de la table
  • Lancer l'impression d'un fichier précédemment imprimé
  • Activer le préchauffage de l'imprimante
  • Possibilité de voir l'état de l'impression
  • ...

Maintenant, l'écran par défaut des imprimantes Z-Bolt est le MKS TFT. Vous pouvez mettre TFT24, TFT32 ou TFT35. Ce sont de bons écrans, mais ils ne peuvent pas s'intégrer à Octoprint. Si Octoprint a commencé à imprimer, l'écran n'en saura rien. Ils utilisent différents référentiels de fichiers, etc. Et les écrans MKS TFT ne veulent pas fonctionner avec des imprimantes 3D à 3 têtes ou plus.

Mon objectif était de trouver / fabriquer / configurer un écran pour Octoprint, capable de contrôler plus de 2 extrudeuses.

Googler un peu, je suis tombé sur un plugin TouchUI .



La première impression était: la voici - une solution !!!

J'ai immédiatement installé le plugin et ouvert Octoprint depuis le téléphone. L'interface TouchUI est stupide: /. Parfois les boutons étaient pressés normalement, parfois ils ralentissaient, et parfois ils n'étaient pas pressés du tout la première fois. À partir d'un écran connecté, TouchUI s'est comporté aussi mal que sur un téléphone.

En parallèle, une autre solution a été trouvée.



La description était encourageante, contrairement à TouchUI, il s'agit d'une application indépendante qui fonctionne sans navigateur, ce qui signifie qu'elle nécessite beaucoup moins de ressources informatiques.

L'installation et la configuration n'ont pas causé de problèmes. L'interface a vraiment fonctionné beaucoup plus prévisible et réactive.



Mais ici, tout ne s'est pas bien passé. L'application s'est arrêtée régulièrement au démarrage de l'impression. Sur github, il y avait un problème pour cette erreur , créée il y a près d'un an et activement discutée, mais pas fermée.

Le principal problème s'est avéré que l'auteur de la demande, apparemment, s'est désintéressé de lui et ne se développe actuellement plus.

Puisque, à mon avis, la demande est assez bien écrite et a du potentiel, il a été décidé de faire un «hard-fork» et de reprendre le projet à fond.

Voici ce que nous avons obtenu:

  • Les écrans optimaux pour le projet sont sélectionnés
  • Fabriqué un «hard-fork» par Octoprint-TFT
  • Perspectives révisées sur l'architecture matérielle et logicielle de l'imprimante
  • Créé son propre thème pour l'interface Octoprint

Mais tout d'abord ...

Sélections d'écran


Nous avons commencé avec l'écran TFT 3.5 qui, pour le dire en douceur, n'a pas résisté aux critiques. Aucun angle de vue, l'image est fanée. Par conséquent, il a été décidé de choisir une meilleure solution.

Les principaux critères étaient:

  • Matrice IPS
  • taille 4-5 pouces
  • écran capacitif (facultatif)
  • prix raisonnable

En conséquence, nous avons opté pour deux options:

1. L'option est plus simple. Écran tactile résistif IPS 4 ''



2. L'option est plus riche. Écran tactile capacitif IPS de 4,3 pouces


Les deux écrans ont une résolution de 800x400. Les deux ont une excellente image, une reproduction des couleurs et un angle de vision. Leur principale différence est l'écran tactile capacitif. On s'y habitue (comme tout bon) très rapidement et on l'utilise bien plus que résistif. Cependant, un écran avec un écran tactile résistif est également tout à fait viable.

C'est Hard-Fork, bébé!




L'application a été sérieusement modifiée. Et a presque cessé de ressembler à ses parents. Par conséquent (et aussi parce que le créateur d'Octoprint-TFT a officiellement gelé le développement de son idée originale), il a été décidé de faire un hard-fork et de nommer le nouveau projet Octoscreen.

  • Tout d'abord, le problème de gel d'écran subi par Octoprint-TFT a été complètement éliminé.
  • - La conception et la mise en page ont sensiblement changé:

  • L'écran a appris à comprendre l'état de l'imprimante (veille / impression):

  • Ajout de la fonction de préchauffage / arrêt rapide du chauffage en appuyant sur l'icône de l'extrudeuse ou de la table, tandis que l'écran met en évidence l'état:

  • Écran d'étalonnage de table manuel ajouté:

  • L'élément «Menu» s'affiche sur un écran séparé:

  • Ajout de la fonction de contrôle WiFi:

  • L'application elle-même prend désormais en charge jusqu'à 4 extrudeuses, c'est pourquoi elle a été créée:


Vous pouvez télécharger l'application et trouver de brèves instructions d'installation sur notre GitHub .

Il y a aussi une instruction détaillée pour l'écran 3.5 , pour laquelle un merci spécial à notre collègue Denis (@ negativ72rus).

Révisez vos points de vue sur le micrologiciel de l'imprimante ou les changements de chaussures lors de vos déplacements




Au départ, nous avions prévu d'utiliser Marlin dans notre imprimante multi-extrudeuse, mais finalement, le choix s'est porté sur Klipper. Il y a plusieurs raisons:

1. L'une des principales raisons pour nous, en tant que développeurs, est sa flexibilité. Marlin et son code de «pâtes» font du processus d'amélioration de celui-ci, et plus encore de leur soutien ultérieur, un véritable défi.

Klipper à cet égard est l'exact opposé de Marlin. Tout d'abord, toute la configuration de Klipper est retirée du code du programme. Le code lui-même est bien structuré. Mais surtout, Klipper offre une modularité !!! Vous pouvez ajouter votre logique au micrologiciel sans modifier son cœur et simplifier ainsi considérablement la prise en charge de votre code.

2. Toute la configuration du firmware peut être effectuée directement via l'interface Web OctoPrint. Et en même temps, les paramètres sont beaucoup plus puissants que ceux de Marlin ou Smootheiware.

3. Comment puis-je ne pas dire sur les bits que tout le monde a chassés récemment)). L'architecture Klipper elle-même suppose que la charge de calcul incombe au Raspberry PI. La fonction de la carte de commande MKS Gen L (dans le cas des imprimantes Z-Bolt) reste dans la transmission des signaux vers / depuis la périphérie (moteurs, capteurs, réchauffeurs, commandes).

Mais le Raspberry Pi 3 modèle B + est équipé d'une puce Broadcom BCM2837B0 A53 1,4 GHz à 64 bits.

Essentiellement Octoprint + Klipper fonctionnant sur le Raspberry Pi + le même MKS Gen L -
un ordre de grandeur plus fonctionnel et progressif que Marlin fonctionnant sur une puce 32 bits.

Les fichiers de configuration pour les imprimantes Klipper pour Z-Bolt peuvent également être trouvés ici .

Un petit bonus au final!


Nous avons également créé notre propre thème pour l'interface Octoprint:



Le chapeau peut être configuré avec le sélecteur de couleurs natives dans la section Apparence:



Les instructions sur la façon d'installer le thème peuvent être trouvées sur notre GitHub .

Écrivez dans les commentaires les fonctionnalités d'écran que vous trouvez les plus utiles et nécessaires à ajouter.

Tous les bons, positifs et bons éléments en surplomb!

Source: https://habr.com/ru/post/fr460453/


All Articles