¡No dude en contactarnos cuando nos necesite!
2026.10.14
Noticias de la industria
Dos tornos colocados uno al lado del otro en el mismo taller pueden ejecutar lo que parece el mismo programa y aun así comportarse de manera diferente. Un control lee G71 como un ciclo de torneado de dos bloques y desbasta la pieza exactamente como está escrito; otro espera una llamada de ciclo y suena la alarma en la primera línea. Esa brecha es la razón por la cual la frase lenguaje de codificación CNC merece una definición real en lugar de una respuesta de una sola palabra.
La respuesta corta: el lenguaje de codificación CNC es el código G, estandarizado como ISO 6983, creado a partir de letras de dirección que describen el movimiento, el avance, la velocidad y la selección de herramientas. Alrededor de ese núcleo, cada generador de control superpone sus propios códigos M, ciclos fijos, variables macro y comandos de sincronización. Aprenda el núcleo estándar y podrá leer casi cualquier programa. Aprenda el dialecto y podrá ejecutar la máquina.
Lo que sigue cubre la estructura de bloques, los códigos utilizados todos los días, los grupos modales y las trampas de orden dentro de ellos, las principales familias de dialectos, la programación de macros y subhusillos, y cómo probar un programa antes de tocar el metal.
Contenido
El código G transmite geometría y avance: hacia dónde viaja la herramienta, a qué velocidad y por qué camino. Los códigos M incluyen funciones de la máquina: encendido y apagado del husillo, refrigerante, sujeción y liberación del mandril, cambio de herramienta, contrapunto, parada del programa. Las letras de dirección proporcionan los parámetros: X, Y y Z para posición, F para avance, S para velocidad, T para herramienta y compensación, N para número de secuencia.
Tres detalles sorprenden a la gente desde el principio. En la mayoría de los centros de torneado, X se programa como un diámetro en lugar de un radio, por lo que X50.0 gira un diámetro de 50 mm. El avance puede ser por minuto (G98) o por revolución (G99), y el mismo valor F significa algo completamente diferente en cada modo. Y el código G no es un formato de archivo único: un control lee un dialecto específico y se debe escribir un posprocesador CAM para ese dialecto antes de que se ejecute la salida.
Si todavía estás desarrollando fluidez, un Descripción general en lenguaje sencillo de los fundamentos del torneado y el fresado. Vale la pena dedicar una hora de su tiempo antes de comenzar a editar programas de producción.
Un bloque es una línea de un programa y solo necesita las direcciones que cambian. Un movimiento de desbaste en un torno podría leerse N120 G01 X48.0 Z-32.0 F0.25: un número de secuencia, un comando de interpolación lineal, una posición de diámetro absoluta, una posición Z absoluta y un avance de 0,25 mm por revolución.
Leído de izquierda a derecha, el bloque es una frase: a la máquina se le dice qué tipo de movimiento debe hacer, dónde terminar y qué tan rápido debe llegar. Las letras que aparecen son el vocabulario del idioma.
| Dirección | que hace | Ejemplo |
|---|---|---|
| N | Número de secuencia del bloque; útil al buscar o reiniciar a mitad del programa | N120 |
| G | Comando preparatorio o de movimiento | G01 |
| X, Y, Z | Posición de destino en los ejes principales; absoluto bajo G90, incremental bajo G91 | Z-32.0 |
| U, W | Recorrido incremental en muchos controles de giro, con U generalmente escrito como diámetro | U0.5 |
| F | Tasa de alimentación; por minuto según G98, por revolución según G99 | F0.25 |
| S | Velocidad del husillo en rpm o velocidad superficial cuando la velocidad superficial constante está activa | S800 |
| T | Número de herramienta y número de compensación, a menudo escritos juntos | T0303 |
| M | Función de la máquina como dirección del husillo, refrigerante o parada del programa. | M08 |
| R, P, Q, D | Parámetros de ciclo y compensación; el significado depende del ciclo en uso | P100 Q200 |
| # | Variable macro utilizada para aritmética y para valores pasados | #100=25.0 |
La tabla es vocabulario; la gramática es estado modal. Un control recuerda lo que estaba activo en la línea anterior y continúa aplicándolo hasta que otro comando del mismo grupo lo reemplaza.
Un programa de torneado funcional utiliza un conjunto sorprendentemente pequeño de códigos G. La siguiente tabla cubre la mayor parte de lo que aparece en un torno de dos ejes en una semana normal.
| Código | Función | Uso típico |
|---|---|---|
| G00 | Posicionamiento rápido, sin cortes. | Movimientos de aproximación y retracción. |
| G01 | Interpolación lineal con un avance establecido | Girando, enfrentando, aburrido |
| G02 / G03 | Interpolación circular, en sentido horario y antihorario. | Radios, filetes, formas esféricas. |
| G04 | Habitar por un tiempo determinado | Parte inferior de un orificio ciego, limpieza de ranuras |
| G20/G21 | Entrada en pulgadas y métricas | Establecer una vez en la parte superior del programa. |
| G28 | Volver a la posición de referencia de la máquina | Inicio y fin del programa seguros |
| G40 / G41 / G42 | Cancelación de compensación del cortador, izquierda y derecha | Fresado de perfiles y cantos. |
| G43 | Compensación de longitud de herramienta | Cambios de herramienta en un centro de mecanizado |
| G50/G92 | Fijación de la velocidad del cabezal o ajuste de coordenadas, según el control | Límites de velocidad y configuraciones simples |
| G54 a G59 | Sistemas de coordenadas de trabajo. | Múltiples accesorios en una mesa |
| G70/G71 | Ciclos de acabado y desbaste para torneado. | Desbaste en torno |
| G76 | Ciclo de roscado | Roscas internas y externas de un solo punto |
| G81 / G83 | Ciclos de taladrado y taladrado en profundidad | Patrones de agujeros, agujeros profundos. |
| G84 | ciclo de roscado | Golpeteo sincronizado |
| G96/G97 | Velocidad de superficie constante dentro y fuera | Encarar y girar a una velocidad superficial fija |
| G98/G99 | Avance por minuto y avance por revolución | Decidir cómo se interpreta F |
En un torno de dos ejes la lista se reduce aún más. El desbaste, el acabado, el roscado, el taladrado y la velocidad superficial constante cubren la gran mayoría del trabajo de producción, por lo que los programas de torneado tienden a parecer compactos hasta que entra en escena una herramienta activa o un segundo husillo. Una máquina como el torno horizontal de alta potencia CK6150 está programada casi en su totalidad con G71, G70 y G76, siendo G96 el que maneja la velocidad de la superficie mientras se refrenta.
Torno horizontal CNC de alta potencia CK6150 Torno de control numérico Ver producto → Cada código G pertenece a un grupo modal y sólo un código de un grupo puede estar activo a la vez. G00, G01, G02 y G03 se encuentran en el mismo grupo, por lo que escribir G01 cancela el movimiento rápido que estaba activo antes. Nunca es necesario desactivar un comando modal; simplemente emite el siguiente comando del mismo grupo cuando cambia el tipo de movimiento.
Algunos códigos no son modales y actúan solo en el bloque donde aparecen. Los ejemplos habituales son G04 de permanencia, G28 de retorno de referencia y G53 de movimientos de coordenadas de máquina.
Hacer pedidos dentro de un bloque es igualmente importante. Cuatro hábitos evitan la mayoría de las sorpresas:
Estas no son preferencias estilísticas. Ellos deciden si el siguiente bloque es un avance rápido en la pieza de trabajo o un avance controlado a la profundidad de corte.
El estándar define el núcleo del lenguaje, no todo. El roscado, los ciclos de perforación, la gestión de herramientas y la sintaxis de macros se dejan en manos del creador de controles, por lo que un programa escrito para una familia de controles generalmente necesita edición antes de ejecutarse en otra.
Dos familias aparecen con mayor frecuencia en tornos y centros de torneado de uso general: los ciclos multibloque estilo Fanuc y las llamadas de ciclo estilo Siemens. En la programación del día a día las diferencias se ven así.
| Función | Control estilo Fanuc | Control estilo Siemens |
|---|---|---|
| Enhebrado | G76 con dos o más bloques de parámetros | G33 o una llamada de ciclo de subproceso dedicado |
| Ciclos de taladrado | G81, G83 con parámetros R y Q | Llamadas cíclicas con parámetros de profundidad, permanencia y retracción. |
| Compensación del radio de la herramienta | G41 y G42 con un número de compensación D | G41 y G42 con el radio tomado de la tabla de herramientas |
| Llamada de subprograma | M98 con un número de programa | Un nombre de subprograma o una declaración de llamada explícita |
| variables macro | Variables numeradas escritas con # | parámetros R |
| Velocidad superficial constante | G96 con abrazadera de velocidad separada | G96 con un parámetro de límite superior |
Aquí está la consecuencia práctica para un comprador: el dialecto se decide en el momento de la compra, no en el taller después. Si se especifica un torno con un control Siemens 808D, entonces los programas, el posprocesador y la capacitación del operador deben coincidir con esa elección. Una máquina como el torno vertical de una sola columna CK5116B, que se suministra con el sistema Siemens 808D, no aceptará un archivo de ciclo estilo Fanuc sin que se reescriban los bloques de ciclo.
CK-5116B Torno vertical de una columna CNC Siemens 808D Torno de control numérico Ver producto → Una vez que una familia de piezas comparte una forma y difiere sólo en dimensiones, la edición manual de cada programa deja de tener sentido. Dos funciones eliminan la mayor parte de ese trabajo y una tercera cambia la forma en que se planifica toda la secuencia.
Un subprograma contiene una secuencia repetida (un perfil de ranura, un patrón de agujeros, una pasada de desbarbado) y se llama desde el programa principal. Cambie el subprograma una vez y cada programa que llama retoma el cambio en la siguiente ejecución.
Las variables macro almacenan números con los que el programa puede calcular. Una sola macro puede perforar una familia de diámetros, cambiando una variable entre pasadas y deteniéndose en una condición, en lugar de duplicar el mismo ciclo para cada tamaño. Debido a que la sintaxis aritmética es específica del dialecto, los programas con muchas macros son la parte menos portátil de cualquier biblioteca de programas.
En un centro de torneado de doble husillo, el programa también tiene que coordinar dos husillos: cortar en el husillo principal, separar, pasar la pieza bruta al subhusillo y terminar la segunda cara. Los códigos de sincronización y los comandos de espera evitan que ambas partes choquen, y ésta es el área menos estandarizada del lenguaje. Es exactamente el territorio cubierto por máquinas como el centro de torneado y acoplamiento automático de doble husillo NC106DS, donde la secuencia de transferencia está integrada en el diseño de la máquina en lugar de improvisarse en el programa.
Centro de torneado horizontal de acoplamiento automático de doble husillo NC-106DS El centro de torneado horizontal de acoplamiento automático de doble husillo es una máquina herramienta avanzada que integra múltiples funciones de procesamiento como torneado, taladrado, taladrado... Ver producto → Casi todos los accidentes tienen la misma forma: el código nunca se verificó con el estado real de la máquina. Una breve rutina los atrapa a casi todos.
Dos minutos de trabajo de un solo bloque en la máquina cuestan mucho menos que un portaherramientas roto o un lote desechado.
Debido a que el lenguaje de codificación está ligado al control, la selección de la máquina y la práctica de programación son la misma decisión. Antes de firmar, conviene confirmar por escrito algunos puntos:
Un constructor que ha dedicado dos décadas a la fabricación de equipos de corte de metales y que envía alrededor de mil unidades al año tiende a tener respuestas definitivas a estas preguntas. Puedes leer más sobre el Antecedentes e historia del equipo detrás de estos tornos. antes de seleccionar un modelo.
¡No dude en contactarnos cuando nos necesite!