Configuración del Offset Cero Programable G59 en CNC Siemens
Domine el offset cero programable G59 en Siemens SINUMERIK. Configure el parámetro MD 24000, evite la Alarm 18312 y optimice el mecanizado sin colisiones.
Introducción
Una colisión catastrófica que destroza la herramienta de metal duro o dobla las guías del eje Z es el impacto mecánico inmediato cuando la herramienta o el spindle se desplazan por una trayectoria no compensada debido a un offset incorrecto. Si el operador de configuración ejecuta ciclos automáticos en un centro de fresado o torno sin validar el parámetro MD 24000 en el control Siemens, el origen de la pieza sufrirá una desviación. Si no se verifica este parámetro antes de producción, la desviación dimensional se acumula ciclo a ciclo y solo se detecta en la inspección final como pieza rechazada. Validar el parámetro MD 24000 elimina la causa más frecuente de parada no planificada en este comando. En el mecanizado de alta velocidad, omitir la verificación de los registros del frame G59 provoca colisiones destructivas contra una mordaza de prensa (vise jaw) o las garras rotativas del chuck. Este evento genera alarmas severas por sobrecarga en los ejes, destruye la herramienta de corte y provoca un costoso tiempo de inactividad que arruina los objetivos de tiempo de ciclo previstos para la producción.
Resumen Técnico
| Atributo Técnico | Especificación |
|---|---|
| Código de Comando | G59 |
| Grupo Modal | Grupo 3 (Frames programables, limitaciones de área de trabajo y programación de polos) |
| Marcas Soportadas | Siemens |
| Parámetros Críticos | MD 24000 $MC_FRAME_ADD_COMPONENTS, MD 28080 $MC_NUM_USER_FRAMES |
| Restricción Principal | Debe programarse en un bloque independiente en modo nativo; el parámetro MD 24000 debe estar establecido en 1. |
Lectura Rápida
- Establezca el parámetro MD 24000 $MC_FRAME_ADD_COMPONENTS en 1 para habilitar las funciones de offset fino y evitar bloqueos en el control.
- Programe G59 en un bloque independiente sin comandos axiales de movimiento geométrico para evitar errores de sintaxis y de ejecución.
- Cambie el compilador al modo de Dialecto ISO mediante G291 al ejecutar actualizaciones programables de offset G10.
- Utilice el comando G290 para volver al modo nativo de Siemens y procesar frames paramétricos avanzados.
- Emplee las limitaciones de área de trabajo G25/G26 para definir zonas de protección activas o protegidas alrededor de la torreta y del spindle.
- Verifique que la compensación de filo de herramienta activa (código D) recalcule dinámicamente las compensaciones durante las transiciones.
Conceptos Básicos
La programación práctica del offset G59 en controles Siemens establece una estructura de traslación de coordenadas multinivel muy versátil. Al ejecutarse en el modo nativo de SINUMERIK (G290), G59 funciona como un offset cero aditivo programable axial. Modifica únicamente el componente de traslación fina aditivo del frame programable actualmente activo en un eje específico, dejando intacto el componente de traslación absoluta/coarse (TRANS o G58). Esto permite a los programadores aplicar microajustes submilimétricos a los puntos cero de coordenadas de la pieza en una paleta o configuración de múltiples piezas (como compensar variaciones de fundición o el desgaste de la herramienta) sin alterar ni redefinir el sistema de coordenadas absoluto de referencia.
Los operadores de configuración y los programadores deben comprender que cada frame de usuario de Siemens consta de un offset coarse y un offset fino, que se suman matemáticamente para determinar el sistema de coordenadas de la pieza activo. Antes de ejecutar ciclos de mecanizado automáticos, el operador de configuración debe ubicar físicamente el material y registrar con precisión estas dimensiones en los registros de offset cero. Para operaciones de torneado, el offset cero define la sujeción en el chuck. Para el fresado, el offset representa la distancia física desde el cero de la máquina hasta el punto cero de la pieza ubicado en una mordaza de prensa o brida de sujeción. Si se encuentran activos desplazamientos no compensados, o si las coordenadas cambian inesperadamente durante la indexación de la herramienta en la torreta, la herramienta puede desviarse de la trayectoria segura. Esta desviación inesperada puede dar lugar a una colisión dura (choque), dirigiendo la herramienta de corte o el husillo directamente contra una mordaza de prensa de sujeción, una brida de fijación o las garras rotativas del chuck. El resultado es una herramienta destrozada, daños en las guías de los ejes, códigos de alarma graves por sobrecarga del husillo o de los ejes (como la Alarm 14800) y una pieza de trabajo arruinada que debe desecharse como scrap. Los operadores pueden prevenir estas colisiones utilizando limitaciones programables del área de trabajo (G25/G26 o WALIMON/WALIMOF) para definir zonas de protección activas alrededor de equipos sensibles, como la torreta de herramientas, el husillo o las estaciones de medición.
Estructura de Comandos
Para seleccionar el offset cero programable axial en el modo nativo de SINUMERIK, se debe ordenar G59 en un bloque NC independiente. La instrucción reemplaza de manera modal los valores de offset fino de los ejes especificados. Funciona en el sistema de coordenadas de la pieza activo establecido por los frames de usuario configurables.
Por el contrario, cuando el control opera en el modo de Dialecto ISO, G59 selecciona el sexto sistema de coordenadas de pieza estándar. Si los offsets de coordenadas deben actualizarse mediante programación dentro del programa NC en modo ISO, se utiliza la instrucción de entrada de datos programable G10. Conmute entre los modos de compilador usando G290 y G291 para procesar estos formatos de sintaxis específicos.
Sintaxis en Modo Siemens Nativo:
G59 X_ Y_ Z_ A_ ;
Sintaxis en Modo Dialecto ISO:
G10 L2 P6 X_ Y_ Z_ ;
Parámetros y Direcciones:
- X, Y, Z, A: Valores de coordenadas que especifican el offset axial. En modo nativo, estos valores reemplazan los componentes de offset fino aditivos.
- L2: Especifica la entrada de datos de offset del sistema de coordenadas de pieza estándar en el modo de Dialecto ISO.
- P6: Identifica a G59 (Sistema de Coordenadas de Pieza 6) como el registro de destino para G10.
Aplicaciones de Marca
Siemens
Los controles Siemens SINUMERIK configuran el offset cero aditivo programable axial G59 dentro del canal activo mediante parámetros de máquina específicos. El comportamiento del offset fino del frame se rige por el dato de máquina MD 24000, que debe establecerse en 1. El número total de frames configurables por el usuario está definido por el MD 28080 para configurar las asignaciones de memoria.
El comando debe programarse en un bloque independiente en modo nativo, por ejemplo, G59 X10.0 Y10.0 ;. En el modo de Dialecto ISO, G59 se selecciona o actualiza mediante programación usando G10, de la forma: G10 L2 P6 X150.0 Y100.0 ;.
- MD 24000 $MC_FRAME_ADD_COMPONENTS: Activa el offset fino del frame. Debe establecerse en 1 para habilitar las funciones de offset fino.
- MD 28080 $MC_NUM_USER_FRAMES: Número de offsets de trabajo. Configura los frames de usuario configurables totales.
- MD 20150 $MC_GCODE_RESET_VALUES: Determina la posición de reinicio de los grupos G.
- MD 18800 $MN_MM_EXTERN_LANGUAGE: Activación de lenguajes NC externos (Dialecto ISO). Debe establecerse en 1.
- Alarm 18312: Offset fino no configurado. Se genera al intentar programar G59 mientras MD 24000 está en 0.
- Alarm 14800: La velocidad de trayectoria programada es menor o igual a cero. El avance F es 0.
- Alarm 12080: Error de sintaxis. Comando no reconocido (por ejemplo, G500 nativo de Siemens en modo ISO).
- Alarm 14060: Nivel de salto no permitido para el salto de bloque diferencial. Valor < 1 o > 9.
- Diferencias de Versión de Dialecto ISO de SINUMERIK: Los niveles de salto bimodales (/ y /1) son niveles de salto separados, a diferencia del ISO nativo.
- Diferencias de Versión de SINUMERIK 840D sl vs. 802D sl: Los comandos del Grupo 20 G51.2 (Torneado de múltiples filos ON) y G50.2 (Torneado de múltiples filos OFF) solo están disponibles en el 840D sl.
Advertencia: Los operadores de configuración no deben programar offsets axiales finos a menos que el MD 24000 esté activado, ya que esto activa la Alarm 18312 y detiene la máquina durante la ejecución.
Comparación de Marcas
| Característica del Control | SINUMERIK 840D sl / ONE | SINUMERIK 828D | SINUMERIK 802D sl |
|---|---|---|---|
| Pila de Frames y Offsets Finos | Soporta capas completas de pila de offsets coarse y fine. Offsets finos activados mediante el MD 24000. | Soporta capas estándar de offsets coarse y fine mediante el MD 24000. | Pilas de frames simplificadas. Carece de opciones avanzadas de offset fino y el MD 24000 suele estar bloqueado o inactivo. |
| Memoria de Offsets del Usuario (MD 28080) | Configurable hasta 100 frames de usuario ajustables globales (G54 a G57, G505 a G599). | Soporta frames de usuario configurables estándar (G54 a G57, G505 a G599) con límites de memoria predefinidos. | Registros de offset cero restringidos. Carece de asignación extensa de frames definidos por el usuario. |
| Alternancia de Compilador y Lenguaje | Alternancia completa de compilador bilingüe (G290/G291) con compilación avanzada de dialectos externos. | Soporta el modo bilingüe G290/G291 para la ejecución de G-code heredado estándar. | Modo básico de intérprete. Carece de compilaciones bilingües avanzadas y de los comandos del grupo 20 de torneado de múltiples filos (G51.2/G50.2). |
Análisis Técnico
La arquitectura de los controles Siemens gestiona los offsets cero como componentes dinámicos y modulares de una pila de memoria de frames multinivel. A diferencia de los sistemas de control de un solo registro que tratan los offsets cero como ubicaciones monolíticas, SINUMERIK divide las traslaciones en capas de pila coarse y fine. En modo nativo, G59 se trata como un componente de offset fino aditivo programable específico del eje del Grupo G 3. Funciona junto con G58 (offset coarse absoluto programable axial) para dividir las traslaciones de coordenadas en capas de pila coarse y fine, mientras que Fanuc y Mitsubishi tratan los sistemas de coordenadas de pieza (WCS G54–G59) como ubicaciones absolutas de registro único monolíticas.
Para analizar diferentes dialectos, Siemens opera bajo un modelo de compilador bilingüe alternado (G290/G291). El programador debe cambiar explícitamente el compilador al modo de Dialecto ISO mediante G291 para compilar bloques que contienen estilos ISO heredados, como entradas de offset G10 o selecciones del sistema de coordenadas G59. Luego, el programa debe ordenar G290 para volver al modo nativo de SINUMERIK para procesar frames paramétricos avanzados (TRANS/ROT/SCALE/MIRROR) and offsets cero nativos. Siemens cuenta con un comando de supresión absoluta dedicado, SUPA. Al programarse, SUPA suprime todos los offsets cero activos, offsets programados, offsets básicos y offsets de volante para retraer los ejes de forma segura al cero de coordenadas de la máquina.
Ejemplos de Programas
G290 ; Cambia el compilador al modo Siemens SINUMERIK nativo
N50 TRANS X10.0 Y10.0 Z10.0 ; Establece los componentes de traslación coarse absoluta
N60 G58 X20.0 ; Reemplaza el offset coarse absoluto del eje X con 20.0
N70 G59 X10.0 Y10.0 ; Reemplaza los componentes de offset fino aditivos de los ejes X e Y con 10.0
N80 G291 ; Cambia el compilador al modo de Dialecto ISO
N90 G10 L2 P6 X150.0 Y100.0 ; Dialecto ISO: Actualiza el offset del sistema de coordenadas de pieza G59
N100 G290 ; Vuelve al modo Siemens nativo
N110 SUPA G00 Z0 D0 M5 ; Suprime los offsets cero activos para retraer el eje Z de forma segura
ejecución en seco (dry run)
Durante una ejecución en seco del programa, el control primero ejecuta el comando G290 para establecer el compilador activo en el modo nativo Siemens SINUMERIK. El bloque N50 aplica TRANS to establecer los componentes de traslación coarse absoluta en 10.0 mm en los ejes X, Y y Z. A continuación, el bloque N60 ejecuta G58 para reemplazar el offset coarse absoluto en el eje X con 20.0 mm, manteniendo las traslaciones coarse de Y y Z en 10.0 mm. El bloque N70 ejecuta G59 para reemplazar los componentes de offset fino aditivo programable en los ejes X e Y con 10.0 mm. Luego, el control cambia al modo de Dialecto ISO usando G291 en el bloque N80. En el bloque N90, G10 L2 P6 actualiza el registro de offset WCS G59 en la memoria. Finalmente, el bloque N100 vuelve al modo nativo y el bloque N110 ordena SUPA para suprimir todos los offsets cero activos y de herramientas, moviendo el eje Z de forma segura de regreso al cero de coordenadas físicas de la máquina.
Análisis de Errores
| Código de Alarma | Condición de Activación | Síntoma del Operador | Solución / Remedio |
|---|---|---|---|
| Alarm 18312 | Intentar programar el componente de offset fino G59 o G58 mientras el parámetro de datos de máquina MD 24000 está establecido en 0. | El intérprete detiene la ejecución del bloque y muestra un error de configuración de offset fino. | Configure MD 24000 = 1 en los datos de máquina para habilitar los offsets finos. |
| Alarm 14800 | Intentar el movimiento de ejes tras cambios de offset cero G59 cuando el avance de trayectoria F es cero. | El movimiento de los ejes se detiene inmediatamente con una advertencia de velocidad cero. | Programe un avance F válido o active avances fijos. |
| Alarm 12080 | Ordenar actualizaciones de offset G10 ISO mientras el compilador está en el modo nativo de Siemens (G290). | La exploración del programa se detiene y reporta un error de sintaxis no reconocido. | Inserte un comando G291 antes del bloque G10 para activar el compilador ISO. |
Nota de Aplicación
La parada total de la producción y costosas piezas rechazadas ocurren de inmediato cuando el control Siemens detiene el ciclo de mecanizado con la Alarm 18312 debido a que se ordenó el offset aditivo G59 pero el parámetro MD 24000 $MC_FRAME_ADD_COMPONENTS está configurado en 0. Para evitar que la herramienta choque contra las mordazas de la prensa o el plato del spindle por no tener activo el offset fino, es mandatorio que el operador configure el MD 24000 en 1 en los datos de máquina de Sinumerik. Asimismo, programar movimientos axiales inmediatos tras cambiar los offsets con una velocidad de trayectoria evaluada en cero activará la Alarm 14800, congelando el movimiento de los ejes. Para mitigar estos riesgos de tiempo de inactividad imprevisto y prevenir que la torreta indexe fuera de trayectoria, se deben definir zonas de protección virtuales seguras mediante limitaciones de área de trabajo G25/G26 (WALIMON/WALIMOF) alrededor del chuck de torno o la mordaza de fresado. Realizar una verificación inicial y ejecutar un bloque de paso tras programar frames de microajuste garantiza la actualización del búfer y mantiene el tiempo de ciclo bajo control.
Red de Comandos Relacionados
- G58: Offset cero absoluto programable axial que actúa como el componente de offset coarse junto con los offsets finos G59.
- G57: Offset cero configurable 4 que define el sistema de coordenadas base antes de aplicar los offsets programables.
- G53: Comando de supresión de frame no modal utilizado para desactivar temporalmente los offsets programables y configurables para un posicionamiento seguro en coordenadas de máquina.
- TRANS / ATRANS: Frames de offset cero absolutos y aditivos sustitutivos que definen nuevos orígenes de coordenadas temporales.
- G290 / G291: Comandos de compilador bilingües utilizados para alternar el controlador entre el modo nativo de SINUMERIK y el modo de Dialecto ISO heredado.
Conclusión
La configuración del parámetro MD 24000 en valor 1 y la programación de G59 en un bloque independiente constituyen la recomendación de producción fundamental para implementar microajustes de precisión en controles Siemens. El operador de taller debe verificar la correcta adición de los componentes de offset coarse y fine en la pila de frames de SINUMERIK antes de presionar el inicio de ciclo. La integración secundaria de las funciones de límite de área de trabajo G25/G26 añade una salvaguarda de seguridad de hardware virtual indispensable, previniendo colisiones mecánicas severas de la torreta y asegurando que las piezas procesadas cumplan rigurosamente con las tolerancias de calidad sin generar scrap.
Preguntas Frecuentes (FAQ)
¿Cómo se activa el desvío fino programable G59 en un control Siemens sin activar alarmas?
Para activarlo de forma segura, asegúrese de que el parámetro de máquina MD 24000 esté configurado en 1 y programe el bloque G59 de forma aislada sin comandos de interpolación de geometría. Como acción práctica, realice siempre un reinicio rápido del control (warm restart) después de modificar los parámetros del frame para asegurar su correcta carga en memoria.
¿Qué causa la detención del ciclo con la Alarm 18312 al programar G59?
La Alarm 18312 se genera si el procesador del control SINUMERIK intenta aplicar un desplazamiento de offset fino aditivo a través de G59 pero la función de componentes de frame aditivos está desactivada por el software de control. Como acción práctica, cambie el bit de habilitación en el parámetro MD 24000 a valor 1 y verifique la tabla de offsets activos antes de reanudar la ejecución.
¿Por qué se produce la Alarm 14800 tras modificar los offsets cero de Siemens?
Esta alarma se activa si el preprocesador NC lee una orden de movimiento axial evaluando una velocidad de avance del camino (trayectoria F) igual a cero tras la transición de un frame. Como acción práctica, incluya una palabra F con un avance de trabajo válido o asegure la llamada a una tasa de avance por defecto para evitar paradas del ciclo de mecanizado.
¿Aún no se ha resuelto?
Pregunta a nuestro asistente de IA sobre este tema en lenguaje natural. Basado en fuentes verificadas, sin alucinaciones.

