MCodes
La tabla siguiente muestra los MCodes compatibles
parada opcional. Si M333 está habilitado, el programa se pausará al alcanzar este comando. Si en su lugar se establece M334, no habrá pausa
M2
fin del programa, detener husillo y aire
M3
Inicia el husillo. El parámetro S establece la velocidad en revoluciones por minuto
M3 S5000
enciende el husillo a 5000 rpm
M5
Detiene el husillo
M5
M6
Cambio automático de herramienta, T0 indica sonda inalámbrica, T-1 indica Ninguna
M6 T1
cambia a la herramienta 1 y establece TLO
M7
Inicia el flujo de aire
M7
M9
Detiene el flujo de aire
M9
M17
activar todos los pines de habilitación
Solo depuración
M18
esto permite apagar motores individuales, sin parámetros desactiva todos
Solo depuración
M20
listar archivos en la raíz de la tarjeta SD. no mostrará subcarpetas
Solo depuración
M21
código para octoprint para impresoras 3D, no hace nada
No usar
M23
seleccionar un archivo
M23 gcodes/test.cnc
M24
comenzar a reproducir el archivo actual
no usar
M25
pausar el archivo que se está reproduciendo actualmente (usar M600 para pausas)
no usar
M26
reiniciar el archivo actual listo para empezar de nuevo
no usar
M27
informar el progreso actual (útil para sincronizar la pantalla del controlador con la línea actual)
M30
Fin del programa, sin acción en la Carvera. Ver M26
M30
M32
seleccionar un archivo y empezar a reproducir. Para macros ver M98
M32 gcodes/test.cnc
M82
modo_e_abs on
Solo depuración
M83
modo_e_abs off
Solo depuración
M84
apagar todos los pines de habilitación
Solo depuración
M92
establecer pasos por mm
M98 X12
establece los pasos por mm en X a 12
abrir un subprograma dentro del gcode en ejecución actual, a menudo referido como macro. regresar al programa principal cuando termine. El parámetro P es un número que hace referencia a un archivo en la carpeta gcodes/macros con un nombre ####.cnc El parámetro opcional L repite el subprograma un número determinado de veces
M98 P1001 L4
abrir subprograma por ruta, regresar al programa principal cuando termine. por lo demás igual que arriba. el comando opcional L debe ir antes de la ruta
M98 L2 {gcodes/test.cnc}
M105
Leer la temperatura actual del husillo
M105
M112
paro de emergencia
Solo depuración
M114
imprimir el WCS actual para cada eje en la consola
M115
informar la versión del firmware y las capacidades
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:Oct 30 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 Gcode no conforme especial ya que permite texto arbitrario en la línea que sigue al comando. Imprime en el panel de pantalla disponible
Usar 118 en su lugar
M119
informar la información actual de la sonda
X_max:0 Y_max:0 Z_max:0 pines- (XL)P0.24:0 (XL)P0.25:0 (YL)P1.1:0 (YL)P1.4:0 (ZL)P1.8:0 Sonda: 0
M120
empujar estado
Solo depuración
M121
sacar estado
Solo depuración
M143
código específico de impresora 3D
No usar
M203
establecer velocidad máxima de avance en mm/seg
M203 X100
M203.1
establecer velocidades máximas del actuador
M204
M204 Snnn - establecer la aceleración predeterminada a nnn, Xnnn Ynnn Znnn establece aceleración específica por eje
M205
M205 Xnnn - establecer desviación de la unión, Z - establecer desviación de unión en Z, Snnn - establecer velocidad mínima del planificador
M206
establecer offset de homing
M206 X15 Y15 Z15
establece offset de homing a 15,15,15
M220
S<factor en porcentaje>- establecer porcentaje de anulación del factor de velocidad de avance
M220 S50
M221
Activar/desactivar finales de carrera suaves
M221 S0
desactiva los finales de carrera suaves. M221 S1 los activa
M223
S<factor en porcentaje>- establecer porcentaje de anulación del factor de velocidad del husillo
M223 S80
M301
específico de impresora 3D
No usar
M303-305
Usado por el autotunelador PID para control de temperatura de un hotend de impresora 3D. Sin función en la Carvera
No usar
M306
establecer offset de homing basado en la posición actual
M321
Entrar en el modo láser, la máquina soltará la herramienta actual automáticamente y calibrará la pinza del husillo (para ajustar el offset del láser a la superficie de trabajo)
M321
M322
Salir del modo láser
M322
M323
Entrar en el modo de prueba láser, el módulo láser recibirá una potencia muy baja, usualmente usado para reenfocar el láser
M323
M324
Salir del modo de prueba láser
M324
M325
S<factor en porcentaje>- establecer porcentaje de anulación del factor de potencia del láser
M325 S50
M331
Activar el modo de vacío automático; si está activado, el vacío se encenderá automáticamente cuando el husillo esté en funcionamiento y se apagará cuando el husillo no esté funcionando
M331
M332
Desactivar el modo de vacío automático
M332
Activar el Modo de Ejecución Línea por Línea. Pausa después de cada línea. No pausa en líneas vacías, o líneas que comienzan con ; o (
M370
Borra los datos de nivelación automática de la cama y desactiva la compensación hasta que se ejecute G32 nuevamente
M370
M374
guardar la cuadrícula de autoleveling en la tarjeta SD.
M374.1
eliminar la cuadrícula de autoleveling de la SD
M375
cargar la cuadrícula desde la tarjeta SD
M375.1
Mostrar los datos actuales de la cuadrícula de nivelación de la cama en la ventana MDI
M375.1
M400
esperar a que todos los movimientos hayan terminado hasta este punto
calibrar la punta de la sonda usando un orificio de tamaño conocido
M460 X25 L3
comenzar centrado dentro del orificio. Calibrará basado en un orificio de 25 mm, promediando el valor sobre 3 pruebas. Esto guardará el valor en la variable #150. Usar config-set sd zprobe.probe_tip_diameter # para almacenar este valor para reinicios. Se implementan todos los parámetros de M461 excepto T,S
calibrar la punta de la sonda usando un reborde (boss) de tamaño conocido
M460.2 X15 L3
comenzar centrado sobre el reborde. Requiere X o Y pero no ambos. El valor para X o Y es la dimensión medida del reborde. L es el número de veces que se sondará y se promediará. Se implementan todos los parámetros de M462 excepto T,S
calibrar la punta de la sonda usando el ancla 2
M460.3
se moverá a la posición correcta por Z de separación, moverá xy, sondará hacia abajo en z. La posición se basa en la posición de configuración para el ancla 2 y el ancho de ancla guardado. Medir y establecer primero el ancho del ancla.
sondar orificio
M461 X25 Y30 D2.5 H10 C2 Q15 L2 R1.8 S1 F100 K200
Comenzar aproximadamente en el centro del orificio, la macro comienza con una sondaje en z, moviéndose (H)10 mm hacia abajo. Si la herramienta golpea la superficie, se retraerá (C)2. Si no, continuará desde la nueva posición baja. Si no se da H o es 0, la macro sondará desde la altura inicial. Luego sondará (X)25 mm en la dirección X rotada por (Q)15 grados hasta que la herramienta toque una superficie. Retractarse de la superficie (R)1.8 mm de regreso hacia el centro, luego volver a sondear a una velocidad mucho más lenta. Volver al centro y repetir para la dirección rotada -x. Repetir los pasos de X para la dirección Y, sondeando (Y) 30. Repetir las sondas X e Y (L)2 veces. Todos los movimientos normales de sonda ocurren a (F)100 mm/seg, los movimientos entre inicios de sonda ocurren a la velocidad rápida (K)200. Al completarse el programa habrá guardado la distancia a lo largo del eje X como #151, la distancia a lo largo del eje Y como #152, el punto central en MCS como #154,#155. Puesto que S está ajustado a 1 el programa establecerá el WCS actual (usualmente G54 a menos que se sobrescriba) como el centro del orificio. Si S no está establecido la macro de sonda no afectará el WCS. (D) se usa para calcular la distancia entre puntos y representa el diámetro de la punta de la herramienta. Todos los parámetros son opcionales pero debe tener 1 de X o Y; si proporciona solo uno de ellos solo sondará en esa dirección.
sondar reborde (boss)
M461 X25 Y25 E12
Todos los parámetros de M461 funcionan. Partiendo del centro aproximado del bloque/boss rectangular, la sonda se moverá (X) 25 mm en la dirección X positiva, luego sondará hacia abajo por -(C+E) para llegar al lateral del bloque. Luego realizará un doble toque hacia el centro del bloque para encontrar el punto 1. Volverá a la posición de separación, luego a la posición central, luego repetirá la sonda x para la dirección negativa y ambas direcciones y. Las variables de salida son las mismas que M461. Si S1 está establecido el centro del boss será el nuevo origen xy. Si S2 está establecido y se dio una altura de sondeo (H), el origen z se establece en la superficie sondeada
sondar esquina interior
M462 X-15 Y-15
Implementa D, H, C, Q, F, K, L, R, S de M461. Sonda una esquina interior inferior izquierda (la dirección de X e Y determinan la dirección en que se mueve la sonda, en este caso a la izquierda y hacia la parte frontal de la máquina). Guarda la posición del centro en #151 y #152
sondar esquina exterior
M463 X15Y15
Implementa D, H, C, Q, F, K, L, R, S de M461. Implementa E de M462 y sigue un proceso similar para 2 puntos en lugar de 4. Sonda una esquina exterior inferior izquierda (la dirección de X e Y determinan la dirección en que se mueve la sonda, en este caso a la izquierda y hacia la parte frontal de la máquina). Guarda la posición del centro en #151 y #152. S funciona igual que en M462
sondar eje y ángulo
M464 X10 E10 V10
Implementa H,C,X,Y,Q,F,K,L,R de M461. Solo tomará 1 valor de eje (X o Y). Desde la posición inicial: doble toque de sonda con distancia (E)10 perpendicular al eje dado hasta que se golpee una superficie. El signo de E determina la dirección de sondeo. Volver a la posición inicial. Moverse a lo largo del eje dado por (X)10 y repetir la sonda. Volver a la posición inicial. Como V está establecido la sonda se moverá a lo largo del mismo ángulo que la superficie de la sonda por (V)10. Almacena el ángulo en grados en #153
sondeo recto con doble toque
M466 X{dist} Y{dist} Z{dist} D{diámetro de la punta} Q{ángulo} L{repeticiones} R{retracción} S{guardar como xy, si solo se da 1 eje sin q, entonces solo guardará ese eje como cero} F{velocidad de avance} I{invertir para NC}
M469 / M469.0
Futuro: iniciar máquina con sonda verdadera de 3 ejes en pin definido por el usuario
no implementado
M469.0 I{invertir}
M469.3
Futuro: calibrar posición de herramienta ATC con sonda verdadera de 3 ejes
no implementado
calibrar el cabezal del cuarto eje con sonda verdadera de 3 ejes
M469.4
M469.4 I{invertir} Y{ancho del cabezal} H{qué tan lejos hacia abajo sondear}
calibrar el offset de altura del cuarto eje con sonda
M469.5
M469.5 R{Diámetro del pin} X{Distancia desde la 1ª posición de sonda hasta la sonda} H{Distancia máxima hacia abajo para sondear}
M469.6
informar y establecer offsets de la máquina (código solo para máquina)
Solo depuración
X - pos X original Y- pos y original, Z - pos z original, P-tipo de ajuste de sonda. 1 es para ancla 1, 2 es ancla 2, 3 es posición de herramienta atc, etc
M470
establecer la dirección del equipo de sonda inalámbrica
M470 S2020
M471
poner la sonda inalámbrica en modo emparejamiento
M471
M472
encender el láser de la sonda inalámbrica
M472
M481-489
gcodes específicos de wifi que es mejor hacer mediante los comandos de consola
No usar
M490
Ejecutar el proceso de homing ATC, el homing se ejecutará automáticamente al emitir M490.1 o M490.2 si es necesario
M490
M490.1
Aprieta la pinza del husillo para asegurar una nueva herramienta en el husillo
M490.1
M490.2
Afloja la pinza del husillo y suelta la fresa actual
M490.2
M491
Ejecutar una calibración, y el TLO (offset de longitud de herramienta) para la herramienta actual se restablecerá
M491
realiza una comprobación de rotura de herramienta calibrando la herramienta actual y comparando su longitud con un offset de longitud de herramienta (TLO) almacenado previamente.
M491.1 H0.05
Si hay una diferencia mayor a 0.05 detener la máquina
M492
comando interno para determinar si el portaherramientas está vacío.
Solo depuración
guardar offset de herramienta cuando haya activado la sonda TLO. Usar M493.3 para establecer el TLO a un valor particular
Solo depuración
guardar offset de longitud de herramienta al valor. usar Z para un valor completamente nuevo.
M493.3 Z-15
establece el TLO a -15
Establece TLO desde la posición WCS actual con un offset H.
M493.3 H10
comenzar con la herramienta 10 mm por encima de Z del WCS, usando el pin de calibre o el truco del papel. Esto calculará el TLO adecuado para coincidir con el WCS actual
M493.5
Futuro: pausa ATC
M494 / M494.1
encender el láser de la sonda
M494.1
M494.2
apagar el láser de la sonda
M494.2
M495
Hacer margen, sonda Z, nivelado automático basado en parámetros, cambiar herramienta de sonda si es necesario. X e Y son inicio de margen. C y D son extensiones de margen. O y F son offsets de sonda Z. A, B son las extensiones del autolevel, I y J son el número de puntos a sondear por cada eje, H es altura de sonda del autolevel. P1 irá al origen
M495.3
realiza una sonda z de 3 ejes a lo largo de -z, -x y -y. Ver G38 para otras funciones de sondeo. D establece el diámetro de la punta de la sonda, H es el grosor de la pieza metálica de la sonda de 3 ejes
M495.3 D3.175 H9
M496.2
ir al origen de trabajo. Los parámetros X e Y establecen la posición en relación con el ancla 1
M496.2 X30Y0
M496.3
ir al ancla 1
M496.4
ir a la posición del ancla 2
M496.5
ir a la posición. Los parámetros X e Y establecen la posición en relación con el ancla 1
M496.5 X30Y0
M497
esperar a que la cola se vacíe. Usualmente un comando interno
Solo depuración
M498 / M498.1
informar datos del eeprom. Imprimirá el número de herramienta actual, TLO, toolmz, refmz, y offsets WCS en la consola
M498.2
borrar datos de EEProm. No ejecutar
No usar
M499/M499.1
imprime información de la herramienta actual en la consola
M499.2
imprime todos los datos de ubicación de herramientas atc en la consola
M500
guardar cambios en el archivo de configuración en la tarjeta SD
M501
// cargar anulación de configuración
Solo depuración
no implementado
M502
M502 elimina config-override para que todo vuelva a los valores de config
Solo depuración
M503
imprimir valores del archivo de configuración en la consola
M504
guardar en un archivo de anulación de configuración específico
M504 "/sd/config-override"
M561
Borra los datos de nivelación automática de la cama y desactiva la compensación hasta que se ejecute G32 nuevamente. Igual que M370
M565
establece offsets de zprobe. Investigar en una fecha posterior
M600
pausar el archivo actual (usar esto para añadir pausas)\
M601
reanudar el archivo actual - usualmente ejecutado desde la consola MDI
M665
M665 establece variables opcionales de solución de brazo basadas en la solución del brazo.
incerto sobre la función
M670
establecer información predeterminada de sonda hasta el próximo reinicio. S - velocidad lenta, K - velocidad rápida, R - velocidad de retorno, Z- profundidad máxima Z para sondear, H - distancia para sondear, I - estado de inversión de sonda, D - espera antes de sondear
M801
Encender el vacío interno (Carvera). El parámetro S establece la potencia del vacío (S100 = 100%) Enciende el ventilador de la PSU en Carvera Air
M801 S100
M802
Apagar el vacío en Carvera, y apagar el ventilador de la PSU en Carvera Air
M802
M811
Encender el ventilador de refrigeración del husillo. El parámetro S establece la potencia del ventilador
M811 S100
M812
Apagar el ventilador de refrigeración del husillo
M812
M821
Encender la luz
M821
M822
Apagar la luz
M822
M831
Encender el láser del sensor detector de herramienta
M831
M832
Apagar el láser del sensor detector de herramienta
M832
M841
Encender la carga de la sonda inalámbrica
M841
M842
Apagar la carga de la sonda inalámbrica
M842
M851
Encender la alimentación del puerto extendido. El parámetro S establece la salida PWM del puerto
M851
M852
Apagar la alimentación del puerto extendido
M852
M881
Establecer canal 2.4G a: el parámetro S y comenzar a transmitir
M881 SwifiNetworkName
M882
apagar la red wifi
M882
M885
desactivar finales de carrera físicos (vuelve a activarse al reiniciar, ignorado durante homing)
M886
activar finales de carrera físicos
M887
desactivar comprobación de home
M888
activar comprobación de home
]
informar velocidad del husillo
M957
velocidad y estado actual del husillo
Estado: encendido, RPM actual: 15086 RPM objetivo: 15000 Valor PWM: 0.699
M958
establecer parámetros PID del husillo, parámetros P, I, D
M1000
M1000 es un comando especial que pasará el comando en minúsculas sin procesar al simpleshell (para hosts que no permiten tales cosas)
Última actualización