ACFFRIE Posté(e) Décembre 1, 2021 Posté(e) Décembre 1, 2021 Bonjour, Quand je fais certaines impressions sur mon imprimante en dual il arrive que l'impression se termine avec la couleur 2, du coup le filament du second extruder est en place et celui du premier extruder est en retrait, si je lance une nouvelle impression dans cet état avec le G-code de début d'impression il va reculer encore le premier extruder (onc double retrait...), puis extruder le second de 100 (alors qu'il est déjà en place), faire une ligne à droite en couleur 2, rétracter l'extruder 2, insérer l'extruder 1 (mais pas suffisamment du coup), faire une ligne de couleur à gauche (mais du coup rien ne sort cause du double retrait de départ), puis extruder encore en couleur 1 (et là il sort tout juste un peu de filament à la fin). J'ai vu que les conditions (IF) sont utilisables en G-CODE, du coup je voudrais mettre une conditions en G-CODE de fin qui dise "si l'extruder 2 est en place rétracter le filament 2 puis insérer le filament 1", ce qui permettrait de se retrouver toujours avec le filament 1 en place à la fin d'une impression. J'avoue avoir cherché sur des sites mais ne pas avoir bien compris le fonctionnement des IF en G-CODE, y a t'il un moyen de faire ça et comment?
fran6p Posté(e) Décembre 1, 2021 Posté(e) Décembre 1, 2021 il y a 54 minutes, Azzedesign a dit : J'ai vu que les conditions (IF) sont utilisables en G-CODE Où ça ? Pas dans le firmware Marlin en tout cas. C'est plutôt le trancheur qui va gérer ça et tous les trancheurs n'en sont pas capables. Donc sans précision du trancheur utilisé, l'aide va être difficile
ACFFRIE Posté(e) Décembre 1, 2021 Auteur Posté(e) Décembre 1, 2021 (modifié) J’ai vu dans un autre sujet que les if fonctionnent dans marlin (par contre pas les while) Modifié (le) Décembre 1, 2021 par Azzedesign
PPAC Posté(e) Décembre 1, 2021 Posté(e) Décembre 1, 2021 (modifié) Il y a 2 heures, Azzedesign a dit : J’ai vu dans un autre sujet que les if fonctionnent dans marlin (par contre pas les while) A ma connaissance, comme le dit fran6p, le langage G-code ( que comprend un firmware marlin ) ne peut pas avoir de conditionnel ni de while (il existe éventuellement une boucle très basic : M808: Repeat Marker mais je te laisse vérifier https://marlinfw.org/meta/gcode/ ) Mais par contre sous certain trancheurs (PrusaSlicer, IdeaMaker, ...) , les g-code de démarrage et de fin peuvent éventuellement contenir des "macro" https://help.prusa3d.com/fr/article/macros_1775 et donc lors du tranchage permettre des conditionnel. mais au final les fichier g-code généré n’aurons pas de conditionnels. ( Ultimaker cura, ne semble pas avoir de "macro" pour des conditionnels dans les g-code de démarrage et de fin. Lui ne fait que des remplacement de mot clé http://files.fieldofview.com/cura/Replacement_Patterns.html . (éventuellement des notions de conditions (très sommaires donc pas exactement) avec un script de post-traitement) ) Il y a 3 heures, fran6p a dit : Donc sans précision du trancheur utilisé, l'aide va être difficile Et comme la dit fran6p, si tu veux plus d'aide ... merci de préciser sous quel trancheur tu souhaite faire cela ! Modifié (le) Décembre 1, 2021 par PPAC
ACFFRIE Posté(e) Décembre 1, 2021 Auteur Posté(e) Décembre 1, 2021 (modifié) Je poste la suite avant car impossible d’éditer correctement le message, j’essaye depuis un moment... Et à propos des conditions j’ai trouvé Ceci mais c’est pas clair pour moi concernant les arguments des conditions. et pour le slicer ce sera cura mais comme vu dans le sujet cité dans le post précédent c’est marlin qui interprète les instructions et pas cura qui se contente de faire un fichier de g-code. Et maintenant le début du message : Pourtant c’est dit ici : Modifié (le) Décembre 1, 2021 par Azzedesign
PPAC Posté(e) Décembre 1, 2021 Posté(e) Décembre 1, 2021 (modifié) Il faut bien faire la distinction entre les "g-code de démarrage" dans un trancheur ( ex dans le profile d'une imprimante sous Simplify 3D) et les commandes g-code que comprend une imprimante. Le "g-code de démarrage" ( la notion de "macro" ...) va être transformé/interprété par le trancheur en g-code "de base" pour l'imprimante. Donc tu cherche pour faire cela sous "Simplify 3D" (que je ne connais pas) ou tu garde le mystère sur le trancheur que tu veux utiliser ... ? Modifié (le) Décembre 1, 2021 par PPAC
Idealnight Posté(e) Décembre 1, 2021 Posté(e) Décembre 1, 2021 @PPAC il y a une heure, Azzedesign a dit : et pour le slicer ce sera cura mais comme vu dans le sujet cité dans le post précédent c’est marlin qui interprète les instructions et pas cura qui se contente de faire un fichier de g-code. 1
PPAC Posté(e) Décembre 1, 2021 Posté(e) Décembre 1, 2021 (modifié) il y a 12 minutes, Idealnight a dit : @PPAC quoi quoi quoi ! Ha ... "Modifié (le) il y a 42 minutes par Azzedesign" il n'y avais pas cela de visible quand j'ai répondu ou vraiment je suis fatigué et alors mes excuses ! ... là forcement je suis complémentent incohérent Donc sous Ultimaker Cura ... non pas de condition a cette date (version 4.12.1 ni dans la Arachne Engine Beta 2 Pre-release) et a ma connaissance. https://community.ultimaker.com/topic/31817-is-it-possible-to-do-ifthenelse-statements-in-the-startend-gcode/ https://github.com/Ultimaker/Cura/issues/7056 Modifié (le) Décembre 1, 2021 par PPAC
Invité Posté(e) Décembre 2, 2021 Posté(e) Décembre 2, 2021 une solution possible a mon avis écrire le gcode de fin dans cura qui, quelque soit l'extrudeur de fin, remet le premier en ordre de marche si il est en place, il fait un tour pour rien, si ce n'est pas lui, il est remis a sa place
Messages recommandés
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 compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant