Sunteți pe pagina 1din 156

SIMULADOR DE MECANIZA MECANIZADOS EN CDIGO ISO ISO-6983 PROYECTO FINAL DE CARRERA

ESCUELA TCNICA SUPERIOR DE INFORMTICA UNIVERSIDAD POLITCNICA DE VALENCIA

AUTOR: DIRECTOR:

JOS MARTN CARBONELL EDUARDO VENDRELL VIDAL

DE VALENCIA, SEPTIEMBRE D 2011.

Jos Martn Carbonell

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Ttulo del proyecto: Titulacin: Autor: Director:

Simulador de mecanizados en cdigo ISO-6983 Ingeniera Superior Informtica. (esp. informtica industrial) Jos Martn Carbonell Eduardo Vendrell Vidal

Jos Martn Carbonell

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Dedicado.

A mi padre, por haberme hecho ser quien soy.

A mi madre, por ensearme el camino hacia mis metas desde que era un nio.

Jos Martn Carbonell

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Agradecimientos.

A mi hermana Sonia, mi fuente inagotable de inspiracin, sabidura y amor a la ciencia. Sin duda alguna, mi ejemplo a seguir.

A Eduardo Vendrell por su inestimable ayuda y confianza y por haberme brindado la oportunidad de desarrollar este proyecto final de carrera.

Jos Martn Carbonell

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

NDICE
NDICE ................................................................................................................. 5 NDICE DE FIGURAS ........................................................................................ 9 NDICE DE TABLAS ........................................................................................ 13 NDICE DE FRMULAS.................................................................................. 14 CAPTULO 1. INTRODUCCIN .................................................................... 15
1.1. 1.2. Presentacin del problema.......................................................................................................... 15 Objetivos del proyecto................................................................................................................... 16 Objetivos finales. .................................................................................................................... 16 Objetivos intermedios.......................................................................................................... 16

1.2.1. 1.2.2. 1.3.

Descripcin de la estructura de la memoria......................................................................... 17

CAPTULO 2. ESTADO DEL ARTE .............................................................. 19


2.1. Sistemas CAD/CAM......................................................................................................................... 19 Modelado de la pieza. ........................................................................................................... 21 Generacin de las trayectorias de mecanizado. ........................................................ 21 Generacin del programa de mecanizado. .................................................................. 22 Obtencin de la pieza mecanizada. ................................................................................. 22 2.1.1. 2.1.2. 2.1.3. 2.1.4. 2.2. 2.3.

mecaCNC en el proceso CAD/CAM. .......................................................................................... 23 Anlisis comparativo...................................................................................................................... 24 Variables de comparacin. ................................................................................................. 24 Soluciones completas CAD/CAM incluidas en el anlisis. ..................................... 25 CATIA. ............................................................................................................................... 25 MasterCAM...................................................................................................................... 26 SolidCAM.......................................................................................................................... 27

2.3.1. 2.3.2.

2.3.2.1. 2.3.2.2. 2.3.2.3. 2.3.3.

Simuladores CNC incluidos en el anlisis. ...................................................................28

Jos Martn Carbonell

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

2.3.3.1. 2.3.3.2. 2.3.3.3. 2.3.3.4. 2.4.

CNCSimulator................................................................................................................. 28 Swansoft CNC Simulator............................................................................................ 29 Enhanced Machine Controller (EMC). ................................................................. 29 EMCO WinCAM. ............................................................................................................. 30

Resultados del anlisis. ................................................................................................................. 31

CAPTULO 3. LAS MQUINAS DE CONTROL NUMRICO ................... 34


3.1. 3.2. Evolucin histrica de las mquinas de control numrico. ........................................... 34 Las mquinas de control numrico por computador. ...................................................... 37 Estructura informtica de una mquina-herramienta. .......................................... 37 Tipos de mquinas-herramienta CNC. .......................................................................... 38 Segn su funcin: ......................................................................................................... 38 Segn el control numrico: ...................................................................................... 39

3.2.1. 3.2.2.

3.2.2.1. 3.2.2.2. 3.3. 3.4. 3.5.

Los centros de mecanizado. ........................................................................................................ 40 El centro de mecanizado EMCO PC Mill 125. ....................................................................... 40 Previsin de futuro. ........................................................................................................................ 41

CAPTULO 4. DESCRIPCIN DEL DESARROLLO ................................... 44


4.1. Qu es mecaCNC?........................................................................................................................... 44 Caractersticas principales. ................................................................................................ 44 4.1.1. 4.2.

Cuestiones preliminares. .............................................................................................................. 45 Lenguajes de programacin utilizados. ........................................................................45 Java. .................................................................................................................................... 45 OpenGL. ............................................................................................................................ 47 HTML. ................................................................................................................................ 47

4.2.1.

4.2.1.1. 4.2.1.2. 4.2.1.3. 4.2.2. 4.2.3.

Entorno de programacin. ................................................................................................. 48 Material necesario para el desarrollo............................................................................ 49 Herramientas hardware. ........................................................................................... 49 Herramientas Software.............................................................................................. 49

4.2.3.1. 4.2.3.2. 4.3.

Planificacin. ..................................................................................................................................... 50 4.3.1.1. 4.3.1.2. 4.3.1.3. Sub-tareas........................................................................................................................ 52 Hitos. .................................................................................................................................. 52 Diagrama de Gantt. ...................................................................................................... 54

4.4.

Estructura del programa. ............................................................................................................. 57

Jos Martn Carbonell

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

4.4.1.

Diseo en alto nivel. .............................................................................................................. 57 Arquitectura general. .................................................................................................. 57 Interacciones entre mdulos. .................................................................................. 58 Flujo de ejecucin de una instruccin ISO-6983 en mecaCNC. ................. 59

4.4.1.1. 4.4.1.2. 4.4.1.3. 4.4.2.

Interfaz grfica. ....................................................................................................................... 62 Usuario.............................................................................................................................. 62 Contenido. ....................................................................................................................... 62 Contexto. .......................................................................................................................... 63 Primera aproximacin: Wireframe. ......................................................................63 Resultado. ........................................................................................................................ 64

4.4.2.1. 4.4.2.2. 4.4.2.3. 4.4.2.4. 4.4.2.5.

4.4.2.5.1. Ventana principal. .................................................................................................... 64 4.4.2.5.2. Ventana Definir Pieza. ............................................................................................ 65 4.4.2.5.3. Ventana Configurar Herramientas. ................................................................... 66 4.4.3. Diseo en bajo nivel. ............................................................................................................. 67 Paquete Interfaz............................................................................................................ 68

4.4.3.1.

4.4.3.1.1. Clase MecaCNC. ......................................................................................................... 69 4.4.3.1.2. Clase Punto.................................................................................................................. 70 4.4.3.1.3. Clase PuntoR2. ........................................................................................................... 70 4.4.3.2. Paquete Consola............................................................................................................ 70

4.4.3.2.1. Clase Analizador. ...................................................................................................... 70 4.4.3.2.2. Clase Ejecucion. ......................................................................................................... 70 4.4.3.3. Paquete Representacion............................................................................................ 71

4.4.3.3.1. Clase Representacion. ............................................................................................. 71 4.4.3.3.2. Subclase Redibujado. .............................................................................................. 72 4.4.3.4. Paquete GeometriaAnalitica. ................................................................................... 72

4.4.3.4.1. Clase FMatematicas. ................................................................................................ 72 4.4.3.5. 4.4.3.6. 4.4.4. Paquete Ayuda............................................................................................................... 72 Variables y mtodos principales por clase. ....................................................... 73

Analizador lxico-sintctico-semntico. ...................................................................... 76 Anlisis lxico. ............................................................................................................... 77 Anlisis semntico ....................................................................................................... 78

4.4.4.1. 4.4.4.3.

Jos Martn Carbonell

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

CAPTULO 5. GEOMETRA ANALTICA .................................................... 80


5.1. 5.2. Interpolacin lineal......................................................................................................................... 80 Interpolacin circular. ................................................................................................................... 81 Clculo de la aproximacin al arco mediante coordenadas polares. ................ 81 Clculo del centro del arco dados los puntos origen y final y el radio. ............ 84 Clculo del radio dados los puntos inicial y final y el centro del arco.............. 86 Interpolacin circular en base al centro del arco. .................................................... 86 Interpolacin circular en base al radio. ........................................................................ 87

5.2.1. 5.2.2. 5.2.3. 5.2.4. 5.2.5. 5.3.

Compensacin de radio................................................................................................................. 87 Clculo de la trayectoria compensada en interpolaciones lineales................... 88 Clculo de la trayectoria compensada en interpolaciones circulares. ............. 90

5.3.1. 5.3.2. 5.4.

Clculo de la trayectoria compensada en una secuencia de interpolaciones. ........ 91 Clculo trayectoria compensada secuencia de interpolaciones lineales. ....... 93 Clculo trayectoria compensada secuencia de interpolaciones mixta. ........... 96

5.4.1. 5.4.3.

CAPTULO 6. EJEMPLO DE USO.................................................................. 98


6.1. 6.2. Enunciado. .......................................................................................................................................... 98 Resolucin mediante mecaCNC. ................................................................................................ 99

CAPTULO 7. CONCLUSIONES .................................................................. 110


7.1. 7.2. 7.3. Anlisis de resultados. ................................................................................................................ 110 Dificultades encontradas durante la elaboracin del proyecto. ............................... 113 Proyeccin de futuro. .................................................................................................................. 114

CAPTULO 8. REFERENCIAS ..................................................................... 116 CAPTULO 9. BIBLIOGRAFA ................................................................... 117 ANEXO A. MANUAL DE USUARIO ........................................................... 119 ANEXO B. EL CDIGO ISO-6983 EN MECACNC ................................... 155

Jos Martn Carbonell

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

NDICE DE FIGURAS
Figura 2.1: Diagrama del proceso de fabricacin. [1] .......................................................................... 20 Figura 2.2: Ejemplo de proceso CAD/CAM. [1]....................................................................................... 21 Figura 2.3: mecaCNC en el proceso CAD/CAM. ...................................................................................... 23 Figura 2.4: CATIA V6. ........................................................................................................................................26 Figura 2.5: MasterCAM X5 MU1. ................................................................................................................... 27 Figura 2.6: SolidCAM 2011. ............................................................................................................................ 27 Figura 2.7: CNCSimulator v4.53f. ................................................................................................................. 28 Figura 2.8: Swansoft CNC Simulator 6.70. ................................................................................................ 29 Figura 2.9: LinuxCNC EMC2............................................................................................................................ 30 Figura 2.10: EMCO WinCAM 2.43................................................................................................................. 31 Figura 3.1: Pintura egipcia del siglo III a.C. de una operacin de torneado. .............................. 34 Figura 3.2: Grabado de 1435 de un torno accionado por arco.........................................................35 Figura 3.3: Mandrinadora de J. Wilkinson fabricada en 1775..........................................................35 Figura 3.4: Rectificadora de Charles H. Norton construida en 1896. ............................................ 36 Figura 3.5: Primera mquina de control numrico. ............................................................................. 36 Figura 3.6: Centro de mecanizado EMCO PC Mill 125. ........................................................................ 40 Figura 3.7: Fresadora de estructura cinemtica paralela Seyanka ................................................42 Figura 3.8 (izquierda): Prototipo de Contour Crafting en funcionamiento. ............................... 43 Figura 3.9 (derecha): Animacin del uso de Contour Crafting en la edificacin. ..................... 43 Figura 3.10: Mquina Reprap. ....................................................................................................................... 43 Figura 4.1: Arquitectura Java Platform Standard Edition (Java SE). ............................................. 46 Figura 4.2: Ventana principal de cdigo de mecaCNC sobre NetBeans 6.9 ................................ 48 Figura 4.3: Modelo en espiral de Boehm en cuatro fases. .................................................................. 51 Figura 4.4: Diagramas de Gantt previo y resultado .............................................................................. 56 Figura 4.5: Diagrama de arquitectura general. ....................................................................................... 58 Figura 4.6: Interacciones entre mdulos en base a la funcionalidad. ........................................... 59 Figura 4.7: Diagrama de flujo de la insercin de una instruccin en Cdigo G. ........................ 61 Figura 4.8: Variables de anlisis en la creacin de la interfaz grfica........................................... 62 Figura 4.9: Wireframe del interfaz grafico de mecaCNC. ................................................................... 63 Figura 4.10: Interfaz grfica de la ventana principal de mecaCNC. ...............................................64 Figura 4.11: (izquierda) Detalle del elemento de men Archivo. ................................................... 65

Jos Martn Carbonell

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Figura 4.12: (derecha) Detalle del elemento de men Configuracin. ......................................... 65 Figura 4.13: Ventana secundaria Definir Pieza. ..................................................................................... 66 Figura 4.14: Carrusel virtual vs. carrusel real......................................................................................... 66 Figura 4.15: Ventana secundaria Configurar Herramientas. ............................................................ 67 Figura 4.16: Diagrama de paquetes y clases de mecaCNC. ................................................................ 68 Figura 4.17: Partes de una instruccin ISO a nivel de anlisis lxico-sintctico-semntico76 Figura 4.18: El uso de la clase StringTokenizer...................................................................................... 77 Figura 5.1: Interpolacin lineal. .................................................................................................................... 80 Figura 5.2: Aproximacin al arco por N puntos y N-1 segmentos. ................................................. 81 Figura 5.3: Representacin en el sistema polar del punto P. ............................................................ 82 Figura 5.4: Recorrido del arco SR en el sistema polar para plano XY. ..........................................82 Figura 5.5: Recorrido del arco SCR en el sistema polar para plano XY. ....................................... 83 Figura 5.6: Operaciones a aplicar en base al cuadrante y plano de mecanizado...................... 84 Figura 5.7: Clculo del centro del arco en funcin del radio............................................................. 85 Figura 5.8: Clculo del radio en funcin del centro y el punto origen. ......................................... 86 Figura 5.9: Interpolacin circular SR en base al centro del arco..................................................... 87 Figura 5.10: Interpolacin circular SR en base al radio. ..................................................................... 87 Figura 5.11: Compensacin a izquierdas y derechas. .......................................................................... 88 Figura 5.12: Clculo de los puntos origen y final de la trayectoria compensada. .................... 89 Figura 5.13: Clculo trayectorias compensadas instruccin de interpolacin SCR. ............... 90 Figura 5.14: Compensacin sin anticipacin vs. con anticipacin. ................................................ 92 Figura 5.15: Tipos de resolucin de conflictos en la compensacin.............................................. 92 Figura 5.16: Clculo ptos corte trayectorias comp. simples interpolaciones lineales. .......... 93 Figura 5.17: Representacin grfica resultado de la trayectoria lineal compensada. ........... 94 Figura 5.18: Clculo puntos corte trayectorias comp. simples en interpolaciones SR. ......... 95 Figura 5.19: Representacin grfica resultado de la trayectoria circular compensada. ....... 95 Figura 5.20: Clculo puntos corte trayectorias comp. en interpolaciones mixtas. .................. 96 Figura 5.21: Representacin grfica resultado de la trayectoria mixta compensada. ........... 97 Figura 6.1: Tabla de herramientas resultante......................................................................................... 99 Figura 6.2: Panel Asignar Herramienta resultante. .............................................................................. 99 Figura 6.3: Ventana Definir Pieza resultante........................................................................................ 100 Figura 6.4: Ventana Definir Decalajes resultante. .............................................................................. 100 Figura 6.5: Panel Consola resultante. ...................................................................................................... 101 Figura 6.6: Panel Representacin resultante. ...................................................................................... 102 Figura 6.7: Panel Herramienta resultante. ............................................................................................ 102

Jos Martn Carbonell

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Figura 6.8: Panel Configuracin resultante........................................................................................... 102 Figura 6.9: Representacin multivista del mecanizado del perfil exterior.............................. 104 Figura 6.10: Resultado final del mecanizado en perspectiva. ....................................................... 105 Figura 6.11: Resultado final del mecanizado en perfil. .................................................................... 105 Figura 6.12: Resultado final del mecanizado en planta. .................................................................. 106 Figura 6.13: Resultado final del mecanizado en alzado ................................................................... 106 Figura 6.14: Ventana de mecaCNC tras finalizar el mecanizado. ................................................. 107 Figura 6.15: Utilidades de edicin de cdigo en panel Consola.................................................... 107 Figura 6.16: Sistema de ayuda con lista de ISO-6983 interpretables por mecaCNC. .......... 108 Figura 6.17: Ventana de control de ejecucin paso a paso. ............................................................ 109 Figura 6.18: Ejecucin paso a paso sobre resultado. ........................................................................ 109 Figura Anexo A.1: Ventana principal. ...................................................................................................... 123 Figura Anexo A.2: Elementos de la ventana principal. ..................................................................... 124 Figura Anexo A.3: Barra de men. ............................................................................................................ 124 Figura Anexo A.4: Men Archivo ............................................................................................................... 125 Figura Anexo A.5: Ventana Abrir. .............................................................................................................. 125 Figura Anexo A.6: Ventana Guardar. ........................................................................................................ 126 Figura Anexo A.7: Ventana Exportar. ...................................................................................................... 127 Figura Anexo A.8: Ventana Importar. ...................................................................................................... 128 Figura Anexo A.9: Men Edicin................................................................................................................ 129 Figura Anexo A.10: Men Configuracin................................................................................................ 130 Figura Anexo A.11: Ventana Definir pieza (apariencia inicial). .................................................... 130 Figura Anexo A.12: Ventana Definir pieza (apariencia tras definicin de medidas) ........... 131 Figura Anexo A.13: Ventana Definir decalajes. .................................................................................... 132 Figura Anexo A.14: Ventana Definir correctores. ............................................................................... 133 Figura Anexo A.15: Ventana Configurar herramientas. ................................................................... 134 Figura Anexo A.16: Panel Tabla Herramientas en ventana Configurar Herramientas. ...... 135 Figura Anexo A.17: Panel Asignar Herramienta en ventana Configurar Herramientas. .... 136 Figura Anexo A.18: Panel Asignar Herramienta tras asignacin. ................................................ 136 Figura Anexo A.19: Ventana Guardar archivo de configuracin. ................................................. 137 Figura Anexo A.20: Ventana Cargar archivo de configuracin. .................................................... 138 Figura Anexo A.21: Men Cmara............................................................................................................. 138 Figura Anexo A.22: Representacin grfica de los ejes de coordenadas. ................................. 139 Figura Anexo A.23: Men Ayuda. .............................................................................................................. 140 Figura Anexo A.24: Ventana del sistema de ayuda integrada. ...................................................... 141

Jos Martn Carbonell

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Figura Anexo A.25: Modos del sistema de ayuda ............................................................................... 142 Figura Anexo A.26: Ventana Acerca de ............................................................................................... 143 Figura Anexo A.27: Panel Consola. ........................................................................................................... 144 Figura Anexo A.28: Men contextual en Lista de instrucciones ISO........................................... 145 Figura Anexo A.29: Ventana de ejecucin paso a paso..................................................................... 145 Figura Anexo A.30: Cuadro insercin de instrucciones con instruccin de ejemplo........... 147 Figura Anexo A.31: Botn de ejecucin de instruccin. ................................................................... 147 Figura Anexo A.32: Panel Representacin con ejemplo de programa de mecanizado ....... 148 Figura Anexo A.33: Representacin grfica con compensacin activa. .................................... 149 Figura Anexo A.34: Uso de ratn para modificar la cmara en la representacin. .............. 149 Figura Anexo A.35: Ejemplo de panel Herramienta con mecanizado en curso. .................... 150 Figura Anexo A.36: Indicador de estado del carrusel porta-brocas. .......................................... 151 Figura Anexo A.37: Datos identificativos herramienta activa en el panel Herramienta. ... 152 Figura Anexo A.38: Datos identificativos corrector asociado en el panel Herramienta..... 152 Figura Anexo A.39: Datos identificativos compensacin radio en panel Herramienta. ..... 153 Figura Anexo A.40: Panel Herramienta con compensacin activa. ............................................. 153 Figura Anexo A.41: Ejemplo de panel configuracin con mecanizado en curso. .................. 153

Jos Martn Carbonell

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

NDICE DE TABLAS
Tabla 2.1: Resultados anlisis comparativo en funcin de las variables consideradas......... 32 Tabla 3.1: Mquinas-herramienta CNC segn su funcin. ................................................................. 39 Tabla 4.1: Herramientas software empleadas en el desarrollo. ...................................................... 50 Tabla 4.2: Relacin de sub-tareas. ............................................................................................................... 52 Tabla 4.3: Relacin de hitos. ........................................................................................................................... 53 Tabla 4.4: Relacin de clases y variables principales. ......................................................................... 74 Tabla 4.5: Relacin de clases y sus mtodos. .......................................................................................... 76 Tabla 4.6: Condiciones en el anlisis lxico. ............................................................................................ 77 Tabla 4.7: Condiciones en el anlisis sintctico. .................................................................................... 78 Tabla 4.8: Condiciones en el anlisis semntico. ................................................................................... 79 Tabla 6.1: Relacin de instrucciones de inicializacin. .................................................................... 101 Tabla 6.2: Secuencia instrucciones G para mecanizar el contorno exterior............................ 103 Tabla 6.3: Secuencia instrucciones G para mecanizar el contorno interior ............................ 104 Tabla Anexo A.1: Parmetros de un corrector..................................................................................... 133 Tabla Anexo A.2: Elementos del sistema de ayuda. ........................................................................... 141 Tabla Anexo A.3: Indicadores del panel configuracin e instrucciones G asociadas. .......... 154 Tabla Anexo B.1: Acciones requeridas en proceso real y su equivalente en mecaCNC. ..... 155 Tabla Anexo B.2: Lista de instrucciones interpretables. ................................................................. 156

Jos Martn Carbonell

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

NDICE DE FRMULAS
Frmula 5.1: Clculo de los vrtices de los segmentos que aproximan al arco. ....................... 83 Frmula 5.2: Clculo del cuadrante en base al plano........................................................................... 84 Frmula 5.3: Ecuacin de la circunferencia C1. ..................................................................................... 85 Frmula 5.4: Clculo del radio en funcin del punto origen y el centro. ..................................... 86 Frmula 5.5: Clculo de los puntos Origen y Final de la trayectoria compensada. ................. 89 Frmula 5.6: Clculo de puntos Origen y Final para trayectorias comp. en interp. circ. ...... 91 Frmula 5.7: Ecuacin de la recta que pasa por los puntos compensados simples. ............... 94 Frmula 5.8: Sistema de ecuaciones formado por recta y circunferencia compensada. ...... 97

Captulo 1: Introduccin

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

CAPTULO 1
INTRODUCCIN
1.1. Presentacin del problema.
En la actualidad, los procesos de mecanizado se han convertido en una capacidad funcional indispensable en las cadenas de produccin, siendo, por tanto, fundamental el conocimiento, anlisis y perfeccionamiento de dichos procesos y los sistemas informticos que los generan y controlan en el mbito de la ingeniera informtica. Llevando los conceptos de mquina-herramienta y sistema informtico a un nico sistema, obtenemos las mquinas de Control Numrico por Computador (en adelante CNC), que asumen, actualmente, la prctica totalidad de los procesos de produccin automatizado del planeta. Debido al gran nmero de mquinas CNC existentes en el mercado, se consider la necesidad de englobar la programacin de dichas mquinas en un lenguaje de programacin estndar: el cdigo ISO-6983, ms comnmente conocido como Cdigo G. Este transcurso de sucesos nos lleva a una consideracin: actualmente se produce en masa de forma automtica, enlazando sistemas informticos (que consumen recursos virtuales) y mquinas fsicas (que consumen recursos reales), por tanto, y gracias a la capacidad de la tecnologa actual, podemos hacer servir los sistemas informticos para simular los resultados de los mecanizados reales, creando un paso previo que permite ahorrar recursos comprobando la adecuacin del resultado a la necesidad de produccin. Surgen de esta forma los simuladores de mecanizados. Tras esta breve descripcin del escenario, se puede considerar el planteamiento del problema segn las siguientes motivaciones:

1. Docencia: considerando la importancia de los sistemas de mecanizado, es de vital importancia dotar a los futuros ingenieros de los conocimientos de programacin ISO-6983 que, desde el bajo nivel, les permita llegar a disear y comprender el proceso de funcionamiento de soluciones avanzadas, tales como los paquetes CAD/CAM, o entender la interpretacin del cdigo CNC que realiza la prctica totalidad de los centros de mecanizado existentes. 2. Multiplataforma: el estado tecnolgico actual nos hace ver la necesidad de considerar la ejecucin de cualquier programa en el mximo de plataformas y sistemas operativos posibles, a fin de obtener un mayor alcance al usuario, sin restringir el entorno en el que ste se encuentre ms cmodo.

15

Captulo 1: Introduccin

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

3. Tiempo real: ntimamente ligado a la docencia, la ejecucin y representacin de instrucciones en tiempo real permite al usuario conocer, de forma directa y por separado, el resultado en el mundo real de cada una de ellas, facilitando la comprensin y permitiendo la edicin directa en caso de no obtener el resultado deseado. 4. Exportable a la mquina real: considerando la unin existente entre el sistema y el proceso real, la simulacin ha de poder convertirse en prototipo y producto, llevando a la prctica el trabajo realizado.

1.2. Objetivos del proyecto.


Considerando las motivaciones descritas en el apartado anterior, se acuerda la elaboracin de un programa simulador de mecanizados, fuertemente ligado a la docencia, haciendo uso del conjunto de instrucciones del Cdigo G. A fin de poder concluir en su uso docente, se particulariza su funcionamiento a los procesos de mecanizado realizados con la mquina CNC EMCO PC MILL 125, con la cual se trabaja actualmente en los laboratorios de mecanizado del Departamento de Ingeniera de Sistemas y Automtica (DISA) de la Universidad Politcnica de Valencia.

1.2.1.

Objetivos finales.
1. Desarrollo de un programa docente, consistente en un simulador de mecanizados mediante lenguaje ISO-6983, donde el alumno pueda aprender a programar mecanizados en mquinas CNC, de forma interactiva y en tiempo real, mostrando el resultado del mecanizado en 3D y con capacidad de exportacin a la mquina real, adaptando la funcionalidad del simulador a la mquina EMCO PC Mill 125. 2. Implantacin del simulador como herramienta docente en los laboratorios de mecanizado del DISA y el resto de departamentos que se considere.

1.2.2.

