Skip to main content
CNC.wiki

Guía de G55 en CNC: Secretos del Sistema de Coordenadas de Pieza 2

Descubra cómo configurar el sistema de coordenadas G55 en controles CNC de Fanuc, Siemens y Mitsubishi. Evite colisiones catastróficas y reduzca piezas rechazadas.

Hakan Gündoğdu
Hakan Gündoğdu

Cofundador de CNC CARE

Introducción

Una colisión violenta del spindle o de la turret de herramientas contra una mordaza de mordaza (vise jaw) o contra las bridas de sujeción de la mesa puede ocurrir en milisegundos debido a una mala configuración del sistema de coordenadas de pieza G55. 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. Este error no solo genera piezas rechazadas de inmediato, sino que provoca daños mecánicos severos en los engranajes de la torreta y en los husillos de bolas, deteniendo por completo el flujo de trabajo en el taller CNC. El tiempo de inactividad resultante de reparar la máquina y recalibrar los ejes destruye la rentabilidad y el tiempo de ciclo planificado para el lote de producción.

Resumen Técnico

PropiedadEspecificación Técnica
Código de ComandoG55 (Selección del Sistema de Coordenadas de Pieza 2 / Ajuste de Ofset de Cero 2)
Grupo ModalGrupo 14 (Fresado Fanuc), Grupo 12 (Torneado Fanuc / Torno Mitsubishi), Grupo 8 (Siemens Nativo), Grupo 14 (Siemens ISO Dialect)
Marcas SoportadasFanuc, Siemens, Mitsubishi
Parámetros CríticosFanuc Parameter 5040 Bit 3 (TCT), Siemens MD 28080 $MC_MM_NUM_USER_FRAMES, Mitsubishi Parameter #1151 rstint
Restricciones PrimariasNo se puede combinar con el control de superficie inclinada/TCP (Mitsubishi); parámetros bloqueados por hardware en Siemens 802D sl; cambios de parámetros bloqueados mientras los offsets están activos (Fanuc)

Lectura Rápida

  • Selección de Coordenadas: Programe G55 para activar el sistema de coordenadas de pieza secundario, desplazando el origen de coordenadas con respecto al cero de referencia de la máquina sin cancelar las compensaciones activas de longitud de herramienta o de radio de punta R.
  • Reusabilidad de Subprogramas: Sujete dos piezas idénticas (una bajo G54 y la otra bajo G55) para mecanizar geometrías idénticas llamando al mismo subprograma con ceros desplazados.
  • Escritura Programable G10: Utilice G10 L2 P2 en modo absoluto (G90) o incremental (G91) para actualizar programáticamente los valores de offset de G55 desde el propio programa NC.
  • Riesgo de Modificación en Single-Block: Nunca reanude el mecanizado inmediatamente después de alterar los offsets de G55 durante una parada de bloque único (single-block stop), ya que el cambio solo tendrá efecto a partir del bloque siguiente.
  • Bloqueo de Seguridad de Offset Activo: Cancele siempre los offsets activos usando G49 antes de intentar modificar el Fanuc parameter 5040 Bit 3 (TCT), o de lo contrario se activarán las alarmas del sistema.
  • Alternancia de Compilador Bilingüe: Recuerde cambiar el control Siemens al modo ISO mediante G291 antes de ejecutar los comandos de escritura de coordenadas G10 estándar.
  • Interbloqueos de Control de Movimiento: Asegúrese de que el control de superficie inclinada simple (G176) y el control de punto central de herramienta (G174) estén desactivados en las máquinas Mitsubishi antes de seleccionar G55.

Conceptos Básicos

La implementación del sistema de coordenadas de pieza G55 en un control CNC desplaza los registros de coordenadas absolutas activos con respecto al sistema de coordenadas básico de la máquina. Este comando preparatorio establece un punto cero de programa localizado directamente sobre la materia prima, lo que permite a los programadores definir trayectorias de herramienta con relación a la geometría física de la pieza en lugar de basarse en el dato de referencia de la máquina.

Los contornos simétricos o las configuraciones de múltiples piezas de trabajo se pueden mecanizar dinámicamente a lo largo de la bancada de la máquina mediante el establecimiento de orígenes de coordenadas independientes. Por ejemplo, un operador puede asegurar una pieza de trabajo en una mordaza de mordaza primaria (vise jaw) registrada bajo G54 y a la vez una segunda pieza de trabajo idéntica en una mordaza de mordaza secundaria registrada bajo G55. Al cambiar simplemente de sistema de coordenadas y llamar al mismo subprograma de mecanizado, el CNC ejecuta la misma secuencia de bloques de programa en la ubicación secundaria, lo que reduce la longitud del programa y minimiza los errores de programación.

Cuando se ordena una transición de coordenadas a G55, el kernel de movimiento del CNC no cancela las compensaciones de longitud de herramienta activas ni los offsets de radio de punta de herramienta. En su lugar, el control recalcula dinámicamente los vectores de offset activos y los aplica directamente en relación con el cero de pieza G55 recién seleccionado, garantizando una transición de contorno continua sin interrupción de la trayectoria ni axis dwell.

