Skip to main content
CNC.wikiCNC.wiki

Guía de Modos de Avance CNC: Control y Programación de G94 y G95

Aprenda a dominar los modos de avance G94 y G95 en controles Fanuc, Siemens y Mitsubishi. Configure parámetros y evite colisiones en su torno o fresadora.

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

Cofundador de CNC CARE

Introducción

Una herramienta de metal duro se estrella violentamente a velocidad de avance rápido contra el plato de torno (chuck) giratorio, desalineando por completo la torreta (turret) indexable y provocando una parada no planificada inmediata por sobrecarga del servo. Este tipo de colisión catastrófica en el taller, que resulta en costosas piezas rechazadas (scrap) y un prolongado tiempo de inactividad (tiempo de inactividad), suele deberse a un error crítico al alternar entre los modos de velocidad de avance: programar una transición de G94 (avance por minuto) a G95 (avance por revolución) omitiendo declarar un nuevo valor de F. Dado que el avance F es modal, un valor de F250.0 (250 mm/min) programado en G94 se interpretará instantáneamente como 250 mm/rev al entrar en G95, forzando un avance destructivo a velocidad de rápido directa sobre el husillo (spindle). Validar el parámetro adecuado antes de la producción elimina la causa más frecuente de parada no planificada en este comando.

El control preciso de la velocidad de trayectoria bajo el avance asíncrono (G94) y síncrono (G95) es esencial para la eficiencia y la reducción del tiempo de ciclo en centros de mecanizado y tornos. Mientras que G94 regula el movimiento en milímetros o pulgadas por minuto de forma independiente de la velocidad del husillo (spindle), G95 acopla el avance de los ejes directamente al codificador del husillo, garantizando una carga de viruta constante por revolución (mm/rev). 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. En esta guía técnica exhaustiva, analizaremos en detalle la sintaxis, parámetros del sistema, alarmas críticas y diferencias operativas entre Fanuc, Siemens y Mitsubishi para asegurar un mecanizado seguro, libre de colisiones y optimizado.

Resumen Técnico

Atributo TécnicoDetalles de Especificación
Códigos de ComandoG94 (Feed per Minute) / G95 (Feed per Revolution); G98 / G99 bajo configuraciones de torno legacy.
Grupo ModalGrupo 05 (Fanuc / Siemens / Mitsubishi), estado modal.
Marcas SoportadasFanuc, Siemens, Mitsubishi.
Parámetros CríticosParameter 3402 (predeterminado de Fanuc), Parameter 13450 (MFC de Fanuc), Parameter #1074 (I_Sync de Mitsubishi), Parameter #1268 (tapping de Mitsubishi), $TC_DPNT (conteo de dientes de Siemens).
Restricción PrincipalLa velocidad del master spindle activo debe ser diferente de cero (girando) durante la ejecución de G95 para proporcionar pulsos de retroalimentación del encoder para el cálculo del movimiento del eje.

Lectura Rápida

  • Declare siempre explícitamente un nuevo valor de F en el mismo bloque al realizar la transición de G94 (feed per minute) a G95 (feed per revolution) para evitar que el control herede un valor modal de feedrate astronómicamente alto.
  • Asegúrese de que el spindle esté girando activamente (comando M03 o M04 con un S-code activo) antes de ejecutar cualquier movimiento de corte G95, o los ejes permanecerán inmóviles o activarán una alarma de spindle detenido.
  • Comprenda que el uso de velocidad de corte constante (G96) con G95 hace que el feedrate del eje se acelere violentamente en tiempo real a medida que la herramienta se acerca al centro del spindle, lo que requiere una configuración cuidadosa de las limitaciones de velocidad del spindle G92/G50.
  • Verifique la configuración de parámetros como el Fanuc 13450 bit 4 (MFC), que se puede habilitar para emitir automáticamente una alarma PS0011 y detener la máquina si se omite un F-code durante una transición de modo de avance.
  • Utilice gráficos de ejecución en seco (dry run) o pantallas de simulación para verificar los vectores de sincronización, teniendo en cuenta que la activación física de la ejecución en seco (interruptor de Dry Run) normalmente anula el G95 y hace funcionar los ejes a velocidades de jog manual.
  • Para entornos multi-spindle, verifique que la asignación del master spindle esté correctamente direccionada para que el feedrate se sincronice con el chuck físico activo que sujeta la pieza de trabajo.

