guides:gcode

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
guides:gcode [2016/07/10 18:17]
adrien
guides:gcode [2023/06/12 15:48] (Version actuelle)
adrien_doku
Ligne 1: Ligne 1:
 ====== Liste des GCODE principaux et couramment utilisés ====== ====== Liste des GCODE principaux et couramment utilisés ======
-==== G1 : mouvement manuel ====+{{ :guides:gcode.png |}} 
 +===== G1 : mouvement manuel =====
 Permet de faire un mouvement sur un axe ou plusieurs. Permet de faire un mouvement sur un axe ou plusieurs.
  
Ligne 15: Ligne 16:
 ''G1 X50 F12000'' permet de faire un mouvement de 50mm selon l'axe X rapide (12000mm/min soit 200mm/s). ''G1 X50 F12000'' permet de faire un mouvement de 50mm selon l'axe X rapide (12000mm/min soit 200mm/s).
  
-==== G28 : initialisation des axes ====+===== G90 et G91 : passer en coordonnées absolues et relatives ===== 
 +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) : 
 + 
 +<code> 
 +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 
 +</code> 
 + 
 +===== G92 : Initialiser un axe ===== 
 + 
 +Cette commande permet de forcer un axe à la position voulue. 
 + 
 +''G92 Z0'' permet par exemple de forcer la position de l'axe Z à 0. 
 +===== G28 : initialisation des axes =====
 Cette commande permet d'initialiser en position 0 les axes X, Y et Z de l'imprimante. Cette commande permet d'initialiser en position 0 les axes X, Y et Z de l'imprimante.
  
Ligne 24: Ligne 49:
 ''G28 Z0'' : ne fait une initialisation à 0 que de l'axe Z. ''G28 Z0'' : ne fait une initialisation à 0 que de l'axe Z.
  
-==== G29  : autocalibration du plateau ====+===== G29  : autocalibration du plateau =====
 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). 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).
  
Ligne 33: Ligne 58:
 ''G29 V4 T'' : permet de faire une calibration automatique du plateau avec toutes les informations de mesures affichées dans les [[depannage:log_repetier|logs]] (points mesurés, moyennage du plan, etc). ''G29 V4 T'' : permet de faire une calibration automatique du plateau avec toutes les informations de mesures affichées dans les [[depannage:log_repetier|logs]] (points mesurés, moyennage du plan, etc).
  
-==== M303 : autocalibration PID ====+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 à 2x2 soit 4 points de mesures dans les coins, là où un P3 fera une grille de 3x3 soit 9 points dans la zone délimitée. 
 + 
 +===== M303 : autocalibration PID =====
  
 Permet de faire une autocalibration PID d'une tête d'impression (voir [[guides:reglage_pid|Améliorer la précision de la température d'impression avec le réglage PID]] pour la procédure détaillée). Permet de faire une autocalibration PID d'une tête d'impression (voir [[guides:reglage_pid|Améliorer la précision de la température d'impression avec le réglage PID]] pour la procédure détaillée).
 +==== Sur une tête d'impression ====
  
 ''M303 E0 S210 C8'' permet de faire une autocalibration d'un extrudeur avec les paramètres suivants : ''M303 E0 S210 C8'' permet de faire une autocalibration d'un extrudeur avec les paramètres suivants :
Ligne 43: Ligne 73:
   * C8 : 8 itérations sont réalisées pour avoir un échantillonnage de mesure plus grand   * C8 : 8 itérations sont réalisées pour avoir un échantillonnage de mesure plus grand
  
-==== M301 : définir les paramètres PID ====+==== Sur un plateau épais (200mm Fiplan, machines industrielles) ==== 
 + 
 +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. 
 +===== M301 : définir les paramètres PID ====
 + 
 +<color #FF0000>**Voir la vidéo Youtube [[https://youtu.be/AYmKFugYggA|ici]]**</color>
  
 Cette commande permet de définir manuellement les paramètres de PID après un M303. Cette commande permet de définir manuellement les paramètres de PID après un M303.
  
-''M301 H0 P31.58 I1.17 D67.98'' définit sur l'extrudeur 0 (H0) les paramètres P de 31.58, I de 1.17 et D de 67.98.+''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). Cette commande est utile si on a pas accès aux réglages EEPROM de l'imprimante (sous Simplify3D par exemple).
Ligne 53: Ligne 94:
 __Il est important de sauvegarder ensuite ces réglages avec un M500.__ __Il est important de sauvegarder ensuite ces réglages avec un M500.__
  
-==== M500 : sauvegarder EEPROM ====+===== M304 : définir les paramètres PID pour le plateau ===== 
 + 
 +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.__ 
 +===== M500 : sauvegarder EEPROM =====
  
 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 d'enregistrer dans l'EEPROM de la carte électronique les paramètres rentrés (par exemple après un réglage PID M301).
  
-==== M92 : définir les pas/mm des axes ====+ 
 +===== M501 : Lire EEPROM ===== 
 + 
 +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. 
 + 
 +===== M92 : définir les pas/mm des axes =====
 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. 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.
  
Ligne 66: Ligne 119:
 ''M92 E139.75'' ''M92 E139.75''
  
-__Il est important de sauvegarder ensuite ces réglages avec un M500.__+__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.__
  
-==== M119 : afficher l'état des capteurs de fin de course ====+===== M119 : afficher l'état des capteurs de fin de course =====
  
 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. 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.
Ligne 88: Ligne 141:
 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). 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).
  
-=== Cas d'un faux contact sur un capteur === +==== Cas d'un faux contact sur un capteur ==== 
-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).+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. Un ''M119'' permettra de mettre en avant ce défaut.
 +
 +===== M851 : Afficher et régler l'offset Z =====
 +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 [[produit:tobeca333:calibration_plateau|ici]].
 +
 +===== M42 : activer manuellement une sortie =====
 +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.
 +
 +===== M78 : lire les informations de stats machine =====
 +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 et M164 : configurer la répartition de mélange (mixing extruder) =====
 +
 +''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).
 +
 +===== M114 : Avoir la position actuelle de la tête d'impression =====
 +Permet d'avoir en retour la position actuelle des axes :
 +
 +''M114''
 +
 +''X:148.8480 Y:209.6580 Z:0.6000 E:66.4170''
 +
 +===== M562 : Remise à 0 des erreurs de chauffe =====
 +Permet de remettre les chauffages en reset suite à une erreur de température (par exemple Heater Fault sur Duet) :
 +
 +''M562''
  
  • guides/gcode.1468167437.txt.gz
  • Dernière modification: 2016/07/10 18:17
  • de adrien