Estructura de Comandos

El comando G55 actúa como un interruptor modal que redirige todos los comandos de coordenadas posteriores al registro secundario de coordenadas de pieza. El controlador CNC hace referencia a los valores de offset de coordenadas almacenados en el registro G55, que representan la distancia absoluta desde el punto cero físico de la máquina hasta el punto cero de la pieza. Una vez ejecutado G55, el control aplica estos valores de offset a todos los movimientos de coordenadas absolutas hasta que se especifique otro comando de sistema de coordenadas de pieza, como G54 o G56.

Además de la introducción manual de offsets en el panel de control, los offsets de G55 se pueden modificar programáticamente durante la ejecución del programa. Esto se logra mediante el comando de entrada de datos programable G10, donde la dirección L2 designa la escritura estándar de coordenadas de pieza y la dirección P2 selecciona el registro G55. Esto permite realizar ajustes dinámicos, como actualizar los offsets de cero para compensar la variación de la materia prima o el ancho de apriete del chuck.

; Sintaxis de fresado Fanuc
G90 G55 G00 X[x_coord] Y[y_coord] Z[z_coord] ;

; Sintaxis de torneado Fanuc Sistema A G55 X[x_coord] Z[z_coord] ; G55 U[x_incremental] W[z_incremental] ;

; Sintaxis de modo SINUMERIK nativo de Siemens G55 ;

; Sintaxis de offset programable G10 de Mitsubishi e ISO general G90 G10 L2 P2 X[x_offset] Y[y_offset] Z[z_offset] ;

Dirección / ParámetroFunción del SistemaValor / Rango
L2Especifica la entrada de datos de offset del sistema de coordenadas de pieza estándarConstante
P2Designa el sistema de coordenadas de pieza de destino (se asigna directamente a G55)Constante
X, Y, ZValores de coordenadas de eje absolutas u offsets de ceroRango de recorrido de la máquina
U, WCoordenadas de eje incrementales (torneado de torno Sistema A)Rango de recorrido de la máquina

Aplicaciones de Marca

Fanuc

En los controles Fanuc, el sistema de coordenadas de pieza G55 desplaza el origen absoluto en relación con el home de la máquina. La configuración del sistema depende del Parameter 5040 Bit 3 para habilitar la compensación de longitud de herramienta, y del Parameter 0001 Bit 1 para gestionar la emulación de programas de series heredadas.

La sintaxis de programación para centros de fresado utiliza el comando G90 G55 G00 X__ Y__ Z__ para realizar un posicionamiento rápido a coordenadas absolutas. En tornos que utilizan el G-code Sistema A, los movimientos absolutos se comandan como G55 X__ Z__, mientras que los ajustes incrementales se ejecutan a través de G55 U__ W__. Para modificar programáticamente el registro de offset de G55, se ejecuta el comando G90 G10 L2 P2 X__ Y__ Z__.

CategoríaElemento / CódigoDescripción / Condición
ParámetrosParameter No. 5040 Bit 3 (TCT)Tool Change Type: Se establece en 1 para habilitar las compensaciones de longitud de herramienta positivas/negativas (G43/G44) y la cancelación (G49).
ParámetrosParameter No. 0001 Bit 1 (FCV)Activación del formato de programa de la Serie 15: Si se establece en 1, el control utiliza los formatos de programa heredados, modificando la interpretación de los canned cycles y ciclos repetitivos.
ParámetrosParameter No. 5431 Bit 0 (MDL)Asignación de grupo del posicionamiento unidireccional (G60). Si es 0, Grupo 00 (no modal); si es 1, Grupo 01 (modal).
ParámetrosParameter No. 3405 Bit 3 (G36)Determina si G36 representa roscado circular CCW (1) o offset de herramienta automático en el eje X (0).
AlarmasAlarm PS1144Código de cambio de herramienta T especificado dentro de un bloque de entrada de datos programable activo (G10). Solución: Eliminar el código T del bloque G10.
AlarmasAlarm PS0368Intento de modificar el parámetro de compensación de longitud de herramienta TCT (Parameter No. 5040 Bit 3) mientras el offset de posición o longitud de herramienta está activo. Solución: Desactivar los offsets mediante G49 antes de modificar el parámetro.
AlarmasAlarm PS0082Código de cambio de herramienta T especificado en el mismo bloque que un comando G36 o G37. Solución: Separar el código T y el bloque de medición.
AlarmasAlarm PS0508Rotación del sistema de coordenadas (G68) especificada en ejes paralelos sin alineación del sistema de coordenadas del programa (movimiento absoluto G90) en el bloque precedente. Solución: Programar un comando de movimiento absoluto G90 para todos los ejes paralelos en el bloque precedente.
VersionesSeries 15 Format vs ModernLos formatos heredados de Fanuc se emulan en controles modernos utilizando el Parameter No. 0001 Bit 1 (FCV). Establecer FCV en 1 cambia las evaluaciones de cajeras de ciclo (cycle pocket) y trayectorias de herramienta; ejecutarlos con FCV establecido en 0 provoca fallas en el perfil.