Objetivos intermedios.
1. El programa ser multiplataforma, pudiendo ser ejecutado en mltiples tipos de arquitectura de 32 y 64 bits (Intel, AMD, PowerPC, SPARC), as como en mltiples sistemas operativos (Linux, MacOSX, Windows y Solaris). 2. La ejecucin de instrucciones ser en tiempo real, de tal forma que al insertar una determinada instruccin en Cdigo G, se mostrar el resultado

16

Captulo 1: Introduccin

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

inmediato de su efecto en la configuracin de la mquina o en el mecanizado, siguiendo un cdigo especfico de colores. 3. Al tratarse de un lenguaje interpretado por el propio programa y en tiempo real, ser necesaria la creacin de un analizador lxico-sintctico de Cdigo G, capaz de asociar el conjunto de instrucciones correctas al conjunto de acciones adecuadas, y las incorrectas al manejador de errores. 4. Para simplificar la tarea docente, se crear una interfaz grfica de usuario fcil e intuitiva, que motive al alumno a la interactuacin y aprendizaje desde cero. Dicha interfaz permitir comprobar, a simple vista, el estado de la mquina y el resultado en 3D del mecanizado. 5. El alumno ha de recibir una herramienta de auto-aprendizaje, con los contenidos necesarios accesibles desde el propio programa que le permitan aprender desde cero a programar mecanizados en cdigo ISO6983. Es por ello que se crear un sistema de ayuda integrada interactivo. 6. El programa ser multiventana, pudindose ejecutar mltiples instancias independientes y simultneas.

1.3. Descripcin de la estructura de la memoria.


El presente documento se divide en 9 bloques diferenciados y 2 Anexos. Para facilitar la lectura y comprensin, a continuacin se describe, de forma concisa, cada uno de los bloques y anexos contenidos en el documento. 1. Introduccin. Breve descripcin inicial de las causas que llevan al planteamiento del problema, objetivos finales e intermedios y beneficios del desarrollo del proyecto. 2. Estado del arte. Anlisis de situacin en materia de los procesos de mecanizado y anlisis comparativo de distintas soluciones en relacin al proyecto que nos ocupa. 3. Las mquinas de control numrico. Descripcin de las mquinas de control numrico, su historia y la previsin de futuro, con un especial anlisis de la mquina EMCO PC MILL 125. 4. Descripcin del programa. Descripcin detallada del desarrollo del proyecto: descripcin del programa y sus caractersticas, planificacin, herramientas utilizadas, estructura y diseo en alto y bajo nivel.

17

Captulo 1: Introduccin

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

5. Geometra analtica. Descripcin de los mtodos matemticos empleados para el clculo de trayectorias y la representacin grfica de la simulacin en el espacio tridimensional. 6. Ejemplo de uso. Desarrollo completo de un caso prctico de mecanizado haciendo uso del simulador. 7. Conclusiones. Anlisis de resultados obtenidos en base a los objetivos y planificacin establecida, problemas encontrados y proyeccin de futuro del proyecto. 8. Referencias. 9. Bibliografa. Anexo A. Manual de usuario. Manual detallado de las funcionalidades y usos del simulador. Anexo B. El cdigo ISO-6983 en mecaCNC.

18

Captulo 2: Estado del arte

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

CAPTULO 2
ESTADO DEL ARTE
En la actualidad, la mayor parte de los trabajos de produccin profesionales en serie o a gran escala, son simulados en un paso previo a su fabricacin, ya que la tecnologa actual permite, adems de comprobar el estado final de la pieza en base a un mecanizado, comprobar otros factores que podan modificar el resultado, tales como el material, el desgaste de la herramienta, la temperatura, las posibles colisiones, etc. Las bondades de los sistemas simulados son evidentes: se observa previa a su fabricacin cual ser el resultado, pudiendo modificar parmetros en la programacin o la herramienta, y ahorrando as los costes asociados a una produccin con un resultado no deseado. La aproximacin conseguida por un simulador de mecanizados en la actualidad es increblemente fiel a la realidad. Es por ello que, en el proceso de diseo de una nueva pieza, el simulador supone en la mayora de los casos, la herramienta que controlar la mquina para obtener el propio resultado del mecanizado. Son muchas las empresas que ofrecen este tipo de software, incluso las propias fabricantes de mquinas-herramienta y centros de mecanizado los ofrecen como parte del propio sistema, consiguiendo as una harmona necesaria entre el diseo por computador, la simulacin y fabricacin asistida por computador. Podemos concluir, por tanto, que los simuladores se han convertido en un elemento ms, indispensable en el proceso de fabricacin automatizado.

2.1. Sistemas CAD/CAM.


Previo al anlisis del estado del arte en relacin a los simuladores de mecanizados, cabe explicar el estado de la fabricacin en base a sistemas CAD/CAM. CAD (Computer-Aided Design, Diseo Asistido por Computadora) abarca el uso de un amplio rango de herramientas computacionales, orientadas principalmente a la ingeniera y la arquitectura, con el objetivo de disear elementos propios de sus actividades. Dichas herramientas permiten la especificacin de elementos en 2D (mediante la generacin de planos acotados en mltiples vistas) y 3D (permitiendo una visin tridimensional foto-realista del resultado).

19

Captulo 2: Estado del arte

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

CAM (Computer-Aided Manufacture, Manufactura Asistida por Computador) concibe el uso de computadores y tecnologa avanzada en todas las fases de manufactura de un producto, reduciendo al mnimo la intervencin del operario. Podemos establecer el ciclo de manufactura de un producto como aquellas fases que comprenden el marketing, la ingeniera, la gestin de la produccin y la propia fabricacin del producto.

Figura 2.1: Diagrama del proceso de fabricacin. [1]

En la actualidad, el proceso de fabricacin une inexorablemente el CAD y el CAM, generndose un sistema comn denominado CAD/CAM. Considerando estos conceptos iniciales, en el presente documento repararemos nicamente en el proceso de diseo y fabricacin de una pieza, obviando el resto de elementos del proceso de manufactura. La tendencia actual en el mercado de la produccin enfatiza en la facilidad del proceso y la obtencin de buenos resultados si la etapa de diseo se realiza haciendo uso de software de modelado 3D. As pues, el proceso de diseo y fabricacin de una pieza tiene, de manera generalista, a cumplir un proceso similar al siguiente:

20

Captulo 2: Estado del arte

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Figura 2.2: Ejemplo de proceso CAD/CAM. [1]

Como se puede comprobar en el grfico de proceso de la Figura 2.2, a efectos de los sistemas de fabricacin asistida por computador, se pueden identificar tres fases iniciales (adems de la propia obtencin de la pieza) que podrn ser llevadas a cabo mediante soluciones distintas para cada una de las fases o haciendo uso de una sola aplicacin capaz de reproducir todo el proceso.

2.1.1.

Modelado de la pieza.

Se disea, en 2D o 3D (de mayor uso en el mbito que nos ocupa), la pieza que se desea obtener. Las propiedades foto-realistas del software actual permitirn una representacin fidedigna del resultado, pudiendo establecer los distintos materiales que compondrn la pieza previo al proceso de redenrizacin del modelo tridimensional. Esta fase inicial del proceso es fundamental para la obtencin de buenos resultados. La especificacin de las herramientas a utilizar, el tipo de material y, evidentemente, las medidas que componen la forma han de estar bien definidas, tarea que se simplifica en su comprobacin gracias a la simulacin del modelo. El final del proceso de modelado en el ejemplo anterior supone la obtencin de la Especificacin para Intercambio Inicial de Grficos (IGES). Este tipo de datos definirn la geometra de la pieza, a partir de la cual se podrn realizar los anlisis correspondientes en la siguiente etapa del proceso, apoyndose en la abstraccin de la representacin a favor de datos medibles y computables.

2.1.2.

Generacin de las trayectorias de mecanizado.

El anlisis de los datos obtenidos de la etapa anterior permitir definir las trayectorias de la mquina-herramienta que darn lugar al volumen previamente diseado.

21

Captulo 2: Estado del arte

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Durante esta parte del proceso, se pueden identificar ciertos problemas prematuros que den lugar a resultados no deseados, como es el caso de la deteccin de colisiones, donde el clculo de la trayectoria para la creacin de una determinada forma, lleva a un estado donde la geometra de la mquina y la pieza hacen imposible mecanizar. Como resultado del proceso de generacin de trayectorias en el ejemplo, se obtiene un fichero CLDATA (Cutter Location Data), que describe las ubicaciones o caminos de corte de la mquina.

2.1.3.

Generacin del programa de mecanizado.

Habiendo obtenido los datos de las trayectorias de corte de la fase anterior, el proceso se encuentra en disposicin de traducir todos los datos obtenidos a secuencias de cdigo interpretables por la mquina-herramienta o el centro de mecanizado. Se producir, por tanto, una conversin de los puntos que definen los caminos de corte a los parmetros de las instrucciones de interpolacin del estndar ISO. El anlisis y computacin de todos los datos obtenidos hasta ahora en el proceso generarn, por tanto, la secuencia de instrucciones ISO que compondrn el programa de mecanizado que resulta en la pieza inicialmente diseada. En conclusin, para el proceso ejemplo se obtendr el programa de mecanizado en cdigo ISO-6983, y con ello podrn darse por concluidas las fases del proceso en las que ha sido necesario el uso de software adicional al propio centro de mecanizado, bien sea mediante el uso de un programa para cada fase o bien mediante el uso de una solucin para todo el proceso.

2.1.4.

Obtencin de la pieza mecanizada.

Disponiendo del programa de mecanizado y habiendo podido simular su correcto resultado, nicamente restar el ltimo paso: preparar la mquina herramienta para la realizacin del mecanizado. Este ltimo paso puede implicar en mayor medida la necesidad fsica del operario, ya que ser en este momento cuando se deba emplazar y fijar el bruto, asignar las herramientas necesarias en los porta-brocas y realizar la carga del programa ISO obtenido, aunque este ltimo, actualmente, tambin puede ser automatizado, permitiendo en forma remota que el propio programa se comunique con la mquina y cargue en ella el programa.

22

Captulo 2: Estado del arte

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

2.2. mecaCNC en el proceso CAD/CAM.


Como se ha detallado en el apartado anterior, en la actualidad, el proceso de fabricacin trata de minimizar la accin del usuario, y, de manera anloga, consigue que los conocimientos requeridos por ste para la realizacin de un mecanizado sean menores. Tal es as que el objeto de cualquier mecanizado, en base al proceso anterior, nicamente exige al usuario el manejo del software CAD asumiendo cierta destreza en el modelado, indicando los materiales y medidas del elemento que se va a manufacturar, dejando a la automatizacin el clculo de las trayectorias y la generacin del programa ISO. A diferencia de este comn denominador actual, mecaCNC persigue el objetivo de ensear al usuario a programar en ISO, brindndole herramientas que, en tiempo real, le muestren el resultado de cada instruccin insertada, omitiendo la generacin automtica del cdigo y dejando, a un segundo plano opcional, la carga del programa ISO resultante en la mquina-herramienta. Por tanto, la funcionalidad de mecaCNC podr incluirse dentro de la tercera fase del proceso CAD/CAM, aproximando el programa a dicho proceso tal y como muestra el siguiente diagrama:

Figura 2.3: mecaCNC en el proceso CAD/CAM.

Este hecho nos lleva a una conclusin: el estado del arte en funcin del proceso de fabricacin CAD/CAM no es comparable con el proyecto que nos ocupa, ya que este ltimo nicamente ir orientado a una de las fase del proceso, si bien se ha considerado oportuno describir dicho proceso y analizar soluciones completas del proceso CAD/CAM, ya que, implcitamente, disponen de la funcionalidad necesaria para resolver la tercera fase del proceso, permitiendo simular grficamente la ejecucin de un programa ISO-6983. 23

Captulo 2: Estado del arte

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Como se podr comprobar en los prximos apartados, del resultado del anlisis comparativo, se pueden extraer conclusiones muy satisfactorias que podran ser tomadas en cuenta por las empresas desarrolladoras, tanto de software CAD/CAM capaz de manejar todo el proceso como simuladores CNC aplicables nicamente a la tercera fase.

2.3. Anlisis comparativo.


Considerando que la produccin en cadena asume gran parte del PIB de los pases industrializados, se han hecho grandes avances en referencia al software simulador de procesos de mecanizado, convirtindose en un sector de gran competencia entre las empresas de desarrollo de aplicaciones orientadas a los procesos de produccin. Es por ello que, a da de hoy, podemos encontrar grandes soluciones complejas que permiten simular con gran precisin, no slo el resultado final en base a la geometra de la pieza o el clculo de trayectorias de la mquina, sino que se incluyen aspectos tales como la deteccin de colisiones, la temperatura del husillo y la pieza, la dureza del material, y una gran lista de caractersticas que permiten al usuario obtener una aproximacin muy cercana a la realidad. De entre todas las soluciones que se han encontrado en el mercado actual, se han seleccionado aquellas que, bien por su calidad y nmero de usuarios, o bien por contemplar alguna caracterstica que las hace nicas, se han considerado dignas de anlisis, pese a que cabe destacar la labor de la prctica totalidad de ellas por tratarse de un mbito en la ingeniera de gran valor, complejidad e importancia.

2.3.1.

Variables de comparacin.

Dado el gran nmero de simuladores de mecanizados que podemos encontrar en la actualidad, se hace necesario que el objeto de este anlisis comparativo se particularice en aquellas variables que definen caractersticas principales de mecaCNC. Considerando la clara orientacin docente, la limitacin en el software adaptado a la mquina EMCO PC Mill 125 y la caracterstica multiplataforma como factores de principal relevancia, las variables de comparacin a evaluar sern: 1. Multiplataforma: mltiples arquitecturas y sistemas operativos capaces de ejecutar la solucin (principalmente Windows, MacOS y Linux). 2. Ejecucin en tiempo real: se considerar la capacidad del programa de representar el resultado de cada instruccin insertada. 3. Adaptacin a la mquina EMCO PC MILL 125: se comprobar si se incluyen las caractersticas y funcionalidades del caso particular de esta mquina.

24

Captulo 2: Estado del arte

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

4. Orientacin docente: cumplirn esta caracterstica aquellos programas con una clara orientacin docente, donde un alumno sin conocimiento alguno pueda aprender a programar procesos de mecanizado ISO. 5. En idioma espaol: se considerarn aquellos programas cuya interfaz est en espaol, o bien sean multilenguaje incluyendo este idioma. 6. Gratuidad: se considerarn aquellas soluciones gratuitas o libres para la docencia. 7. Open Source: se considerarn aquellos programas de cdigo abierto o ampliables por el propio usuario, donde alumnos de ingeniera informtica puedan ampliar o mejorar las funcionalidades del producto.

2.3.2.

Soluciones completas CAD/CAM incluidas en el anlisis.

Como se ha comentado anteriormente, el software CAD/CAM actual supone programas de muy alta calidad y muy completos que se han convertido en una pieza indispensable en el proceso industrial. Entre las mltiples funcionalidades de este tipo de software, una de las partes vitales que implementa sigue siendo la simulacin del mecanizado, por tanto, se ha considerado adecuado incluir este tipo de soluciones completas en el anlisis que nos ocupa, teniendo siempre presente que es inadecuado comparar el software CAD/CAM que dispone de funcionalidad de simulado de alta calidad, con un simulador CNC, que nicamente cubrir una fase concreta de todas las que puede asumir el CAD/CAM. De entre las mltiples soluciones encontradas, se ha credo conveniente destacar las siguientes:

2.3.2.1.

CATIA.

Desarrollado por la empresa Dassault Systmes en 1981, CATIA (Computer-Aided Three Dimensional Interactive Application) nace inicialmente para dar soporte a la industria aeronutica. CATIA provee una solucin integrada para la fabricacin de piezas mediante CAD/CAM, pudiendo, incluso, simular el mecanizado en plantas de fabricacin virtuales. La versin actual del programa es la V6. La gran capacidad y los mltiples mbitos de aplicacin de CATIA lo han convertido en un software referencia para la industria, conociendo su uso en sectores cmo:

25

Captulo 2: Estado del arte

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Automvil: Empresas como Grupo VolksWagen, BMW, Renault, Peugeot, Daimler AG, Chrysler, Smart y Porsche. Aeronutica: Boeing, Airbus, Bobardier, EMBRAER, Vought, AgustaWestland y las fuerzas areas Norteamericanas, Indias y Chinas. Manufactura: CATIA tiene una fuerte presencia en la industria de la manufactura, pudiendo destacar su uso en empresas como Schuler, Metso, Claas, Alstom Power y ABB Group entre muchas otras. Arquitectura: aunque en menor medida, CATIA tambin ha sido utilizado para disear estructuras tales como los Curvilinear Buildings del arquitecto Frank Gehry.

Figura 2.4: CATIA V6.

2.3.2.2.

MasterCAM.

Creado por CNC Software Inc., una de las empresas pioneras en el desarrollo de software CAD/CAM en el ao 1983, MasterCAM nace para satisfacer las necesidades fabricacin asistida por computador mediante un, inicial, sistema CAD en 2D. Su ltima versin es MasterCAM X5 MU1. Actualmente, MasterCAM se ha convertido en el software CAD/CAM de mayor uso y predileccin entre usuarios del entorno de la manufactura, dada la calidad de su simulacin tridimensional y los mltiples mdulos y herramientas disponibles: Taladrado y fresado de hasta 7 ejes, torneado, electroerosin por hilo entre otros.

26

Captulo 2: Estado del arte

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Figura 2.5: MasterCAM X5 MU1.

2.3.2.3.

SolidCAM.

Desarrollado por la empresa SolidCam en 1984, SolidCAM ofrece mltiples mdulos de software CAD/CAM orientados al fresado 2.5D y 3D, mecanizado de alta velocidad, fresado indexial multicara de 5.4 ejes, fresado simultneo en 5 ejes, torneado, torneado-fresado de hasta 7 ejes y electroerosin por hilo. Su versin actual es SolidCAM 2011. El uso de SolidCAM abarca sectores de la manufactura mecnica, electrnica, medicina, productos de consumo, diseo de mquinas, automocin y aeronutica tanto en la creacin de moldes y herramientas como en el prototipado rpido. SolidCAM dispone de ms de 15000 implantaciones en la industria y la educacin, a travs de su red de venta en 50 pases de todo el mundo.

Figura 2.6: SolidCAM 2011.

27

Captulo 2: Estado del arte

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

2.3.3.

Simuladores CNC incluidos en el anlisis.

El segundo subconjunto de programas incluidos en el anlisis est compuesto por programas simuladores CNC. Este tipo de software, al igual que mecaCNC, nicamente implementa funcionalidad para la tercera fase del proceso CAD/CAM, salvo en el caso de EMC, que incluye una funcin de importacin de imgenes vectoriales 2D (importacin del modelo CAD) y establecimiento manual de trayectorias de mecanizado, asumiendo de forma opcional parte de la fase dos del proceso CAD/CAM descrito anteriormente. Como se ver a continuacin, el software reviste una menor complejidad y presenta interfaces ms simples, pero de igual modo, desempean correctamente de su misin como simuladores CNC.

2.3.3.1.

CNCSimulator.

CNCSimulator consiste en un simulador de programas de mecanizado en cdigo ISO de libre distribucin. Permite la simulacin multivista de operaciones de fresado/taladrado y torneado. CNCSimulator permite la conexin RS232 con mquinas-herramienta, pudiendo as enviar y recibir programas de mecanizados ISO de la mquina CNC. Su interfaz y funcionalidades, evidentemente, son mucho ms simples que las soluciones mencionadas anteriormente, pero cumple a la perfeccin su funcin como simulador de mecanizados, pudiendo obtener una aproximacin tridimensional de la pieza resultante del proceso. CNCSimulator nace en 2009, y actualmente distribuye la versin 4.53 del programa, revisada en el mes de abril de 2011. A modo de exigencia al usuario que descarga el programa, ste funcionar durante un periodo de un mes, tras el que el usuario deber volver a la pgina web del programa y solicitar una nueva clave que le permitir su uso durante un mes ms.

Figura 2.7: CNCSimulator v4.53f. 28

Captulo 2: Estado del arte

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

2.3.3.2.

Swansoft CNC Simulator.

Desarrollado por Nanjing Swansoft Technology Company, Swansoft CNC Simulator en su ltima versin (6.70) ofrece un entorno de simulacin y verificacin de programas ISO en base a la mquina-herramienta utilizada, con una clara orientacin a la docencia mediante las herramientas de consulta de su pgina web. Para ello, segn la mquina-herramienta o centro de mecanizado seleccionado, Swansoft CNC Simulator ofrece una representacin tridimensional de la mquina, los paneles de control y los dispositivos de salida as como el resultado progresivo del mecanizado sobre la pieza. Actualmente, Swansoft CNC Simulator permite la simulacin en mquinas-herramienta de FANUC, SINUERIK, MITSUBISHI, FAGOR, HAAS, PA, Romi, GSK, HNC, KND, DASEN, WA, GREAT, SANYING, RENHE, SKY y JNC. Adems, ofrece la posibilidad de la creacin de programas en Cdigo G en su propio editor, con operaciones de resaltado y deteccin y correccin de errores de cdigo.

Figura 2.8: Swansoft CNC Simulator 6.70.

2.3.3.3.

Enhanced Machine Controller (EMC).

EMC, desarrollado por la comunidad LinuxCNC, supone un programa de control de mquinas-herramienta mediante programacin y simulacin ISO para entornos UNIX. EMC es un software libre y Open Source bajo licencia GNU GPLv2. EMC muestra, mediante interfaz grfica, la simulacin de trayectorias y mecanizado en base al cdigo ISO importado o generado desde aplicaciones CAD compatibles, adems de un intrprete de Cdigo G. Soporta la simulacin y control 29

Captulo 2: Estado del arte

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

en tiempo real de dispositivos de hasta 9 ejes con una gran variedad de interfaces de conexin. Dado su carcter Open Source, EMC abarca una gran comunidad de desarrolladores, ya que la naturaleza del software hace idneo su uso para mquinas-herramienta CNC de fabricacin casera.

Figura 2.9: LinuxCNC EMC2.

2.3.3.4.

EMCO WinCAM.

Desarrollado por EMCO, WinCAM ofrece un entorno de desarrollo CAD/CAM en 2D que permite generar el programa ISO en base al diseo en plano de la pieza a mecanizar. WinCAM, en su ltima versin 2.43, permite la conexin directa con la mquina-herramienta a travs de un puerto RS232. La simulacin permite la obtencin tridimensional del resultado del mecanizado, detectando posibles situaciones errneas mediante control de trayectoria. WinCAM est concebido y perfectamente adaptado para su uso con el centro de mecanizado EMCO PC Mill 125, siendo actualmente el software utilizado en el laboratorio de mecanizado del DISA en la Universidad Politcnica de Valencia para aproximar al alumno a los sistemas de mecanizado mediante software CAD/CAM.

30

Captulo 2: Estado del arte

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Figura 2.10: EMCO WinCAM 2.43.

2.4. Resultados del anlisis.


Tal y como se concluy en el apartado 2.3 del presente documento, dada la multitud de programas existentes, tanto simuladores CNC como CAD/CAM con capacidades de simulacin, se convierte en una difcil tarea la realizacin de un anlisis completo, mxime si se considera el carcter propietario de la mayora de las soluciones, cuestin que impide la comprobacin de toda la funcionalidad ofrecida. Es por ello que los resultados de este anlisis no persiguen voluntad alguna de comparacin entre las distintas soluciones y mecaCNC, puesto que muchas de ellas se han quedado fuera del objeto de anlisis y, evidentemente, un software completo CAD/CAM con funcin de simulacin reviste una mayor complejidad y calidad que un programa cuya nica funcionalidad sea la simulacin CNC.

31

Captulo 2: Estado del arte

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Multiplataforma Programa Windows MacOS X Linux

Tiempo real

Adaptado a EMCO PC Mill 125

Orientacin docente

Espaol

Gratuito

Open Source

mecaCNC

CATIA v6

MasterCAM X5

SolidCAM 2011 CNCSimulator 4.53f Swansoft CNC Simulator 6.70 EMC2

WinCAM 2.43

Tabla 2.1: Resultados del anlisis comparativo en funcin de las variables consideradas.

De los resultados del anlisis, tanto de los programas muestreados como otros analizados que no han sido incluidos en el estudio, se puede concluir que no existe ningn software multiplataforma (que permita su ejecucin en Windows, MacOS X y Linux), CAD/CAM con funcin de simulacin o simulador CNC, Open Source y gratuito, capaz de mostrar, en tiempo real, el resultado de la insercin de instrucciones ISO-6983 que componen un programa de mecanizado. Esta afirmacin ir sujeta a tres realidades constatables: La estandarizacin del proceso de fabricacin en base al uso de software CAD/CAM actual, hace innecesaria la insercin de cdigo ISO, ya que ser el propio software el encargado de generar dicho cdigo en base al modelado de la figura, si bien es cierto que mecaCNC persigue el objetivo de ensear a programar mecanizados desde bajo nivel, tarea necesaria en ingeniera para haber podido llegar al software CAD/CAM actual. Existen simuladores CNC capaz de ejecutar el programa ISO paso por paso, pero en ningn caso se ha encontrado un simulador capaz de ejecutar y simular las instrucciones en tiempo real. Dada la gran cantidad de software disponible, en caso de que dicha funcionalidad existiera, no podra sumarse a las condiciones multiplataforma, gratuito y Open Source. La adaptacin del software a la mquina EMCO PC Mill 125 queda relegada a un segundo plano, ya que la mquina actualmente no se fabrica, si bien se ha considerado esta caracterstica por tratarse de un centro de mecanizado de gran 32

Captulo 2: Estado del arte

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

implantacin en el sistema docente, incluyendo el laboratorio al que va destinado el uso de mecaCNC en la Universidad Politcnica de Valencia.

33

Captulo 3: Las mquinas de CN

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

CAPTULO 3
LAS MQUINAS DE CONTROL NUMRICO
3.1. Evolucin histrica de las mquinas de control numrico.
Se tiene constancia que, desde civilizaciones ancestrales como la egipcia, el ser humano, motivado por la necesidad de producir ciertos objetos de la manera ms fcil y efectiva posible, ha hecho uso de mquinas bsicas de produccin, como es el caso del torno egipcio, del que supone su uso desde el ao 1000 a.C. Gracias a un movimiento rotatorio impulsado por el propio operario de la mquina, se consegua producir objetos tales como los ejes o radios de los carruajes con un menor esfuerzo, en menor tiempo y con una mejor calidad y homogeneidad.

