Aller au contenu

GO Print

Commande pause non interprétée en fin d'impression ?


zazeur

Messages recommandés

Bonjour à tous,

Je suis en train de faire quelques tests entre Cura (by Dagoma) et Simplify3D.
Notamment pour reporter des valeurs dans le second, mais en cherchant à les améliorer surtout.

Enfin bref, tout se passe bien sauf à un endroit : le gcode de fin d'impression.

Voici ce que j'ai dans Cura :

Révélation

M104 S0        ;extruder heater off
M106 S255        ;start fan full power
M140 S0        ;heated bed heater off (if you have it)
G91        ;relative positioning
G1 E-1 F300    ;retract the filament a bit before lifting the nozzle, to release some of the pressure
G1 Z+3 E-2 F{travel_speed}    ;move Z up a bit and retract filament even more
G28 X0 Y0    ;move X/Y to min endstops, so the head is out of the way;
G4 P360000
M908        ;stop fan
M84        ;shut down motors
;Genere par Cura-by-Dagoma pour Discovery200 avec Buse S1 ou E3Dv6
;{profile_string}

Et voici ce que j'ai reporté dans Simplify3D (seule différence apparente : F{travel_speed} remplacé par une valeur car inconnue sinon pour le logiciel) :

Révélation

M104 S0 ;extruder heater off
M106 S255 ;start fan full power
M140 S0 ;heated bed heater off (if you have it)
G91 ;relative positioning
G1 E-1 F300 ;retract the filament a bit before lifting the nozzle to release some of the pressure
G1 Z+3 E-2 F9000 ;move Z up a bit and retract filament even more
G28 X0 Y0 ;move X/Y to min endstops so the head is out of the way
G4 P360000
M908 ;stop fan
M84 ;shut down motors

Et à titre d'exemple, sur un petit cube, j'obtiens ça sur les dernières lignes des gcode générés.

Cura :

Révélation

...

G0 F9000 X44.691 Y56.283
G1 F1560 X46.261 Y54.713 E250.67441
G0 F9000 X45.256 Y56.283
G1 F1560 X46.261 Y55.279 E250.72166
G0 F9000 X45.822 Y56.283
G1 F1560 X46.261 Y55.845 E250.74228
M107
G1 F3000 E246.74228
G0 F9000 X46.261 Y55.845 Z14.998
M104 S0        ;extruder heater off
M106 S255        ;start fan full power
M140 S0        ;heated bed heater off (if you have it)
G91        ;relative positioning
G1 E-1 F300    ;retract the filament a bit before lifting the nozzle, to release some of the pressure
G1 Z+3 E-2 F9000    ;move Z up a bit and retract filament even more
G28 X0 Y0    ;move X/Y to min endstops, so the head is out of the way;
G4 P360000
M908        ;stop fan
M84        ;shut down motors
;Genere par Cura-by-Dagoma pour Discovery200 avec Buse S1 ou E3Dv6
;CURA_PROFILE_STRING: <looooooongue chaine>

Simplify3D :

Révélation

...

G1 X26.608 Y57.392 E4.0778
G1 X28.008 Y58.793 E4.1537
G1 X27.330 Y58.793 E4.1797
G1 X26.608 Y58.071 E4.2188
G1 X26.608 Y58.750 E4.2449
G1 X26.651 Y58.793 E4.2472
G92 E0
G1 E-3.0000 F3600
M104 S0 ;extruder heater off
M106 S255 ;start fan full power
M140 S0 ;heated bed heater off (if you have it)
G91 ;relative positioning
G1 E-1 F300 ;retract the filament a bit before lifting the nozzle to release some of the pressure
G1 Z+3 E-2 F9000 ;move Z up a bit and retract filament even more
G28 X0 Y0 ;move X/Y to min endstops so the head is out of the way
G4 P360000
M908 ;stop fan
M84 ;shut down motors

L'impression se passe correctement pour les deux, mais à la fin :

  •  Avec la version Cura : la buse se déplace hors du model et les ventilateurs tournent pour refroidissement. Pendant 360000ms si je comprends bien la commande G4.
  • Avec la version Simplify3D : la buse se déplace et tout s'arrête, pas de ventilation. Pourtant la commande G4, identique, est bien présente. (J'ai essayé avec G4 S360 aussi).

