El presente sitio presenta diseños y proyectos realizados con Solidworks y otros programas 3d , además de laminas y modelos 3d para practicar en casa, con el único objetivo de poder aprender y explorar la capacidad de Solidworks, no existiendo en ningún caso fines de lucro.
Monday, July 27, 2015
Codigos de programacion para CNC G y M
Posted by Juan Francisco | Monday, July 27, 2015 | Category:
CNC,
Curiosidades
|
La programación nativa de la mayoría de las máquinas de Control Numérico Computarizado se efectúa mediante un lenguaje de bajo nivel llamado G & M.
Se trata de un lenguaje de programación vectorial mediante el que se describen acciones simples y entidades geométricas sencillas (básicamente segmentos de recta y arcos de circunsferencia) junto con sus parámetros de maquinado (velocidades de husillo y de avance de herramienta).
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.
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
Se trata de un lenguaje de programación vectorial mediante el que se describen acciones simples y entidades geométricas sencillas (básicamente segmentos de recta y arcos de circunsferencia) junto con sus parámetros de maquinado (velocidades de husillo y de avance de herramienta).
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.
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
Subscribe to:
Post Comments (Atom)
Currently have 0 comentarios: