Diseño de una aplicación de control para el desarrollo de una herramienta de micromecanizado por láser Escuela Superior de Ingeniería Universidad de Sevilla Diego Medina Medina Página 16 de 72 3. APLICACIÓN DESARROLLADA 3.1 DESCRIPCIÓN GENERAL DE LA SOLUCIÓN PLANTEADA Como se puede observar en la figura 5, la aplicación de control desarrollada deberá controlar los dos elementos que formarán parte del sistema de mecanizado por láser funcionando en un ordenador. Se pretende utilizar una estructura basada en capas para poder conseguir que la aplicación de un nivel superior pueda mediante el uso de librerías el comunicarse con los dos equipos. Figura 5: Estructura basada en capas para identificar la comunicación con cada equipo con el programa superior Se observa claramente como por debajo del interfaz gráfico que ofrecerá el sistema existirá un programa de control que pretende obtener la información ofrecida por el usuario e interaccionar con cada uno de los dispositivos para poder obtener como resultado el mecanizado deseado. Para ello se deben de poder controlar los dispositivos a través de una comunicación por puerto serie. Cada uno de los dispositivos deberá recibir los mensajes que son capaces de reconocer según los manuales de usuarios y para ello se diseñarán una Application Programming Interface (API) por cada uno de los dispositivos que forman parte del sistema. Estas API’s permitirán que la comunicación entre el ordenador y los dispositivos sea transparente al usuario final y que la programación se desarrolle a un nivel de lenguaje más elevado. En base a las API’s se desarrollarán una librería de funciones para cada uno de los dispositivos. Con estas librerías, se diseñará el programa principal que será el encargado de que realizar la configuración de cada uno de los
32
Embed
3. APLICACIÓN DESARROLLADAbibing.us.es/proyectos/abreproy/12015/descargar_fichero/4+Aplicación+desarrollada.pdfdiseñarán una Application Programming Interface (API) por cada uno
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Diseño de una aplicación de control para el desarrollo de una herramienta de micromecanizado por
láser
Escuela Superior de Ingeniería Universidad de Sevilla
Diego Medina Medina Página 16 de 72
3. APLICACIÓN DESARROLLADA
3.1 DESCRIPCIÓN GENERAL DE LA SOLUCIÓN PLANTEADA Como se puede observar en la figura 5, la aplicación de control desarrollada deberá controlar los dos
elementos que formarán parte del sistema de mecanizado por láser funcionando en un ordenador. Se
pretende utilizar una estructura basada en capas para poder conseguir que la aplicación de un nivel
superior pueda mediante el uso de librerías el comunicarse con los dos equipos.
Figura 5: Estructura basada en capas para identificar la comunicación con cada equipo con el programa superior
Se observa claramente como por debajo del interfaz gráfico que ofrecerá el sistema existirá un programa
de control que pretende obtener la información ofrecida por el usuario e interaccionar con cada uno de
los dispositivos para poder obtener como resultado el mecanizado deseado. Para ello se deben de poder
controlar los dispositivos a través de una comunicación por puerto serie. Cada uno de los dispositivos
deberá recibir los mensajes que son capaces de reconocer según los manuales de usuarios y para ello se
diseñarán una Application Programming Interface (API) por cada uno de los dispositivos que forman parte
del sistema.
Estas API’s permitirán que la comunicación entre el ordenador y los dispositivos sea transparente al
usuario final y que la programación se desarrolle a un nivel de lenguaje más elevado. En base a las API’s
se desarrollarán una librería de funciones para cada uno de los dispositivos. Con estas librerías, se
diseñará el programa principal que será el encargado de que realizar la configuración de cada uno de los
Diseño de una aplicación de control para el desarrollo de una herramienta de micromecanizado por
láser
Escuela Superior de Ingeniería Universidad de Sevilla
Diego Medina Medina Página 17 de 72
dispositivos en función a los parámetros ofrecidos por el técnico de laboratorio y del desarrollo del
mecanizado.
En el diagrama de estados, de la figura 6, del programa principal se puede observar el diseño a grandes
rasgos de la aplicación.
Se va ha describir, sin entrar en profundidad, el diagrama de estados del programa principal y las
operaciones más importantes que se realizarán en cada una de las etapas del diagrama de estados.
• Inicio de la aplicación y selección del tipo de mecanizado: cuando se ejecute la aplicación
desarrollada el programa mostrará un menú de selección de mecanizado que permitirá al
técnico de laboratorio seleccionar cual de una serie de opciones de mecanizados preestablecidos
desea realizar sobre la muestra de material. Una vez que el técnico seleccione la opción que
desea se pasa a la etapa de obtención de los parámetros. Previamente el técnico ha debido de
alinear correctamente la muestra con la luz láser, ya que esto se debe realizar manualmente.
• Introducción de los parámetros: dependiendo del tipo de mecanizado los parámetros que serán
requeridos diferirán de uno a otro tanto en cantidad como en significado. Existirán una serie de
parámetros que serán obligatorios a todos los mecanizados, como son por ejemplo la velocidad
de movimiento del posicionador, la potencia del láser o el número de pasadas (que está
relacionado con el volumen de material a eliminar), mientras que el resto de parámetros
dependerán del tipo de mecanizado. Existirán parámetros que tengan que ser acotados, como la
potencia del láser o la velocidad del posicionador y otros que podrán tomar cualquier valor
entero positivo, como el número de pasados, la longitud de movimiento del posicionador.
• Configuración de los dispositivos. Tras obtener los parámetros y comprobar que se encuentran
dentro de los rangos correctos, en este estado se realizará la configuración de los parámetros
obligatorios definidos anteriormente. Una vez que estén configurados correctamente y se
indique al sistema que se desea continuar el programa procederá a iniciar el mecanizado por
láser.
• Realización del mecanizado: cada tipo de mecanizado tiene una función diferente que se
encargará de interactuar con el posicionador y con el láser para que el resultado sea el
mecanizado deseado. Como previamente se ha seleccionado el tipo de mecanizado, se le ofrece
al programa los parámetros necesarios y a la vez que se está ejecutando el mecanizado láser, se
Diseño de una aplicación de control para el desarrollo de una herramienta de micromecanizado por
láser
Escuela Superior de Ingeniería Universidad de Sevilla
Diego Medina Medina Página 18 de 72
informará de una estimación de tiempo que de ejecución del mecanizado. Esto permitirá al
técnico realizar trabajos en paralelo al mecanizado láser sabiendo el tiempo de las tareas.
• Fin de la aplicación: una vez que se finaliza el mecanizado el programa preguntará si se desea
realizar otro mecanizado. Si se indica que sí volverá a la etapa de selección del tipo de
mecanizado y si se indica que no finalizará el programa.
Figura 6: Diagrama de estados del programa de control
Diseño de una aplicación de control para el desarrollo de una herramienta de micromecanizado por
láser
Escuela Superior de Ingeniería Universidad de Sevilla
Diego Medina Medina Página 19 de 72
Este diagrama de estado está realizado en base a una serie de conceptos de alto nivel de programación
que los dispositivos no pueden ejecutar directamente sin una serie de librerías que habrá que diseñar
previamente y que pasamos a explicar en los siguientes apartados.
3.2 DISEÑO DE LAS API’S
Una API (Interfaz de Programación de Aplicaciones) se define como una serie de funciones y
procedimientos que se ofrecen a cierta biblioteca para ser utilizado por otro software como capa de
adaptación.
En nuestro caso nosotros tenemos dos dispositivos que permiten ser controlados a través de un puerto
RS-232. Esto implica por una parte que ambos dispositivos deben de tener una función que les permita
hacer una conversión de los comandos que reconoce cada dispositivo mediante el puerto serie.
Esta función permitirá que cada una de las API’s que vayamos a diseñar se puedan comunicar con los
dispositivos y que estos sean capaces de funcionar como la aplicación que usan las API’s para la
adaptación.
Cada API, de las dos que diseñaremos, permitirá configurar los dispositivos con los parámetros que nos
ofrecen los manuales de usuario de los dispositivos. Las funciones que formen parte de la API se
encargarán de recibir una serie de parámetros necesarios con valores variables y de enviarlos a través del
puerto serie en el formato que requiere el dispositivo.
3.2.1 FUNCIONES DE ENVIO DE COMANDOS MEDIANTE RS-232 Se ha indicado anteriormente que las API’s que permitirán el control remoto de los dispositivos se
fundamentan en el envío a través del puerto serie de una serie de comandos que son capaces de
entender los dispositivos y que tienen una significación determinada.
Las funciones que se encargan del envío de estos comandos se encargan de la apertura del puerto serie
para una comunicación. Existe una diferencia importante entre la comunicación serie del posicionador y
la del láser, la cual ha obligado a que se implementen dos funciones diferentes en vez de solo una. El
problema radica en el que el posicionador, al menos en los comandos necesarios para poder realizar los
mecanizados, no devuelve ninguna cadena de caracteres a través del puerto serie. Por ello la función solo
se encarga de enviar los datos necesarios sin esperar respuesta alguna del posicionador. Sin embargo, el
Diseño de una aplicación de control para el desarrollo de una herramienta de micromecanizado por
láser
Escuela Superior de Ingeniería Universidad de Sevilla
Diego Medina Medina Página 20 de 72
láser responde a todos los comandos que le lleguen por el puerto serie con una cadena de 16 caracteres.
Esto implicará que la función que gestiona la comunicación serie del láser deberá de enviar el comando y
de recibir la cadena de caracteres y ofrecérsela a la API para que esta pueda obtener la información que
considere necesaria.
En el manual de usuario del posicionador, en el subapartado 5.3, podemos observar que el dispositivo
permite una amplia serie de configuraciones de la comunicación mediante el puerto serie RS-232-C. Si se
retira la cubierta del posicionador podemos observar una serie de conmutadores que deberemos colocar
en una posición u otra para obtener la configuración que deseamos para la comunicación serie. En el
diseño de la aplicación de comunicación se ha optado por una comunicación a 9600 baudios con 8 bits de
información, un bit de stop y sin paridad. Esto obligará a que los conmutadores deberán configurarse
para recibir esa comunicación, permitiendo así el control desde el puerto RS-232C. Además, en ese
mismo apartado se indica la configuración física del cable RS-232-C con el conector DB9 para su
conexionado con el ordenador de control.
En el manual de usuario del láser, en el subapartado 2.5 del capitulo 3, se nos indican los parámetros de
configuración para la comunicación a través del puerto serie con el láser. Dichos parámetros utilizados a
la hora de abrir el puerto serie son: una comunicación a 9600 baudios con 8 bits de información, un bit de
stop y sin paridad.
Resulta de vital importancia un detalle importante al analizar el código programado. Para que el
programa funcione correctamente, cable del puerto serie del posicionador deberá de conectarse con el
puerto COM1 y el del láser con el del puerto COM33 del ordenador de control. Ya que estos son los
puertos a los que se destinan los comandos de cada uno de los dispositivos por parte del programa.
3 Se utilizará el puerto COM3 en vez del puerto COM2, ya que esté tiene como funcionalidad el conectar un ratón o un modem de 56K y se trata de un puerto serie macho, a diferencia del COM1 que es hembra. El puerto COM3, hembra, se corresponde con un conversor de puerto USB a puerto serie RS-232 que hace que el sistema lo vea como un puerto serie más.
Diseño de una aplicación de control para el desarrollo de una herramienta de micromecanizado por
láser
Escuela Superior de Ingeniería Universidad de Sevilla
Diego Medina Medina Página 21 de 72
En el anexo A se pueden encontrar los códigos de programación de estas funciones. En la figura 7 se
pretende ilustrar un ejemplo sencillo sobre el procedimiento que debe de realizar cada una de las
funciones.
En el caso del posicionador, en general queremos enviar órdenes al posicionador para que las ejecute.
Por lo que una aplicación superior desea realizar, por ejemplo, un desplazamiento en el eje horizontal y
usa las funciones de la API del posicionador indicando el eje, la distancia y el sentido del movimiento y
esta genera la cadena correspondiente a esta orden y se la pasa a la función de comunicación por puerto
serie para que esta se la envíe al posicionador. En el caso del láser podríamos estar interesados en
obtener el valor de la temperatura en la cavidad resonante. Por ello la aplicación a través de la API del
láser indica que desea realizar una lectura de la temperatura en la cavidad resonante. La API genera la
cadena y la función de comunicación la envía y espera la respuesta del láser devolviéndole a la API la
cadena obtenida y esta le devuelve a la aplicación el parámetro deseado, la temperatura en este caso.
Figura 7: Ejemplo de una comunicación con cada uno de los equipos mediante RS-232
Como se puede observar en el anexo A, la funcionalidad de este código se basa en configurar los puertos
serie del ordenador y de enviar y recibir los caracteres necesarios. Por lo que pasamos a la explicación del
diseño de las API’s requeridas.
3.2.2 API DE POSICIONADOR En el subapartado 5.2 del manual del posicionador encontramos el formato de los comandos que
reconoce el controlador del posicionador a través de los puertos de entrada/salida del sistema. El
comando deberá estar formado por los siguientes apartados:
Diseño de una aplicación de control para el desarrollo de una herramienta de micromecanizado por
láser
Escuela Superior de Ingeniería Universidad de Sevilla
Diego Medina Medina Página 22 de 72
• El número del eje sobre el que queremos actuar. Este tendrá el formato:
o 01 ó 1 para el eje 1.
o 02 ó 2 para el eje 2.
o 00 ó 0 o sin indicación para que se ejecute sobre todos los ejes.
o 0a ó a para el eje a. Para que a sea superior a 2 debemos configurar el puerto RS-232 en
conexión en cadena. Se usaría en el caso de tener 3 ejes de movimiento.
• Dos caracteres que identificarán la operación que se desea realizar en sobre el eje que se ha
indicado anteriormente.
• Un posible argumento de formato numérico de caracteres con signo para identificar el sentido
del desplazamiento en el eje.
• Un valor ASCII correspondiente a una terminación de línea (CR o LF).
A diferencia de lo que ocurrirá en la API del láser, en esta librería no se han implementado todos los
comandos que nos indica el manual. El por qué de esto lo encontramos en que muchos de estos
parámetros sirven para configurar parámetros que a priori no nos resultan interesantes en el diseño de
un mecanizado.
Para realizar un mecanizado, con el láser en modo de disparo continuo, lo que nos interesa es realizar
movimientos relativos a la posición que nos encontramos en cada uno de los ejes o de manera oblicua al
punto que atacamos. Otros dos parámetros importantes a la hora del procesamiento es la velocidad del
desplazamiento del posicionador, ya que una mayor velocidad implicará una mayor separación de los
puntos de ataque, debido a que el láser es pulsado y no continúo. Por último, como la idea es tener una
resolución en tres dimensiones del mecanizado gracias a las iteraciones realizadas, las funciones que
implementaremos deberán tener la posibilidad de realizar de manera continua varias pasadas en ambos
sentidos del desplazamiento de manera automática.
Por todo esto, como se puede observar en el anexo A en el apartado correspondiente al código de la
librería de funciones del posicionador, diseñamos seis funciones básicas que codificarán los parámetros
de una aplicación superior a los comandos requeridos por el controlador del posicionador y que serán
enviados a través de la función de comunicación por el puerto serie del posicionador. Estás funciones nos
permiten configurar la velocidad en cualquiera de los dos ejes de funcionamiento del sistema, realizar
Diseño de una aplicación de control para el desarrollo de una herramienta de micromecanizado por
láser
Escuela Superior de Ingeniería Universidad de Sevilla
Diego Medina Medina Página 23 de 72
rectas horizontales y verticales de un tamaño concreto y un número de pasadas. Además, se permite la
realización de rectas oblicuas. Esto se consigue a través del envío de comandos a cada uno de los ejes de
manera simultánea y consiguiendo que al moverse los dos ejes a la vez podamos obtener una recta con
inclinación en cada uno de los cuatro cuadrantes del plano. Estas funciones también permiten realizar
pasadas sucesivas en los diferentes sentidos del movimiento.
Se han realizado posteriormente, basándose en las funciones anteriormente descritas, una serie de
funciones que se utilizan para simplificar la programación a un nivel más elevado. Estas funciones utilizan
las rectas horizontales, verticales y oblicuas para realizar los movimientos para obtener rectángulos de
diferentes tamaños y trapecios de diferentes orientaciones y diferentes tamaños.
3.2.3 API DEL LASER
En el manual de usuario y mantenimiento del láser ofrecido por el fabricante Quantel, dentro del
apartado 3 del manual “Laser description”, encontramos la información necesaria para conocer el
formato que deberán cumplir los comandos a enviar por el puerto serie para que el láser sea capaz de
funcionar de manera remota. Dicho subapartado es el 2.5. En el podemos encontrar la información para
poder realizar las funciones necesarias para configurar y controlar el dispositivo.
En el manual se nos indica que la cadena de caracteres que se envía mediante el puerto serie del
ordenador deberá estar siempre terminada con un valor ASCII de retorno de carro con salto de línea
(CRLF) o de salto de línea (LF). Además sistema de control del láser solo permite una tasa máxima de 20
comandos recibidos por segundo.
En general el formato de los comandos enviados al láser tendrán el siguiente formato:
• Un identificador del comando: podrá constar de uno, dos o tres caracteres ASCII y son los que
permiten identificar al sistema la tarea que desde el ordenador se desea realizar sobre el
dispositivo.
Diseño de una aplicación de control para el desarrollo de una herramienta de micromecanizado por
láser
Escuela Superior de Ingeniería Universidad de Sevilla
Diego Medina Medina Página 24 de 72
• Una cadena de caracteres numéricos opcional: esta cadena no es obligatoria en todos los
comandos. En general solo los comandos que deseen introducir un valor de configuración al
equipo, como por ejemplo el valor de potencia que deseamos utilizar o la frecuencia de disparo,
son los que incluirán este campo.
• Valor de terminación de cadena: todas las cadenas, como indicamos antes deberán incluir este
carácter para que el controlador del láser tenga la capacidad de diferenciar mensajes.
Si el controlador del láser recibe una cadena que no es capaz de identificar devolverá un mensaje de char
desconocido a través del puerto serie. Si es capaz de identificar el comando pero descubre que el valor de
la cadena numérica no se encuentra dentro del rango lo que enviará será un mensaje de cadena
desbordada para indicar que el valor no se ajusta al rango. Por último, el controlador también nos
indicaría que si lo que esperaba en un determinado carácter era un valor numérico y lo que recibe no lo
es, nos lo indicaría mediante un mensaje de carácter no numérico.
Con respecto a los mensajes que devuelve el controlador, en el manual se indica que lo que se envía es
una cadena de 15 caracteres precedidos por un CRLF.
En este apartado se indican todos los comandos que pueden recibir el controlador, la funcionalidad de los
comandos y sus respuestas. En base a ello se ha programado una función por cada una de los comandos
existentes. Cada función codificará la cadena a enviar por el puerto serie, avisará en caso de error en el
envío y de obtener la cadena recibida. Dicha cadena será devuelta a la aplicación superior por si esta
tuviera que obtener la información que requiera del mensaje recibido por el puerto serie.
3.3 FUNCIONES AUXILIARES
Existen una serie de funciones que resultarán necesarias en diferentes partes del programa, no
solamente a las API’s, y que se han incluido en una librería nombrada como “operaciones_auxiliares.h”.
En el anexo A se pueden encontrar las implementaciones de estas funciones, de las cuales vamos a hablar
sin entrar en mucha profundidad en el código.
Diseño de una aplicación de control para el desarrollo de una herramienta de micromecanizado por
láser
Escuela Superior de Ingeniería Universidad de Sevilla
Diego Medina Medina Página 25 de 72
En la librería se pueden identificar dos familias de funciones si atendemos a la tarea que cumplen, en la
primera familia tenemos funciones que se utilizar para codificar y clasificar datos mientras que la segunda
familia son funciones que se utilizaran para realizar estimaciones de tiempo de ejecución.
3.3.1 FUNCIONES DE CODIFICACIÓN Existe una problemática que hemos mencionado pero que no hemos indicado como se resolvía. El
programa que se ejecuta sobre el ordenador utiliza los valores obtenidos de los equipos como variables
enteras, sin embargo lo que llega a través de los puertos series son cadenas de caracteres. Esto implica
que deben de existir una función encargada de la conversión de cadenas de caracteres a enteros y de
enteros a cadena de caracteres para que el ordenador y los otros dispositivos puedan entenderse. Las
funciones encargadas de esto son las llamadas “enteroacaracter” y “caracteraentero”.
Además, en el caso del posicionador, se puede dar el caso de que la cadena tenga que tener previamente
un símbolo menos previo a la distancia de desplazamiento. Eso indica al posicionador que debe realizar
un desplazamiento negativo del eje. Para ello se implementa la función “codificavalorneg”. En esta
función lo que se hace simplemente es añadir dicho valor negativo cuando sea necesario. Existe su
función análoga “codificavalorpos”, cuya única diferencia es que no incluye dicho signo menos.
Se podría pensar que al ser funciones que, en general, se usan sobre el posicionador deberían incluirse en
la librería del posicionador, pero debido a que lo que realiza es un marcado del signo de la cadena de
caracteres, estas funciones pueden utilizarse también para otros puntos del programa y por eso se ha
incluido en esta librería.
En ciertos mecanizados, existe una necesidad implícita en la implementación del mecanizado que obliga a
que el número de pasadas que debe realizar el mecanizado sea par. Debido a esto, se ha incluido en esta
librería una función que le indica al programa principal si un número que se le ofrece a la función es par o
no.
Diseño de una aplicación de control para el desarrollo de una herramienta de micromecanizado por
láser
Escuela Superior de Ingeniería Universidad de Sevilla
Diego Medina Medina Página 26 de 72
3.3.2 FUNCIONES DE TEMPORIZACIÓN La segunda rama de funciones auxiliares que utilizamos da solución al cálculo del tiempo de ejecución del
mecanizado. Más adelante en la memoria se hace una descripción amplia de cómo se calculan los
tiempos de ejecución, posteriormente de que se hayan definido los mecanizados implementados por el
programa.
3.4 SOFTWARE DE CONTROL
En el siguiente apartado de la memoria se pretende profundizar en la forma de implementación del
diagrama de estados que se presentó en el apartado de descripción, para ser más exactos en la
ilustración de la figura 6.
Como se observa a lo largo de la memoria, se está desarrollando un programa que se soporta sobre dos
bases. La primera de ellas se fundamenta en el posicionador y su controlador y la segunda en el láser y su
controlador. Hasta este momento todo hace creer que los dispositivos funcionan de una manera
independiente el uno de otro. Es a partir de este momento que empezarán a interaccionar unas
funciones de las API del láser con otras funciones de la API del posicionador para obtener mecanizados de
manera automática. La siguiente figura pretende ilustrar una torre de capas de adaptación, donde cada
capa interacciona con la capa inferior y superior.
Figura 8: Diagrama de capas de las librerias y sentidos de las comunicaciones por cada puerto RS-232
Diseño de una aplicación de control para el desarrollo de una herramienta de micromecanizado por
láser
Escuela Superior de Ingeniería Universidad de Sevilla
Diego Medina Medina Página 27 de 72
En los siguientes apartados describiremos las características particulares de la implementación diseñada
para realizar la herramienta de mecanizado por láser.
3.4.1 FUNCIONES BASADAS EN LAS API’S
El siguiente paso en el desarrollo del proyecto es la elaboración de unas funciones a un nivel más alto de
programación que se basen en las funciones ofrecidas por las API’S y que emulen el comportamiento
implementado por el sistema de control del láser, para funcionar de manera automática.
Desarrollamos una librería que implemente funciones de control del arranque del dispositivo láser, ya
que las funciones que ejecutan la librería del posicionador resultan suficientes para que más adelante
podamos realizar la implementación de los mecanizados.
3.4.1.1 FUNCION DE LECTURA DE TEMPERATURA DE LA CAVIDAD RESONANTE LASER
Como se puede observar en la figura 9, existen dentro del diagrama de estados de la realización del
mecanizado dos bucles que exigen unos niveles de temperatura dentro de la cavidad resonante para
poder salir de dicho bucle.
Para ello se implementa una sola función que solicita al láser que le envíe el valor de la temperatura en la
cavidad resonante. A través de una función de conversión de los caracteres en los que se almacena la
información de la temperatura, se haya su valor equivalente en una variable entera esto permite que se
pueda comparar dicha temperatura con los umbrales programados y activar o desactivar dos banderas
que son las que nos permiten salir de estos bucles e indicar al programa principal que cumplimos la
condición para poder activar la lámpara o el sistema Q-SWITCH.
El primer valor umbral se corresponde con una temperatura de 32º C y el segundo valor umbral con una
temperatura de 35º C.
Diseño de una aplicación de control para el desarrollo de una herramienta de micromecanizado por
láser
Escuela Superior de Ingeniería Universidad de Sevilla
Diego Medina Medina Página 28 de 72
Como se ha indicado anteriormente, esta es una función que activa o desactiva las banderas, pero no
mantiene al sistema en espera de alcanzar la temperatura deseada si no se tiene. Por lo que no se trata
del bucle de espera de calentamiento.
3.4.1.2 FUNCIONES DE ACTIVACIÓN Y DESACTIVACIÓN DE LAMPARAS Y SISTEMA Q-SWITCH
Resultan necesarias cinco funciones que realicen las funciones de los botones del mando de control de las
figura 3, ya que el botón “Ready” no es necesario para el arranque de las lámparas.
Estas funciones tendrán que realizar las acciones de encendido y apagado de las lámparas, disparo simple
Q-SWITCH, disparo continuo Q-SWITCH y apagado del modo continuo Q-SWITCH. Dichas funciones se
encuentran en el anexo A del proyecto fin de carrera.
Dichas funciones invocan a las funciones de la librería del láser que están relacionadas con la activación
de la lámpara y del mecanismo de disparo en el caso en el que la bandera que les corresponde, de
temperatura mayor de 32º y de 35º C respectivamente, lo permitan. Además, en el caso de la activación
de la lámpara, además se hace una espera activa de 8.1 segundos ya que el mecanismo de bombeo no
alcanza el régimen permanente hasta transcurridos 8 segundos.
Para las funciones de parada de disparo continuo y de apagado de la lámpara se ejecutarán en cualquier
caso independientemente del valor de la bandera por cuestiones de seguridad.
Por último, indicar que el mecanismo de disparo simple no requiere de ejecutar posteriormente una
parada del mecanismo de disparo.
3.4.2 FUNCIONES DE MECANIZADO IMPLEMENTADAS
Una vez que ya tenemos implementadas las funciones que nos permiten obtener el valor de la
temperatura de la cavidad resonante del láser, la activación y desactivación de la lámparas para obtener
la inversión de población de la cavidad resonante y la activación y desactivación del sistema de disparo Q-
Diseño de una aplicación de control para el desarrollo de una herramienta de micromecanizado por
láser
Escuela Superior de Ingeniería Universidad de Sevilla
Diego Medina Medina Página 29 de 72
SWITCH podremos implementar las funciones que nos permitirán obtener los diferentes mecanizados
ofrecidos por el sistema.
Para ello, una vez seleccionado el mecanizado a realizar, la aplicación pasará los estados del diagrama de
la figura 9:
Figura 9: Diagrama de estados para el control de la temperatura de la cavidad resonante y el mecanizado
Este diagrama se basa en el funcionamiento del sistema láser. Cuando utilizamos el láser a través del
mando de control remoto, una vez que se configuran los parámetros previos a la interacción con la
muestra, el sistema requiere que la lámpara de inversión de población este encendida para que la
cavidad tenga la inversión de población necesaria para que suceda el fenómeno láser. Está lámpara,
según el manual, requiere de una temperatura de la cavidad de 32º C antes de que se pueda activar.
Por ello se realiza un bucle de espera activa en el que se solicita la temperatura de la cavidad resonante y
hasta que no supere dicha temperatura el sistema se mantendrá en espera y consultando al sistema la
temperatura cada segundo. Una vez que se alcanza la temperatura, la lámpara requiere de ocho
segundos hasta que se alcanza el régimen permanente de la inversión de población en la cavidad
resonante. Posteriormente, el sistema Q-SWITCH requiere de una temperatura de cavidad resonante de
35º C, por lo que se implementa otra espera activa hasta que la temperatura de la cavidad alcance el
umbral en el que puede realizar la emisión láser.
Una vez que se puede realizar la emisión láser, se implementa un bucle que se repetirá tantas veces
como iteraciones nos indique el técnico al usar la aplicación. En el bucle se activa el funcionamiento del
disparo continuo y el posicionador realizará los movimientos necesarios para que al exponer la muestra a
la interacción con la luz láser concentrada, como resultado obtengamos el mecanizado deseado. A
Diseño de una aplicación de control para el desarrollo de una herramienta de micromecanizado por
láser
Escuela Superior de Ingeniería Universidad de Sevilla
Diego Medina Medina Página 30 de 72
terminar la iteración apaga el mecanismo de disparo continuo y comprueba si era la última iteración del
bucle. Si no lo es volverá a realizar la misma función y si lo es desactivará la lámpara de bombeo y volverá
al control de la aplicación de nivel superior.
Además, de forma simultánea a la ejecución del bucle de realización del mecanizado. El programa
mostrará por pantalla la información del tipo de mecanizado a realizar, los parámetros introducidos por
el técnico de laboratorio y el tiempo estimado hasta la finalización del mecanizado
Esta información permitirá al técnico conocer el tiempo que queda hasta la finalización y permitirá el
aprovechamiento de ese tiempo para que el técnico realice otros procesos que no tengan que ver con el
mecanizado láser, permitiendo un mayor aprovechamiento del tiempo de trabajo de nuestro técnico.
En los siguientes subapartados vamos a describir los parámetros que son necesarios para cada uno de los
mecanizados, además del resultado esperado al finalizar dichos mecanizados a través de una figura.
3.4.2.1 CANAL
Un canal es una estructura que cuando se mecaniza por láser se obtiene en general gracias al fenómeno
de ablación por láser. Este eliminará material pasando de estar en estado sólido a estado gaseoso y
dependiendo del tipo de láser podría evitarse la aparición de material en estado líquido. Por ello, para
obtener una cavidad en un material, lo que se realizan son movimientos en un solo eje de la distancia del
canal seleccionado. El ancho del canal vendrá impuesto por el tamaño del spot del láser, y este a su vez
por la potencia de funcionamiento del láser.
Por ello los parámetros de un canal solo serán la longitud del canal y el eje sobre el que se quiere obtener
el canal. Con ello obtendremos el siguiente mecanizado.
Figura 10: Parámetros específicos de un canal
Diseño de una aplicación de control para el desarrollo de una herramienta de micromecanizado por
láser
Escuela Superior de Ingeniería Universidad de Sevilla
Diego Medina Medina Página 31 de 72
3.4.2.2 ASPA
La implementación de un aspa surge de la idea de obtener una manera de conseguir unas marcas de
alineación en la prueba a mecanizar. Resulta de vital importancia, si deseamos que la herramienta láser
pueda ser incluida dentro de los procesos de fabricación de la sala blanca, el que esta herramienta pueda
añadir un mecanismo para que si hubiera que alinear la muestra con algún otro proceso fotolitográfico,
este se pueda hacer con precisión y no tener que hacerlo a ciegas. Por ello, se implementa esta función.
El único parámetro específico necesario para este mecanizado es el tamaño de la aspa, ya que los ejes
serán siempre perpendiculares y del mismo tamaño. En la imagen se puede observar el resultado que se
debe obtener del mecanizado.
Figura 11: Parámetros específicos de un aspa
3.4.2.3 CANTILEVER
El cantilever es un brazo que está anclado solo en un extremo. Cuando tenemos una membrana
suspendida, resulta rápida y sencilla la fabricación de cantilevers mediante la técnica de mecanizado por
láser. La fabricación mediante procesos fotolitográficos resulta problemática a la hora de separar la
máscara de la membrana, ya que se podrían romper dichos brazos suspendidos al quedarse adheridos a
la máscara.
Como se puede observar en la figura 12, los cantilevers se obtienen de realizar una serie de canales que
atraviesen toda la membrana suspendida. Estos canales estarán separados en los centros de los mismos
por la relación de ancho que queremos que tenga la estructura suspendida más el tamaño del spot del
láser. Se realizarán tantos canales como cantilevers más uno se quieran generar. Posteriormente se
Diseño de una aplicación de control para el desarrollo de una herramienta de micromecanizado por
láser
Escuela Superior de Ingeniería Universidad de Sevilla
Diego Medina Medina Página 32 de 72
realizará otro canal perpendicular a los anteriores y que nos permitirá que los puentes anclados en los
dos extremos se conviertan en cantilevers.
Los parámetros para el diseño de este mecanizado serán: la longitud de cada cantilever, el ancho del
cantilever a diseñar (en el que se tendrá en cuenta que el ancho medio del spot se encuentra en torno a
las 100 µm), el de cantilevers que se desean generar y la orientación de los cantilevers. Como restricción,
la separación entre cantilevers será siempre el ancho del haz.
En la figura 12 se pueden observar como se han definido las orientaciones de los cantilever.
Figura 12: Parámetros específicos del mecanizado cantilever
3.4.2.4 CORTE DE UN RECTÁNGULO
Otro mecanizado importante en las pruebas de laboratorio desarrollado ha sido el corte de una pieza
rectangular. Los únicos parámetros específicos que deberá indicar la estructura de información a la hora
de realizar el mecanizado serán el tamaño de la base y la altura de la pieza a cortar. No necesariamente
tendría que cortarse la pieza, ya que con el número de pasadas podríamos realizar obtener una
separación de un canal con forma rectangular.
Diseño de una aplicación de control para el desarrollo de una herramienta de micromecanizado por
láser
Escuela Superior de Ingeniería Universidad de Sevilla
Diego Medina Medina Página 33 de 72
Figura 13: Parámetros específicos del corte de un rectángulo
3.4.2.5 MARCO HACIA EL INTERIOR
Aprovechando la función que realiza el rectángulo podemos eliminar material de la muestra en un patrón
la forma de un marco. Estrictamente hablando, el mecanizado anterior es propiamente un marco del
ancho del tamaño del spot. En este caso estamos interesados en generar un marco rectangular de un
ancho mayor que el que posee el tamaño del spot del láser y realizar una eliminación de un área.
Figura 14: Parámetros específicos del mecanizado marco hacia el interior
En la figura 14 podemos ver el mecanizado y los parámetros que tendrá que entregar la estructura de
parámetros específica del mecanizado. El área existente entre los dos rectángulos concéntricos es la que
será eliminada.
Los parámetros del mecanizado son: base, altura, ancho del marco y precisión. Este último parámetro se
refiere a la separación que existirá entre un rectángulo y su adyacente, ya que el marco se genera a
través de la eliminación rectángulos concéntricos separados por el parámetro de precisión. La indicación
de punto inicial y punto final nos indica el punto en el que iniciará el mecanizado y en el que terminará de
eliminar material en cada pasada, aunque luego volverá al punto inicial de nuevo. Por esta forma de
atacar el material desde un punto más externo hacia uno más interno decimos que el marco se genera
desde fuera hacia adentro (o hacia el interior).
Diseño de una aplicación de control para el desarrollo de una herramienta de micromecanizado por
láser
Escuela Superior de Ingeniería Universidad de Sevilla
Diego Medina Medina Página 34 de 72
3.4.2.6 MARCO HACIA EL EXTERIOR
Este mecanizado es una modificación del anterior para el caso en el que estemos interesados en realizar
el mecanizado desde dentro hacia fuera (o hacia el exterior). La justificación de este mecanizado se
fundamenta en que permitirá la eliminación de material sin afectar en ningún caso a la zona interior al
marco. Con el marco anterior, si los parámetros no estuvieran bien ajustados podría afectarse a la zona
interior donde ya podría existir otro mecanizado, mientras que con este mecanizado es posible. Además
con este mecanizado podemos realizar, en el caso extremo, una eliminación de un área rectangular
completa, cosa que en el anterior mecanizado no es posible ya que el programa obliga a que el marco
nunca alcance el centro del rectángulo. Los parámetros específicos serán los mismos que en el
mecanizado anterior, con la diferencia de que la definición de los parámetros difiere del caso anterior.
Esto se puede ver en la figura 15.
Figura 15: Parámetros específicos del mecanizado marco hacia afuera
En este mecanizado los parámetros de base y altura se refieren a la base y altura del rectángulo de menor
área y los puntos inicial y final se ven permutados. Los parámetros de ancho del marco y de precisión
tienen la misma definición que en el caso anterior.
3.4.2.7 MEMBRANA SUSPENDIDA
Este mecanizado surgió como solución a una necesidad concreta de un estudio que se estaba realizando
en el laboratorio. La idea es mecanizar una membrana suspendida, como en el caso de los cantilevers,
pero transfiriéndole un patrón de corte para obtener una masa suspendida por cuatro brazos.
Diseño de una aplicación de control para el desarrollo de una herramienta de micromecanizado por
láser
Escuela Superior de Ingeniería Universidad de Sevilla
Diego Medina Medina Página 35 de 72
Figura 16: Parámetros específicos del mecanizado de una membrana suspendida
En la figura 16 podemos observar que la estructura se consigue como resultado del corte de cuatro
trapecios en la configuración que se muestra en la imagen. Estos trapecios tienen unas pendientes de 45º
en los lados oblicuos. Los únicos parámetros necesarios para obtener dicha masa suspendida serán el
tamaño de la masa, la altura del trapecio (que se corresponderá con la longitud que tendrán los soportes
de la masa con una relación raíz de dos veces la altura de la base), y el ancho de los soportes de la masa.
3.4.2.8 DISPARO REPETITIVO CONTROLABLE
Este mecanizado es el más sencillo de los que se podían realizar previamente al desarrollo del software
de este proyecto fin de carrera. Existe la posibilidad de utilizar el disparo simple para tener un control
exacto, pero resulta mucho más lento que utilizar el disparo continuo y controlar el tiempo de exposición.
Debido a la baja tasa de disparo del láser y realizando un control sobre el tiempo de exposición, se podían
conseguir taladros con este método con un bajo error sobre el número de disparos realizados de manera
manual, de 3 a 8 disparos dependiendo del tiempo de reacción de la persona en activar y desactivar el
láser cuando el tiempo de exposición es mayor a un segundo. Con el programa se consigue una gran
exactitud sobre el número de disparos, como máximo un error en un disparo de más incluso para
cantidades inferiores a los diez disparos.
El programa solo requerirá como parámetro especifico de este mecanizado el número de disparos que
deseamos realizar sobre la superficie.
Diseño de una aplicación de control para el desarrollo de una herramienta de micromecanizado por
láser
Escuela Superior de Ingeniería Universidad de Sevilla
Diego Medina Medina Página 36 de 72
Figura 17: Parámetros específicos del mecanizado disparo repetitivo controlable
3.4.2.9 MATRIZ DE DISPARO
El mecanizado anterior puede ser interesante para realizar pruebas aisladas y no escalables. En el caso de
que deseásemos realizar un array de taladros, sería tedioso elaborarlo con el mecanizado anterior. Por
ello se realiza un nuevo mecanizado que permite generar un array de taladros. En la figura 18 se observan
los parámetros específicos de este mecanizado.
Figura 18: Parámetros específicos del mecanizado matriz de disparo
Dichos parámetros son el número de disparos que se realizarán sobre cada uno de los taladros, el
número de filas y de columnas del array, la separación entre filas, denominada dY, y la separación entre
columnas, denominada dX.
3.4.2.9 ATAQUE DE ÁREA RECTANGULAR
Por último añadiremos un ataque de área en forma rectangular. Aunque este se podría obtener mediante
el mecanizado del marco hacia el exterior, resulta más intuitivo realizar una función que mediante rectas
horizontales de una longitud la base del rectángulo separadas un parámetro de precisión nos eliminen
material hasta llegar a la altura del rectángulo deseado.
Diseño de una aplicación de control para el desarrollo de una herramienta de micromecanizado por
láser
Escuela Superior de Ingeniería Universidad de Sevilla
Diego Medina Medina Página 37 de 72
Figura 19: Parámetros específicos del mecanizado ataque de área rectangular
En la figura 19 se puede observar la relación entre los parámetros que definen el mecanizado y el
resultado esperado.
3.4.3 CÁLCULO DE LA TEMPORIZACION
Como se ha indicado anteriormente, las funciones que forman parte de la librería
“operaciones_auxiliares.h” y se utilizan para realizar estimaciones del tiempo de ejecución del
mecanizado. No existe una función de temporización genérica ya que la forma específica del mecanizado
es determinante a la hora de realizar la estimación del tiempo de ejecución.
La función calculará el tiempo de funcionamiento del posicionador para realizar el mecanizado y le
indicará al técnico de laboratorio el tiempo estimado en que finalizará el mecanizado. Además, al finalizar
la ejecución de la aplicación indicará el tiempo en el que se inició el mecanizado y el tiempo de
finalización.
Ahora vamos a explicar el cálculo del tiempo estimado que falta para la finalización en cada uno de los
mecanizados.
3.4.3.1 MODELO DEL CANAL
El canal tiene como parámetros de ejecución el número de pasadas, la longitud del canal y la velocidad a
la que funcionará el. Así el tiempo en minutos que le resta para finalizar el mecanizado será:
( )velocidad
pasadasnlongitudTcanal ⋅
⋅=60
º(min)
Diseño de una aplicación de control para el desarrollo de una herramienta de micromecanizado por
láser
Escuela Superior de Ingeniería Universidad de Sevilla
Diego Medina Medina Página 38 de 72
3.4.3.2 MODELO DEL ASPA
El aspa tiene como parámetros de ejecución el número de pasadas, la longitud de cada brazo de la aspa y
la velocidad a la que funcionará el posicionador. Por lo que el tiempo, expresado en minutos, que le
tardaría un mecanizado con estos parámetros son:
( )velocidad
pasadasnlongitudTaspa ⋅
⋅⋅=60
)º(2min
Resulta evidente que el tiempo será el doble que en el anterior caso, ya que generamos dos rectas
perpendiculares, una por cada eje.
3.4.3.3 MODELO CANTILEVER
El tiempo de mecanizado de cantilevers utilizaremos los parámetros: número de cantilevers, número de
pasadas, longitud del cantilever, ancho del cantilever. Para obtener N cantilevers requeriremos N+1
canales y la distancia del canal perpendicular será de N+1 (Ancho del canal (µm)+ 100 µm). Por lo que el
tiempo de ejecución del mecanizado en minutos será:
( ) ( )velocidad
pasadasnancholongitudsCantileverNT scantilever ⋅
⋅++⋅+=60
)º(000.1)1º(min
3.4.3.4 MODELO CORTE DE UN RECTANGULO
El corte de un rectángulo tiene como parámetros de ejecución el número de pasadas, la longitud del
perímetro del mismo en función de la base y la altura del mismo y la velocidad de funcionamiento del
posicionador. En función a estos parámetros podremos expresar el tiempo, en minutos, que le faltarían al
sistema para finalizar el mecanizado como:
( ) ( )velocidad
pasadasnalturabaseTrect ⋅
⋅+=60
º2(min)
Diseño de una aplicación de control para el desarrollo de una herramienta de micromecanizado por
láser
Escuela Superior de Ingeniería Universidad de Sevilla
Diego Medina Medina Página 39 de 72
3.4.3.5 MODELO MARCO
El tiempo en que se realiza el mecanizado de tipo marco es independiente de si se realiza hacia dentro o
hacia fuera, ya que ajustando los parámetros podremos atacar la misma cantidad de área con las dos
funciones.
Para poder calcular el tiempo de ejecución utilizaremos los parámetros: base, altura, ancho del marco,
precisión, número de pasadas y velocidad de funcionamiento del posicionador.
El ancho del marco dividido por la precisión nos indicará el número de rectángulos que serán necesarios
para realizar el ataque en superficie. Luego podemos calcular el tiempo medio de realización del
cuadrado como la media aritmética entre el rectángulo del mayor perímetro y el de menor perímetro, ya
que el incremento en perímetro es proporcional al número de rectángulos.
Dicha distancia resulta ser:
( )
)2(22
844
2
)22(22
anchoalturabaseD
anchoalturabaseanchoalturaanchobasealturabaseD
Media
Media
++=
=++=+++++=
Por lo que el tiempo total de ejecución, en minutos, será:
( ) ( )velocidad
pasadasnanchoalturabase
velocidad
pasadasnDT Media
marco ⋅⋅++=
⋅⋅
=60
º)2(2
60
º(min)
3.4.3.6 MODELO MASA SUSPENDIDA
Como se indicó al definir el modelo, este mecanizado se forma a parir de la eliminación de cuatro
trapecios. Por lo que habrá que calcular la distancia de que recorrerá el láser.
Diseño de una aplicación de control para el desarrollo de una herramienta de micromecanizado por
láser
Escuela Superior de Ingeniería Universidad de Sevilla
Diego Medina Medina Página 40 de 72
En este mecanizado existe la particularidad, de que las rectas oblicuas, se generan por el movimiento de
los dos ejes del posicionador a la misma ve4z. Por ello para calcular la distancia recorrida solo tendremos
en cuenta la distancia horizontal en los trapecios horizontales y la distancia vertical en los trapecios
verticales. Como la distancia será la misma en los cuatro trapecios utilizaremos la de uno de ellos para
calcular el tiempo de ejecución que se verá multiplicado por cuatro.
alturamasaalturaDtrapecio 222 ++=
velocidad
pasadasnDT trapecio
roacelerómet ⋅⋅⋅
=60
)º(4(min)
3.4.3.7 DISPARO REPETITIVO CONTROLABLE
Este modelo es muy sencillo, ya que lo que deseamos es hacer un taladro con una profundidad conocida
y controlada por el número de disparos. En este caso el tiempo será proporcional al número de disparos,
teniendo en cuenta los ocho segundos de arranque de las lámparas de bombeo y la tasa de diez disparos
por segundo del láser, tenemos que el tiempo en minutos de un taladro será:
min/60
/10
º8
(min)seg
segdisparos
disparosnseg
T troladodisparocon
+
=
3.4.3.8 MATRIZ DE DISPARO
Este mecanizado pretende realizar una matriz de taladros con el mismo número de disparos por taladro.
Para el cálculo del tiempo calcularemos, como en el mecanizado anterior, el tiempo por taladro y luego
los tiempos que tarda el sistema en posicionarse en el número punto a taladrar. Como la lámpara se
enciende solo una vez, en este mecanizado despreciamos esos ocho segundos frente a la totalidad del
mecanizado.
4 Para obtener una recta oblicua se aprovecha que el controlador del posicionador permite realizar movimientos en los ejes de forma paralela. Por ello, el movimiento que describe el láser sobre la muestra es una recta con una inclinación. Para obtener diferentes pendientes jugamos con una relación de proporcionalidad entre las velocidades de los ejes, ya que los disparos tendrán la misma frecuencia y el tiempo de ejecución de los movimientos de cada eje deberán de ser los mismos. Al aumentar la velocidad de uno de los ejes, eso implicará una mayor dispersión de los disparos.
Diseño de una aplicación de control para el desarrollo de una herramienta de micromecanizado por
láser
Escuela Superior de Ingeniería Universidad de Sevilla
Diego Medina Medina Página 41 de 72
Los parámetros a necesarios para el cálculo del tiempo de mecanizado serán: número de disparos por
taladro, número de filas, número de columnas, separación entre filas, separación entre columnas y
velocidad de funcionamiento del posicionador. Las filas se considerarán posicionadas a lo largo del eje Y y
las columnas a lo largo del eje X.
Con esta definición, el tiempo en minutos de ejecución del mecanizado será de:
( ) ( )velocidad
dYfilasnfilasndXcolumnasn
disparos
disparosnT arosmatrizdisp ⋅
⋅+⋅⋅+=60
º2ºº2
min/600
º(min)
3.4.3.9 ATAQUE DE ÁREA RECTANGULAR
Los parámetros específicos que definen este mecanizado son la base del área a eliminar, la altura y el
parámetro de precisión. Para el cálculo de la temporización nos hará falta también conocer el número de
pasadas sobre el material que se habrán de efectuar.
Con estos parámetros el tiempo estimado de duración del mecanizado será aproximadamente:
( )velocidad
baseprecisionAlturapasadasnTárearect ⋅
⋅⋅=60
)(º(min)
3.4.4 ENTORNO GRÁFICO
Para el desarrollo de la aplicación gráfica, al igual que en el desarrollo de librerías, se ha utilizado el
entorno de programación Builder C/C++.
El programa se basa en una serie de ventanas que estarán formadas por una serie de botones para
acceder de una ventana a otra y una serie de campos para obtener los parámetros del mecanizado. El
diagrama de estados que sigue la aplicación es el de la figura 20, que ya se había introducido
anteriormente.
Diseño de una aplicación de control para el desarrollo de una herramienta de micromecanizado por
láser
Escuela Superior de Ingeniería Universidad de Sevilla
Diego Medina Medina Página 42 de 72
Figura 20: Diagrama de estados del programa de control
Ahora me dispongo a comentar la implementación de las formas que se corresponden con el diagrama de
estados.
3.4.4.1 Mensaje inicial
Esta forma es la que da la bienvenida al usuario al programa. En ella se indicará el nombre, la versión del
software que está utilizando y el diseñador de la aplicación. También aparecen dos botones, uno con el
mensaje “Continuar” y el otro con el mensaje “Salir de la Aplicación”. En la figura 21 se puede observar el
formato de dicha forma:
Diseño de una aplicación de control para el desarrollo de una herramienta de micromecanizado por
láser
Escuela Superior de Ingeniería Universidad de Sevilla
Diego Medina Medina Página 43 de 72
Figura 21: Menú inicial
Por último existe también un menú desplegable con el mensaje “Seleccione el mecanizado a realizar”, en
el que se encuentran los diferentes tipos de mecanizados que incluye la versión del programa. Por
defecto, dicho desplegable, no ofrecerá ningún mecanizado y será el usuario del software el que tendrá
que indicarlo.
Figura 22: Desplegable con los diferentes mecanizados que ofrece la aplicación
Si el usuario pulsase el botón de “Continuar”, sin haber seleccionado ningún mecanizado, el programa
mostrará una etiqueta para alertar al usuario del error cometido. Una vez seleccionado el mecanizado, al
pulsar el botón de “Continuar”, una nueva forma sustituirá a la anterior.
Cada mecanizado requiere de una serie de parámetros genéricos y unos específicos. Por ello existirá una
forma por cada tipo de mecanizado. Dicha forma se encargará de obtener los parámetros que requiere el
mecanizado.
Diseño de una aplicación de control para el desarrollo de una herramienta de micromecanizado por
láser
Escuela Superior de Ingeniería Universidad de Sevilla
Diego Medina Medina Página 44 de 72
3.4.4.2 Menú de adquisición de los parámetros del mecanizado
En la figura 23 se puede observar como es la forma correspondiente a un mecanizado concreto, la
correspondiente a la obtención de parámetros del cantilever.
La forma tiene dos ScrollBar que se utilizan para que el programa ofrezca un rango acotado de valores
acorde a los que se le pueden ofrecer a los dispositivos. Estos forman parte de los parámetros genéricos
como son el valor de la potencia del láser y velocidad del posicionador. Al moverse la posición del
ScrollBar, el valor que toma se va actualizando en una etiqueta que se coloca a la derecha del ScrollBar.
El otro parámetro genérico, como ya sabemos, es el número de pasadas que se obtendrá a través de un
campo del tipo Edit.
Para obtener los parámetros específicos del mecanizado existirán una serie de campos tipo Edit que se
utilizarán para capturar valores y otro del tipo RadioButtom (que no tendrá porqué aparecer en todos los
tipos de mecanizados), que permitirá seleccionar una sola opción dentro de una serie de valores.
Se incluye además una imagen del modelo del mecanizado. En dicha imagen aparecerá una serie de
indicaciones para que el técnico de laboratorio sepa diferenciar los valores de los parámetros a introducir
al mecanizado.
Figura 23: Menú de obtención de parámetros
Diseño de una aplicación de control para el desarrollo de una herramienta de micromecanizado por
láser
Escuela Superior de Ingeniería Universidad de Sevilla
Diego Medina Medina Página 45 de 72
En la forma existen dos botones, uno con el mensaje “Continuar” y otro con el mensaje “Volver Atrás”.
Vamos a comenzar a hablar del segundo de los botones debido a que su única función es volver a la
forma anterior. Esto es así debido a que el técnico puede darse cuenta de que no ha seleccionado el
mecanizado que deseaba realizar y desea volver a la forma de selección de mecanizado.
El primero de los botones, al igual que en el caso anterior, se utiliza para chequear que todos los
parámetros han sido introducidos y que tienen el formato correcto. Si no cumpliera alguno de los dos
casos, se mostraría un mensaje en la forma que alertara al técnico de laboratorio como muestra la
siguiente imagen.
En la figura 24 se puede observar que falta por seleccionar una orientación de los cantilever con respecto
a la que se nos muestra en la imagen. En la figura 25 se puede observar que al introducir un número
disparos negativos en la prueba de disparo controlado también activar la misma alerta.
Figura 24: Mensaje de error por no seleccionar orientación
Diseño de una aplicación de control para el desarrollo de una herramienta de micromecanizado por
láser
Escuela Superior de Ingeniería Universidad de Sevilla
Diego Medina Medina Página 46 de 72
Figura 25: Mensaje de error debido a haber introducido un número negativo de pasadas
En cambio, si introducimos todos datos y estos tienen el formato correcto una nueva forma sustituiría a
la actual.
3.4.4.3 Menú de inicio del mecanizado
En la figura 26, podemos observar la forma que sustituye a la forma de obtención de parámetros. En ella
se muestran los parámetros que se le han facilitado al programa en la forma anterior. Dichos parámetros
son los genéricos y específicos. Además se realiza una estimación del tiempo en el que se ejecutará el
mecanizado.
Inicialmente se muestran dos botones, uno con el mensaje “Empezar Mecanizado” y el otro con “Cambiar
parámetros del Mecanizado”.
El primero se pulsará en el caso de que el técnico no se haya equivocado al introducir los parámetros y
entonces empezará toda la fase de realización del mecanizado. En caso de que detecte que se ha
equivocado al introducir los valores, podrá pulsar el botón de “Cambiar parámetros del Mecanizado” y
volverá al menú anterior, para cambiar el o los parámetros que no haya introducido correctamente.
Diseño de una aplicación de control para el desarrollo de una herramienta de micromecanizado por
láser
Escuela Superior de Ingeniería Universidad de Sevilla
Diego Medina Medina Página 47 de 72
Figura 26: Menú previo al mecanizado
Posteriormente a la finalización del mecanizado, aparecerán dos nuevos botones que se encontraban
ocultos como se puede observar en la figura 27 y que sustituirán a los que se veían anteriormente.
Figura 27: Menú después de realizar el mecanizado
Estos nuevos botones, con los mensajes “Nuevo Mecanizado” y “Fin de mecanizados”. El primero nos
devolverá al menú inicial, mientras que el segundo nos hará salir de la aplicación.