Conceptos Básicos

La principal distinción operativa entre los modos de feedrate es cómo el intérprete CNC escala la velocidad de trayectoria relativa de la herramienta. Bajo G94 (avance asíncrono o feed per minute), el control establece una velocidad lineal estricta basada en el tiempo. La herramienta avanza a una velocidad constante (como milímetros o pulgadas por minuto) independientemente de qué tan rápido o lento esté girando el spindle. Esta progresión lineal constante es el requisito fundamental para las operaciones de fresado, ruteado y posicionamiento, donde la carga de viruta del cortador depende de mantener una velocidad de trayectoria constante a lo largo de un contorno multieje. Al configurar las operaciones de mecanizado, comprender la coordinación básica entre los diferentes comandos modales es clave. De manera similar a la alternancia entre la programación absoluta e incremental (G90 y G91), la gestión de los modos de feedrate requiere un seguimiento constante del estado modal activo para evitar errores de programación.

Por el contrario, G95 (avance síncrono o feed per revolution) bloquea el avance lineal de la herramienta directamente a la rotación física del master spindle. Cada rotación completa de 360 grados del spindle da como resultado un avance físico preciso del eje según el valor F comandado (como mm/rev o inch/rev). Esta sincronización es crítica para el torneado, roscado y taladrado profundo porque garantiza matemáticamente una carga de viruta constante por revolución del spindle. Si la velocidad del spindle fluctúa o disminuye bajo una carga de par pesada, los ejes de avance se ralentizan en perfecta sincronía, evitando la rotura de la herramienta y garantizando un acabado superficial constante.

Estructura de Comandos

La programación de los modos de feedrate se basa en establecer primero el comando modal activo y luego declarar el valor F correspondiente. Dado que estos comandos son modales, una vez establecido un modo, este permanece activo hasta que se programa el código opuesto o un ciclo de anulación (como el avance de tiempo inverso G93). Configurar el modo correcto antes de ejecutar cualquier interpolación es esencial para una operación segura. Al igual que la configuración de los sistemas de coordenadas de trabajo (G54 a G59) alinea el cero geométrico, declarar G94 o G95 establece la tasa matemática cero para los vectores de desplazamiento de los ejes.

Al escribir programas para sistemas de torneado, los desarrolladores deben identificar qué sistema de G-code está ejecutando el controlador. En los entornos de fresado estándar se utilizan de forma nativa G94 y G95, mientras que en los entornos de torneado a menudo se asignan estos comportamientos a G98 y G99. Los fabricantes de máquinas configuran los modos de inicio predeterminados y la precisión del incremento matemático a través de variables y parámetros internos del sistema.

; Feed per Minute Mode (Milling and standard systems)
G94 F_ ;

; Feed per Revolution Mode (Milling and standard systems) G95 F_ ;

; Legacy Lathe G-code System A (Feed per Minute) G98 F_ ;

; Legacy Lathe G-code System A (Feed per Revolution) G99 F_ ;

Parámetro / DirecciónFunción y UnidadesRango de Valores Estándar
FEn G94: Feed rate en mm/min, inch/min o degrees/min. En G95: Feed rate en mm/rev o inch/rev.Siemens: 0.001 a 999999.999 mm/min. Mitsubishi: 0.001 a 1000000.000 mm/min (G94), 0.001 a 999.999 mm/rev (G95).
FZAvance por diente (extensión nativa de Siemens). Especifica la velocidad de avance en mm/tooth o inch/tooth.Calculado dinámicamente según el decalaje de datos de herramienta activo.
SComando de velocidad del spindle en RPM. Entrada directa para el cálculo de G95.Valor entero que representa las revoluciones por minuto del spindle.

Aplicaciones de Marca

Fanuc