Los operadores deben asegurarse de que todos los offsets de longitud de herramienta activos estén cancelados mediante el comando G49 antes de cambiar los valores de los parámetros. Intentar cambiar los parámetros de compensación mientras los offsets están activos activará las alarmas del sistema y provocará desviaciones en la trayectoria.

Siemens

En los controles Siemens SINUMERIK, el settable zero offset G55 se gestiona bajo el Grupo 8. Las variables del sistema y las asignaciones de memoria se configuran mediante parámetros de datos de máquina (machine data) como MD 28080 y MD 18800 para asignar user frames y habilitar la compilación bilingüe.

En el modo nativo de Siemens, el cambio a G55 se ordena con un bloque G55 solo. Bajo el modo ISO Dial activado por G291, G55 se establece de forma programable a través de G10 L2 P2 X__ Y__ Z__. Las manipulaciones de frame nativas se borran o apilan utilizando los comandos TRANS o ATRANS en relación con el frame G55.

CategoríaElemento / CódigoDescripción / Condición
ParámetrosMD 28080 $MC_MM_NUM_USER_FRAMESNúmero de offsets de trabajo: Define el total de user frames asignados en memoria (G54-G59, G505-G599).
ParámetrosMD 18800 $MN_MM_EXTERN_LANGUAGEActivación de lenguajes NC externos: Debe establecerse en 1 para activar el compilador externo de ISO Dialect (requerido para G291/G10).
ParámetrosMD 20734 $MC_EXTERN_FUNCTION_MASK (Bit 13)Fuerza una parada interna del preprocesador (STPPRE) durante los comandos de escritura G10 para una sincronización inmediata en el bloque de ejecución principal.
ParámetrosMD 20150 $MC_GCODE_RESET_VALUES[n]Determina los G-codes activos por defecto para los grupos G al reiniciar o encender (por ejemplo, valor predeterminado del Grupo 8: G500 o G54).
ParámetrosMD 24004 $MC_CHBFRAME_POWERON_MASKControla si el frame básico específico del canal se restablece después del encendido.
AlarmasAlarm 61800Se alternó a G291 o se ejecutó la modificación del offset G10 mientras los datos de máquina del lenguaje externo MD 18800 están desactivados. Solución: Habilitar MD 18800 $MN_MM_EXTERN_LANGUAGE o el bit de opción 19800.
AlarmasAlarm 14800Movimiento ordenado en el bloque G55 pero el feedrate de trayectoria programado F se evalúa como F0 y la función "Fixed feedrates" está inactiva. Solución: Especificar un feedrate distinto de cero.
AlarmasAlarm 12080El compilador analizó comandos no reconocidos o experimentó conflictos de formato (por ejemplo, comandos nativos de Siemens en modo ISO dialect). Solución: Asegurarse de que el modo del compilador coincida con la sintaxis del G-code (por ejemplo, usar G290 para nativo).
AlarmasAlarm 14060El nivel de salto de bloque programado se evalúa en < 1 o > 9. Solución: Corregir el nivel de salto en el comentario/código.
VersionesSINUMERIK 840D sl vs 802D slEl SINUMERIK 802D sl compacto tiene parámetros bloqueados por hardware (MD 10604, MD 10706, MD 20154) que no se pueden ajustar y carece de opciones de evasión de colisiones. Los parámetros globales son completamente ajustables en el 840D sl y el 828D.
VersionesMulti-Edge TurningLas funciones preparatorias de torneado avanzado G51.2 (ON) y G50.2 (OFF) son compatibles con el 840D sl pero se omiten en el 802D sl.
VersionesBlock Skip levelsSiemens trata / y /1 como niveles de salto independientes que deben activarse por separado, a diferencia de los controles ISO originales. Configurado mediante MD 10706 SLASH_MASK.

Los operadores deben programar limitaciones del área de trabajo (G25/G26 o WALIMON/WALIMOF) para definir zonas de protección activas alrededor de equipos sensibles como el spindle o la turret para evitar colisiones durante los desplazamientos de coordenadas.

Mitsubishi

En los controles Mitsubishi, G55 pertenece a los comandos modales del Grupo 12 de G-code. La retención modal durante los reinicios del NC se configura utilizando el Parameter #1151, y la resolución de coordenadas se define mediante el Parameter #1003.

Para seleccionar el sistema de coordenadas G55, se ejecuta el comando G90 G55 G00 X__ Y__ Z__. La entrada del offset de cero programable se logra a través de G90 G10 L2 P2 X__ Y__ Z__, donde P2 corresponde a G55. Alternativamente, los valores de offset se pueden escribir directamente en la variable del sistema #5241 para el eje X.

