SlideShare una empresa de Scribd logo
1 de 124
Descargar para leer sin conexión
UNIVERSIDAD POLITÉCNICA DE MADRID
ESCUELA TÉCNICA SUPERIOR DE INGENIEROS AERONÁUTICOS
PROYECTO FIN DE CARRERA
MODELIZACIÓN MEDIANTE REALIDAD VIRTUAL DE UNA
FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
UTILIZABLE EN SISTEMAS AUTOMATIZADOS DE FABRICACIÓN
DEL SECTOR AERONÁUTICO Y AEROESPACIAL
Autor: Fernando Aretio Zárate
Director: Alfredo Sanz Lobera
Madrid, Octubre de 2015
1
AGRADECIMIENTOS
Se supone que este proyecto lo tenía que hacer
yo solo, pero no ha sido posible. Durante este
último año, y los tres anteriores, he tenido la
suerte de estar rodeado de gente que me ha
ayudado, aunque no siempre sean conscientes
de ello, a seguir cumpliendo los pequeños
objetivos hasta llegar aquí.
Por ello, se lo quiero agradecer:
A mi director de proyecto, Alfredo, por
ayudarme en todo lo que ha estado en su
mano.
A mis amigos, porque ya sea en casa, en el bar,
en clase o en la biblioteca; desde Madrid,
Nájera, Bruselas o Arad; me sirven de apoyo
en todo momento.
A Bea, por estar ahí y por su cariño.
A mi hermano, por estar siempre disponible.
Y a mis padres, por confiar en mí, desde hace
tantísimos años.
“Prefiero caminar con una duda
que con un mal axioma”
Javier Krahe
2
Índice
Índice _____________________________________________________________ 2
Lista de figuras _____________________________________________________ 4
Lista de tablas ______________________________________________________ 7
Resumen __________________________________________________________ 8
1 Introducción: Automatización y Realidad Virtual en Sistemas de Producción _ 9
1.1 Robots y Máquinas-Herramienta de Control Numérico ______________________ 10
1.1.1 Tipos de máquinas-herramienta y aplicaciones aeronáuticas _____________________ 12
1.1.2 Modos de funcionamiento ________________________________________________ 16
1.1.3 Características generales _________________________________________________ 16
1.2 Realidad virtual (VR) __________________________________________________ 20
1.2.1 Aplicaciones en ingeniería ________________________________________________ 21
1.2.2 Alternativas de implementación____________________________________________ 22
2 La Fresadora KONDIA SEASKA ______________________________________ 24
2.1 Introducción a las máquinas herramienta de 5 ejes _________________________ 25
2.2 Descripción general___________________________________________________ 27
2.3 Prestaciones_________________________________________________________ 29
2.4 Elementos principales. Control__________________________________________ 30
2.5 Modelización geométrica ______________________________________________ 32
2.5.1 Elementos principales y planos_____________________________________________ 32
2.5.2 Composición global______________________________________________________ 34
3 Desarrollo basado en Visual Basic y Virtools __________________________ 36
3.1 Modelización ________________________________________________________ 36
3.1.1 Virtools _______________________________________________________________ 37
3.1.2 Visual Studio 2013_______________________________________________________ 46
3.1.3 Intercomunicación Virtools-Aplicación_______________________________________ 47
3.2 Utilización __________________________________________________________ 50
3.3 Funcionamiento______________________________________________________ 51
3.4 Conclusiones y posible solución _________________________________________ 59
4 Desarrollo basado en CATIA v5 _____________________________________ 60
4.1 Modelización ________________________________________________________ 61
4.1.1 Construcción de la máquina _______________________________________________ 61
4.1.2 Pieza a mecanizar _______________________________________________________ 69
4.2 Utilización __________________________________________________________ 70
4.2.1 Instrucciones generales de mecanizado______________________________________ 71
4.2.2 Mecanizado de la pieza___________________________________________________ 77
4.3 Funcionamiento______________________________________________________ 94
3
4.3.1 Simulación de la eliminación de material_____________________________________ 94
4.3.2 Simulación con la máquina herramienta _____________________________________ 98
4.3.3 Utilización del programa de control numérico________________________________ 102
4.4 Conclusiones _______________________________________________________106
5 Conclusiones y desarrollos futuros _________________________________ 108
6 Referencias y bibliografía ________________________________________ 109
Apéndices________________________________________________________ 111
A. Datos de los gráficos del estudio de tiempos. Apartado 3.2. _________________111
B. Datos de los tiempos de envío de información. Figura 65___________________112
C. Listado de operaciones de mecanizado __________________________________113
D. Listado de herramientas ______________________________________________114
E. PLANOS DE LA FRESADORA KONDIA SEASKA _____________________________115
4
Lista de figuras
Figura 1.Desplazamiento punto por punto..........................................................................................12
Figura 2. Desplazamiento paraxial.......................................................................................................13
Figura 3. Desplazamiento continuo .....................................................................................................13
Figura 4. Unión del tren de aterrizaje del Boeing 767 fabricado en titanio........................................14
Figura 5. Puerta de emergencia usada en aviación general ................................................................14
Figura 6. Panel de acceso fabricado con una MHCN ...........................................................................15
Figura 7. Compresor centrífugo montado en una MH de 5 ejes..........................................................15
Figura 8. Ejemplo de trayectoria transformada en movimiento de tres ejes[7]..................................18
Figura 9. Esquema de una máquina-herramienta de control numérico.............................................18
Figura 10. Esquema de un programa de control numérico .................................................................19
Figura 11. Procesos a realizar antes de la escritura del programa ......................................................19
Figura 12. Control de un eje mediante lazo cerrado...........................................................................20
Figura 13. Augmented Reality Guiding Process de la empresa ARSoft [12] ........................................21
Figura 14. Desarrollo de una fábrica virtual por parte de Ford [14]....................................................22
Figura 15. Vista general de la fresadora Kondia SEASKA [18]..............................................................24
Figura 16. Nomenclatura estándar de los ejes de una máquina herramienta [19].............................25
Figura 17. Máquina vertical. Tipo mesa/mesa. Herramienta: X, Z. Pieza: Y, A, C [19]........................26
Figura 18. Máquina VH. Tipo cabezal/mesa. Herramienta: X, Z, A. Pieza: Y, C [19]............................26
Figura 19. Máquina vertical. Tipo cabezal/cabezal. Herramienta: Z, B, A. Pieza: Y, X [19]..................27
Figura 20. Vista del esqueleto de la fresadora Kondia SEASKA con su esquema cinemático [18]......27
Figura 21. Acoplamiento directo de la herramienta............................................................................28
Figura 22. Transmisión por correas......................................................................................................28
Figura 23. Límites del giro basculante (eje A) de la fresadora Kondia SEASKA....................................28
Figura 24. Vista del controlador iTNC-530 [21]....................................................................................30
Figura 25. Ejemplo de modificación que realiza el TCPM [21].............................................................31
Figura 26. Componentes principales de la fresadora Kondia SEASKA .................................................32
Figura 27. Elementos que conforman el modelo de la fresadora Kondia SEASKA...............................33
Figura 28. Restricciones entre la base y el soporte de la mesa y las guías del movimiento en X........34
Figura 29.Restricciones entre: Soporte de mesa y mesa de balance. Guías en X y columna móvil.....35
Figura 30. Restricciones entre: Mesa basculante y mesa rotatoria. Columna móvil y cabezal ...........35
Figura 31. Vista de la aplicación VB con la composición Virtools cargada (cuadro azul).....................36
Figura 32. Diagrama de flujo de información de la aplicación.............................................................36
Figura 33. Vista general de Virtools ....................................................................................................38
Figura 34. Pestañas File y Resources de la barra de menú de Virtools................................................39
Figura 35. Pestañas Editors, Options y Help de la barra de menú de Virtools.....................................39
Figura 36. Pestaña 3D Layout de Virtools ...........................................................................................40
Figura 37. Pestaña Building Blocks de Virtools .....................................................................................40
Figura 38. Pestaña VirtoolsResources de Virtools ...............................................................................40
Figura 39. Pestaña Level Manager de Virtools.....................................................................................41
Figura 40. Pestaña Schematic de Virtools............................................................................................41
Figura 41. Fresadora Kondia SEASKA en Virtools.................................................................................42
Figura 42. Jerarquías del modelo en Virtools.......................................................................................42
Figura 43. Esquema de ejes y jerarquías de la fresadora Kondia SEASKA ...........................................43
Figura 44. Threshold Building Block.....................................................................................................43
Figura 45. Script del movimiento en el eje X, perteneciente al frame E_origen .................................44
Figura 46. Mov X Behaviour Graph.......................................................................................................44
Figura 47. Movimiento Behaviour Graph.............................................................................................45
Figura 48. Atributo asociado a distintos frames con distintos valores. ...............................................45
5
Figura 49. Vista general del Visual Studio 2013...................................................................................46
Figura 50. Vista general de la aplicación..............................................................................................47
Figura 51. Wait Message BB ................................................................................................................48
Figura 52. Get Message Data BB..........................................................................................................48
Figura 53. Script en el que se recibe el mensaje enviado por VB .......................................................49
Figura 54. Fire Virtools Event Building Block.......................................................................................49
Figura 55. Primera vista de la aplicación VB una vez abierta..............................................................50
Figura 56. Vista de la aplicación VB después de cargar el modelo Virtools.........................................50
Figura 57. Aplicación VB con la composición Virtools y el archivo de CN cargados. ...........................50
Figura 58. Aplicación VB con la simulación finalizada.........................................................................51
Figura 59. Subrutinas del programa VB ...............................................................................................51
Figura 60. Scripts de Virtools ...............................................................................................................51
Figura 61. Diagrama de funcionamiento de subrutinas y scripts.........................................................52
Figura 62. Tiempos totales de 10 ejecuciones del programa G0-G1_plus.txt .....................................54
Figura 63. Gráfico de tiempos de cada línea de código .......................................................................54
Figura 64. Diferencias entre la envolvente máxima y Treal de las 10 ejecuciones de G0-G1_plus.txt55
Figura 65. Estudio de tiempos de envío y recepción de información entre VB y Virtools...................56
Figura 66. BBs para la recepción del mensaje POSICION y el envío del evento Virtools RECIBIDO.....57
Figura 67. Programación de los textos TERMINADO y RECIBIDO en Virtools......................................58
Figura 68. Textos TERMINADO y RECIBIDO introducidos en Virtools.................................................58
Figura 69. Módulos de mecanizado y simulación del mecanizado en CATIA v5..................................60
Figura 70. Assembly Constrains Conversion en el módulo DMY Kinematics.......................................61
Figura 71. Ventana del menú de Assembly Constrains Conversion.....................................................62
Figura 72. Tipos de uniones en función de las restricciones seleccionadas ........................................62
Figura 73. Árbol del mecanismo SEASKA_mech ..................................................................................63
Figura 74. Ventana de edición de la unión responsable del eje C .......................................................64
Figura 75. Lista de los 5 comandos que manejan la fresadora Kondia SEASKA...................................65
Figura 76. Ventana Mechanism Analysis del mecanismo de la fresadora Kondia SEASKA..................65
Figura 77. Kinematics Simulation - SEASKA_mech...............................................................................65
Figura 78. Creación de la posición inicial de la fresadora Kondia SEASKA en CATIA v5.......................66
Figura 79. Crear el punto de montaje de la herramienta. NC Machine Tool Build..............................66
Figura 80. Punto de montaje de pieza .................................................................................................67
Figura 81. Modificar la posición del cambio de herramienta. NC Machine Tool Builder.....................67
Figura 82. Ventana para modificar los límites de movimiento. NC Tool Machine Build......................68
Figura 83. Velocidades y aceleraciones máximas. NC Machine Tool Builder ......................................68
Figura 84. Jog Mechanism en la fresadora Kondia SEASKA. NC Machine Tool Builder........................69
Figura 85. Pieza a mecanizar con la preforma de partida en amarillo transparente...........................70
Figura 86. Visión general del elemento Part Operation.......................................................................71
Figura 87 Pestañas de selección de máquina y ejes de la pieza ..........................................................72
Figura 88. Ventana para generar las trayectorias de transición de forma automática .......................73
Figura 89. Pestañas del Part Operatioin: Position, Simulation, Option y Collision checking ...............73
Figura 90. Menú de las operaciones auxiliares....................................................................................76
Figura 91. Operaciones de COPY y TRACUT.........................................................................................76
Figura 92. Ejes y planos principales de la pieza para la configuración del elemento Part Operation..77
Figura 93. Propiedades de la herramienta...........................................................................................78
Figura 94. Pestaña de geometría del Roughing.1 ................................................................................79
Figura 95. Pestaña de estrategia de mecanizado del Roughing.1........................................................80
Figura 96. Distintos tipos de trayectorias en un desbaste (Roughing) ................................................81
Figura 97. Opciones de la configuración radial de mecanizado...........................................................82
Figura 98. Opciones de Velocidad y Macros en Roughing.1................................................................82
6
Figura 99. Trayectorias de Roughing.1.................................................................................................83
Figura 100. Opciones del visionado de las trayectorias.......................................................................84
Figura 101. Ejemplo de colisión en una trayectoria.............................................................................85
Figura 102. Pestaña de geometría de Roughing.2 ...............................................................................85
Figura 103. Superficies creadas para el mecanizado entre álabes ......................................................86
Figura 104. Geometría de la instrucción Isoparametric_Sup1ABC......................................................87
Figura 105. Estrategia de mecanizado de Isoparametric_Sup1ABC ....................................................87
Figura 106. Estrategia radial de Isoparametric_Sup1ABC....................................................................88
Figura 107. Tipos de configuración del eje de la herramienta.............................................................89
Figura 108. Trayectorias de Isoparametric_Sup1ABC..........................................................................89
Figura 109. Macros de acercamiento y alejamiento............................................................................90
Figura 110. Ejes de la pieza y superficies a evitar (Check) del mecanizado de la superficie 6ª ...........91
Figura 111. Trayectorias de mecanizado de las superficies de la cavidad...........................................92
Figura 112. Operaciones de mecanizado en la parte superior ............................................................92
Figura 113. Posiciones de la herramienta en el mecanizado del extradós..........................................93
Figura 114. Trayectorias del mecanizado de los álabes.......................................................................93
Figura 115. Opciones de la simulación de eliminación de material.....................................................95
Figura 116. Ejemplo de colisión en la simulación con eliminación de material...................................96
Figura 117. Ejemplo de comparación entre la pieza de diseño y la mecanizada.................................96
Figura 118. Secuencia de arranque de material ..................................................................................97
Figura 119. Secuencia de dimensiones de la pieza por colores...........................................................98
Figura 120. Opciones de contacto y distancia en la simulación con máquina.....................................99
Figura 121. Analysis configuration.....................................................................................................100
Figura 122. Data Readout ..................................................................................................................100
Figura 123. Barra de control de la simulación con herramienta........................................................101
Figura 124. Ejemplo de colisión en la simulación de máquina ..........................................................101
Figura 125. Varios momentos de la simulación con máquina herramienta ......................................102
Figura 126. Generación del código APT .............................................................................................103
Figura 127. Muestra del código APT ..................................................................................................104
Figura 128. Selección de postprocesador en CATIA...........................................................................105
Figura 129. Vista general del programa WinPost ..............................................................................105
Figura 130. Árbol de operaciones importadas de un archivo APT.....................................................106
7
Lista de tablas
Tabla 1. Conveniencia de la utilización de MHCN[6] ............................................................................17
Tabla 2. Fresadora Kondia SEASKA. Características técnicas................................................................29
Tabla 3. Medidas de la fresadora Kondia SEASKA ................................................................................33
Tabla 4. Listado de uniones entre elementos para la creación del mecanismo...................................63
Tabla 5. Límites de movimiento de la fresadora Kondia SEASKA .........................................................64
Tabla 6. Tabla de velocidades de mecanizado......................................................................................78
Tabla 7. Pestaña Tool Axis ....................................................................................................................88
Tabla 8. Datos de la gráfica de estudio de tiempos............................................................................111
Tabla 9. Datos de los tiempos de envío de información. Figura 65...................................................112
8
Resumen
El presente proyecto tiene como objetivo el desarrollo de una aplicación de
Realidad Virtual orientada a una fresadora de Control Numérico de cinco ejes de
aplicación en la Industria Aeronáutica y Aeroespacial.
En el primer capítulo, se presentan de manera general y a modo introductorio los
elementos principales del proyecto, por un lado las Máquinas-herramienta de control
numérico y por otro la Realidad Virtual.
A continuación, en el apartado dos, se muestran las características de la fresadora
que será objeto de modelización y simulación. Se trata de un centro de mecanizado
vertical de cinco ejes denominado Kondia SEASKA.
El siguiente capítulo versa sobre la utilización del programa Virtools y el lenguaje de
programación Visual Basic para la creación de la aplicación de simulación. En él se
puede encontrar tanto la presentación de Virtools y Visual Basic, como la descripción
del trabajo realizado con estas herramientas.
A continuación, se presentará un desarrollo alternativo de mediante la utilización
de CATIA v5, más concretamente con los módulos de mecanizado que ofrece. Esta
opción permitirá del desarrollo de un programa de mecanizado a partir de una pieza
diseñada, la creación de la Máquina-herramienta y si simulación conjunta.
Por último, en el capítulo 5, se hace una reflexión sobre el trabajo realizado, las
conclusiones obtenidas y se presentan posibles desarrollos futuros a partir de este
proyecto.
9
1 Introducción: Automatización y Realidad Virtual en Sistemas
de Producción
Todo proceso de fabricación es susceptible de ser automatizado reduciendo o
eliminando la intervención humana directa sobre él. La automatización conlleva, por lo
general, una inversión inicial relativamente elevada, cuya rentabilidad está supeditada,
entre otros factores, a la correcta elección de los equipos a utilizar de acuerdo con el
nivel de automatización deseado. Una de las ventajas que aporta la automatización de
un proceso, es la obtención de unas piezas mejor acabadas con un menor número de
rechazos, lo que supone una mayor rentabilidad. Este hecho es fundamental en una
producción con unos niveles de exigencia elevados, tal y como sucede en la producción
aeronáutica y aeroespacial. En contraposición, uno de los principales inconvenientes
asociados a la automatización, aparece durante la fase de implantación del sistema,
sobre todo si éste es complejo. Durante esta fase y en la etapa de puesta a punto
normalmente aparecen situaciones no previstas, que en algunos casos pueden llegar a
dar al traste, si no con la implantación, sí con las expectativas puestas en ella. En este
sentido, las técnicas de simulación son herramientas de gran utilidad para detectar y/o
corregir situaciones no deseadas, antes de que la implantación haya tenido lugar. La
complejidad de los modelos de simulación empleados, suele ser inversamente
proporcional a la facilidad de interpretación de los resultados obtenidos. En este punto
aparece la Realidad Virtual como una herramienta que establece una interfaz entre los
resultados generados por el modelo de simulación y la percepción sensorial del usuario
que la utiliza, asemejando ésta a la percepción "real" que el sistema o proceso
modelizado produce. De esta forma no se requiere del usuario conocimientos
específicos acerca del funcionamiento del modelo o de la interpretación de sus
resultados, ya que éstos son percibidos a través de los sentidos de manera análoga a la
percepción real y pueden emplearse modelos de mayor complejidad.
La utilización de equipos de Control Numérico (CN), tanto en Máquinas-
Herramienta como Robots, elementos esenciales de todo sistema productivo
automatizado, conlleva riesgos para los usuarios y para los propios equipos durante la
fase de aprendizaje. La disponibilidad de modelos de simulación de equipos CN
basados en Realidad Virtual permite minimizar estos riesgos incluso en la fase de
aprendizaje. Asimismo supone un primer paso hacia la construcción de sistemas
automatizados más complejos constituidos por varios equipos CN, tales como Células
Flexibles o Sistemas Flexibles de Fabricación. En base a lo expuesto, el presente
proyecto busca la obtención de un modelo virtual de una fresadora de Control
Numérico Kondia SEASKA que pueda ser utilizado tanto para entrenamiento como
para su inclusión en modelos de sistemas automatizados de mayor complejidad.
10
1.1 Robots y Máquinas-Herramienta de Control Numérico
La máquina-herramienta (MH) ha jugado un papel fundamental en el desarrollo
tecnológico del mundo. Gracias a la utilización de la MH se ha podido realizar de forma
práctica, maquinaria de todo tipo que, aunque concebida y realizada, no podía ser
comercializada por no existir medios adecuados para su construcción industrial[1].
En los sistemas de producción convencionales las MH del mismo tipo están
agrupadas, siendo cada máquina manejada independientemente. Las operaciones de
mecanización para la fabricación de una pieza se dividen en operaciones
independientes, cada una de las cuales se puede realizar más eficientemente con una
máquina en particular. Para lograr una mayor eficacia, muchos trabajos se organizan
de tal manera que grupos de piezas que requieren operaciones similares se
manufacturan en un grupo de máquinas localizadas adyacentemente. La conveniencia
de realizar varias operaciones en una única MH, unido a numerosos y nuevos
requerimientos que día a día aparecían, forzó la utilización de nuevas técnicas que
permitiesen sustituir al operador humano. De esta forma se introdujo la Automática en
los procesos de fabricación. Se entiende como automatización a la reducción o
eliminación de la intervención humana directa sobre un proceso.
La aparición de la automatización de procesos viene impuesta por diversas razones:
- Necesidades de fabricar productos que no se podían conseguir en cantidad y
calidad suficiente sin recurrir a la automatización del proceso de fabricación.
- Necesidad de obtener productos hasta entonces imposibles o de muy difícil
fabricación, por ser excesivamente complejos para ser controlados por un operador
humano.
- Necesidad de fabricar productos a precios suficientemente bajos.
Inicialmente, el factor predominante que condicionó todo automatismo fue el
aumento de la productividad. Posteriormente, debido principalmente a las nuevas
necesidades de la industria, se han tenido en cuenta muchos más factores, entre los
que destacan la precisión, la rapidez y la flexibilidad. Estas cuatro variables son las que
se tienden a optimizar a la hora de diseñar dispositivos automáticos.
Hacia 1942 surgió lo que podríamos llamar control numérico verdadero, y que
apareció como una necesidad impuesta por la industria aeronáutica. La aparición del
control numérico permitió por primera vez optimizar la flexibilidad, ya que era la mejor
virtud de este nuevo automatismo.
Se considera control numérico (CN) a todo dispositivo capaz de dirigir
posicionamientos de un órgano mecánico móvil, en el que las órdenes relativas a los
desplazamientos del móvil son elaboradas en forma totalmente automática a partir de
11
informaciones numéricas definidas, bien manualmente (funcionamiento
semiautomático), bien por intermedio de un programa (funcionamiento automático).
En general, con un CN pueden controlarse:
- los movimientos de los carros o del cabezal.
- el valor y el sentido de las velocidades de avance y de corte.
- los cambios de herramienta, así como la de piezas.
- las condiciones de funcionamiento de la máquina, en cuanto a su modo de
trabajar o en cuanto a su estado de funcionamiento.
Paralelamente, el CN se encarga de coordinar otras funciones que le son propias.
Por ejemplo:
- control de flujos de información.
- control de la sintaxis de programación.
- diagnóstico de su funcionamiento.
Toda la información necesaria para la ejecución de una pieza constituye el
programa, que es escrito en un código por medio de caracteres alfanuméricos.
El CN ha estado desde sus inicios ligado a la aeronáutica. De hecho, el primer
intento serio para obtener un verdadero CN se produjo hacia 1947 y partió de la
necesidad de fabricar hélices de helicóptero de diferentes configuraciones. John T
Parsons, dueño de la compañía Parsons, contrató a Frank Stulen quien desarrolló una
fresadora controlada por tarjeta perforada a la que Parsons adaptó una "máquina de
contar" IBM. Así las plantillas podían fabricarse en forma automática y más precisa
debido a que el control numérico realizaba los cálculos y medidas.
Dado el interés que suscitó esta técnica, la Fuerza Aérea de estados Unidos
concedió un contrato al Instituto Tecnológico de Massachusetts (MIT) para su
desarrollo. El laboratorio de Sistemas Electrónicos del MIT diseño y construyó, en
1952, un primer prototipo de fresadora con CN que gobernaba tres ejes.
Posteriormente la irrupción de la microelectrónica y el de nuevos tipos de
computadores permitieron abrir una brecha tecnológica por donde empezaron a
emerger nuevas generaciones de sistemas de control que elevaron considerablemente
la rentabilidad del CN y su ámbito de aplicación. A todos estos sistemas se les conoce
con el nombre de CAM (Computer-Aided Manufacturing), es decir, fabricación asistida
por ordenador.
A esto se le unió el diseño asistido por ordenador (CAD). Esta combinación permite
la transferencia de información desde la etapa de diseño a la de fabricación de un
producto, sin necesidad de volver a capturar manualmente los datos geométricos de la
pieza. La base de datos que se desarrolla durante el CAD es procesada por el CAM,
12
para obtener los datos y las instrucciones necesarias para operar y controlar la
maquinaria de producción, el equipo de manejo de material y las pruebas e
inspecciones automatizadas para establecer la calidad del producto. Se suele hablar de
sistemas CAD/CAM para referirse a la utilización conjunta de ambos sistemas.
El surgimiento del CAD/CAM ha tenido un gran impacto en la manufactura al
normalizar el desarrollo de los productos y reducir los esfuerzos en el diseño, pruebas
y trabajo con prototipos. Sus campos de aplicación son muy variados, yendo desde su
utilización en la automoción y la aeronáutica, hasta la fabricación de prótesis y
ortodoncias.
1.1.1 Tipos de máquinas-herramienta y aplicaciones aeronáuticas
Aunque el CN se ha orientado fundamentalmente hacia máquinas-herramienta que
trabajan por arranque de viruta, su utilización no queda restringida a estas
aplicaciones[2]. A título ilustrativo, se relacionan a continuación diversos tipos de
máquinas que trabajan conectadas a CN: Taladradoras, Fresadoras, Mandrinadoras,
Tornos, Centro de mecanizado, Rectificadoras, Punzonadoras, Máquinas de
electroerosión, Maquinas de soldar, Dobladoras, Máquinas de oxicorte, Plegadoras,
Máquinas de dibujar, Máquinas de trazar, Bobinadoras, Máquinas de medir por
coordenadas, Manipuladores, etc.
1.1.1.1 Clasificación de las máquinas-herramienta de control
numérico (MHCN)
La fabricación por eliminación de materia se resume a la conducción de un móvil, ya
sea herramienta o pieza, siguiendo un desplazamiento determinado, obedeciendo una
orden (humana o numérica). Este desplazamiento puede ser lineal, angular o circular,
en función de las posibilidades del servomecanismo de los movimientos. Esto significa
que se ha clasificado a las MHCN siguiendo el modo de desplazamiento[2]. Se han
desarrollado tres generaciones de MHCN:
1) Desplazamiento punto por punto:
Estas máquinas se caracterizan por la
ausencia de mecanización en el curso del
desplazamiento sobre dos ejes (taladros,
punteadoras, punzonadoras y mandrinadoras).
La orden numérica sólo afecta a la puesta en
posición de la pieza respecto a la herramienta, o
de la herramienta respecto a la pieza según el
tipo de máquina. La fabricación se efectúa
sobre un solo eje, sin desplazamientos relativos.
La trayectoria seguida no tiene importancia.
Figura 1.Desplazamiento punto por punto
13
2) Desplazamiento paraxial:
Estas máquinas permiten ejecutar
trayectorias lineales paralelas a cada uno
de los ejes de desplazamiento X, Y, Z.
El mecanizado no es posible más que
sobre un eje cada vez.
3) Desplazamiento continuo
Máquinas gobernadas por un ordenador que
controla los tres ejes a la vez, verificando la
pertenencia del punto a la ecuación de la recta,
o del círculo, del desplazamiento deseado. Por
ello, la trayectoria puede no ser paralela a los
ejes X, Y, Z. Para asegurar estos desplazamientos
es necesario hacer referencia a interpolaciones
lineales y circulares.
Gracias al gran desarrollo de la tecnología y sobretodo de la informática, esta
clasificación ha quedado algo obsoleta, ya que la gran mayoría de máquinas son
capaces de realizar desplazamientos continuos en, al menos, 2 ejes. En el apartado 0
se muestran las características de las MH de cinco ejes.
1.1.1.2 Aplicaciones aeronáuticas de las MHCN
Como se ha visto anteriormente, el CN ha estado unido a la aeronáutica desde su
aparición. De hecho, se puede decir que la industria aeronáutica ha sido la principal
precursora de la utilización del CN a la hora de fabricar. Esto es debido a que el
mecanizado aeronáutico requiere una alta precisión y reducir al mínimo los tiempos
de mecanizado, por ello es muy habitual el uso de máquinas multieje. Además, el uso
gran variedad de materiales, desde el aluminio a otros más especiales como el titanio o
inconel hace que sea necesario CAM muy flexible, preciso, fiable y con una gran
capacidad de simulación, de lo que se hablará más adelante, para reducir cualquier
tipo de error y desperdiciar unos materiales que pueden llegar a tener un altísimo
valor.
Figura 2. Desplazamiento paraxial
Figura 3. Desplazamiento continuo
14
Las máquinas multieje son capaces de realizar translaciones en los tres ejes y al
menos un giro. Se empezaron a desarrollar incluso antes que el CN, en los años
cincuenta, pero es innegable que si son controladas numéricamente permiten realizar
geometrías muy complejas con una alta precisión, por ello que son muy utilizadas en la
industria aeronáutica y aeroespacial.
A continuación se muestran varios ejemplos de piezas aeronáuticas fabricadas
utilizando MHCN [3]:
En la Figura 4 podemos observar una parte de la unión del sistema del tren de
aterrizaje perteneciente al Boeing 767. Para su fabricación se utilizó una MHCN de tres
ejes y dos husillos verticales. La pieza tiene una longitud de 254mm y una altura de
152mm y está hecha de titanio.
Figura 4. Unión del tren de aterrizaje del Boeing 767 fabricado en titanio
En la Figura 5 se puede ver una puerta de emergencia fabricada usando una MHCN
de cinco ejes y alta velocidad. La pieza es de aluminio 7050 y tiene unas dimensiones
de 1016mm x 914mm x 152mm.
Figura 5. Puerta de emergencia usada en aviación general
Por ultimo en la Figura 6 se muestra una pieza realizada utilizando una MHCN
vertical de tres ejes. Está fabricada en aluminio, es cuadrada, de 165mm de lado.
Consiste en un panel de acceso implantado en un helicóptero militar.
15
Figura 6. Panel de acceso fabricado con una MHCN
Como se ha visto en los ejemplos, las piezas obtenidas usando estas MH no son
excesivamente grandes (la mayor longitud es un metro). Para realizar piezas como el
morro de un avión o el revestimiento de un ala se utiliza el fresado químico. Sin
embargo, programas como GAP (Green Avanced Panels) lanzado por Airbus en 2004
[4] han intentado aplicar las MHCN para reducir el tanto el precio como los tiempos de
mecanizado de estas piezas.
Figura 7. Compresor centrífugo montado en una MH de 5 ejes
16
1.1.2 Modos de funcionamiento
El programa de control numérico es el código legible tanto por el usuario como por
la máquina mediante el cual se establece la secuencia de operaciones a realizar por la
máquina partiendo de los datos geométricos y las condiciones de corte [5].
Existen cuatro formas de programar un código de control numérico:
- Manual: a partir del plano de la pieza se calculan las trayectorias de forma
manual y, a continuación, se codifican las trayectorias mediante el lenguaje
contenido en el manual de la máquina.
- Pseudo-asistida por ordenador: el diseño de la pieza se ha realizado por
ordenador (CAD), pero no la programación del mecanizado (CAM). La
ventaja es que no es necesario calcular las trayectorias porque los puntos
necesarios se obtienen del modelo diseñado.
- Asistida por ordenador (CAD-CAM): Se utiliza un programa de CAD para
diseñar la pieza. A continuación se crean las librerías de herramientas que
representan las posibilidades del taller. Por último se generan las
trayectorias de la herramienta, paso a paso, mediante la utilización de un
programa de CAM. Esto permite su visualización y, si es necesario, su
corrección.
- Programación conversacional: Depende del controlador de la MH, ya que es
el operario es el encargado de introducir los programas en la propia
máquina.
1.1.3 Características generales
Las características más importantes del CN son el control simultáneo de
desplazamiento en varios ejes, lo que permite trazar geometrías complejas, y la
capacidad de recordar y reproducir una secuencia de órdenes, lo que resulta muy útil
ya que habitualmente las piezas tienen simetrías o hay que realizar un mismo proceso
varias veces.
Sin embargo, el CN tiene muchas más ventajas. A continuación se nombran algunas
de ellas[2]:
- Reducción de los tiempos de ciclos operacionales. Las causas principales de
la reducción al mínimo de los tiempos superfluos son:
· Trayectorias y velocidades más ajustadas que en las máquinas
convencionales;
· Menor revisión constante de los planos y hojas de instrucciones.
· Menor verificación de medidas entre operaciones.
- Ahorro de herramientas y utillaje. El ahorro en concepto de herramientas
se obtiene como consecuencia de la utilización de herramientas más
universales.
17
- Mayor precisión e intercambiabilidad de las piezas.
- Reducción del porcentaje de piezas defectuosas.
- Reducción del tiempo del cambio de piezas.
- Reducción del tamaño del lote.
- Reducción del tiempo de inspección. Dado que la probabilidad de que se
produzcan piezas defectuosas dentro de una serie es menor, pueden
evitarse inspecciones intermedias entre ciclos.
Por supuesto, las MHCN también tienen sus inconvenientes. Los más reseñables
son:
- Gran inversión. Las MHCN cuestan entre tres y cinco veces más que las MH
convencionales.
- No son rentables para series pequeñas de geometría fácil. Este hecho está
directamente relacionado con el punto anterior. Una gran inversión
requiere una gran utilización de la máquina para que sea rentable. Por el
contrario, pueden resultar útiles para series pequeñas si la geometría es
muy complicada, como se puede observar en la Tabla 1.
- Elevado coste de mantenimiento. El sistema de control y mantenimiento es
más complicado, teniendo que contar con técnicos altamente cualificados.
COMPLEJIDAD GEOMÉTRICA
Baja Media Alta
TAMAÑO
DE SERIE
Grande > 50.000 30.000 10.000
Media ~ 5.000 3.000 1.000
Pequeña < 500 150 50
Tabla 1. Conveniencia de la utilización de MHCN[6]
1.1.3.1 Descripción general de las MHCN
La introducción del CN en las MH no cambia la arquitectura, estructura, funciones,
etc. El único cambio es que el movimiento de los ejes se puede programar
Para que la MH sea capaz de guiar una herramienta a lo largo de una trayectoria
compleja, es necesario combinar el movimiento de varios ejes de forma simultánea.
Este movimiento simultáneo se define como Interpolación de los ejes en una MH.
Mediante lazos de control se regula cada instante para que la posición de la
herramienta sea la correcta. Se trata de un problema cinemático inverso, partiendo de
la trayectoria se calcula el movimiento de cada eje[7].
18
Figura 8. Ejemplo de trayectoria transformada en movimiento de tres ejes[7]
La estructura de una MHCN consta principalmente de: Dispositivo de entrada de
información, unidad de control principal, máquina herramienta, sistema motriz, lazo
de control y la unidad de visualización[8].
Figura 9. Esquema de una máquina-herramienta de control numérico
La información de entrada se puede introducir a la unidad de control principal por
varios medios o soportes. Varios ejemplos son CDs, DVDs, memorias USB, redes
internas o incluso se pueden dar las órdenes directamente sobre un teclado
perteneciente a la propia MHCN. Lo principal es la información que se manda, es decir,
el programa.
Como se ha comentado anteriormente, el programa es donde se recoge toda la
información del mecanizado y esta información es traducida al lenguaje entendible
para la unidad de control principal[8]. En la Figura 10 se pueden observar los distintos
aspectos que son controlados, entre los que destacan las cotas de posición,
velocidades o selección de la herramienta.
19
Figura 10. Esquema de un programa de control numérico
Antes de la escritura del programa las acciones a realizar son las mismas que en un
proceso convencional. Tenemos que tener la información geométrica, seleccionar
herramientas, utillaje, etc. La Figura 11 ilustra este hecho[6].
Figura 11. Procesos a realizar antes de la escritura del programa
La unidad de control principal es el corazón del sistema de CN. Existen dos
subsistemas dentro de ella: la unidad de procesado de datos (DPU, data processing
unit) y la unidad perteneciente al lazo de control.
La DPU interpreta el programa, calcula posiciones intermedias y realiza la
transformación de la trayectoria en movimientos de los ejes. Lo calculado pasa a la
unidad del lazo de control.
Los lazos de control ejecutan las consignas de la DPU, teniendo en cuenta la
información que le ofrecen los instrumentos de medida, y son los encargados del
20
movimiento de cada eje. En la Figura 12 se puede observar un ejemplo[7]. También
mandará instrucciones sobre lo que se señala en la Figura 9 como “Funciones
diversas”, es decir, lubricación, cambios de herramienta, etc.
Figura 12. Control de un eje mediante lazo cerrado
El sistema motriz es un importante componente de la MHCN y tiene gran influencia
sobre las características y prestaciones de la misma. Debe responder adecuadamente a
las instrucciones recibidas para mover la herramienta adecuadamente. Normalmente
está formado por motores eléctricos aunque en grandes máquinas pueden utilizarse
motores hidráulicos.
Por último, la unidad de visualización sirve como elemento de interacción entre la
MHCN y el operador, ya que le ofrece multitud de datos del mecanizado (posición,
velocidad, parte del programa ejecutado, etc.). Las MHCN más avanzadas poseen su
propia simulación de la mecanización, para probar el programa antes de ponerlo en
marcha.
1.2 Realidad virtual (VR)
La Realidad Virtual (Virtual Reality) es “una simulación generada por un computador
en un ambiente de tres dimensiones, en donde el usuario puede visualizar y manipular
el contenido de dicho ambiente”[9].
Alguna de las características de la VR es su respuesta dinámica en tiempo real.
Ésta produce una respuesta interactiva y multisensorial permitiéndole al usuario una
sensación lo más cercana a lo real. Esto resume las tres características que debe
poseer un sistema para que sea considerado realidad virtual: simulación (replicar el
objeto), interacción (debe poder ser controlado) y percepción (interactúa con los
sentidos).
La VR se puede clasificar en inmersiva y no inmersiva. La primera es aquella que se
da en un ambiente 3D con el cual los usuarios pueden interactuar a través de cascos,
21
guantes y otros accesorios para el cuerpo. En la VR no inmersiva el usuario interactúa
con el mundo virtual de manera más sencilla, con utilización de teclado y ratón.
Técnicamente hablando, la realidad virtual inmersiva es una interfaz avanzada que
permite experimentar de manera multisensorial una simulación computarizada de
manera interactiva y en tiempo real. Consta de equipamiento, instalaciones, software,
hardware y aplicaciones diseñadas para tal fin. En el proceso cognitivo asistido por esta
herramienta, resaltan dos factores principales: el aspecto sensorial en la percepción
del mundo virtual (la inmersión) y las formas de interacción del usuario con él. Son
aplicaciones de realidad virtual inmersiva aquellas que son experimentadas con varios
de nuestros sentidos, en especial la visión, la audición y el tacto. La calidad del sonido
tridimensional contribuye mucho a la sensación de inmersión[10].
El equipamiento necesario para la inmersión en el mundo virtual actualmente es
costoso, de ahí la importancia que tiene hoy en día la VR no inmersiva. Este enfoque
ofrece un nuevo mundo a través de una simple ventana de escritorio. Es más barato y
tiene probadamente mayor facilidad y rapidez de aceptación en los usuarios[11].
Figura 13. Augmented Reality Guiding Process de la empresa ARSoft [12]
Por otro lado, cabe destacar que en los últimos años está tomando fuerza la
llamada Realidad Aumentada, que consiste en añadir elementos virtuales al mundo
real. Esto produce que los objetos virtuales parezcan lo más reales posibles.
1.2.1 Aplicaciones en ingeniería
La realidad virtual tiene un gran potencial de aplicación en los sectores industriales.
Las aplicaciones se pueden agrupar en: Diseño, planificación y entrenamiento.
En lo que al diseño se refiere, la VR permite estudiar diversas alternativas antes de
proceder a la elección de una de ellas. Además, hay que tener en cuenta que el
proceso creativo depende de imágenes mentales. Con la VR, éstas pueden imponerse a
los usuarios y pueden ser compartidas entre ellos.
22
En la actualidad donde el diseño de los productos se realiza en su mayoría con
herramientas de CAD, la VR permite probar ese modelo en un entorno de realidad
virtual. Ahí el operador puede probarlo y estudiarlo sin llegar a construirlo. [13]
Por otro lado, mediante las simulaciones es posible ver el resultado de una
modificación de un sistema sin necesidad de implantarla físicamente, lo que supone un
ahorro de tiempo y dinero.
Figura 14. Desarrollo de una fábrica virtual por parte de Ford [14]
Por último, la realidad virtual permite que los profesionales perciban y se enfrenten
a situaciones sin poner en riesgo su seguridad ni la de los instrumentos utilizados. Un
ejemplo es el de los pilotos, a los que se les obliga a realizar sesiones periódicas de
simulación para recordar los procedimientos a seguir en caso de averías o
emergencias.
Como ejemplo práctico, Airbus puso en marcha en 2014 un proyecto para aplicar la
realidad virtual a la fabricación de aeronaves. Desde AERTEC Solutions (empresa que
llevará a cabo el proyecto) sostienen que “gracias a la realidad virtual se puede
digitalizar el “know how”” [15]. Por otro lado, en julio de 2015, Airbus ha firmado un
contrato de colaboración con la empresa española ARSoft dedicada al desarrollo de
Realidad Aumentada [16].
1.2.2 Alternativas de implementación
Los sistemas software son aquellos que permiten el desarrollo de alguna parte de la
experiencia de realidad virtual. Debido a la gran interdisciplinariedad que presentan las
aplicaciones de realidad virtual, todo su desarrollo se hace a partir del trabajo de
distintos expertos en ámbitos muy diversos. Desde diseñadores gráficos, hasta
ingenieros en electrónica, pasando por modeladores, programadores, etc. Esto da
23
lugar a una gran variedad de herramientas especializadas, muchas de las cuales no son
exclusivas del ámbito de la realidad virtual. Así pues, no existe un sistema software que
permita hacerlo todo, y por lo tanto a continuación se describen los tipos más
utilizados [17]
A parte de las herramientas generales de programación, como los códigos tipo C,
existen librerías de programación que son específicas de la realidad virtual y que
aportan una funcionalidad de modo que los desarrolladores no deben comenzar de
cero cada vez que quieren realizar un proyecto, ya que contienen ciertos elementos
que siempre aparecen en los entornos de realidad virtual. Estas librerías son
únicamente recomendables para programadores expertos, ya que no son fáciles de
usar. Destacan dos de ellas, el WorldToolkit (WTK) y el DIVE.
Otras herramientas son ellas mismas el lenguaje completo, como es el caso del
VRML (Virtual Reality Modelling Language). Este lenguaje permite definir experiencias
distribuibles a través de internet, contiene una filosofía multiplataforma que lo hace
muy versátil y su definición no obedece a intereses comerciales concretos ya que ha
sido definido por un consorcio de universidades, empresas, desarrolladores, etc.
A continuación se presentan algunos de los programas más utilizados en el campo
de la realidad virtual:
- Autodesk 3ds Max: Programa de creación de gráficos y animación 3D con
una arquitectura basada en plugins. Es uno de los programas de animación
3D más utilizados, especialmente para la creación de videojuegos o
películas.
- POV Ray (Persistence or Fision Ray-tracer): programa de raytracing, es decir,
un algoritmo para síntesis de imágenes tridimensionales, gratuito que
funciona en gran variedad de plataformas informáticas.
- Java 3D: Es una extensión estándar del JDK 2 de Java, que permite crear y
manipular geometrías 3D y estructuras para dibujar esta geometría.
- Virtools: Es una plataforma de desarrollo con un innovador acercamiento a
la creación de contenidos 3D. Se hablará más tendidamente del mismo en
el apartado 3.1.1
- VRML: Como se ha dicho anteriormente, es un formato de archivo
normalizado que representa escenas u objetos interactivos
- Maya: Es un software de animación en 3D que ofrece un conjunto de
funciones para realizar animación en 3D dentro de una plataforma de
producción sumamente ampliable.
24
2 La Fresadora KONDIA SEASKA
Se trata de uno de los centros de mecanizado de cinco ejes y columna móvil que
construía la empresa Kondia. La modificación de su diseño ha dado como resultado
otros dos centros de mecanizado de características similares: FIVE-400 y HM-1000-
FIVE.
El movimiento de balanceo de la mesa a la que va sujeta la pieza puede recordar al
de una cuna siendo mecida. De aquí el nombre de la misma, ya que “seaska” es “cuna”
en euskera.
Figura 15. Vista general de la fresadora Kondia SEASKA [18]
Antes de realizar la descripción de la fresadora Kondia SEASKA, se procede a realizar
una pequeña introducción a las máquinas herramienta de cinco ejes.
25
2.1 Introducción a las máquinas herramienta de 5 ejes
Se le llama eje a cualquier movimiento de la máquina controlado mediante control
numérico, considerándose distintos dos movimientos paralelos que sean controlados
de manera independiente.
Figura 16. Nomenclatura estándar de los ejes de una máquina herramienta [19]
Como se observa en la figura anterior, existen 9 ejes estándar:
- XYZ son ejes lineales, de los cuales Z está alineado con el husillo de la
herramienta
- ABC son los ejes de rotación de XYZ respectivamente
- UVW son lineales y paralelos a XYZ.
Por otro lado, hay que mencionar que esta nomenclatura no siempre es respetada
por los fabricantes.
Las máquinas de 5 ejes constan de los tres ejes lineales XYZ y dos ejes de giro.
Dependiendo de qué elemento sea el que realice los movimientos de giro, se
diferencian tres tipos de máquinas:
- Mesa/mesa. Los dos giros los realiza la mesa que sujeta la pieza.
- Cabezal/mesa. Un giro lo realiza la mesa, mientras que el otro permite que
la herramienta se incline
- Cabezal/cabezal. La pieza permanece con la misma orientación, mientras
que es la herramienta la que realiza los giros.
A continuación se muestra un ejemplo de cada tipo mostrando en cada caso el
“esqueleto” de la máquina o estructura cinemática. En ella se muestran los tres
elementos clave de una máquina -base, preforma (stock) y herramienta (tool)- y la
jerarquía de movimientos en cada eje.
26
Figura 17. Máquina vertical. Tipo mesa/mesa. Herramienta: X, Z. Pieza: Y, A, C [19]
En la Figura 17 se muestra una máquina con doble pivotaje y una traslación en la
mesa, mientras que la herramienta puede moverse en los ejes X, Z.
Figura 18. Máquina VH. Tipo cabezal/mesa. Herramienta: X, Z, A. Pieza: Y, C [19]
En la figura anterior, se muestra una máquina llamada VH (vertical y horizontal), es
del tipo cabezal/mesa y posee una flexibilidad excepcional además de gran rigidez.
27
Figura 19. Máquina vertical. Tipo cabezal/cabezal. Herramienta: Z, B, A. Pieza: Y, X [19]
En la Figura 19 se muestra una configuración cabezal/cabezal, comúnmente
conocida como “configuración de perfilado”. Estas máquinas suelen tener un rango de
giro limitado en contraposición con sus grandes recorridos en el plano horizontal.
2.2 Descripción general
La fresadora Kondia SEASKA es un centro de mecanizado vertical del tipo
mesa/mesa, como se puede apreciar en la Figura 20. Además se muestra que la mesa
contiene los movimientos de rotación, mientras que a la herramienta se le aplican los
movimientos de traslación por medio de una columna. De ahí el nombre de “columna
móvil”.
Figura 20. Vista del esqueleto de la fresadora Kondia SEASKA con su esquema cinemático [18]
28
El acoplamiento de la herramienta al motor que produce su giro puede ser directo o
por correa.
El acoplamiento directo de la herramienta permite una mínima transferencia de
calor del motor al eje, así como una gran capacidad de arranque de viruta y una alta
rigidez. Tiene una fuerza de amarre de 0,9 toneladas y la refrigeración a través del
husillo permite un arranque de viruta a gran velocidad.
La transmisión por correas posee una gran transmisión del par con una fuerza de
amarre de 0,8 toneladas.
Ambos tienen estabilización térmica gracias al doble circuito y están libres de
mantenimiento con grasa permanente a vida.
Figura 21. Acoplamiento directo de la herramienta
Figura 22. Transmisión por correas
Por otro lado, los movimientos en ejes X e Y se producen sobre guías rempladas y
rectificadas, lo que da una mucha rigidez y una muy buena absorción de vibraciones,
así como un control absoluto de inercias.
El eje basculante (giro respecto X) permite un giro de 175º, mientras que el eje
rotatorio (respecto a Z) dispone de giro continuo infinito. La combinación de ambos
movimientos, permiten el acceso a cualquier punto en el espacio.
Figura 23. Límites del giro basculante (eje A) de la fresadora Kondia SEASKA
29
Además, permite un posicionamiento continuo. Es decir, los 5 ejes pueden moverse
de forma continua y simultánea.
2.3 Prestaciones
A continuación se presenta una tabla con las características principales señaladas
por el fabricante[18].
MESA Área de trabajo  320mm (op. 400mm)
Altura de la mesa al suelo 885 mm
Distancia de la mesa al husillo 140 / 630 mm
Giro eje basculante +120º / -55º
Giro eje rotativo 
Velocidad eje basculante 20 rpm
Velocidad eje rotativo 60 rpm
Recorridos X 660 mm
Y 440 mm
Z 510 mm
Cabezal Cono del husillo principal ISO 40 / BT 40
Gama de velocidades 6.000/9.000/12.000/14.000 rpm
Opciones Consultar
Avance Avance rápido 48 m /min
Motor Cabezal 5,5/7,5 KW
op. 11/15 KW
op. 18 KW
Cambiador Nº de herramientas 22 (Op. 40)
Automático de Máx  htas contiguas 85mm
herramientas Máx  htas alternas 135 mm
Máx longitud de herramienta 250 mm
Máx peso herramienta 6 kg
Tipo de selección Random
Tiempo de cambio (hta + hta) 1,8 seg
Tiempo de cambio(viruta + viruta) 4 – 8 seg
Peso aprox 6.700 kg
Prestaciones Precisión de posicionamiento P: 0,01 (ISO 230-2)
Repetitividad R: 0,008 mm
Resolución 0,001
Tabla 2. Fresadora Kondia SEASKA. Características técnicas
30
2.4 Elementos principales. Control
El controlador utilizado para las tareas de control numérico es el iTNC-530 de
Heidenhain[20].
El iTNC-530 es un control numérico multifuncional para el trabajo en taller que
puede ser utilizado para muchos tipos de máquinas, como por ejemplo: fresadora
universal o de alta velocidad, mecanizados de 5 ejes con cabezal o mesa basculante,
taladros, mandrinadoras y otros centros de mecanizado.
Figura 24. Vista del controlador iTNC-530 [21]
En el concepto de control universal, todos los componentes están conectados entre sí
por sistemas puramente digitales. Con ello, alcanza una elevada disponibilidad del
sistema completo, desde el ordenador principal hasta el aparato de medición. Todas
estas características garantizan máxima precisión y calidad superficial con velocidades
de desplazamiento altas.
El sistema posee una pantalla en la que se presenta toda la información necesaria
para la programación, el manejo y la comprobación del control y la máquina. Además,
durante la ejecución del programa, las visualizaciones de estado informan
puntualmente de la posición de la herramienta, el programa utilizado, los ciclos
activados, el tiempo de mecanizado, etc.
El teclado está orientado, principalmente, al proceso de programación. Esto lo
consigue mediante la división en distintos grupos de función como programación,
funcionamiento de la máquina, o funciones de gestión y ayuda.
31
Los diseños para las máquinas de 5 ejes se suelen elaborar externamente en
sistemas de CAM, los cuales contienen una gran cantidad de frases lineales cortas, que
se transmiten al control. Para que la pieza se corresponda con el programa generado
es necesario un guiado óptimo del desplazamiento, con el cálculo previo del contorno
y con los algoritmos para la limitación del retorno.
Además, el sistema es capaz de adaptar automáticamente la velocidad de la
herramienta al contorno de la pieza, pudiéndose programar con avance máximo y
dejando la labor de calcular las velocidades al controlador.
Los sistemas CAM producen los programas mediante postprocesadores que se
pueden generar incluyendo todas las coordenadas de todos los ejes de la máquina o
con vectores normales a la superficie. En los mecanizados de 5 ejes, la herramienta
puede permanecer perpendicular a la superficie o estar inclinada tanto en el plano de
avance (ángulo de ataque) como en el perpendicular a este (ángulo de inclinación).
Independientemente del tipo de programa introducido, se realizan los movimientos
necesarios en los ejes lineales para compensar los movimientos de los ejes
basculantes. Esto se realiza mediante la función TCPM (Tool Center Point
Management), que proporciona gran control de la herramienta y evita daños en los
contornos.
Figura 25. Ejemplo de modificación que realiza el TCPM [21]
Por otro lado, el controlador posee lo que el fabricante llama Mecanizado
inteligente. Se trata de una serie de funciones, como la supresión activa de vibraciones
(ACC) y la regulación adaptiva del avance (AFC), que proporcionan una gran eficiencia
dinámica, a lo que se le añade la monitorización dinámica de colisiones (DCM), que
32
permite al usuario estudiar las posibles colisiones que produciría el programa
introducido.
Otro aspecto a tener en cuenta es la minimización de tiempos de preparación de la
pieza, gracias a los palpadores 3D y al desplazamiento ultrasensible de los ejes.
Mientras que las funciones de programación en taller ofrecen multitud de
posibilidades en lo que a contornos 2D, que son los más habituales, se refiere. Esto
hace que sea una herramienta muy útil a la hora de mecanizar, no ciñéndose
únicamente a interpretar los comandos del programa creado mediante CAM.
Se puede encontrar más información sobre este y otros controladores en la web de
Heidenhain [22].
2.5 Modelización geométrica
2.5.1 Elementos principales y planos
Ante la imposibilidad de acceder a los planos de la fresadora Kondia SEASKA, se
realizó una modelización sencilla de los elementos que entran en juego a la hora del
mecanizado de una pieza. Con ello, se garantiza el cálculo de cualquier tipo de
interferencia entre la preforma y el centro de mecanizado.
En la figura siguiente se muestran los distintos elementos elegidos para realizar la
modelización en CATIA.
Figura 26. Componentes principales de la fresadora Kondia SEASKA
33
Primero se realizaron todos los elementos y a continuación se sitúan en un
“Assembly” con las restricciones de movimiento necesarias.
Se tuvieron en cuenta los datos que aparecen en la Tabla 3.
MESA Área de trabajo  320mm (op. 400mm)
Altura de la mesa al suelo 885 mm
Distancia de la mesa al husillo 140 / 630 mm
Recorridos X 660 mm
Y 440 mm
Z 510 mm
Tabla 3. Medidas de la fresadora Kondia SEASKA
En la figura siguiente se presentan los distintos elementos de los que está formado
el ensamblaje final. Por otro lado, en el anexo E se pueden consultar los planos de las
siete piezas mostradas.
Figura 27. Elementos que conforman el modelo de la fresadora Kondia SEASKA
Con estas geometrías se procede a realizar el ensamblaje por medio de las
restricciones que sean oportunas.
34
2.5.2 Composición global
Para situar cada elemento en su sitio se utilizan principalmente 3 restricciones: el
contacto entre dos superficies, la coincidencia entre dos ejes y la distancia entre dos
superficies.
Primeramente, se fija la base (utilizando el comando Fixed Part) a partir de la cual se
irá construyendo la máquina. A continuación se coloca el soporte de la mesa
basculante, para ello se pone la restricción entre la superficie inferior del soporte y la
parte superior de la base. Este soporte está fijo, por lo que se añaden las distancias
desde las paredes de ambos elementos.
Por otro lado, para colocar las guías se obliga a que permanezcan en contacto las
superficies que forman los huecos de las guías, con los salientes realizados en la base
para este propósito. De esta forma queda libre el movimiento en el eje X.
Figura 28. Restricciones entre la base y el soporte de la mesa y las guías del movimiento en X
Los siguiente elementos a colocar serán la mesa basculante y la columna móvil. El
primero estará en contacto con la superficie vertical interior del soporte, y el eje del
semicírculo de su extremo será coincidente al de la circunferencia del soporte. Así
quedará el giro basculante como único grado de libertad.
La columna móvil, se coloca de forma similar a las guías que la soportan, utilizando
los huecos realizados en la misma para obligar el contacto entre superficie y permitir
únicamente el movimiento respecto el eje Y.
35
Figura 29.Restricciones entre: Soporte de mesa y mesa de balance. Guías en X y columna móvil
Por último, se sitúan la mesa rotatoria y el cabezal. Una vez más, se utiliza la
coincidencia entre superficies y ejes para permitir el giro de la mesa, mientras que la
coincidencia de dos superficies a modo de guías hacen depender las posiciones X e Y
del cabezal de los elementos que lo sujetan, dejando libre su movimiento vertical.
Figura 30. Restricciones entre: Mesa basculante y mesa rotatoria. Columna móvil y cabezal
36
3 Desarrollo basado en Visual Basic y Virtools
El funcionamiento es el siguiente: en la aplicación se carga un objeto con la
composición Virtools creada que se comportará igual que cualquier otro objeto de la
misma. A continuación, mediante una serie de métodos asociados se pueden
intercambiar datos entre la aplicación Visual Basic (VB) y el entorno Virtools.
Figura 31. Vista de la aplicación VB con la composición Virtools cargada (cuadro azul)
La aplicación nos sirve para procesar fácilmente el archivo de texto en el que está
escrito el código numérico. El diagrama de flujos sería el que se muestra en la figura
siguiente.
Figura 32. Diagrama de flujo de información de la aplicación
Como se explicará en el apartado 3.2, no se consiguió que la comunicación entre el
objeto Virtools y el programa de la aplicación fuera fluida, por lo que finalmente esta
opción no se terminó de implementar, mostrando solamente los movimientos lineales.
3.1 Modelización
Como se ha comentado, para la modelización del movimiento se ha utilizado el
software Virtools, así como el programa Visual Studio para crear la aplicación VB.
Además, para realizar el modelo geométrico en 3D de la fresadora, proceso que se
explica en el punto 2.5 del presente documento, se utilizó el programa CATIA.
37
A continuación se presentan los distintos programas que se han utilizado y el
trabajo realizado con ellos.
3.1.1 Virtools
Virtools es una gran colección de tecnologías para la visualización 3D. Estas
tecnologías se pueden agrupar en:
 Aplicaciones de construcción, en las que no se pueden crear modelos, pero