Je ne comprends pas comment cela peut survenir. Surtout que j'imprime via carte SD, donc .g directement et pas via ordinateur.
Donc ça devrait être indépendant du slicer mais plutôt du contenu du gcode (hors découpe : début / fin).

Si quelqu'un a une idée de où cela pourrait venir... Est-ce que cela peut être du au code du début ?
J'ajoute les deux gcode que j'obtiens en pièces jointes également.

Merci d'avance à tous ceux qui pourront m'aider :)

__
zazeur

curabydagoma.g

simplify3D.g

tinycube.stl

Lien vers le commentaire
Partager sur d’autres sites

Je confirme que j'ai le même problème. Pour l'instant pour refroidir en fin d'impression je retire la carte SD et remets en route l'imprimante 2 ou 3 minutes pour refroidir la tête  :(.... mais bon c'est pas une solution et comme toi je ne comprenda pas pourquoi le G4 n'est pas pris en compte???. 

Lien vers le commentaire
Partager sur d’autres sites

Je fais la même chose en attendant, mais en effet pas une vraie solution.

Le début du gcode n'est pas exactement identique, je testerai cela demain.
Bien qu'à première vue je n'ai rien vu qui pourrait gêner cela...

Si d'autres personnes ont une idée nous sommes preneurs :P

Notons bien que le problème survient ici avec Simplify3D mais ça aurait pu être avec un autre Slicer.
Le fichier qui en résulte est écrit dans le même langage (gcode).

Modifié (le) par zazeur
Lien vers le commentaire
Partager sur d’autres sites

Il y a 9 heures, zazeur a dit :

Notons bien que le problème survient ici avec Simplify3D mais ça aurait pu être avec un autre Slicer.
Le fichier qui en résulte est écrit dans le même langage (gcode).

@zazeur, à mon avis, c'est un peu le contraire : si c'est le même code, qu'il est conforme au standard et qu'il est correctement interprété par Cura mais pas par Simplify3D... alors le problème vient de Simplify3D... mais on ne peut pas généraliser à tous les slicers sans avoir fait d'autres tests !

Bon, ceci étant, une petite recherche fait apparaître que, sur simplify3D, ils utilisent le M190 au lieu du M140 pour couper la température du bed. Même si tu n'en as pas, ça vaut le coup d'essayer... ces petites choses que sont nos imprimantes semblent être assez sensibles à ces détails 9_9

Autant pour moi, le M190 permet seulement de faire baisser la T° pas de la couper...

 

Modifié (le) par iPeP
Lien vers le commentaire
Partager sur d’autres sites

@iPeP c'est la machine qui interprète le code, le slicer n'en est que générateur.
La commande G4 dans dagoma0.g est censée avoir le même comportement qu'elle soit issue de Simplify3D que de Cura.

Mais je suis tout de même d'accord sur le fait que mon problème ne survient pas avec Cura.
Il y a donc via Simplify3D un bout de gcode généré, supplémentaire ou différent, qui pose problème.

J'essaierai de faire des tests dans la journée.
L'idée étant de trouver / comprendre / résoudre, quel autre bout de code peut empêcher la ligne G4 de fonctionner dans un cas et pas dans l'autre.

Modifié (le) par zazeur
Lien vers le commentaire
Partager sur d’autres sites

  • 4 weeks later...

Bonsoir @Huggy,

Je n'avais pas vu passer ta réponse le mois passé, désolé.
J'ai essayé diverses températures (pour divers filaments), ce n'est pas lié au 200°C a priori.

Depuis je refroidis "manuellement" la buse (en retirant la carte SD).
J'essaye de me pencher sur ce soucis durant le weekend...

Merci :)

__
zazeur

Lien vers le commentaire
Partager sur d’autres sites

Essaye de rajouter M107 avant M104 S0.

Bien que M107 soit la commande pour éteindre les ventilos, c'est la seule différence entre le gcode S3D et Cura (en plus du ";" à la fin du commentaire précédent M106 S255 qui ne devrait rien influencer). Peut-être un conflit entre la vitesse du ventilo et l'arrêt de chauffe de la buse résolu en coupant le ventilo, puis en le relançant après M104 S0?

Lien vers le commentaire
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.
  • There was an error loading the RSS feed. Please check your settings and try again.
×
×
  • Créer...