MCodes
Le tableau ci‑dessous montre les MCodes pris en charge
arrêt optionnel. Si M333 est activé, le programme s'interrompra en atteignant cette commande. Si M334 est défini à la place, aucune pause n'aura lieu
M2
fin du programme, arrêter la broche et l'air
M3
Démarre la broche. Le paramètre S définit la vitesse en tours par minute
M3 S5000
met la broche à 5000 tr/min
M5
Arrête la broche
M5
M6
Changement d'outil automatique, T0 indique une sonde sans fil, T-1 indique Aucun
M6 T1
change pour l'outil 1 et définit le TLO
M7
Démarre le flux d'air
M7
M9
Arrête le flux d'air
M9
M17
activer toutes les broches d'activation
Debug uniquement
M18
cela permet d'éteindre des moteurs individuellement, sans paramètres revient à tout éteindre
Debug uniquement
M20
liste les fichiers à la racine de la carte SD. n'affichera pas les sous-dossiers
Debug uniquement
M21
code pour OctoPrint pour imprimantes 3D, ne fait rien
Ne pas utiliser
M23
sélectionner un fichier
M23 gcodes/test.cnc
M24
commencer la lecture du fichier courant
ne pas utiliser
M25
mettre en pause le fichier en cours de lecture (utiliser M600 pour les pauses)
ne pas utiliser
M26
réinitialiser le fichier courant prêt à recommencer
ne pas utiliser
M27
rapporter la progression courante (utile pour synchroniser l'affichage du contrôleur avec la ligne actuelle)
M30
Fin du programme, aucune action sur la Carvera. Voir M26
M30
M32
sélectionner un fichier et commencer la lecture. Pour les macros voir M98
M32 gcodes/test.cnc
M82
mode_e_absolu activé
Debug uniquement
M83
mode_e_absolu désactivé
Debug uniquement
M84
éteindre toutes les broches d'activation
Debug uniquement
M92
définir les pas par mm
M98 X12
définit les pas X par mm à 12
ouvrir un sous-programme à l'intérieur du gcode en cours d'exécution, souvent appelé macro. revenir au programme principal une fois terminé. Le paramètre P est un numéro qui référence un fichier dans le dossier gcodes/macros nommé ####.cnc. Le paramètre optionnel L boucle le sous-programme un nombre défini de fois
M98 P1001 L4
ouvrir un sous-programme par chemin, revenir au programme principal une fois terminé. sinon identique à ci-dessus. la commande optionnelle L doit précéder le chemin
M98 L2 {gcodes/test.cnc}
M105
Lire la température actuelle de la broche
M105
M112
arrêt d'urgence
Debug uniquement
M114
imprimer le WCS actuel pour chaque axe sur la console
M115
rapporter la version du firmware et les capacités
M115
FIRMWARE_NAME:Smoothieware, FIRMWARE_URL:http%3A//smoothieware.org, X-SOURCE_CODE_URL:https://github.com/Smoothieware/Smoothieware, FIRMWARE_VERSION:master-811c4f62, X-FIRMWARE_BUILD_DATE:30 oct. 2024 15:14:06, X-SYSTEM_CLOCK:100MHz, X-AXES:5, X-GRBL_MODE:1, X-CNC:1, X-MSD:1, X-WARNING:deprecated_MCU
M117
un G-code non conforme spécial car il permet du texte arbitraire sur la ligne suivant la commande. S'affiche sur le panneau d'affichage disponible
Utilisez 118 à la place
M119
rapporter les informations actuelles de la sonde
X_max:0 Y_max:0 Z_max:0 broches- (XL)P0.24:0 (XL)P0.25:0 (YL)P1.1:0 (YL)P1.4:0 (ZL)P1.8:0 Sonde: 0
M120
pousser l'état
Debug uniquement
M121
récupérer l'état
Debug uniquement
M143
code spécifique aux imprimantes 3D
Ne pas utiliser
M203
définir la vitesse d'avance maximale en mm/s
M203 X100
M203.1
définir les vitesses maximales des actionneurs
M204
M204 Snnn - définir l'accélération par défaut à nnn, Xnnn Ynnn Znnn définit l'accélération spécifique aux axes
M205
M205 Xnnn - définir la déviation de jonction, Z - définir la déviation de jonction Z, Snnn - définir la vitesse minimale du planificateur
M206
définir le décalage d'homing
M206 X15 Y15 Z15
définit le décalage d'homing à 15,15,15
M220
S<facteur en pourcentage> - définir le pourcentage de dépassement de la vitesse d'avance
M220 S50
M221
Activer/Désactiver les fins de course logiciels
M221 S0
désactive les fins de course logiciels. M221 S1 les active
M223
S<facteur en pourcentage> - définir le pourcentage de dépassement de la vitesse de la broche
M223 S80
M301
spécifique imprimante 3D
Ne pas utiliser
M303-305
Utilisé par l'autotune PID pour le contrôle de la température d'un hotend d'imprimante 3D. Pas de fonction sur la Carvera
Ne pas utiliser
M306
définir le décalage d'homing basé sur la position actuelle
M321
Entrer en mode laser, la machine déposera automatiquement l'outil courant et calibrera le mandrin de la broche (pour régler le décalage du laser par rapport à la surface de travail)
M321
M322
Quitter le mode laser
M322
M323
Entrer en mode test laser, le module laser recevra une puissance très faible, généralement utilisé pour refaire la mise au point du laser
M323
M324
Quitter le mode test laser
M324
M325
S<facteur en pourcentage> - définir le pourcentage de dépassement de puissance du laser
M325 S50
M331
Activer le mode aspiration automatique ; si activé, l'aspiration s'allumera automatiquement lorsque la broche fonctionne et s'éteindra lorsqu'elle ne tourne pas
M331
M332
Désactiver le mode aspiration automatique
M332
Activer le mode Exécution ligne par ligne. Met en pause après chaque ligne. Ne met pas en pause les lignes vides, ou les lignes commençant par ; ou (
M370
Efface les données d'auto-nivellement du plateau et désactive la compensation jusqu'à ce que G32 soit exécuté de nouveau
M370
M374
enregistrer la grille d'auto-nivellement sur la carte SD.
M374.1
supprimer la grille d'auto-nivellement de la SD
M375
charger la grille depuis la carte SD
M375.1
Afficher les données actuelles de la grille de nivellement dans la fenêtre MDI
M375.1
M400
attendre que tous les mouvements soient terminés jusqu'à ce point
calibrer la pointe de la sonde en utilisant un alésage rond de taille connue
M460 X25 L3
commencer centré à l'intérieur de l'alésage. Calibrera sur un alésage de 25 mm, en moyennant la valeur sur 3 tests. Cela enregistrera la valeur dans la variable #150. Utiliser config-set sd zprobe.probe_tip_diameter # pour stocker cette valeur pour les réinitialisations. Tous les paramètres de M461 sauf T,S sont implémentés
calibrer la pointe de la sonde en utilisant un bossage de taille connue
M460.2 X15 L3
commencer centré au-dessus du bossage. Nécessite X ou Y mais pas les deux. La valeur pour X ou Y est la dimension mesurée du bossage. L est le nombre de sondages dont on fait la moyenne. Tous les paramètres de M462 sauf T,S sont implémentés
calibrer la pointe de la sonde en utilisant l'ancre 2
M460.3
se déplacera à la position correcte par dégagement Z, déplacera xy, sondage vers le bas en z. La position est basée sur la position configurée pour l'ancre 2 et la largeur d'ancre enregistrée. Mesurer et définir la largeur d'ancre d'abord.
sonder un alésage
M461 X25 Y30 D2.5 H10 C2 Q15 L2 R1.8 S1 F100 K200
Commencer approximativement au centre de l'alésage, la macro commence par un sondage en Z, descendant de (H)10 mm. Si l'outil touche la surface il se rétractera de (C)2. Sinon, il continuera depuis la nouvelle position basse. Si H n'est pas donné ou est 0, la macro sondra depuis la hauteur de départ. Ensuite sonder (X)25 mm en direction X tourné de (Q)15 degrés jusqu'à ce que l'outil touche une surface. Se rétracter de la surface de (R)1.8 mm vers le centre, puis reprober à une vitesse beaucoup plus lente. Revenir au centre et répéter dans la direction -x. Répéter les étapes X pour la direction Y, sondant (Y) 30. Répéter les sondages X et Y (L)2 fois. Tous les mouvements de sonde normaux se font à (F)100 mm/s, les déplacements entre les départs de sondage se font à la vitesse rapide (K)200. À la fin le programme aura sauvegardé la distance le long de l'axe X comme #151, la distance le long de l'axe Y comme #152, le point central en MCS comme #154,#155. Puisque S est réglé sur 1, le programme définira le WCS courant (généralement G54 sauf override) comme le centre de l'alésage. Si S n'est pas défini la macro de sondage n'affectera pas le WCS. (D) est utilisé pour calculer la distance entre les points et représente le diamètre de la pointe d'outil. Tous les paramètres sont optionnels mais vous devez avoir 1 de X ou Y, si vous fournissez seulement l'un d'eux il ne sondra que dans cette direction.
sonder un bossage
M461 X25 Y25 E12
Tous les paramètres de M461 fonctionnent. En partant du centre approximatif du bloc/bossage rectangulaire la sonde se déplacera (X) 25 mm en direction positive X, puis sondra vers le bas de -(C+E) pour atteindre le côté du bloc. Elle effectuera ensuite un double tap pour sonder vers le centre du bloc et trouver le point 1. Elle retournera à la position de dégagement, puis à la position centrale, puis répétera la sonde x pour la direction négative et les deux directions y. Les variables de sortie sont les mêmes que M461. Si S1 est défini le centre du bossage sera la nouvelle origine xy. Si S2 est défini et qu'une hauteur de sondage (H) a été donnée, l'origine z est définie à la surface sondée
sonder un coin intérieur
M462 X-15 Y-15
Implémente D, H, C, Q, F, K, L, R, S de M461. Sonde un coin intérieur inférieur gauche (la direction de X et Y détermine la direction du mouvement de la sonde, dans ce cas vers la gauche et vers l'avant de la machine). Sauvegarde la position centrale dans #151 et #152
sonder un coin extérieur
M463 X15Y15
Implémente D, H, C, Q, F, K, L, R, S de M461. Implémente E de M462 et suit un processus similaire pour 2 points au lieu de 4. Sonde un coin extérieur inférieur gauche (la direction de X et Y détermine la direction du mouvement de la sonde, dans ce cas vers la gauche et vers l'avant de la machine). Sauvegarde la position centrale dans #151 et #152. S fonctionne de la même manière que dans M462
sonder l'axe et l'angle
M464 X10 E10 V10
Implémente H,C,X,Y,Q,F,K,L,R de M461. Ne prendra qu'une valeur d'axe (X ou Y). Depuis la position de départ : double tap de sondage avec distance (E)10 perpendiculaire à l'axe donné jusqu'à ce qu'une surface soit touchée. Le signe de E détermine la direction du sondage. Retour à la position de départ. Se déplacer le long de l'axe donné de (X)10 et répéter le sondage. Retour à la position de départ. Comme V est défini la sonde se déplacera selon le même angle que la surface sondée de (V)10. Stocke l'angle en degrés dans #153
sondage droit avec double tap
M466 X{dist} Y{dist} Z{dist} D{diamètre de la pointe} Q{angle} L{répétitions} R{rétractation} S{enregistrer comme xy, si un seul axe est donné sans q, alors n'enregistrera que cet axe comme zéro} F{vitesse d'avance} I{inverser pour CN}
M469 / M469.0
À venir : mettre la machine à l'origine avec une vraie sonde 3 axes sur une broche définie par l'utilisateur
non implémenté
M469.0 I{inverser}
M469.3
À venir : calibrer la position d'outil ATC avec une vraie sonde 3 axes
non implémenté
calibrer la poupée de l'axe 4 avec une vraie sonde 3 axes
M469.4
M469.4 I{inverser} Y{largeur de la poupée} H{jusqu'où sonder vers le bas}
calibrer le décalage de hauteur de l'axe 4 avec la sonde
M469.5
M469.5 R{diamètre de la broche} X{Distance depuis la 1ère position de sonde} H{Distance maximale vers le bas à sonder}
M469.6
rapporter et définir les décalages machine (code réservé à la machine)
Debug uniquement
X - pos X d'origine Y - pos Y d'origine, Z - pos Z d'origine, P - type défini de sonde. 1 pour ancre 1, 2 pour ancre 2, 3 pour position outil ATC, etc
M470
définir l'adresse de la sonde sans fil
M470 S2020
M471
mettre la sonde sans fil en mode appairage
M471
M472
activer le laser de la sonde sans fil
M472
M481-489
G-codes spécifiques au Wi-Fi qui sont mieux effectués via les commandes de la console
Ne pas utiliser
M490
Exécuter le processus d'homing ATC, l'homing sera exécuté automatiquement lors de l'émission de M490.1 ou M490.2 si nécessaire
M490
M490.1
Sertit le mandrin de la broche pour sécuriser un nouvel outil dans la broche
M490.1
M490.2
Desserre le mandrin de la broche et laisse tomber la fraise actuelle
M490.2
M491
Exécuter une calibration, et le TLO (offset de longueur d'outil) pour l'outil courant sera réinitialisé
M491
effectue une vérification de cassure d'outil en calibrant l'outil courant et en comparant sa longueur à un offset de longueur d'outil (TLO) précédemment stocké.
M491.1 H0.05
Si une différence supérieure à 0,05 alors arrêter la machine
M492
commande interne pour déterminer si le porte-outils est vide.
Debug uniquement
enregistrer l'offset d'outil lorsqu'il a déclenché la sonde TLO. Utiliser M493.3 pour définir le TLO à une valeur particulière
Debug uniquement
enregistrer l'offset de longueur d'outil à la valeur. utiliser Z pour une valeur complètement nouvelle.
M493.3 Z-15
définit le TLO à -15
Définit le TLO depuis la position WCS actuelle avec un décalage H.
M493.3 H10
commencer avec l'outil 10 mm au-dessus du Z WCS, en utilisant l'astuce du gabarit ou du papier. Cela calculera le TLO approprié pour correspondre au WCS actuel
M493.5
À venir : pause ATC
M494 / M494.1
allumer le laser de la sonde
M494.1
M494.2
éteindre le laser de la sonde
M494.2
M495
Effectuer des Marges, sondage Z, Auto-nivellement selon les paramètres, changer l'outil de sonde si nécessaire. X et Y sont le départ de la marge. C et D sont les étendues de marge. O et F sont les décalages de sondage Z. A, B sont les étendues de l'auto-nivellement, I et J sont le nombre de points à sonder sur chaque axe, H est la hauteur de sondage de l'auto-nivellement. P1 ira à l'origine
M495.3
effectue un sondage Z 3 axes le long de -z, -x et -y. Voir G38 pour d'autres fonctions de sondage. D définit le diamètre de la pointe de sonde, H est l'épaisseur de la pièce métallique de sonde 3 axes
M495.3 D3.175 H9
M496.2
aller à l'origine de travail. Les paramètres X et Y définissent la position par rapport à l'ancre 1
M496.2 X30Y0
M496.3
aller à l'ancre 1
M496.4
aller à la position de l'ancre 2
M496.5
aller à la position. Les paramètres X et Y définissent la position par rapport à l'ancre 1
M496.5 X30Y0
M497
attendre que la file soit vide. Généralement une commande interne
Debug uniquement
M498 / M498.1
rapporter les données de l'EEPROM. Imprimera le numéro d'outil courant, le TLO, toolmz, refmz et les offsets WCS sur la console
M498.2
effacer les données EEPROM. Ne pas exécuter
Ne pas utiliser
M499/M499.1
imprime les informations d'outil courantes sur la console
M499.2
imprime toutes les données de position d'outil ATC sur la console
M500
enregistrer les modifications du fichier de config sur la carte SD
M501
// charger la surcharge de configuration
Debug uniquement
non implémenté
M502
M502 supprime config-override donc tout revient aux valeurs du fichier config
Debug uniquement
M503
afficher les valeurs du fichier de configuration sur la console
M504
enregistrer dans un fichier de surcharge de configuration spécifique
M504 "/sd/config-override"
M561
Efface les données d'auto-nivellement du plateau et désactive la compensation jusqu'à ce que G32 soit exécuté de nouveau. Même chose que M370
M565
définit les offsets du zprobe. À investiguer ultérieurement
M600
mettre en pause le fichier courant (utilisez ceci pour ajouter des pauses)\
M601
reprendre le fichier courant - généralement exécuté depuis la console MDI
M665
M665 définit les variables de solution de bras optionnelles basées sur la solution de bras.
fonction incertaine
M670
définir les informations par défaut de la sonde jusqu'à la prochaine réinitialisation. S - vitesse lente, K - vitesse rapide, R - vitesse de retour, Z - profondeur z max à sonder, H - distance à sonder, I - état d'inversion de la sonde, D - temporisation avant sondage
M801
Activer l'aspiration interne (Carvera). Le paramètre S définit la puissance de l'aspiration (S100 = 100%) Active le ventilateur PSU sur Carvera Air
M801 S100
M802
Éteindre l'aspiration sur Carvera, et éteint le ventilateur PSU sur Carvera Air
M802
M811
Allumer le ventilateur de refroidissement de la broche. Le paramètre S définit la puissance du ventilateur
M811 S100
M812
Éteindre le ventilateur de refroidissement de la broche
M812
M821
Allumer la lumière
M821
M822
Éteindre la lumière
M822
M831
Allumer le laser du capteur de détection d'outil
M831
M832
Éteindre le laser du capteur de détection d'outil
M832
M841
Allumer l'alimentation de charge de la sonde sans fil
M841
M842
Éteindre l'alimentation de charge de la sonde sans fil
M842
M851
Allumer l'alimentation du port étendu. Le paramètre S définit la sortie PWM du port
M851
M852
Éteindre l'alimentation du port étendu
M852
M881
Définir le canal 2.4G sur : le paramètre S et commencer la transmission
M881 SwifiNetworkName
M882
éteindre le réseau wifi
M882
M885
désactiver les fins de course matérielles (redevient activé au cycle d'alimentation, ignoré lors de l'homing)
M886
activer les fins de course matérielles
M887
désactiver la vérification d'origine
M888
activer la vérification d'origine
]
rapporter la vitesse de la broche
M957
vitesse et statut actuels de la broche
État : on, RPM courant : 15086 RPM cible : 15000 Valeur PWM : 0.699
M958
définir les paramètres PID de la broche, paramètres P, I, D
M1000
M1000 est une commande spéciale qui transmettra la commande brute en minuscules au shell simple (pour les hôtes qui n'autorisent pas de telles choses)
Mis à jour