CategoríaElemento / CódigoDescripción / Condición
ParámetrosParameter #1151 rstintReset Initial: Si es 0, los modales activos de coordenadas de pieza se conservan en segundo plano durante el reinicio del NC (Reset 1).
ParámetrosParameter #1210 RstGmd/bitFConfiguración de reinicio de G-code modal: Configura si las selecciones del sistema de coordenadas modal se inicializan o se conservan al reiniciar.
ParámetrosParameter #1003 iunitUnidad de ajuste de entrada: Define la resolución de entrada de coordenadas (de B a E) y los límites de ajuste.
AlarmasProgram Error (P951)Se ejecutó la selección del sistema de coordenadas de pieza (G54 a G59) mientras el control de superficie inclinada simple (G176) está activo. Solución: Desactivar el control de superficie inclinada simple antes del cambio de coordenadas.
AlarmasProgram Error (P942)Se ejecutó la selección del sistema de coordenadas mientras el control de punto central de herramienta simple (G174) está activo. Solución: Desactivar el control de punto central de herramienta antes del cambio de coordenadas.
AlarmasProgram Error (P953)Se ejecutó la selección del sistema de coordenadas de pieza mientras el control de dirección del eje de herramienta (G53.1 o G53.6) está activo. Solución: Cancelar primero el control de dirección del eje de herramienta.
AlarmasProgram Error (P35)El comando G10 L2 Pn se especifica con un rango de valor de parámetro que excede el límite máximo (por ejemplo, P7 o superior, o un offset fuera de rango). Solución: Limitar la dirección P de P1 a P6 para offsets estándar.
VersionesM80V Type B Series constraintsLa ejecución de configuraciones de coordenadas de pieza extendidas durante los modos activos de mecanizado a alta velocidad o control de alta precisión está bloqueada y activa el Program Error (P39) o (P34).

Los operadores deben tener en cuenta que si los valores de offset de coordenadas se modifican durante una parada de bloque único (single-block stop), los nuevos ajustes solo se aplicarán a partir del bloque siguiente. Reanudar el mecanizado inmediatamente ejecutará las coordenadas utilizando el offset antiguo, con el riesgo de una colisión grave.

Comparación de Marcas

Tema de ComparaciónFanucSiemensMitsubishi
Asignación de Grupo de G-codeGrupo 14 (Fresado), Grupo 12 (Torneado)Grupo 8 (Modo SINUMERIK Nativo), Grupo 14 (Modo ISO Dialect)Grupo 12 (Sistema de Torno)
Sintaxis de Comando IncrementalCaracteres de dirección combinados U y W (Torneado Sistema A)Gestionado modalmente a través de G91 o offsets de frame activos específicosGestionado modalmente a través de G91
Requisito de Compilador BilingüeNo requerido; análisis continuoAlternancia de compilador bilingüe mediante G290 (Nativo) y G291 (ISO Dialect)No requerido; cambio de formato modal mediante G188/G189
Interbloqueo de Parámetros de Offset ActivosBloqueo de software riguroso; los cambios en los parámetros de la herramienta se bloquean y activan la Alarm PS0368 bajo offsets activosRegistros de filo de corte flexibles (códigos D); las supresiones de parámetros son configurablesInterbloqueo bloqueado por software durante el desplazamiento local G52 activo en versiones antiguas de firmware (Program Error P438)
Métodos de Desplazamiento ProgramablesEntradas de offset estándar G10Estructuras de frame (TRANS/ATRANS) con apilamiento y supresión de coordenadasComandos de offset de coordenadas locales G52 y escritura directa en variables del sistema
Soporte de Retroceso ManualNo compatible con el seguimiento de coordenadas activoDeselecciona los modales G55 durante el retroceso del frame nativoEl retroceso manual arbitrario G127 rastrea y mantiene las coordenadas G55 activas

Análisis Técnico

El manejo arquitectónico de las transiciones de coordenadas absolutas e incrementales durante un estado activo de G55 varía significativamente entre los tres controladores. La programación de torno de Fanuc (G-code Sistema A) permite combinar coordenadas de eje absolutas (X, Z) y coordenadas de eje incrementales (U, W) en el mismo bloque de programa sin ejecutar un cambio modal G90/G91. Por el contrario, los sistemas Siemens y Mitsubishi dependen de tablas modales del Grupo 3 o de modificadores específicos del eje para dictar la traducción de coordenadas. Esto hace que el sistema de dirección dual de Fanuc sea altamente eficiente para trabajos de torno, pero requiere que los programadores sean cautelosos con las convenciones de dirección de ejes.