En los controles Fanuc, el comportamiento predeterminado del feedrate al encender es definido por el Parameter 3402 bit 4 (FPM). Los administradores del sistema pueden configurar el Parameter 13450 bit 4 (MFC) para determinar si el control herede un valor de feedrate anterior durante los cambios de modo o se detenga con una alarma de seguridad.

El formato de programación estándar utiliza G94 para avance lineal feed per minute y G95 para avance síncrono feed per revolution, lo cual está representado por el siguiente código: G95 G01 Z-50.0 F0.2 S1000 M03;.

Categoría del SistemaElemento de Control / ConfiguraciónDescripción Técnica y Rango de Valores
ParámetrosParameter 3402 bit 4 (FPM)Estado de avance modal inicial. 0 = G95/G99 (Feed per revolution), 1 = G94/G98 (Feed per minute).
ParámetrosParameter 13450 bit 4 (MFC)Herencia del valor F después del cambio de modo. 0 = heredar F modal, 1 = activar alarma.
ParámetrosParameter 1403 bit 0 (MIF)Sistema de incremento matemático para comando F entero en modo G94. 0 = 1 mm/min, 1 = 0.001 mm/min.
ParámetrosParameter 1405 bit 1 (FR3)Sistema de incremento matemático para comando F entero en modo G95. 0 = 0.01 mm/rev, 1 = 0.001 mm/rev.
AlarmasPS0011FEED ZERO COMMAND. Ocurre si se ejecuta el avance de corte sin un feedrate especificado después de un cambio del Grupo 05 (cuando MFC = 1).
AlarmasPS0187Movimiento de eje comandado en modo G95 mientras la velocidad del spindle comandada es cero (S0).
VersionesM-Series vs. T-SeriesLos centros de mecanizado (M-series) utilizan de forma nativa G94/G95. Los tornos (T-series) que ejecutan el G-code legacy Sistema A utilizan G98 (feed per minute) y G99 (feed per revolution).

Advertencia: Al ejecutar el modo G95 bajo G96 (Constant Surface Speed), los operadores deben configurar límites de velocidad del spindle G92/G50 para evitar la aceleración descontrolada del eje cerca del centro de rotación, lo que puede causar colisiones repentinas con el chuck o la turret.

Siemens

Los controladores Siemens permiten una integración profunda de los comportamientos de velocidad de avance por revolución, gestionando los movimientos manuales a través de los datos de configuración SD41100 ($SN_JOG_REV_IS_ACTIVE). Las velocidades predeterminadas específicas de cada eje en modo G95 se configuran mediante los datos de máquina MD32050 ($MA_JOG_REV_VELO).

Siemens admite la sintaxis nativa de avance basado en dientes utilizando la dirección de comando FZ en un bloque de movimiento: N30 G1 G95 FZ=0.02.

Categoría del SistemaElemento de Control / ConfiguraciónDescripción Técnica y Rango de Valores
Parámetros$TC_DPNTParámetro de datos de decalaje de herramienta que define el conteo de dientes de la herramienta activa para los cálculos de FZ.
ParámetrosSD41100 $SN_JOG_REV_IS_ACTIVEDatos de configuración para habilitar el feedrate por revolución (G95) en modo JOG manual.
ParámetrosMD32050 $MA_JOG_REV_VELOFeedrate por revolución predeterminado en modo JOG cuando G95 está activo.
ParámetrosMD $MC_EXTERN_FUNCTION_MASK bit 9Configuración de escala del modo ISO Dialect. 0 = valor F en G95 multiplicado por 0.01 mm, 1 = valor F en G95 multiplicado por 0.001 mm.
AlarmasAlarm 14800Velocidad de trayectoria programada menor o igual a cero. Se activa cuando se programa F0 en G94/G95.
AlarmasAlarm 10861La velocidad del eje de posicionamiento es cero. Se activa cuando se programa una F o FZ igual a cero o negativa. Detiene el control.
VersionesNative vs. ISO Dialect TEl modo nativo (G290), ISO Dialect M e ISO Dialect T Sistema C utilizan G94/G95. El legacy ISO Dialect T Sistema A utiliza G98/G99.