- CNC CARE Co-Founder (May 2025 - Present)
- Mitsubishi Electric NC Sales & Service Section Manager (2008 - 2025)
- Reis CNC Service Engineer (2003 - 2008)
- Ören Kalıp CNC Mold Line Team Leader (1999 - 2002)
Con más de 25 años de experiencia trabajando en todas las áreas de la industria de máquinas CNC, continúo mis actividades como cofundador de CNC CARE, donde ofrecemos servicios de consultoría, ingeniería y repuestos originales independientes de la marca.
Artículos relacionados
Otros artículos sobre este tema
Guía de Programación de G71 y G710 en Controles Siemens SINUMERIK
Aprenda a programar dimensionamiento métrico con G71 y G710 en Siemens. Evite el Alarm 14800 por velocidad cero y configure el parámetro MD 10240 sin errores.
Cancelación de Corte Balanceado G69: Recuperación de Coordenadas
Aprenda a programar la cancelación de corte balanceado G69 en tornos CNC Fanuc, Siemens y Mitsubishi. Desactive la sincronización de torretas y evite colisiones.
Ciclo de Acabado G70 en CNC: GuÃa Fanuc, Siemens y Mitsubishi
Aprenda a programar el ciclo de acabado G70 en torneado CNC. Domine parámetros, códigos de alarma y sintaxis para controles Fanuc, Siemens CYCLE95 y Mitsubishi.
Cancelación de Rotación de Coordenadas G69: Guía CNC y Alarmas
Aprenda a cancelar el espejo G68 y la rotación de coordenadas usando G69 en Fanuc, Siemens y Mitsubishi para evitar colisiones catastróficas de la torreta.