La compilación bilingüe y el apilamiento de frames (frame stacking) diferencian aún más a Siemens de sus homólogos japoneses. Los controles Siemens SINUMERIK requieren que el programador ejecute un comando G291 para cambiar el compilador al modo ISO Dialect con el fin de procesar bloques estándar G10 o G55, y un comando G290 para volver al modo nativo de Siemens. Siemens también gestiona los offsets de cero dentro de una pila de frames de varios niveles, lo que permite que los offsets G55 de base se superpongan dinámicamente con frames absolutos (TRANS) o aditivos (ATRANS). Sin embargo, debido a que los frames absolutos nativos son comandos de sustitución, la ejecución de un bloque TRANS vacío para cancelar una traslación temporal elimina automáticamente las rotaciones (ROT) o el espejo (MIRROR) activos superpuestos sobre G55, mientras que Fanuc y Mitsubishi manejan las rotaciones y el espejo de coordenadas a través de grupos modales independientes y cancelables de forma individual.

Los interbloqueos de compensación de herramienta y las capacidades de intervención manual introducen comportamientos operativos y de seguridad distintos. Los de Fanuc imponen un estricto interbloqueo bloqueado por software que impide cualquier modificación de los parámetros de compensación de longitud de herramienta, como el Parameter 5040 Bit 3, mientras se aplican offsets de herramienta activos, activando la Alarm PS0368 si se viola. Siemens y Mitsubishi manejan los offsets de longitud a través de registros de filo de corte activos (códigos D), lo que ofrece una mayor flexibilidad en el programa. Sin embargo, Mitsubishi implementa una función especializada de retroceso manual arbitrario (G127) que permite a los operadores girar manualmente el volante (handwheel) hacia atrás durante una ejecución; el kernel de movimiento de Mitsubishi rastrea y recupera los offsets G55 activos durante este retroceso. Fanuc carece de esta capacidad de rastreo inverso, y Siemens deselecciona automáticamente los modales de offset de cero durante el retroceso del frame nativo.

Ejemplos de Programas

Ejemplo de Fanuc

O1001 ;
N10 G90 G21 G40 G49 G80 ;
N20 G10 L2 P2 X-250.5 Y-150.0 Z-400.2 ;
N30 G00 G90 G55 X0 Y0 ;
N40 G43 H01 Z50.0 M03 S1500 ;
N50 G01 Z-5.0 F150.0 ;
N60 X50.0 Y50.0 ;
N70 G00 Z100.0 M05 ;
N80 G49 G53 G00 X0 Y0 Z0 ;
N90 M30 ;

Ejecución en seco (dry run)

  • N10: Inicializa el estado del control, estableciendo el modo de programación absoluto (G90), la unidad de entrada métrica (G21), cancelando la compensación de radio de herramienta (G40), desactivando la compensación de longitud de herramienta (G49) y cancelando los canned cycles (G80).
  • N20: Utiliza el comando de ajuste de datos programable G10 con el tipo de offset L2 (offset de coordenadas de pieza) y el destino P2 (que corresponde a G55) para cargar los valores de offset de coordenadas absolutas X-250.5, Y-150.0 y Z-400.2 en el registro G55.
  • N30: Selecciona el sistema de coordenadas de pieza 2 (G55) and realiza un posicionamiento rápido de los ejes X e Y al origen de coordenadas localizado (X0, Y0).
  • N40: Activa la compensación de longitud de herramienta positiva (G43) utilizando el índice de offset de herramienta H01, mueve rápidamente el eje Z a una altura de seguridad de Z50.0 en relación con el cero de la pieza G55 y arranca el spindle en sentido horario (CW) a 1500 rpm.
  • N50: Realiza una penetración con avance lineal (G01) a lo largo del eje Z hasta una profundidad de Z-5.0 con un feedrate de 150.0 mm/min.
  • N60: Interpola linealmente hacia las coordenadas X50.0, Y50.0 en relación con el cero de programa G55, mecanizando la pieza de trabajo.
  • N70: Retrae la herramienta a un plano de seguridad de Z100.0 a velocidad rápida y detiene el spindle (M05).
  • N80: Cancela la compensación de longitud de herramienta (G49) y realiza un posicionamiento rápido de los ejes directamente al cero del sistema de coordenadas de la máquina (G53 X0 Y0 Z0) para una carga segura de la pieza.
  • N90: Termina el programa y rebobina la memoria (M30).

Ejemplo de Siemens

N10 G90 G710 G40 ;
N20 G291 ;
N30 G10 L2 P2 X-250.5 Y-150.0 Z-400.2 ;
N40 G290 ;
N50 G55 G00 X0 Y0 ;
N60 T1 D1 M3 S1500 ;
N70 G00 Z50.0 ;
N80 G01 Z-5.0 F150.0 ;
N90 TRANS X20.0 Y20.0 ;
N100 G01 X30.0 Y30.0 ;
N110 TRANS ;
N120 G00 Z100.0 M5 ;
N130 G500 G00 X0 Y0 Z0 ;
N140 M30 ;