sí elementos simples como cámaras, luces o “frames”, que ayudan a crear
las composiciones 3D.
 Motor de comportamiento, que permite definir como se mueven los
elementos creados en la composición. Se realizan mediante diagramas de
bloques.
 Motor de “renderizado”, que realiza las operaciones oportunas para mostrar
la imagen.
 Reproductor (3D Office Player”, que únicamente sirve para mostrar una
composición una vez finalizada. Este reproductor es el que posee los
controladores ActiveX necesarios para la comunicación entre la aplicación
programada y Virtools.
 Software de desarrollo (SDK), con el que se pueden programar distintos
comportamientos y modificar tanto el motor de comportamiento como el de
renderizado. Es una herramienta específica para programadores expertos.
3.1.1.1 Vistas y menús
A continuación (Figura 33) se presenta la vista general de Virtools y los distintos
menús. Se pretende únicamente realizar una presentación superficial del programa.
Para profundizar tanto en su interfaz como en su funcionamiento se recomienda leer
el manual de usuario [23].
Se puede observar que consta de una barra de menús en la parte superior de la
pantalla, similar a las aplicaciones de Windows, y el resto aparece dividido en tres
apartados. En ellos se puede situar cualquiera de las pestañas que se muestran,
simplemente arrastrándolas, para personalizar la vista a gusto del usuario en función
de sus necesidades.
38
Figura 33. Vista general de Virtools
A continuación se hará una breve descripción de lo que se puede encontrar en cada
una de las pestañas que se muestran, así como en la barra de menús.
Barra de menús
Como se ha dicho, es similar a la de cualquier aplicación de Windows. En ella podemos
encontrar los siguientes botones:
- File Menu: Opciones referentes al archivo como abrir, cerrar, guardar, exportar,
etc.
- Resources: Principalmente para importar o exportar recursos a la composición.
39
Figura 34. Pestañas File y Resources de la barra de menú de Virtools
- Editors: Para abrir los distintos administradores de elementos (pestañas).
- Options: preferencias generales y varias herramientas útiles para
configuración del interfaz.
- Help: Archivos de ayuda. Útiles para resolver dudas concretas acerca de un
determinado elemento.
Figura 35. Pestañas Editors, Options y Help de la barra de menú de Virtools
Virtools presenta unas pestañas principales al iniciar el programa, que son las que
se explican a continuación.
- 3D Layout: Donde se representa la imagen 3D en el centro y tiene una serie
de opciones en la barra izquierda. Se organizan por bloques y son los
siguientes (situados de arriba hacia abajo): de selección, de transformación,
de guías de referencia, de creación y de navegación. Situando el cursor
encima de cada elemento se puede observar la función de cada uno.
40
Figura 36. Pestaña 3D Layout de Virtools
- Building Blocks: Aquí se encontrarán todos los bloques disponibles para
hacer la programación. Están divididos por categorías e incluyen una breve
descripción.
Figura 37. Pestaña Building Blocks de Virtools
- Virtools Resources: Contiene una biblioteca de elementos incluidos por
defecto y que se pueden introducir a la composición.
Figura 38. Pestaña VirtoolsResources de Virtools
41
- Level Manager: Es el gestor de recursos de la composición. Aquí aparecen
todos los elementos de la misma junto a sus scripts (programa que controla
su comportamiento).
Figura 39. Pestaña Level Manager de Virtools
- Schematic: Ventana donde se programan los scripts mediante diagramas de
bloques.
Figura 40. Pestaña Schematic de Virtools
3.1.1.2 Generación de comportamientos
Como se ha comentado al principio del apartado 3.1.1, Virtools es una herramienta
para visualización 3D y no permite la creación de modelos.
Por ello se ha recurrido a dos programas distintos para realizarlo. Para la realización
del modelo se ha utilizado el CATIA, la construcción del modelo se detalla en el
apartado 2.5. Mientras que para realizar el escalado del modelo e importarlo a Virtools
se ha utilizado el 3ds MAX. Programa que contiene un Plug-in compatible con Virtools
y que permite exportar la composición de un modo simple.
Escalar el modelo es necesario, ya que Virtools tiene unos límites que son un cubo
de 200 unidades Virtools. Por otro lado, debe ser lo suficientemente grande como para
simular la precisión de la MH original, teniendo en cuenta que la unidad mínima de
Virtools es 0,0001. Según sus especificaciones, la tolerancia de posicionamiento es de
0,01mm.
42
Teniendo en cuenta que la máxima medida que aparece es el ancho de la base, que
mide 1314mm, se ha seleccionado una escala de 0,05 que como se muestra a
continuación cumple ambas condiciones.
Con esta escala, la tolerancia del modelo será:
La dimensión máxima será:
Esta escala se tendrá también en cuenta a la hora de posicionar los componentes o
de intercambiar información con VB.
Una vez que se tiene el modelo en Virtools, lo primero que se ha hecho es asociar
un frame a cada una de las piezas de las que está compuesta la composición. Un frame
es un punto con 6 grados de libertad (tiene asociado unos ejes que marcarán su
orientación). Esto se hace para poder sustituir cada una de las piezas, en caso de ser
necesario, sin tocar el resto de la composición o todo el comportamiento asociado a la
pieza que se sustituye. Únicamente habrá que asociar la nueva pieza al frame
correspondiente.
Una vez hecho esto, se realiza la construcción de las jerarquías. Esto es, ordenar
cada una de las piezas de modo que si una de ellas se mueve mueva las que estén
montadas sobre ella. Se suele hablar de “padres” e “hijos”. Si una pieza se mueve,
todos sus hijos lo harán con ella.
El modelo de la fresadora Kondia SEASKA consta de 7 piezas, de las cuales 5 se
mueven (cada una en su eje). Cada una de estas 5 piezas tienen un único movimiento,
pero se verán arrastradas por el movimiento de sus padres.
En las figuras siguientes se muestran las distintas piezas del modelo y el nivel que
tienen en la jerarquía.
Figura 41. Fresadora Kondia SEASKA en Virtools Figura 42. Jerarquías del modelo en Virtools
43
En la pestaña Hierarchy Manager se pueden modificar las relaciones entre las
piezas. En este caso, cada letra tiene dos elementos. Uno es el frame, que tiene el
sufijo “_origen” y muestra una cruz como icono, y el otro es la pieza 3D, que viene
representada con un cubo.
Así, cada frame será el padre de su propia pieza 3D y de otros frames según
corresponda el movimiento.
Figura 43. Esquema de ejes y jerarquías de la fresadora Kondia SEASKA
En la Figura 43 se muestra un esquema que muestra la estructura cinemática de la
pieza y su correspondencia en su modelo en Virtools. Hay que tener en cuenta que el
sistema de ejes que utiliza Virtools es tal que XZ forman el plano horizontal, mientras
que Y es el plano vertical. Durante todo el apartado el sistema de ejes que se nombra
es el de la MH, es decir, el mostrado en la figura anterior.
La generación de movimientos se realiza mediante scripts asociados a los frames.
Los bloques, o Building Blocks (BB), tienen entradas y salidas de activación
(izquierda y derecha) y de información (arriba y abajo).
En el ejemplo de la Figura 44 se muestra el BB
que nos permite activar las salidas en función de
si un número (X) es mayor o menor que otros
dados. A su vez, en la salida de información
(abajo) se devuelve el número X o el valor de uno
de los límites, en función si estos se han
sobrepasado por exceso o por defecto.
Figura 44. Threshold Building Block
44
Este es solamente en ejemplo y se recomienda utilizar la ayuda para descubrir las
funciones y la configuración de los BB.
Los BB pueden ser agrupados en Behaviour Graphs (BG), lo que es muy útil a la hora
de realizar grandes configuraciones de bloques. Los BG pueden ser configurados para
que tengan tantas entradas y salidas, de accionamiento o información, como se
necesite.
A continuación se realiza una breve descripción del script asociado al frame
“E_origen”, que se mueve a lo largo del eje X.
En la Figura 45 se puede observar que el script está formado por 3 BG. El primero
comprueba si el movimiento se ha completado y en tal caso manda la información
correspondiente, el segundo es el que realiza el movimiento, mientras que el tercero
muestra la velocidad en dirección X de la herramienta a tiempo real.
En la Figura 46 se muestra el BG, que a su vez contiene distintos BG.
Figura 45. Script del movimiento en el eje X, perteneciente al frame E_origen
Figura 46. Mov X Behaviour Graph.
Para completar la ilustración, se muestra en la figura siguiente el contenido del BG
“Movimiento”. En él, además de distintos BB, se pueden observar bloques de
“operaciones de parámetros” como pueden ser tomar el valor absoluto o realizar la
división de un número. Estos bloques solamente contienen entradas y salidas de
información.
45
Figura 47. Movimiento Behaviour Graph
En la Figura 45 se muestran los 5 scripts de los que consta la composición. Tres de
ellos son de movimientos lineales (uno por cada eje), el cuarto es el que muestra la
posición de la herramienta y el quinto es el que intercambia la información con la
aplicación creada en Visual Studio.
La información numérica entre los distintos Scripts se intercambian utilizando
atributos y atajos (Shortcuts).
Los atributos se gestionan desde la pestaña Attribute Manager, cada uno está
asociado a uno o varios elementos de la composición (por ejemplo un frame) pudiendo
tener distintos valores para cada elemento. Es decir, si se crea un atributo LimSup, este
puede tener distinto valor dependiendo del elemento que lleve asociado. Esto se
puede observar en la Figura 48. Para cambiar el valor de un atributo en un script se
utiliza el BB “Set Attribute”, y se cambiará el atributo del elemento al que esté
asociado el script que lo contenga.
Figura 48. Atributo asociado a distintos frames con distintos valores.
Los atajos son elementos muy simples pero muy útiles. Se quiere utilizar el valor de
un parámetro en un mismo script sin tener que llevar una línea de unión, y también se
46
puede utilizar en distintos scripts. Para poner un atajo, hay que copiar el parámetro
(copy) y pegarlo como atajo (Paste as Shortcut). Los iconos que muestran un atajo son
los siguientes:
Representa que ese parámetro tiene un atajo asociado. Es el origen del atajo.
El valor del parámetro tiene origen en ese mismo script. Se puede encontrar
el origen utilizando la opción “Go to Shortcut Source”.
El valor del parámetro tiene origen en otro script distinto. Se puede
encontrar el origen utilizando la opción “Go to Shortcut Source”.
3.1.2 Visual Studio 2013
El Visual Studio es un entorno de desarrollo integrado para crear aplicaciones para
Windows, Android e iOS, además de aplicaciones web y servicios de nube.
A continuación se muestra una vista general del Visual Studio, donde se puede
apreciar el formulario realizado y distintas opciones que nos da el entorno.
Figura 49. Vista general del Visual Studio 2013
En el centro de la imagen está situado el formulario. Muestra el aspecto que tiene la
aplicación, y en él se pueden introducir multitud de elementos presentes en la Caja de
herramientas, tales como botones, cuadros de texto o ventanas adicionales como
puede ser considerado el objeto Virtools.
Cada uno de los objetos introducidos lleva asociado un código programable al que
se accede sin más que haciendo doble click en el propio objeto.
Para el proyecto se ha elegido el lenguaje de programación Visual Basic. Es un
lenguaje sencillo y muy intuitivo, por lo que se puede utilizar sin tener unos grandes
conocimientos de programación.
47
Figura 50. Vista general de la aplicación
En la figura anterior se pueden ver las distintas partes de la aplicación. El cuadro
principal sería el objeto Virtools, donde se aprecia el modelo y posee los
comportamientos explicados en el apartado anterior. A la derecha se muestran los
botones para seleccionar la composición, cargar el código de control numérico que se
desea simular y otro botón para comenzar la simulación (Leer). Además se añaden en
la parte inferior botones para reiniciar la composición y para salir de la aplicación.
En azul aparecen distintos cuadros de texto que se han utilizado para realizar
análisis de tiempos del programa.
3.1.3 Intercomunicación Virtools-Aplicación
El flujo de información es el mostrado en la Figura 32. Visual Basic procesa el
archivo de texto y envía a Virtools la información requerida para el movimiento, más
concretamente, manda la posición final a la que debe llegar la herramienta y el vector
velocidad correspondiente. Mientras que Virtools manda la información de la posición
de la herramienta cuando ha finalizado la instrucción recibida.
3.1.3.1 Envío de información Visual Basic  Virtools
Para poder enviar mensajes desde VB a Virtools, una vez cargada la composición en
la aplicación, hay que usar los siguientes métodos en el programa [24]
- BroadcastMessage (NombreMensaje)
Crea el mensaje, cuyo nombre será el de la variable NombreMensaje.
-AttachParamToMessage (Texto)
Se adjunta al mensaje la cadena de texto contenida en la variable Texto.
48
-AttachIntParamToMessage (Nentero)
Se adjunta al mensaje el número entero contenido en la variable Nentero.
-AttachFloatParamToMessage (Nreal)
Se adjunta al mensaje el número real contenido en la variable Nreal.
-ValidateMessageWithParams ( )
Se envía el mensaje con los parámetros adjuntos.
Los parámetros llegarán en el mensaje según el orden que se hayan introducido en
la programación, por lo que es muy importante tenerlo en cuenta.
Para que el mensaje sea recibido por la composición Virtools, esta tiene que tener
un script con los siguientes BB:
Wait Message, activa la salida
(out) si el mensaje recibido es el
señalado en “Message”
Figura 51. Wait Message BB
Get Message Data: Puesto a
continuación de “Wait Message”
obtiene los parámetros adjuntos
al mensaje que se pueden utilizar
en el resto del Script mediante las
variables de salida del BB
Figura 52. Get Message Data BB
El bloque “Wait Message” permanece a la espera de un mensaje. Cuando llegue un
mensaje a la composición cuyo nombre coincida con el especificado en su parámetro
de entrada, se activará la salida, que activará el siguiente bloque que será un “Get
Message Data”, el cual permite obtener los parámetros adjuntos al mensaje, que
saldrán como parámetros de salida y podrán ser utilizados en bloques posteriores.
En la Figura 53, se muestran ambos BB, en los que se puede apreciar que el
mensaje que tiene que llegar es “POSICION” y que el mismo contiene 10 parámetros
asociados (5 posiciones y 5 velocidades). También se puede observar que se han
utilizado atajos para usar esos valores en los diferentes scripts. El primer elemento de
salida de información indica el componente que envía el mensaje (sender) y viene
indicado con una S. En este caso se aprecia perfectamente, ya que no tiene ningún
atajo asociado.
49
Figura 53. Script en el que se recibe el mensaje enviado por VB
3.1.3.2 Envío de información Virtools  Visual Basic
Cuando la composición termina de realizar el movimiento indicado, esta tiene que
dar conocimiento a VB. Para ello se manda un mensaje utilizando el BB “Fire Virtools
Event”. Este consta de dos elementos de entrada. El primero es el nombre del mensaje
y el segundo será un dato asociado. Ambos serán cadenas de texto (string).
Figura 54. Fire Virtools Event Building Block
En este caso, el nombre del mensaje es TERMINADO y el dato era la posición de la
herramienta, dada por un vector convertido a cadena de texto (esta transformación la
realiza Virtools automáticamente).
Para recibir el mensaje en VB hay que introducir en el programa el “VirtoolsEvent”,
que se puede encontrar dentro de los eventos que contiene el objeto Virtools
introducido en el formulario. Este evento lleva asociada una subrutina, en la cual hay
dos elementos principales: “e.eventName” y “e.eventData”.
Cada vez que Virtools manda un mensaje, estas dos variables toman los valores del
nombre y los datos enviados. Así, se puede introducir una condición en función del
nombre del mensaje para asociar a ella las acciones requeridas. A continuación se
muestra un ejemplo extraído directamente de la aplicación. La subrutina solamente
realizará alguna acción si “e.eventName” es RECIBIDO o TERMINADO, y la acción será
distinta en cada caso.
Private Sub AxXEPlayer1_VirtoolsEvent(sender As Object, e As
AxXEPlayerActiveX._IXEPlayerEvents_VirtoolsEventEvent) Handles
AxXEPlayer1.VirtoolsEvent
Select Case e.eventName
Case "RECIBIDO"
Momento = Date.Now.ToString("ss,fff")
PosReport = PosReport & "Recibido" & vbTab & Momento & vbCrLf
Case "TERMINADO"
VectorTerminado = e.eventData.Split(",")
terminado = 1
End Select
End Sub
50
3.2 Utilización
Como se verá en el apartado 3.3, únicamente están integrados los movimientos
rectilíneos G0 y G1. Para ver la simulación de estos movimientos hay que seguir los
siguientes pasos una vez abierta la aplicación:
1. Puslar el botón “Abrir .cmo” y elegir la composición Virtools que corresponda.
Figura 55. Primera vista de la aplicación VB una vez abierta
2. Pulsar “Cargar CN” y elegir el archivo de texto que contenga el código de control
numérico. Esto activará el botón “Leer”, que hasta ahora permanecía gris.
Figura 56. Vista de la aplicación VB después de cargar el modelo Virtools
3. Pulsar el botón “Leer” y comenzará la simulación.
Figura 57. Aplicación VB con la composición Virtools y el archivo de CN cargados.
51
4. Una vez terminada la simulación, se pueden ver tiempos de funcionamiento en
los cuadros azules. Estos tiempos se utilizan para estudiar el comportamiento
del programa y se presentan en el apartado 3.3. Funcionamiento.
Figura 58. Aplicación VB con la simulación finalizada
Para realizar otra simulación, basta con pulsar el botón Reset y volver a seguir los
mismos pasos.
3.3 Funcionamiento
La programación de VB consta de 13 subrutinas, de las cuales las 5 recuadradas son
las que intervienen en el movimiento, mientras que en Virtools hay 5 scripts, de los
cuales todos, excepto Mostrar_posicion, intervienen en el movimiento.
Figura 59. Subrutinas del programa VB
Figura 60. Scripts de Virtools
Momento en el
que lee la línea
de CN
Momentos de
Envío, Recibido
y Terminado
Tiempo que debería
durar cada movimiento
(distancia / velocidad)
52
Una vez abierta la aplicación e iniciado el programa de leer el código de control
numérico, el funcionamiento es el mostrado en la Figura 61.
En ella se muestran en los cuadros en azul con las esquinas redondeadas las
distintas subrutinas que entran en acción cuando se mueve la MH y en rojo con las
esquinas en ángulo los scripts de Virtools. Las flechas indican la llamada desde una
subrutina o script a otro, siendo negras las que pasan de la aplicación VB a Virtools o
viceversa.
Figura 61. Diagrama de funcionamiento de subrutinas y scripts.
Una vez implementados los movimientos rectilíneos G0 y G1 se probó la aplicación
y se vio una clara falta de fluidez entre los movimientos. Es decir, una vez comenzado
53
el movimiento rectilíneo, este es continuo, pero desde que un movimiento termina
hasta que empieza el siguiente la herramienta permanece en el sitio un tiempo
bastante apreciable. Este hecho hace que la simulación no sea la deseada. Por ello se
realizó un estudio de tiempos introduciendo en la programación la instrucción
Date.Now.ToString("ss,fff") que devuelve el tiempo hasta los milisegundos.
Para la realización del estudio, se introdujo la instrucción inmediatamente después
de leer la línea del código de control numérico, así la diferencia entre una lectura de
línea y la siguiente será el tiempo utilizado en ese movimiento. Con la comparación de
estos tiempos se pretendía encontrar un patrón que se repitiera para poder solucionar
la lentitud del proceso.
El programa introducido (G0-G1_plus.txt) para el estudio es el siguiente:
1 N10 G0 G97 X330 Y220 Z510 F80 S1000 T1 M03
2 N20 G0 X-330
3 N10 G0 G97 X31 Z0.6 F50 S1000 T1 M03
4 N20 G1 X0
5 N30 G0 X32 Z2
6 N30 G0 Y32 Z2
7 N40 G0 X40 Z50
8 N50 G1 Y10 Z-1 F10
9 N60 G1 X10 Z-11 F100
10 N40 G0 X40 Z50
11 G91 G1 Y20 F200
12 G91 G1 Z20 F200
13 G90 G1 X230 F250
14 N30 G0 Y-220
15 N40 G0 Z0.5
16 N50 G1 X10 Z5 F80
17 N60 G1 Y10 Z26
18 N70 G2 X14 Z10 I5 K0
19 N80 G1 Y14 Z69 F100
20 N50 G0 X330 Y220 Z510
21 N60 G0 Z0
22 N90 G3 X20 Y31.126 I-3 K-5.196
23 N100 G1 X20 Y200 Z50
24 N110 G1 X25 Y100 Z100
25 N120 G1 X30 Z42
26 N60 G0 X0
27 N70 G0 Y0
28 N80 G0 Z200
29 M30
Se han numerado las líneas para la nomenclatura posterior de los gráficos
Se realizan 10 ejecuciones seguidas del código (tomando los datos y pulsando el
botón Reset después de cada ejecución) y, primeramente, se observan los tiempos
totales.
54
Figura 62. Tiempos totales de 10 ejecuciones del programa G0-G1_plus.txt
Lo primero que se observa es la gran diferencia entre unas ejecuciones y otras. Esto
hace indicar que puede haber una cierta aleatoriedad en el comportamiento de la
aplicación. Para realizar un análisis más a fondo, se tomaron los tiempos de ejecución
de cada línea del código de CN. Se pueden ver los distintos tiempos en la Figura 63.
En el eje horizontal aparecen cada una de las instrucciones del código del CN,
mientras que el eje Y señala el tiempo, en segundos, que transcurre desde que la
aplicación lee esa línea hasta que lee la siguiente.
En la leyenda se pueden observar las 10 ejecuciones, desde ej1 hasta ej10.
El área azul claro (Treal) es el tiempo que debería tardar la herramienta en realizar el
movimiento, es decir, la distancia que debe recorrer entre la velocidad de
desplazamiento (ya que son desplazamientos rectos).
En amarillo se ha hecho una envolvente de los tiempos máximos, mientras que en
negro se muestra la envolvente mínima. Esta última casi no se aprecia, ya que la
diferencia con el área Treal es muy pequeña.
Los movimientos G2 y G3 no están programados. Si aparecen se salta esa línea, por
ello el tiempo es cero.
Figura 63. Gráfico de tiempos de cada línea de código
55
Lo que se puede concluir de este gráfico es que no hay ninguna instrucción en
concreto que sea especialmente lenta. Basta con seguir cualquiera de las ejecuciones
para ver este hecho.
Comparando la envolvente máxima y los tiempos de movimiento (Treal) de las
ejecuciones (Figura 64), se puede concluir que la lentitud del proceso es
independiente del tiempo empleado en realizar movimiento en sí. Todas las
instrucciones (excepto las que no generan movimiento, G2, G3, M30) tienen más de un
segundo de diferencia en alguna ocasión.
Figura 64. Diferencias entre la envolvente máxima y Treal de las 10 ejecuciones de G0-G1_plus.txt
Como se ha visto en el esquema de la Figura 61, entre la lectura de una instrucción
y la siguiente se realizan distintos procesos. Para realizar en distintas fases del proceso
se incluyeron toma de tiempos en distintos lugares de la aplicación de VB.
Los datos de estos dos últimos gráficos se pueden consultar en el Anexo A.
Se toma el mismo programa de control numérico que anteriormente, pero se
eliminan las instrucciones G2 y G3, para que la visión del conjunto sea más clara. Se
realiza una ejecución del mismo para el estudio descrito a continuación.
1 N10 G0 G97 X330 Y220 Z510 F80 S1000 T1 M03
2 N20 G0 X-330
3 N10 G0 G97 X31 Z0.6 F50 S1000 T1 M03
4 N20 G1 X0
5 N30 G0 X32 Z2
6 N30 G0 Y32 Z2
7 N40 G0 X40 Z50
8 N50 G1 Y10 Z-1 F10
9 N60 G1 X10 Z-11 F100
10 N40 G0 X40 Z50
11 G91 G1 Y20 F200
12 G91 G1 Z20 F200
13 G90 G1 X230 F250
14 N30 G0 Y-220
15 N40 G0 Z0.5
16 N50 G1 X10 Z5 F80
17 N60 G1 Y10 Z26
18 N80 G1 Y14 Z69 F100
19 N50 G0 X330 Y220 Z510
56
20 N60 G0 Z0
21 N100 G1 X20 Y200 Z50
22 N110 G1 X25 Y100 Z100
23 N120 G1 X30 Z42
24 N60 G0 X0
25 N70 G0 Y0
26 N80 G0 Z200
27 M30
28 EndOfStream (La aplicación detecta el final del documento y lo cierra)
Los instantes que se consideraron en la toma de tiempos fueron los siguientes:
1. Leer: La aplicación VB lee la línea del .txt
2. Envío: La aplicación VB envía la información a Virtools
3. Recibido: Virtools recibe el mensaje y manda un VirtoolsEvent de forma
inmediata. El momento mostrado es en el que la aplicación VB recibe ese
VirtoolsEvent. Este evento Virtools se añade únicamente para ver el tiempo
que transcurre entre que el mensaje va y vuelve, no tiene aplicación en el
movimiento y por ello no aparece en la Figura 61.
4. Mov Terminado: La aplicación VB recibe el VirtoolsEvent con la nueva
posición después de que el movimiento haya acabado.
El funcionamiento deseado daría como resultado que los tres primeros puntos
(Leer, Envío, Recibido) son instantáneos, y por lo tanto indistinguibles en el gráfico
siguiente, y desde el punto 3 al 4 transcurre el tiempo que la herramienta se ha estado
moviendo.
Figura 65. Estudio de tiempos de envío y recepción de información entre VB y Virtools
57
En la Figura 65 se observan, para cada instrucción, los 4 momentos indicados. Así se
puede ver como los momentos Leer y Envío suceden siempre en el mismo instante, ya
que todas las señales verdes están superpuestas en las negras. Lo mismo ocurre
cuando la aplicación VB recibe el evento de “Movimiento terminado”, el desfase entre
ese instante y la lectura de la siguiente línea es inapreciable o incluso nulo, ya que se
sitúan en la misma horizontal. Los datos numéricos se pueden consultar en el Anexo B.
No sucede así con los instantes de Envío y Recibido. Se han señalado con cuadros
naranjas tres ejemplos en los que entre un momento y otro transcurren más de tres
segundos. Para comprobar que la secuencia entre uno y otro no puede ser más simple,
se muestra a continuación:
1. Envío del mensaje desde VB a Virtools. Subrutina Posicion()
A continuación se muestran las líneas de código necesarias para
crear el mensaje, introducir los datos y enviarlo. La variable
“Momento” toma la hora y la variable “PosReport” la almacena para
mostrarla después en el cuadro de texto.
Me.AxXEPlayer1.BroadcastMessage("POSICION")
Me.AxXEPlayer1.AttachFloatParamToMessage(X)
Me.AxXEPlayer1.AttachFloatParamToMessage(Y)
Me.AxXEPlayer1.AttachFloatParamToMessage(Z)
Me.AxXEPlayer1.AttachFloatParamToMessage(A)
Me.AxXEPlayer1.AttachFloatParamToMessage(C)
Me.AxXEPlayer1.AttachFloatParamToMessage(Vx)
Me.AxXEPlayer1.AttachFloatParamToMessage(Vy)
Me.AxXEPlayer1.AttachFloatParamToMessage(Vz)
Me.AxXEPlayer1.AttachFloatParamToMessage(Va)
Me.AxXEPlayer1.AttachFloatParamToMessage(Vc)
Me.AxXEPlayer1.ValidateMessageWithParams()
Momento = Date.Now.ToString("ss,fff")
PosReport = PosReport & "Envío" & vbTab & Momento & vbCrLf
2. Recepción del mensaje en Virtools y envío del evento Virtools
Figura 66. BBs para la recepción del mensaje POSICION y el envío del evento Virtools RECIBIDO
3. Recepción del evento Virtools y toma de tiempo
Se recibe el evento y se comprueba el nombre “RECIBIDO”. En ese
caso, se toma el dato del tiempo igual que en el caso anterior.
Private Sub AxXEPlayer1_VirtoolsEvent(sender As Object,…
Select Case e.eventName
Case "RECIBIDO"
Momento = Date.Now.ToString("ss,fff")
PosReport = PosReport & "Recibido" & vbTab & Momento &
Case "TERMINADO"
VectorTerminado = e.eventData.Split(",")
terminado = 1
End Select
58
Con los datos de la Figura 65 se puede descartar que el problema esté en la
aplicación de VB, ya que cuando esta se ejecuta y no hay intercambio de información
con Virtools los tiempos son correctos.
Las siguientes opciones son que falle el programa de Virtools o la comunicación VB
con Virtools.
Para comprobar cuál de las dos es la problemática (o ver si son ambas), se recurre a
introducir un texto en la programación Virtools. El texto será verde y con la indicación
“TERMINADO” cuando el movimiento rectilíneo de una instrucción haya finalizado y el
evento Virtools se haya mandado, mientras que el texto será naranja y con la palabra
“RECIBIDO” cuando Virtools reciba el mensaje POSICION de VB. Es una forma
cualitativa de conocer en qué momento llega el mensaje a Virtools, se opta por esta
opción por si sencillez.
Figura 67. Programación de los textos TERMINADO y RECIBIDO en Virtools
En un funcionamiento correcto, una vez que la aplicación comienza a leer el código
de control numérico, el movimiento de la pieza debería ser continuo y el texto
RECIBIDO debería estar siempre visible salvo fracciones muy pequeñas de tiempo que
cambiaría al texto TERMINADO (entre una instrucción y otra) y que serían casi
imperceptibles. Una vez completados todos los movimientos del archivo CN, se
mostraría TERMINADO.
Figura 68. Textos TERMINADO y RECIBIDO introducidos en Virtools
En la Figura 68 se muestran los textos descritos en el centro de la imagen. Se puede
comprobar que en el caso de TERMINADO (izquierda) las velocidades que se muestran
en rojo en la parte superior izquierda son nulas, mientras que en el caso RECIBIDO
(imagen derecha) las velocidades son distintas de cero.
59
Se comprueba que en el mismo instante que aparece RECIBIDO la herramienta se
mueve, mientras que cuando esta se para, aparece TERMINADO. Como el cambio de
texto se realiza después de haber recibido o mandado la información, se puede
concluir que el programa de Virtools no hace más lento el proceso.
3.4 Conclusiones y posible solución
Con los datos relatados en el apartado 3.2, se puede comprobar como lo que
produce la lentitud de la ejecución es el envío o la recepción de información por parte
de VB, un estudio más en profundidad podría aclarar si el problema está en una de
esas acciones o en ambas. En cualquier caso, las dos son necesarias para el
funcionamiento de la aplicación, por lo que el problema es inevitable.
Por otro lado, cabe recalcar que tanto el programa VB y el creado en Virtools, por
separado, funcionan correctamente.
Después de lo visto anteriormente, una posible solución sería crear un programa
enteramente con Virtools. Esta opción se descarta debido a que la gran cantidad de
trabajo que supondría sobrepasar por mucho el tiempo razonable a dedicar en un
Proyecto de fin de carrera.
60
4 Desarrollo basado en CATIA v5
Como alternativa de simulación al desarrollo explicado en el punto anterior, se
estudió la utilización de CATIA v5, ya que contiene unos módulos de mecanizado y
simulación que permiten realizar programas completos de mecanizado de una pieza y
su posterior visualización asignando un máquina de control numérico.
Figura 69. Módulos de mecanizado y simulación del mecanizado en CATIA v5
Viendo las distintas opciones que ofrece el programa, se decide realizar los
siguientes pasos:
1. Modelización de la máquina Kondia SEASKA para su utilización en CATIA
2. Creación de una pieza que muestre las posibilidades de la máquina creada y
hacer su programa de mecanizado.
3. Simular el programa de mecanizado y estudiar los resultados.
Los módulos de mecanizado permiten programar las funciones necesarias para
conseguir la pieza diseñada en CATIA en función de la máquina que se elija. Esta puede
ser un torno (Lathe Machining), una fresadora típica de tres ejes (Prismatic Machining),
centros de mecanizado de varios ejes (Surface Machining), o incluso la utilización de
impresoras 3D (STL Rapid Protopyping) [25].
Por otro lado, se puede construir una máquina de control numérico (NC Machine
Tool Builder) que permita una simulación de la fabricación de la pieza (NC Machine
Tool Simulation).
A lo largo de este capítulo se explicará la construcción de la fresadora Kondia
SEASKA partiendo de la modelización realizada anteriormente (capítulo 2.5), así como
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES
MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES

Más contenido relacionado

La actualidad más candente

Las 5 reglas de oro de la electricidad 4
Las 5 reglas de oro de la electricidad 4Las 5 reglas de oro de la electricidad 4
Las 5 reglas de oro de la electricidad 4federicoblanco
 
Resortes helicoidales, planos y tornillos de potencia
Resortes helicoidales, planos y tornillos de potenciaResortes helicoidales, planos y tornillos de potencia
Resortes helicoidales, planos y tornillos de potenciaCamilo Perez
 
PRC-SST-019 Procedimiento Seguro de Trabajo en Alturas.docx
PRC-SST-019 Procedimiento Seguro de Trabajo en Alturas.docxPRC-SST-019 Procedimiento Seguro de Trabajo en Alturas.docx
PRC-SST-019 Procedimiento Seguro de Trabajo en Alturas.docxANDRESSAUL
 
Elementos de diseño mecánico
Elementos de diseño mecánicoElementos de diseño mecánico
Elementos de diseño mecánicoyanetzis
 
Exposicion arnes y linea de vida
Exposicion arnes y linea de vidaExposicion arnes y linea de vida
Exposicion arnes y linea de vidaDiana Giraldo
 
Mi simulador obdii_2018_marzo_2018--34 pags
Mi simulador obdii_2018_marzo_2018--34 pagsMi simulador obdii_2018_marzo_2018--34 pags
Mi simulador obdii_2018_marzo_2018--34 pagsjoaquinin1
 
Manual usuario mini splits inverter
Manual usuario mini splits inverterManual usuario mini splits inverter
Manual usuario mini splits inverterEddy Lopez
 
Generalidades de soldadura y diseño de juntas
Generalidades de soldadura y diseño de juntasGeneralidades de soldadura y diseño de juntas
Generalidades de soldadura y diseño de juntasNatalia Urrego Ospina
 
solid-works-para-dibujo-y-diseno-mecanico
solid-works-para-dibujo-y-diseno-mecanicosolid-works-para-dibujo-y-diseno-mecanico
solid-works-para-dibujo-y-diseno-mecanicoCuitlahuac Huerta Rdz
 
Deformación y Esfuerzo.
Deformación y Esfuerzo. Deformación y Esfuerzo.
Deformación y Esfuerzo. Rizcala
 

La actualidad más candente (20)

Ejercicios auto cad-libre
Ejercicios auto cad-libreEjercicios auto cad-libre
Ejercicios auto cad-libre
 
Tipos de leva
Tipos de levaTipos de leva
Tipos de leva
 
Ejercicio de Vistas
Ejercicio de VistasEjercicio de Vistas
Ejercicio de Vistas
 
Las 5 reglas de oro de la electricidad 4
Las 5 reglas de oro de la electricidad 4Las 5 reglas de oro de la electricidad 4
Las 5 reglas de oro de la electricidad 4
 
Resortes helicoidales, planos y tornillos de potencia
Resortes helicoidales, planos y tornillos de potenciaResortes helicoidales, planos y tornillos de potencia
Resortes helicoidales, planos y tornillos de potencia
 
PRC-SST-019 Procedimiento Seguro de Trabajo en Alturas.docx
PRC-SST-019 Procedimiento Seguro de Trabajo en Alturas.docxPRC-SST-019 Procedimiento Seguro de Trabajo en Alturas.docx
PRC-SST-019 Procedimiento Seguro de Trabajo en Alturas.docx
 
Elementos de diseño mecánico
Elementos de diseño mecánicoElementos de diseño mecánico
Elementos de diseño mecánico
 
Herramientas de mano
Herramientas de manoHerramientas de mano
Herramientas de mano
 
Exposicion arnes y linea de vida
Exposicion arnes y linea de vidaExposicion arnes y linea de vida
Exposicion arnes y linea de vida
 
Mi simulador obdii_2018_marzo_2018--34 pags
Mi simulador obdii_2018_marzo_2018--34 pagsMi simulador obdii_2018_marzo_2018--34 pags
Mi simulador obdii_2018_marzo_2018--34 pags
 
Izaje de cargas
Izaje de cargasIzaje de cargas
Izaje de cargas
 
Manual usuario mini splits inverter
Manual usuario mini splits inverterManual usuario mini splits inverter
Manual usuario mini splits inverter
 
Generalidades de soldadura y diseño de juntas
Generalidades de soldadura y diseño de juntasGeneralidades de soldadura y diseño de juntas
Generalidades de soldadura y diseño de juntas
 
ACTIVIDAD DE TORNILLO
ACTIVIDAD DE TORNILLO ACTIVIDAD DE TORNILLO
ACTIVIDAD DE TORNILLO
 
5 reglas de oro
5 reglas de oro5 reglas de oro
5 reglas de oro
 
solid-works-para-dibujo-y-diseno-mecanico
solid-works-para-dibujo-y-diseno-mecanicosolid-works-para-dibujo-y-diseno-mecanico
solid-works-para-dibujo-y-diseno-mecanico
 
Juntas universales mecatronica
Juntas universales mecatronicaJuntas universales mecatronica
Juntas universales mecatronica
 
Perfil de Leva
Perfil de LevaPerfil de Leva
Perfil de Leva
 
Chavetas
ChavetasChavetas
Chavetas
 
Deformación y Esfuerzo.
Deformación y Esfuerzo. Deformación y Esfuerzo.
Deformación y Esfuerzo.
 

Similar a MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES

Robotica 299011
Robotica 299011Robotica 299011
Robotica 299011conchaes
 
Manual Qcad
Manual QcadManual Qcad
Manual Qcadgeosam
 
Manual de qcad
Manual de qcadManual de qcad
Manual de qcadMAPIVALLE
 
Diseño Estructural Integral Basado en Desempeño de Edificaciones en Concreto ...
Diseño Estructural Integral Basado en Desempeño de Edificaciones en Concreto ...Diseño Estructural Integral Basado en Desempeño de Edificaciones en Concreto ...
Diseño Estructural Integral Basado en Desempeño de Edificaciones en Concreto ...Ricardo Ramirez Figueroa
 
Costos y presupuestos_en_edificacion_-_capeco
Costos y presupuestos_en_edificacion_-_capecoCostos y presupuestos_en_edificacion_-_capeco
Costos y presupuestos_en_edificacion_-_capecoVictoria Salazar Bazan
 
Pic problemas resueltos
Pic problemas resueltos Pic problemas resueltos
Pic problemas resueltos GM Lamo
 
Matemática III - Facultad de Ingeniería Eléctrica y Electrónica de la Univers...
Matemática III - Facultad de Ingeniería Eléctrica y Electrónica de la Univers...Matemática III - Facultad de Ingeniería Eléctrica y Electrónica de la Univers...
Matemática III - Facultad de Ingeniería Eléctrica y Electrónica de la Univers...Andy Juan Sarango Veliz
 
Instalación electrica premontada micro basic v 2.1 sep 03
Instalación electrica premontada micro basic v 2.1 sep 03Instalación electrica premontada micro basic v 2.1 sep 03
Instalación electrica premontada micro basic v 2.1 sep 03Jose Manuel Mansilla Carrasco
 
2012 3633-anexo-4
2012 3633-anexo-42012 3633-anexo-4
2012 3633-anexo-4Memin345
 
Solucion problemas sist electrico freightliner
Solucion problemas sist electrico freightlinerSolucion problemas sist electrico freightliner
Solucion problemas sist electrico freightlinerVictor Rivas
 

Similar a MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES (20)

Galan diana2012
Galan diana2012Galan diana2012
Galan diana2012
 
Robotica 299011
Robotica 299011Robotica 299011
Robotica 299011
 
Manual Qcad
Manual QcadManual Qcad
Manual Qcad
 
Manual de qcad
Manual de qcadManual de qcad
Manual de qcad
 
Epanet informe-final
Epanet informe-finalEpanet informe-final
Epanet informe-final
 
Diseño Estructural Integral Basado en Desempeño de Edificaciones en Concreto ...
Diseño Estructural Integral Basado en Desempeño de Edificaciones en Concreto ...Diseño Estructural Integral Basado en Desempeño de Edificaciones en Concreto ...
Diseño Estructural Integral Basado en Desempeño de Edificaciones en Concreto ...
 
Costos y presupuestos_en_edificacion_-_capeco
Costos y presupuestos_en_edificacion_-_capecoCostos y presupuestos_en_edificacion_-_capeco
Costos y presupuestos_en_edificacion_-_capeco
 
Costos y presupuestos en edificacion capeco
Costos y presupuestos en edificacion   capecoCostos y presupuestos en edificacion   capeco
Costos y presupuestos en edificacion capeco
 
Robotc guia
Robotc guiaRobotc guia
Robotc guia
 
Pic problemas resueltos
Pic problemas resueltos Pic problemas resueltos
Pic problemas resueltos
 
Pic gama-media
Pic gama-mediaPic gama-media
Pic gama-media
 
Matemática III - Facultad de Ingeniería Eléctrica y Electrónica de la Univers...
Matemática III - Facultad de Ingeniería Eléctrica y Electrónica de la Univers...Matemática III - Facultad de Ingeniería Eléctrica y Electrónica de la Univers...
Matemática III - Facultad de Ingeniería Eléctrica y Electrónica de la Univers...
 
manual de Usuario Calener.pdf
manual de Usuario Calener.pdfmanual de Usuario Calener.pdf
manual de Usuario Calener.pdf
 
manual de Usuario Calener.pdf
manual de Usuario Calener.pdfmanual de Usuario Calener.pdf
manual de Usuario Calener.pdf
 
Instalación electrica premontada micro basic v 2.1 sep 03
Instalación electrica premontada micro basic v 2.1 sep 03Instalación electrica premontada micro basic v 2.1 sep 03
Instalación electrica premontada micro basic v 2.1 sep 03
 
2012 3633-anexo-4
2012 3633-anexo-42012 3633-anexo-4
2012 3633-anexo-4
 
Manual decimo sexta version muros no portantes
Manual decimo sexta version muros no portantesManual decimo sexta version muros no portantes
Manual decimo sexta version muros no portantes
 
Control microbasic version-3-02_jm
Control microbasic version-3-02_jmControl microbasic version-3-02_jm
Control microbasic version-3-02_jm
 
Maquinas ac liwschitz garik,
Maquinas ac liwschitz garik,Maquinas ac liwschitz garik,
Maquinas ac liwschitz garik,
 
Solucion problemas sist electrico freightliner
Solucion problemas sist electrico freightlinerSolucion problemas sist electrico freightliner
Solucion problemas sist electrico freightliner
 

Último

Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)ssuser563c56
 
tema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdftema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdfvictoralejandroayala2
 
Residente de obra y sus funciones que realiza .pdf
Residente de obra y sus funciones que realiza  .pdfResidente de obra y sus funciones que realiza  .pdf
Residente de obra y sus funciones que realiza .pdfevin1703e
 
Rendimiento-de-Maquinaria y precios unitarios para la construcción de una ma...
Rendimiento-de-Maquinaria y precios unitarios  para la construcción de una ma...Rendimiento-de-Maquinaria y precios unitarios  para la construcción de una ma...
Rendimiento-de-Maquinaria y precios unitarios para la construcción de una ma...RichardRivas28
 
Calavera calculo de estructuras de cimentacion.pdf
Calavera calculo de estructuras de cimentacion.pdfCalavera calculo de estructuras de cimentacion.pdf
Calavera calculo de estructuras de cimentacion.pdfyoseka196
 
Proyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctricaProyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctricaXjoseantonio01jossed
 
Falla de san andres y el gran cañon : enfoque integral
Falla de san andres y el gran cañon : enfoque integralFalla de san andres y el gran cañon : enfoque integral
Falla de san andres y el gran cañon : enfoque integralsantirangelcor
 
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIASTEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIASfranzEmersonMAMANIOC
 
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kVEl proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kVSebastianPaez47
 
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdfAnthonyTiclia
 
Introducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.pptIntroducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.pptEduardoCorado
 
presentacion medidas de seguridad riesgo eléctrico
presentacion medidas de seguridad riesgo eléctricopresentacion medidas de seguridad riesgo eléctrico
presentacion medidas de seguridad riesgo eléctricoalexcala5
 
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALCHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALKATHIAMILAGRITOSSANC
 
Curso Análisis Fisicoquímico y Microbiológico de Aguas -EAI - SESIÓN 5.pdf
Curso Análisis Fisicoquímico y Microbiológico de Aguas -EAI - SESIÓN 5.pdfCurso Análisis Fisicoquímico y Microbiológico de Aguas -EAI - SESIÓN 5.pdf
Curso Análisis Fisicoquímico y Microbiológico de Aguas -EAI - SESIÓN 5.pdfcesar17lavictoria
 
Seleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSeleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSaulSantiago25
 
nom-028-stps-2012-nom-028-stps-2012-.pdf
nom-028-stps-2012-nom-028-stps-2012-.pdfnom-028-stps-2012-nom-028-stps-2012-.pdf
nom-028-stps-2012-nom-028-stps-2012-.pdfDiegoMadrigal21
 
clases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfclases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfDanielaVelasquez553560
 
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptxguillermosantana15
 
CLASE - 01 de construcción 1 ingeniería civil
CLASE - 01 de construcción 1 ingeniería civilCLASE - 01 de construcción 1 ingeniería civil
CLASE - 01 de construcción 1 ingeniería civilDissneredwinPaivahua
 
sistema de construcción Drywall semana 7
sistema de construcción Drywall semana 7sistema de construcción Drywall semana 7
sistema de construcción Drywall semana 7luisanthonycarrascos
 

Último (20)

Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
 
tema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdftema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdf
 
Residente de obra y sus funciones que realiza .pdf
Residente de obra y sus funciones que realiza  .pdfResidente de obra y sus funciones que realiza  .pdf
Residente de obra y sus funciones que realiza .pdf
 
Rendimiento-de-Maquinaria y precios unitarios para la construcción de una ma...
Rendimiento-de-Maquinaria y precios unitarios  para la construcción de una ma...Rendimiento-de-Maquinaria y precios unitarios  para la construcción de una ma...
Rendimiento-de-Maquinaria y precios unitarios para la construcción de una ma...
 
Calavera calculo de estructuras de cimentacion.pdf
Calavera calculo de estructuras de cimentacion.pdfCalavera calculo de estructuras de cimentacion.pdf
Calavera calculo de estructuras de cimentacion.pdf
 
Proyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctricaProyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctrica
 
Falla de san andres y el gran cañon : enfoque integral
Falla de san andres y el gran cañon : enfoque integralFalla de san andres y el gran cañon : enfoque integral
Falla de san andres y el gran cañon : enfoque integral
 
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIASTEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
 
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kVEl proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
 
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
 
Introducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.pptIntroducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.ppt
 
presentacion medidas de seguridad riesgo eléctrico
presentacion medidas de seguridad riesgo eléctricopresentacion medidas de seguridad riesgo eléctrico
presentacion medidas de seguridad riesgo eléctrico
 
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALCHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
 
Curso Análisis Fisicoquímico y Microbiológico de Aguas -EAI - SESIÓN 5.pdf
Curso Análisis Fisicoquímico y Microbiológico de Aguas -EAI - SESIÓN 5.pdfCurso Análisis Fisicoquímico y Microbiológico de Aguas -EAI - SESIÓN 5.pdf
Curso Análisis Fisicoquímico y Microbiológico de Aguas -EAI - SESIÓN 5.pdf
 
Seleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSeleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusibles
 
nom-028-stps-2012-nom-028-stps-2012-.pdf
nom-028-stps-2012-nom-028-stps-2012-.pdfnom-028-stps-2012-nom-028-stps-2012-.pdf
nom-028-stps-2012-nom-028-stps-2012-.pdf
 
clases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfclases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdf
 
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx
 
CLASE - 01 de construcción 1 ingeniería civil
CLASE - 01 de construcción 1 ingeniería civilCLASE - 01 de construcción 1 ingeniería civil
CLASE - 01 de construcción 1 ingeniería civil
 
sistema de construcción Drywall semana 7
sistema de construcción Drywall semana 7sistema de construcción Drywall semana 7
sistema de construcción Drywall semana 7
 

MODELIZACIÓN DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES

  • 1. UNIVERSIDAD POLITÉCNICA DE MADRID ESCUELA TÉCNICA SUPERIOR DE INGENIEROS AERONÁUTICOS PROYECTO FIN DE CARRERA MODELIZACIÓN MEDIANTE REALIDAD VIRTUAL DE UNA FRESADORA DE CONTROL NUMÉRICO DE CINCO EJES UTILIZABLE EN SISTEMAS AUTOMATIZADOS DE FABRICACIÓN DEL SECTOR AERONÁUTICO Y AEROESPACIAL Autor: Fernando Aretio Zárate Director: Alfredo Sanz Lobera Madrid, Octubre de 2015
  • 2. 1 AGRADECIMIENTOS Se supone que este proyecto lo tenía que hacer yo solo, pero no ha sido posible. Durante este último año, y los tres anteriores, he tenido la suerte de estar rodeado de gente que me ha ayudado, aunque no siempre sean conscientes de ello, a seguir cumpliendo los pequeños objetivos hasta llegar aquí. Por ello, se lo quiero agradecer: A mi director de proyecto, Alfredo, por ayudarme en todo lo que ha estado en su mano. A mis amigos, porque ya sea en casa, en el bar, en clase o en la biblioteca; desde Madrid, Nájera, Bruselas o Arad; me sirven de apoyo en todo momento. A Bea, por estar ahí y por su cariño. A mi hermano, por estar siempre disponible. Y a mis padres, por confiar en mí, desde hace tantísimos años. “Prefiero caminar con una duda que con un mal axioma” Javier Krahe
  • 3. 2 Índice Índice _____________________________________________________________ 2 Lista de figuras _____________________________________________________ 4 Lista de tablas ______________________________________________________ 7 Resumen __________________________________________________________ 8 1 Introducción: Automatización y Realidad Virtual en Sistemas de Producción _ 9 1.1 Robots y Máquinas-Herramienta de Control Numérico ______________________ 10 1.1.1 Tipos de máquinas-herramienta y aplicaciones aeronáuticas _____________________ 12 1.1.2 Modos de funcionamiento ________________________________________________ 16 1.1.3 Características generales _________________________________________________ 16 1.2 Realidad virtual (VR) __________________________________________________ 20 1.2.1 Aplicaciones en ingeniería ________________________________________________ 21 1.2.2 Alternativas de implementación____________________________________________ 22 2 La Fresadora KONDIA SEASKA ______________________________________ 24 2.1 Introducción a las máquinas herramienta de 5 ejes _________________________ 25 2.2 Descripción general___________________________________________________ 27 2.3 Prestaciones_________________________________________________________ 29 2.4 Elementos principales. Control__________________________________________ 30 2.5 Modelización geométrica ______________________________________________ 32 2.5.1 Elementos principales y planos_____________________________________________ 32 2.5.2 Composición global______________________________________________________ 34 3 Desarrollo basado en Visual Basic y Virtools __________________________ 36 3.1 Modelización ________________________________________________________ 36 3.1.1 Virtools _______________________________________________________________ 37 3.1.2 Visual Studio 2013_______________________________________________________ 46 3.1.3 Intercomunicación Virtools-Aplicación_______________________________________ 47 3.2 Utilización __________________________________________________________ 50 3.3 Funcionamiento______________________________________________________ 51 3.4 Conclusiones y posible solución _________________________________________ 59 4 Desarrollo basado en CATIA v5 _____________________________________ 60 4.1 Modelización ________________________________________________________ 61 4.1.1 Construcción de la máquina _______________________________________________ 61 4.1.2 Pieza a mecanizar _______________________________________________________ 69 4.2 Utilización __________________________________________________________ 70 4.2.1 Instrucciones generales de mecanizado______________________________________ 71 4.2.2 Mecanizado de la pieza___________________________________________________ 77 4.3 Funcionamiento______________________________________________________ 94
  • 4. 3 4.3.1 Simulación de la eliminación de material_____________________________________ 94 4.3.2 Simulación con la máquina herramienta _____________________________________ 98 4.3.3 Utilización del programa de control numérico________________________________ 102 4.4 Conclusiones _______________________________________________________106 5 Conclusiones y desarrollos futuros _________________________________ 108 6 Referencias y bibliografía ________________________________________ 109 Apéndices________________________________________________________ 111 A. Datos de los gráficos del estudio de tiempos. Apartado 3.2. _________________111 B. Datos de los tiempos de envío de información. Figura 65___________________112 C. Listado de operaciones de mecanizado __________________________________113 D. Listado de herramientas ______________________________________________114 E. PLANOS DE LA FRESADORA KONDIA SEASKA _____________________________115
  • 5. 4 Lista de figuras Figura 1.Desplazamiento punto por punto..........................................................................................12 Figura 2. Desplazamiento paraxial.......................................................................................................13 Figura 3. Desplazamiento continuo .....................................................................................................13 Figura 4. Unión del tren de aterrizaje del Boeing 767 fabricado en titanio........................................14 Figura 5. Puerta de emergencia usada en aviación general ................................................................14 Figura 6. Panel de acceso fabricado con una MHCN ...........................................................................15 Figura 7. Compresor centrífugo montado en una MH de 5 ejes..........................................................15 Figura 8. Ejemplo de trayectoria transformada en movimiento de tres ejes[7]..................................18 Figura 9. Esquema de una máquina-herramienta de control numérico.............................................18 Figura 10. Esquema de un programa de control numérico .................................................................19 Figura 11. Procesos a realizar antes de la escritura del programa ......................................................19 Figura 12. Control de un eje mediante lazo cerrado...........................................................................20 Figura 13. Augmented Reality Guiding Process de la empresa ARSoft [12] ........................................21 Figura 14. Desarrollo de una fábrica virtual por parte de Ford [14]....................................................22 Figura 15. Vista general de la fresadora Kondia SEASKA [18]..............................................................24 Figura 16. Nomenclatura estándar de los ejes de una máquina herramienta [19].............................25 Figura 17. Máquina vertical. Tipo mesa/mesa. Herramienta: X, Z. Pieza: Y, A, C [19]........................26 Figura 18. Máquina VH. Tipo cabezal/mesa. Herramienta: X, Z, A. Pieza: Y, C [19]............................26 Figura 19. Máquina vertical. Tipo cabezal/cabezal. Herramienta: Z, B, A. Pieza: Y, X [19]..................27 Figura 20. Vista del esqueleto de la fresadora Kondia SEASKA con su esquema cinemático [18]......27 Figura 21. Acoplamiento directo de la herramienta............................................................................28 Figura 22. Transmisión por correas......................................................................................................28 Figura 23. Límites del giro basculante (eje A) de la fresadora Kondia SEASKA....................................28 Figura 24. Vista del controlador iTNC-530 [21]....................................................................................30 Figura 25. Ejemplo de modificación que realiza el TCPM [21].............................................................31 Figura 26. Componentes principales de la fresadora Kondia SEASKA .................................................32 Figura 27. Elementos que conforman el modelo de la fresadora Kondia SEASKA...............................33 Figura 28. Restricciones entre la base y el soporte de la mesa y las guías del movimiento en X........34 Figura 29.Restricciones entre: Soporte de mesa y mesa de balance. Guías en X y columna móvil.....35 Figura 30. Restricciones entre: Mesa basculante y mesa rotatoria. Columna móvil y cabezal ...........35 Figura 31. Vista de la aplicación VB con la composición Virtools cargada (cuadro azul).....................36 Figura 32. Diagrama de flujo de información de la aplicación.............................................................36 Figura 33. Vista general de Virtools ....................................................................................................38 Figura 34. Pestañas File y Resources de la barra de menú de Virtools................................................39 Figura 35. Pestañas Editors, Options y Help de la barra de menú de Virtools.....................................39 Figura 36. Pestaña 3D Layout de Virtools ...........................................................................................40 Figura 37. Pestaña Building Blocks de Virtools .....................................................................................40 Figura 38. Pestaña VirtoolsResources de Virtools ...............................................................................40 Figura 39. Pestaña Level Manager de Virtools.....................................................................................41 Figura 40. Pestaña Schematic de Virtools............................................................................................41 Figura 41. Fresadora Kondia SEASKA en Virtools.................................................................................42 Figura 42. Jerarquías del modelo en Virtools.......................................................................................42 Figura 43. Esquema de ejes y jerarquías de la fresadora Kondia SEASKA ...........................................43 Figura 44. Threshold Building Block.....................................................................................................43 Figura 45. Script del movimiento en el eje X, perteneciente al frame E_origen .................................44 Figura 46. Mov X Behaviour Graph.......................................................................................................44 Figura 47. Movimiento Behaviour Graph.............................................................................................45 Figura 48. Atributo asociado a distintos frames con distintos valores. ...............................................45
  • 6. 5 Figura 49. Vista general del Visual Studio 2013...................................................................................46 Figura 50. Vista general de la aplicación..............................................................................................47 Figura 51. Wait Message BB ................................................................................................................48 Figura 52. Get Message Data BB..........................................................................................................48 Figura 53. Script en el que se recibe el mensaje enviado por VB .......................................................49 Figura 54. Fire Virtools Event Building Block.......................................................................................49 Figura 55. Primera vista de la aplicación VB una vez abierta..............................................................50 Figura 56. Vista de la aplicación VB después de cargar el modelo Virtools.........................................50 Figura 57. Aplicación VB con la composición Virtools y el archivo de CN cargados. ...........................50 Figura 58. Aplicación VB con la simulación finalizada.........................................................................51 Figura 59. Subrutinas del programa VB ...............................................................................................51 Figura 60. Scripts de Virtools ...............................................................................................................51 Figura 61. Diagrama de funcionamiento de subrutinas y scripts.........................................................52 Figura 62. Tiempos totales de 10 ejecuciones del programa G0-G1_plus.txt .....................................54 Figura 63. Gráfico de tiempos de cada línea de código .......................................................................54 Figura 64. Diferencias entre la envolvente máxima y Treal de las 10 ejecuciones de G0-G1_plus.txt55 Figura 65. Estudio de tiempos de envío y recepción de información entre VB y Virtools...................56 Figura 66. BBs para la recepción del mensaje POSICION y el envío del evento Virtools RECIBIDO.....57 Figura 67. Programación de los textos TERMINADO y RECIBIDO en Virtools......................................58 Figura 68. Textos TERMINADO y RECIBIDO introducidos en Virtools.................................................58 Figura 69. Módulos de mecanizado y simulación del mecanizado en CATIA v5..................................60 Figura 70. Assembly Constrains Conversion en el módulo DMY Kinematics.......................................61 Figura 71. Ventana del menú de Assembly Constrains Conversion.....................................................62 Figura 72. Tipos de uniones en función de las restricciones seleccionadas ........................................62 Figura 73. Árbol del mecanismo SEASKA_mech ..................................................................................63 Figura 74. Ventana de edición de la unión responsable del eje C .......................................................64 Figura 75. Lista de los 5 comandos que manejan la fresadora Kondia SEASKA...................................65 Figura 76. Ventana Mechanism Analysis del mecanismo de la fresadora Kondia SEASKA..................65 Figura 77. Kinematics Simulation - SEASKA_mech...............................................................................65 Figura 78. Creación de la posición inicial de la fresadora Kondia SEASKA en CATIA v5.......................66 Figura 79. Crear el punto de montaje de la herramienta. NC Machine Tool Build..............................66 Figura 80. Punto de montaje de pieza .................................................................................................67 Figura 81. Modificar la posición del cambio de herramienta. NC Machine Tool Builder.....................67 Figura 82. Ventana para modificar los límites de movimiento. NC Tool Machine Build......................68 Figura 83. Velocidades y aceleraciones máximas. NC Machine Tool Builder ......................................68 Figura 84. Jog Mechanism en la fresadora Kondia SEASKA. NC Machine Tool Builder........................69 Figura 85. Pieza a mecanizar con la preforma de partida en amarillo transparente...........................70 Figura 86. Visión general del elemento Part Operation.......................................................................71 Figura 87 Pestañas de selección de máquina y ejes de la pieza ..........................................................72 Figura 88. Ventana para generar las trayectorias de transición de forma automática .......................73 Figura 89. Pestañas del Part Operatioin: Position, Simulation, Option y Collision checking ...............73 Figura 90. Menú de las operaciones auxiliares....................................................................................76 Figura 91. Operaciones de COPY y TRACUT.........................................................................................76 Figura 92. Ejes y planos principales de la pieza para la configuración del elemento Part Operation..77 Figura 93. Propiedades de la herramienta...........................................................................................78 Figura 94. Pestaña de geometría del Roughing.1 ................................................................................79 Figura 95. Pestaña de estrategia de mecanizado del Roughing.1........................................................80 Figura 96. Distintos tipos de trayectorias en un desbaste (Roughing) ................................................81 Figura 97. Opciones de la configuración radial de mecanizado...........................................................82 Figura 98. Opciones de Velocidad y Macros en Roughing.1................................................................82
  • 7. 6 Figura 99. Trayectorias de Roughing.1.................................................................................................83 Figura 100. Opciones del visionado de las trayectorias.......................................................................84 Figura 101. Ejemplo de colisión en una trayectoria.............................................................................85 Figura 102. Pestaña de geometría de Roughing.2 ...............................................................................85 Figura 103. Superficies creadas para el mecanizado entre álabes ......................................................86 Figura 104. Geometría de la instrucción Isoparametric_Sup1ABC......................................................87 Figura 105. Estrategia de mecanizado de Isoparametric_Sup1ABC ....................................................87 Figura 106. Estrategia radial de Isoparametric_Sup1ABC....................................................................88 Figura 107. Tipos de configuración del eje de la herramienta.............................................................89 Figura 108. Trayectorias de Isoparametric_Sup1ABC..........................................................................89 Figura 109. Macros de acercamiento y alejamiento............................................................................90 Figura 110. Ejes de la pieza y superficies a evitar (Check) del mecanizado de la superficie 6ª ...........91 Figura 111. Trayectorias de mecanizado de las superficies de la cavidad...........................................92 Figura 112. Operaciones de mecanizado en la parte superior ............................................................92 Figura 113. Posiciones de la herramienta en el mecanizado del extradós..........................................93 Figura 114. Trayectorias del mecanizado de los álabes.......................................................................93 Figura 115. Opciones de la simulación de eliminación de material.....................................................95 Figura 116. Ejemplo de colisión en la simulación con eliminación de material...................................96 Figura 117. Ejemplo de comparación entre la pieza de diseño y la mecanizada.................................96 Figura 118. Secuencia de arranque de material ..................................................................................97 Figura 119. Secuencia de dimensiones de la pieza por colores...........................................................98 Figura 120. Opciones de contacto y distancia en la simulación con máquina.....................................99 Figura 121. Analysis configuration.....................................................................................................100 Figura 122. Data Readout ..................................................................................................................100 Figura 123. Barra de control de la simulación con herramienta........................................................101 Figura 124. Ejemplo de colisión en la simulación de máquina ..........................................................101 Figura 125. Varios momentos de la simulación con máquina herramienta ......................................102 Figura 126. Generación del código APT .............................................................................................103 Figura 127. Muestra del código APT ..................................................................................................104 Figura 128. Selección de postprocesador en CATIA...........................................................................105 Figura 129. Vista general del programa WinPost ..............................................................................105 Figura 130. Árbol de operaciones importadas de un archivo APT.....................................................106
  • 8. 7 Lista de tablas Tabla 1. Conveniencia de la utilización de MHCN[6] ............................................................................17 Tabla 2. Fresadora Kondia SEASKA. Características técnicas................................................................29 Tabla 3. Medidas de la fresadora Kondia SEASKA ................................................................................33 Tabla 4. Listado de uniones entre elementos para la creación del mecanismo...................................63 Tabla 5. Límites de movimiento de la fresadora Kondia SEASKA .........................................................64 Tabla 6. Tabla de velocidades de mecanizado......................................................................................78 Tabla 7. Pestaña Tool Axis ....................................................................................................................88 Tabla 8. Datos de la gráfica de estudio de tiempos............................................................................111 Tabla 9. Datos de los tiempos de envío de información. Figura 65...................................................112
  • 9. 8 Resumen El presente proyecto tiene como objetivo el desarrollo de una aplicación de Realidad Virtual orientada a una fresadora de Control Numérico de cinco ejes de aplicación en la Industria Aeronáutica y Aeroespacial. En el primer capítulo, se presentan de manera general y a modo introductorio los elementos principales del proyecto, por un lado las Máquinas-herramienta de control numérico y por otro la Realidad Virtual. A continuación, en el apartado dos, se muestran las características de la fresadora que será objeto de modelización y simulación. Se trata de un centro de mecanizado vertical de cinco ejes denominado Kondia SEASKA. El siguiente capítulo versa sobre la utilización del programa Virtools y el lenguaje de programación Visual Basic para la creación de la aplicación de simulación. En él se puede encontrar tanto la presentación de Virtools y Visual Basic, como la descripción del trabajo realizado con estas herramientas. A continuación, se presentará un desarrollo alternativo de mediante la utilización de CATIA v5, más concretamente con los módulos de mecanizado que ofrece. Esta opción permitirá del desarrollo de un programa de mecanizado a partir de una pieza diseñada, la creación de la Máquina-herramienta y si simulación conjunta. Por último, en el capítulo 5, se hace una reflexión sobre el trabajo realizado, las conclusiones obtenidas y se presentan posibles desarrollos futuros a partir de este proyecto.
  • 10. 9 1 Introducción: Automatización y Realidad Virtual en Sistemas de Producción Todo proceso de fabricación es susceptible de ser automatizado reduciendo o eliminando la intervención humana directa sobre él. La automatización conlleva, por lo general, una inversión inicial relativamente elevada, cuya rentabilidad está supeditada, entre otros factores, a la correcta elección de los equipos a utilizar de acuerdo con el nivel de automatización deseado. Una de las ventajas que aporta la automatización de un proceso, es la obtención de unas piezas mejor acabadas con un menor número de rechazos, lo que supone una mayor rentabilidad. Este hecho es fundamental en una producción con unos niveles de exigencia elevados, tal y como sucede en la producción aeronáutica y aeroespacial. En contraposición, uno de los principales inconvenientes asociados a la automatización, aparece durante la fase de implantación del sistema, sobre todo si éste es complejo. Durante esta fase y en la etapa de puesta a punto normalmente aparecen situaciones no previstas, que en algunos casos pueden llegar a dar al traste, si no con la implantación, sí con las expectativas puestas en ella. En este sentido, las técnicas de simulación son herramientas de gran utilidad para detectar y/o corregir situaciones no deseadas, antes de que la implantación haya tenido lugar. La complejidad de los modelos de simulación empleados, suele ser inversamente proporcional a la facilidad de interpretación de los resultados obtenidos. En este punto aparece la Realidad Virtual como una herramienta que establece una interfaz entre los resultados generados por el modelo de simulación y la percepción sensorial del usuario que la utiliza, asemejando ésta a la percepción "real" que el sistema o proceso modelizado produce. De esta forma no se requiere del usuario conocimientos específicos acerca del funcionamiento del modelo o de la interpretación de sus resultados, ya que éstos son percibidos a través de los sentidos de manera análoga a la percepción real y pueden emplearse modelos de mayor complejidad. La utilización de equipos de Control Numérico (CN), tanto en Máquinas- Herramienta como Robots, elementos esenciales de todo sistema productivo automatizado, conlleva riesgos para los usuarios y para los propios equipos durante la fase de aprendizaje. La disponibilidad de modelos de simulación de equipos CN basados en Realidad Virtual permite minimizar estos riesgos incluso en la fase de aprendizaje. Asimismo supone un primer paso hacia la construcción de sistemas automatizados más complejos constituidos por varios equipos CN, tales como Células Flexibles o Sistemas Flexibles de Fabricación. En base a lo expuesto, el presente proyecto busca la obtención de un modelo virtual de una fresadora de Control Numérico Kondia SEASKA que pueda ser utilizado tanto para entrenamiento como para su inclusión en modelos de sistemas automatizados de mayor complejidad.
  • 11. 10 1.1 Robots y Máquinas-Herramienta de Control Numérico La máquina-herramienta (MH) ha jugado un papel fundamental en el desarrollo tecnológico del mundo. Gracias a la utilización de la MH se ha podido realizar de forma práctica, maquinaria de todo tipo que, aunque concebida y realizada, no podía ser comercializada por no existir medios adecuados para su construcción industrial[1]. En los sistemas de producción convencionales las MH del mismo tipo están agrupadas, siendo cada máquina manejada independientemente. Las operaciones de mecanización para la fabricación de una pieza se dividen en operaciones independientes, cada una de las cuales se puede realizar más eficientemente con una máquina en particular. Para lograr una mayor eficacia, muchos trabajos se organizan de tal manera que grupos de piezas que requieren operaciones similares se manufacturan en un grupo de máquinas localizadas adyacentemente. La conveniencia de realizar varias operaciones en una única MH, unido a numerosos y nuevos requerimientos que día a día aparecían, forzó la utilización de nuevas técnicas que permitiesen sustituir al operador humano. De esta forma se introdujo la Automática en los procesos de fabricación. Se entiende como automatización a la reducción o eliminación de la intervención humana directa sobre un proceso. La aparición de la automatización de procesos viene impuesta por diversas razones: - Necesidades de fabricar productos que no se podían conseguir en cantidad y calidad suficiente sin recurrir a la automatización del proceso de fabricación. - Necesidad de obtener productos hasta entonces imposibles o de muy difícil fabricación, por ser excesivamente complejos para ser controlados por un operador humano. - Necesidad de fabricar productos a precios suficientemente bajos. Inicialmente, el factor predominante que condicionó todo automatismo fue el aumento de la productividad. Posteriormente, debido principalmente a las nuevas necesidades de la industria, se han tenido en cuenta muchos más factores, entre los que destacan la precisión, la rapidez y la flexibilidad. Estas cuatro variables son las que se tienden a optimizar a la hora de diseñar dispositivos automáticos. Hacia 1942 surgió lo que podríamos llamar control numérico verdadero, y que apareció como una necesidad impuesta por la industria aeronáutica. La aparición del control numérico permitió por primera vez optimizar la flexibilidad, ya que era la mejor virtud de este nuevo automatismo. Se considera control numérico (CN) a todo dispositivo capaz de dirigir posicionamientos de un órgano mecánico móvil, en el que las órdenes relativas a los desplazamientos del móvil son elaboradas en forma totalmente automática a partir de
  • 12. 11 informaciones numéricas definidas, bien manualmente (funcionamiento semiautomático), bien por intermedio de un programa (funcionamiento automático). En general, con un CN pueden controlarse: - los movimientos de los carros o del cabezal. - el valor y el sentido de las velocidades de avance y de corte. - los cambios de herramienta, así como la de piezas. - las condiciones de funcionamiento de la máquina, en cuanto a su modo de trabajar o en cuanto a su estado de funcionamiento. Paralelamente, el CN se encarga de coordinar otras funciones que le son propias. Por ejemplo: - control de flujos de información. - control de la sintaxis de programación. - diagnóstico de su funcionamiento. Toda la información necesaria para la ejecución de una pieza constituye el programa, que es escrito en un código por medio de caracteres alfanuméricos. El CN ha estado desde sus inicios ligado a la aeronáutica. De hecho, el primer intento serio para obtener un verdadero CN se produjo hacia 1947 y partió de la necesidad de fabricar hélices de helicóptero de diferentes configuraciones. John T Parsons, dueño de la compañía Parsons, contrató a Frank Stulen quien desarrolló una fresadora controlada por tarjeta perforada a la que Parsons adaptó una "máquina de contar" IBM. Así las plantillas podían fabricarse en forma automática y más precisa debido a que el control numérico realizaba los cálculos y medidas. Dado el interés que suscitó esta técnica, la Fuerza Aérea de estados Unidos concedió un contrato al Instituto Tecnológico de Massachusetts (MIT) para su desarrollo. El laboratorio de Sistemas Electrónicos del MIT diseño y construyó, en 1952, un primer prototipo de fresadora con CN que gobernaba tres ejes. Posteriormente la irrupción de la microelectrónica y el de nuevos tipos de computadores permitieron abrir una brecha tecnológica por donde empezaron a emerger nuevas generaciones de sistemas de control que elevaron considerablemente la rentabilidad del CN y su ámbito de aplicación. A todos estos sistemas se les conoce con el nombre de CAM (Computer-Aided Manufacturing), es decir, fabricación asistida por ordenador. A esto se le unió el diseño asistido por ordenador (CAD). Esta combinación permite la transferencia de información desde la etapa de diseño a la de fabricación de un producto, sin necesidad de volver a capturar manualmente los datos geométricos de la pieza. La base de datos que se desarrolla durante el CAD es procesada por el CAM,
  • 13. 12 para obtener los datos y las instrucciones necesarias para operar y controlar la maquinaria de producción, el equipo de manejo de material y las pruebas e inspecciones automatizadas para establecer la calidad del producto. Se suele hablar de sistemas CAD/CAM para referirse a la utilización conjunta de ambos sistemas. El surgimiento del CAD/CAM ha tenido un gran impacto en la manufactura al normalizar el desarrollo de los productos y reducir los esfuerzos en el diseño, pruebas y trabajo con prototipos. Sus campos de aplicación son muy variados, yendo desde su utilización en la automoción y la aeronáutica, hasta la fabricación de prótesis y ortodoncias. 1.1.1 Tipos de máquinas-herramienta y aplicaciones aeronáuticas Aunque el CN se ha orientado fundamentalmente hacia máquinas-herramienta que trabajan por arranque de viruta, su utilización no queda restringida a estas aplicaciones[2]. A título ilustrativo, se relacionan a continuación diversos tipos de máquinas que trabajan conectadas a CN: Taladradoras, Fresadoras, Mandrinadoras, Tornos, Centro de mecanizado, Rectificadoras, Punzonadoras, Máquinas de electroerosión, Maquinas de soldar, Dobladoras, Máquinas de oxicorte, Plegadoras, Máquinas de dibujar, Máquinas de trazar, Bobinadoras, Máquinas de medir por coordenadas, Manipuladores, etc. 1.1.1.1 Clasificación de las máquinas-herramienta de control numérico (MHCN) La fabricación por eliminación de materia se resume a la conducción de un móvil, ya sea herramienta o pieza, siguiendo un desplazamiento determinado, obedeciendo una orden (humana o numérica). Este desplazamiento puede ser lineal, angular o circular, en función de las posibilidades del servomecanismo de los movimientos. Esto significa que se ha clasificado a las MHCN siguiendo el modo de desplazamiento[2]. Se han desarrollado tres generaciones de MHCN: 1) Desplazamiento punto por punto: Estas máquinas se caracterizan por la ausencia de mecanización en el curso del desplazamiento sobre dos ejes (taladros, punteadoras, punzonadoras y mandrinadoras). La orden numérica sólo afecta a la puesta en posición de la pieza respecto a la herramienta, o de la herramienta respecto a la pieza según el tipo de máquina. La fabricación se efectúa sobre un solo eje, sin desplazamientos relativos. La trayectoria seguida no tiene importancia. Figura 1.Desplazamiento punto por punto
  • 14. 13 2) Desplazamiento paraxial: Estas máquinas permiten ejecutar trayectorias lineales paralelas a cada uno de los ejes de desplazamiento X, Y, Z. El mecanizado no es posible más que sobre un eje cada vez. 3) Desplazamiento continuo Máquinas gobernadas por un ordenador que controla los tres ejes a la vez, verificando la pertenencia del punto a la ecuación de la recta, o del círculo, del desplazamiento deseado. Por ello, la trayectoria puede no ser paralela a los ejes X, Y, Z. Para asegurar estos desplazamientos es necesario hacer referencia a interpolaciones lineales y circulares. Gracias al gran desarrollo de la tecnología y sobretodo de la informática, esta clasificación ha quedado algo obsoleta, ya que la gran mayoría de máquinas son capaces de realizar desplazamientos continuos en, al menos, 2 ejes. En el apartado 0 se muestran las características de las MH de cinco ejes. 1.1.1.2 Aplicaciones aeronáuticas de las MHCN Como se ha visto anteriormente, el CN ha estado unido a la aeronáutica desde su aparición. De hecho, se puede decir que la industria aeronáutica ha sido la principal precursora de la utilización del CN a la hora de fabricar. Esto es debido a que el mecanizado aeronáutico requiere una alta precisión y reducir al mínimo los tiempos de mecanizado, por ello es muy habitual el uso de máquinas multieje. Además, el uso gran variedad de materiales, desde el aluminio a otros más especiales como el titanio o inconel hace que sea necesario CAM muy flexible, preciso, fiable y con una gran capacidad de simulación, de lo que se hablará más adelante, para reducir cualquier tipo de error y desperdiciar unos materiales que pueden llegar a tener un altísimo valor. Figura 2. Desplazamiento paraxial Figura 3. Desplazamiento continuo
  • 15. 14 Las máquinas multieje son capaces de realizar translaciones en los tres ejes y al menos un giro. Se empezaron a desarrollar incluso antes que el CN, en los años cincuenta, pero es innegable que si son controladas numéricamente permiten realizar geometrías muy complejas con una alta precisión, por ello que son muy utilizadas en la industria aeronáutica y aeroespacial. A continuación se muestran varios ejemplos de piezas aeronáuticas fabricadas utilizando MHCN [3]: En la Figura 4 podemos observar una parte de la unión del sistema del tren de aterrizaje perteneciente al Boeing 767. Para su fabricación se utilizó una MHCN de tres ejes y dos husillos verticales. La pieza tiene una longitud de 254mm y una altura de 152mm y está hecha de titanio. Figura 4. Unión del tren de aterrizaje del Boeing 767 fabricado en titanio En la Figura 5 se puede ver una puerta de emergencia fabricada usando una MHCN de cinco ejes y alta velocidad. La pieza es de aluminio 7050 y tiene unas dimensiones de 1016mm x 914mm x 152mm. Figura 5. Puerta de emergencia usada en aviación general Por ultimo en la Figura 6 se muestra una pieza realizada utilizando una MHCN vertical de tres ejes. Está fabricada en aluminio, es cuadrada, de 165mm de lado. Consiste en un panel de acceso implantado en un helicóptero militar.
  • 16. 15 Figura 6. Panel de acceso fabricado con una MHCN Como se ha visto en los ejemplos, las piezas obtenidas usando estas MH no son excesivamente grandes (la mayor longitud es un metro). Para realizar piezas como el morro de un avión o el revestimiento de un ala se utiliza el fresado químico. Sin embargo, programas como GAP (Green Avanced Panels) lanzado por Airbus en 2004 [4] han intentado aplicar las MHCN para reducir el tanto el precio como los tiempos de mecanizado de estas piezas. Figura 7. Compresor centrífugo montado en una MH de 5 ejes
  • 17. 16 1.1.2 Modos de funcionamiento El programa de control numérico es el código legible tanto por el usuario como por la máquina mediante el cual se establece la secuencia de operaciones a realizar por la máquina partiendo de los datos geométricos y las condiciones de corte [5]. Existen cuatro formas de programar un código de control numérico: - Manual: a partir del plano de la pieza se calculan las trayectorias de forma manual y, a continuación, se codifican las trayectorias mediante el lenguaje contenido en el manual de la máquina. - Pseudo-asistida por ordenador: el diseño de la pieza se ha realizado por ordenador (CAD), pero no la programación del mecanizado (CAM). La ventaja es que no es necesario calcular las trayectorias porque los puntos necesarios se obtienen del modelo diseñado. - Asistida por ordenador (CAD-CAM): Se utiliza un programa de CAD para diseñar la pieza. A continuación se crean las librerías de herramientas que representan las posibilidades del taller. Por último se generan las trayectorias de la herramienta, paso a paso, mediante la utilización de un programa de CAM. Esto permite su visualización y, si es necesario, su corrección. - Programación conversacional: Depende del controlador de la MH, ya que es el operario es el encargado de introducir los programas en la propia máquina. 1.1.3 Características generales Las características más importantes del CN son el control simultáneo de desplazamiento en varios ejes, lo que permite trazar geometrías complejas, y la capacidad de recordar y reproducir una secuencia de órdenes, lo que resulta muy útil ya que habitualmente las piezas tienen simetrías o hay que realizar un mismo proceso varias veces. Sin embargo, el CN tiene muchas más ventajas. A continuación se nombran algunas de ellas[2]: - Reducción de los tiempos de ciclos operacionales. Las causas principales de la reducción al mínimo de los tiempos superfluos son: · Trayectorias y velocidades más ajustadas que en las máquinas convencionales; · Menor revisión constante de los planos y hojas de instrucciones. · Menor verificación de medidas entre operaciones. - Ahorro de herramientas y utillaje. El ahorro en concepto de herramientas se obtiene como consecuencia de la utilización de herramientas más universales.
  • 18. 17 - Mayor precisión e intercambiabilidad de las piezas. - Reducción del porcentaje de piezas defectuosas. - Reducción del tiempo del cambio de piezas. - Reducción del tamaño del lote. - Reducción del tiempo de inspección. Dado que la probabilidad de que se produzcan piezas defectuosas dentro de una serie es menor, pueden evitarse inspecciones intermedias entre ciclos. Por supuesto, las MHCN también tienen sus inconvenientes. Los más reseñables son: - Gran inversión. Las MHCN cuestan entre tres y cinco veces más que las MH convencionales. - No son rentables para series pequeñas de geometría fácil. Este hecho está directamente relacionado con el punto anterior. Una gran inversión requiere una gran utilización de la máquina para que sea rentable. Por el contrario, pueden resultar útiles para series pequeñas si la geometría es muy complicada, como se puede observar en la Tabla 1. - Elevado coste de mantenimiento. El sistema de control y mantenimiento es más complicado, teniendo que contar con técnicos altamente cualificados. COMPLEJIDAD GEOMÉTRICA Baja Media Alta TAMAÑO DE SERIE Grande > 50.000 30.000 10.000 Media ~ 5.000 3.000 1.000 Pequeña < 500 150 50 Tabla 1. Conveniencia de la utilización de MHCN[6] 1.1.3.1 Descripción general de las MHCN La introducción del CN en las MH no cambia la arquitectura, estructura, funciones, etc. El único cambio es que el movimiento de los ejes se puede programar Para que la MH sea capaz de guiar una herramienta a lo largo de una trayectoria compleja, es necesario combinar el movimiento de varios ejes de forma simultánea. Este movimiento simultáneo se define como Interpolación de los ejes en una MH. Mediante lazos de control se regula cada instante para que la posición de la herramienta sea la correcta. Se trata de un problema cinemático inverso, partiendo de la trayectoria se calcula el movimiento de cada eje[7].
  • 19. 18 Figura 8. Ejemplo de trayectoria transformada en movimiento de tres ejes[7] La estructura de una MHCN consta principalmente de: Dispositivo de entrada de información, unidad de control principal, máquina herramienta, sistema motriz, lazo de control y la unidad de visualización[8]. Figura 9. Esquema de una máquina-herramienta de control numérico La información de entrada se puede introducir a la unidad de control principal por varios medios o soportes. Varios ejemplos son CDs, DVDs, memorias USB, redes internas o incluso se pueden dar las órdenes directamente sobre un teclado perteneciente a la propia MHCN. Lo principal es la información que se manda, es decir, el programa. Como se ha comentado anteriormente, el programa es donde se recoge toda la información del mecanizado y esta información es traducida al lenguaje entendible para la unidad de control principal[8]. En la Figura 10 se pueden observar los distintos aspectos que son controlados, entre los que destacan las cotas de posición, velocidades o selección de la herramienta.
  • 20. 19 Figura 10. Esquema de un programa de control numérico Antes de la escritura del programa las acciones a realizar son las mismas que en un proceso convencional. Tenemos que tener la información geométrica, seleccionar herramientas, utillaje, etc. La Figura 11 ilustra este hecho[6]. Figura 11. Procesos a realizar antes de la escritura del programa La unidad de control principal es el corazón del sistema de CN. Existen dos subsistemas dentro de ella: la unidad de procesado de datos (DPU, data processing unit) y la unidad perteneciente al lazo de control. La DPU interpreta el programa, calcula posiciones intermedias y realiza la transformación de la trayectoria en movimientos de los ejes. Lo calculado pasa a la unidad del lazo de control. Los lazos de control ejecutan las consignas de la DPU, teniendo en cuenta la información que le ofrecen los instrumentos de medida, y son los encargados del
  • 21. 20 movimiento de cada eje. En la Figura 12 se puede observar un ejemplo[7]. También mandará instrucciones sobre lo que se señala en la Figura 9 como “Funciones diversas”, es decir, lubricación, cambios de herramienta, etc. Figura 12. Control de un eje mediante lazo cerrado El sistema motriz es un importante componente de la MHCN y tiene gran influencia sobre las características y prestaciones de la misma. Debe responder adecuadamente a las instrucciones recibidas para mover la herramienta adecuadamente. Normalmente está formado por motores eléctricos aunque en grandes máquinas pueden utilizarse motores hidráulicos. Por último, la unidad de visualización sirve como elemento de interacción entre la MHCN y el operador, ya que le ofrece multitud de datos del mecanizado (posición, velocidad, parte del programa ejecutado, etc.). Las MHCN más avanzadas poseen su propia simulación de la mecanización, para probar el programa antes de ponerlo en marcha. 1.2 Realidad virtual (VR) La Realidad Virtual (Virtual Reality) es “una simulación generada por un computador en un ambiente de tres dimensiones, en donde el usuario puede visualizar y manipular el contenido de dicho ambiente”[9]. Alguna de las características de la VR es su respuesta dinámica en tiempo real. Ésta produce una respuesta interactiva y multisensorial permitiéndole al usuario una sensación lo más cercana a lo real. Esto resume las tres características que debe poseer un sistema para que sea considerado realidad virtual: simulación (replicar el objeto), interacción (debe poder ser controlado) y percepción (interactúa con los sentidos). La VR se puede clasificar en inmersiva y no inmersiva. La primera es aquella que se da en un ambiente 3D con el cual los usuarios pueden interactuar a través de cascos,
  • 22. 21 guantes y otros accesorios para el cuerpo. En la VR no inmersiva el usuario interactúa con el mundo virtual de manera más sencilla, con utilización de teclado y ratón. Técnicamente hablando, la realidad virtual inmersiva es una interfaz avanzada que permite experimentar de manera multisensorial una simulación computarizada de manera interactiva y en tiempo real. Consta de equipamiento, instalaciones, software, hardware y aplicaciones diseñadas para tal fin. En el proceso cognitivo asistido por esta herramienta, resaltan dos factores principales: el aspecto sensorial en la percepción del mundo virtual (la inmersión) y las formas de interacción del usuario con él. Son aplicaciones de realidad virtual inmersiva aquellas que son experimentadas con varios de nuestros sentidos, en especial la visión, la audición y el tacto. La calidad del sonido tridimensional contribuye mucho a la sensación de inmersión[10]. El equipamiento necesario para la inmersión en el mundo virtual actualmente es costoso, de ahí la importancia que tiene hoy en día la VR no inmersiva. Este enfoque ofrece un nuevo mundo a través de una simple ventana de escritorio. Es más barato y tiene probadamente mayor facilidad y rapidez de aceptación en los usuarios[11]. Figura 13. Augmented Reality Guiding Process de la empresa ARSoft [12] Por otro lado, cabe destacar que en los últimos años está tomando fuerza la llamada Realidad Aumentada, que consiste en añadir elementos virtuales al mundo real. Esto produce que los objetos virtuales parezcan lo más reales posibles. 1.2.1 Aplicaciones en ingeniería La realidad virtual tiene un gran potencial de aplicación en los sectores industriales. Las aplicaciones se pueden agrupar en: Diseño, planificación y entrenamiento. En lo que al diseño se refiere, la VR permite estudiar diversas alternativas antes de proceder a la elección de una de ellas. Además, hay que tener en cuenta que el proceso creativo depende de imágenes mentales. Con la VR, éstas pueden imponerse a los usuarios y pueden ser compartidas entre ellos.
  • 23. 22 En la actualidad donde el diseño de los productos se realiza en su mayoría con herramientas de CAD, la VR permite probar ese modelo en un entorno de realidad virtual. Ahí el operador puede probarlo y estudiarlo sin llegar a construirlo. [13] Por otro lado, mediante las simulaciones es posible ver el resultado de una modificación de un sistema sin necesidad de implantarla físicamente, lo que supone un ahorro de tiempo y dinero. Figura 14. Desarrollo de una fábrica virtual por parte de Ford [14] Por último, la realidad virtual permite que los profesionales perciban y se enfrenten a situaciones sin poner en riesgo su seguridad ni la de los instrumentos utilizados. Un ejemplo es el de los pilotos, a los que se les obliga a realizar sesiones periódicas de simulación para recordar los procedimientos a seguir en caso de averías o emergencias. Como ejemplo práctico, Airbus puso en marcha en 2014 un proyecto para aplicar la realidad virtual a la fabricación de aeronaves. Desde AERTEC Solutions (empresa que llevará a cabo el proyecto) sostienen que “gracias a la realidad virtual se puede digitalizar el “know how”” [15]. Por otro lado, en julio de 2015, Airbus ha firmado un contrato de colaboración con la empresa española ARSoft dedicada al desarrollo de Realidad Aumentada [16]. 1.2.2 Alternativas de implementación Los sistemas software son aquellos que permiten el desarrollo de alguna parte de la experiencia de realidad virtual. Debido a la gran interdisciplinariedad que presentan las aplicaciones de realidad virtual, todo su desarrollo se hace a partir del trabajo de distintos expertos en ámbitos muy diversos. Desde diseñadores gráficos, hasta ingenieros en electrónica, pasando por modeladores, programadores, etc. Esto da
  • 24. 23 lugar a una gran variedad de herramientas especializadas, muchas de las cuales no son exclusivas del ámbito de la realidad virtual. Así pues, no existe un sistema software que permita hacerlo todo, y por lo tanto a continuación se describen los tipos más utilizados [17] A parte de las herramientas generales de programación, como los códigos tipo C, existen librerías de programación que son específicas de la realidad virtual y que aportan una funcionalidad de modo que los desarrolladores no deben comenzar de cero cada vez que quieren realizar un proyecto, ya que contienen ciertos elementos que siempre aparecen en los entornos de realidad virtual. Estas librerías son únicamente recomendables para programadores expertos, ya que no son fáciles de usar. Destacan dos de ellas, el WorldToolkit (WTK) y el DIVE. Otras herramientas son ellas mismas el lenguaje completo, como es el caso del VRML (Virtual Reality Modelling Language). Este lenguaje permite definir experiencias distribuibles a través de internet, contiene una filosofía multiplataforma que lo hace muy versátil y su definición no obedece a intereses comerciales concretos ya que ha sido definido por un consorcio de universidades, empresas, desarrolladores, etc. A continuación se presentan algunos de los programas más utilizados en el campo de la realidad virtual: - Autodesk 3ds Max: Programa de creación de gráficos y animación 3D con una arquitectura basada en plugins. Es uno de los programas de animación 3D más utilizados, especialmente para la creación de videojuegos o películas. - POV Ray (Persistence or Fision Ray-tracer): programa de raytracing, es decir, un algoritmo para síntesis de imágenes tridimensionales, gratuito que funciona en gran variedad de plataformas informáticas. - Java 3D: Es una extensión estándar del JDK 2 de Java, que permite crear y manipular geometrías 3D y estructuras para dibujar esta geometría. - Virtools: Es una plataforma de desarrollo con un innovador acercamiento a la creación de contenidos 3D. Se hablará más tendidamente del mismo en el apartado 3.1.1 - VRML: Como se ha dicho anteriormente, es un formato de archivo normalizado que representa escenas u objetos interactivos - Maya: Es un software de animación en 3D que ofrece un conjunto de funciones para realizar animación en 3D dentro de una plataforma de producción sumamente ampliable.
  • 25. 24 2 La Fresadora KONDIA SEASKA Se trata de uno de los centros de mecanizado de cinco ejes y columna móvil que construía la empresa Kondia. La modificación de su diseño ha dado como resultado otros dos centros de mecanizado de características similares: FIVE-400 y HM-1000- FIVE. El movimiento de balanceo de la mesa a la que va sujeta la pieza puede recordar al de una cuna siendo mecida. De aquí el nombre de la misma, ya que “seaska” es “cuna” en euskera. Figura 15. Vista general de la fresadora Kondia SEASKA [18] Antes de realizar la descripción de la fresadora Kondia SEASKA, se procede a realizar una pequeña introducción a las máquinas herramienta de cinco ejes.
  • 26. 25 2.1 Introducción a las máquinas herramienta de 5 ejes Se le llama eje a cualquier movimiento de la máquina controlado mediante control numérico, considerándose distintos dos movimientos paralelos que sean controlados de manera independiente. Figura 16. Nomenclatura estándar de los ejes de una máquina herramienta [19] Como se observa en la figura anterior, existen 9 ejes estándar: - XYZ son ejes lineales, de los cuales Z está alineado con el husillo de la herramienta - ABC son los ejes de rotación de XYZ respectivamente - UVW son lineales y paralelos a XYZ. Por otro lado, hay que mencionar que esta nomenclatura no siempre es respetada por los fabricantes. Las máquinas de 5 ejes constan de los tres ejes lineales XYZ y dos ejes de giro. Dependiendo de qué elemento sea el que realice los movimientos de giro, se diferencian tres tipos de máquinas: - Mesa/mesa. Los dos giros los realiza la mesa que sujeta la pieza. - Cabezal/mesa. Un giro lo realiza la mesa, mientras que el otro permite que la herramienta se incline - Cabezal/cabezal. La pieza permanece con la misma orientación, mientras que es la herramienta la que realiza los giros. A continuación se muestra un ejemplo de cada tipo mostrando en cada caso el “esqueleto” de la máquina o estructura cinemática. En ella se muestran los tres elementos clave de una máquina -base, preforma (stock) y herramienta (tool)- y la jerarquía de movimientos en cada eje.
  • 27. 26 Figura 17. Máquina vertical. Tipo mesa/mesa. Herramienta: X, Z. Pieza: Y, A, C [19] En la Figura 17 se muestra una máquina con doble pivotaje y una traslación en la mesa, mientras que la herramienta puede moverse en los ejes X, Z. Figura 18. Máquina VH. Tipo cabezal/mesa. Herramienta: X, Z, A. Pieza: Y, C [19] En la figura anterior, se muestra una máquina llamada VH (vertical y horizontal), es del tipo cabezal/mesa y posee una flexibilidad excepcional además de gran rigidez.
  • 28. 27 Figura 19. Máquina vertical. Tipo cabezal/cabezal. Herramienta: Z, B, A. Pieza: Y, X [19] En la Figura 19 se muestra una configuración cabezal/cabezal, comúnmente conocida como “configuración de perfilado”. Estas máquinas suelen tener un rango de giro limitado en contraposición con sus grandes recorridos en el plano horizontal. 2.2 Descripción general La fresadora Kondia SEASKA es un centro de mecanizado vertical del tipo mesa/mesa, como se puede apreciar en la Figura 20. Además se muestra que la mesa contiene los movimientos de rotación, mientras que a la herramienta se le aplican los movimientos de traslación por medio de una columna. De ahí el nombre de “columna móvil”. Figura 20. Vista del esqueleto de la fresadora Kondia SEASKA con su esquema cinemático [18]
  • 29. 28 El acoplamiento de la herramienta al motor que produce su giro puede ser directo o por correa. El acoplamiento directo de la herramienta permite una mínima transferencia de calor del motor al eje, así como una gran capacidad de arranque de viruta y una alta rigidez. Tiene una fuerza de amarre de 0,9 toneladas y la refrigeración a través del husillo permite un arranque de viruta a gran velocidad. La transmisión por correas posee una gran transmisión del par con una fuerza de amarre de 0,8 toneladas. Ambos tienen estabilización térmica gracias al doble circuito y están libres de mantenimiento con grasa permanente a vida. Figura 21. Acoplamiento directo de la herramienta Figura 22. Transmisión por correas Por otro lado, los movimientos en ejes X e Y se producen sobre guías rempladas y rectificadas, lo que da una mucha rigidez y una muy buena absorción de vibraciones, así como un control absoluto de inercias. El eje basculante (giro respecto X) permite un giro de 175º, mientras que el eje rotatorio (respecto a Z) dispone de giro continuo infinito. La combinación de ambos movimientos, permiten el acceso a cualquier punto en el espacio. Figura 23. Límites del giro basculante (eje A) de la fresadora Kondia SEASKA
  • 30. 29 Además, permite un posicionamiento continuo. Es decir, los 5 ejes pueden moverse de forma continua y simultánea. 2.3 Prestaciones A continuación se presenta una tabla con las características principales señaladas por el fabricante[18]. MESA Área de trabajo  320mm (op. 400mm) Altura de la mesa al suelo 885 mm Distancia de la mesa al husillo 140 / 630 mm Giro eje basculante +120º / -55º Giro eje rotativo  Velocidad eje basculante 20 rpm Velocidad eje rotativo 60 rpm Recorridos X 660 mm Y 440 mm Z 510 mm Cabezal Cono del husillo principal ISO 40 / BT 40 Gama de velocidades 6.000/9.000/12.000/14.000 rpm Opciones Consultar Avance Avance rápido 48 m /min Motor Cabezal 5,5/7,5 KW op. 11/15 KW op. 18 KW Cambiador Nº de herramientas 22 (Op. 40) Automático de Máx  htas contiguas 85mm herramientas Máx  htas alternas 135 mm Máx longitud de herramienta 250 mm Máx peso herramienta 6 kg Tipo de selección Random Tiempo de cambio (hta + hta) 1,8 seg Tiempo de cambio(viruta + viruta) 4 – 8 seg Peso aprox 6.700 kg Prestaciones Precisión de posicionamiento P: 0,01 (ISO 230-2) Repetitividad R: 0,008 mm Resolución 0,001 Tabla 2. Fresadora Kondia SEASKA. Características técnicas
  • 31. 30 2.4 Elementos principales. Control El controlador utilizado para las tareas de control numérico es el iTNC-530 de Heidenhain[20]. El iTNC-530 es un control numérico multifuncional para el trabajo en taller que puede ser utilizado para muchos tipos de máquinas, como por ejemplo: fresadora universal o de alta velocidad, mecanizados de 5 ejes con cabezal o mesa basculante, taladros, mandrinadoras y otros centros de mecanizado. Figura 24. Vista del controlador iTNC-530 [21] En el concepto de control universal, todos los componentes están conectados entre sí por sistemas puramente digitales. Con ello, alcanza una elevada disponibilidad del sistema completo, desde el ordenador principal hasta el aparato de medición. Todas estas características garantizan máxima precisión y calidad superficial con velocidades de desplazamiento altas. El sistema posee una pantalla en la que se presenta toda la información necesaria para la programación, el manejo y la comprobación del control y la máquina. Además, durante la ejecución del programa, las visualizaciones de estado informan puntualmente de la posición de la herramienta, el programa utilizado, los ciclos activados, el tiempo de mecanizado, etc. El teclado está orientado, principalmente, al proceso de programación. Esto lo consigue mediante la división en distintos grupos de función como programación, funcionamiento de la máquina, o funciones de gestión y ayuda.
  • 32. 31 Los diseños para las máquinas de 5 ejes se suelen elaborar externamente en sistemas de CAM, los cuales contienen una gran cantidad de frases lineales cortas, que se transmiten al control. Para que la pieza se corresponda con el programa generado es necesario un guiado óptimo del desplazamiento, con el cálculo previo del contorno y con los algoritmos para la limitación del retorno. Además, el sistema es capaz de adaptar automáticamente la velocidad de la herramienta al contorno de la pieza, pudiéndose programar con avance máximo y dejando la labor de calcular las velocidades al controlador. Los sistemas CAM producen los programas mediante postprocesadores que se pueden generar incluyendo todas las coordenadas de todos los ejes de la máquina o con vectores normales a la superficie. En los mecanizados de 5 ejes, la herramienta puede permanecer perpendicular a la superficie o estar inclinada tanto en el plano de avance (ángulo de ataque) como en el perpendicular a este (ángulo de inclinación). Independientemente del tipo de programa introducido, se realizan los movimientos necesarios en los ejes lineales para compensar los movimientos de los ejes basculantes. Esto se realiza mediante la función TCPM (Tool Center Point Management), que proporciona gran control de la herramienta y evita daños en los contornos. Figura 25. Ejemplo de modificación que realiza el TCPM [21] Por otro lado, el controlador posee lo que el fabricante llama Mecanizado inteligente. Se trata de una serie de funciones, como la supresión activa de vibraciones (ACC) y la regulación adaptiva del avance (AFC), que proporcionan una gran eficiencia dinámica, a lo que se le añade la monitorización dinámica de colisiones (DCM), que
  • 33. 32 permite al usuario estudiar las posibles colisiones que produciría el programa introducido. Otro aspecto a tener en cuenta es la minimización de tiempos de preparación de la pieza, gracias a los palpadores 3D y al desplazamiento ultrasensible de los ejes. Mientras que las funciones de programación en taller ofrecen multitud de posibilidades en lo que a contornos 2D, que son los más habituales, se refiere. Esto hace que sea una herramienta muy útil a la hora de mecanizar, no ciñéndose únicamente a interpretar los comandos del programa creado mediante CAM. Se puede encontrar más información sobre este y otros controladores en la web de Heidenhain [22]. 2.5 Modelización geométrica 2.5.1 Elementos principales y planos Ante la imposibilidad de acceder a los planos de la fresadora Kondia SEASKA, se realizó una modelización sencilla de los elementos que entran en juego a la hora del mecanizado de una pieza. Con ello, se garantiza el cálculo de cualquier tipo de interferencia entre la preforma y el centro de mecanizado. En la figura siguiente se muestran los distintos elementos elegidos para realizar la modelización en CATIA. Figura 26. Componentes principales de la fresadora Kondia SEASKA
  • 34. 33 Primero se realizaron todos los elementos y a continuación se sitúan en un “Assembly” con las restricciones de movimiento necesarias. Se tuvieron en cuenta los datos que aparecen en la Tabla 3. MESA Área de trabajo  320mm (op. 400mm) Altura de la mesa al suelo 885 mm Distancia de la mesa al husillo 140 / 630 mm Recorridos X 660 mm Y 440 mm Z 510 mm Tabla 3. Medidas de la fresadora Kondia SEASKA En la figura siguiente se presentan los distintos elementos de los que está formado el ensamblaje final. Por otro lado, en el anexo E se pueden consultar los planos de las siete piezas mostradas. Figura 27. Elementos que conforman el modelo de la fresadora Kondia SEASKA Con estas geometrías se procede a realizar el ensamblaje por medio de las restricciones que sean oportunas.
  • 35. 34 2.5.2 Composición global Para situar cada elemento en su sitio se utilizan principalmente 3 restricciones: el contacto entre dos superficies, la coincidencia entre dos ejes y la distancia entre dos superficies. Primeramente, se fija la base (utilizando el comando Fixed Part) a partir de la cual se irá construyendo la máquina. A continuación se coloca el soporte de la mesa basculante, para ello se pone la restricción entre la superficie inferior del soporte y la parte superior de la base. Este soporte está fijo, por lo que se añaden las distancias desde las paredes de ambos elementos. Por otro lado, para colocar las guías se obliga a que permanezcan en contacto las superficies que forman los huecos de las guías, con los salientes realizados en la base para este propósito. De esta forma queda libre el movimiento en el eje X. Figura 28. Restricciones entre la base y el soporte de la mesa y las guías del movimiento en X Los siguiente elementos a colocar serán la mesa basculante y la columna móvil. El primero estará en contacto con la superficie vertical interior del soporte, y el eje del semicírculo de su extremo será coincidente al de la circunferencia del soporte. Así quedará el giro basculante como único grado de libertad. La columna móvil, se coloca de forma similar a las guías que la soportan, utilizando los huecos realizados en la misma para obligar el contacto entre superficie y permitir únicamente el movimiento respecto el eje Y.
  • 36. 35 Figura 29.Restricciones entre: Soporte de mesa y mesa de balance. Guías en X y columna móvil Por último, se sitúan la mesa rotatoria y el cabezal. Una vez más, se utiliza la coincidencia entre superficies y ejes para permitir el giro de la mesa, mientras que la coincidencia de dos superficies a modo de guías hacen depender las posiciones X e Y del cabezal de los elementos que lo sujetan, dejando libre su movimiento vertical. Figura 30. Restricciones entre: Mesa basculante y mesa rotatoria. Columna móvil y cabezal
  • 37. 36 3 Desarrollo basado en Visual Basic y Virtools El funcionamiento es el siguiente: en la aplicación se carga un objeto con la composición Virtools creada que se comportará igual que cualquier otro objeto de la misma. A continuación, mediante una serie de métodos asociados se pueden intercambiar datos entre la aplicación Visual Basic (VB) y el entorno Virtools. Figura 31. Vista de la aplicación VB con la composición Virtools cargada (cuadro azul) La aplicación nos sirve para procesar fácilmente el archivo de texto en el que está escrito el código numérico. El diagrama de flujos sería el que se muestra en la figura siguiente. Figura 32. Diagrama de flujo de información de la aplicación Como se explicará en el apartado 3.2, no se consiguió que la comunicación entre el objeto Virtools y el programa de la aplicación fuera fluida, por lo que finalmente esta opción no se terminó de implementar, mostrando solamente los movimientos lineales. 3.1 Modelización Como se ha comentado, para la modelización del movimiento se ha utilizado el software Virtools, así como el programa Visual Studio para crear la aplicación VB. Además, para realizar el modelo geométrico en 3D de la fresadora, proceso que se explica en el punto 2.5 del presente documento, se utilizó el programa CATIA.
  • 38. 37 A continuación se presentan los distintos programas que se han utilizado y el trabajo realizado con ellos. 3.1.1 Virtools Virtools es una gran colección de tecnologías para la visualización 3D. Estas tecnologías se pueden agrupar en:  Aplicaciones de construcción, en las que no se pueden crear modelos, pero sí elementos simples como cámaras, luces o “frames”, que ayudan a crear las composiciones 3D.  Motor de comportamiento, que permite definir como se mueven los elementos creados en la composición. Se realizan mediante diagramas de bloques.  Motor de “renderizado”, que realiza las operaciones oportunas para mostrar la imagen.  Reproductor (3D Office Player”, que únicamente sirve para mostrar una composición una vez finalizada. Este reproductor es el que posee los controladores ActiveX necesarios para la comunicación entre la aplicación programada y Virtools.  Software de desarrollo (SDK), con el que se pueden programar distintos comportamientos y modificar tanto el motor de comportamiento como el de renderizado. Es una herramienta específica para programadores expertos. 3.1.1.1 Vistas y menús A continuación (Figura 33) se presenta la vista general de Virtools y los distintos menús. Se pretende únicamente realizar una presentación superficial del programa. Para profundizar tanto en su interfaz como en su funcionamiento se recomienda leer el manual de usuario [23]. Se puede observar que consta de una barra de menús en la parte superior de la pantalla, similar a las aplicaciones de Windows, y el resto aparece dividido en tres apartados. En ellos se puede situar cualquiera de las pestañas que se muestran, simplemente arrastrándolas, para personalizar la vista a gusto del usuario en función de sus necesidades.
  • 39. 38 Figura 33. Vista general de Virtools A continuación se hará una breve descripción de lo que se puede encontrar en cada una de las pestañas que se muestran, así como en la barra de menús. Barra de menús Como se ha dicho, es similar a la de cualquier aplicación de Windows. En ella podemos encontrar los siguientes botones: - File Menu: Opciones referentes al archivo como abrir, cerrar, guardar, exportar, etc. - Resources: Principalmente para importar o exportar recursos a la composición.
  • 40. 39 Figura 34. Pestañas File y Resources de la barra de menú de Virtools - Editors: Para abrir los distintos administradores de elementos (pestañas). - Options: preferencias generales y varias herramientas útiles para configuración del interfaz. - Help: Archivos de ayuda. Útiles para resolver dudas concretas acerca de un determinado elemento. Figura 35. Pestañas Editors, Options y Help de la barra de menú de Virtools Virtools presenta unas pestañas principales al iniciar el programa, que son las que se explican a continuación. - 3D Layout: Donde se representa la imagen 3D en el centro y tiene una serie de opciones en la barra izquierda. Se organizan por bloques y son los siguientes (situados de arriba hacia abajo): de selección, de transformación, de guías de referencia, de creación y de navegación. Situando el cursor encima de cada elemento se puede observar la función de cada uno.
  • 41. 40 Figura 36. Pestaña 3D Layout de Virtools - Building Blocks: Aquí se encontrarán todos los bloques disponibles para hacer la programación. Están divididos por categorías e incluyen una breve descripción. Figura 37. Pestaña Building Blocks de Virtools - Virtools Resources: Contiene una biblioteca de elementos incluidos por defecto y que se pueden introducir a la composición. Figura 38. Pestaña VirtoolsResources de Virtools
  • 42. 41 - Level Manager: Es el gestor de recursos de la composición. Aquí aparecen todos los elementos de la misma junto a sus scripts (programa que controla su comportamiento). Figura 39. Pestaña Level Manager de Virtools - Schematic: Ventana donde se programan los scripts mediante diagramas de bloques. Figura 40. Pestaña Schematic de Virtools 3.1.1.2 Generación de comportamientos Como se ha comentado al principio del apartado 3.1.1, Virtools es una herramienta para visualización 3D y no permite la creación de modelos. Por ello se ha recurrido a dos programas distintos para realizarlo. Para la realización del modelo se ha utilizado el CATIA, la construcción del modelo se detalla en el apartado 2.5. Mientras que para realizar el escalado del modelo e importarlo a Virtools se ha utilizado el 3ds MAX. Programa que contiene un Plug-in compatible con Virtools y que permite exportar la composición de un modo simple. Escalar el modelo es necesario, ya que Virtools tiene unos límites que son un cubo de 200 unidades Virtools. Por otro lado, debe ser lo suficientemente grande como para simular la precisión de la MH original, teniendo en cuenta que la unidad mínima de Virtools es 0,0001. Según sus especificaciones, la tolerancia de posicionamiento es de 0,01mm.
  • 43. 42 Teniendo en cuenta que la máxima medida que aparece es el ancho de la base, que mide 1314mm, se ha seleccionado una escala de 0,05 que como se muestra a continuación cumple ambas condiciones. Con esta escala, la tolerancia del modelo será: La dimensión máxima será: Esta escala se tendrá también en cuenta a la hora de posicionar los componentes o de intercambiar información con VB. Una vez que se tiene el modelo en Virtools, lo primero que se ha hecho es asociar un frame a cada una de las piezas de las que está compuesta la composición. Un frame es un punto con 6 grados de libertad (tiene asociado unos ejes que marcarán su orientación). Esto se hace para poder sustituir cada una de las piezas, en caso de ser necesario, sin tocar el resto de la composición o todo el comportamiento asociado a la pieza que se sustituye. Únicamente habrá que asociar la nueva pieza al frame correspondiente. Una vez hecho esto, se realiza la construcción de las jerarquías. Esto es, ordenar cada una de las piezas de modo que si una de ellas se mueve mueva las que estén montadas sobre ella. Se suele hablar de “padres” e “hijos”. Si una pieza se mueve, todos sus hijos lo harán con ella. El modelo de la fresadora Kondia SEASKA consta de 7 piezas, de las cuales 5 se mueven (cada una en su eje). Cada una de estas 5 piezas tienen un único movimiento, pero se verán arrastradas por el movimiento de sus padres. En las figuras siguientes se muestran las distintas piezas del modelo y el nivel que tienen en la jerarquía. Figura 41. Fresadora Kondia SEASKA en Virtools Figura 42. Jerarquías del modelo en Virtools
  • 44. 43 En la pestaña Hierarchy Manager se pueden modificar las relaciones entre las piezas. En este caso, cada letra tiene dos elementos. Uno es el frame, que tiene el sufijo “_origen” y muestra una cruz como icono, y el otro es la pieza 3D, que viene representada con un cubo. Así, cada frame será el padre de su propia pieza 3D y de otros frames según corresponda el movimiento. Figura 43. Esquema de ejes y jerarquías de la fresadora Kondia SEASKA En la Figura 43 se muestra un esquema que muestra la estructura cinemática de la pieza y su correspondencia en su modelo en Virtools. Hay que tener en cuenta que el sistema de ejes que utiliza Virtools es tal que XZ forman el plano horizontal, mientras que Y es el plano vertical. Durante todo el apartado el sistema de ejes que se nombra es el de la MH, es decir, el mostrado en la figura anterior. La generación de movimientos se realiza mediante scripts asociados a los frames. Los bloques, o Building Blocks (BB), tienen entradas y salidas de activación (izquierda y derecha) y de información (arriba y abajo). En el ejemplo de la Figura 44 se muestra el BB que nos permite activar las salidas en función de si un número (X) es mayor o menor que otros dados. A su vez, en la salida de información (abajo) se devuelve el número X o el valor de uno de los límites, en función si estos se han sobrepasado por exceso o por defecto. Figura 44. Threshold Building Block
  • 45. 44 Este es solamente en ejemplo y se recomienda utilizar la ayuda para descubrir las funciones y la configuración de los BB. Los BB pueden ser agrupados en Behaviour Graphs (BG), lo que es muy útil a la hora de realizar grandes configuraciones de bloques. Los BG pueden ser configurados para que tengan tantas entradas y salidas, de accionamiento o información, como se necesite. A continuación se realiza una breve descripción del script asociado al frame “E_origen”, que se mueve a lo largo del eje X. En la Figura 45 se puede observar que el script está formado por 3 BG. El primero comprueba si el movimiento se ha completado y en tal caso manda la información correspondiente, el segundo es el que realiza el movimiento, mientras que el tercero muestra la velocidad en dirección X de la herramienta a tiempo real. En la Figura 46 se muestra el BG, que a su vez contiene distintos BG. Figura 45. Script del movimiento en el eje X, perteneciente al frame E_origen Figura 46. Mov X Behaviour Graph. Para completar la ilustración, se muestra en la figura siguiente el contenido del BG “Movimiento”. En él, además de distintos BB, se pueden observar bloques de “operaciones de parámetros” como pueden ser tomar el valor absoluto o realizar la división de un número. Estos bloques solamente contienen entradas y salidas de información.
  • 46. 45 Figura 47. Movimiento Behaviour Graph En la Figura 45 se muestran los 5 scripts de los que consta la composición. Tres de ellos son de movimientos lineales (uno por cada eje), el cuarto es el que muestra la posición de la herramienta y el quinto es el que intercambia la información con la aplicación creada en Visual Studio. La información numérica entre los distintos Scripts se intercambian utilizando atributos y atajos (Shortcuts). Los atributos se gestionan desde la pestaña Attribute Manager, cada uno está asociado a uno o varios elementos de la composición (por ejemplo un frame) pudiendo tener distintos valores para cada elemento. Es decir, si se crea un atributo LimSup, este puede tener distinto valor dependiendo del elemento que lleve asociado. Esto se puede observar en la Figura 48. Para cambiar el valor de un atributo en un script se utiliza el BB “Set Attribute”, y se cambiará el atributo del elemento al que esté asociado el script que lo contenga. Figura 48. Atributo asociado a distintos frames con distintos valores. Los atajos son elementos muy simples pero muy útiles. Se quiere utilizar el valor de un parámetro en un mismo script sin tener que llevar una línea de unión, y también se
  • 47. 46 puede utilizar en distintos scripts. Para poner un atajo, hay que copiar el parámetro (copy) y pegarlo como atajo (Paste as Shortcut). Los iconos que muestran un atajo son los siguientes: Representa que ese parámetro tiene un atajo asociado. Es el origen del atajo. El valor del parámetro tiene origen en ese mismo script. Se puede encontrar el origen utilizando la opción “Go to Shortcut Source”. El valor del parámetro tiene origen en otro script distinto. Se puede encontrar el origen utilizando la opción “Go to Shortcut Source”. 3.1.2 Visual Studio 2013 El Visual Studio es un entorno de desarrollo integrado para crear aplicaciones para Windows, Android e iOS, además de aplicaciones web y servicios de nube. A continuación se muestra una vista general del Visual Studio, donde se puede apreciar el formulario realizado y distintas opciones que nos da el entorno. Figura 49. Vista general del Visual Studio 2013 En el centro de la imagen está situado el formulario. Muestra el aspecto que tiene la aplicación, y en él se pueden introducir multitud de elementos presentes en la Caja de herramientas, tales como botones, cuadros de texto o ventanas adicionales como puede ser considerado el objeto Virtools. Cada uno de los objetos introducidos lleva asociado un código programable al que se accede sin más que haciendo doble click en el propio objeto. Para el proyecto se ha elegido el lenguaje de programación Visual Basic. Es un lenguaje sencillo y muy intuitivo, por lo que se puede utilizar sin tener unos grandes conocimientos de programación.
  • 48. 47 Figura 50. Vista general de la aplicación En la figura anterior se pueden ver las distintas partes de la aplicación. El cuadro principal sería el objeto Virtools, donde se aprecia el modelo y posee los comportamientos explicados en el apartado anterior. A la derecha se muestran los botones para seleccionar la composición, cargar el código de control numérico que se desea simular y otro botón para comenzar la simulación (Leer). Además se añaden en la parte inferior botones para reiniciar la composición y para salir de la aplicación. En azul aparecen distintos cuadros de texto que se han utilizado para realizar análisis de tiempos del programa. 3.1.3 Intercomunicación Virtools-Aplicación El flujo de información es el mostrado en la Figura 32. Visual Basic procesa el archivo de texto y envía a Virtools la información requerida para el movimiento, más concretamente, manda la posición final a la que debe llegar la herramienta y el vector velocidad correspondiente. Mientras que Virtools manda la información de la posición de la herramienta cuando ha finalizado la instrucción recibida. 3.1.3.1 Envío de información Visual Basic  Virtools Para poder enviar mensajes desde VB a Virtools, una vez cargada la composición en la aplicación, hay que usar los siguientes métodos en el programa [24] - BroadcastMessage (NombreMensaje) Crea el mensaje, cuyo nombre será el de la variable NombreMensaje. -AttachParamToMessage (Texto) Se adjunta al mensaje la cadena de texto contenida en la variable Texto.
  • 49. 48 -AttachIntParamToMessage (Nentero) Se adjunta al mensaje el número entero contenido en la variable Nentero. -AttachFloatParamToMessage (Nreal) Se adjunta al mensaje el número real contenido en la variable Nreal. -ValidateMessageWithParams ( ) Se envía el mensaje con los parámetros adjuntos. Los parámetros llegarán en el mensaje según el orden que se hayan introducido en la programación, por lo que es muy importante tenerlo en cuenta. Para que el mensaje sea recibido por la composición Virtools, esta tiene que tener un script con los siguientes BB: Wait Message, activa la salida (out) si el mensaje recibido es el señalado en “Message” Figura 51. Wait Message BB Get Message Data: Puesto a continuación de “Wait Message” obtiene los parámetros adjuntos al mensaje que se pueden utilizar en el resto del Script mediante las variables de salida del BB Figura 52. Get Message Data BB El bloque “Wait Message” permanece a la espera de un mensaje. Cuando llegue un mensaje a la composición cuyo nombre coincida con el especificado en su parámetro de entrada, se activará la salida, que activará el siguiente bloque que será un “Get Message Data”, el cual permite obtener los parámetros adjuntos al mensaje, que saldrán como parámetros de salida y podrán ser utilizados en bloques posteriores. En la Figura 53, se muestran ambos BB, en los que se puede apreciar que el mensaje que tiene que llegar es “POSICION” y que el mismo contiene 10 parámetros asociados (5 posiciones y 5 velocidades). También se puede observar que se han utilizado atajos para usar esos valores en los diferentes scripts. El primer elemento de salida de información indica el componente que envía el mensaje (sender) y viene indicado con una S. En este caso se aprecia perfectamente, ya que no tiene ningún atajo asociado.
  • 50. 49 Figura 53. Script en el que se recibe el mensaje enviado por VB 3.1.3.2 Envío de información Virtools  Visual Basic Cuando la composición termina de realizar el movimiento indicado, esta tiene que dar conocimiento a VB. Para ello se manda un mensaje utilizando el BB “Fire Virtools Event”. Este consta de dos elementos de entrada. El primero es el nombre del mensaje y el segundo será un dato asociado. Ambos serán cadenas de texto (string). Figura 54. Fire Virtools Event Building Block En este caso, el nombre del mensaje es TERMINADO y el dato era la posición de la herramienta, dada por un vector convertido a cadena de texto (esta transformación la realiza Virtools automáticamente). Para recibir el mensaje en VB hay que introducir en el programa el “VirtoolsEvent”, que se puede encontrar dentro de los eventos que contiene el objeto Virtools introducido en el formulario. Este evento lleva asociada una subrutina, en la cual hay dos elementos principales: “e.eventName” y “e.eventData”. Cada vez que Virtools manda un mensaje, estas dos variables toman los valores del nombre y los datos enviados. Así, se puede introducir una condición en función del nombre del mensaje para asociar a ella las acciones requeridas. A continuación se muestra un ejemplo extraído directamente de la aplicación. La subrutina solamente realizará alguna acción si “e.eventName” es RECIBIDO o TERMINADO, y la acción será distinta en cada caso. Private Sub AxXEPlayer1_VirtoolsEvent(sender As Object, e As AxXEPlayerActiveX._IXEPlayerEvents_VirtoolsEventEvent) Handles AxXEPlayer1.VirtoolsEvent Select Case e.eventName Case "RECIBIDO" Momento = Date.Now.ToString("ss,fff") PosReport = PosReport & "Recibido" & vbTab & Momento & vbCrLf Case "TERMINADO" VectorTerminado = e.eventData.Split(",") terminado = 1 End Select End Sub
  • 51. 50 3.2 Utilización Como se verá en el apartado 3.3, únicamente están integrados los movimientos rectilíneos G0 y G1. Para ver la simulación de estos movimientos hay que seguir los siguientes pasos una vez abierta la aplicación: 1. Puslar el botón “Abrir .cmo” y elegir la composición Virtools que corresponda. Figura 55. Primera vista de la aplicación VB una vez abierta 2. Pulsar “Cargar CN” y elegir el archivo de texto que contenga el código de control numérico. Esto activará el botón “Leer”, que hasta ahora permanecía gris. Figura 56. Vista de la aplicación VB después de cargar el modelo Virtools 3. Pulsar el botón “Leer” y comenzará la simulación. Figura 57. Aplicación VB con la composición Virtools y el archivo de CN cargados.
  • 52. 51 4. Una vez terminada la simulación, se pueden ver tiempos de funcionamiento en los cuadros azules. Estos tiempos se utilizan para estudiar el comportamiento del programa y se presentan en el apartado 3.3. Funcionamiento. Figura 58. Aplicación VB con la simulación finalizada Para realizar otra simulación, basta con pulsar el botón Reset y volver a seguir los mismos pasos. 3.3 Funcionamiento La programación de VB consta de 13 subrutinas, de las cuales las 5 recuadradas son las que intervienen en el movimiento, mientras que en Virtools hay 5 scripts, de los cuales todos, excepto Mostrar_posicion, intervienen en el movimiento. Figura 59. Subrutinas del programa VB Figura 60. Scripts de Virtools Momento en el que lee la línea de CN Momentos de Envío, Recibido y Terminado Tiempo que debería durar cada movimiento (distancia / velocidad)
  • 53. 52 Una vez abierta la aplicación e iniciado el programa de leer el código de control numérico, el funcionamiento es el mostrado en la Figura 61. En ella se muestran en los cuadros en azul con las esquinas redondeadas las distintas subrutinas que entran en acción cuando se mueve la MH y en rojo con las esquinas en ángulo los scripts de Virtools. Las flechas indican la llamada desde una subrutina o script a otro, siendo negras las que pasan de la aplicación VB a Virtools o viceversa. Figura 61. Diagrama de funcionamiento de subrutinas y scripts. Una vez implementados los movimientos rectilíneos G0 y G1 se probó la aplicación y se vio una clara falta de fluidez entre los movimientos. Es decir, una vez comenzado
  • 54. 53 el movimiento rectilíneo, este es continuo, pero desde que un movimiento termina hasta que empieza el siguiente la herramienta permanece en el sitio un tiempo bastante apreciable. Este hecho hace que la simulación no sea la deseada. Por ello se realizó un estudio de tiempos introduciendo en la programación la instrucción Date.Now.ToString("ss,fff") que devuelve el tiempo hasta los milisegundos. Para la realización del estudio, se introdujo la instrucción inmediatamente después de leer la línea del código de control numérico, así la diferencia entre una lectura de línea y la siguiente será el tiempo utilizado en ese movimiento. Con la comparación de estos tiempos se pretendía encontrar un patrón que se repitiera para poder solucionar la lentitud del proceso. El programa introducido (G0-G1_plus.txt) para el estudio es el siguiente: 1 N10 G0 G97 X330 Y220 Z510 F80 S1000 T1 M03 2 N20 G0 X-330 3 N10 G0 G97 X31 Z0.6 F50 S1000 T1 M03 4 N20 G1 X0 5 N30 G0 X32 Z2 6 N30 G0 Y32 Z2 7 N40 G0 X40 Z50 8 N50 G1 Y10 Z-1 F10 9 N60 G1 X10 Z-11 F100 10 N40 G0 X40 Z50 11 G91 G1 Y20 F200 12 G91 G1 Z20 F200 13 G90 G1 X230 F250 14 N30 G0 Y-220 15 N40 G0 Z0.5 16 N50 G1 X10 Z5 F80 17 N60 G1 Y10 Z26 18 N70 G2 X14 Z10 I5 K0 19 N80 G1 Y14 Z69 F100 20 N50 G0 X330 Y220 Z510 21 N60 G0 Z0 22 N90 G3 X20 Y31.126 I-3 K-5.196 23 N100 G1 X20 Y200 Z50 24 N110 G1 X25 Y100 Z100 25 N120 G1 X30 Z42 26 N60 G0 X0 27 N70 G0 Y0 28 N80 G0 Z200 29 M30 Se han numerado las líneas para la nomenclatura posterior de los gráficos Se realizan 10 ejecuciones seguidas del código (tomando los datos y pulsando el botón Reset después de cada ejecución) y, primeramente, se observan los tiempos totales.
  • 55. 54 Figura 62. Tiempos totales de 10 ejecuciones del programa G0-G1_plus.txt Lo primero que se observa es la gran diferencia entre unas ejecuciones y otras. Esto hace indicar que puede haber una cierta aleatoriedad en el comportamiento de la aplicación. Para realizar un análisis más a fondo, se tomaron los tiempos de ejecución de cada línea del código de CN. Se pueden ver los distintos tiempos en la Figura 63. En el eje horizontal aparecen cada una de las instrucciones del código del CN, mientras que el eje Y señala el tiempo, en segundos, que transcurre desde que la aplicación lee esa línea hasta que lee la siguiente. En la leyenda se pueden observar las 10 ejecuciones, desde ej1 hasta ej10. El área azul claro (Treal) es el tiempo que debería tardar la herramienta en realizar el movimiento, es decir, la distancia que debe recorrer entre la velocidad de desplazamiento (ya que son desplazamientos rectos). En amarillo se ha hecho una envolvente de los tiempos máximos, mientras que en negro se muestra la envolvente mínima. Esta última casi no se aprecia, ya que la diferencia con el área Treal es muy pequeña. Los movimientos G2 y G3 no están programados. Si aparecen se salta esa línea, por ello el tiempo es cero. Figura 63. Gráfico de tiempos de cada línea de código
  • 56. 55 Lo que se puede concluir de este gráfico es que no hay ninguna instrucción en concreto que sea especialmente lenta. Basta con seguir cualquiera de las ejecuciones para ver este hecho. Comparando la envolvente máxima y los tiempos de movimiento (Treal) de las ejecuciones (Figura 64), se puede concluir que la lentitud del proceso es independiente del tiempo empleado en realizar movimiento en sí. Todas las instrucciones (excepto las que no generan movimiento, G2, G3, M30) tienen más de un segundo de diferencia en alguna ocasión. Figura 64. Diferencias entre la envolvente máxima y Treal de las 10 ejecuciones de G0-G1_plus.txt Como se ha visto en el esquema de la Figura 61, entre la lectura de una instrucción y la siguiente se realizan distintos procesos. Para realizar en distintas fases del proceso se incluyeron toma de tiempos en distintos lugares de la aplicación de VB. Los datos de estos dos últimos gráficos se pueden consultar en el Anexo A. Se toma el mismo programa de control numérico que anteriormente, pero se eliminan las instrucciones G2 y G3, para que la visión del conjunto sea más clara. Se realiza una ejecución del mismo para el estudio descrito a continuación. 1 N10 G0 G97 X330 Y220 Z510 F80 S1000 T1 M03 2 N20 G0 X-330 3 N10 G0 G97 X31 Z0.6 F50 S1000 T1 M03 4 N20 G1 X0 5 N30 G0 X32 Z2 6 N30 G0 Y32 Z2 7 N40 G0 X40 Z50 8 N50 G1 Y10 Z-1 F10 9 N60 G1 X10 Z-11 F100 10 N40 G0 X40 Z50 11 G91 G1 Y20 F200 12 G91 G1 Z20 F200 13 G90 G1 X230 F250 14 N30 G0 Y-220 15 N40 G0 Z0.5 16 N50 G1 X10 Z5 F80 17 N60 G1 Y10 Z26 18 N80 G1 Y14 Z69 F100 19 N50 G0 X330 Y220 Z510
  • 57. 56 20 N60 G0 Z0 21 N100 G1 X20 Y200 Z50 22 N110 G1 X25 Y100 Z100 23 N120 G1 X30 Z42 24 N60 G0 X0 25 N70 G0 Y0 26 N80 G0 Z200 27 M30 28 EndOfStream (La aplicación detecta el final del documento y lo cierra) Los instantes que se consideraron en la toma de tiempos fueron los siguientes: 1. Leer: La aplicación VB lee la línea del .txt 2. Envío: La aplicación VB envía la información a Virtools 3. Recibido: Virtools recibe el mensaje y manda un VirtoolsEvent de forma inmediata. El momento mostrado es en el que la aplicación VB recibe ese VirtoolsEvent. Este evento Virtools se añade únicamente para ver el tiempo que transcurre entre que el mensaje va y vuelve, no tiene aplicación en el movimiento y por ello no aparece en la Figura 61. 4. Mov Terminado: La aplicación VB recibe el VirtoolsEvent con la nueva posición después de que el movimiento haya acabado. El funcionamiento deseado daría como resultado que los tres primeros puntos (Leer, Envío, Recibido) son instantáneos, y por lo tanto indistinguibles en el gráfico siguiente, y desde el punto 3 al 4 transcurre el tiempo que la herramienta se ha estado moviendo. Figura 65. Estudio de tiempos de envío y recepción de información entre VB y Virtools
  • 58. 57 En la Figura 65 se observan, para cada instrucción, los 4 momentos indicados. Así se puede ver como los momentos Leer y Envío suceden siempre en el mismo instante, ya que todas las señales verdes están superpuestas en las negras. Lo mismo ocurre cuando la aplicación VB recibe el evento de “Movimiento terminado”, el desfase entre ese instante y la lectura de la siguiente línea es inapreciable o incluso nulo, ya que se sitúan en la misma horizontal. Los datos numéricos se pueden consultar en el Anexo B. No sucede así con los instantes de Envío y Recibido. Se han señalado con cuadros naranjas tres ejemplos en los que entre un momento y otro transcurren más de tres segundos. Para comprobar que la secuencia entre uno y otro no puede ser más simple, se muestra a continuación: 1. Envío del mensaje desde VB a Virtools. Subrutina Posicion() A continuación se muestran las líneas de código necesarias para crear el mensaje, introducir los datos y enviarlo. La variable “Momento” toma la hora y la variable “PosReport” la almacena para mostrarla después en el cuadro de texto. Me.AxXEPlayer1.BroadcastMessage("POSICION") Me.AxXEPlayer1.AttachFloatParamToMessage(X) Me.AxXEPlayer1.AttachFloatParamToMessage(Y) Me.AxXEPlayer1.AttachFloatParamToMessage(Z) Me.AxXEPlayer1.AttachFloatParamToMessage(A) Me.AxXEPlayer1.AttachFloatParamToMessage(C) Me.AxXEPlayer1.AttachFloatParamToMessage(Vx) Me.AxXEPlayer1.AttachFloatParamToMessage(Vy) Me.AxXEPlayer1.AttachFloatParamToMessage(Vz) Me.AxXEPlayer1.AttachFloatParamToMessage(Va) Me.AxXEPlayer1.AttachFloatParamToMessage(Vc) Me.AxXEPlayer1.ValidateMessageWithParams() Momento = Date.Now.ToString("ss,fff") PosReport = PosReport & "Envío" & vbTab & Momento & vbCrLf 2. Recepción del mensaje en Virtools y envío del evento Virtools Figura 66. BBs para la recepción del mensaje POSICION y el envío del evento Virtools RECIBIDO 3. Recepción del evento Virtools y toma de tiempo Se recibe el evento y se comprueba el nombre “RECIBIDO”. En ese caso, se toma el dato del tiempo igual que en el caso anterior. Private Sub AxXEPlayer1_VirtoolsEvent(sender As Object,… Select Case e.eventName Case "RECIBIDO" Momento = Date.Now.ToString("ss,fff") PosReport = PosReport & "Recibido" & vbTab & Momento & Case "TERMINADO" VectorTerminado = e.eventData.Split(",") terminado = 1 End Select
  • 59. 58 Con los datos de la Figura 65 se puede descartar que el problema esté en la aplicación de VB, ya que cuando esta se ejecuta y no hay intercambio de información con Virtools los tiempos son correctos. Las siguientes opciones son que falle el programa de Virtools o la comunicación VB con Virtools. Para comprobar cuál de las dos es la problemática (o ver si son ambas), se recurre a introducir un texto en la programación Virtools. El texto será verde y con la indicación “TERMINADO” cuando el movimiento rectilíneo de una instrucción haya finalizado y el evento Virtools se haya mandado, mientras que el texto será naranja y con la palabra “RECIBIDO” cuando Virtools reciba el mensaje POSICION de VB. Es una forma cualitativa de conocer en qué momento llega el mensaje a Virtools, se opta por esta opción por si sencillez. Figura 67. Programación de los textos TERMINADO y RECIBIDO en Virtools En un funcionamiento correcto, una vez que la aplicación comienza a leer el código de control numérico, el movimiento de la pieza debería ser continuo y el texto RECIBIDO debería estar siempre visible salvo fracciones muy pequeñas de tiempo que cambiaría al texto TERMINADO (entre una instrucción y otra) y que serían casi imperceptibles. Una vez completados todos los movimientos del archivo CN, se mostraría TERMINADO. Figura 68. Textos TERMINADO y RECIBIDO introducidos en Virtools En la Figura 68 se muestran los textos descritos en el centro de la imagen. Se puede comprobar que en el caso de TERMINADO (izquierda) las velocidades que se muestran en rojo en la parte superior izquierda son nulas, mientras que en el caso RECIBIDO (imagen derecha) las velocidades son distintas de cero.
  • 60. 59 Se comprueba que en el mismo instante que aparece RECIBIDO la herramienta se mueve, mientras que cuando esta se para, aparece TERMINADO. Como el cambio de texto se realiza después de haber recibido o mandado la información, se puede concluir que el programa de Virtools no hace más lento el proceso. 3.4 Conclusiones y posible solución Con los datos relatados en el apartado 3.2, se puede comprobar como lo que produce la lentitud de la ejecución es el envío o la recepción de información por parte de VB, un estudio más en profundidad podría aclarar si el problema está en una de esas acciones o en ambas. En cualquier caso, las dos son necesarias para el funcionamiento de la aplicación, por lo que el problema es inevitable. Por otro lado, cabe recalcar que tanto el programa VB y el creado en Virtools, por separado, funcionan correctamente. Después de lo visto anteriormente, una posible solución sería crear un programa enteramente con Virtools. Esta opción se descarta debido a que la gran cantidad de trabajo que supondría sobrepasar por mucho el tiempo razonable a dedicar en un Proyecto de fin de carrera.
  • 61. 60 4 Desarrollo basado en CATIA v5 Como alternativa de simulación al desarrollo explicado en el punto anterior, se estudió la utilización de CATIA v5, ya que contiene unos módulos de mecanizado y simulación que permiten realizar programas completos de mecanizado de una pieza y su posterior visualización asignando un máquina de control numérico. Figura 69. Módulos de mecanizado y simulación del mecanizado en CATIA v5 Viendo las distintas opciones que ofrece el programa, se decide realizar los siguientes pasos: 1. Modelización de la máquina Kondia SEASKA para su utilización en CATIA 2. Creación de una pieza que muestre las posibilidades de la máquina creada y hacer su programa de mecanizado. 3. Simular el programa de mecanizado y estudiar los resultados. Los módulos de mecanizado permiten programar las funciones necesarias para conseguir la pieza diseñada en CATIA en función de la máquina que se elija. Esta puede ser un torno (Lathe Machining), una fresadora típica de tres ejes (Prismatic Machining), centros de mecanizado de varios ejes (Surface Machining), o incluso la utilización de impresoras 3D (STL Rapid Protopyping) [25]. Por otro lado, se puede construir una máquina de control numérico (NC Machine Tool Builder) que permita una simulación de la fabricación de la pieza (NC Machine Tool Simulation). A lo largo de este capítulo se explicará la construcción de la fresadora Kondia SEASKA partiendo de la modelización realizada anteriormente (capítulo 2.5), así como