Advertencia: Ejecutar G95 en Siemens mientras el spindle está estacionario (M05) dejará los ejes inmóviles sin generar un código de alarma explicativo, lo que requiere que los operadores verifiquen manualmente la actividad del encoder del spindle.

Mitsubishi

Los sistemas CNC Mitsubishi permiten estados de inicio personalizados a través del parámetro #1074 I_Sync, lo que permite a los talleres unificar los valores predeterminados de arranque, resolviendo la clásica división entre configuraciones de torno y fresadora. Los comportamientos del ciclo de tapping se pueden alterar dinámicamente mediante el parámetro #1268 ext04/bit2.

Los bloques de torneado Mitsubishi se pueden configurar fácilmente para alternar los estados modales de las velocidades de avance, como se muestra en esta línea de sintaxis: G95 G01 Z-50. F0.2 ;.

Categoría del SistemaElemento de Control / ConfiguraciónDescripción Técnica y Rango de Valores
ParámetrosParameter #1074 I_SyncConfiguración de avance síncrono inicial al encender/resetear. 0 = Asíncrono (G94), 1 = Síncrono (G95).
ParámetrosParameter #1268 ext04/bit2Bandera de ejecución del modo de avance de tapping síncrono. 0 = el tapping rígido es strictly G95 mm/rev, 1 = permite que el F-code del ciclo de tapping sea G94 mm/min.
ParámetrosParameter #1292 ext28/bit1Parámetro de configuración de tapping síncrono y feedrate.
AlarmasM01 0105 (Error de operación)Se activa si la velocidad del spindle es cero durante el movimiento de avance síncrono G95.
AlarmasP32 (Error de dirección)Ocurre si se programa la dirección E (hilos por pulgada) mientras se está en el estado modal G94.
AlarmasP62 (Sin comando F)Se activa si la interpolación polar G12.1 se inicia en G95, forzando un cambio a G94 sin un F-code declarado.
VersionesSistemas M vs. LLos sistemas estándar utilizan G94/G95. Los sistemas L que ejecutan el G-code legacy Sistema A utilizan G98 (feed per minute) y G99 (feed per revolution).

Advertencia: Ejecutar una ejecución en seco física omite los estados modales G95 por completo y aplica las reglas estándar de G94, lo que hace que los ejes se muevan a la velocidad de jog manual configurada en lugar de las velocidades sincronizadas con el spindle.

Comparación de Marcas

Característica de ComparaciónFanucSiemensMitsubishi
Sintaxis de Fresado y TorneadoFresado estándar: G94 (feed/min), G95 (feed/rev). Torneado legacy estándar: G98 (feed/min), G99 (feed/rev).Modo nativo estándar: G94 (avance lineal), G95 (avance por revolución). ISO Dialect T Sistema A: G98/G99.Sistemas estándar: G94 (avance asíncrono), G95 (avance síncrono). G-code legacy Sistema A: G98/G99.
Feedrate por Diente (FZ)— (no source)Soportado nativamente usando G95 FZ=... y hace referencia al parámetro de datos de herramienta $TC_DPNT.— (no source)
Selección de Sincronización Spindle/Eje— (no source)Soportado dinámicamente mediante la instrucción FPR(...) para derivar el feedrate de cualquier spindle/eje.— (no source)
Integración de JOG Manual— (no source)Soportado a través de SD41100 para permitir movimientos de manivela manuales síncronos con el spindle en contornos.— (no source)
Parámetros Predeterminados de EncendidoGestionado por Parameter 3402 bit 4 (FPM) (0 = G95, 1 = G94).— (no source)Gestionado por Parameter #1074 I_Sync (0 = G94, 1 = G95).
Flexibilidad del Ciclo de Tapping— (no source)— (no source)Permite comandos G94 basados en el tiempo durante el tapping a través del Parameter #1268 ext04/bit2.
Reglas de Anulación de Ejecución en Seco— (no source)— (no source)Omite G95, forzando el escalado de velocidad basado en el tiempo G94 al feedrate de jog manual.

Análisis Técnico