Ejecución en seco

  • N10: Establece las coordenadas absolutas en modo nativo de Siemens (G90), unidades métricas (G710) y cancela la compensación de radio de herramienta (G40).
  • N20: Cambia el compilador al modo ISO Dialect (G291) para interpretar los G-codes estándar de ISO.
  • N30: Escribe las coordenadas de offset de pieza X-250.5, Y-150.0 y Z-400.2 directamente en los registros de offset de G55 utilizando G10 L2 P2.
  • N40: Devuelve el compilador al modo nativo Siemens SINUMERIK (G290).
  • N50: Activa el user frame de settable zero offset G55 y posiciona rápidamente los ejes X e Y en el punto cero del programa (X0, Y0).
  • N60: Carga la herramienta T1, activa el offset del filo de corte activo D1 y arranca el spindle en sentido horario a 1500 rpm.
  • N70: Mueve rápidamente el eje Z a un plano de holgura de seguridad de Z50.0 en relación con el cero del frame G55.
  • N80: Hace avanzar la herramienta linealmente hasta una profundidad de Z-5.0 con un feedrate de trayectoria de 150.0 mm/min.
  • N90: Ordena un offset de cero programable absoluto TRANS X20.0 Y20.0, desplazando el origen del programa en 20 mm tanto en el eje X como en el Y en relación con el sistema de coordenadas G55 activo.
  • N100: Ejecuta un comando de interpolación lineal a X30.0, Y30.0 evaluado desde el origen de coordenadas local recién desplazado.
  • N110: Ejecuta un comando TRANS solo, que cancela la transformación del frame local activa, devolviendo el origen del programa directamente al punto cero de base de G55.
  • N120: Retrae la herramienta a la altura de seguridad Z100.0 y detiene el spindle.
  • N130: Desactiva todos los frames ajustables activos utilizando G500 y desplaza rápidamente los ejes al cero de la máquina.
  • N140: Finaliza la ejecución del programa y rebobina la memoria (M30).

Ejemplo de Mitsubishi

N10 G90 G21 G40 G49 G80 ;
N20 G90 G10 L2 P2 X-250.5 Y-150.0 Z-400.2 ;
N30 G90 G55 G00 X0 Y0 ;
N40 M06 T01 ;
N50 G43 H01 Z50.0 M03 S1500 ;
N60 G01 Z-5.0 F150.0 ;
N70 #5241 = -252.0 ;
N80 G01 X50.0 Y50.0 ;
N90 G00 Z100.0 M05 ;
N100 G49 G53 G00 X0 Y0 Z0 ;
N110 M02 ;

Ejecución en seco

  • N10: Inicializa los parámetros de control estableciendo el modo absoluto (G90), la unidad de entrada métrica (G21) y cancelando las compensaciones y ciclos activos.
  • N20: Establece programáticamente los valores de offset de coordenadas de pieza para G55 (P2) en X-250.5, Y-150.0 y Z-400.2 utilizando la estructura G10 L2 P2.
  • N30: Selecciona el sistema de coordenadas G55 y realiza un posicionamiento rápido de los ejes X e Y a las coordenadas de programa locales X0, Y0.
  • N40: Executes a tool change command (M06) to load tool T01.
  • N50: Activa la compensación de longitud de herramienta (G43) utilizando el registro de offset de herramienta H01, posiciona rápidamente el eje Z en Z50.0 y arranca el spindle en sentido horario a 1500 rpm.
  • N60: Hace avanzar la herramienta linealmente en la pieza de trabajo hasta una profundidad de Z-5.0 con un feedrate de 150.0 mm/min.
  • N70: Escribe un valor de -252.0 directamente en la variable del sistema #5241, modificando el offset activo del eje X en G55. Tenga en cuenta que debido a que esta escritura ocurre a mitad del programa, el nuevo offset solo se activa a partir del bloque siguiente.
  • N80: Realiza un movimiento lineal a X50.0, Y50.0 evaluado a partir del valor de offset del eje X recién actualizado, mecanizando la materia prima.
  • N90: Retrae rápidamente el eje Z a Z100.0 y ordena la parada del spindle (M05).
  • N100: Cancela la compensación de longitud de herramienta (G49) y realiza un posicionamiento rápido de los ejes al cero de la máquina (G53 X0 Y0 Z0).
  • N110: Finaliza la ejecución del programa (M02).

Análisis de Errores

