Sie sind auf Seite 1von 10

El nombre G & M viene del hecho de que el programa está constituido por instrucciones Generales y

Misceláneas.

Si bien en el mundo existen aún diferentes dialectos de programación con códigos G&M, se dio un gran
paso adelante a través de la estandarización que promovió la ISO.

Esta estandarización fue adoptada por la totalidad de los fabricantes industriales serios de CNC y
permite utilizar los mismos programas en distintas máquinas CNC de manera directa o con adaptaciones
menores.

A pesar de tratarse de un lenguaje de programación muy rudimentario para los gustos actuales, lo
robusto de su comportamiento y los millones de líneas de programación que hacen funcionar máquinas
de CNC en todas las latitudes del planeta aseguran su vigencia en los años por venir.

Minidiccionario de G&M para Tornos CNC.

A modo de ejemplo, presentamos los códigos de programación más utilizados en nuestros tornos de
CNC. Según el modelo de que se trate, algunos de los códigos pueden estar inhabilitados.

Códigos Generales

G00: Posicionamiento rápido (sin maquinar)

G01: Interpolación lineal (maquinando)

G02: Interpolación circular (horaria)

G03: Interpolación circular (antihoraria)

G04: Compás de espera

G10: Ajuste del valor de offset del programa

G20: Comienzo de uso de unidades imperiales (pulgadas)

G21: Comienzo de uso de unidades métricas

G28: Volver al home de la máquina

G32: Maquinar una rosca en una pasada

G36: Compensación automática de herramienta en X


G37: Compensación automática de herramienta en Z

G40: Cancelar compensación de radio de curvatura de herramienta

G41: Compensación de radio de curvatura de herramienta a la izquierda

G42: Compensación de radio de curvatura de herramienta a la derecha

G70: Ciclo de acabado

G71: Ciclo de maquinado en torneado

G72: Ciclo de maquinado en frenteado

G73: Repetición de patrón

G74: Taladrado intermitente, con salida para retirar virutas

G76: Maquinar una rosca en múltiples pasadas

G96: Comienzo de desbaste a velocidad tangencial constante

G97: Fin de desbaste a velocidad tangencial constante

G98: Velocidad de alimentación (unidades/min)

G99: Velocidad de alimentación (unidades/revolución)

Códigos Misceláneos

M00: Parada opcional

M01: Parada opcional

M02: Reset del programa

M03: Hacer girar el husillo en sentido horario

M04: Hacer girar el husillo en sentido antihorario

M05: Frenar el husillo

M06: Cambiar de herramienta

M07: Abrir el paso del refrigerante B

M08: Abrir el paso del refrigerante A

M09: Cerrar el paso de los refrigerantes

M10: Abrir mordazas

M11: Cerrar mordazas


M13: Hacer girar el husillo en sentido horario y abrir el paso de refrigerante

M14: Hacer girar el husillo en sentido antihorario y abrir el paso de refrigerante

M30: Finalizar programa y poner el puntero de ejecución en su inicio

M31: Incrementar el contador de partes

M37: Frenar el husillo y abrir la guarda

M38: Abrir la guarda

M39: Cerrar la guarda

M40: Extender el alimentador de piezas

M41: Retraer el alimentador de piezas

M43: Avisar a la cinta transportadora que avance

M44: Avisar a la cinta transportadora que retroceda

M45: Avisar a la cinta transportadora que frene

M48: Inhabilitar Spindle y Feed override (maquinar exclusivamente con las velocidades programadas)

M49: Cancelar M48

M62: Activar salida auxiliar 1

M63: Activar salida auxiliar 2

M64: Desactivar salida auxiliar 1

M65: Desactivar salida auxiliar 2

M66: Esperar hasta que la entrada 1 esté en ON

M67: Esperar hasta que la entrada 2 esté en ON

M70: Activar espejo en X

M76: Esperar hasta que la entrada 1 esté en OFF

M77: Esperar hasta que la entrada 2 esté en OFF

M80: Desactivar el espejo en X

M98: Llamada a subprograma

M99: Retorno de subprograma

Programa de Ejemplo para Torno CNC.


Los programas de G&M son simples archivos de texto ASCII (sólo mayúsculas, números y signos de
puntuación tradicionales, por lo que es muy frecuente que los programas se almacenen y comuniquen
usando un formato restringido de 6 bits).

Estos programas pueden ser cargados a pie de máquina usando su teclado o ser transportados desde
una PC con diskettes, cables seriales RS232C o USB.