El análisis de las implementaciones arquitectónicas de estas tres marcas revela filosofías de ingeniería distintas. Fanuc hace hincapié en una profunda compatibilidad con versiones anteriores y en la parametrización a nivel de hardware. Al aislar su escala de precisión directamente en parámetros como el 1403 (MIF) y el 1405 (FR3), los fabricantes de máquinas pueden modificar los comportamientos de incremento decimal en la memoria sin requerir una revisión completa del postprocesador CAM. Esto garantiza que los programas más antiguos se ejecuten sin problemas a través de décadas de plataformas Fanuc legacy, pero requiere una gestión manual de los parámetros para evitar desajustes en el escalado del feedrate.

Siemens diverge bruscamente hacia la flexibilidad del software y la interpolación multieje dinámica. La inclusión de la programación basada en dientes (FZ) y el seguimiento activo del decalaje de dientes de la herramienta ($TC_DPNT) elimine los cálculos matemáticos fuera de línea, trasladando los cálculos por completo al interior del núcleo CNC. Al proporcionar la instrucción FPR, Siemens permite que los feedrates sincronizados con el spindle se escalen frente a cualquier sub-spindle o eje giratorio activo, una capacidad que representa una enorme ventaja operativa en centros de fresado-torneado multitarea complejos. Además, la integración del feedrate por revolución directamente en las manivelas manuales (SD41100) refleja un enfoque en el control de contorneado del operador.

Mitsubishi equilibra esta flexibilidad sintáctica proporcionando anulaciones de seguridad robustas y valores predeterminados administrativos personalizados. El parámetro #1074 I_Sync permite a los talleres unificar los valores predeterminados de arranque, resolviendo la clásica división entre las configuraciones de torno y fresadora. Los comportamientos de seguridad durante la interpolación de coordenadas polares (G12.1) se gestionan activamente, ya que el control cambia de forma forzada al avance asíncrono y exige un nuevo comando F para proteger las geometrías físicas. Del mismo modo, permitir que las declaraciones de feed-per-minute de G94 gobiernen los ciclos de tapping síncronos a través del parámetro #1268 proporciona una alta compatibilidad con versiones anteriores para configuraciones CAM legacy.

Ejemplos de Programas

Ejemplo de Programación en Fanuc

; Perfil de Torno-Fresadora Fanuc
G90 G21 G40 ; Modo métrico absoluto, cancelar compensación
G95 G01 Z-50.0 F0.2 S1000 M03 ; Cambiar a avance por revolución, avanzar a profundidad a 0.2 mm/rev con spindle girando a la derecha a 1000 RPM
G94 G01 X100.0 F250.0 ; Cambiar de nuevo a avance por minuto, avance lineal a 250 mm/min

Análisis de Trayectoria en Ejecución en Seco de Fanuc

Validación de ejecución en seco: En el primer bloque, el controlador establece el posicionamiento absoluto estándar. En el segundo bloque, G95 establece el avance síncrono feed per revolution, bloqueando el desplazamiento del eje Z al spindle giratorio. Con el spindle girando a la derecha a 1000 RPM y un feedrate de 0.2 mm/rev, el eje Z avanza linealmente a una velocidad calculada de 200 mm/min. En el tercer bloque, G94 cambia inmediatamente el estado a avance asíncrono por minuto, impulsando el eje X a una velocidad estricta basada en el tiempo de 250 mm/min, ignorando por completo las fluctuaciones de RPM del spindle.

Ejemplo de Programación en Siemens

N10 G290 (Cambiar al modo nativo de Siemens)
N20 G95 FZ=0.02 S1200 M3 (Spindle a 1200 RPM, avance por diente de 0.02 mm/tooth usando el conteo de dientes activo del decalaje de herramienta)
N30 G1 Z-35.0 (Interpolar linealmente a lo largo del eje Z)
N40 G94 F350 (Cambiar a velocidad de avance lineal de 350 mm/min para retracción rápida de herramienta)

Análisis de Trayectoria en Ejecución en Seco de Siemens