Figura 3.1: Pintura egipcia del siglo III a.C. de una operacin de torneado.

Analizando la historia de las civilizaciones, la expansin de los pueblos conlleva la exportacin del uso de las mquinas-herramienta a distintos puntos del planeta. En Europa, a finales de la Edad Media, el uso del torno a pedal con arco era una realidad frecuente, donde un solo operario poda realizar operaciones de torneado impulsando el movimiento rotatorio con el pi, pudiendo as trabajar la pieza con ambas manos.

34

Captulo 3: Las mquinas de CN

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Figura 3.2: Grabado de 1435 de un torno accionado por arco

La llegada de la mquina de vapor a finales del siglo XVII, convierte la produccin en serie en una realidad. Incorporando el motor de combustin interna que propici la Revolucin Industrial, las mquinas-herramienta se convierten en imprescindibles para la produccin a gran escala, reduciendo el nmero de operarios necesarios y generando piezas en tiempo mucho menor. Se crean nuevas mquinas-herramienta tales como la mquina de cilindrado, la mandrinadora y se perfecciona el torno, llegando a fabricarse tornos con cambios de velocidades.

Figura 3.3: Mandrinadora de J. Wilkinson fabricada en 1775.

El descubrimiento y produccin de materiales abrasivos artificiales durante el siglo XIX, conlleva la creacin de un nuevo tipo de mquina-herramienta: las muelas o amoladoras, que permitan devastar, pulir o afilar metales en un menor tiempo y con una mayor precisin.

35

Captulo 3: Las mquinas de CN

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Figura 3.4: Rectificadora de Charles H. Norton construida en 1896.

Tras esta breve resea de la historia de las mquinas-herramienta, llegamos al siglo XX, etapa decisiva en la creacin de las mquinas de Control Numrico por Computador. La llegada de las computadoras, automticas y programables, inspira a John Thoren Parsons a la invencin del control numrico en el ao 1946. Parsons adapt a una fresadora una mquina de contar IBM que, mediante el uso de tarjetas perforadas, era capaz de realizar los clculos y medidas que facilitaban la operacin de fresado sobre tres ejes. Por primera vez en la historia, se realiza un proceso automtico de fabricacin en serie por control numrico. La llegada del control numrico supone, para muchos, el inicio de la II Revolucin Industrial. La invencin del control numrico deriva en la investigacin y desarrollo de prototipos y experimentos para la produccin a gran escala, a pesar de que el elevado coste de las mquinas, su gran volumen y su limitada precisin en relacin a las necesidades de produccin, suponan un obstculo para la implementacin generalizada. En 1955, tras comprobar su potencial en una feria de Chicago, la Fuerza Area Norteamericana adquiere 170 mquinas-herramienta por control numrico, gobernadas por tarjetas y cintas perforadas, que suponen la primera planta de produccin automatizada de la historia.

Figura 3.5: Artculo de la revista Popular Science de 1955 donde figura la primera mquina de control numrico. 36

Captulo 3: Las mquinas de CN

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

La investigacin y esfuerzos para la creacin de nuevas mquinas CNC crece exponencialmente de forma anloga a los sistemas informticos, hasta llevarnos a la poca contempornea a partir de los aos 60, donde la micro-computacin resuelve el problema del volumen y coste de creacin de las mquinas-herramienta, naciendo finalmente el concepto de mquina de control numrico por computador.

3.2. Las mquinas de control numrico por computador.


Como se trataba en el apartado anterior, la creacin de la micro-electrnica en los aos 60 implica un cambio radical en la concepcin y fabricacin de mquinas-herramienta, ya que, gracias a la integracin de computadoras de reducidas dimensiones, cualquier mquinaherramienta era capaz de producir con una alta precisin y sin necesidad de operario. La reduccin de costes y volumen, conlleva la implantacin del sistema de produccin en serie por mquina-herramienta de control numrico por computador. Las fresadoras, taladros, mandrinadoras, etc. pasan a ser automatizadas gracias a la integracin de microcomputadoras.

3.2.1.
1.

Estructura informtica de una mquina-herramienta.


CPU: estructura informtica dotada de un micro-procesador encargado de realizar los clculos de posicin y desplazamiento de los ejes y accionar las distintas funcionalidades y modos de la mquina. Perifricos de entrada: son los elementos que permiten suministrar la informacin requerida a la CPU. Entre los dispositivos caractersticos, destacan el teclado, los sensores pticos y posicionadores y la propia conexin a un ordenador externo desde el que se dirige el flujo de informacin a la mquina CNC. Unidades de almacenamiento: sistemas de memoria de datos que puede residir en la propia mquina-herramienta o en un ordenador externo conectado a ella. Perifricos de salida: elementos que reciben la informacin de respuesta de la mquina-herramienta. Podemos englobar en esta categora tanto los perifricos destinados a informar sobre el estado de la mquina y el proceso (por ejemplo el monitor, integrado o en ordenador externo) como los distintos dispositivos de control de movimiento de los ejes y el husillo. PLCs (Controlador Lgico Programable): autmatas programables que sirven de enlace entre la CPU y los distintos elementos que transfieren el movimiento, tales como motores.

2.

3.

4.

5.

37

Captulo 3: Las mquinas de CN

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

3.2.2.

Tipos de mquinas-herramienta CNC.

Entre las mltiples mquinas-herramienta existentes, podemos realizar dos clasificaciones:

3.2.2.1.

Segn su funcin:

Mquina

Funcin

Imagen

Tornos

Corte de viruta por revolucin de la pieza

Fresadoras

Arranque de viruta por aproximacin de pieza rotativa de varios filos (fresa).

Taladradoras

Produccin de agujeros cilndricos por aproximacin de pieza rotativa helicoidal (broca).

Roscadoras

Produccin de roscas por laminado o arranque de viruta.

Muelas

Pulido, abrillantado, afilado y mejora en el acabado por aproximacin de material abrasivo rotativo.

Mortajadoras

Limado por arranque de viruta en base a movimientos rectilneos alternativos.

Cepilladoras

Alisado de superficies (principalmente madera) por friccin con cuchillas.

38

Captulo 3: Las mquinas de CN

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Rectificadoras

Desgaste por abrasin de piezas metlicas.

Prensas

Troquelacin y moldeado de piezas metlicas por presin.

Cizallas

Corte vertical por presin de la cuchilla sobre el material.

Cortadoras

Corte de material (principalmente metal) por aumento de la temperatura localizada en un punto o por chorro de agua a presin.

Mandrinadoras

Creacin de agujeros por aumento de dimetro en base al corte de la pieza rotatoria.

Puntedoras

Soldadura por puntos de metales.

Tabla 3.1: Mquinas-herramienta CNC segn su funcin.

3.2.2.2. 1.

Segn el control numrico: Punto a punto: el control determina, antes de iniciarse el movimiento, el camino a recorrer y se posiciona sin importar la trayectoria de forma rpida y precisa. Contorneo: El control determina, para la posicin final, la trayectoria de la interpolacin en cada instante, requiriendo una total sincronizacin en el movimiento de los ejes.

2.

39

Captulo 3: Las mquinas de CN

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

3.3. Los centros de mecanizado.


Las capacidades de la nueva tecnologa propician, hacia los aos 80, el nacimiento de un nuevo concepto de mquina-herramienta que ana las funcionalidades de distintas mquinas-herramienta independientes: el centro de mecanizado. Segn la definicin de L. Muoz, un centro de mecanizado es una mquina altamente automatizada capaz de realizar mltiples operaciones de maquinado en una instalacin bajo CNC (control numrico computarizado) con la mnima intervencin humana. Las operaciones tpicas son aquellas que usan herramientas de corte rotatorio como cortadores y brocas. Comparando este sistema de mecanizado con los sistemas tradicionales, se destacan la velocidad de produccin como ventaja y los altos costos como desventaja. [2] Un centro de mecanizado ofrece la flexibilidad y versatilidad de realizar distintas operaciones sobre una misma pieza, incluyendo la capacidad de cambio automtico de herramienta. Son reconfigurables y, segn se ha ido avanzando en su fabricacin, su precisin y acabado superan en gran medida a las capacidades del ser humano, con una produccin uniforme en tiempos muy bajos. Gracias a la computarizacin de los centros de mecanizado, se ha conseguido simplificar la propia mquina delegando en el propio sistema informtico ciertas capacidades, y dotando as a la mquina de un mejor control y precisin sobre el posicionamiento como consecuencia del movimiento simultneo de los ejes. En el mbito acadmico, por tanto, tiene sentido el uso de centros de mecanizado capaces de realizar distintas operaciones sobre una misma pieza, aproximando al usuario a la realidad de un mecanizado completo.

3.4. El centro de mecanizado EMCO PC Mill 125.


El proyecto que nos ocupa consiste en la simulacin del mecanizado particularizando en las caractersticas y funcionalidades del centro de mecanizado EMCO PC Mill 125.

Figura 3.6: Centro de mecanizado EMCO PC Mill 125. 40

Captulo 3: Las mquinas de CN

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Este centro de mecanizado est claramente orientado al entrenamiento docente, pero sus funcionalidades y la programacin de los mecanizados, no distan en gran medida de las correspondientes a un centro de mecanizado industrial, si bien es cierto que la fabricacin de este modelo de centro de mecanizado se realiz aproximadamente en el ao 2000, y en la actualidad existen sistemas ms avanzados, pero siempre conservando la misma base y principios de funcionamiento. Entre las caractersticas principales del EMCO PC Mill 125, destacan: 1. Movimientos paralelos en 3 ejes (X, Y, Z), con rea de trabajo de 185, 125 y 200mm respectivamente. Los motores de paso son de alta resolucin y dispone de husillos de bolas pre-cargados para los 3 ejes. Carrusel con almacn de 10 herramientas y lgica direccional. Motor principal asncrono de potencia 0.6 - 0.7 kW, con control de velocidad y gama entre 150 y 5000 revoluciones por minuto. Sus dimensiones son 1730 x 875 x 1900 mm y pesa 560 Kg. El control numrico est basado en un PC montado y cableado a la mquina, con sistema de almacenamiento y dispositivos de entrada/salida. Dispone de un panel de mandos integrado y una pantalla de 14.

2. 3.

4. 5.

Como la prctica totalidad de los centros de mecanizado y mquinas-herramienta CNC, el EMCO PC Mill 125 permite la insercin de programas en Cdigo G, pudiendo ser directamente importados desde el sistema de almacenaje del PC, convirtindo, por tanto, el proyecto que nos ocupa, en un posible paso previo al mecanizado real en la mquina.

3.5. Previsin de futuro.


Durante toda la historia de las mquinas-herramienta, se ha tratado el mecanizado como el proceso por excelencia para la produccin en serie de piezas uniformes, de gran tirada y en bajos tiempos, ya que la produccin trataba de satisfacer la gran demanda existente. La realidad actual es distinta. El avance exponencial tecnolgico est obligando a adaptar los diseos a un mercado en constante cambio, donde la flexibilidad y escalabilidad de las mquinas es fundamental para poder generar productos nuevos sin cambios sustanciales en las plantas de produccin cada cortos periodos de tiempo. Por otra parte, la dependencia de la mano humana en el proceso de produccin est siendo prcticamente innecesaria. Las clulas de mecanizado consiguen la realizacin completa de la pieza resultado en una sola sujecin, mediante el uso de sensores y robtica avanzada, no se contempla nicamente el mecanizado de la pieza, sino el almacenaje, desplazamiento de la pieza al espacio de trabajo, acabado, empaquetado, etc. consiguiendo por tanto una mayor rentabilidad de la planta.

41

Captulo 3: Las mquinas de CN

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Respecto a los diseos, la investigacin oscila en las necesidades que han sido imperantes a lo largo de la historia: mquinas ms rpidas, ms precisas, ms rgidas y de menor coste. La investigacin y avance en estructuras cinemticas paralelas de tipo hexpodo, a pesar de considerarse todava difciles de desarrollar debido a sus grados de libertad, son un hecho, y renen caractersticas suficientes para convertirse en un modelo comn cuando se superen las barreras que todava impiden su implantacin masiva en el mercado.

Figura 3.7: Fresadora de estructura cinemtica paralela Seyanka

En referencia al alcance de la mecanizacin, la electrnica y la robtica, estamos asistiendo a una etapa sin precedentes que puede cambiar la estructura social y atendiendo al ritmo vertiginoso con un avance exponencial en tecnologa, se podra conjeturar, an a riesgo de parecer una osada, que el trabajo humano est dejando de ser progresivamente necesario. Un posible ejemplo que abale esta afirmacin consiste en el proyecto Contour Crafting (www.contourcrafting.org), desarrollado por el Dr. Behrokh Khoshnevis, que consiste en un proceso de fabricacin de edificios por capas de contorno haciendo uso de una mquinaherramienta de gran escala. El uso de esta mquina derivara en un ahorro de energa y recursos, tanto materiales como humanos, y se considera que en un futuro prximo, Contour Crafting podra ser capaz de construir una casa de 185 metros cuadrados en tan solo un da.

42

Captulo 3: Las mquinas de CN

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Figura 3.8 (izquierda): Prototipo de Contour Crafting en funcionamiento. Figura 3.9 (derecha): Animacin del uso de Contour Crafting en la edificacin.

Otro de los ejemplos que actualmente supone una realidad, aproxima la mecanizacin al alcance de los hogares. El proyecto Reprap (www.reprap.org) consiste en un Open Source Hardware que documenta la construccin de una mquina autmata capaz de construir piezas tridimensionales con hilo plstico fundido. La caracterstica que convierte a esta impresora 3D en excepcional consiste en su auto-reproduccin: gran parte de las piezas de la mquina estn hechas de plstico, por tanto, al disponer de una mquina Reprap, se puede imprimir dichas piezas que forman otra mquina idntica. Este tipo de proyecto impulsa a pensar que la realidad de los sistemas de mecanizado en los hogares puede estar relativamente prxima.

Figura 3.10: Mquina Reprap.

43

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

CAPTULO 4
DESCRIPCIN DEL DESARROLLO
4.1. Qu es mecaCNC?
mecaCNC consiste en un programa simulador de mecanizados en entorno de ventanas para el mbito docente, que emula las funcionalidades y caractersticas del centro de mecanizado EMCO PC Mill 125, permitiendo la insercin de instrucciones en Cdigo G que compondrn el mecanizado, y mostrando su resultado tridimensional en tiempo real. Dada su aplicacin docente, mecaCNC dispone de un completo sistema de ayuda integrado que permitir al alumno aproximarse a la lgica de la programacin de mecanizados desde cero, adems de un sistema de acceso directo a documentacin en PDF que facilitar el aprendizaje previo de los conceptos y sistemas CAD/CAM, la programacin CNC y el uso real del centro de mecanizado EMCO PC Mill 125. Adems, mecaCNC permite la exportacin del Cdigo G insertado en el simulador a la mquina real, pudiendo suponer as un paso previo a la mecanizacin de piezas reales, conociendo de antemano el resultado tridimensional del mecanizado.

4.1.1.

Caractersticas principales.

1. Multiplataforma: mecaCNC puede ser ejecutado en entornos Windows (i586 y x64), MacOS (PowerPC e Intel), Linux (i586 y x64) y Solaris (i586, Sparc y SparcV9). 2. Ejecucin en tiempo real: a diferencia de otros simuladores, mecaCNC mostrar el resultado de cada instruccin de forma instantnea al ser insertada. 3. Multiventana: mecaCNC permite abrir mltiples instancias del programa, pudiendo as realizar comparativas en el diseo de mecanizados similares. 4. Representacin tridimensional: la ventana de representacin del mecanizado permite variar la posicin de la cmara, ofreciendo, adems, la posibilidad de seleccionar vistas predefinidas. 5. Exportacin e importacin de Cdigo G: mecaCNC permite exportar el Cdigo G insertado a archivos interpretables por la mquina real. As mismo, mecaCNC permitir importar dicho cdigo de archivos de texto generados a mano o por otros simuladores, siempre que respeten la estructura e instrucciones de la mquina EMCO PC Mill 125. 44

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

6. Edicin en tiempo real: mecaCNC permite la edicin del cdigo que compone el mecanizado, observando los resultados de dichos cambios de manera inmediata. 7. Sistema de auto-aprendizaje: el simulador integra un completo sistema de ayuda por bloques, ndice y bsqueda de trminos que incluye la estructura e instrucciones de un programa en Cdigo G. El sistema de ayuda permite imprimir de manera directa los elementos que se considere. Adems, se ofrece acceso directo a los usuarios a distintos documentos de inters en PDF. 8. Open Source: el cdigo del programa quedar a disposicin de todo aquel que quiera hacer uso, revisin o ampliacin.

4.2. Cuestiones preliminares.


El presente apartado detalla ciertas cuestiones relevantes previas al desarrollo del proyecto que influirn a posteriori en la metodologa de la programacin y la estimacin de costes.

4.2.1.

Lenguajes de programacin utilizados.

Para la realizacin del programa se han utilizado diversos lenguajes de programacin en funcin de su aplicacin al entorno:

4.2.1.1.

Java.

Comprende el grueso de la programacin del entorno de ventanas, eventos, entrada/salida, funciones matemticas y auxiliares. Java es un lenguaje de alto nivel orientado a objetos, derivado de C y C++. Java suprime herramientas de bajo nivel propias de C que suelen conducir a errores, presentando una sintaxis mucho ms flexible y cmoda para el programador. La implementacin original del compilador, la mquina virtual y las bibliotecas de clases de Java fueron desarrolladas por Sun Microsistems en el ao 1995. El control de las especificaciones, desarrollo y evolucin del lenguaje fueron asumidas por Sun a travs del Java Comunity Process, quienes creyeron conveniente, entre diciembre de 2006 y mayo de 2007, liberar la prctica totalidad del cdigo en licencia GNU GPL, manteniendo en cdigo cerrado la biblioteca de clases necesaria para la ejecucin de programas desarrollados en Java. Finalmente, Oracle compr en abril de 2009 Sun Microsistems, asumiendo el 45

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

control de la tecnologa Java, Solaris y MySQL (originalmente creadas o adquiridas por Sun). Esta accin cre reticencias en la comunidad de desarrolladores de software libre, dada la posible mercantilizacin por parte de Oracle de sistemas tan populares y utilizados actualmente en la comunidad como lo son Java o MySQL. Inicialmente, Sun determina la distribucin de Java en base a plataformas especficas que puedan cubrir las necesidades de desarrollo en base al mbito de uso, surgiendo, por tanto las plataformas J2SE (Java 2 Standard Edition) orientada a un desarrollo generalizado, J2EE (Java 2 Enterprise Edition) orientada al desarrollo empresarial y J2ME (Java 2 Micro Edition) orientada a la creacin de programas en dispositivos de bajas capacidades. A partir de su versin 6, Sun cambia la nomenclatura de sus plataformas, pudiendo obtenerse as la versin que ha sido utilizada para el desarrollo de este proyecto: Java SE 6.0 (Java Standard Edition 6.0). La plataforma Java incluye: El lenguaje de programacin en s mismo. La Mquina Virtual de Java (JVM) que permite la ejecucin multiplataforma del Bytecode generado por el compilador. El API consistente en un conjunto de paquetes que proporcionan una interfaz comn para el desarrollo de programas en distintas plataformas. Incluye las libreras necesarias para el desarrollo en distintos entornos: consola, entorno de ventanas, aplicaciones cliente/servidor, entre otras.

Figura 4.1: Arquitectura Java Platform Standard Edition (Java SE).

46

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Al tratarse de un lenguaje de programacin orientado a objetos, permite la definicin de clases y sus atributos y son accesibles de una manera muy cmoda. Gracias a su ejecucin en mquina virtual, los archivos generados son encapsulados e interpretados por la propia Java Virtual Machine, reduciendo por tanto el consumo de recursos y facilitando en gran medida la caracterstica multiplataforma del proyecto que nos ocupa.

4.2.1.2.

OpenGL.

En su adaptacin JOGL (Java-OpenGL). Utilizado para el sistema de representacin tridimensional de las trayectorias del mecanizado y el control de la cmara. JOGL es un conjunto de libreras Open Source, de manera nativa programadas en C, y adaptadas para su uso en Java. Su integracin, propiciada por la inclusin de la librera en el propio NetBeans, se convierte en una tarea fcil gracias al control SWING (GLJPanel), que ofrece un marco grfico con un GL Event Listener que reproduce las operaciones grficas llevadas a cabo por el mdulo correspondiente, funcionando, por tanto, de igual manera que OpenGL en su versin para C. Cabe destacar el uso conjunto de la librera GLU (GL Utilities), integrada en NetBeans, que ofrece herramientas para el manejo de la cmara en sistemas de representacin tridimensional, as como facilita la creacin de slidos y almbricos tridimensionales. La eleccin de OpenGL frente a otros lenguajes de programacin grfica reside, adems de sus caractersticas multiplataforma, multilenguaje y Open Source, en que supone el API de programacin grfica de mayor uso en la comunidad de desarrolladores, pudiendo, por tanto, encontrar gran cantidad de informacin en multitud de soportes y, dada su relevancia, habiendo sido estudiado en mltiples asignaturas de la carrera.

4.2.1.3.

HTML.

Usado para la elaboracin de la estructura y elementos del sistema de ayuda integrado. Para la composicin y generacin del sistema se ha hecho uso de la librera JavaHelp 2.0.05. HTML supone el lenguaje de marcado, descriptivo y en alto nivel de mayor uso dada su implantacin en la prctica totalidad de pginas web existentes. Su caracterstica de programacin por etiqueta descriptiva lo convierte

47

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

en el lenguaje idneo para su uso en sistemas de texto estructurado tales como el sistema de ayuda del proyecto que nos ocupa.

4.2.2.

Entorno de programacin.

El entorno de programacin escogido ha sido NetBeans en su versin 6.9. Este IDE (Integrated Development Envoriment) multiplataforma, sponsorizado y recomendado por la propia Oracle, aade, a la propia flexibilidad del lenguaje, multitud de caractersticas que facilitan la creacin, depuracin y compilacin de cualquier programa. El entorno de desarrollo de la interfaz grfica que integra es WYSIWYG (What You See Is What You Get), y permite el diseo de interfaces grficas complejas mediante tecnologa drag&drop de una completa paleta de controles de la librera SWING. NetBeans (originalmente llamado Xelfi) nace en la Repblica Checa en 1996 como un proyecto estudiantil para la creacin de un IDE de Java similar a Delphi. En el ao 1999, el deseo de Sun Microsistems de tener una herramienta de desarrollo mejor, lleva a un acuerdo por el cual adquiere Netbeans y en el ao 2000 libera su cdigo y lanza Netbeans.org. Una de las caractersticas de mayor importancia en Netbeans reside en su propia comunidad de desarrolladores. Al tratarse de un software Open Source, se pueden encontrar multitud de plugins y add-ons libreras que facilitan el diseo y desarrollo de aplicaciones. Adems, a pesar de que Netbeans est concebido originalmente como un entorno de desarrollo para Java, la posible incorporacin al IDE de paquetes oficiales adicionales permite el desarrollo en otros lenguajes de programacin tales como PHP, Phyton, C y C++, Ruby, entre otros.

Figura 4.2: Ventana principal de cdigo de mecaCNC sobre NetBeans 6.9 48

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

4.2.3.

Material necesario para el desarrollo.

El desarrollo del proyecto ser llevado a cabo mediante el uso de distintas herramientas dependiendo de la naturaleza del rea a desarrollar. Dicho material se puede dividir segn su tipo:

4.2.3.1.

Herramientas hardware.

Asume el soporte fsico sobre el que se har uso de las distintas herramientas software. El equipo hardware sobre el que se ha desarrollado el proyecto cumple las siguientes caractersticas: Equipo Apple MacBook Pro 15 (serie 5.3) Procesador Intel Core 2 Duo 2.66 GHz. 8GB de memoria RAM DDR3 con bus a 1333MHz.

Si bien es cierto que disponer de un buen equipo proporciona fluidez y conlleva una comodidad extra en el desarrollo, el proyecto podra haber sido desarrollado en equipos de menor precio y caractersticas, aunque s se considera adecuado el uso de un equipo Apple que integre el sistema operativo MacOSX y permita la instalacin de los restantes sistemas operativos haciendo uso de herramientas software de virtualizacin.

4.2.3.2.

Herramientas Software.

Al contrario que el caso anterior, han sido bastantes las herramientas software utilizadas para el desarrollo del proyecto, mxime considerando la caracterstica multiplataforma del programa, que hace necesaria la presencia de mltiples sistemas operativos para realizar las pruebas oportunas.

49

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Herramienta Microsoft Word 2007 Microsoft Visio 2003 Adobe Illustrator CS4

Gantt Project VMWare Fusion 3.0.0 - Microsoft Windows 7 Virtualizacin de los distintos sistemas - Microsoft Windows XP operativos indicados - Ubuntu 11.04 - Solaris 10 NetBeans 6.9 - Java 6 SE Implementacin - OpenGL Pack - JavaHelp Notepad++ Implementacin Tabla 4.1: Herramientas software empleadas en el desarrollo.

Uso Redaccin del presente documento Creacin de diagramas de flujo Creacin de grficos vectoriales (principalmente los contenidos en el captulo 5) Elaboracin del diagrama de Gnatt

4.3. Planificacin.
Uno de los aspectos esenciales en la elaboracin de un proyecto complejo radica en la necesidad de establecer un plan de accin para abordar el desarrollo de una forma efectiva y ordenada, respetando los tiempos y cumpliendo en la entrega. La metodologa de desarrollo de un proyecto en base a la ingeniera del software supone un conjunto de herramientas y tcnicas que facilita la estructuracin y ejecucin secuencial de las tareas, teniendo en consideracin el ciclo de vida del producto y la precedencia de las fases del desarrollo para obtener unos buenos resultados de manera incremental y progresiva. Entre los modelos que se ofrecen desde las escalas tericas de la ingeniera del software, cabe destacar el modelo en espiral, que determina los segmentos de la fase de desarrollo para distintos escenarios, obteniendo versiones beta-incrementales que evolucionan y se amplan en cada ciclo del modelo.

50

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Figura 4.3: Modelo en espiral de Boehm en cuatro fases.

