guides:gcode

Liste des GCODE principaux et couramment utilisés

Permet de faire un mouvement sur un axe ou plusieurs.

G1 X50 permet de faire un mouvement de 50mm selon l'axe X.

G1 Z100 permet de faire un mouvement de 100mm selon l'axe Z.

G1 X50 Y50 permet de faire un mouvement de 50mm selon les axes X et Y. Cela se traduira par un mouvement en diagonale.

Il est possible d'ajouter aussi une notion de vitesse avec le paramètre Fxxx, xxx étant la valeur en mm/minutes de la vitesse :

G1 X50 F100 permet de faire un mouvement de 50mm selon l'axe X lent (100mm/min soit 1.66mm/s).

G1 X50 F12000 permet de faire un mouvement de 50mm selon l'axe X rapide (12000mm/min soit 200mm/s).

Permet de ne plus considérer des positions par rapport au home X, Y, Z ou E mais seulement de la valeur demandée.

Par exemple, si à la fin d'une impression on veut monter en Z de 10mm avant de dégager la tête vers le fond de la machine, on ne peut pas faire simplement un G1 Z10. En effet si on est actuellement à Z=100mm en fin d'impression et qu'on demande un Z10, alors la machine va redescendre de 90mm pour arriver à Z=10mm (par rapport au fin de course Z).

Dans ce cas, on va simplement écraser la pièce imprimée et risque d'abimer la machine. Il faudrait, si on connait la position Z faire un G1 Z110 mais on ne connait pas toujours la position en fin d'impression.

Pour monter de 10mm en Z sans s'occuper de savoir où on est, ensuite aller au fond de la machine et redescendre de 10mm (script type de fin d'impression par exemple) :

G91 ;permet de passer en coordonnées relatives
G1 Z10 ;on monte de 10mm par rapport à la position actuelle
G90 ;on repasse en coordonnées absolues
G1 Y300 F6000 ;on emmène la tête d'impression en fond de machine (dans la mesure où le fond machine est à 300mm)
G91 ;permet de passer en coordonnées relatives
G1 Z-10 ;on redescend de 10mm par rapport à la position actuelle
G90 ;on repasse en coordonnées absolues

Cette commande permet de forcer un axe à la position voulue.

G92 Z0 permet par exemple de forcer la position de l'axe Z à 0.

Cette commande permet d'initialiser en position 0 les axes X, Y et Z de l'imprimante.

G28 : fait une initialisation à 0 des 3 axes X, Y et Z.

G28 X0 Y0 : ne fait une initialisation à 0 que des axes X et Y.

G28 Z0 : ne fait une initialisation à 0 que de l'axe Z.

Lance une autocalibration du plateau d'impression dans le cas où l'imprimante dispose d'un capteur de calibration automatique (cas des imprimantes professionnelles notamment).

Il faut nécessairement que au moins les axes X et Y aient été initialisés à 0 avant de lancer cette commande (G28 X0 Y0 ou alors G28).

G29 : lance la calibration automatique du plateau (généralement en 9 points, dépendant de la configuration de l'imprimante). Une fois fait, un plan moyen du plateau est définit et tout mouvement en X et/ou Y verra sa compensation en Z se réaliser (le plateau d'impression montera ou descendra un peu en fonction du mouvement).

G29 V4 T : permet de faire une calibration automatique du plateau avec toutes les informations de mesures affichées dans les logs (points mesurés, moyennage du plan, etc).

Il est aussi possible d'avoir des options détaillées sur le G29, pour par exemple faire des mesures avec moins de points que ce qui est définit dans le firmware, ou alors restreindre les mesures dans une certaine zone :

G29 F35 L130 R230 B100 P2 les marqueurs F, L, E et B permettent de restreindre la zone avec respectivement F pour l'avant (Front), L pour la gauche (Left), R pour la droite (Right) et B pour l'arrière (Back). De plus, le P2 permet de faire une grille de mesure à 2×2 soit 4 points de mesures dans les coins, là où un P3 fera une grille de 3×3 soit 9 points dans la zone délimitée.