Validación de ejecución en seco: El bloque N10 establece la sintaxis nativa de comandos de Siemens. En el bloque N20, G95 activa el feedrate por revolución, pero específicamente utiliza el parámetro de avance por diente FZ=0.02. El intérprete de Siemens accede a la base de datos de herramientas, lee el parámetro de diente de la herramienta activa ($TC_DPNT, por ejemplo, 4 dientes) y calcula dinámicamente un feedrate por revolución equivalente de 0.08 mm/rev (0.02 mm/tooth × 4 dientes). La herramienta avanza a lo largo del eje Z a 0.08 mm/rev. En N40, G94 cancela el estado sincronizado, forzando al eje a retractarse a 350 mm/min independientemente del spindle.

Ejemplo de Programación en Mitsubishi

; Preparación de Roscado en Torno Mitsubishi
G90 G21 G95 ; Programación absoluta, sistema métrico, avance síncrono por revolución
G01 Z-40. F0.15 S800 M03 ; Corte lineal a 0.15 mm/rev bajo rotación de spindle de 800 RPM
G94 G04 X4.0 ; Cambiar a avance asíncrono para ejecutar un dwell basado en tiempo de 4.0 segundos

Análisis de Trayectoria en Ejecución en Seco de Mitsubishi

Validación de ejecución en seco: En el primer bloque, G95 establece el avance síncrono feed per revolution. El segundo bloque comanda un movimiento lineal a lo largo del eje Z. Con el spindle girando a 800 RPM y un feedrate de 0.15 mm/rev, la herramienta avanza a una velocidad de 120 mm/min. En el tercer bloque, el programador cambia a avance por minuto G94 antes de comandar un dwell (G04). Bajo G94, el comando X4.0 obliga a la máquina a realizar un dwell durante exactamente 4.0 segundos; if el control se dejara en G95, el dwell se calcularía en función de las revoluciones del spindle en lugar de un retraso de tiempo estricto.

Análisis de Errores

MarcaCódigo de AlarmaCondición de ActivaciónSíntoma del OperadorCausa Raíz y Resolución
FanucPS0011Omitir un nuevo F-code inmediatamente después de cambiar los modos de avance modales del Grupo 05 (parámetro MFC configurado en 1).La ejecución se detiene instantáneamente en el bloque de transición y se muestra una alarma de FEED ZERO COMMAND.Configure el Parameter 13450 bit 4 (MFC) en 1 por seguridad y programe un nuevo valor de F en el bloque que contiene el cambio G94/G95.
FanucPS0187Comandar un movimiento de eje en modo G95 mientras se ordena una velocidad del spindle de cero (S0) o está detenido.El eje permanece completamente bloqueado en su lugar y se genera un error de velocidad sincronizada con el spindle.Programe una velocidad de spindle válida (valor S) y asegúrese de que el spindle esté girando activamente (M03/M04) antes de ejecutar G95.
SiemensAlarm 14800El feedrate programado F0 se ingresa en los modos G94/G95 sin un feedrate fijo predominante.La ejecución del programa se detiene con un mensaje de "Programmed path velocity less than or equal to zero".Declare un valor de feedrate F o FZ positivo y diferente de cero en el bloque activo.
SiemensAlarm 10861F o FZ igual a cero o negativa programada en un eje de posicionamiento bajo G94, G95 o G96.El controlador detiene la ejecución, los ejes se bloquean y se muestra el error "velocity of positioning axis is zero".Inspeccione los decalajes de la herramienta y los datos del programa; declare un feedrate positivo y diferente de cero. Requiere un reinicio completo del sistema.
MitsubishiM01 0105La rotación del spindle es cero al ejecutar un bloque de movimiento síncrono en modo G95.Los ejes se detienen indefinidamente durante las interpolaciones, mostrando un código de Error de Operación activo.Verifique que el spindle esté activo y que el encoder esté transmitiendo pulsos. Programe un S-code activo y un comando M03/M04 antes de G95.
MitsubishiP32Paso de rosca programado con dirección E mientras el control está en estado modal G94 (feed per minute).La operación se detiene instantáneamente, mostrando una alarma de Error de Dirección P32.Regrese al modo de avance síncrono G95 antes de declarar el paso de rosca con la dirección E.
MitsubishiP62Iniciar la interpolación de coordenadas polares (G12.1/G112) en G95 sin declarar un nuevo F-code.El control cambia automáticamente el estado de avance a G94, se detiene y genera un error de Sin Comando F.Declare un nuevo comando de feedrate F inmediatamente dentro del bloque de inicio de la interpolación polar.