En este modelo, sintetizado en 4 fases, podemos establecer dos ejes de medicin: por una parte el avance angular indicar el avance en el proyecto, por otra el radial que supondr los costes conmutativos. A medida que avancemos angularmente en el desarrollo del proyecto, el nivel de especificaciones, objetivos, implementacin, etc. aumentar, aumentando en consecuencia el coste asociado al desarrollo. Adems, cada sector angular etiquetado con distintos tonos de azul, identificar un tipo de proyecto de ingeniera del software identificable en la propia leyenda de la Figura 4.3. Las cuatro fases asociadas al modelo son: Objetivos: se establecer qu se pretende del proyecto y de su desarrollo, considerando la funcionalidad que deber ejecutar, caractersticas principales, intervalo de costes y tiempos de revisin, evaluacin y entrega. Anlisis de riesgos y planificacin: una vez definidos los objetivos, se formalizarn y analizarn los requisitos para el correcto cumplimiento, y del resultado del anlisis se podrn establecer los tiempos de ejecucin. Completada esta fase, el desarrollador estar en disposicin de elaborar un dossier contractual donde se indicarn los distintos aspectos a cumplir en forma y plazo. Desarrollo, pruebas y adaptaciones: En cada nuevo ciclo del modelo, ser necesario desarrollar y probar las funcionalidades asociadas a los nuevos objetivos, mostrando al cliente los resultados de las beta-pruebas y adaptando, en caso de que fuera necesario, aquellos aspectos cuya implementacin no se ajuste por completo a la realidad demandada. Evaluacin y lanzamiento: una vez realizadas todas las pruebas y adaptaciones necesarias, se dispondr de una versin release completa del proyecto en base a los objetivos de la lnea angular correspondiente. Si la evaluacin de dicho release es correcta, el proyecto estar listo para ser lanzado/entregado al cliente.

51

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

La aproximacin concreta de este modelo al proyecto que nos ocupa identifica al director de proyecto de final de carrera como cliente, el alumno ser el desarrollador y el proyecto de ingeniera de software en s, junto a su documentacin, el producto. Durante todo este proceso, existe una comunicacin constante y directa entre el cliente (director de proyecto) y el desarrollador (alumno), asegurando de esta forma la fluidez y buen trmino de la propuesta.

4.3.1.1.

Sub-tareas.

Para conseguir una buena planificacin, se considera conveniente dividir el grueso del desarrollo del proyecto en sub-tareas ms simples, concretizando los objetivos principales en objetivos intermedios y estructurndolas, en la medida de lo posible, por bloques de implementacin. Considerando este pretexto, se realiza la siguiente subdivisin de tareas:

ID 0 1 2 3 4 5 6 7 8

Tarea Recopilacin de documentacin de consulta Anlisis de objetivos, requisitos y riesgos Diseo en alto nivel Diseo en bajo nivel Planificacin Implementacin, pruebas y adaptaciones iterativas Obtencin y prueba de la versin final Redaccin de la documentacin (memoria y manuales) Evaluacin de resultados y entrega Tabla 4.2: Relacin de sub-tareas.

4.3.1.2.

Hitos.

Los hitos suponen los objetivos intermedios que se asignarn a cada sub-tarea. La correcta finalizacin de todos los hitos llevar implcita la consecucin de los objetivos finales, y por tanto, la finalizacin exitosa del proyecto.

Tarea Hitos Recopilar documentacin sobre procesos de mecanizado, programacin CNC en cdigo G, sistemas CAD/CAM y estado del arte. 0 Recopilar documentacin sobre la mquina EMCO PC Mill 125 Recopilar documentacin asociada a la programacin en Java y el uso de NetBeans. 52

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

6 7 8

Recopilar documentacin sobre programacin grfica OpenGL y su integracin en programas Java. Recopilar documentacin sobre usabilidad en aplicaciones orientadas a la docencia. Establecer objetivos principales. Establecer requisitos funcionales y recursos materiales necesarios. Analizar requisitos y recursos y evaluar la capacidad de consecucin del proyecto en base a los conocimientos, documentacin y recursos disponibles. Considerar las posibles limitaciones. Definir y analizar variables relevantes del diseo de la interfaz. Crear Wireframe del entorno de ventanas. Recopilar, crear iconos e imgenes a emplear. Crear el logo de la aplicacin. Analizar conjunto de instrucciones de cdigo G interpretables por el simulador Crear diagramas de flujo de interaccin usuario interfaz funcionalidad Definir paquetes/mdulos que sern necesarios y mantendrn una estructura coherente en el programa. Establecer clases principales y relaciones entre ellas. Crear analizador lxico-sintctico-semntico para la ejecucin en tiempo real. Establecer planificacin. Crear interfaz grfica y aadir componentes. Reconocer automticamente resolucin de pantalla del equipo y adaptar la ventana a dicha resolucin. Crear paquetes e importar libreras necesarias. Crear el conjunto de clases. Programar los mtodos (funciones y eventos de componentes). Programar el analizador lxico-sintctico-semntico. Programar la relacin entre clases y la funcionalidad asociada a cada instruccin en cdigo G. Programar el sistema de ayuda. Optimizar el cdigo. Realizar sucesivas pruebas iterativas con cada implementacin. Adaptar la programacin al resultado de las pruebas iterativas. Realizar pruebas finales. Obtener versin final y encapsularla correctamente. Redactar la memoria del proyecto. Redactar el manual de usuario. Evaluar resultados finales. Realizar la entrega y presentacin. Tabla 4.3: Relacin de hitos.

Cabe destacar que el orden de consecucin de los hitos puede ser diferente al mostrado en la Tabla 4.3, si bien es cierto que no se podr 53

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

completar una tarea sin haber completado todas las tareas anteriores, lo cual implica la necesidad de haber conseguido todos los hitos de dichas tareas previas.

4.3.1.3.

Diagrama de Gantt.

Otra de las herramientas de uso generalizado y gran implantacin en el establecimiento y especificacin de los tiempos de ejecucin de un proyecto consiste en la elaboracin de un diagrama de Gantt. El diagrama de Gantt muestra, por cada fila, una tarea, dividiendo el conjunto de columnas en dos sub-conjuntos: la parte izquierda mostrar los atributos de cada tarea (generalmente, identificador, nombre, duracin y fechas de inicio y fin) y la parte derecha (que ocupa la mayor parte del diagrama), mostrar la lnea de tiempo, estableciendo una forma rectangular para cada tarea de longitud la duracin y las posibles relaciones entre tareas. Para obtener una buena referencia de los resultados de la planificacin, se mostrarn dos diagramas: El primero (Figura 4.4) har referencia a la estimacin de la planificacin que se tiene previo al inicio del desarrollo del proyecto, estableciendo los tiempos que se consideran adecuados en base al anlisis de objetivos y requisitos previo a la fase de implementacin. El segundo (Figura 4.5), detallar los tiempos reales en los que se ha concluido una vez se haya desarrollado completamente el proyecto, evaluando si se ha conseguido respetar los tiempos iniciales o se ha modificado la planificacin temporal por cualquier circunstancia. Para el caso que se est analizando, el planteamiento inicial sufri una modificacin en los tiempos de ejecucin debido a limitaciones propias de la incompatibilidad con el horario laboral. Dicha circunstancia propici, adems, que a diferencia de la habitual jornada de 8 horas diarias, en meses de 20 das, se redujera considerablemente el tiempo disponible de dedicacin al proyecto, fluctuando en base a la carga laboral, desplazamientos, etc. Este hecho conlleva la necesidad de ampliar los tiempos de ejecucin previstos, principalmente, para las tareas de diseo, implementacin, pruebas y obtencin de la versin final. Por el contrario, la redaccin de la documentacin sufre una variacin en el tiempo de ejecucin por motivos distintos a los expuestos anteriormente, ya que en este caso, simplemente se consider una estimacin de tiempo menor a la realmente necesaria, pues durante este periodo no exista el compromiso laboral, emplendose una media de 8 o ms horas diarias.

54

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

En definitiva, la variacin resulta en un retraso en la conclusin del proyecto de 2 meses y 9 das, equivalentes a 47 das laborables.

55

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Figura 4.4: Diagramas de Gantt previo y resultado 56

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

4.4. Estructura del programa.


En el proceso de desarrollo de un proyecto de ingeniera del software, ser necesario distinguir entre dos tipos de niveles o fases del diseo, ntimamente ligados y que mantienen una jerarqua especfica que permite concretizar, implementar y optimizar los requisitos funcionales del programa: el diseo en alto y bajo nivel. A modo de resumen introductorio de los siguientes sub-apartados, se podra considerar que el diseo en alto nivel supone el qu de la aplicacin, definiendo cual va a ser la funcionalidad de la aplicacin y que se espera de la interaccin usuario programa, en un lenguaje claro y preferiblemente adjunto a grficos y diagramas de flujo, detallando el por qu se considera adecuada dicha estructura en base al target y los objetivos. Se ha considerado adecuado incluir el diseo de la interfaz grfica en un nuevo apartado entre los diseos de ambos niveles debido a la estrecha relacin existente entre la forma en que el usuario usa el programa (intuyendo a simple vista cul es la funcin de cada componente) y el aspecto y estructura de la interfaz que se le presenta. Por ello, adems se ha analizado el perfil de uso en funcin del target, el contenido y el contexto del programa. Por otra parte, se podra considerar el diseo en bajo nivel como el cmo se va a implementar y ejecutar la estructura definida en la fase de diseo anterior, indicando las estructuras de datos y mtodos a emplear para cumplir los requisitos funcionales, tambin aportando el por qu se ha considerado adecuada esa solucin frente a otras implementaciones posibles. Por ltimo, dada la relevancia que supone en el proyecto, haciendo posible la ejecucin en tiempo real, se incluir un apartado donde se detalle el analizador lxicosintctico-semntico.

4.4.1.

Diseo en alto nivel.

En la fase de diseo en alto nivel definiremos la funcionalidad asociada al programa y los subsistemas que, siguiendo una estructura lgica y ordenada que facilite la implementacin y modificacin en la siguiente fase, permitan llevar a cabo las acciones necesarias para alcanzar los objetivos funcionales programa.

4.4.1.1.

Arquitectura general.

Gracias a un anlisis previo de los requisitos, podemos obtener las partes diferenciadas que llevarn a cabo las distintas funciones del programa.

57

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

El enlace de estos mdulos de la arquitectura general del programa con la fase posterior del diseo, permite definir cules sern los paquetes Java a implementar.

Figura 4.5: Diagrama de arquitectura general.

De la Figura 4.5 podemos extraer como mdulo principal el subsistema Interfaz, el cual manejar la interactuacin del usuario con los componentes de la interfaz, generando distintos eventos que darn lugar a un determinado flujo de ejecucin entre subsistemas. Los subsistemas intermedios Consola y Representacin llevarn a cabo las operaciones necesarias para la ejecucin de instrucciones y posterior representacin en tiempo real, mostrando en la interfaz el resultado en caso de xito o error en caso contrario. Ambos subsistemas realizarn la toma de datos apoyndose, en caso necesario, en el subsistema que Geometra Analtica que contendr las funciones matemticas necesarias. Por ltimo, el subsistema Ayuda ser llamado desde el mdulo Interfaz pero dispondr de su propio manejador de eventos para las interacciones con el usuario.

4.4.1.2.

Interacciones entre mdulos.

Del diagrama anterior podemos extraer las relaciones entre mdulos en base a la funcionalidad del programa que percibe el usuario.

58

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Para ello, se presentar el siguiente diagrama (Figura 4.7) que muestra los distintos mdulos (en desarrollo vertical), y las lneas horizontales etiquetadas con cada funcionalidad, que suponen el paso de la lnea de ejecucin por los mdulos correspondientes. Para el caso de la apertura de documentacin en PDF, la interfaz llamar al programa predeterminado de apertura de archivos PDF en el equipo, que ser externo a mecaCNC.

Figura 4.6: Interacciones entre mdulos en base a la funcionalidad.

4.4.1.3.

Flujo de ejecucin de una instruccin ISO-6983 en mecaCNC.

Obtenidas las interacciones entre mdulos, restar considerar uno de los aspectos ms importantes de este nivel en la ejecucin en tiempo real de las instrucciones en Cdigo G insertadas: el diagrama de flujo de dichas instrucciones. El flujo de ejecucin de una instruccin en Cdigo G depender del conjunto al que pertenezca dicha instruccin, pudiendo suponer instrucciones de

59

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

inicializacin, control de trayectoria o control de mquina, manteniendo acciones comunes a todas ellas en el proceso de ejecucin.

Para comprender mejor el camino seguido para completar la ejecucin de una instruccin en cdigo G, se recomienda al lector comprobar la lista de instrucciones interpretables por el simulador y su funcionalidad asociada, disponible en el Anexo B de este documento.

60

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Figura 4.7: Diagrama de flujo de la insercin de una instruccin en Cdigo G. 61

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

4.4.2.

Interfaz grfica.

Un aspecto esencial en el anlisis de un programa en entorno de ventanas es su interfaz grfica. Para el proyecto que nos ocupa, eminentemente especializado y orientado a la docencia, se ha tratado de mantener un equilibrio entre los siguientes factores en relacin a la interfaz grfica:

Usuario

I.G.U

Contenido

Contexto

Figura 4.8: Variables de anlisis en la creacin de la interfaz grfica.

4.4.2.1.

Usuario.

El usuario tipo de la aplicacin comprende a una persona altamente cualificada, previsiblemente un estudiante de ingeniera informtica o industrial, con grandes capacidades de asimilacin y manejo de un programa informtico. A pesar de ser recomendados los conocimientos en sistemas de mecanizado, el simulador pretende ser una herramienta de auto-aprendizaje, permitiendo al usuario aprender desde cero los conceptos de los sistemas de mecanizado y programacin CNC en Cdigo G. An tratndose de un programa especializado, el usuario tipo est acostumbrado al uso de programas cuyo diseo sea depurado y de fcil manejo.

4.4.2.2.

Contenido.

El simulador dispondr la funcionalidad en base a aquellas acciones que el usuario realiza de forma fsica en la mquina real, y aquellas que corresponden a la insercin de instrucciones que modifican el comportamiento de la mquina. Para ello, se tratar de dividir la ventana principal y ventanas secundarias en subtareas perfectamente diferenciadas que distingan cada una de

62

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

las acciones realizadas por el usuario (definicin, configuracin, insercin, representacin, etc.). Las funcionalidades han de ser especficas y accesibles en el menor nmero acciones posibles, facilitndose as un completo conjunto de atajos de teclado, barra de men y acceso por ratn a la completa funcionalidad del programa.

4.4.2.3.

Contexto.

El uso del simulador se presupone en el entorno acadmico, ms concretamente en laboratorios de mecanizado. La naturaleza educativa del simulador hace necesaria una interfaz que facilite el acceso al auto-aprendizaje y el uso indistinto de usuarios con conocimientos avanzados en sistemas de mecanizado y en aquellos que inician su educacin en este mbito. Se considera adecuado aproximar todas aquellas acciones y eventos a los correspondientes en la mquina EMCO PC Mill 125, la cual se da por hecho podr ser accesible por el alumno en los laboratorios.

4.4.2.4.

Primera aproximacin: Wireframe.

Considerando el anlisis anterior, se decide la elaboracin de un primer boceto de la interfaz sobre la cual se realizar el desarrollo del proyecto.

Barra de men

Consola de comandos

Panel de representacin

Informacin del estado de la maquina

Figura 4.9: Wireframe del interfaz grafico de mecaCNC.

63

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

4.4.2.5.

Resultado.

A partir del wireframe anterior, se construye la interfaz de la ventana principal, que de manera incremental, va integrando funcionalidades, componentes, iconos, atajos de teclado y ratn y ventanas secundarias. En este apartado se desarrollar nicamente aquellas ventanas cuya interfaz grfica sea susceptible de anlisis, obviando aquellas ventanas que hacen referencia a tablas y cuya interfaz sea simple, no obstante, el Anexo A contiene todas las ventanas y elementos junto a la explicacin de sus respectivas funciones.

4.4.2.5.1.

Ventana principal.

Figura 4.10: Interfaz grfica de la ventana principal de mecaCNC.

Como se puede comprobar, durante el diseo se decide dividir el panel inferior correspondiente a la informacin de la mquina en dos subpaneles: por una parte, el panel Herramienta que mostrar el estado de la herramienta activa, la posicin del husillo y la instruccin de interpolacin activa; por otra, el panel Configuracin con los indicadores correspondientes a las instrucciones G que activan ciertas funcionalidades de la mquina. De esta forma, se pretende dividir aquellas caractersticas de la mquina en las que es necesaria la intervencin fsica del usuario (una herramienta se ha de cargar manualmente en el porta-brocas) o estn sujetas a cambios constantes (cada interpolacin modifica la posicin del husillo) y aquellas que se activan en funcin de la programacin del mecanizado

64

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

(mediante instrucciones en Cdigo G, sin intervencin fsica del usuario) y suelen mantenerse constantes durante todo el proceso (salvo el husillo). Por otra parte, dada la importancia de la representacin del mecanizado, se decide emplear un panel mvil que contenga ambos paneles superiores, pudiendo as variar las dimensiones de la consola o el marco de representacin tridimensional del mecanizado. Por cuestiones evidentes de usabilidad e incidencia en el recuerdo, se decide aadir atajos de teclado a cada una de las acciones de la barra de men y asociarles un icono que identifique la accin que llevar a cabo.

Figura 4.11 (izquierda): Detalle del elemento de men Archivo. Figura 4.12 (derecha): Detalle del elemento de men Configuracin.

4.4.2.5.2.

Ventana Definir Pieza.

Esta ventana secundaria trata de mostrar de forma visual, la distribucin del banco de trabajo y la direccin de los ejes en las operaciones de movimiento. En los sistemas reales, la ubicacin de la mordaza se realiza de forma automtica, en base a las dimensiones de la pieza, pero mediante este sistema de determinacin de la ubicacin se pretende que el alumno entienda la asignacin del punto Cero Pieza en el sistema de coordenadas de la mquina. Una vez realizada la definicin de los distintos valores de dimensin de pieza y ubicacin de la mordaza, las etiquetas identificativas cambiarn su nombre por su valor, ofreciendo as una mejor comprensin de cada una de las medidas.

65

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Figura 4.13: Ventana secundaria Definir Pieza.

4.4.2.5.3.

Ventana Configurar Herramientas.

En el caso de la ventana Configurar Herramientas, se ha tratado de mantener el principio docente, tratando de mostrar al alumno las medidas por las que se rige cualquier herramienta en un proceso de mecanizado. Adems, la seleccin e instalacin de herramientas en el portabrocas consiste en un trabajo manual, por tanto, se ha querido seguir un sistema de asignacin de entre las mltiples herramientas posibles (incluyendo las que puede definir el usuario), se seleccionar e instalar en el carrusel portaherramientas nicamente aquellas que sern utilizadas en el mecanizado. El cdigo de colores del carrusel porta-herramientas identificar en todo momento los porta-brocas que disponen de una herramienta asignada. Cabe destacar la intencionalidad de disear un frame identificativo que aproxime a la realidad del carrusel porta-herramientas.

Figura 4.14: Carrusel virtual vs. carrusel real.

66

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Figura 4.15: Ventana secundaria Configurar Herramientas.

Como se puede comprobar, la ventana Configurar Herramientas se divide en dos paneles: en el panel superior se establece la tabla de herramientas disponibles, obteniendo cuatro herramientas por defecto y pudiendo aadir dinmicamente, nuevas herramientas indicando sus parmetros; el panel inferior identifica el estado del carrusel porta-herramientas, pudiendo asignar las herramientas de la tabla superior en las 10 ranuras porta-brocas.

4.4.3.

Diseo en bajo nivel.

Gracias al diseo en alto nivel, se sabe que el programa se dividir en 5 bloques o paquetes Java diferenciados y enlazados entre s mediante instanciacin. Cada paquete contiene una o varias clases y los archivos auxiliares necesarios tales como imgenes o archivos HTML.

67

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

mecaCNC

MecaCNC

ExtensionFileFilter

Interfaz

Punto

Configuracin

PuntoR2

Herramienta

HiloImportarArchivo Consola Analizador

HiloAbrirArchivoProyecto

Ejecucion

HiloPasoAPaso

Representacion Representacion Redibujado

Geometria Analitica

FMatematicas

subsistema Ayuda

Figura 4.16: Diagrama de paquetes y clases de mecaCNC.

En la Figura 4.17, pueden identificarse los paquetes de color azul, las clases principales de color azul celeste, los hilos en color verde y las clases secundarias de color amarillo.

4.4.3.1.

Paquete Interfaz.

Mdulo principal del programa. Describe el entorno de ventanas y brinda el acceso al resto de funciones del simulador. El paquete implementa tres clases:

68

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

4.4.3.1.1.

Clase MecaCNC.

1. Clase principal del programa. 2. Define los marcos y componentes que darn lugar al entorno de ventanas. 3. Define las variables globales que se utilizarn y modificarn en las llamadas al resto de mdulos. Para ello, se pasar la instancia activa de la clase al resto de mdulos, permitiendo as la modificacin en los valores de dichas variables o componentes de la interfaz. 4. Implementa los eventos que describen la funcionalidad al hacer uso de cada uno de los componentes de la interfaz. 5. Es la encargada de la apertura y creacin de los archivos de proyecto, configuracin y Cdigo G. 6. Implementa la subclase ExtensionFileFilter, encargada de manejar las extensiones de los archivos propios del programa en las acciones de apertura, guardado, importacin y exportacin: .mcnc para archivos de proyecto, .mcfg para archivos de configuracin y .txt y .g para archivos de Cdigo G. 7. Implementa la subclase Configuracion, que incorpora las variables y mtodos para el control del estado de la mquina. 8. Implementa la subclase Herramienta, que contiene las variables y mtodos que gestionan el estado de la mquina en relacin a la herramienta activa. 9. Implementa los hilos de ejecucin HiloImportarArchivo e HiloAbrirArchivoProyecto, encargados de realizar la lectura del Cdigo G contenido en ellos. Considerando que el volumen de instrucciones de este tipo de archivos puede ser muy elevado, la implementacin multihilo supone un factor de importante de optimizacin y eliminacin de posibles cuellos de botella. 10. Implementa el hilo de ejecucin HiloPasoAPaso encargado de manejar la ejecucin cuando se activa el controlador de ejecucin paso a paso desde el men contextual de la lista de instrucciones insertadas. De manera anloga a los hilos detallados anteriormente, el volumen de instrucciones insertadas puede ser elevado y este hecho no ha de alterar el correcto manejo de eventos de la interfaz. 69

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

4.4.3.1.2.

Clase Punto.

A pesar de suponer una subclase del paquete, la clase Punto reviste una gran importancia, dado que ser la encargada de definir todos aquellos aspectos del programa basados en puntos del espacio tridimensional. Esto incluye, por una parte, los puntos utilizados por OpenGL para el dibujado de las interpolaciones que vaya describiendo la mquina, y por otra, todos los puntos de referencia propios de un mecanizado: posicin del husillo (N), decalajes, etc.

4.4.3.1.3.

Clase PuntoR2.

Subclase empleada para la realizacin de clculos matemticos en interpolaciones circulares. Este tipo de interpolacin se realizar sobre el plano, variando nicamente sobre dos ejes, por tanto, de cara al clculo de distancias, centros y puntos de corte, se consider adecuado generar una nueva clase punto sobre R2.

4.4.3.2.

Paquete Consola.

El mdulo Consola implementa el analizador lxico-sintctico de Cdigo G y describe la funcionalidad de cada una de las instrucciones G interpretables por el programa.

4.4.3.2.1.

Clase Analizador.

Implementa el analizador lxico-sintctico encargado de manejar los posibles errores tanto en el lxico de los tokens de las instrucciones G insertadas, como en la construccin sintctica. El analizador lxico-sintctico-semntico se analizar con ms detalle en el apartado 4.4.4 del presente captulo.

4.4.3.2.2.

Clase Ejecucion.

Clase encargada de realizar la funcionalidad asociada a cada una de las instrucciones interpretables por el simulador.

70

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

En el caso de que el analizador haya comprobado el lxico y la sintaxis de la instruccin, la clase Ejecucion comprobar la semntica (en caso de que sea necesario) y realizar las acciones asociadas a dicha instruccin, pudiendo ser el cambio en el valor de alguna variable, clase o indicador del interfaz, o asociando los puntos de origen y destino, y realizando las llamadas pertinentes a la clase FMatematicas y Representacion.

4.4.3.3.

Paquete Representacion.

Implementa las funciones de manejo de la representacin grfica del mecanizado.

4.4.3.3.1.

Clase Representacion.

La clase Representacion define las variables y mtodos derivados del uso de la librera grfica OpenGL. En el proyecto que nos ocupa, la clase Representacion es la encargada de dibujar, en el control SWING GLJPanel (que contiene un GLEventListener sobre esta clase), la pieza y las trayectorias del mecanizado, as como otros aspectos relacionados tales como el dibujado de los ejes o el control de la cmara. Como bien es sabido, OpenGL no permite el trazado directo de arcos, por tanto, en el caso de interpolaciones circulares, ser tambin esta clase la encargada de calcular y trazar los pequeos tramos de recta que compondrn el arco. El uso de OpenGL implica la implementacin de las funciones propias:

1.

init: contiene todas las instrucciones de inicializacin del marco grfico deseadas. En el caso que nos ocupa, se establece el color de fondo y la correccin de la perspectiva y el antialiasing de las lneas. display: funcin principal en la que se realiza el dibujado de las trayectorias tras insertar una instruccin de interpolacin o se hace uso de alguna funcin relacionada con la representacin grfica. reshape: gestiona las relaciones de aspecto en la representacin si se produce un cambio en las dimensiones del control o de la ventana que lo contiene. 71

2.

3.

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

4.

displaychanged: funcin ligada a posibles cambios en el hardware grfico (por ejemplo, cambio de monitor). Generalmente, suele ser irrelevante y no se programa.

4.4.3.3.2.

Subclase Redibujado.

A fin de optimizar la velocidad en la representacin, se crea la subclase Redibujado que contiene la lista de puntos origen y destino, el color, el plano de mecanizado y el radio de la herramienta, del conjunto de instrucciones insertadas relacionadas con el movimiento de la mquina (G00, G01, G02 y G03). Haciendo uso de esta clase, no ser necesaria la repeticin de clculos relacionados con las trayectorias de las interpolaciones, y bastar con recorrer los elementos de la clase, asignando, en cada caso, sus valores de color, plano, etc.

4.4.3.4.

Paquete GeometriaAnalitica.

Mdulo que asume la implementacin de las funciones para diversos clculos matemticos relacionados con la geometra euclidiana en la representacin grfica del mecanizado.

