un programa CNC se escribe con unas pocas decenas de instrucciones, pero el 90% de las líneas que vas a ver en un taller usan siempre las mismas diez o doce. Si entiendes estas, entiendes casi cualquier programa. Aquí va cada una con lo que hace, una línea de ejemplo y el fallo que provoca cuando se usa mal.
Antes de empezar, dos reglas que evitan la mitad de las dudas. Las G (funciones preparatorias) le dicen a la máquina cómo moverse; las M (funciones auxiliares) encienden y apagan cosas: husillo, refrigerante, cambiador. Y muchas G son modales: una vez las declaras siguen activas línea tras línea hasta que otra del mismo grupo las sustituye. Ese detalle es la causa de más piezas rotas de lo que parece.
Mueve la herramienta al punto indicado a la máxima velocidad de la máquina. No es un movimiento de corte. Sirve para acercarse y para retirarse.
G00 X50. Z2.
Error típico: usar G00 con la herramienta dentro de material, o calcular mal la trayectoria creyendo que va en línea recta. En muchos controles el rápido se mueve por ejes independientes, así que el camino real puede ser una diagonal quebrada que se lleve por delante la pieza o una brida.
Movimiento recto a la velocidad de avance que le marques con F. Es el que corta.
G01 X50. Z-30. F0.2
Error típico: olvidar la F. Si no se ha declarado antes en el programa, unos controles dan alarma y otros arrancan con el último avance en memoria, que puede ser el de otra herramienta.
Arcos a velocidad de avance. G02 en sentido horario, G03 antihorario, mirando el plano desde el eje positivo que le es perpendicular. El arco se define con radio (R) o con el centro en coordenadas incrementales (I, J, K).
G03 X30. Y20. R10. F0.15
Error típico: confundir el sentido, o dar un R imposible para la distancia entre el punto de partida y el de llegada. Con arcos de más de 180° el R con signo se lía: en esos casos es más seguro I/J/K.
Le dice al control en qué plano trabajan los arcos y la compensación de radio. G17 = XY (lo normal en fresadora), G18 = XZ (lo normal en torno), G19 = YZ.
G17
Error típico: dejarlo por defecto y programar un arco en otro plano. El control interpola donde no toca y la trayectoria sale girada 90°.
G20 pulgadas, G21 milímetros. Va en la cabecera, siempre.
G21
Error típico: el más caro de la lista. Un programa en pulgadas ejecutado en milímetros mueve los ejes 25,4 veces más de lo previsto. Si te llega un programa de fuera, lo primero que miras es esta línea.
Permite programar el contorno de la pieza en vez de la trayectoria del centro de la fresa: el control desplaza la herramienta su propio radio. G41 compensa a izquierda, G42 a derecha en el sentido de avance. G40 la cancela.
G41 D01 X20. Y10.
Error típico: tres, y los tres frecuentes. Activar o cancelar la compensación en mitad de un arco; entrar con un movimiento más corto que el radio de la herramienta; y dejar G41 activa al terminar. Lo último te muerde en la siguiente operación.
Son los ceros pieza. G54 es el primero y el más usado; los demás sirven para varias piezas en la mesa o varias amarradas a la vez.
G54
Error típico: programar contra G54 y tener la pieza reglada en G55. La máquina hace exactamente lo que le pides, solo que en el sitio equivocado. Compruébalo antes de dar ciclo, siempre.
G90: cada coordenada se mide desde el cero pieza. G91: cada coordenada es un desplazamiento desde donde está la herramienta ahora.
G90 G54 G00 X0. Y0.
Error típico: el clásico del oficio. Un G91 que se queda activo de una operación anterior convierte cada línea siguiente en un movimiento relativo, y los errores se van sumando. Si ves la herramienta alejándose en escalera, mira esto.
M03 arranca en sentido horario, M04 antihorario, M05 para. La S marca las revoluciones.
M03 S1200
Error típico: el sentido al revés con herramienta de corte a derechas: la herramienta frota en vez de cortar, se calienta y se acaba rompiendo. En roscado con macho, además, destroza la rosca.
Ejecuta el cambio. Normalmente va con una T que selecciona el número de herramienta.
T02 M06
Error típico: lanzar el cambio sin haber retirado la herramienta a una posición segura, o con el husillo girando. También olvidar el corrector de longitud (G43 H) después del cambio: la máquina trabaja con la longitud de la anterior.
Termina y rebobina al principio. M02 también termina, pero no siempre rebobina, según el control.
M30
Error típico: dejar el husillo o el refrigerante encendidos porque el final no lleva M05 y M09. Un final limpio apaga todo y devuelve los ejes a una posición donde puedas amarrar la siguiente pieza.
La mayoría de los programas empiezan igual, declarando todo lo modal para no heredar nada de lo anterior:
G21 G17 G90 G40 G80
T01 M06
G43 H01
G54 G00 X0. Y0.
M03 S1200
M08
Unidades, plano, absoluto, compensación cancelada, ciclos cancelados. Luego herramienta, corrector de longitud, cero pieza, posicionamiento, husillo y refrigerante. Si adoptas esta costumbre, te ahorras la mayoría de los sustos que acabas de leer.
Ojo con el dialecto. Fanuc, Siemens, Haas, Heidenhain y Mazak comparten la base pero cambian detalles — ciclos fijos, sintaxis de los correctores, decimales obligatorios. Lo de arriba es el tronco común; lo particular está en el manual de tu control, y ese manual hay que abrirlo.