Nota de Aplicación

El riesgo de una colisión mecánica severa en el plato de torno (chuck) o la torreta (turret) indexable aumenta exponencialmente cuando se combina el modo G95 con el control de velocidad de corte constante (G96). En operaciones de refrentado, a medida que la herramienta se aproxima al centro de rotación del material, la velocidad del husillo (spindle) se acelera agresivamente para mantener la velocidad superficial. Bajo el acoplamiento directo de G95, esta aceleración del husillo provoca que la velocidad lineal del eje de avance aumente violentamente de forma proporcional. Si no se han configurado de manera segura los límites de velocidad del husillo mediante comandos de sujeción G92 o G50, el servomotor no podrá detener el avance a tiempo, provocando que la herramienta de corte se estrelle contra el husillo o las mordazas de sujeción (vise jaw) de la pieza, lo que se traduce en costosas piezas rechazadas (scrap) y un prolongado tiempo de inactividad de la planta. 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. Además, en los centros de mecanizado, los programadores de moldes deben tener extrema precaución al activar compensaciones dinámicas; un cambio incorrecto entre G94 y G95 mientras la compensación de longitud de herramienta (G43, G44, G49) está activa puede amplificar los errores de trayectoria y culminar en colisiones catastróficas.

Para mitigar de forma proactiva estos costosos fallos operativos en la planta de mecanizado, los programadores de CNC deben configurar e implementar activamente los parámetros de seguridad nativos de cada controlador. En los sistemas de control Fanuc, habilitar el Parameter 13450 bit 4 (MFC) es mandatorio. Este parámetro vigila las transiciones síncronas/asíncronas, forzando al control a generar la alarma PS0011 (FEED ZERO COMMAND) y detener la producción en seco si se detecta un cambio del Grupo 05 sin un valor F explícito, evitando que el husillo herede velocidades desastrosas. Por su parte, la arquitectura de Siemens ofrece una flexibilidad superior con el comando FPR, permitiendo al operador acoplar el feedrate por revolución a cualquier husillo físico secundario o eje rotativo. Siemens también agiliza el tiempo de ciclo mediante el direccionamiento síncrono de avance por diente G95 FZ, que extrae la información de dientes guardada en los datos de decalaje ($TC_DPNT) para realizar cálculos en tiempo real en la propia memoria del CNC, además de contar con el parámetro SD41100 para activar el JOG síncrono con el husillo en aproximaciones manuales. Finalmente, Mitsubishi destaca en la estandarización de talleres mediante el Parameter #1074 I_Sync, permitiendo establecer de forma centralizada si las máquinas inician por defecto en G94 o G95 para homogeneizar la ejecución de código conversacional, mientras que los parámetros #1268 y #1292 otorgan una compatibilidad insuperable con programas CAM legacy al admitir avance asíncrono G94 durante ciclos de roscado rígido.

Red de Comandos Relacionados

  • G93 (Inverse Time Feedrate): Anula tanto el G94 como el G95, especificando el recíproco del tiempo en minutos requerido para completar el bloque de movimiento, lo cual es estándar para el fresado simultáneo multieje.
  • G96 (Constant Surface Speed ON): Depende intrínsecamente y se establece de forma predeterminada en los comportamientos de velocidad de avance por revolución de G95 en tornos para garantizar una velocidad superficial sincronizada con el spindle.
  • G97 (Constant Spindle Speed ON/OFF): Cancela el G96, bloqueando el spindle a unas RPM constantes, lo que estabiliza directamente las tasas de desplazamiento del eje G95 durante cortes lineales largos.
  • G12.1 / G112 (Polar Coordinate Interpolation): Un modo de interpolación complejo que anula de forma forzada los estados de G95 en los controles Mitsubishi y otros, cambiando el sistema a G94 asíncrono y requiriendo la declaración de un nuevo F-code para proteger la geometría.
  • FPR (Siemens Master Spindle Designation): Asigna dinámicamente qué eje rotativo o spindle secundario se utiliza como fuente del encoder de retroalimentación para calcular los movimientos de trayectoria por revolución de G95.