Permet de faire une autocalibration PID d'une tête d'impression (voir Améliorer la précision de la température d'impression avec le réglage PID pour la procédure détaillée).

M303 E0 S210 C8 permet de faire une autocalibration d'un extrudeur avec les paramètres suivants :

  • E0 : calibration réalisée sur l'extrudeur 0, c'est à dire la tête n°1 de l'imprimante
  • S210 : la température cible de la calibration est de 210°C
  • C8 : 8 itérations sont réalisées pour avoir un échantillonnage de mesure plus grand

Pour la calibration PID de votre plateau d'impression (si le firmware le prend en charge, il faut utiliser E-1 pour le sélectionner :

Exemple : M303 E-1 S100 C3 pour une consigne de plateau à 100°C

On notera le passage de C8 à C3, pour faire moins d'itérations et donc éviter un timeout, du à l'inertie du système.

Voir la vidéo Youtube ici

Cette commande permet de définir manuellement les paramètres de PID après un M303.

M301 H1 P31.58 I1.17 D67.98 définit sur l'extrudeur 0 (H1) les paramètres P de 31.58, I de 1.17 et D de 67.98.

H0 est pour le plateau.

Cette commande est utile si on a pas accès aux réglages EEPROM de l'imprimante (sous Simplify3D par exemple).

Il est important de sauvegarder ensuite ces réglages avec un M500.

Il est possible de configurer les paramètres du PID plateau avec un M301 (voir ci dessus). Mais une commande dédiée existe uniquement pour le réglage du plateau.

M304 P31.58 I1.17 D67.98

Il est important de sauvegarder ensuite ces réglages avec un M500.

Cette commande permet d'enregistrer dans l'EEPROM de la carte électronique les paramètres rentrés (par exemple après un réglage PID M301).

Cette commande permet de lire et d'afficher dans le terminal tous les paramètres EEPROM de l'imprimante. Pratique pour voir si une modification a bien été prise en compte par exemple.

Cette commande permet de définir manuellement les pas par mm des axes de l'imprimante. Pratique pour faire un reréglage rapide lors de tests.

M92 X67.5 Y67.5 Z4000 E139.75 définit respectivement des pas/mm de 67.5 pour X et Y, 4000 pour Z et 139.75 pour l'extrudeur.

Il est possible de ne faire le réglage que pour un axe :

M92 E139.75

Il est important de sauvegarder ensuite ces réglages avec un M500 si vous souhaitez que les nouvelles valeurs soient conservées après un redémarrage.

Cette commande permet de retourner l'état des capteurs de fin de course de l'imprimante. Très utile à la fin d'un montage pour vérifier si les capteurs sont convenablement branchés et sans faux contact. Très utile aussi en diagnostic si un axe ne veut pas s'initialiser en position 0.

M119 va par exemple retourner :

x_min : TRIGGERED

x_max : open

y_min : open

y_max : open

z_min : TRIGGERED

z_max : open

C'est à dire que le capteur de fin de course X est en contact (position 0 du chariot d'impression), que le capteur de fin de course Y n'est pas en contact (contact ouvert) et que le capteur de fin de course Z est en contact (touche le plateau).

Si un capteur est mal branché, détruit ou a un faux contact, l'état sera TRIGGERED et donc en faisant une initialisation 0 de l'axe en question (G28 X0 s'il s'agit de l'axe X), celui ci fera un petit mouvement (environ 10mm) en positif (donc en s'écartant de son capteur).

Un M119 permettra de mettre en avant ce défaut.

Dans le cas d'une imprimante permettant de faire une calibration automatique, il est possible de régler directement en GCODE la valeur d'offset en Z.

M851 Retourne la valeur actuelle de l'offset en Z (par exemple Z : -0.65).

M851 Z-0.9 Définit la valeur d'offset Z à -0.9mm et écrase l'ancienne valeur.

Il est important de sauvegarder ensuite ces réglages avec un M500.

Plus d'information sur le réglage de l'offset Z ici.

Grâce à la commande M42, il est possible d'activer manuellement une sortie de la carte, assez pratique pour certains tests.

M42 S255 P58 active à l'état haut (255) la sortie sur le pin 58.

M42 S0 P58 désactive à l'état bas (0) la sortie sur le pin 58.

Cette commande permet sur les dernières version de Marlin (à partir de mars 2017) de lire les informations machine telles que :

  • Durée du job le plus long
  • Temps total d'impression machine

Pratique pour des opérations de maintenance à planifier par exemple.

M163 S0 P0.6 permet de définir une répartition de 60% sur T0

M163 S1 P0.4 permet de définir une répartition de 40% sur T1

M164 S5 permet d'enregistrer ce réglage de répartition en tant qu'outil virtuel T5

Pour utiliser cet outil avec ces réglages, il faut choisir l'outil T5 dans le GCODE pour le sélectionner.

Il est possible ainsi de base de créer jusqu'à 16 outils virtuels de mélange (à partir de 1).

Permet d'avoir en retour la position actuelle des axes :

M114

X:148.8480 Y:209.6580 Z:0.6000 E:66.4170

Permet de remettre les chauffages en reset suite à une erreur de température (par exemple Heater Fault sur Duet) :

M562

  • guides/gcode.txt
  • Dernière modification: 2023/06/12 15:48
  • de adrien_doku