MAQUINADO CNC HAAS G AND M CODE (Mecanizado con control numérico)
Contenido • Introducción • Estructura del Programa de Control Numérico • Componentes básicos de un Sistema de Control Numérico • Programación • Descripción de comandos
Introducción
El desarrollo del control numérico se lo debemos a la fuerza aérea de los Estados Unidos y también a la industria aeronáutica. El primer trabajo de desarrollo en el área de controles es atribuido a John Parsons y sus socios de nombre Frank Stulen en el corporativo Parsons en la ciudad de Michigan. El concepto original de control numérico involucraba el uso de datos de posicionamiento por coordenados contenidas en una cinta perforada para definir contornos de diferentes partes mecánicas. Introducción
El Control Numérico Computarizado (CNC) ha sido uno de los más importantes desarrollos en manufactura en los últimos 50 años, al desarrollar : ❖Nuevas técnicas de producción ❖Incrementar la calidad de los productos ❖Reducción de costos Introducción
VENTAJAS EN MANUFACTURA : • Permite una mejor planeación de las operaciones • Se incrementa la flexibilidad de maquinado • Reducción en tiempo de programación • Mejor control del proceso y tiempos de maquinado • Disminución en los costos por herramientas • Se incrementa la Seguridad para el usuario • Reducción del tiempo de flujo de material • Reducción del manejo de la pieza de trabajo • Aumento de productividad • Aumento en precisión Ventajas principales de un equipo de CNC
❑Fresado ❑Torneado ❑Taladrado ❑Esmerilado ❑Doblado ❑Punzonado ❑Maquinado por descarga eléctrica (EDM) ❑Inspección (Máquina de coordenadas) Aplicaciones
Estructura del Programa
• Un programa de control numérico está constituido de uno o más bloques. Cada bloque contiene uno o más comandos. Estos comandos generalmente son "registros de direcciones" que están seguidos por un valor. • Un ejemplo de un bloque sería: N540 G02 X30.0 Y-20.0 R-12.0 M08 que contienen las letras N, G, X, Y, R y M son utilizadas con los valores 540, 2, 30, -20, -12 y 8. • El control de la máquina ejecuta cada bloque. Adicionalmente las letras en el bloque son ejecutadas en un orden específico. Por ejemplo un código M se ejecuta antes de cualquier movimiento en los ejes, de esta manera en el bloque anterior el refrigerante se activará al inicio de cada viaje de los ejes. • Algunos controles solamente permiten una letra en cada bloque, algunos otros permiten varios códigos en el mismo bloque. • Algunos controles demandan que los comandos contengan ceros iniciales en los valores de los códigos, por ejemplo el comando G02 no puede ser G2. Estructura del programa
Componentes Básicos
• Los componentes básico de un Sistema de Control Numérico consisten en: – Programa de Instrucciones.- Son los comandos detallados paso a paso que dirigen al equipo de procesamiento. En su forma más común los comandos se refieren a la posición del husillo de la máquina con respecto a la mesa de trabajo en la cual la parte está colocada. Instrucciones más avanzadas incluyen la selección de la velocidad del husillo, herramienta de corte, y otras funciones. Este programa está codificado a través de un medio de transmisión a la máquina de control. El medio más común que se utiliza en las últimas décadas ha sido la cinta perforada. Debido a que se ha utilizado mucho este medio el Control Numérico es algunas veces conocido como Control de Cinta. – La Unidad de Control de la Máquina.- Está constituida de componentes electrónicos y de control, que leen e interpretan el programa y lo convierten en acciones mecánicas. – Equipo de Procesamiento.- Es el tercer componente básico de un sistema de control numérico. Es el componente que realiza el trabajo. Es un ejemplo más común de Control Numérico, es aquel que realiza las operaciones de maquinado, el equipo de procesamiento consiste en una mesa de trabajo y un husillo, así como los motores y los controles que los operan. Componentes básicos
Programación EIA-ISO
Estándares de Controladores Existen diferencias entre los controladores que se encuentran en el mercado, inclusive de un mismo fabricante debido a la variedad de modelos existentes. Para entender el CNC, es necesario conocer las diferencias y similitudes que presentan los diferentes controladores así como los estándares que utilizan para su programación. Normalmente se siguen dos estándares mundiales: ISO 6983 (International Standarization Organization). EIA RS274 (Electronic Industries Association). Programación
Estándares ISO/EIA Estándares de instrucciones de programación (código) que permiten a la máquina herramienta llevar a cabo ciertas operaciones en particular. CONVERZACIONAL Llenar espacios. Programación
V. Sistema de coordenadas Para programar equipos de procesamiento e Control Numérico, es necesario el establecer un sistema de ejes estándar en los cuales se pueda especificar la posición relativa de la herramienta con respecto a la pieza a trabajar. Utilizando un taladro prensa de Control Numérico como ejemplo, el husillo está en una posición horizontal fija, y la mesa se mueve en relación al husillo. Sin embargo, para hacer cosas más fáciles para el programador de partes, el punto de vista se adapta a que la pieza de trabajo esté estacionaria, mientras que la herramienta es la que se mueve en relación a ella, debido a esto, el sistema de coordenadas de Control Numérico, está definido con respecto a la mesa de trabajo.
Una fresa de Control Numérico, utiliza un sistema de ejes similar al de la prensa taladro, sin embargo, en adición a los tres ejes lineales, estas máquinas poseen la capacidad para controlar uno o más ejes rotacionales. Los tres ejes rotacionales son definidos en Control Numérico como: los ejes A, B, y C. Estos ejes son utilizados para especificar ángulo en los ejes X, Y, Z, respectivamente. Para distinguir de movimientos angulares negativos de los positivos, se puede utilizar la regla de la mano derecha. Utilizando la mano derecha con el pulgar apuntando en la dirección del eje lineal positivo (X, Y, Z), los dedos de la mano apuntan en la dirección rotacional positiva.
Para operaciones con torno, dos ejes son normalmente los que se requieren para realizar el movimiento, de la herramienta a la pieza de trabajo rotativa. El eje Z es el eje de rotación de la parte de trabajo, y el eje X define la localización radial de la herramienta de corte.
CARACTERES ESPECIALES PROGRAMACIÓN Un carácter de final de lectura deberá ser el primero y el último en el programa el cual va a ser cargado al control de la máquina por medio del puerto serial RS-232. Si se van a cargar múltiples programas, es deseable en poner un carácter de final entre cada uno de los programas; dicho carácter, deberá ser utilizado después del último carácter en cada bloque de datos del programa que va ser cargado en la memoria del control, si este se omite en el bloque de datos del programa, el control considerará que el bloque siguiente es parte del bloque de final que falta. Esto puede causar un comportamiento inadecuado en la máquina.
FORMATO DE PROGRAMACIÓN Los programas a ser ejecutados consisten en “palabras” alfa numéricas que el control reconocerá como comandos. Estas palabras consisten en direcciones y los números designados para su dirección. Las palabras dentro de un bloque deberán de tener una secuencia conveniente. Sin embargo, se recomienda la siguiente secuencia: El programa del sistema fue configurado para proveer la resolución de programación de .001 pulgadas en el cual provoca que los Formatos de palabras sean aplicados a los valores asociados. Estos formatos son dados para cada descripción de palabra y también están listados en las tablas para este fin; dichos números designan la cantidad máxima de lugares que se permite a la derecha y a la izquierda del punto decimal. Un signo más no es necesario ya que el control lo asume si éste no es especificado; en cambio, el signo menos deberá ser programado, si es necesario.
• Se debe tener mucho cuidado cuando se escribe un programa ya que todos los movimientos de la máquina serán ejecutados según el programa. Una selección de una función incorrecta podría derivar en un movimiento incorrecto. • La unidad básica de entrada es el "bloque". Normalmente una línea o información de bloque representa una operación describible o varias operaciones describibles que son independientes unas de otras. (Por ejemplo, el movimiento de ejes y la velocidad del husillo son operaciones independientes que podrán ser programadas en el mismo bloque.) Un bloque puede contener cualquiera o todas las siguientes: 1. Código para borrar bloque (/) 2. Número de secuencia (función N) 3. Funciones preparatorias (función G) 4. Instrucciones de movimientos de ejes (funciones X, Y, Z) 5. Comando de avance (función F) 6. Comando de velocidad del husillo (función S) 7. Selección de herramientas (funciones T, D y H) 8. Funciones misceláneas (función M) Programación
NÚMERO DE PROGRAMA • A los programas guardados en la memoria de control se les deberá asignar un número, el cual será utilizado para identificar los diferentes programas y subprogramas que están almacenados en la memoria. Estos números tienen un rango de 1 a 8999. Sin embargo, deberán tomarse en cuenta las siguientes restricciones cuando se asignan éstos: – Caracteres alfa u otros misceláneos no son permitidos. – Los números de programa del 9000 al 9999 están reservados para programas macros. Estos números no pueden ser asignados a los programas. – El número del programa deberá ser identificado por la letra O seguida del número de identificación del programa. – No es necesario programar los ceros de inicio ya que éstos son automáticamente insertados por el control. – El número de programa deberá de estar en la primera línea del programa. Podrá ser programado en una sola línea o pude ser el primer dato de entrada en el bloque. Programación
– Designación de ejes. – Nomenclatura de movimiento de ejes – Formato de comandos operacionales – Formato de datos – Interfase eléctrica entre los controles y la máquina • Ejes de programación EJES X, Y y Z. • Los ejes de movimiento paralelo a la cara del husillo son los X y Y. El movimiento del eje paralelo a la línea de centro del husillo es el eje Z, estas letras que designan los tres ejes es lo que recomienda la Asociación de Industrias Electrónicas. • En un esfuerzo para promover la intercambiabilidad y para prevenir malentendidos entre los manufacturadores y compradores de Control Numérico, la E.I.A. ha definido unos estándar recomendados. Estos estándares incluyen lo siguiente: • Programación
PROGRAMACIÓN DE PUNTO DECIMAL ❑Un punto decimal debe ser usado con las siguientes letras: A, C, F, I, K, R, U, V, W, X, Y y Z. Si un punto decimal es programado en una palabra en la cual el punto decimal no es permitido (G, M, N, O, P, Q, S o T) o si dos o más puntos decimales aparecen en cualquier palabra, se mostrará un mensaje de error. ❑Si no se programa un punto decimal, el control utiliza el formato adecuado para insertar los ceros y colocar el punto decimal en la posición adecuada. Ejemplo: en el modo de pulgadas (G20), el formato para la letra Z es 2.4 Si Z4 es programada el control lo asumirá como Z4.0000. ❑Con esto se ve que el punto decimal es un concepto importante para tomarse en cuenta. Puede haber una gran diferencia entre valores con y sin puntos decimales. Ejemplo: el comando X2. envía la mesa a la coordenada X2.0000, sin embargo, el comando X2, envía la mesa a X.0002. Asegúrese de que el punto decimal sea programado cuando se permita. Además de especificar la localización del punto decimal, los formatos de datos también indican, el número máximo de dígitos que pueden aparecer a la izquierda y derecha del punto decimal. COMANDO O (Open) • Este comando es el que identifica al número de programa y debe ser precedido por este número de identificación.
Estructura de un block Programación
Descripción de Comandos
COMANDO N • Esta provee de un número de secuencia, que consiste en cuatro dígitos (0000-9999). No es requisito tener un número de secuencia en cualquier bloque. Cuando esta letra sea utilizada puede ser colocada en cualquier parte del bloque; sin embargo se acostumbra programarlos como la primer parte del bloque. El comando N no afecta la operación de la máquina, sin embargo esto le da a los operadores una referencia valiosa. • La secuencia de numeración puede empezar con cualquier número, por ejemplo N0001. Se recomienda que el programador asigne una secuencia de números en intervalos de cinco o diez, para que de ésta manera después se puedan insertar bloques adicionales al programa. Esto elimina la necesidad de la reasignación de números de secuencia después de que los bloques son agregados al programa. La única excepción para esta recomendación es que el bloque que empiece cada operación sea asignado en número de herramienta que utilizará durante esa operación. Por ejemplo, para utilizar la herramienta número 6, el número de bloque • Para iniciar esa operación será N6. Descripción de Comandos
COMANDO G FUNCIÓN PREPARATORIA • Las máquinas de Control Numérico utilizan los códigos G00, G01, G02 Y G03 para determinar el método de interpolación cuando se mueve entre puntos. • Los comandos G00 y G01 son de interpolación lineal, los comandos G02 y G03 son para interpolación circular, G02 para el sentido a favor de las manecillas del reloj y G03 en sentido en contra de las manecillas del reloj. Descripción de Comandos
G00 COMANDO LINEAL RÁPIDO • En este modo, la máquina se moverá tan rápido como la longitud de viaje del eje le permita al punto programado. Todos los ejes se mueven simultáneamente al punto programado. G01 AVANCE LINEAL • En este modo la máquina se moverá a un avance definido por el comando F al punto programado. Todos los ejes se mueven simultáneamente para llegar al punto programado. Descripción de Comandos
El signo del valor de R especifica a que arco será maquinado. G02 INTERPOLACIÓN CIRCULAR • (Movimiento circular con sentido de las manecillas del reloj). En este modo la máquina describirá un arco en dos ejes de acuerdo al plano activo. El arco será en sentido de las manecillas del reloj. Si se programa un tercer eje entonces el movimiento será helicoidal a lo largo de la longitud del eje. Hay dos métodos para determinar el radio del arco, ya sea utilizando el registro R (radio) o describir el centro utilizando los registros I, J y K. Descripción de Comandos
• G03 INTERPOLACIÓN CIRCULAR (movimiento circular con sentido en contra de las manecillas del reloj). En este modo la máquina describirá un arco en los dos ejes de acuerdo al plano activo. El arco será en contra de las manecillas del reloj. Si se programa un tercer eje entonces el movimiento será Helicoidal a lo largo de la longitud del eje de la herramienta. • Hay dos métodos para determinar el radio del arco, ya sea utilizando el registro R (radio) o describir el centro utilizando los registros I, J y K. Descripción de Comandos El signo del valor de R especifica a que arco será maquinado.
G17 PLANO XY • Los ejes X y Z son los ejes del plano, el eje Y, es el eje de la longitud de la herramienta. La dirección y el arco puede ser en el sentido de las manecillas del reloj o en contra de ellas, como se muestra en el final positivo de la longitud del eje Y. G18 PLANO XZ • Los ejes X y Z, son los ejes del plano y el eje Y es el eje de la longitud de la herramienta. G19 PLANO YZ • Los ejes Y y Z, son los ejes del plano y el eje X es el eje de la longitud de la herramienta. Descripción de Comandos
G20 / G70 ENTRADA DE DATOS EN PULGADAS • Cuando este comando está activo, se asume que todos los datos están en pulgadas y son interpretados de acuerdo a la tabla de la página 86 Y 87. G21 / G71 ENTRADA DE DATOS EN SISTEMA MÉTRICO • Cuando este comando está activo, se asume que todos los datos están en metros y son interpretados de acuerdo a la tabla de la página 83 Y 84. G28 RETORNO A LA POSICIÓN DE REFERENCIA • Este comando realiza un retorno automático a la posición de referencia para uno o más ejes. Este movimiento es realizado para cada uno de los ejes a los que se les haya requerido. Descripción de Comandos
G40 CANCELACIÓN DE LA COMPENSACIÓN DE LA HERRAMIENTA • Cuando este comando está activo no se considera el diámetro de la herramienta y el movimiento que se realiza se hace sin compensación. • Cuando este comando está activo la compensación se hará a la izquierda de la pieza trabajada. • Cuando este comando está activo la compensación se hará a la derecha de la pieza trabajada. Cuando el comando de interpolación G02 y el giro es en sentido de las manecillas del reloj. Descripción de Comandos G41 COMPENSACIÓN DEL DIÁMETRO DE LA HERRAMIENTA ACTIVA HACIA LA IZQUIERDA DE LA PARTE G42 COMPENSACIÓN DEL DIÁMETRO DE LA HERRAMIENTA ACTIVA HACIA LA DERECHA DE LA PARTE.
G41 Compensación a la izquierda G40 Ruta Programada G42 Compensación a la derecha G41 Compensación a la izquierda G42 Compensación a la derecha G40 Ruta Programada Descripción de Comandos
• La compensación de la herramienta está establecida al programar G43 con una letra H. La letra H especificará el tipo de herramienta que va a ser utilizada. • Este comando cancela al comando anterior. Descripción de Comandos G43 COMPENSACIÓN DE LA LONGITUD DE LA HERRAMIENTA ACTIVA G49 CANCELACIÓN DE LA COMPENSACIÓN DE LA LONGITUD DE LA HERRAMIENTA
• Los comandos del G54 al G59 permiten al programador cambiar a posiciones 0. A través de la selección de diferentes sistemas de coordenadas, el programador puede utilizar el mismo programa para maquinar varias piezas. • El comando G54 es el que está por default y permanecerá activo hasta que otro sistema de coordenadas sea seleccionado. • Cuando uno de los comandos del G55 al G59 es seleccionado, ese comando estará activo hasta que suceda uno de los siguientes casos: – Se selecciona otro sistema de coordenadas. – La tecla de RESET se presione – La máquina se apague. Descripción de Comandos G54-G59 SISTEMAS DE COORDENADAS PARA TRABAJOS ESTÁNDAR
G76 CICLO DE MANDRILADO FINO • Después de que barrenado se realiza, la rotación de la herramienta se detiene y la herramienta se aleja de la superficie maquinada y se retrae para que la pieza no se dañe. La Herramienta se retractara ya sea al punto de inicio o al punto de retorno especificado por la letra R, dependiendo de si el comando G98 o G99 se encuentra activo. X Posicionamiento opcional en el eje “X” Y Posicionamiento opcional en el eje “Y” Z Posición al fondo del agujero F Avance en pulgadas o milímetros por minuto R Posición del plano R Q Valor de desplazamiento, siempre incremental O1234; M06 T____; G00 G90 G54~G59 X____ Y____; G43 H____ Z____ S____ M03 ; M08; G76 X____ Y____ R____ Q____ F____ ; Z____ ; G00 G80 M09; G28 G91 Z0; M30 Descripción de Comandos
G80 CANCELACIÓN DE CICLO • Este comando cancela en los ciclos de maquinado G73, G74, G76 y G81 al G89. La programación de datos para la posición de retorno (comando R) y para la profundidad de el corte en (comando Z) se cancelan. Descripción de Comandos
G81 CICLO DE TALADRADO • Este comando activa el ciclo de taladrado de paso sencillo. Cuando el taladrado se completa, la herramienta continuará girando mientras se retrae y se retira ya sea al punto de retorno especificado por la letra R o al punto de inicio esto dependiendo de que el comando activo sea G98 o G99. X Posicionamiento opcional en el eje “X” Y Posicionamiento opcional en el eje “Y” Z Posición al fondo del agujero F Avance en pulgadas o milímetros por minuto R Posición del plano R O1234; M06 T____; G00 G90 G54~G59 X____ Y____; G43 H____ Z____ S____ M03 ; M08; G81 G98/99 X____ Y____ R____F____ ; Z____ ; G00 G80 M09; G28 G91 Z0; M30 Descripción de Comandos
G83 CICLO DE TALADRADO POR INCREMENTOS (CON DESAHOGO DE REBABA) • Este comando realiza el taladrado utilizando incrementos constantes de profundidad. Cuando se completa el último taladrado, herramienta se retrae y se retira ya sea al punto de inicio del ciclo de taladrado o al punto de retorno especificado por la letra R esto dependiendo de si el comando G98 o G99 está activo. X Posicionamiento opcional en el eje “X” Y Posicionamiento opcional en el eje “Y” Z Posición al fondo del agujero F Avance en pulgadas o milímetros por minuto R Posición del plano R Q Profundidad de corte para cada pasada (valor incremental) O1234; M06 T____; G00 G90 G54~G59 X____ Y____; G43 H____ Z____ S____ M03 ; M08; G83 G98/99 Z____ R____ F____ Q____; X____ Y____; X____ Y____; G00 G80 M09; G28 G91 Z0; M30 Descripción de Comandos
G84 CICLO DE PERFORACIÓN DE MANO DERECHA • Si el comando G98 se encuentra activo, cuando la perforación se completa, el husillo girará en dirección de reversa y se colocará en el punto R y subsecuentemente al punto de inicio el ciclo de perforación. Si el comando G99 se encuentra activo entonces irá al punto R y permanecerá ahí. Este comando (G73) es programado en un bloque de datos, y permanecerá activo hasta que sea cancelado por otro comando del grupo G. Descripción de Comandos
G85 CICLO DE MANDRILADO • Después de que la herramienta barrenadora logra la profundidad programada, la herramienta seguirá girando y se retractará al punto de retorno especificado por la letra R. La herramienta permanecerá en el punto de retorno si el comando G99 se encuentra activo. Si el comando G98 está activo entonces la herramienta regresará al punto inicial del ciclo de barrenado. X Posicionamiento opcional en el eje “X” Y Posicionamiento opcional en el eje “Y” Z Posición al fondo del agujero F Avance en pulgadas o milímetros por minuto R Posición del plano R O1234; M06 T____; G00 G90 G54~G59 X____ Y____; G43 H____ Z____ S____ M03 ; M08; G85 G98/99 Z____ R____ F____ ; X____ Y____; X____ Y____; G00 G80 M09; G28 G91 Z0; M30 Descripción de Comandos
G90 MODO DE POSICIONAMIENTO ABSOLUTO • Este comando ordena que todo el movimiento en los ejes sea ejecutado en relación a la posición de referencia (inicial), a no ser que sea modificado por los comandos G54 al G59. La posición de referencia será cambiada de acuerdo al sistema de coordenadas de trabajo que este especificado. G91 MODO DE POSICIONAMIENTO INCREMENTAL • Este comando ordena que todo el movimiento en los ejes sea ejecutado en relación a la posición actual del eje. G92 CAMBIO DE COORDENADAS/LÍMITE DE VELOCIDAD EN RPM • CAMBIO DE COORDENADAS. Este comando permite el cambio de un sistema de coordenadas absolutas, según sea necesario. Los ejes de la máquina típicamente se mueven a una posición específica. Descripción de Comandos
G90 Sistema de coordenadas
G91 Sistema de coordenadas
G94 AVANCE EN PULGADAS /MILÍMETROS POR MINUTO • El avance (letra F) es programada directamente en pul/mm por min. Este avance permanece sin cambio hasta que es reprogramado. El formato de la letra F es F3.2 en modo de pulgadas (G20) y F5.0 en modo métrico (G21). El avance máximo programable es de 787 pul/min [20,000 mm/min]. G95 AVANCE EN PULGADAS /MILÍMETROS POR REVOLUCIÓN • El avance (letra F) es programada directamente en pul/mm por rev. Este avance permanece sin cambio hasta que es reprogramado. El formato de la letra F es F1.6 en modo de pulgadas (G20) y F3.4 en modo métrico (G21). El avance máximo programable es de 9.9999 pul/rev [500,000 mm/rev]. Descripción de Comandos
G96 VELOCIDAD DE SUPERFICIE CONSTANTE • Este comando permite la programación de la velocidad de la herramienta con respecto a la pieza directamente en pies de superficie por minuto en modo de pulgadas (G20) y metros de superficie por minuto en el modo métrico (G21). La velocidad de superficie constante es una función del rango de velocidad del husillo y la velocidad de superficie constante programada (letra S). El control automáticamente ajusta la velocidad del husillo dentro de este rango para mantener la velocidad de superficie constante a pesar de la posición de la herramienta. G97 PROGRAMACIÓN DIRECTA DE RPM • Las velocidades del husillo son programadas directamente en revoluciones por minuto. Si se desea una velocidad diferente en el husillo, se deberá de programar la letra S especificando la nueva velocidad. Descripción de Comandos
LETRA X • La letra X es un comando de posición del eje. El eje X tiene movimiento hacia la derecha o hacia la izquierda. Es medido entre la posición inicial X y la línea central del husillo y se escribe con una X seguida por un signo positivo (+) o negativo (-). El signo positivo puede ser omitido porque el control lo asume sin necesidad de ponerlo. • El husillo está en el eje X en la posición inicial cuando éste es alineado en la locación de referencia del eje X. Descripción de Comandos LETRA Y • La letra Y es un comando de posición del eje absoluto. El movimiento del eje Y es arriba o hacia abajo del centro de la máquina. Esto es medido entre la posición Y y la línea central del husillo y se escribe con una Y que es seguida por un signo positivo (+) o negativo (-). El signo positivo puede ser omitido porque el control lo asume sin necesidad de ponerlo. • Solamente se debe programar un comando Y en el bloque de datos. Si se programan más de uno, el control actuará de acuerdo al último comando Y programado.
Descripción de Comandos