Aller au contenu

Filament ABS

Chris V.

[TUTO] Eteindre automatiquement une imprimante après un certain temps

Messages recommandés

Celui-ci est destiné personnes qui utilisent OctoPrint et ont connecté leur imprimante à un relais. Pour ce point, je vous laisse faire une recherche, il existe déjà une chiée de sujets qui en parlent. :)Après avoir appliqué ce tutoriel, OctoPrint pourra automatiquement arrêter votre imprimante, mais en tenant compte de son activité en cours. Car la gestion d'événements d'OctoPrint, par défaut, ne permet pas d'insérer de conditions. 

Dernièrement, j'ai cherché un moyen d'arrêter automatiquement mon imprimante après un travail terminé. OctoPrint a une bonne gestion des événements mais un peu trop stupide pour cette tâche : que faire si je veux imprimer plusieurs fichiers l'un après l'autre ? Devrais-je laisser mon imprimante s'éteindre et la relancer ensuite ? Je ne suis pas certain que l'alimentation apprécie la manœuvre sur le long terme, donc ce n'était certainement pas une option pour moi. J'avais mis en place une gestion via relais, donc la plus grande tâche était déjà terminée : je peux contrôler mon imprimante et son éclairage via le menu d'OctoPrint. Vous devez donc être au même point avant de commencer. Puis vient l'automatisation : tout est dans un script qui sera exécuté par OctoPrint après chaque impression. Ce script utilise OctoCmd pour récupérer l'état de l'imprimante: est-elle inactive ? Si c'est le cas, l'imprimante est éteinte. C'est aussi simple que ça. :)

D'abord, installez OctoCmd. Notez que sur OctoPi, le chemin menant à pip est /home/pi/oprint/bin/. Ensuite, créez le script que j'ai mentionné ci-dessus :

nano /home/pi/autoshutdown.sh

Et complétez-le avec le code ci-dessous. Vous devrez adapter le délai avant l'arrêt automatique selon vos préférences (ici 120 secondes, soit deux minutes) et la commande pour arrêter votre imprimante. La mienne est sur le GPIO 17, c'est peut-être différent pour la vôtre :

#! /bin/bash
sleepTime=120

sleep "$sleepTime"
printerState="$(/home/pi/oprint/bin/octocmd status | grep -i 'state:' | sed -e 's/state: //g')"

if [ "$printerState" = "Operational" ]
then
        /usr/bin/gpio -g write 17 1
fi
exit 0

Ensuite, créez le script exécutable:

chmod +x /home/pi/autoshutdown.sh

Enfin, déclarez le script dans le gestionnaire d'événements d'OctoPrint via le fichier config.yaml :

events:
  enabled: true
  subscriptions:
  - command: (/home/pi/autoshutdown.sh)
    event: PrintDone
    type: system

Maintenant, redémarrez le service OctoPrint et laissez la magie opérer ! :) 

 

Modifié (le) par gisclace
  • J'aime 2

Partager ce message


Lien à poster
Partager sur d’autres sites

Splendide, justement ça fait partie de mes préoccupations, car pratiquement chaque jour, je lance un print avant d'aller me coucher, et je me lève bien trop tard!!

Mais si tu en avais le courage, pourrais-tu faire un tuto depuis le début? Quel matos faut-il pour arriver à ce résultat?

J'ai commencé par acheter un Raspberry Pi3 que je n'ai pas encore reçu, et j'ai un peu du mal à me projeter et faire une synthèse de ce qui va me manquer...

Partager ce message


Lien à poster
Partager sur d’autres sites

salut

sleepTime=120

 

 À mon avis , c'est un peu limite , je te suggère de mettre un délai plus important afin de laisser tourner les ventilateurs pour qu'il refroidisse correctement ton électronique ainsi que ta tête d'impression

  • J'aime 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Ouais, ben on ne peut pas non plus tout mâcher à la place des gens, hein? C'est évident qu'il vaut mieux lancer un script une fois tout rentré dans l'ordre! Alors, faut que les gens fassent aussi marcher la cervelle dont ils sont censés être dotés...

Ça doit pas demander de faire trop d'années d'études pour imaginer qu'il vaut mieux envoyer cette commande une fois tout refroidi... Et si 120 secondes, ça ne suffit pas, il suffit de mettre 240! On ne peut pas toujours tout mettre en bouillie dans la bouche des gens, sinon, ça va devenir des bœufs. Ou des moutons. Ou des zombies...

En revanche, si Chris était un peu moins dans la lune, il pourrait répondre au lieu de se contenter de juste poster....

Mais bon, c'est juste une question de SAV, de tournure d'esprit qui lui viendra avec l'âge, hein? Après tout, il a peut-être des problèmes de couple, de gosses, ou de sortie trop tardive, va savoir!!! :)

Partager ce message


Lien à poster
Partager sur d’autres sites
il y a 23 minutes, rmlc460 a dit :

En revanche, si Chris était un peu moins dans la lune, il pourrait répondre au lieu de se contenter de juste poster....

 

il y a 23 minutes, rmlc460 a dit :

Ouais, ben on ne peut pas non plus tout mâcher à la place des gens, hein?

 

Je suis sûr que tu feras le lien tout seul. :ph34r:

  • Haha 1

Partager ce message


Lien à poster
Partager sur d’autres sites

J'adore ta réponse! Mais t'es sur, t'es sur... Pas sur que ce soit suffisant, pour la majorité des gens avec lesquels tu souhaites partager tes connaissances.

En revanche, si on commet une erreur, n'hésite pas à rectifier, c'est ton taf d'enseignant, de sachant (et c'est bien pour cela que tu partages, pas vrai?). C'est toi qui sait, nous on ne fait qu'essayer d'apprendre, du mieux qu'on peut.

Partager ce message


Lien à poster
Partager sur d’autres sites

Bah, en fait, j'suis pas enseignant. Je ne suis qu'un maker, parmi bien d'autres. Je partage ce que je trouve, parce que j'aime bien le partage, mais c'est aux gens à faire le tri en fonction de ce qui les intéresse et, surtout, à être dans une démarche de recherche. Si "je sais", pour reprendre ton propos, c'est parce que j'ai cherché. Quand je ne sais pas je demande, c'est sûr, mais j'attends pas qu'on pense à ma place non plus. Tout donner tout cuit c'est le meilleur moyen pour que les gens copient "bêtement" avec le risque qu'ils n'en comprennent que la moitié. Là on touche à l'alimentation de la machine, c'est pas rien. Si quelqu'un se lance là-dedans à l'arrache sans savoir ce qu'il fait, c'est risquer de voir une imprimante griller. Un peu dommage, non ?

Pour ce qui est de ta demande initiale, comme expliqué dans le premier message, il existe une foule de tutos à ce sujet sur le net. Notamment sur le dépôt officiel d'OctoPrint. Encore une fois, il vaut mieux être dans une démarche de recherche. ;)

Partager ce message


Lien à poster
Partager sur d’autres sites
Invité

pas bête l'idée de l’arrêt machine a la fin d'une impression

je verrais bien un relais en série sur la sortie du 12 v de l'alim

dans le circuit de l’auto-maintien du relais je ferais une coupure par une fonction d'un Gcode a la fin d'une impression j'utiliserai le driver du deuxième extrudeur avec une temporisation  pour piloter ma coupure de courant

cela est une idée comme une autre et je pense réalisable    

Partager ce message


Lien à poster
Partager sur d’autres sites

Le problème qui me saute toujours aux yeux, en premier, c'est que si on coupe la TBT (Très Basse Tension, l'alim 12 ou 5V), on est toujours après le transfo principal. Sauf que ce transfo, lui, il continue toujours à consommer. Le test le plus basique, quand on a éteint un truc, n'importe quoi, qui est branché sur une alim en 220, un smartphone, ou tout ce que l'on veut, c'est de mettre la main sur le petit bloc d'alim raccordé à la prise: vous serez surpris, alors que tout est soi-disant éteint (et vous en avez probablement plusieurs raccordés H24), de voir qu'ils restent tièdes. Preuve que ces alims consomment même à vide. Pour rien, à part les maintenir en température, et chauffer la maison. Pas très performant.

D'où mon idée de carrément couper le 220 de l'imprimante avec un relais auto-maintenu, pour l'isoler définitivement du secteur. C'est peut-être un leurre, parce qu'il faudra bien quand même que le Raspberry reste sous tension et en veille, mais au moins, lui, il n'a besoin que d'un tout petit transfo pour démarrer. Pas d'un gros bobinage.

Partager ce message


Lien à poster
Partager sur d’autres sites
Invité

oki pour couper le 220 v mais il te faudra un bouton poussoir pour réenclencher ton relais choses que j'avais oublier

mais je ne pense pas que c'est la bonne solution je préfère resté sur la sortie 12 v comme sa j'ai juste a appuyer sur mon bouton pour réenclencher le tout et moins dangereux

Modifié (le) par Invité

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant

  • Sur cette page :   0 membre est en ligne

    Aucun utilisateur enregistré regarde cette page.

×