Conclusión

La eliminación de paradas no planificadas y la optimización del tiempo de ciclo en procesos de torneado y fresado síncronos dependen directamente de la estandarización de los encabezados de programa y la verificación rigurosa de parámetros. Configurar de forma permanente el Parameter 13450 bit 4 en Fanuc, activar los JOG síncronos mediante el SD41100 en Siemens y validar el Parameter #1074 en Mitsubishi constituyen la primera línea de defensa para cualquier programador de CNC. Antes de presionar el botón de inicio de ciclo (cycle start), los operadores deben verificar el estado modal activo mediante la pantalla de simulación gráfica, asegurar que el husillo esté girando activamente con códigos de velocidad S y M03/M04 válidos, y programar de forma explícitamente un valor de F en cada transición entre G94 y G95. Adoptar estos protocolos de seguridad técnica garantiza la integridad estructural de las máquinas, reduce a cero las piezas rechazadas por desvíos dimensionales acumulados y mantiene la productividad del taller en su nivel óptimo.

Preguntas Frecuentes (FAQ)

¿Por qué los ejes de mi CNC permanecen inmóviles y sin generar ninguna alarma cuando programo en modo G95?

Este comportamiento ocurre porque el intérprete del control CNC evalúa la velocidad de avance en función de las señales del codificador del husillo (spindle). Si el husillo está apagado (M05) o se ha establecido una velocidad de husillo de cero (S0), el cálculo matemático del avance por revolución da como resultado un movimiento lineal de cero. Algunos controladores no generan una alarma inmediata por esto y simplemente esperan de forma indefinida a recibir los pulsos del codificador. Acción práctica: Programe siempre la velocidad del husillo mediante una palabra S activa y el sentido de rotación (M03 o M04) antes de ordenar un comando de interpolación en G95.

¿Cómo protege el parámetro 13450 bit 4 en Fanuc al operario de una colisión destructiva en el plato de torno (chuck)?

Este parámetro gobierna la función de herencia de velocidad (MFC). Si se establece en 0 (predeterminado), al cambiar del avance rápido por minuto (G94) al avance síncrono (G95) sin declarar una F, la máquina hereda el valor anterior; por ejemplo, un F250 de avance por minuto se convierte en F250 mm/rev, lo que causa un impacto instantáneo a la máxima fuerza de empuje de los ejes. Al activar este parámetro en 1, el control interrumpe inmediatamente el ciclo ante la falta de una F explícita y genera la alarma PS0011 (FEED ZERO COMMAND). Acción práctica: Solicite al administrador de la máquina configurar el Parameter 13450 bit 4 a 1 en su panel Fanuc y declare siempre la velocidad de avance F en la misma línea de transición del bloque.

¿Qué diferencias existen en la interpretación de los pasos incrementales de roscado rígido al usar G94 o G95 en Mitsubishi?

En el control Mitsubishi, la flexibilidad del roscado síncrono se puede alterar de manera profunda mediante los parámetros #1268 y #1292. Si se activa la flexibilidad del roscado en G94 (avance por minuto), los programadores pueden ajustar el avance lineal de forma independiente para corregir tolerancias finas en materiales difíciles sin depender rígidamente del paso físico mm/rev. Esto resulta extremadamente útil para adaptar programas de CAM antiguos que no admiten formatos síncronos nativos. Acción práctica: Verifique el estado del Parameter #1268 ext04/bit2 si necesita ejecutar ciclos de roscado utilizando velocidad de avance por minuto (G94) y realice una prueba en vacío sin material para confirmar que el paso del filete coincide con la herramienta física.

¿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 - 2005)
  • Ö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