4.4.3.4.1.

Clase FMatematicas.

Clase que contiene los mtodos necesarios para el clculo de aspectos esenciales en el trazado de interpolaciones circulares. Dada la posibilidad de insertar interpolaciones circulares definiendo el radio del arco, o bien el punto centro, es necesaria la implementacin de funciones que faciliten el clculo de ciertos puntos necesarios para trazar el arco. Las funciones matemticas utilizadas en esta clase sern explicadas con mayor detenimiento en el captulo 5 de este documento.

4.4.3.5.

Paquete Ayuda.

El paquete Ayuda integra en s mismo un subsistema diferente al del simulador, ya que, haciendo uso de la librera JavaHelp System, la interfaz y funcionalidad del sistema de ayuda corre a cargo de la propia librera.

72

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Para implementar el sistema de ayuda, ha sido necesario programar el archivo de mapeado que hace referencia a cada uno de los archivos de informacin escritos en HTML, definir la estructura del TOC para la ayuda por contenidos as como el ndice, e indexar cada uno de los trminos que aparecen en los archivos de informacin para que sean accesibles en la bsqueda por trmino.

4.4.3.6.

Variables y mtodos principales por clase.

La siguientes tablas muestra el tipo y nombre de las variables principales empleadas para la comunicacin entre clases, representacin y control de flujo del programa, as como la relacin de mtodos principales asociados a cada clase, indicando a su vez la clase de la que hereda y especificando su funcin en el programa.

Variables principales Paquete Clase Hereda de Tipo Analizador Ejecucion boolean Nombre comprobacion ejecutar camara, dec_act, ejes, eliminar, instact, ioconfig, restablecer angulo, camaraX, camaraY, camaraZ, desplazamiento_x, desplazamiento_y, DimX, Dim Y, Dim Z, last_x, last_y, miraX, miraY, miraZ, PosX, PosY, PosZ, radio, rotacion_x, rotacion_y compensacion, modificado, n_error, n_instruccion, n_vista, zoom helpset gLJPanel1 copia, modelo jList1 jTableAsign, jTableCorr, jTable Herr jTaspirado, jTCompAct, jTCompDir, jTCorrLong, jTCorrNum, jTCorrRadio, jTHerrLCorte, jTHerrLMango, jTHerrNum, jTHerrRadio, jTHerrTipo, jThusillo, jTInstAct, jTneblina, jTplano, jTrefrigerante, jTsentido, jTtaladrina, jTtipoCoord, jTudavance, jTunidades, jTvelavance, jTvelgiro, posActX, posActY, posActZ config herr centro, origen, fin, auxiliar, deca54, deca55, deca56, deca57, N centro_r2, fin_r2, origen_r2 x, y, z x, y padre

float

int javax.help.HelpSet javax.media.opengl.GLJPanel javax.swing.DefaultListModel javax.swing.JList MecaCNC Interfaz javax.swing.JFrame javax.swing.JTable

javax.swing.JTextField

MecaCNC.Configuracion MecaCNC.Herramienta Punto PuntoR2 float float MecaCNC

Consola

Punto PuntoR2 Analizador

java.lang.Object java.lang.Object java.lang.Object

73

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Ejecucion

java.lang.Object

Representacion Representacion Redibujado Matematicas FMatematicas

java.lang.Object

java.lang.Object java.lang.Object

MecaCNC FMatematicas com.sun.opengl.util.GLUT FMatematicas javax.media.opengl.glu.GLU java.util.ArrayList<Redibujado> MecaCNC float int java.util.ArrayList<Punto> MecaCNC

padre Fmat glut Fmat gku redibujar padre blue, green, radio, red plano puntos padre

Tabla 4.4: Relacin de clases y variables principales.

Paquete

Clase

Mtodos

Funcin Establece al valor por defecto cada uno de los indicadores de la interfaz Escribe las componentes de la ubicacin (N) en el indicador de la interfaz Genera los componentes Evento al abrir la ventana principal Evento al pulsar el botn de cierre de ventana (aspa) Evento al arrastrar ratn sobre panel Representacin Evento al pulsar botn del ratn sobre panel Representacin Evento al soltar botn del ratn sobre panel Representacin Evento al mover la rueda sobre el panel Representacin Evento de control de pulsacin de tecla retorno en cuadros de texto de Definir pieza Evento de control de pulsacin de tecla en cuadro de insercin de instruccin G Evento de control de escritura automtica en maysculas en el cuadro de insercin de instruccin G Intercambia elementos a y b de una lista Funcin principal Eventos de accin sobre cada uno de los componentes de la interfaz Devuelve el valor real de la componente correspondiente

void limpiar()

void ponerDatosN(Punto pto) 74ravs74 void initComponents() private void formWindowActivated(WindowEvent evt) private void formWindowClosing(WindowEvent evt)

private void gLJPanel1MouseDragged(MouseEvent evt)

private void gLJPanel1MousePressed(MouseEvent evt)

private void gLJPanel1MouseReleased(MouseEvent evt) mecaCNC Interfaz private void gLJPanel1MouseWheelMoved(MouseWheelEvent evt)

private void jTextFieldDespXKeyPressed(KeyEvent evt)

private void jTinstruccionKeyPressed(KeyEvent evt)

private void jTinstruccionKeyTyped(KeyEvent evt)

private void swap(int a, int b) static void main(java.lang.String[] args) private void <74ravs74ac>ActionPerformed(ActionEvent evt)

Punto PuntoR2

public float getX(), getY(), getZ()

74

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

public void igualar(Punto p2)

Iguala las componentes del punto a las del parmetro Punto p2 Establece a 0 las componentes del punto Establece al valor entero especificado en el parmetro la componente correspondiente del punto Analiza el lxico y la sintaxis del parmetro cadena, devolviendo true o false si es correcto o no. Comprueba si el parmetro cadena corresponde a un valor numrico entero o real. Analiza la semntica del parmetro cadena y si es correcta, ejecuta la funcionalidad asociada. Devolver true o false en funcin de la ejecucin correcta o no. Funcin de representacin de OpenGL Funcin de evento por cambio en el hardaware grfico de OpenGL Funcin de inicializacin de OpenGL Funcin de redimensin en el marco de representacin de OpenGL Asigna los valores RGB del color de la trayectoria Asigna el color definido en el parmetro objeto Define el plano en base al parmetro pl. Inserta el punto correspondiente al parmetro pto Asigna el radio de la lnea en base al parmetro rad Devuelve el valor entero correspondiente al plano de mecanizado Calcula la coordenada polar del punto origen. Calcula el centro de la interpolacin circular en base al radio y a los puntos origen y fin Calcula la distancia entre los puntos origen y fin Calcula el radio de la interpolacin circular dado el punto origen y el centro.

public void setCero()

public void setX(float x), setY(float y), setZ(float z)

public 75ravs75 ComprobarSintaxis(String cadena) Analizador Public 75ravs75 esNumerico(String cadena) Consola

Ejecucion

public boolean EjecutarInstruccion(String cadena)

public void display(GLAutoDrawable g) public void displayChanged(GLAutoDrawable g, 75ravs75 arg1, 75ravs75 arg2) Representacion public void init(GLAutoDrawable g) public void reshape(GLAutoDrawable g, int x, int y, int width, int height) public void asignar_color(float red, float green, float blue) Representacion public void asignar_color(Redibujado objeto ) public void asignar_plano(int pl) Redibujado

public void asignar_punto(Punto pto)

public void asignar_radio(float rad)

public int getPlano() public float CalculaAngulo(Punto R2 origen, PuntoR2 fin, float radio, int plano) Public PuntoR2 calculaCentro(PuntoR2 origen, PuntoR2 fin, float radio) Geometria Analitica FMatematicas public float calculaDistancia(PuntoR2 origen, PuntoR2 fin)

public float calculaRadio(PuntoR2 origen, PuntoR2 centro)

75

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Public Punto calculaPuntoMedio(Punto origen, Punto fin, int tipo_compensacion, float valor_compensacion)

Calcula el punto medio del parmetro fin en base a la pendiente de la recta y el valor de la compensacin Calcula los puntos compensados de la trayectoria compensada simple de la interpolacin lineal, devolvindolos a 76ravs de c_origen y c_medio1. Calcula la interseccin entre dos rectas.

public void CalculaPuntosCompensadosRecta (Punto origen, Punto fin, Punto c_origen, Punto c_medio1, int 76ravs76acin, float valor_compensacion, int plano)

Public Punto CalculaInterseccionEntreRectas(Punto origen, Punto medio1, Punto medio2, Punto fin, int plano)

Tabla 4.5: Relacin de clases y sus mtodos.

4.4.4.

Analizador lxico-sintctico-semntico.

Uno de los elementos fundamentales para la correcta ejecucin de las instrucciones en Cdigo G consiste en el analizador lxico-sintctico-semntico adaptado a las necesidades de mecaCNC. Entre los requisitos fundamentales vistos a lo largo de este documento, se encuentra la ejecucin en tiempo real de las instrucciones. Esta caracterstica no podra ser llevada a cabo sin la implementacin de un analizador de instrucciones, ya que, considerando que la programacin ISO-6983 y el resto de lenguajes empleados para el desarrollo del proyecto son completamente diferentes, es necesario transformar cada instruccin en el conjunto de instrucciones Java y OpenGL que simularn la ejecucin de la instruccin G en el simulador. Por otra parte, el analizador tiene una funcionalidad implcita que consiste en el anlisis de posibles errores lxicos, sintcticos o semnticos en las instrucciones G insertadas, evitando as errores de ejecucin y manteniendo al sistema y al usuario informado cuando sea conveniente, indicando al dnde est el error y de qu manera se ha de corregir. A nivel de anlisis, podemos identificar las partes de una instruccin como identificadores (lxico), tokens (sintctico) e instrucciones (semntico).

G01 X100.5 Y50.75 Z20.0 F1000 Identificador Instruccin Figura 4.17: Partes de una instruccin ISO a nivel de anlisis lxico-sintctico-semntico Token

76

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Resulta evidente comprobar que, al fin y al cabo, una instruccin ISO supone una cadena de caracteres separados por espacios en blanco, finalizando en un retorno de lnea. Para realizar un anlisis de este tipo, Java brinda una potente herramienta en forma de clase, el StringTokenizer, que recibir como parmetro una cadena de caracteres y la dividir en tokens delimitados por los espacios en blanco y el retorno de lnea. Adems, cada token es en s otra cadena de caracteres y, por tanto, podremos acceder a sub-cadenas dentro del propio token.

Cadena de caracteres G01 X100.5 Y50.75 Z20.0 F1000 Token Sub-cadena(1,5) Sub-cadena(0) (caracter) Figura 4.18: El uso de la clase StringTokenizer.

4.4.4.1.

Anlisis lxico.

El anlisis lxico evala a nivel de identificador (que en lenguaje comn consistira en la primera letra), que para el caso que nos ocupa, supondr una letra mayscula. La fase de anlisis lxico ser la ms simple de las tres. Las condiciones necesarias a nivel lxico para que la instruccin no devuelva error sern:

Nmero 1 2

Condicin Toda instruccin ISO deber empezar por el identificador N El conjunto de identificadores posibles es {D,F,I,J,K,G,M,N,R,S,T,X,Y} Tabla 4.6: Condiciones en el anlisis lxico.

La implementacin del analizador lxico se llevar a cabo a trabes de la clase Analizador del paquete consola.

77

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

4.4.4.2.

Anlisis sintctico.

El anlisis sintctico evala a nivel de token (en el lenguaje comn supondra una palabra). Sus condiciones sern: Nmero 1 2 3 Condicin No puede existir ms de un token con el mismo identificador en una instruccin. Tras el identificador en un toquen, nicamente puede figurar un valor numrico entero o real. Tras el identificador T ha de figurar un nmero natural entre 0 y 9, correspondiente al portabrocas, y dicho portabrocas ha de tener una herramienta asignada. Tras el identificador D ha de figurar un nmero natural entre 0 y 9, y en la tabla de correctores deber haber un corrector definido en dicha fila. Tras el identificador F, ha de figurar un entero positivo entre 0 y 4000. Tras el identificador S, ha de figurar un natural entre 150 y 5000 nicamente sern vlidos los tokens {X<x>, Y<y>, Z<z>, I<i>, J<j>, K<k>, R<r>, S<s>, F<f>, D<d>, G00, G01, G02, G03, G70, G71, G90, G91, G17, G18, G19, G94, G95, M06, G54, G55, G56, G57, M03, M04, M05, M07, M08, M09, M71, M72, G40, G41, G42, M02, M30} Tabla 4.7: Condiciones en el anlisis sintctico.

5 6 7

Dada la complejidad en la comprobacin de todas las condiciones especificadas en la Tabla 4.7, la implementacin del analizador sintctico se llevar a cabo entre la clase Analizador y la clase Ejecucion, facilitando la fluidez en la ejecucin, reduciendo el coste computacional y mejorando la cohesin entre los distintos mdulos.

4.4.4.3.

Anlisis semntico

El anlisis semntico supone la evaluacin a nivel de instruccin. El objetivo de este anlisis radica en la coherencia y cohesin de la instruccin en base a su tipo y sus parmetros. El analizador semntico recoger todas las condiciones que no hayan sido evaluadas por los anteriores sistemas.

78

Captulo 4: Descripcin del desarrollo

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Nmero 1 2 3

4 5

Condicin La instruccin G00 recibir como parmetro, al menos un token del conjunto {X<x>, Y<y>, Z<z>} La instruccin G01 recibir como parmetro, al menos un token del conjunto {X<x>, Y<y>, Z<z>} y opcionalmente el token F<f> Las instrucciones G02 y G03 recibirn como parmetro, al menos un token del conjunto {X<x>, Y<y>, Z<z>} y el token R<r> o al menos un token del conjunto {I<i>, J<j>, K<k>}, en el orden especificado. La instruccin T<t> deber tener como parmetros el token D<d> y M06 en este orden. Las instrucciones X<x>, Y<y> y Z<z>, nicamente podrn emplearse si existe una instruccin de interpolacin activa. Tabla 4.8: Condiciones en el anlisis semntico.

79

Captulo 5: Geometra analtica

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

CAPTULO 5
GEOMETRA ANALTICA
En el presente apartado, se ha considerado la necesidad de describir los mtodos matemticos en los cuales se apoya mecaCNC para resolver y obtener la representacin grfica de las instrucciones implicadas en el trazado de trayectorias. Dejando a un lado la trivialidad del trazado de una interpolacin lineal simple, que se construir utilizando funciones nativas de OpenGL en base al punto inicial y final, se llevar al estudio las interpolaciones circulares as como la traslacin de las trayectorias cuando se activan las funciones de compensacin de radio de la mquina. Tal y como se ha visto en apartados anteriores, el lenguaje ISO-6983 contempla dos instrucciones principales de movimiento: la interpolacin lineal y la interpolacin circular en sentido horario (arco cuyo centro se sita a la derecha de la trayectoria, en adelante SR) y antihorario (arco cuyo centro se sita a la izquierda de la trayectoria, en adelante SCR).

5.1. Interpolacin lineal.


En el caso de la interpolacin lineal, su trazado en el panel Representacin es simple: en la propia instruccin se indicar el punto final, y el punto inicial o de partida consistir en la ubicacin actual del usillo (N), por tanto, basta con definir dichos puntos como vrtices inicial y final, y trazar la recta que los une. Esto se consigue gracias a las funciones nativas de OpenGL glVertex3f(float x, float y, float z), indicando que dichos vrtices componen una recta o secuencia de rectas con glBegin(GL_LINE_STRIPS);

N30 G00 X0 Y0 Z0 N40 G00 X100 Y50 Z10

glBegin(GL_LINE_STRIPS); glVertex3f(0.0f,0.0f,0.0f); glVertex3f(100.0f,50.0f,10.0f); glEnd();

Cdigo G

OpenGL

Representacin

Figura 5.1: Interpolacin lineal.

80

Captulo 5: Geometra analtica

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

5.2. Interpolacin circular.


Para el caso de las interpolaciones circulares, la representacin ser ms compleja. Simplificando al extremo, cualquier representacin grfica se podr definir como el conjunto de puntos que la componen. OpenGL concibe, de modo generalista, toda representacin grfica como el conjunto de puntos (GL_POINTS), rectas (GL_LINES) o polgonos (GL_TRIANGLES y GL_QUADS) que podrn dar lugar a cualquier tipo de forma. Como se puede comprobar, en esta ordenacin de las primitivas bsicas de OpenGL quedan fuera aquellas formas curvas, tales como los arcos que describen las instrucciones de interpolacin circular del cdigo ISO-6983, siendo por tanto necesaria la aproximacin de dicha forma a un conjunto de segmentos, de una longitud suficientemente pequea, como para ser imperceptibles al ojo humano, interpretndose visualmente como una curva.

Figura 5.2: Aproximacin al arco por N puntos y N-1 segmentos.

Observando la Figura 5.2, podemos afirmar que cuantos ms segmentos definan el arco, menor ser la longitud de cada uno de ellos y, consecuentemente, obtendremos una mejor aproximacin a la curva. Cabe destacar que las instrucciones de interpolacin circular nicamente trazarn trayectorias en el plano de mecanizado, sin cambiar la altura entre los puntos inicial y final, y, por tanto, para facilitar el desarrollo y el clculo, se realizar una conversin previa de puntos 3 (X, Y, Z) a puntos en 2 (X, Y), cuyas coordenadas dependern del plano de mecanizado en uso: XY, XZ o YZ.

5.2.1.

Clculo de la aproximacin al arco mediante coordenadas polares.

Como se ha tratado en el apartado anterior, la representacin grfica del arco consiste en una aproximacin a la curva en segmentos. Dada la naturaleza curvilnea del arco, se considera oportuna la resolucin de dicha aproximacin mediante el uso del sistema de coordenadas polares. Segn R.G. Brown, el sistema de coordenadas polares es un sistema de coordenadas bidimensional en el cual cada punto o posicin del plano se determina por un ngulo y una distancia. 81

Captulo 5: Geometra analtica

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

De manera ms precisa, todo punto del plano corresponde a un par de coordenadas (r, ) donde r es la distancia del punto al origen o polo y es el ngulo positivo en sentido anti-horario medido desde el eje polar 0 (equivalente al eje x del sistema cartesiano). [3]

Figura 5.3: Representacin en el sistema polar del punto P.

Siguiendo esta notacin, se podr recorrer el arco angularmente en incrementos adecuados (para el proyecto que nos ocupa, se ha hecho uso de incrementos = 0.01), realizando una posterior conversin punto del sistema polar al cartesiano.

Figura 5.4: Recorrido del arco SR en el sistema polar para plano XY.

Como puede comprobarse en la figura 5.4, el recorrido angular en sentido horario implicar calcular el ngulo () para los puntos inicial y final, obteniendo los valores 0 y 1, por tanto, el recorrido angular se realizar entre los valores 0 y 1 en 82

Captulo 5: Geometra analtica

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

incrementos = 0.01. Si el ngulo inicial 0 fuera menor que el ngulo final 1, ser necesario recorrer desde 0 hasta 1+2 (1 + una vuelta completa), anlogamente al ejemplo de la Figura 5.5, pero en sentido inverso. Obtenidos dichos puntos auxiliares en el sistema polar, bastar con convertirlos al sistema cartesiano, trasladando el centro de coordenadas al centro del arco:

= =

+ +

cos sin

+ 0.01

Frmula 5.1: Clculo de los vrtices de los segmentos que aproximan al arco.

Para el caso de la interpolacin circular SCR, el proceso ser anlogo al anterior, variando ciertos aspectos: si 0 > 1, recorreremos el arco desde 0 hasta 1 decrementando en = 0.01, y en caso contrario (0 < 1) desde 0 hasta 1-2 tambin en decrementos = 0.01. Si se aplica el ejemplo anterior a la interpolacin circular SCR, obtendremos:

Figura 5.5: Recorrido del arco SCR en el sistema polar para plano XY.

Ntese que el clculo del ngulo desde el origen polar hasta el punto en sentido anti-horario implica una comprobacin adicional para establecer correctamente el intervalo angular: ser necesario conocer el cuadrante en el que se ubica el punto, y de esta forma hacer uso de la ecuacin de conversin cartesianopolar adecuada. 83

Captulo 5: Geometra analtica

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Adems, dichas ecuaciones de clculo del ngulo en base al cuadrante tambin sern distintas en funcin del plano de mecanizado (XY, XZ o YZ), pero su determinacin subyace del mismo desarrollo en distinto plano, por tanto, se omitir la explicacin para cada caso, pero se indicar dichos valores en las siguientes figuras:

Figura 5.6: Operaciones a aplicar en base al cuadrante y plano de mecanizado.

Frmula 5.2: Clculo del cuadrante en base al plano.

5.2.2.

Clculo del centro del arco dados los puntos origen y final y el radio.

Considerando que los parmetros de la instruccin de interpolacin consistan en el punto final y el radio, ser necesario calcular el centro del arco, que variar a su vez en funcin de si la interpolacin circular es SR o SCR.

84

Captulo 5: Geometra analtica

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Figura 5.7: Clculo del centro del arco en funcin del radio.

Para ello, el proceso que se ha implementado consiste en calcular, para el punto Origen y Final, la ecuacin de la circunferencia (C1 y C2) con centro en cada punto y radio R.

C1 => (x Origenx)2 + (y Origeny)2 = R2 Frmula 5.3: Ecuacin de la circunferencia C1.

Como se puede comprobar en la figura, dichas circunferencias se cortan en los puntos Centro1 y Centro2, los cuales supondrn el punto centro del arco para la interpolacin circular SR o SCR respectivamente. Una vez hallados los posibles centros, quedara por determinar cul es la pendiente de la recta que une el centro con el origen, y en base a dicha pendiente devolveramos el punto Centro1 o Centro2.

85

Captulo 5: Geometra analtica

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

5.2.3.

Clculo del radio dados los puntos inicial y final y el centro del arco.

Si los parmetros de la instruccin de interpolacin circular comprenden el punto final y el centro del arco, ser necesario calcular el radio para poder transformar las coordenadas cartesianas en polares. Dicho clculo es trivial, ya que el radio equivaldr a la distancia entre cualquiera de los dos puntos (en mecaCNC se ha tomado el origen) y el centro del arco.

Figura 5.8: Clculo del radio en funcin del centro y el punto origen.

La distancia entre ambos puntos se calcula mediante la operacin:

) +(

Frmula 5.4: Clculo del radio en funcin del punto origen y el centro.

5.2.4.

Interpolacin circular en base al centro del arco.

En la instruccin se especifica el punto final (X, Y, Z) y el punto centro del arco (I, J, K) a describir, tomando como punto inicial la ubicacin del usillo.

86

Captulo 5: Geometra analtica

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Figura 5.9: Interpolacin circular SR en base al centro del arco.

En base al desarrollo de los apartados anteriores, para representar grficamente dicho arco haremos uso del sistema de coordenadas polares, el cual requiere el radio, por tanto, se calcular dicho valor haciendo uso de los parmetros punto origen (ubicacin del usillo N(X,Y,Z)) y el centro (I, J, K).

5.2.5.

Interpolacin circular en base al radio.

En la instruccin se especifica el punto final (X, Y, Z) y el radio (R), tomando como punto inicial la ubicacin del actual del usillo

Figura 5.10: Interpolacin circular SR en base al radio.

En este caso, calcularemos el centro del arco haciendo uso del radio y los puntos origen y final, y trazaremos el arco de la forma desarrollada en apartados anteriores.

5.3. Compensacin de radio.


Otro caso susceptible de anlisis matemtico consiste en el trazado de trayectorias con la compensacin de radio activa. La activacin de la compensacin de radio supone la traslacin del trazado de la trayectoria en base al radio (R) y desgaste de radio (I) indicado en el corrector asociado a la 87

Captulo 5: Geometra analtica

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

herramienta activa. Es decir, si la compensacin est activa, se deber desplazar la herramienta una distancia equivalente a la suma de los parmetros del corrector (R+I). El desplazamiento se realizar a izquierdas o derechas de la trayectoria sin compensacin, segn se haya introducido la instruccin de compensacin de radio a izquierdas o derechas.

Figura 5.11: Compensacin a izquierdas y derechas.

Por ltimo, cabe destacar que la compensacin de radio nicamente es aplicable al plano de mecanizado XY, mantenindose Z constante.

5.3.1.

Clculo de la trayectoria compensada en interpolaciones lineales.

Considerando las definiciones previas anteriores, para el caso de instrucciones de interpolacin lineal se podr calcular la trayectoria compensada, trasladada a derecha o izquierda una distancia de R+I milmetros, de la siguiente forma:

88

Captulo 5: Geometra analtica

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Figura 5.12: Clculo de los puntos origen y final de la trayectoria compensada.

En la figura podemos identificar los puntos origen (PO) y final (PF) as como el radio total de la compensacin (Radio) resultado de la suma de los parmetros R y I del corrector asociado. Estos son los datos de que disponemos y que nos permitirn calcular los puntos PO y PF, correspondientes a la trayectoria compensada. Para ello, calculamos el punto auxiliar AO, que consiste en el punto medio entre AO = (POx+Radio, POy) y AO = (POx, POy-Radio), y de manera anloga, el punto AF. Si analizamos la Figura 5.12, podemos comprobar a simple vista que los puntos auxiliares y los puntos de la trayectoria compensada tienen el mismo ngulo , que se podr calcular haciendo uso de la funcin = CalculaAngulo(AO, PO, Radio, plano de mecanizado) descrita en el apartado 5.3.1. Adems, se conoce el valor del Radio, por tanto, podemos obtener la ecuacin en el sistema polar, y, mediante conversin al sistema cartesiano y desplazamiento del centro del sistema polar a los puntos PO y PF, se obtendr el valor de los puntos PO y PF:

POx = POx + (Radio cos()) POy = POy + (Radio sin())

PFx = PFx + (Radio cos()) PFy = PFy + (Radio sin())

Frmula 5.5: Clculo de los puntos Origen y Final de la trayectoria compensada.

89

Captulo 5: Geometra analtica

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Una vez calculados, podremos representar la trayectoria compensada a distancia Radio trazando la recta entre los puntos PO y PF.

5.3.2.

Clculo de la trayectoria compensada en interpolaciones circulares.

Tal y como se ha venido haciendo hasta ahora, el clculo de la trayectoria compensada para la interpolacin circular se realizar mediante el uso del sistema polar.

Figura 5.13: Clculo de las trayectorias compensadas de la instruccin de interpolacin circular SCR.

En la Figura 5.13 podemos observar los datos de que disponemos: el Centro del arco, los puntos Origen (PO) y Final (PF) y la distancia de la compensacin (R + I). Mediante estos parmetros y siguiendo los procedimientos anteriores estaremos en disposicin de obtener el Radio de la trayectoria sin compensar (POPF). Mediante la funcin CalculaAngulo sobre los parmetros PO, Centro y Radio, obtenemos el ngulo 0, que como podemos comprobar, ser idntico para los puntos PO y PO. De forma anloga, obtendremos el ngulo 1 para los puntos finales PF y PF.

90

Captulo 5: Geometra analtica

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Para obtener la representacin polar de los puntos compensados, nicamente restar por calcular los radios (radio para la compensacin a izquierdas y radio para derechas). Grficamente, se puede observar que estos valores se obtendrn mediante Radio (R + I), dependiendo del tipo de compensacin e interpolacin (izquierdas o derechas, SR o SCR). Para concluir, realizaremos una conversin de los puntos del sistema polar al cartesiano, trasladando el centro del sistema polar al punto Centro, y obteniendo as los puntos inicial y final de la trayectoria compensada:

PO(x) = Centro(x) + radio cos(0) PO(y) = Centro(y) + radio sin(0) PF(x) = Centro(x) + radio cos(1) PF(y) = Centro(y) + radio sin(1)

PO(x) = Centro(x) + radio cos(0) PO(y) = Centro(y) + radio sin(0) PF(x) = Centro(x) + radio cos(1) PF(y) = Centro(y) + radio sin(1)

Frmula 5.6: Clculo de los puntos Origen y Final para trayectorias compensadas a izquierda y derecha en interpolaciones circulares

Obtenidos los puntos, trazamos la trayectoria haciendo uso de la funcin de interpolacin circular. La interpolacin circular SR seguir el mismo procedimiento.

5.4. Clculo de la trayectoria compensada en una secuencia de interpolaciones.


Uno de los puntos clave y que reviste mayor complejidad en el proyecto que nos ocupa consiste en el clculo de la trayectoria compensada de una secuencia de interpolaciones. En los sistemas de mecanizado reales, el anlisis y clculo de las trayectorias de mecanizado permite predecir la intencionalidad del programa de mecanizado, es decir, una interpolacin compensada calcular el punto adecuado en base a la direccin de la siguiente instruccin. Este hecho nos lleva a una limitacin en el diseo del programa: en el clculo de la trayectoria de una secuencia de interpolaciones compensadas, ser necesario anticipar la siguiente instruccin para obtener los puntos correctos de dicha trayectoria, por tanto, la representacin grfica de la trayectoria compensada no podr ser en tiempo real.

91

Captulo 5: Geometra analtica

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Figura 5.14: Compensacin sin anticipacin vs. con anticipacin.

A fin de resolver esta limitacin, se acuerda que, al detectar la activacin de la compensacin y hasta detectar la instruccin de desactivacin, se representar la instruccin de interpolacin n-1, pudiendo as disponer del conjunto de puntos adecuado para poder estimar la trayectoria compensada correcta. Por otra parte, existen ciertos casos especiales que aportan un grado an mayor de dificultad: los casos conflictivos. Se considerarn casos conflictivos aquellos que, por la geometra de la trayectoria, su clculo lleve a varias posibles soluciones.

Figura 5.15: Tipos de resolucin de conflictos en la compensacin.

Actualmente, no existe un consenso sobre qu solucin adoptar en caso de conflicto, dependiendo nicamente del control numrico y como este haya sido programado, por tanto, mostrando resultados dispares en base a la mquina CNC, si bien es cierto que la mayor parte de stas resuelven el conflicto mediante el corte de las trayectorias compensadas (primer grfico de la Figura 5.15).

En el proyecto que nos ocupa, existen tres factores decisivos para adoptar como solucin el corte de trayectorias compensadas:

92

Captulo 5: Geometra analtica

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

1. La naturaleza docente del programa permite al usuario entender, adoptando esta solucin, que la compensacin consiste en el desplazamiento de los puntos que est insertando una distancia R+I a izquierda o derecha, generando as un escalado uniforme de las interpolaciones programadas. 2. Esta solucin es la que respeta en mayor medida la geometra de la trayectoria, ya que se obtiene una trayectoria idntica desplazada en el factor de compensacin. 3. La mquina EMCO PC Mill 125 resolver los conflictos empleando esta metodologa. Determinada por tanto la solucin a implementar, se calcularn los puntos que definen la trayectoria compensada en una secuencia de interpolaciones hallando los puntos de corte de las trayectorias compensadas simples, detalladas en los apartados 5.3.1 y 5.3.2 del presente captulo.

5.4.1.

Clculo de la trayectoria compensada en una secuencia de interpolaciones lineales.

El primer caso de anlisis consistir en la insercin de varias instrucciones de interpolacin lineal con la compensacin activada.

Figura 5.16: Clculo de los puntos de corte de las trayectorias compensadas simples a derechas en interpolaciones lineales.

En la Figura 5.16 podemos observar, en distintos tonos de marrn, lo que supondra la trayectoria compensada simple para cada una de las instrucciones de interpolacin (Inst.1-4), calculadas segn el procedimiento descrito en el apartado 5.3.1. Obtenidos los puntos de cada trayectoria compensada simple, podremos definir la ecuacin de cada una de las rectas que componen, pasando por ambos puntos. 93

Captulo 5: Geometra analtica

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

( ,

), ( ,

Frmula 5.7: Ecuacin de la recta que pasa por los puntos compensados simples.

Por cada par de puntos, obtenemos la ecuacin de su recta. Igualando dichas rectas y despejando las componentes (se ha considerado despejar y en funcin de x), obtendremos el punto de corte entre ambas rectas que supondr el punto de la trayectoria mecanizada compensada. Este conjunto de operaciones vendr definido en una nica funcin CalculaInterseccionEntreRectas, que recibir como parmetros los 2 puntos que forman cada recta y el plano en el que se est mecanizando. El procedimiento para la compensacin a izquierdas ser idntico al descrito, considerando que los puntos que componen la trayectoria compensada simple tendrn distinta ubicacin. Cabe destacar que, como se puede observar en la Figura 5.16, una vez activada la compensacin, la primera aproximacin se realizar del punto origen al primer punto compensado calculado. El fin de la compensacin realizar la operacin inversa, desplazndose del punto compensado al punto final sin compensar.

Figura 5.17: Representacin grfica resultado de la trayectoria lineal compensada.

Ntese que en el resultado se representan Inst.-1 tramos compensados, ya que, tal y cmo se explic anteriormente, mecaCNC no podr conocer el Punto 4 Compensado hasta que se conozca la direccin del ltimo tramo tras insertarse la instruccin Inst. 5.

94

Captulo 5: Geometra analtica

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

5.4.2.

Clculo de la trayectoria compensada en una secuencia de interpolaciones circulares.

En el caso de una secuencia de interpolaciones circulares, haciendo uso de funciones de clculo analizadas en apartados anteriores, podemos obtener fcilmente los puntos de corte que supondrn los puntos conflictivos del mecanizado compensado.

Figura 5.18: Clculo de los puntos de corte de las trayectorias compensadas simples a izquierdas en interpolaciones circulares SR.

Observando la Figura 5.18, se puede comprobar que los puntos de corte se podrn calcular mediante la funcin descrita en el apartado 5.2.2, estableciendo como puntos inicial y final los puntos Centro n y Centro n+1 y el valor del radio igual al radio de la interpolacin ms el factor de compensacin R+I. De esta forma, se puede aprovechar la funcin de clculo de centros de la interpolacin circular para hallar los puntos de corte que supondrn los puntos de la trayectoria compensada.

Figura 5.19: Representacin grfica resultado de la trayectoria circular compensada.

95

Captulo 5: Geometra analtica

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

En el caso de secuencias de interpolaciones circulares compensadas, para obtener una mayor fidelidad a la geometra de los puntos insertados, en caso de que se inicie la compensacin en una instruccin de interpolacin circular, la aproximacin al Origen Compensado se realizar en lnea recta desde el punto Origen de la interpolacin. Al igual que ocurra en el caso anterior, mecaCNC estar en disposicin de representar grficamente el tramo Inst.-1. En el caso que las trayectorias compensadas simples no se crucen, el programa devolver error, tal y como sucedera en el caso presentado en la Figura 5.19 si la compensacin fuera a derechas, al igual que sucedera si se especificara una instruccin de interpolacin circular cuyos puntos inicial y final, en conjuncin con el radio, conformasen una geometra imposible de resolver.

5.4.3.

Clculo de la trayectoria compensada en una secuencia de interpolaciones mixta.

El ltimo caso de anlisis supondr aquella secuencia de interpolaciones que alterne entre lineales y circulares, que, en adelante, se considerar una trayectoria mixta. Para este caso, ser necesario calcular el punto de corte entre una recta y una circunferencia, lo que conlleva una funcin de clculo adicional a las ya vistas hasta ahora.

Figura 5.20: Clculo de los puntos de corte de las trayectorias compensadas simples a izquierdas en interpolaciones mixtas.

96

Captulo 5: Geometra analtica

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Para calcular el punto de corte entre la trayectoria compensada de la instruccin de interpolacin lineal y la circular, obtendremos, en primera instancia, la ecuacin de la recta y de la circunferencia compensada mediante los mtodos descritos anteriormente:

( ,

), ( ,

) +(

) =

+( + )

Frmula 5.8: Sistema de ecuaciones formado por la recta y la circunferencia compensada.

A continuacin, se resolver el sistema de ecuaciones formado por las ecuaciones anteriores, para el que se obtendrn dos soluciones: el punto de la trayectoria compensada ser aquel cuya distancia al punto compensado correspondiente de la interpolacin lineal sea menor. En el caso de que las trayectorias compensadas simples de ambas interpolaciones no se corten, se comprobar si la circunferencia compensada se corta con la trayectoria lineal sin compensar: en caso afirmativo, este punto se aadir a la trayectoria compensada; en caso contrario, la funcin devolver error. Podemos observar este caso entre las instrucciones 4 y 5 de la Figura 5.20. Para la compensacin a derechas, se realizar una resolucin anloga considerando la nueva ubicacin de los puntos.

Figura 5.21: Representacin grfica resultado de la trayectoria mixta compensada.

97

Captulo 6: Ejemplo de uso

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

CAPTULO 6
EJEMPLO DE USO
En el presente captulo se establecer un ejemplo de uso extrado de un ejercicio real de la asignatura Fabricacin Asistida por Computador y se resolver haciendo uso de mecaCNC.

6.1. Enunciado.

Contorno exterior: Fresa 4mm. (long. mango = 11.25 mm, long. corte = 33.75mm). Profundidad de mecanizado = 10mm. Contornos interiores: Fresa 2mm. (long. mango = 9.5 mm, long. corte = 28.5mm). Profundidad de mecanizado = 5mm. Dimensiones de la pieza: 100 x 60 x 30 Todas las medidas en milmetros.

98

Captulo 6: Ejemplo de uso

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

6.2. Resolucin mediante mecaCNC.


1. En primer lugar, se definirn las herramientas especificadas en el enunciado. Para ello, se acceder a Configuracin > Configurar Herramientas (Ctrl+H). Una vez mostrada la ventana Configurar Herramientas, definiremos las dos fresas, obteniendo la siguiente tabla de herramientas:

Figura 6.1: Tabla de herramientas resultante.

2. Asignamos Fresa1 al primer porta-brocas y Fresa2 al segundo. Tras la asignacin, se podr cerrar la ventana.

Figura 6.2: Panel Asignar Herramienta resultante.

3. Se define la pieza. Para ello, se acceder a Configuracin > Definir Pieza (Ctrl+P). Como no se indican datos de la ubicacin de la mordaza en el banco de trabajo, dichos valores se establecern a 0. Al presionar sobre Definir, de forma automtica se establecer el decalaje G54 en el punto Cero Pieza = (0.0,0.0,30.0).

99

Captulo 6: Ejemplo de uso

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Figura 6.3: Ventana Definir Pieza resultante.

4. Como se puede comprobar en el esquema del enunciado, las medidas parten de dos puntos: el Cero Pieza y el punto (10,10,30). A fin de facilitar la programacin, se definir G55 = (10,10,30), donde 30 equivaldr a la dimensin de la pieza en el eje Z. Para ello, se acceder a Configuracin > Definir decalajes (Ctrl+D).

Figura 6.4: Ventana Definir Decalajes resultante.

5. Si se considera adecuado, se podr guardar un archivo de configuracin que incluir todos las definiciones y asignaciones realizadas hasta este punto desde Configuracin > Guardar arch. configuracin (Ctrl+G).

6. A partir de este punto, y al no indicarse valor de correctores, se inicia la insercin de cdigo ISO. En primer lugar, se han de establecer las instrucciones de inicializacin que definirn unidades de medida, plano de mecanizado, velocidades, etc. El usuario puede obtener la lista completa de instrucciones y su funcionalidad desde Ayuda > Mostrar Ayuda (F1) y en la nueva ventana, en la pestaa de ayuda

100

Captulo 6: Ejemplo de uso

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

por contenidos, Sistema de ayuda Cdigo G (ISO-6983) Lista de instrucciones ISO-6983. Insertaremos las instrucciones: Instruccin G71 G90 G17 G94 S5000 T00 D0 M06 G55 M03 Funcin Se establecen las unidades de medida en milmetros Coordenadas absolutas Plano de mecanizado XY Unidades de avance en mm/min. Establecemos la velocidad mxima del husillo Seleccionamos la herramienta para el contorno exterior Activamos el decalaje G55 =(10.0,10.0,30.0) Activamos el giro del husillo en direccin SR Tabla 6.1: Relacin de instrucciones de inicializacin.

Una vez insertadas las instrucciones de la Tabla 6.1, los paneles de la ventana principal mostrarn los siguientes resultados:

Figura 6.5: Panel Consola resultante.

101

Captulo 6: Ejemplo de uso

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Figura 6.6: Panel Representacin resultante.

Figura 6.7: Panel Herramienta resultante.

Figura 6.8: Panel Configuracin resultante.

102

Captulo 6: Ejemplo de uso

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

7. A partir de este punto, la mquina CNC estar configurada y lista para recibir las instrucciones de control de trayectoria que compondrn el mecanizado, a falta de indicar la velocidad de avance que podr indicarse haciendo uso de la instruccin G01. La lista de instrucciones que generan el contorno exterior sern:

Funcin Aproximamos el husillo al punto (0,0,0). Al haber G01 X0 Y0 Z0 F1000 activado el decalaje G55, realmente nos estaremos aproximando al punto (10,10,30). Nos dirigimos a la profundidad definida en el enunciado para el contorno exterior. Al permanecer Z-10 activa la instruccin G01, nicamente ser necesario indicar la componente que vara, obteniendo un resultado anlogo a G01 X0 Y0 Z-10. X85 Desplazamos en el eje X. Interpolacin circular a izquierdas con centro (75,0,G03 X75 Y10 I-10 10) G01 X50 Y10 Interpolacin lineal a (50,10,-10) Interpolacin circular a derechas al punto (45,15,-10) G02 X45 Y15 R5 con radio 5 G01 Y20 Interpolacin lineal a (45,20,-10) Interpolacin circular a derechas al punto (50,25,-10) G02 X50 Y25 R5 con radio 5 G01 X75 Interpolacin lineal a (75,25,-10) Interpolacin circular a izquierdas al punto (85,35,G03 X85 Y35 R10 10) con radio 10 G01 X85 Y40 Interpolacin lineal al punto (85,40,-10) X40 Y45 Interpolacin lineal al punto (40,50,-10) X0 Interpolacin lineal al punto (0,45,-10) Y0 Interpolacin lineal al punto (0,0,-10) Interpolacin lineal al punto (0,0,10), donde Z10 establecemos la posicin de reposo antes de continuar con el contorno interior. Tabla 6.2: Secuencia de instrucciones G para mecanizar el contorno exterior del enunciado.

Instruccin

Tras esta secuencia de instrucciones, obtenemos la siguiente representacin:

103

Captulo 6: Ejemplo de uso

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Figura 6.9: Representacin multivista del mecanizado del perfil exterior. 8. A continuacin, se insertarn las instrucciones para trazar el perfil interior. Funcin Como podemos observar en la figura del enunciado, las medidas del perfil interior toman como G54 referencia el punto Cero Pieza, por tanto, transportamos el sistema de coordenadas a dicho punto mediante el decalaje G54. Seleccionamos la herramienta definida para el perfil T01 D0 M06 interior. G01 X25 Y30 Desplazamos al punto (25,30,-5) G01 Z-5 Desplazamos a Z-5 profundizando en la pieza Interpolacin circular a derechas indicando el mismo G02 Y30 J10 origen y fin (25,30,-5) y el centro (25,40,-5), generando, por tanto, una circunferencia completa. Anlogo a la anterior con centro (25,20,-5), en este G03 Y30 J-10 caso se ha usado interpolacin a izquierdas para comprobar que el resultado es el mismo. Se abandona el volumen de la pieza desplazando G01 Z10 linealmente a Z10 M05 Se desactiva el husillo Se activa el decalaje G56 = (0,0,0) que permite volver G56 al sistema de coordenadas de la mquina. Se desplaza al punto de reposo (0,0,200) en el G00 X0 Y0 Z200 sistema de coordenadas de la mquina. M02 Fin del programa Tabla 6.3: Secuencia de instrucciones G para mecanizar el contorno interior del enunciado. 104 Instruccin

Captulo 6: Ejemplo de uso

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Con la anterior secuencia de operaciones, se habr obtenido el resultado final requerido por el enunciado:

Figura 6.10: Resultado final del mecanizado en perspectiva.

Figura 6.11: Resultado final del mecanizado en perfil.

105

Captulo 6: Ejemplo de uso

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Figura 6.12: Resultado final del mecanizado en planta.

Figura 6.13: Resultado final del mecanizado en alzado

106

Captulo 6: Ejemplo de uso

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Figura 6.14: Ventana de mecaCNC tras finalizar el mecanizado.

9. Cabe destacar que, durante el proceso de insercin de cdigo, se ha hecho uso de las utilidades de edicin disponibles en el men contextual del panel Consola (botn derecho sobre instruccin), as como las funciones Deshacer (Ctrl+Z) y Rehacer (Ctrl+Y), pudiendo as flexibilizar la insercin de cdigo en caso de insertar instrucciones incorrectas.

Figura 6.15: Utilidades de edicin de cdigo en panel Consola.

107

Captulo 6: Ejemplo de uso

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

10. As mismo, si el usuario desconoce o no recuerda la sintaxis de alguna instruccin del cdigo ISO-6983, se recuerda que se puede acceder al sistema de ayuda interactiva integrada (Ayuda > Mostrar ayuda o tecla F1) que dispone de la lista completa de instrucciones G interpretables por el simulador y su funcionalidad asociada.

Figura 6.16: Ventana del sistema de ayuda con lista de instrucciones ISO-6983 interpretables por mecaCNC.

11. Una vez finalizado el mecanizado, se podrn realizar distintas acciones: En primer lugar, se recomienda guardar (Ctrl+S) un archivo de proyecto .mcnc que contendr las definiciones, asignaciones e instrucciones correspondientes a todas las acciones realizadas durante la ejecucin. Tambin se podr exportar (Ctrl+E) el cdigo a un archivo .txt o .g que contendr nicamente el programa ISO-6983 del cdigo insertado. Posteriormente, este archivo podr ser ejecutado en la mquina EMCO PC Mill 125, obteniendo la pieza anloga a la representacin mostrada. Se podr hacer uso de la Ejecucin paso a paso (men contextual del panel Consola), que permite comprobar el resultado de la ejecucin hasta la instruccin 108

Captulo 6: Ejemplo de uso

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

seleccionada, o bien reproducir la ejecucin con un retardo especfico que permita identificar la funcin de cada instruccin.

Figura 6.17: Ventana de control de ejecucin paso a paso.

Figura 6.18: Ejecucin paso a paso sobre resultado.

12. Para finalizar, cabe recordar que haciendo uso de los atajos de ratn, el usuario podr modificar a su antojo la cmara en el panel representacin, pudiendo comprobar la pieza desde distintos ngulos. Finalizado el proceso, podremos abrir un nuevo proyecto Archivo > Nuevo (Ctrl+N) o salir del programa Archivo > Salir (Ctrl+Q).

109

Captulo 7: Conclusiones

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

CAPTULO 7
CONCLUSIONES
En el desarrollo de un proyecto como el que nos ocupa, una parte fundamental del mismo radica en las conclusiones que se hayan podido extraer. Se puede considerar en parte ste captulo como el inverso a la introduccin, por tanto, ser necesario analizar los resultados obtenidos, comprobando el correcto cumplimiento de todos los objetivos finales e intermedios e indicando aquellos factores no considerados inicialmente y que, a posteriori, se ha credo conveniente aadir al proyecto para enriquecer su funcionalidad, contenidos, optimalidad o usabilidad. Por otra parte, se considera que una de las mayores virtudes de las ingenieras proviene de encontrarse con errores, dificultades y problemas durante el desarrollo, ya que gracias a este conjunto de situaciones complejas que no se hayan tenido en cuenta y hayan llevado al ingeniero a situaciones que requieran un sobresfuerzo, se enriquecer su experiencia, conocimientos y capacidad resolutiva. Es por ello que se ha estimado conveniente mostrar al lector los principales problemas encontrados durante el desarrollo y cmo stos han sido resueltos. Por ltimo, la elaboracin de un proyecto de tal relevancia en la vida de un ingeniero como lo es su proyecto de final de carrera, mxime si se trata de la creacin de un programa complejo, genera en la persona una serie de inquietudes, ideas, posibles aplicaciones y proyecciones de futuro en la lnea de aquello que se ha desarrollado. En el proyecto que nos ocupa, se ha credo conveniente analizar la proyeccin de futuro, estableciendo una relacin de ideas generadas a raz del desarrollo.

7.1. Anlisis de resultados.


En primer lugar, ser conveniente recordar al lector los objetivos especificados en la introduccin de este documento. Estos son:

3.

Desarrollo de un programa docente, consistente en un simulador de mecanizados mediante lenguaje ISO-6983, donde el alumno pueda aprender a programar mecanizados en mquinas CNC, de forma interactiva y en tiempo real, mostrando el resultado del mecanizado en 3D y con capacidad de exportacin a la mquina real, adaptando la funcionalidad del simulador a la mquina EMCO PC Mill 125. Para ello se requerir como requisitos u objetivos intermedios:

110

Captulo 7: Conclusiones

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

a. Que el programa sea multiplataforma. b. La insercin y ejecucin de instrucciones ser en tiempo real. c. La ejecucin en tiempo real har necesaria la elaboracin de un analizador lxicosintctico-semntico que controle la sintaxis y convierta cada instruccin ISO-6983 al conjunto de instrucciones que implementen su funcionalidad. d. El simulador ser multiventana, permitiendo al usuario abrir mltiples instancias del mismo. e. El simulador emular las funciones de la mquina EMCO PC Mill 125. f. El alumno ha de recibir una herramienta de auto-aprendizaje, con los contenidos necesarios accesibles desde el propio programa que le permitan aprender desde cero a programar mecanizados en cdigo ISO-6983. Es por ello que se crear un sistema de ayuda integrada interactivo.

g. El programa ser sostenido por una interfaz grfica en entorno de ventanas fcil e intuitiva, adaptable a mltiples resoluciones de pantalla.

Detenindonos en este primer objetivo, podemos concluir que se ha cumplido los requisitos: Multiplataforma: el objetivo se cumple, pudiendo ejecutarse la solucin en sistemas MacOSX, Windows, Linux y Solaris en distintas arquitecturas, gracias al lenguaje Java y su mquina virtual. Ejecucin en tiempo real: el simulador representa la ejecucin de la instruccin en tiempo real, mediante la activacin de los indicadores oportunos en la interfaz, o mediante la representacin tridimensional. Analizador lxico-sintctico-semntico: para cada instruccin insertada, se analizan los posibles errores en la construccin, avisando del origen del error en su caso o tomando los datos necesarios y ejecutando la secuencia de instrucciones que darn lugar a la funcionalidad asociada. Multiventana: pueden abrirse varias instancias del programa gracias a la jerarqua de clases del lenguaje de programacin orientado a objetos. Adaptacin a EMCO PC Mill 125: el desarrollo del simulador ha sido adaptado a la geometra de la mquina EMCO PC Mill 125, disponiendo del mismo nmero de herramientas en el carrusel porta-brocas, mismos intervalos en velocidades, mismos parmetros de configuracin y mismo conjunto de instrucciones ISO 111

Captulo 7: Conclusiones

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

admitidas. Adems, el programa permite exportar el cdigo del programa ISO y se ejecutado en la mquina real. Sistema de ayuda integrada: el simulador implementa un subsistema de ayuda integrada por contenidos, ndice o bsqueda de palabras clave, incorporando la descripcin de cada uno de los elementos y funcionalidades del programa, la estructura de un programa de mecanizado y el listado completo de las instrucciones ISO-6983 interpretables por el simulador junto a su funcionalidad asociada, adems de un ejemplo de uso paso a paso. El sistema de ayuda es interactivo y permite la impresin de los documentos que se considere necesarios. Interfaz grfica fcil e intuitiva: se genera una interfaz en base al estudio del usuario, contenido y contexto, tratando de facilitar los accesos en el menor nmero de acciones posibles, mostrando nombres, imgenes, esquemas e iconos identificativos de cada accin asociada. La interfaz se adapta a la resolucin de pantalla partiendo desde un nivel mnimo necesario.

Por tanto, del cumplimiento de los requisitos y objetivos intermedios, alcanzamos la correcta realizacin del objetivo principal, obteniendo el simulador de mecanizados orientado a la docencia, multiplataforma, en tiempo real y adaptado a la mquina EMCO PC Mill 125. Adems, sobre estos objetivos, se han aadido distintas funcionalidades adicionales que, en tiempo de desarrollo, se han considerado convenientes para potenciar ciertos aspectos del objetivo. Se crea una funcin de importacin de programas ISO-6983 en formato .txt o .g, pudiendo obtener dichos programas de las propias mquinas CNC o de la generacin de Cdigo G de soluciones CAD/CAM. Se aade un apartado de documentacin en la ayuda, que enlazar a distintos documentos de inters en PDF, incluyendo el manual de la mquina EMCO PC Mill 125. Se aade un controlador paso a paso de la ejecucin, permitiendo controlar el flujo de ejecucin de las instrucciones que han sido insertadas en la lista, obteniendo una representacin de la instruccin o intervalo de instrucciones deseadas. Se aaden mltiples hilos de ejecucin para asumir operaciones de gran volumen de datos que puedan suponer cuellos de botella, como la importacin y apertura. Se implementan funciones de pila de instrucciones insertadas, tales como insertar en un determinado punto, editar, borrar, deshacer y rehacer.

112

Captulo 7: Conclusiones

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Se crea una opcin de guardado de archivos de configuracin, que permitir preestablecer configuraciones especficas, tiles por ejemplo para la realizacin de ejercicios o el trabajo recurrente sobre el mismo conjunto de herramientas.

4.

Implantacin del simulador como herramienta docente en los laboratorios de mecanizado del DISA y el resto de departamentos que se considere.

Tras la culminacin del proyecto, se acuerda implantar el programa como herramienta de aprendizaje para la asignatura Fabricacin Asistida por Computador (FAC), impartida por Eduardo Vendrell en los laboratorios de mecanizados del Departamento de Ingeniera de Sistemas y Automtica (DISA) de la Universidad Politcnica de Valencia. Debido a los tiempos de finalizacin del proyecto en relacin a los meses en los que se imparte la asignatura, este objetivo no ser llevado a cabo hasta el inicio de las clases de la asignatura. El simulador ha sido sometido a constantes pruebas iterativas (incluyendo importacin de archivos en Cdigo G de aproximadamente 14000 lneas de cdigo), y ha sido usado para resolver una batera de ejercicios propuestos en la asignatura, pero se considera una oportunidad nica y excepcional su uso por el conjunto de alumnos de FAC. Pese a que el simulador en el momento de su implantacin ya habr sido finalizado y presentado, se acuerda establecer un seguimiento de su implantacin como herramienta docente.

7.2. Dificultades proyecto.

encontradas

durante

la

elaboracin

del

Durante el periodo de desarrollo del proyecto, cabe subrayar ciertos contratiempos que, por su complejidad o relevancia de cara al cumplimiento de plazos, sean susceptibles de mencin. En primer lugar, el proyecto se inici haciendo uso del entorno de programacin Eclipse. Como se ha comentado a lo largo de la memoria, el lenguaje Java no implementa funciones nativas de manejo de OpenGL, siendo necesaria la instalacin de dichas libreras como un plugin o complemento al entorno. El requerimiento multiplataforma en conjuncin con un cambio de versin de Eclipse, deriv en la necesidad de cambio de entorno, ya que no se pudo obtener las bibliotecas Java OpenGL adecuadas para que el programa funcionase en sistemas MacOSX. Este hecho llev a la consideracin de otros entornos de programacin, estudindose las caractersticas que ofreca NetBeans y comprobndose que el propio entorno es capaz de generar el programa para mltiples plataformas, adaptando las libreras que importa el 113

Captulo 7: Conclusiones

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

programa a cada uno de esos sistemas, y disponiendo de un plugin de fcil instalacin que aada al programa las libreras y componentes necesarios para enlazar OpenGL con la interfaz. Por ello, se decidi cambiar de entorno a NetBeans y la importacin del proyecto Eclipse a NetBeans no ofreca los resultados deseados en relacin a la interfaz grfica, por tanto, se decidi reprogramar la interfaz grfica desde cero. Por otra parte, algunos componentes SWING ofrecidos por Java presentan ciertas deficiencias de cara a la ejecucin en tiempo real. En concreto, el componente GLJPanel de Java que define el marco de representacin grfica de MecaCNC presenta unos tiempos de respuesta inferiores al GLCanvas, tambin para el manejo de la representacin de grficos OpenGL. Sin embargo, este ltimo presentaba ciertos problemas en determinadas plataformas y se decidi hacer uso del componente GLJPanel, lo cual cre la necesidad de una mayor optimizacin del cdigo para obtener mejores tiempos de respuesta del componente. Por ltimo, uno de los ltimos errores que limitaron el diseo conceptual inicial viene determinado por un bug en el componente SWING JList. Dicho componente presenta un comportamiento inestable si se realizan, de una a una y en tiempo de ejecucin, sucesivas inserciones de cadenas de caracteres en la lista (por ejemplo, desde un bucle for) para un conjunto relativamente grande de inserciones, y se pretende que el componente muestre siempre la ltima cadena insertada (mediante el uso del mtodo JList.ensureIndexIsVisible(int)). Esta implementacin (considerada necesaria en la importacin y apertura de archivos), mostraba deficiencias de inestabilidad en el redibujado del componente, presentando en el redibujado del componente un efecto flash, caracteres extraos durante la insercin en bucle y movimientos alternativos del indicador de la barra de desplazamiento del componente. Para solucionar este problema (del que la comunidad Java ya tiene constancia), se consider: Por una parte, para la funcin de importacin y apertura de archivos de proyecto, es conveniente que esta se haga en el menor tiempo posible, por tanto, se insertan todas las instrucciones y posteriormente se actualiza el componente y se representa grficamente su ejecucin lnea por lnea. Por otra parte, en el caso de la ejecucin paso a paso, el objetivo consiste en que el usuario compruebe qu es lo que hace cada instruccin, por tanto, no es necesaria la velocidad del caso anterior, permitiendo as realizar pausas de 0.5 segundos entre operaciones JList.ensureIndexIsVisible(int), reduciendo as las deficiencias del redibujado del componente.

7.3. Proyeccin de futuro.


La realizacin de este proyecto ha proporcionado una serie de inquietudes relacionadas con el mismo y con la ingeniera del software en materia de programas que sirvan para su aplicacin docente. 114

Captulo 7: Conclusiones

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Adems, maximizar el ciclo de vida de un programa como mecaCNC supone considerar la elaboracin de revisiones y cambios de versin que aporten nuevas funcionalidades, ampliacin de las ya existentes o implementacin de necesidades que puedan ir surgiendo durante su uso prolongado y que no hayan sido consideradas inicialmente. De la conjuncin resultante entre estas inquietudes, la motivacin adquirida y el deseo de maximizar el ciclo de vida del simulador, se han tenido ciertas ideas de futuro para prximas versiones del programa: Se ha considerado la generalizacin del simulador a otras mquinas CNC mediante mdulos programables por el propio usuario que determinen las caractersticas fsicas y funcionales de la adaptacin de mecaCNC a dichas mquinas. Actualmente, ya se ha analizado y se considera un siguiente paso en el desarrollo, aadir la representacin en slido del resultado del mecanizado. Entre las posibles soluciones a dicha mejora, se considera el uso del Stencil Buffer de OpenGL para implementar las operaciones booleanas que permitan la representacin slida en base a CSG. La tecnologa Web 2.0 lleva a considerar la adaptacin de la prxima versin de mecaCNC a su versin online, pudiendo as llegar a una mayor masa crtica de usuarios del simulador. Aunque no se haya considerado como plataforma objetivo, la compilacin del lenguaje Java para su uso en plataformas Android es relativamente fcil mediante el uso de la herramienta 'dx', incluida en el propio SDK de Android, la cual permite convertir archivos Java al formato DEX interpretable por la mquina virtual Dalvik de Android. Por ltimo, cabe mencionar que, durante el anlisis y posterior diseo del simulador, se ha echado en falta una librera Java que implementase algunos de los mtodos matemticos descritos en el captulo 5, por tanto, se considera la posibilidad de traducir las funciones desarrolladas para mecaCNC al ingls y compartir la librera resultante con la comunidad. Como se puede observar, la realizacin del proyecto ha resultado en un deseo de continuidad en proyectos del mbito de la ingeniera de sistemas y automtica, tanto en su aplicacin docente como profesional, seal inequvoca de la satisfaccin de los conocimientos adquiridos y el gusto por la materia.

115

Captulo 8: Referencias

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

CAPTULO 8
REFERENCIAS
[1] Sistemas CAM E. Vendrell Vidal. Fabricacin Asistida por Computador. Departamento de Ingenieras de Sistemas y Automtica. 2009 [2] Centros de mecanizado - caractersticas y conceptos L. Muoz. URL: http://www.ib.cnea.gov.ar/~mater2/MATERIALESII/CentroMec.pdf Materiales II. Instituto Balseiro. 2008 [3] Advanced Mathematics: Precalculus with Discrete Mathematics and Data Analysis. R.G. Brown. ED: McDougal Littell. ISBN 0-395-77114-5. 1997

116

Captulo 9: Bibliografa

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

CAPTULO 9
BIBLIOGRAFA
1. Apuntes de la asignatura Fabricacin Asistida por Computador Responsable de la asignatura: E. Vendrell Vidal. Departamento de Ingeniera de Sistemas y Automtica (DISA). Universidad Politcnica de Valencia, 2009. 2. Apuntes de la asignatura Ingeniera de la Programacin Responsable de la asignatura: J. Snchez Daz. Departamento de Sistemas Informticos y Computacin (DSIC). Universidad Politcnica de Valencia, 2008. 3. Apuntes de la asignatura Metodologa y Tecnologa de la Programacin Responsable de la asignatura: F. J. Jan Martnez. Departamento de Sistemas Informticos y Computacin (DSIC). Universidad Politcnica de Valencia, 2003. 4. Apuntes de la asignatura Interfaz Grfica de Usuario Responsable de la asignatura: M.C. Juan Lizandra. Departamento de Sistemas Informticos y Computacin (DSIC). Universidad Politcnica de Valencia, 2004. 5. Apuntes de la asignatura Grficos Por Computador Responsable de la asignatura: R.A. Viv Hernando. Departamento de Sistemas Informticos y Computacin (DSIC). Universidad Politcnica de Valencia, 2009. 6. Apuntes de la asignatura Grficos Por Computador Responsable de la asignatura: R.A. Viv Hernando. Departamento de Sistemas Informticos y Computacin (DSIC). Universidad Politcnica de Valencia, 2009. 7. Thinking in Java (4th edition) Bruce Eckel. Editorial Prentice Hall. 2007. Materiales II: Centros de Mecanizado Caractersticas y Conceptos L. Muoz. Instituto Balseiro, 2008.

8.

117

Captulo 9: Bibliografa

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

9. Tesis doctoral Estudio numrico de los fenmenos de contacto en el mecanizado R. Cheriguene. Departamento de Ingeniera Mecnica y Organizacin Industrial. Universidad Carlos III de Madrid, 2009. 10. Tesis doctoral Modelo Superficie-Trayectoria. Un modelo geomtrico para el diseo y fabricacin de objetos tridimensionales R. Molina Carmona Departamento de Ciencia de la Computacin e Inteligencia Artificial. Universidad de Alicante, 2002. 11. JavaHelpTM 2.0 System Users Guide Sun Microsystems, Inc. 2004 12. Consejos para el desarrollo de tu proyecto final de carrera F.J. Abad Cerd Departamento de Sistemas Informticos y Computacin (DSIC). Universidad Politcnica de Valencia, 2010. 13. Evolucin tcnica de la mquina-herramienta. Resea histrica P. Aldabaldetrecu Interempresas.net, 2002 URL: http://www.interempresas.net/MetalMecanica/Articulos/1435-Evolucion-tecnicade-la-maquina-herramienta-Resena-historica.html 14. Java SE 6 Documentation. URL: http://download.oracle.com/javase/6/docs/index.html#NewFeature 15. OpenGL Software Development Kit Documentation URL: http://www.opengl.org/sdk/ 16. NeHe OpenGL Tutorials URL: http://nehe.gamedev.net/ 17. Wikipedia. La enciclopedia libre. URL: http://www.wikipedia.org/

118

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

ANEXO A
MANUAL DE USUARIO

Simulador mecaCNC v1.0.


El presente documento consiste en el manual de usuario del simulador de instrucciones ISO6983 mecaCNC en su primera versin. En este manual se tratarn todos los aspectos funcionales de la aplicacin, permitiendo al usuario un mximo aprovechamiento de sus funcionalidades.

Introduccin.
mecaCNC consiste en un simulador de mecanizados que interpreta y representa en tiempo real, las instrucciones en cdigo ISO-6983 insertadas. mecaCNC est especialmente concebido para su uso en la docencia, ofreciendo caractersticas que faciliten el auto-aprendizaje tanto del uso de la aplicacin como de las bases y procedimientos de la programacin CNC en los procesos de mecanizado. A fin de obtener una base de conocimiento que aproxime al proceso de mecanizado real, el simulador mecaCNC est adaptado al centro de mecanizado EMCO PC Mill 125, tratando de emular su funcionalidad e interpretando el mismo conjunto de instrucciones que dicho centro de mecanizado admite como propias. El uso de mecaCNC est fuertemente ligado a la docencia, permitiendo al usuario afianzar conceptos y comprobar, mediante una representacin tridimensional adjunta a indicadores del estado de la mquina, que supone en el proceso de mecanizado real la ejecucin de cada una de las instrucciones ISO insertadas.

119

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Requisitos del programa.

Requisitos software. mecaCNC es multiplataforma, pudiendo ser ejecutado en los sistemas operativos: Windows XP, Windows Vista, Windows 7 (arquitecturas x86 y x64). MacOS X [10.0 - 10.7] (arquitecturas PowerPC e Intel x86 y x64). Linux (arquitecturas x86 y x64). Solaris (arquitecturas SPARC, SPARCv9 e i586, x86 y x64).

Para la ejecucin de mecaCNC ser necesaria la instalacin de Java Runtime Environment (JRE), preferiblemente en su ltima versin (Java 6). Puede descargar Java Runtime Environment (JRE) gratuitamente desde la web http://www.java.com.

Para la lectura de la documentacin asociada, ser necesario Adobe Reader, preferiblemente en su ltima versin (Adobe Reader X). Puede descargar Adobe Reader gratuitamente http://www.adobe.com/es/products/reader.html. desde la web

Requisitos hardware. 128 MB RAM (recomendado 512MB). 100 MB de espacio libre en disco (recomendado 300MB). Tarjeta de aceleracin grfica de al menos 32MB de VRAM (recomendado 64MB). Resolucin mnima del dispositivo de salida de imagen de 1024 x 768 pxeles.

120

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Instalacin y apertura del programa.


mecaCNC se ejecuta sobre Mquina Virtual de Java (JVM), pudiendo, por tanto, ser ejecutado sin instalacin previa. Para obtener una copia de mecaCNC en su disco local, nicamente ser necesario descomprimir en la ubicacin deseada el archivo Zip correspondiente a su sistema operativo y distribucin. Para ejecutar mecaCNC:

Windows: Dirjase a la carpeta <Unidad>:\<Carpeta de descompresin>\mecaCNC. (Por ejemplo, C:\Archivos de programa\mecaCNC). Haga doble clic sobre el archivo mecaCNC.jar. * Puede ejecutar mecaCNC desde consola de comandos mediante la instruccin java jar <Unidad>:\<Carpeta de descompresin>\mecaCNC\mecaCNC.jar.

MacOS X - Solaris: Dirjase a la carpeta /<Carpeta de descompresin>/mecaCNC. (Por ejemplo, /Users/usuario1/Simulador/mecaCNC). Haga doble clic sobre el archivo mecaCNC.jar. * Puede ejecutar mecaCNC desde el terminal mediante la instruccin java jar /<Carpeta de descompresin>/mecaCNC/mecaCNC.jar.

Linux: Abrir un terminal. Para la correcta ejecucin de mecaCNC, ser necesario indicar la ubicacin de las libreras de JRE. Esta operacin puede realizarse, considerando la ubicacin por defecto de la instalacin de Java 6, mediante la instruccin: export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/jvm/java-6-sun Dirjase a la carpeta /<Carpeta de descompresin>/mecaCNC. (Por ejemplo, /Users/usuario1/Simulador/mecaCNC). Ejecutar mecaCNC desde el terminal mediante la instruccin java jar ./mecaCNC.jar.

121

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Gua rpida de uso.


1. Abrir mecaCNC segn el procedimiento explicado en el apartado anterior. 2. Definir el volumen inicial de la pieza desde Barra de men > Configuracin > Definir Pieza. 2.1. Establecer los valores propios de Dimensiones y la ubicacin de la Mordaza. 2.2. Presionar el botn Definir. 3. Asignar las herramientas deseadas al carrusel porta-herramientas desde Barra de men > Configuracin > Configurar herramientas. 3.1. Insertar nuevas herramientas definiendo sus parmetros de Nombre, Longitud de Mango, Longitud de Corte y Radio. Presionar el botn Insertar. 3.2. Seleccionar una herramienta en la tabla del panel Tabla de Herramientas y seleccionar una ranura libre en la tabla Asignar Herramienta. Presionar el botn Asignar. 4. En caso de uso, definir los valores de los decalajes desde Barra de men > Configuracin > Definir decalajes. De forma automtica se habr establecido el decalaje G54 en el punto Cero Pieza al definir el volumen de la pieza. 5. En caso de uso, definir los valores de los correctores desde Barra de men > Configuracin > Definir correctores. 6. Insertar, desde cuadro de texto del panel Consola, las instrucciones ISO de configuracin inicial de la mquina. Una vez insertada la instruccin, presionar la tecla Retorno o el botn . 7. Insertar las instrucciones ISO de interpolacin y configuracin que compondrn el mecanizado. 8. Observar el resultado de la insercin de instrucciones en el panel Representacin, Herramienta y Configuracin. Puede hacer uso del ratn para cambiar la vista tridimensional en el panel Representacin. 9. Una vez obtenido el resultado del mecanizado deseado, podr: 9.1. Guardar el proyecto desde Barra de men > Archivo > Guardar. 9.2. Exportar el cdigo ISO a un archivo .txt o .g desde Barra de men > Archivo > Exportar. 122

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Componentes y funcionalidad.
En el presente apartado de este manual, se describirn exhaustivamente cada uno de los componentes y elementos junto a la funcionalidad asociada que componen el simulador mecaCNC.

1. Ventana principal.

Figura Anexo A.1: Ventana principal.

La ventana principal supone el componente que se presentar ante el usuario al abrir la aplicacin. Desde esta ventana se accede al resto de componentes y funcionalidad del programa. La apertura del programa implica la adaptacin de la ventana principal a la resolucin del equipo donde se ejecute, siendo recomendada una resolucin mnima de 1024 x 768 pxeles. Para una mejor descripcin, dividiremos la ventana en 5 elementos diferenciados que se analizarn por separado:

123

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Figura Anexo A.2: Elementos de la ventana principal.

1.1.

Barra de men.

La barra de men brinda acceso a las mltiples funciones del programa.

Figura Anexo A.3: Barra de men.

1.1.1. Archivo. Elemento de la barra de men donde se ubican las operaciones de creacin, guardado y apertura de los distintos tipos de archivos asociados a mecaCNC, as como la funcin de cierre del programa.

124

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Figura Anexo A.4: Men Archivo

1.1.1.1.

Nuevo.

Abre una nueva ventana principal de mecaCNC. Dada la cualidad multiventana de mecaCNC, la creacin de una nueva ventana de proyecto no implica el cierre de la ventana padre, pudiendo ejecutarse en paralelo mltiples instancias del programa. Acceso por atajo de teclado: Ctrl + N

1.1.1.2.

Abrir.

Permite la apertura de archivos de proyecto mecaCNC (.mcnc), previamente guardados. Al presionar Abrir, se mostrar la ventana con el rbol de directorios donde el usuario deber seleccionar la ruta y el archivo de proyecto.

Figura Anexo A.5: Ventana Abrir. Los archivos de proyecto mecaCNC especifican: Dimensiones de la pieza y ubicacin de la mordaza. Definicin de decalajes. Definicin de nuevas herramientas.

125

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Asociaciones de herramientas al porta-herramientas. Definicin de correctores. Cdigo G insertado.

Ntese que al abrir un nuevo archivo de proyecto, se perdern todos los cambios no guardados del proyecto en ejecucin. Acceso por atajo de teclado: Ctrl + O

1.1.1.3.

Guardar.

Guarda un archivo de proyecto mecaCNC (.mcnc). Al presionar Guardar, se mostrar la ventana con el rbol de directorios donde el usuario deber seleccionar la ruta y el nombre del archivo.

Figura Anexo A.6: Ventana Guardar. Al presionar en "Guardar" en la ventana emergente, el programa generar un archivo de proyecto con extensin ".mcnc" cuyo contenido describe: Dimensiones de la pieza y ubicacin de la mordaza. Definicin de decalajes. Definicin de nuevas herramientas. Asociaciones de herramientas al porta-herramientas.

126

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Definicin de correctores. Cdigo G insertado.

Ntese que si se guarda el proyecto sin alguno de estos datos definidos, estos se evaluarn a <nulo>, su valor por defecto. Acceso por atajo de teclado: Ctrl + S

1.1.1.4.

Exportar.

Exporta el conjunto de instrucciones en Cdigo G introducidas en mecaCNC a un archivo con extensin ".g" o ".txt". Al presionar Exportar, se mostrar la ventana con el rbol de directorios donde el usuario deber seleccionar la ruta y el nombre del archivo.

Figura Anexo A.7: Ventana Exportar. Se podr seleccionar el tipo de archivo a exportar seleccionndolo desde el desplegable Archivos de tipo:, pudiendo seleccionar entre Archivo de Cdigo G [.g] o Archivo de Texto [.txt]. La exportacin nicamente contempla el Cdigo G introducido, ignorando las dimensiones de la pieza, decalajes, correctores, asignaciones, etc. Este archivo de programa ISO exportado podr ser cargado en el centro de mecanizado real EMCO PC Mill 125 y en mquinas-herramienta y otros programas simuladores y CAD/CAM compatibles con la sintaxis ISO-6983.

127

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Acceso por atajo de teclado: Ctrl + E

1.1.1.5.

Importar

Funcin de importacin de archivos de programas ISO-6983. Al presionar Importar, se mostrar la ventana con el rbol de directorios donde el usuario deber seleccionar la ruta y el archivo de cdigo G o archivo de texto.

Figura Anexo A.8: Ventana Importar. mecaCNC leer las instrucciones contenidas en archivos de instrucciones en Cdigo G (".g" y ".txt"), insertndolas y ejecutndolas en el proyecto activo. Gracias a la funcin de importado, el programa podr leer los archivos exportados de otros programas o incluso instrucciones insertadas a mano en un archivo de texto, siempre que su sintaxis sea la correcta y las instrucciones pertenezcan al conjunto de instrucciones de Cdigo G interpretables por mecaCNC. mecaCNC ignorar aquellas lneas que comiencen por el carcter "(", pudiendo ser usado a modo de comentario en el cdigo fuente. Acceso por atajo de teclado: Ctrl + I

128

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

1.1.1.6.

Salir.

Cierra el programa. Ntese que haciendo uso de la opcin "Salir" se cerrarn todas las ventanas abiertas del programa, incluso las instancias mltiples de la ventana principal generadas a partir de la funcin Nuevo. Acceso por atajo de teclado: Ctrl + Q

1.1.2. Edicin. Elemento de la barra de men que brinda acceso a las operaciones de deshacer y rehacer en relacin a la insercin de instrucciones ISO.

Figura Anexo A.9: Men Edicin. Las funciones Deshacer y Rehacer figurarn inicialmente deshabilitadas, siendo necesario insertar una instruccin para habilitar Deshacer y presionar al menos una vez en Deshacer para habilitar Rehacer (operacin inversa). As mismo, Deshacer volver a deshabilitarse cuando no existan instrucciones ISO en la lista de instrucciones insertadas y Rehacer se deshabilitar al haber retomado todos los cambios generados por Deshacer.

1.1.2.1.

Deshacer.

Elimina la ltima instruccin en Cdigo G introducida y re-ejecuta el conjunto de instrucciones resultantes. Acceso por atajo de teclado: Ctrl + Z

129

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

1.1.2.2.

Rehacer.

Restaura las instrucciones en Cdigo G eliminadas al hacer uso de Deshacer y re-ejecuta el conjunto de instrucciones resultantes (operacin inversa a deshacer). Acceso por atajo de teclado: Ctrl + Y

1.1.3. Configuracin. Elemento de la barra de men que proporciona acceso a distintas funciones de configuracin del mecanizado y la mquina herramienta.

Figura Anexo A.10: Men Configuracin.

1.1.3.1.

Definir pieza.

Muestra la ventana de definicin del volumen de la pieza y ubicacin de la mordaza.

Figura Anexo A.11: Ventana Definir pieza (apariencia inicial). 130

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

La ventana mostrar, en un estado previo a la definicin inicial de la pieza, una representacin grfica aproximada del banco de trabajo con los indicadores de las medidas a definir. La definicin consistir en establecer los valores en milmetros de la longitud de la pieza en base a sus tres componentes (x, y, z), as como la ubicacin de la mordaza en base a la distancia de sta al punto Cero Mquina. Si se establece a 0 la ubicacin de la mordaza, la ubicacin de la pieza en el banco de trabajo vendr definida nicamente por su geometra. Ntese que, segn el cdigo de colores de los ejes de coordenadas representados en el punto Cero Mquina, la componente "X" corresponder al color rojo, verde para la componente "Y" y azul para la componente "Z". Para facilitar la insercin de datos por teclado, se ha habilitado la tecla tabulador que permite navegar entre campos. Una vez insertados los valores de las medidas, presionaremos el botn "Definir" o pulsaremos la tecla retorno. Como se puede comprobar, al presionar "Definir" de forma automtica se calcula el punto Cero Pieza y es asignado al decalaje G54. Dicho decalaje podr ser editado a posteriori desde la funcin Barra de men > Configuracin > Definir decalajes. Al definir los valores, estos se mostrarn en la acotacin de las medidas.

Figura Anexo A.12: Ventana Definir pieza (apariencia tras definicin de medidas)

Por ltimo, cabe recordar que la redefinicin de la pieza implica la re-ejecucin automtica del Cdigo G insertado hasta entonces. 131

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Acceso por atajo de teclado: Ctrl + P

1.1.3.2.

Definir decalajes.

Muestra la tabla de definicin de decalajes.

Figura Anexo A.13: Ventana Definir decalajes. Los decalajes desplazan el sistema de coordenadas de la mquina de la posicin Cero Mquina (M) a la posicin determinada por el decalaje. Existen 4 decalajes, (G54, G55, G56, G57), y de forma automtica, una vez definida la pieza y la mordaza, el programa establecer el primer decalaje (G54) en el punto Cero Pieza. Una vez definidos, para activar un decalaje se har uso de las instrucciones en Cdigo G G54, G55, G56 o G57 correspondientes a cada uno de los decalajes. Acceso por atajo de teclado: Ctrl + D

1.1.3.3.

Definir correctores.

Muestra la tabla de definicin de correctores. Un corrector determina las variaciones de radio o longitud de una herramienta, pudiendo aplicar dichas variaciones en forma de desplazamientos de la posicin de la herramienta en la mquina (N).

132

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Figura Anexo A.14: Ventana Definir correctores. El uso de correctores se hace necesario cuando, debido al desgaste de una broca o fresa, su radio o longitud merma, pudiendo compensar el desgaste de la herramienta mediante los desplazamientos adecuados, y en consecuencia, realizando una re-calibracin de la herramienta. As mismo, se puede hacer uso de correctores para introducir pequeas variaciones en interpolaciones similares, como por ejemplo, en el caso de la creacin de los perfiles de una pieza. El programa muestra una tabla con 10 correctores, cuyos parmetros son:

Parmetro
Identificador (Dn)

Funcin
Identifica el nmero de corrector (con "n" de 0 a 9), y ser necesario para indicar, mediante Cdigo G, el corrector asociado a una herramienta. Redefine la longitud de la herramienta. Redefine el radio de la herramienta.

Longitud de corte (L) Radio (R) Desgaste de longitud (K)

Determina el desplazamiento de longitud (vertical) de la posicin de la mquina herramienta. Desgaste de radio (I) Determina el desplazamiento de radio (horizontal) de la posicin de la mquina herramienta. Tabla Anexo A.1: Parmetros de un corrector.

133

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Un corrector ir siempre asociado a una herramienta, y se indicar a la mquina mediante la instruccin en Cdigo G Tn Dc M06, donde la herramienta de identificador "n" quedar asociada con el corrector de identificador "c". Tambin mediante Cdigo G, activaremos o desactivaremos la compensacin de los correctores mediante las instrucciones G40, G41, G42 y G43. Acceso por atajo de teclado: Ctrl + R

1.1.3.4.

Configurar herramientas.

Muestra la ventana de configuracin del carrusel porta-herramientas.

Figura Anexo A.15: Ventana Configurar herramientas. Tal y cmo se realizara en el mecanizado real, es necesario que el usuario asigne al porta-brocas de la mquina las brocas y fresas que va a utilizar. En el panel podemos observar dos marcos diferenciados:

134

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Tabla de herramientas:

Figura Anexo A.16: Panel Tabla de Herramientas en ventana Configurar Herramientas. El marco tabla de herramientas muestra las brocas y fresas disponibles. Adems de las cuatro herramientas que el programa muestra por defecto, podrn definirse nuevas brocas y fresas. Para ello, se especificar el tipo de herramienta (broca o fresa), nombre, longitud de mango y corte y radio desde el panel "Aadir herramienta", y presionando el botn "Aadir" la nueva broca se mostrar en la tabla de brocas disponibles. Para facilitar la definicin de nuevas herramientas, tras la seleccin del tipo de herramienta se mostrar un grfico indicativo de las distintas medidas de la herramienta segn su tipo.

Figura Anexo A.17: Grfico indicativo de las medidas de la broca. As mismo, podemos eliminar herramientas de la tabla de herramientas disponibles seleccionando la bronca mediante un clic izquierdo de ratn, y presionando el botn "Eliminar" del panel "Aadir Herramienta".

135

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Asignar herramienta:

Figura Anexo A.17: Panel Asignar Herramienta en ventana Configurar Herramientas. El marco asignar herramientas facilita la asignacin de la herramienta en el porta-brocas de la mquina herramienta. Cada una de las filas de la tabla, etiquetadas de 0 a 9, identifican el portabrocas correspondiente en la mquina herramienta (T00 a T09). Para asignar una determinada herramienta a un porta-brocas, se seleccionar la herramienta en la tabla superior, el porta-brocas en la tabla inferior y se presionar el botn "Asignar" del panel "Asignar Herramienta" Una vez se haya realizado la asignacin de la herramienta, el porta-brocas correspondiente se mostrar en color verde en el grfico identificativo de la mquina herramienta, indicando que la ranura tiene una herramienta asignada.

Figura Anexo A.18: Panel Asignar Herramienta tras asignacin. Para retirar una broca del porta-brocas, ser necesario seleccionar el portabrocas deseado en la tabla inferior y presionar el botn "Retirar" del panel "Aadir Herramienta". Al retirar la broca, el porta-brocas volver a mostrarse en color rojo, indicando que dicha ranura queda libre. Acceso por atajo de teclado: Ctrl + H

136

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

1.1.3.5.

Guardar archivo de configuracin.

Guarda un archivo de configuracin mecaCNC (.mcfg). Una vez presionado "Guardar arch. de configuracin", se mostrar la ventana con el rbol de directorios donde el usuario deber seleccionar la ruta y el nombre del archivo.

Figura Anexo A.19: Ventana Guardar archivo de configuracin. Al presionar en "Guardar", el programa generar un archivo de configuracin con extensin ".mcfg" cuyo contenido describe: Dimensiones de la pieza y ubicacin de la mordaza. Definicin de decalajes. Definicin de nuevas herramientas. Asociaciones de herramientas al porta-herramientas. Definicin de correctores.

Ntese que si se guarda el archivo de configuracin sin alguno de estos datos definidos, estos se evaluarn a <nulo>, su valor por defecto. Acceso por atajo de teclado: Ctrl + G

1.1.3.6.

Cargar archivo de configuracin.

Carga un archivo de configuracin previamente guardado, cuya extensin ser ".mcfg".

137

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Al presionar Cargar arch. de configuracin, se mostrar la ventana con el rbol de directorios donde el usuario deber seleccionar la ruta y el archivo de configuracin deseado.

Figura Anexo A.20: Ventana Cargar archivo de configuracin. Dicho archivo establecer en mecaCNC, en caso de que existan: Dimensiones de la pieza y ubicacin de la mordaza. Definicin de decalajes. Definicin de nuevas herramientas. Asociaciones de herramientas al porta-herramientas. Definicin de correctores.

Acceso por atajo de teclado: Ctrl + L

1.1.4. Cmara. Elemento de la barra de men que permite el acceso al control de la cmara del panel de representacin.

Figura Anexo A.21: Men Cmara. 138

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

1.1.4.1.

Mostrar/Ocultar Ejes.

Muestra u oculta del panel Representacin, los ejes de coordenadas en el punto Cero Pieza.

Figura Anexo A.22: Representacin grfica de los ejes de coordenadas. El cdigo de colores referencia, de color rojo la componente "+x", en verde la componente "+y" y en azul la componente "+z". Acceso por atajo de teclado: Ctrl + J

1.1.4.2.

Restablecer.

Emplaza la cmara del panel Representacin a su posicin inicial. Acceso por atajo de teclado: Ctrl + 0

1.1.4.3.

Vista.

Muestra los accesos directos a las distintas vistas principales predefinidas. La eleccin de una vista implicar la modificacin de la cmara en el panel Representacin. Podr seleccionar la vista del conjunto: Perspectiva isomtrica (por defecto, posicin inicial) Alzado Planta 139

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Perfil

Ntese que haciendo clic izquierdo del ratn sobre el panel Representacin y arrastrando, podr modificarse la cmara libremente. Acceso por atajo de teclado: Ctrl + 1, Ctrl + 2, Ctrl + 3 y Ctrl + 4

1.1.4.4.

Zoom

Elemento de men que permite el acceso directo a las funciones de zoom (alejar o acercar) sobre la cmara del panel Representacin. Ntese que esta misma funcionalidad es accesible mediante la rueda del ratn sobre el panel Representacin. Acceso por atajo de teclado: Ctrl + + y Ctrl + -

1.1.5. Ayuda. Elemento de la barra de men que permite el acceso al sistema de ayuda, documentacin e informacin del programa.

Figura Anexo A.23: Men Ayuda.

1.1.5.1.

Mostrar ayuda.

Muestra la aplicacin correspondiente al sistema de ayuda integrada de mecaCNC. La aplicacin brinda acceso a la ayuda por contenidos, ndice o bsqueda de palabras clave en base a la pestaa seleccionada, permitiendo imprimir aquellos documentos que se considere oportunos.

140

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Figura Anexo A.24: Ventana del sistema de ayuda integrada. Como se puede comprobar en la figura Anexo A.24, la ventana se divide en tres bloques: Barra superior: botones de control. Panel izquierdo: seleccin de tipo de sistema de ayuda y documento. Panel derecho: contenido del documento seleccionado.

Icono

Funcin
Acceder a la tabla de contenidos. Acceder al ndice de ayuda. Acceder a la bsqueda por palabras clave. Volver al contenido anterior.

Ir al siguiente contenido.

Configurar la impresin.

Imprimir el contenido actual.

Tabla Anexo A.2: Elementos del sistema de ayuda.

141

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Segn la pestaa de seleccin del tipo de sistema de ayuda, obtendr:

Figura Anexo A.25: (De izquierda a derecha) Sistema de ayuda en modo tabla de contenidos, ndice de ayuda y bsqueda por palabras clave. Tabla de contenidos: Podr navegar por los distintos elementos haciendo clic en el rbol de contenidos. En este se mostrarn elementos agrupados por carpetas de la misma temtica.

ndice de ayuda: Se disponen ordenados alfabticamente todos los archivos de ayuda contenidos en este sistema. Puede buscar un trmino concreto escribiendo el trmino en el cuadro de texto Buscar: y presionando la tecla retorno.

Bsqueda por palabras clave: Introduzca el trmino o trminos que desee buscar en el cuadro de texto "Buscar:" y presione la tecla retorno. En el panel aparecern todos aquellos documentos relacionados con su bsqueda, ordenados por el nmero de coincidencias de los trminos especificados en el documento.

1.1.5.2.

Documentacin.

Brinda acceso directo a distintos documentos de auto-aprendizaje en formato PDF: Conceptos CAM.

142

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Sistemas CAM. Programacin CNC (1) y (2). Manual EMCO PC Mill 125. Ejercicios de programacin de mquinas-herramienta. Acerca de

1.1.5.3.

Muestra la ventana de informacin de mecaCNC, incluyendo su versin e informacin del autor.

Figura Anexo A.26: Ventana Acerca de Para cerrar la ventana Acerca de bastar con hacer clic con el ratn en cualquier parte de ella, salvo el texto.

143

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

1.2.

Panel Consola.

El panel Consola permite la insercin, ejecucin y registro de las instrucciones en Cdigo G del mecanizado.

Figura Anexo A.27: Panel Consola. El panel Consola se divide en 3 elementos principales:

1.2.1. Lista de instrucciones insertadas. Elemento que comprende la prctica totalidad del panel, supone la lista de instrucciones ISO que el usuario ha insertado y su ejecucin ha sido correcta, componiendo en su conjunto el programa de mecanizado. Las operaciones posibles sobre la lista de instrucciones se realizarn mediante el men contextual asociado, al cual se accede seleccionando una instruccin con el botn izquierdo del ratn, y una vez seleccionada, presionando con el botn derecho del ratn sobre ella.

144

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Figura Anexo A.28: Men contextual en Lista de instrucciones ISO. Cabe recordar, para todo el conjunto de acciones sobre la lista de instrucciones mediante el men contextual, que cualquier variacin en el orden, edicin, insercin o eliminacin de una instruccin en un programa ISO puede comportar un malfuncionamiento en el mecanizado, pudiendo llevar a resultados no deseados.

1.2.1.1.

Ejecucin paso a paso.

Muestra la ventana de control de la ejecucin del cdigo insertado.

Figura Anexo A.29: Ventana de ejecucin paso a paso. Una vez activada la casilla de verificacin que establece el modo de ejecucin paso a paso, al seleccionarse una instruccin de la lista de instrucciones insertadas, se ejecutar el programa hasta dicha instruccin. Adems, se ofrece la posibilidad de ir avanzando instruccin por instruccin mediante los botones instruccin anterior e instruccin siguiente de la ventana de ejecucin paso a paso o mediante las flechas arriba y abajo del teclado.

145

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

As mismo, el botn central de la ventana de ejecucin paso a paso iniciar la ejecucin, instruccin por instruccin desde la instruccin seleccionada, manteniendo un intervalo de medio segundo de retardo entre instrucciones para que el usuario pueda comprobar su efecto en el simulador. Al cerrar la ventana o desactivar la casilla de verificacin, se detendr el modo de ejecucin paso a paso, mientras tanto, cualquier seleccin de instruccin de la lista conllevar el comportamiento descrito.

1.2.1.2.

Ejecutar hasta aqu.

Ejecuta el intervalo de instrucciones desde la primera instruccin hasta la instruccin seleccionada.

1.2.1.3.

Ejecutar desde aqu.

Ejecuta el intervalo de instrucciones desde la instruccin seleccionada hasta la ltima instruccin insertada.

1.2.1.4.

Subir.

Modifica el orden de la instruccin seleccionada, subindola a la lnea anterior, y re-ejecutando la lista de instrucciones resultante.

1.2.1.5.

Bajar.

Modifica el orden de la instruccin seleccionada, bajndola a la lnea siguiente, y re-ejecutando la lista de instrucciones resultante.

1.2.1.6.

Editar.

Permite modificar la instruccin seleccionada. Se ha de tener en cuenta que es muy recomendable respetar el nmero de lnea de la instruccin (Nx) para evitar posibles fallos en el mecanizado.

1.2.1.7.

Insertar instruccin.

Permite insertar una instruccin a continuacin de la seleccionada.

146

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Estas instrucciones intermedias irn numeradas siguiendo el esquema de programacin ISO-6981, incrementando en una unidad el nmero de lnea de la instruccin insertada respecto a la anterior (contrariamente al habitual incremento de 10 unidades al insertar una instruccin desde la propia consola).

1.2.1.8.

Eliminar.

Elimina la instruccin seleccionada y re-ejecuta la lista de instrucciones resultante.

1.2.2. Cuadro de insercin de instruccin G. Permite al usuario la escritura de las instrucciones en Cdigo G a ejecutar.

Figura Anexo A.30: Cuadro de insercin de instrucciones con instruccin de ejemplo G02 X100 Y100... De manera anloga al resto de cuadros de texto, el cuadro de insercin permite copiar, cortar o pegar cadenas de texto. Una vez escrita la instruccin a insertar, el usuario podr presionar la tecla retorno para analizar y ejecutar dicha instruccin. Adems, se ha aadido al cuadro de insercin, la funcionalidad de instruccin anterior y siguiente (al estilo Terminal Linux) que permite, mediante la pulsacin de las flechas arriba ( ) y abajo ( ) del teclado, obtener la instruccin previa o siguiente del conjunto de instrucciones registradas en la Lista de instrucciones insertadas.

1.2.3. Botn de ejecucin de instruccin. A pesar de que la insercin de instrucciones est concebida para ser ejecutada directamente a travs de la tecla retorno, se habilita un botn de ejecucin de la instruccin escrita en el cuadro de insercin.

Figura Anexo A.31: Botn de ejecucin de instruccin.

147

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

1.3.

Panel Representacin.

El panel de representacin muestra, en tiempo real y en tres dimensiones, la representacin en almbrico de la pieza y la herramienta, as como las lneas que definen las interpolaciones del mecanizado en curso.

Figura Anexo A.32: Panel Representacin con ejemplo de programa de mecanizado Para obtener una mejor representacin del mecanizado, se ha seguido un determinado cdigo de colores: La herramienta se mostrar en color morado, y el cilindro que la representa variar su tamao en funcin de los parmetros radio y longitud de la broca o fresa. La pieza se mostrar en color gris, y su tamao depender del tamao establecido en la definicin inicial de la pieza. Las interpolaciones resultantes del mecanizado (trayectorias de la herramienta) se mostrarn en color verde en caso de que el husillo est inactivo, y rojo en caso de que se encuentre el husillo activo. En el caso de que la compensacin est activada, se trazar, adems de la trayectoria de la mquina en el cdigo de colores descrito anteriormente, una segunda trayectoria (en color blanco) equivalente a la posicin en base a las coordenadas que el usuario haya introducido, anloga a la trayectoria que se seguira si la compensacin estuviera desactivada. 148

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Figura Anexo A.33: Representacin grfica con compensacin activa. El panel de representacin es interactivo, permitiendo al usuario variar la cmara o punto de vista mediante el uso del ratn. Las funciones de ratn para el panel de representacin son:

Figura Anexo A.34: Uso de ratn para modificar la cmara en la representacin.

1.3.1. Rotacin. El movimiento de rotacin de la representacin ir asociado al movimiento de arrastre del ratn tras pulsar y mantener el botn izquierdo del sobre el panel Representacin. 149

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

La rotacin ser vertical, horizontal o una combinacin de ambas segn la trayectoria de movimiento que el usuario haga con el ratn.

1.3.2. Traslacin. El movimiento de traslacin de la representacin ir asociado al movimiento de arrastre del ratn tras pulsar y mantener el botn derecho del sobre el panel Representacin. La traslacin ser vertical, horizontal o una combinacin de ambas segn la trayectoria de movimiento que el usuario haga con el ratn.

1.3.3. Zoom. Para realizar zoom sobre la pieza, se deber hacer girar la rueda del ratn sobre el panel Representacin. El giro de la rueda del ratn hacia arriba implica acercarse a la pieza y de forma contraria, el giro hacia abajo aleja la cmara de la pieza.

1.4.

Panel Herramienta.

El panel Herramienta muestra el estado actual de la mquina-herramienta en relacin a su posicin, la instruccin activa (en caso de interpolaciones), las herramientas y correctores asignados y seleccionados y la compensacin de radio.

Figura Anexo A.35: Ejemplo de panel Herramienta con mecanizado en curso.

Los datos del panel se irn completando dinmicamente y en tiempo real en funcin de las instrucciones insertadas y la configuracin establecida. Estos son:

150

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

1.4.1. Indicador de estado del carrusel porta-brocas.

Figura Anexo A.36: Indicador de estado del carrusel porta-brocas. Muestra aquellos porta-brocas en los que ha sido asignada una herramienta. El cuadro muestra los 10 porta-brocas del carrusel (T00-T09) indicando mediante un cuadro verde si existe una broca asignada, y rojo en caso contrario. Se acceder a la asignacin y definicin de brocas desde Barra de men > Configuracin > Configurar Herramientas, explicado en detalle en el apartado 1.1.3.4 de este manual.

1.4.2. N (mquina). Muestra la posicin actual de la herramienta activa. Cabe destacar que en el caso de instrucciones de interpolacin (G00, G01, G02 y G03), si se omite algn parmetro correspondiente a una coordenada, se tomar el valor de dicha componente en N (mquina).

1.4.3. Instruccin activa. Indica la instruccin en caso de que la ltima instruccin sea una interpolacin. Las instrucciones de interpolacin (G00, G01, G02 y G03), permiten la programacin de bloques contiguos del mismo tipo de instruccin, nicamente especificando sus nuevos parmetros. Para ello, el programa se apoya en el indicador instruccin activa, realizando la funcionalidad correspondiente a la instruccin activa sobre los nuevos parmetros.

151

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

1.4.4. Herramienta activa. Muestra los datos de la herramienta activa.

Figura Anexo A.37: Datos identificativos de la herramienta activa en el panel Herramienta. Para activar una herramienta previamente asociada se har uso de la instruccin en Cdigo G Tn Dc M06. Puede obtener ms informacin sobre la asignacin de herramientas en el apartado 1.1.3.4 del presente manual.

1.4.5. Corrector asociado. Indica las caractersticas del corrector asociado a la broca activa.

Figura Anexo A.38: Datos identificativos del corrector asociado en el panel Herramienta. De forma anloga a la activacin de la herramienta, la asociacin de un corrector se realizar mediante la instruccin en Cdigo G Tn Dc M06. Puede obtener ms informacin sobre correctores en el apartado 1.1.3.3 del presente manual.

1.4.6. Indicador de compensacin. Indica si la compensacin radio se encuentra activa, y en caso de estar activa, hacia qu lado compensar.

152

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Figura Anexo A.39: Datos identificativos de la compensacin de radio en el panel Herramienta. Para activar la compensacin se har uso de las instrucciones G41 y G42, mientras que G40 desactivar la compensacin. Una vez activada la compensacin, se aadir al panel Herramienta el campo correspondiente a las coordenadas insertadas frente a la posicin real de la mquina.

Figura Anexo A.40: Panel Herramienta con compensacin activa. Puede obtener ms informacin sobre el uso de la compensacin en el apartado 1.1.3.3 del presente manual.

1.5.

Panel Configuracin.

El panel Configuracin muestra el estado actual de la mquina herramienta en relacin a sus unidades de medida, velocidades, plano de mecanizado, husillo y control del refrigerante.

Figura Anexo A.41: Ejemplo de panel configuracin con mecanizado en curso.

153

Anexo A: Manual de usuario

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

Los datos del panel se irn completando dinmicamente y en tiempo real en funcin de las instrucciones insertadas. Estos son: Indicador Unidades Tipo de coordenadas Descripcin unidades de medida que sern utilizadas en la programacin Especifica el tipo de coordenadas Especifica sobre cul de los tres planos de la pieza, se realizar el mecanizado Muestra la velocidad de giro del husillo en rpm Muestra la velocidad de desplazamiento de la mquina herramienta Indica el tipo de unidades de medida seleccionadas en referencia al desplazamiento de la mquina herramienta Indica el sentido en el que el husillo est girando Indica si el husillo est activo. Posibles valores Pulgadas Milmetros Absolutas Incrementales XY XZ YZ x [150 - 5000] Instrucciones G G70 G71 G90 G91 G17 G18 G19 Sx

Plano de mecanizado

Velocidad de giro

Velocidad de avance

x [0 - 4000] milmetros por minuto (mm/min) milmetros por revolucin (mm/rev)

Fx

G94

Unidades de avance

G95

Sentido de giro

SR (horario) SCR (anti-horario) SI NO

M03 M04 M03, M04 M05

Husillo activo Neblina activa

M07 Filtro de eliminacin SI de neblinas de aceite. NO Por defecto Al ser activado, se SI M08 inyecta taladrina al Taladrina activa punto de NO Por defecto mecanizado. Al ser activado, se SI M09 inyecta refrigerante Refrigerante activo al punto de NO Por defecto mecanizado. Al ser activado, inicia SI M71 la funcin de Aspirado activo aspirado de la viruta generada por el NO M72 mecanizado. Tabla Anexo A.3: Indicadores del panel configuracin e instrucciones G asociadas.

154

Anexo B: Cdigo ISO-6983 en mecaCNC

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

ANEXO B
EL CDIGO ISO-6983 EN MECACNC

Consideraciones previas.
Para la correcta creacin y ejecucin de un programa en Cdigo G, ser necesario cumplir un conjunto de reglas que compondrn la estructura del programa. El presente documento nicamente contempla la estructura del programa CNC, dndose por hecho que:

Proceso real

Simulador Se ha definido la pieza y la ubicacin de la La pieza ha sido ubicada y fijada en la mesa de mordaza desde Configuracin > Definir trabajo Pieza Se han definido las herramientas y se han Se han emplazado las herramientas a utilizar en asignado a los porta-brocas desde los porta-brocas Configuracin > Configurar Herramientas Se han definido los decalajes en la tabla de Se han definido los decalajes decalajes desde Configuracin > Definir Decalajes Se ha definido la tabla de correctores desde Se han definido los correctores Configuracin > Definir Correctores Tabla Anexo B.1: Acciones requeridas en el proceso real y su equivalente en mecaCNC. En programacin ISO-6983, las instrucciones irn numeradas siguiendo un formato compuesto por el identificador N y un nmero natural creciente. La tarea de enumeracin de las instrucciones ser llevada a cabo automticamente por mecaCNC, siendo innecesaria la especificacin de la numeracin en cada insercin. La auto-numeracin se realizar en incrementos de diez unidades, permitiendo as la insercin de hasta nueve instrucciones intermedias en caso de que fuera necesario. La programacin ISO-6983 permite, en ciertos casos, encadenar instrucciones de distinto tipo y funcionalidad. En el caso de mecaCNC, se ha considerado oportuno no permitir encadenamiento de instrucciones salvo en el caso de G01 Xx Yy Zz [Ff], de esta forma, el usuario conocer el resultado de la funcionalidad asociada a cada instruccin por separado. La lectura de archivos que incluyan Cdigo G desde mecaCNC implica que el simulador no considere aquellas lneas que empiecen con el caracter ( o %. Se ha considerado conveniente esta notacin debido a que, por una parte, el resultado de la exportacin de Cdigo G llevada a cabo por otros programas simuladores, incluye instrucciones orientadas a la configuracin delimitadas por (). Por otra parte, en la exportacin del Cdigo G de mecaCNC 155

Anexo B: Cdigo ISO-6983 en mecaCNC

SIMULADOR DE MECANIZADOS EN CDIGO ISO-6983

a la mquina EMCO PC Mill 125, se insertar la instruccin de control %1000MPF que indica a la mquina que se trata de un programa ISO-6983.

Fases del programa ISO-6983.


1. Inicializacin.
Fase previa al inicio del mecanizado. Supone el conjunto de instrucciones que determinan las unidades de medida, tipos de coordenadas, plano de mecanizado, velocidades de rotacin y avance, seleccin de la herramienta inicial y decalaje de origen.

2. Control de trayectoria:
Fase activa en el mecanizado. Supone el conjunto de instrucciones (interpolaciones lineales y circulares) que controlan el movimiento de la mquina herramienta.

3. Control de mquina:
Fase activa y final del mecanizado. Conjunto de instrucciones que controlan el husillo, las compensaciones, la seleccin de una nueva herramienta, el refrigerante y la terminacin del programa.

Lista de instrucciones interpretables.


Fase Funcin Instruccin
Unidades de medida G70, G71 Tipo de coordenadas G90, G91 Seleccin de plano de mecanizado G17, G18, G19 Unidades de avance G94, G95 Inicializacin Velocidad de avance F Velocidad de rotacin del husillo S Seleccin de la herramienta inicial Tn Dm M06 Seleccin del decalaje de origen G54, G55, G56, G57 Movimiento libre G00 Control de trayectoria Interpolacin lineal G01 Interpolacin circular G02, G03 Giro y sentido del husillo M03, M04, M05 Neblina M07 Taladrina M08 Control de mquina Refrigerante M09 Aspirado M71, M72 Compensacin G40, G41, G42 Fin del programa M02, M30 Tabla Anexo B.2: Lista de instrucciones interpretables.

156

S-ar putea să vă placă și