MarcaCódigo de AlarmaCondición de ActivaciónSíntoma del OperadorCausa Raíz / Solución
FanucAlarm PS1144Código de cambio de herramienta T especificado dentro de un bloque de entrada de datos programable activo (G10).La ejecución del programa se detiene instantáneamente; el panel de control muestra "G10 FORMAT ERROR".Causa Raíz: Combinación de comandos no válida. Solución: Mover el código de cambio de herramienta T a un bloque separado.
FanucAlarm PS0368Intento de modificar el parámetro de compensación de longitud de herramienta TCT (Parameter No. 5040 Bit 3) mientras el offset de posición o longitud de herramienta está activo.La ejecución se detiene; el panel de control muestra "OFFSET REMAIN AT OFFSET COMMAND".Causa Raíz: Cambio de parámetro bloqueado mientras existen offsets activos. Solución: Programar G49 para cancelar los offsets activos antes de cambiar el parámetro.
FanucAlarm PS0082Código de cambio de herramienta T especificado en el mismo bloque que un comando G36 o G37.La ejecución se detiene; la pantalla muestra "G37 SPECIFIED WITH T CODE".Causa Raíz: Conflicto en el bloque de medición de offset de herramienta. Solución: Mover el código T a un bloque separado previo a la medición.
FanucAlarm PS0508Rotación del sistema de coordenadas (G68) especificada en ejes paralelos sin alineación del sistema de coordenadas del programa (movimiento absoluto G90) en el bloque precedente.La ejecución se detiene; la pantalla muestra "G CODE TO NEED G90(PAC)".Causa Raíz: Los ejes paralelos no están alineados. Solución: Programar un comando de movimiento absoluto G90 para todos los ejes paralelos en el bloque precedente.
SiemensAlarm 61800Se alternó a G291 o se ejecutó la modificación del offset G10 mientras los datos de máquina del lenguaje externo MD 18800 están desactivados.La ejecución se detiene; el control muestra "External CNC system missing".Causa Raíz: La opción del compilador de lenguaje externo está inactiva. Solución: Establecer MD 18800 $MN_MM_EXTERN_LANGUAGE en 1 o habilitar el bit de opción 19800.
SiemensAlarm 14800Movimiento ordenado en el bloque G55 pero el feedrate de trayectoria programado F se evalúa como F0 y la función "Fixed feedrates" está inactiva.La ejecución se detiene; el control muestra "Channel %1 Set %2 programmed path velocity is less than or equal to zero".Causa Raíz: Movimiento de eje ordenado con feedrate cero. Solución: Especificar un feedrate distinto de cero en el bloque o en los modales activos.
SiemensAlarm 12080El compilador analizó comandos no reconocidos o experimentó conflictos de formato (por ejemplo, comandos nativos de Siemens en modo ISO dialect).La ejecución se detiene; el control muestra "Syntax error".Causa Raíz: Comandos nativos compilados en modo ISO. Solución: Cambiar el compilador al modo nativo mediante G290 antes de ordenar instrucciones nativas.
SiemensAlarm 14060El nivel de salto de bloque programado se evalúa en < 1 o > 9.La ejecución se detiene; el control muestra "Impermissible skip level for differential block skip".Causa Raíz: Entrada de nivel de salto de bloque fuera de los límites. Solución: Corregir el número de salto de bloque para que esté entre 1 y 9 en el comentario o en el código.
MitsubishiProgram Error (P951)Se ejecutó la selección del sistema de coordenadas de pieza (G54 a G59) mientras el control de superficie inclinada simple (G176) está activo.La ejecución del programa se detiene; el panel de control muestra "Program Error (P951)".Causa Raíz: Cambio de coordenadas ordenado durante el modo de mecanizado inclinado. Solución: Programar la cancelación de superficie inclinada antes de la selección de coordenadas.
MitsubishiProgram Error (P942)Se ejecutó la selección del sistema de coordenadas mientras el control de punto central de herramienta simple (G174) está activo.La ejecución del programa se detiene; el panel de control muestra "Program Error (P942)".Causa Raíz: Cambio de coordenadas ordenado durante el control de punto central de herramienta. Solución: Desactivar el control de punto central de herramienta antes de seleccionar los sistemas de coordenadas.
MitsubishiProgram Error (P953)Se ejecutó la selección del sistema de coordenadas de pieza mientras el control de dirección del eje de herramienta (G53.1 o G53.6) está activo.La ejecución del programa se detiene; el panel de control muestra "Program Error (P953)".Causa Raíz: Cambio de coordenadas ordenado durante el control de dirección del eje de la herramienta. Solución: Cancelar primero el control de dirección del eje de la herramienta.
MitsubishiProgram Error (P35)El comando G10 L2 Pn se especifica con un rango de valor de parámetro que excede el límite máximo (por ejemplo, P7 o superior, o un offset fuera de rango).La ejecución del programa se detiene; el panel de control muestra "Program Error (P35)".Causa Raíz: El número del sistema de offset de pieza está fuera de rango. Solución: Limitar el rango de la dirección P de P1 a P6 para los sistemas de coordenadas de pieza estándar.

Nota de Aplicación

Una parada no planificada debido a una colisión catastrófica del husillo o torreta contra el chuck giratorio es el resultado directo de modificar los valores de offset de G55 durante una parada de bloque único (single-block stop) sin reiniciar la lectura del control. En los sistemas Mitsubishi, modificar los registros o la variable del sistema #5241 en pausa bloquea la actualización inmediata; el control procesa el nuevo offset solo desde el siguiente bloque, lo que hace que el eje se desplace con el valor antiguo y choque contra los clamps de la mesa o las garras del plato. Asimismo, en controles Fanuc, intentar cambiar el estado de la compensación de longitud sin cancelar antes los offsets activos genera la detención del sistema mediante la Alarm PS0368. Validar el parámetro Parameter No. 5040 Bit 3 (TCT) elimina la causa más frecuente de parada no planificada en este comando. En el caso de Siemens, la falta de sincronización del preprocesador al escribir con G10 activa la Alarm 61800 o Alarm 14800, arruinando la materia prima (raw stock) en milisegundos. Los operadores de CNC deben configurar correctamente las limitaciones del área de trabajo (G25/G26) y detener el preprocesador usando un stop de preprocesador (STPPRE o MD 20734 Bit 13) para evitar trayectorias no compensadas y proteger el spindle y la torreta durante el cambio a G55.

Red de Comandos Relacionados

  • G54 (Sistema de Coordenadas de Pieza 1): Selecciona el sistema de coordenadas de pieza primario, sirviendo como el ofset de cero por defecto con el que típicamente se compara o al que se transiciona a G55 durante las configuraciones de múltiples fixtures. Enlace: Sistema de Coordenadas de Pieza G54
  • G53 (Selección del Sistema de Coordenadas de la Máquina): Suprime temporalmente el offset del sistema de coordenadas de pieza G55 activo para permitir comandos de movimiento no modales en relación con el cero de referencia absoluto de la máquina para cambios de herramienta o retracción segura de ejes. Enlace: Selección de Coordenadas de Máquina G53
  • G52 (Sistema de Coordenadas Locales): Establece un desplazamiento local temporal con respecto al sistema de coordenadas de pieza G55 activo, desplazando el origen de coordenadas sin alterar los valores de offset de línea base almacenados en el registro G55. Enlace: Sistema de Coordenadas Locales G52
  • G10 (Entrada de Datos Programable): Actualiza los registros de offset del sistema de coordenadas, como G55, de forma programable durante la ejecución utilizando entradas absolutas o incrementales.

Conclusión

La recomendación de producción más eficaz para garantizar la seguridad del proceso y optimizar el tiempo de ciclo consiste en estandarizar la retracción absoluta de todos los ejes al cero de máquina (G53 X0 Y0 Z0) antes de cambiar al sistema de coordenadas G55. Adicionalmente, todo operador debe ejecutar un ciclo de ejecución en seco (dry run) completo y de velocidad reducida (override al 0%) después de cualquier modificación de offset en el panel de control. Implementar este protocolo de doble validación en el taller elimina la causa de colisiones mecánicas graves, reduce drásticamente la generación de piezas rechazadas y mantiene los estándares de precisión geométrica del lote sin generar paradas imprevistas en la línea de montaje.

Preguntas Frecuentes (FAQ)

¿Por qué se produce una colisión al modificar los offsets de G55 durante una parada de bloque único (single-block stop)?

Modificar el offset de G55 mientras el control está en pausa de bloque único no actualiza la trayectoria que el control ya ha cargado en la cola del preprocesador. El sistema ejecutará el movimiento usando el valor de offset anterior, desviando la herramienta hacia las mordazas o clamps de sujeción. Siempre que edite un valor de offset de G55 durante una pausa, presione Reset en el panel, rebobine el programa y reinicie el ciclo para forzar al interpretador a calcular la nueva trayectoria de forma segura.

¿Cómo solucionar la Alarm PS0368 en controles Fanuc al configurar las compensaciones bajo G55?

La Alarm PS0368 se activa en controles Fanuc porque el kernel de control bloquea la edición del parámetro crítico de tipo de cambio de herramienta TCT (Parameter 5040 Bit 3) si hay alguna compensación de longitud o radio activa. Esto previene un cambio repentino de coordenadas que dañaría el husillo. Agregue un bloque con el comando G49 en su programa de CNC antes del comando de escritura o modificación de parámetros, asegurándose de cancelar todas las compensaciones de herramienta antes de cualquier transición de configuración.

¿Cómo sincronizar inmediatamente los valores de G55 escritos con G10 en controles Siemens SINUMERIK?

Al escribir offsets de G55 usando G10 bajo el modo ISO Dialect en Siemens, el control puede continuar leyendo bloques antes de que el nuevo valor se escriba físicamente en la memoria de trabajo. Para solucionarlo, el parámetro MD 20734 Bit 13 obliga al compilador a detener la pre-lectura de bloques hasta que se complete la escritura. Programe un comando de parada de preprocesador explícito STOPRE inmediatamente después de la línea G10 en su código para asegurar que los siguientes bloques de movimiento utilicen los datos de offset actualizados.

¿Aún no se ha resuelto?

Pregunta a nuestro asistente de IA sobre este tema en lenguaje natural. Basado en fuentes verificadas, sin alucinaciones.

Preguntar al asistente de IA
Hakan Gündoğdu
Hakan Gündoğdu
  • 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