Presentamos un programa de ejemplo que efectúa una serie de operaciones básicas sobre un tocho de
material de 55mm por una pulgada de diámetro, frentéandolo primero y cilindrándolo a 25mm después.

Programa Comentario

G21 Usar sistema métrico

[BILLET X25.4 Z55 Definición de tamaño de tocho para el simulador (no para el torno)

G98 Hasta nuevo aviso, las velocidades de corte están expresadas en mm/min

G28U0W0 Antes que nada, retirar las herramientas de la zona de trabajo

M06T0404 Elegir la herramienta número 4, con el juego de parámetros de compensación 04


(depende de la cara/punta con que desbaste)

M03S3500 Poner a andar el husillo en sentido horario a 3500 rpm

G00X26Z0 Ir velozmente (sin maquinar, se supone que se está en el aire) hasta las proximidades
del tocho

G01X-2F80 Ahora sí, maquinando, se frentea el tocho, de arriba hacia abajo. Pasamos de largo el
cero para que no queden pupitos.

G00Z2X25 Retirar la herramienta y prepararse para cilindrar.

G01Z-40F140 Cilindrar hasta Z=-40

G28U2W0 Enviar la herramienta al home, retirándose primero 2mm en X

M05 Frenar el husillo

M30 Terminar el programa y preparase para ejecutarlo nuevamente

Ejemplo un poco más complejo (que se puede cortar y pegar en editor de VR Turning).

( Ejemplo de ciclos encajonados para desbastar grandes cantidades de material con pocas lineas de
programa

( Ajustes previos:

( La PC debe estar ajustada de manera que el punto decimal sea efectivamente un punto y no una coma
( Si se va a ejecutar este programa sobre un verdadero torno de CNC

( Definimos el tamano del tocho para que el simulador sepa con qué empezar

[ BILLET X25 Z55

( Las velocidades de husillo y avance de herramienta son las que corresponderian

( a una maquina mediana trabajando un acero relativamente blando tipo 1010

( El cambiador de herramientas tendria una herramienta de desbaste fino/pulido en el puesto 1

( una mecha de 5mm en el puesto 2

( y una herramienta de roscado en el puesto 3

( Los nombres de los viejos programa de CNC solo podian contener numeros

( Si este programa se hubiera llamado 0001.fnl la linea siguiente seria su identificador univoco

O0001

( Usamos sistema metrico

G21

( Los avances estaran definidos en avance por revolucion

G99

( otra forma podria haber sido avance por minuto

( Antes de arrancar, pedimos un cambio de herramienta. La herramienta 01 con el juego de offset


locales 01

M06 T0101

( La velocidad de husillo sera indicada en RPM

( Ahora pedimos 1800 rpm

( y que se arranque el motor en sentido horario


G97 S1800 M03

( Pedimos que cada eje se mueva lo mas rapido que pueda hasta las coordenadas relativas a la pieza

( diametro X=26 mm y eje Z = 2 mm

( El movimiento no necesariamente sera una linea recta

( Lo mas probable es que resulte una linea quebrada segun el lugar del que se parta

( y de las velocidades de desplazamiento de eje que tenga la maquina en cuestion

G00 X26 Z2

( llegados a ese punto cercano a la pieza, nos movemos justamente hasta Z=0 el borde derecho

( pero todavia fuera del tocho ya que su diametro seria de 25 mm

( Seguimos dentro de la G00 que puede tener varias lineas indicando desplazamientos sucesivos

Z0

( Ahora si desplazamos la herramienta de manera controlada a traves de segmentos de recta y


circunsferencia

( Esta manera controlada se llama a veces interpolacion lineal o circular segun el caso

( Nos movemos hasta un diametro negativo

( Pasamos de largo el centro para frentear el tocho

( El avance será de 5 centesimas de mm por vuelta

G01 X-1 F.05

( Ahora volvemos a una posicion externa lo mas rapido posible

( Esta posicion se eligio arriba y a la derecha del contorno que se va a definir a continuacion

G00 X26 Z2

( ATENCION una de las mejores instrucciones de CNC Ciclos encajonados de cilindrado

( Sirve para desbastar grandes cantidades de material en varias pasadas de cilindrado

( haciendo una escalerita pero sin tener que definir los movimientos de la escalerita

( sino solamente los movimientos que describen el contorno final deseado


( Hay dos restricciones que deben tenerse en cuenta.

( a) El contorno debe ser monotonamente creciente o decreciente

( b) El primer movimiento definido debe ser de FRENTEADO

( G71 es tan larga que no cabia en los viejos monitores de planta con caracteres grandes y baja
resolucion

( por lo que se desdoblo en 2 lineas consecutivas

G71 U.75 R.25

G71 P1 Q2 U1.0 W.1 F.07

( U.75 En cada cilindrado calamos 75 centesimas de mm

( R.25 Llegado al final del cilindro separamos la herramienta 25 centesimas de mm para no rayar la pieza

( P1 El contorno se comienza a definir en la linea N1. N1 no precisa ser contigua a G71

( Q2 El contorno se termino de definir en la linea N2

( U1.0 Nos reservamos 1mm de sobremedida de diametro para dejarselo al ciclo de acabado/pulido

( W.1 Nos reservamos 1 decima de mm de sobremedida en el eje Z a los mismos fines

( F.07 La herramienta avanzara 7 centesimas de mm por cada revolucion

( Linea N1 empieza el contorno, haciendo un avance de FRENTEADO puro desde la ultima posicion
previa a la G71

( casi hasta el morro del tocho

N1 G00 X0

( Entramos despacito maquinando hasta el morro del tocho

G01 Z0

( Cortamos un arco de circunsferencia antihorario desde donde estamos hasta Z=-8mm con un radio de
8 mm y medio

( Dejamos que el CNC se encargue de calcular donde tiene que estar el centro, etc

( Definimos una velocidad de 2500 rpm que sera obviada en el desbaste grueso pero tenida en cuenta
en el acabado

G03 X17 Z-8.5 R8.5 S2500


( Ahora cilindramos hasta Z=-13 mm y medio

G01 Z-13.5

( Hacemos un tronco de cono hasta diametro 20mm y Z=-14 y algo de mm

X20 Z-14.36

( Cilindramos hasta Z=-28 mm y medio

Z-28.5

( Otro tronco de cono

( Notese que los diametros siempre van creciendo

( Si hubiera que maquinar una entalladura debera programarse otro ciclo monotonamente decreciente

X24 Z-46.5

( Un escaloncito hasta el diametro de 26 mm

X26

( Ultima linea del ciclo

( Enviamos la herramienta a la misma posicion que tenia antes de invocar G71

N2 G00 X26 Z2

( Ahora que ya hicimos el desbaste grueso hacemos el acabado en una sola pasada con G70

( El contorno a seguir es el mismo usado antes y definido entre las lineas N1 y N2

G70 P1 Q2

( Enviamos el carro a la posicion de reposo lejos de la pieza

G28 U0 W0

( Frenamos el motor
M05

( Pedimos un cambio de herramienta

( Se viene el roscado con la herramienta 03 usando su juego de offset local 03

M06 T0303

( Reconfirmamos que la velocidad de husillo estara definida en RPM

( Bajamos drasticamente la velocidad de giro y reencendemos el motor

G97 S500 M03

( Nos acercamos velozmente a la pieza

G00 X20.5 Z-10

( Comenzamos un ciclo de roscado con varias pasadas

( G76 es otra instruccion larga desdoblada en 2 lineas

( G76 es mas compleja que G71 porque la seccion vista por la herramienta depende de la profundidad

( que ha llegado a calar

( Por esto la primera calada puede ser relativamente profunda pero cada una de las siguientes tiene un
calado menor

G76 P050060 Q035 R.0

G76 X18.00 Z-26.5 P1000 Q070 F1.5

( P05 el ACABADO de la rosca se hara en 5 pasadas Habra otras pasadas previas claro

( 00 angulo de chanfle al entrar y salir del roscado

( 60 es el angulo que tiene la punta de roscar utilizada

( Q035 si lo que queda por calar es 35 micras o menos se hara en una sola pasada

( R.0 sobremedida que se deja para una pasada de acabado con otra herramienta En este caso no
dejamos nada

( X18.00 diametro interno de la rosca de 18 mm

( Z-26.5 la rosca se extendera hasta esa posicion de Z


( P1000 el filete de la rosca tendra 1000 micras en el sentido del diametro

( Q070 El primer corte tendra un calado de 70 micrones o 7 centesimas

( En las pasadas siguientes la punta vera siempre la misma area de material a desbastar

( F1.5 la rosca tendra un paso de 1 mm y medio

( Enviamos el carro a la posicion de reposo lejos de la pieza

G28 U0 W0

( Mision cumplida frenamos el programa y lo rebobinamos dejandolo listo para otra ejecucion

M30

Das könnte Ihnen auch gefallen