You are on page 1of 57

MEXICO

CHROMA-II DISEO Y CONSTRUCCIN DE UN CONTROL NUMRICO DE ARQUITECTURA ABIERTA

ESPECIALIDAD: Ingeniera Mecnica

GILBERTO HERRERA RUIZ


DOCTOR EN INGENIERA

Fecha de ingreso (20 DE SEPTIEMBRE DEL 2007)

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

CONTENIDO

Pgina Resumen ejecutivo


1 Introduccin 2 Estado del Arte 3 Metodologa 4 Conclusiones 5 Bibliografa

3 4 10 17 51 52

Especialidad: Mecnica

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

RESUMEN En la actualidad, uno de los temas ms importantes de la investigacin en el rea de manufactura, esta enfocado al desarrollo de Sistemas Inteligentes de Manufactura, la finalidad de estos sistemas es que puedan operar sin la intervencin humana. En estos sistemas autnomos, las tareas de monitorizacin del proceso, tales como la deteccin y correccin de fallas en la herramienta, que antes estaban bajo el control del operador de la mquina, se dejan al cerebro del sistema el Control Numrico por Computadora (CNC). En el presente trabajo se muestra el diseo y desarrollo de un control numrico de arquitectura abierta CHROMA-II el cual tiene capacidades de monitorizacin del estado de la herramienta as como posibilidades de introducir algoritmos de control.

Palabras clave: CNC, Monitorizacin de herramienta, Mquinas-herramienta

Especialidad: Mecnica

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

1.

INTRODUCCIN.

En la actualidad, uno de los temas ms importantes de la investigacin en el rea de manufactura, esta enfocado al desarrollo de Sistemas Inteligentes de Manufactura, la finalidad de estos sistemas es que puedan operar sin la intervencin humana. En estos sistemas autnomos, las tareas de monitorizacin del proceso, tales como la deteccin y correccin de fallas en la herramienta, que antes estaban bajo el control del operador de la mquina, se dejan al cerebro del sistema el Control Numrico por Computadora (CNC). Para que ste sistema pueda sustituir eficientemente a los operadores de las mquinas-herramienta, deben de estar equipados con sistemas de monitorizacin, diagnstico y correccin de dichas fallas. En este mismo sentido es de vital importancia que las fallas sean corregidas en tiempo real, dado que si no se detecta y corrige la falla, entonces se pueden causar desperfectos en la mquina, la pieza o en el porta-herramienta. A manera de ejemplo en caso de que la ruptura de la herramienta no se detecte a tiempo, el porta-herramienta se puede romper y en algunos casos si el problema persiste, la mquina y la pieza de trabajo pueden daarse. Esto sucede debido a que la herramienta en vez de cortar, empieza a solo empujar la pieza de trabajo, causando una sobrecarga en la mquina, donde en el mejor de los casos esta ltima se descalibra. Es por ello que los sistemas actuales de Control Numrico necesitan contar con capacidad de multiprocesamiento as como con capacidad de poder ingresar diferentes tipos de sensores, desgraciadamente los CNCs actuales no permiten cambiar su configuracin es por ello que es necesario el establecer propuestas de arquitecturas abiertas en dichos sistemas que nos permitan introducir no solo sensores sino diferentes algoritmos de control. Las estadsticas muestran que alrededor del 20% del tiempo ocioso de la mquina se debe a fallas que suceden durante la operacin de corte de la mquina, estas fallas se deben comnmente a rupturas de herramientas. Esta cifra nos muestra la importancia de los sistemas de deteccin y correccin de las fallas en la productividad de la industria metal-mecnica. En dichas fallas no solamente son relevantes las rupturas completas de herramienta, sino tambin las fallas ms pequeas y que tienen un impacto en la calidad del acabado en la pieza a producir, dichas fallas estn relacionas al astillamiento de la herramienta o al desgaste de la misma.

Especialidad: Mecnica

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

La importancia y rea de investigacin de este trabajo es clara si se toma en cuenta que la industria manufacturera en Mxico es la industria exportadora ms importante del pas, mientras en 1981 aportaba el 16% del valor de las exportaciones totales del pas, actualmente aporta el 83% (NAFINSA), La industria metal-mecnica aporta por si sola 40% del total de las exportaciones, principalmente a travs de la Industria automotriz y de la de autopartes (NAFINSA). Contrariamente a lo que sucede en la industria automotriz la cual es meramente dominada por empresas transnacionales, Mxico cuenta con una industria de autopartes que en su mayor parte es nacional. La industria de autopartes en Mxico realiz exportaciones en 2006 por 5000 millones de dlares. Esta industria sin embargo al ser proveedores de partes de la industria automotriz tiene una demanda por mantener una alta calidad y productividad para mantenerse en competitividad internacional. En el caso especfico de nuestro estado este posee una estructura econmica muy diversificada en la actividad industrial; El sector de autopartes es especialmente relevante por su aportacin al PIB del estado. La industria Queretana de maquinaria y equipo es la ms importante ya que aporta un 81.5% del valor de la produccin total industrial del Estado, as mismo da empleo a ms de 45 mil personas (Anuario econmico 1999), es importante mencionar que en este sector de maquinaria y equipo el 94.4% del total de las empresas son pequeas y medianas. Hasta el da de hoy, los elementos y los mtodos que se han venido utilizando para detectar fallas en las herramientas de corte no satisfacen a los investigadores que trabajan en ello (Altintas, 1988), ni contribuyen a resolver verdaderamente los problemas que enfrentan los usuarios. Gran parte de estos fracasos relativos se debe a que los mtodos de deteccin de fallas han estado basados primordialmente en los resultados que proporcionan el anlisis de Fourier y los anlisis estadsticos (Tarng, 1992), aplicados a las seales que pueden monitorizarse durante el proceso de maquinado; sin embargo, ninguno de estos mtodos ha sido efectivo en la deteccin de fallas, tales como la deteccin de astillamientos de la herramienta, ya que estos mtodos solamente reportan cambios sutiles en las fuerzas de corte, localizadas en el eje del tiempo. Otro problema que ha afectado la investigacin hasta hoy hecha, es que al basarse en el anlisis de frecuencia bajo la transformada de Fourier, su anlisis demanda alta cantidad de tiempo de computo, por lo que la utilizacin de este medio en ambiente

Especialidad: Mecnica

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

industrial no se ve muy factible ya que difcilmente podra realizarse en tiempo real (Herrera, 1995). Debido a esto y en respuesta a la necesidad que se tiene para que los datos obtenidos en la monitorizacin se procesen adecuadamente y permitan que tengamos diagnsticos previos, rpidos y correctos, estamos proponiendo un proyecto de investigacin en el cual se pueda encontrar una tcnica nueva de deteccin de astillamiento y ruptura de herramientas, donde los mdulos que integraran el sistema de monitorizacin, diagnstico y correccin de fallas deben contar con inteligencia. Para que el diagnstico tenga xito en nuestro sistema propuesto, el procesamiento de las seales del corte tendr que estar basado en el uso de Wavelets (Herrera, 1994). Con esta nueva teora matemtica, es posible construir un mtodo ms sensitivo de anlisis que permita explorar pequeos cambios en el proceso de corte, a partir de seales de fuerza involucradas en el mismo. A grandes rasgos, podemos decir que mediante el uso de wavelets, el analista puede enfocarse en los detalles de su anlisis de seales, tal y como si utilizara una cmara con un lente de zoom. A diferencia de la transformada de Fourier, la cual solo proporciona informacin en frecuencia, la transformada de wavelet proporciona informacin en tiempo y frecuencia simultneamente. La teora de wavelets nos permite trabajar sobre los vacos de informacin que a veces presentan los datos. En realidad la teora de wavelets, a travs de la transformada discreta de wavelet, supera a la transformada rpida de Fourier en el reconocimiento de los cambios pequeos de fuerza que se tienen cuando una herramienta corta, y los cuales son definitivos para predecir una falla que pueda volverse fatal en el sistema total de maquinado. Para evitar todo este panorama que reduce la calidad de la manufactura, es necesario que el sistema de deteccin y diagnstico de la mquina-herramienta enve informacin fidedigna al sistema de correccin de fallas; tambin es necesario que los mtodos de monitorizacin y anlisis de las seales de corte sean congruentes con los requerimientos del CNC. En este caso, las matemticas de wavelet presumen ser la mejor teora que nos permita encontrar las fallas en el corte y actuar en favor de su

Especialidad: Mecnica

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

correccin durante periodos de tiempo suficientes para evitar daos severos al sistema de manufactura. Otro punto importante en el desarrollo de este trabajo es el tratar de evitar el uso de sensores costosos que hara imposible el uso de esta tcnica a la pequea y mediana empresa del pas, es por ello que se introduce el concepto de monitorizacin sin sensores (sensorless) el cual nos permite usar seales ya existentes en la maquinaria de control numrico comercial, el presente trabajo se centra en el uso de las seales de corriente de los motores que manejan los ejes de movimiento de dichas mquinas, esta seales de corriente nos dan una informacin de las fuerzas ejercidas durante el maquinado de una pieza. Los obstculos que tenemos al usar estas seales es principalmente que son seales con poca sensibilidad y con una gran cantidad de ruido debido a que provienen de sistemas con una frecuencia de conmutacin muy alta lo que contiene ruido de alta frecuencia asociada a la seal misma. En la figura 1.1 se muestra la fotografa de una fresadora tpica convertida a CNC (Computer Numeric Control, control numrico computarizado) que puede ser encontrada en las industrias manufactureras de nuestro pas, misma que es la utilizada para llevar a cabo el desarrollo y las pruebas del sistema de deteccin de rupturas. La figura 1.2 muestra un acercamiento de la bancada de la fresadora FNK 25A. La herramienta de corte con los insertos se muestra en la figura 1.3.

Especialidad: Mecnica

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

Figura 1.1. Fresadora FNK 25A.

Figura 1.2. Bancada de la fresadora FNK 25A.

Especialidad: Mecnica

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

Figura 1.3. Herramienta de corte tpica con insertos.

Con el objeto de detectar la condicin operativa de las herramientas durante el proceso de fresado se han propuesto diversos esquemas de sensado de seales y en la figura 1.4 se muestran los ms importantes reportados hasta la fecha. Algunos sistemas de deteccin se basan en el uso de un esquema de sensores mientras que otros sistemas lo hacen utilizando varios tipos de sensores de manera simultnea. Como se puede observar en la figura 1.4, los mecanismos de sensado de las seales para la deteccin del estado de las herramientas en un proceso de fresado se pueden clasificar de dos formas: por el lugar donde se lleva a cabo el sensado y por la variable a sensar y sensor utilizado. El lugar donde se puede llevar a cabo el sensado incluye: el husillo, el cuerpo de la mquina, los cojinetes del husillo, el porta-herramientas, el proceso mismo de corte, la abrazadera, la bancada, el tornillo de bolas y el manejador del eje (Servo-driver, servo-amplificador), Prickett y Johns (1999). En cuanto a la variable a sensar y el sensor utilizado se destacan: fuerza, torque, vibracin, emisin acstica, sonido, visin, posicin, velocidad, corriente en los motores, potencia en los motores, precarga y fuerza de corte.

Especialidad: Mecnica

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

Figura 1.4. Principales mecanismos de sensado de seales en un proceso de fresado. (Adaptada de Prickett y Johns, 1999).

Cada una de las soluciones propuestas para llevar a cabo la deteccin del estado de las herramientas tiene sus propias ventajas y desventajas y la eleccin del mtodo o conjunto de mtodos adecuados para una aplicacin especfica dependen de varios factores como son: precisin, exactitud, resolucin, tiempo de anlisis, poder de cmputo y costo total del sistema. Poder seleccionar la solucin ptima requiere de un anlisis y evaluacin de los mtodos mencionados. 2. ESTADO DEL ARTE En el presente captulo se muestra un anlisis del estado del arte, utilizado como fundamento para el desarrollo del trabajo. La revisin se ha dividido en cinco temas principales: procesos de maquinado, deteccin de desgaste y ruptura, acondicionamiento de seales, procesamiento digital de seales y procesamiento de seales en circuitos integrados.

Especialidad: Mecnica

10

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

En la seccin correspondiente al proceso de maquinado se revisan los desarrollos de los modelos matemticos que involucran la fuerza de corte de las herramientas. La deteccin de desgaste y ruptura es uno de los temas centrales del presente trabajo y en esta seccin se muestra la literatura que ha tratado este tema. As mismo, se ha incluido un anlisis del estado del arte en lo que se refiere al proceso en si y a los equipos comerciales que cumplen parcialmente con esta funcin en las herramientas modernas. La literatura correspondiente al manejo de seales analgicas y su procesamiento se revisa en la seccin de acondicionamiento de seales. La informacin relativa al desarrollo y aplicacin de algoritmos digitales para el procesamiento de informacin se trata en la seccin de procesamiento digital de seales. Finalmente, en la seccin correspondiente al procesamiento de seales en circuitos integrados se revisa la literatura pertinente a la realizacin fsica de los algoritmos de procesamiento digital de seales. 2.1 Proceso de maquinado

El proceso de maquinado debe ser comprendido para entender la forma en que se generan las seales que determinan o indican la manera en que se produce el corte. Esto involucra principalmente el anlisis dinmico del proceso de corte por las herramientas en funcin de los materiales y los parmetros involucrados como son: la velocidad de giro del husillo, la tasa de alimentacin, la profundidad del corte y el nmero de insertos en la herramienta. De este anlisis surge la forma de onda de la seal a procesar. La teora del proceso de maquinado se presenta de una manera muy completa en Altintas (2000 a). El captulo 2 incluye un anlisis de la mecnica del proceso de corte en metales. En las secciones 2.2 a 2.8 se presentan los casos ms importantes de la mecnica del proceso de corte en sus variantes ortogonal, oblicua y helicoidal, as como los modelos predictivos de las fuerzas de corte en los diferentes ejes coordenados. Las deformaciones estticas y dinmicas durante el maquinado son cubiertas en el captulo 3 donde se resaltan los efectos producidos por estas deformaciones como una vibracin. El captulo 6 trata sobre el maquinado asistido por sensores donde se muestra un panorama general del sistema de sensores y procesamiento de seales requeridos para monitorear los diferentes aspectos del proceso de maquinado, su control y su supervisin.

Especialidad: Mecnica

11

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

Un suplemento a la teora y modelado del proceso de corte se muestran en Altintas (2000 b), donde se presentan los ltimos modelos para la prediccin de las fuerzas de corte para los casos ortogonal, oblicuo y helicoidal, haciendo nfasis en el aspecto computacional del monitoreo del proceso. Johnson (2000) presenta un artculo donde muestra los efectos de desgaste en herramientas de carburo y propone soluciones para corregirlos. Este artculo es relevante para comprender mejor los efectos y proceso de desgaste de herramientas en los procesos de maquinado. Una de las tcnicas tradicionales para determinar el grado de desgaste de una herramienta de corte es mediante la inspeccin visual de la viruta que se produce durante el proceso de corte. Jawahir y Balaji (2000) presentan un modelo predictivo para la formacin de viruta en los procesos de corte en mquinas rotatorias, mostrando los avances ms recientes en el tema con un anlisis en dos y tres dimensiones. 2.2 Deteccin de desgaste y ruptura

Una vez que se cuenta con la informacin de la forma de onda involucrada se procede al procesamiento de la misma para extraer la informacin til para la toma de decisiones por el sistema de supervisin maestro. Esto implica el anlisis de las diferentes alternativas que se han seguido para resolver el problema por otros equipos de trabajo. De este anlisis se obtiene el algoritmo numrico adecuado para la extraccin de la informacin importante del proceso de monitoreo. La informacin relevante contempla los aspectos tecnolgicos generales para llevar a cabo el procesamiento de la informacin que van desde el sensor hasta el sistema de procesamiento. Uno de los mejores compendios para el estudio de los aspectos concernientes a los sensores y la instrumentacin se presenta en Webster (1999). Destacan de manera particular la seccin 2 con una revisin a la medicin de variables espaciales, la seccin 3 donde se revisa la medicin de tiempo y frecuencia, las secciones 4 a 7 que tratan de la medicin de variables mecnicas y la seccin 8 donde se encuentran las variables electromagnticas.

Especialidad: Mecnica

12

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

Bejhem y Nicolescu (1999) presentan un ejemplo para resolver el problema de la deteccin de la ruptura de herramientas en procesos de corte en maquinados y hacen uso de un sistema de cmputo con capacidad de multiproceso para analizar las fuerzas de corte en tres ejes, la vibracin y el sonido. El sistema de cmputo tiene capacidad para multiproceso con procesadores digitales de seales DSP (Digital Signal Processors) conectados en tndem va ethernet. Los sensores utilizados son celdas de carga en la abrazadera, acelermetros para medir la vibracin y sensores piezoelctricos para medir el sonido. El sistema resuelve el problema pero tiene la principal desventaja de ser muy costoso. Adems del multiprocesamiento en tndem existen otras formas de contar con un sistema de cmputo con procesadores mltiples como es el caso de las arquitecturas abiertas, donde los procesadores comparten un bus estndar y se comunican en paralelo va este bus. Un ejemplo del uso de arquitecturas abiertas para el monitoreo del proceso de maquinado se muestra en Teltz et al (1995). Adems de detectar la ruptura de las herramientas, la arquitectura abierta permite realizar el control y supervisin general del proceso completo, con la consecuente penalizacin en costo. Otro ejemplo de multiprocesamiento para el monitoreo de sistemas de maquinado lo muestra Herrera-Ruiz et al (1995). El trabajo reportado se basa en un sistema de arquitectura con bus VME para comunicar los diferentes mdulos procesadores, tanto los sensores como los controladores. Este esquema es una forma particular de arquitectura abierta. Sood y Abdelguerfi (1985) presentan en su trabajo un anlisis de tres mtodos diferentes para detectar rupturas en herramientas en procesos de corte. El primer mtodo propuesto se basa en mediciones similares, utilizando como base el conjunto de seales generadas y almacenadas digitalmente para un proceso de maquinado con herramientas en buenas condiciones y se utiliza para compararlo con maquinados sucesivos hasta detectar un umbral de tolerancia donde se determina que la herramienta se encuentra con un desgaste o ruptura inaceptables. El segundo mtodo propuesto por Sood y Abdelguerfi se basa en reconocimiento de patrones de seales que en lugar de contar con una base de datos muy grande con un maquinado completo para comparar, se utilizan tcnicas de compresin de datos para reconocer patrones de corte. El tercer mtodo propuesto en este trabajo se basa en el modelado matemtico

Especialidad: Mecnica

13

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

del proceso de corte por estimacin de parmetros. Estos tres mtodos propuestos desde 1985, fecha del trabajo, son los que han sido utilizados de manera general por los fabricantes de equipos de deteccin de rupturas en herramientas de corte hasta la fecha. Estos mtodos tienen la principal desventaja que requieren un enorme poder de cmputo para la deteccin de la ruptura resultando en equipos grandes y costosos. Oguamanam et al (1990) presentan un trabajo para la deteccin de ruptura en herramientas de corte para procesos de torneado con una sola herramienta de corte, basado en visin artificial. El sistema hace uso de una cmara digital para obtener una imagen en dos dimensiones de la herramienta durante el torneado. El sistema trabaja con procesamiento de imgenes en tiempo real y su aplicacin se ha restringido a laboratorios debido al nivel de procesamiento requerido. Otro mtodo que ha sido propuesto para resolver el problema de la deteccin de desgaste y ruptura de herramientas de corte es el presentado por Roth y Pandit (1999). El mtodo propuesto se basa en un anlisis de variaciones mltiples aplicado a seales de vibracin. Li y Tso (1999), Li et al (2000 a) y Li et al (2000 b) describen tres aplicaciones a la deteccin de desgaste y ruptura de herramientas para diferentes procesos de manufactura, utilizando como fuente la corriente de control de los motores que manejan los ejes. En Li y Tso (1999) se aplica este mtodo de sensado a procesos de barrenado exclusivamente. Los trabajos reportados por Li et al (2000 a) y Li et al (2000 b) se aplican a la deteccin de desgaste y ruptura en herramientas de corte utilizando tcnicas hbridas de procesamiento que incluyen redes neuronales y lgica difusa. La importancia de estos trabajos radica en el uso de la seal de corriente de los motores que manejan los ejes de las bancadas debido a que esta seal no hace uso de ningn sensor especial ya que se encuentra disponible en todos los sistemas de maquinado automtico. Matsumura (2001) presenta una tcnica de monitoreo de la condicin de las herramientas de corte mediante la medicin fuera de lnea de la dimensin de la herramienta utilizando un lser e interferometra para medir las variaciones micromtricas debidas al desgaste. Este sistema no sirve para trabajar en lnea ya que

Especialidad: Mecnica

14

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

la medicin se realiza cuando termina el proceso de maquinado y antes de que comience el siguiente ciclo. Una de las principales tcnicas de procesamiento digital de seales que ha probado ser muy eficiente en la deteccin de desgaste y ruptura en herramientas de corte es la tcnica de ondoletas aplicadas a la medicin de la fuerza de corte. Kasashima et al (1994) proponen por primera vez el uso de ondoletas para sensar el desgaste de las herramientas en procesos de corte. Yao et al (1999), Li et al (1999) y Li et al (2000 c) han propuesto el uso combinado de la transformada de ondoletas (Wavelets) y las redes neuronales con clasificadores difusos. Wang (2001) hace uso de las ondoletas y las aplica a seales provenientes de la vibracin de la maquinaria para detectar el estado de las herramientas de corte. El algoritmo de procesamiento utilizado por los artculos citados se puede resumir de acuerdo con el cuadro 2.1.
Algoritmo principal Ondoletas Cmputo requerido Moderado Transformaciones de espacio en el campo de los reales. Adecuado para seales cclicas y transitorias. El filtrado es inherente al algoritmo. Equivale a un banco de filtros tipo FIR (Finite Impulse Response, respuesta finita al impulso) Anlisis Fourier Comparacin punto a punto Alto de Moderado Transformaciones de espacio en el campo complejo. Adecuado para seales cclicas solamente. Requiere un pre-procesador para el filtrado de la seal. El procesamiento es sencillo pues solamente se realizan comparaciones. Se requiere una gran capacidad de almacenamiento y programabilidad del sistema. Este mtodo se conoce como el de fuerza bruta. Reconocimiento de patrones Alto El procesamiento debe reconocer patrones de maquinado adecuado y diferenciarlo de un mquina con herramientas rotas. Requiere una alta capacidad de almacenamiento y procesamiento. Lgica difusa Moderado Se basa en reconocimiento de patrones de la seal pero solo es til cuando sta se encuentra comprimida como por ejemplo con transformada de ondoletas. Redes neuronales Alto Debido al alto paralelismo se necesita una cantidad muy grande de procesadores para poder tener un anlisis en lnea. Variables mltiples Visin Muy alto Muy alto Mediante un sistema experto hace uso de la informacin proporcionada por una multitud de sensores localizados en la maquinaria. El procesamiento de imgenes an requiere de sistemas sofisticados de cmputo en paralelo para trabajar en lnea. Cuadro 2.1. Resumen de los principales algoritmos para el monitoreo de herramientas. Observaciones

Especialidad: Mecnica

15

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

Por otro lado, la mayora de los trabajos reportados hace uso de sensores especializados para poder obtener seales ms puras y directas que aquellos que hacen uso de las seales ya disponibles en el sistema de maquinado, como por ejemplo la corriente de control de los motores. Los sistemas de sensado ms populares son las celdas de carga y los acelermetros. En lo que se refiere a los equipos comerciales que realizan el monitoreo de las herramientas de corte se encontraron diversos sistemas especializados, algunos de los cuales se utilizan en mquinas herramientas en industrias de la regin. Cinco son las compaas que ofrecen estos equipos y son: Siemens, Montronix, OMAT, PROMESS y Caron Engineering Siemens ofrece un sistema de monitoreo de mltiples sensores dentro de un sistema de arquitectura propietaria de la empresa. Este sistema de monitoreo lleva el nombre comercial de Brankamp y por las caractersticas que menciona utiliza un sistema de monitoreo por comparacin punto a punto. El sistema PS100 de Montronix ofrece monitoreo mediante la medicin de la potencia elctrica en el motor y es una unidad independiente. La medicin de la potencia incluye la medicin de la tensin y la corriente del motor lo que implica que no hay que realizar modificaciones a la maquinaria existente. Aparentemente el sistema detecta patrones de maquinado y tiene niveles de tolerancia que son programados manualmente lo que requiere de supervisin continua. OMAT ofrece el sistema OptiMonitor basado en celdas de carga y un software cerrado, propietario de la empresa. El sistema incluye varios procesadores por lo que el cmputo numrico intensivo es evidente. El mdulo detector de PROMESS tiene caractersticas similares al ofrecido por OMAT, basando su sistema de medicin en acelermetros en lugar de celdas de carga. Finalmente, Caron Engineering ofrece un sistema de mltiples sensores en arquitectura cerrada, propietaria de la empresa. El sistema incluye el monitoreo de diversas variables, tomadas de diversos sensores. Tiene caractersticas similares al equipo

Especialidad: Mecnica

16

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

ofrecido por Siemens aunque incluye la medicin micromtrica fuera de lnea mediante lser. 3. Desarrollo

3.1 Arquitectura Uno de los principales objetivos del proyecto es ofrecer una solucin industrial que sea efectiva y redituable para cumplir con las expectativas econmicas de los usuarios, es decir, el producto obtenido a partir del desarrollo deber ser una solucin econmicamente viable. En consecuencia, debemos tomar en cuenta aquellos factores econmicos que pudiesen elevar el costo de una licencia final para el usuario. As pues, uno de los factores que influyeron en la seleccin de una plataforma desarrollo, despus de la robustez y la seguridad, fue el costo de licencias de terceros en el producto final. Afortunadamente existen actualmente diversas soluciones de cdigo abierto para la mayor parte de los requerimientos del sistema CNC; en aquellos casos en los cuales no fue posible encontrar una solucin de cdigo abierto para algn componente del sistema, tal como el sistema grfico, se eligi una solucin que no requiriera el pago de regalas por parte del usuario final. Para reducir el costo del desarrollo se opt por una plataforma computacional de arquitectura abierta y, en virtud de la documentacin disponible y de los costos, se eligi a la computadora personal basada en el microprocesador Intel (PC) como plataforma de desarrollo. Existe una amplia gama de opciones a emplear como sistema operativo para la plataforma PC como para las comerciales de cdigo abierto; la funcionalidad que ofrece cada sistema operativo no siempre es apropiada para un sistema de control de movimiento de arquitectura abierta. Si bien es posible en la mayora de los casos adaptar el sistema operativo para satisfacer los requerimientos de velocidad de respuesta de una aplicacin de control de movimiento, las soluciones aplicables a sistemas operativos comerciales tambin son de naturaleza comercial. Por ejemplo, si se desea emplear el sistema operativo Windows en aplicaciones de control de movimiento es necesario resolver el problema de la imposibilidad de predecir el tiempo de respuesta del sistema operativo ante eventos externos en virtud de su arquitectura basada en mensajes; las dos soluciones ms comunes que nos permiten habilitar al sistema operativo Windows como parte del sistema de control de movimiento son el emplear hardware adicional que se encargue de la temporizacin oportuna de las tareas de control de movimiento, o bien instalar un ncleo de tiempo real que a su vez cargue al sistema operativo Windows como una tarea ms; en ambos casos el costo

Especialidad: Mecnica

17

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

del desarrollo se incrementa para el usuario final. Es recomendable, por consiguiente, emplear un sistema operativo con una arquitectura que no est basada en mensajes; dos opciones robustas son el sistema operativo Linux y alguna variante del sistema operativo DOS. Si bien el sistema operativo Linux es robusto e inclusive existen algunas soluciones (comerciales) de tiempo real para el mismo tal como RT Linux, la curva de aprendizaje del mismo es larga y se requiere de mucha experiencia para configurarlo de manera ptima debido a que usualmente es necesario reconfigurar su ncleo de tal suerte que es necesario conocer su cdigo fuente para optimizarlo. Por otra parte, el sistema operativo DOS tambin es robusto, ha estado disponible por aos, su curva de aprendizaje es corta y tiene requerimientos de hardware menores que Linux (e.g., menos memoria RAM en general, de modo que se puede emplear en equipo ms antiguo). Su re-configuracin es sencilla, sin necesidad de tener que recompilar el ncleo en virtud de su arquitectura modular, y permite un acceso directo a la mayora de los dispositivos existentes por medio de interfaces de bajo nivel bien documentadas. Despus de evaluar diversas opciones concluimos que la mejor opcin para la implementacin de un sistema operativo DOS dentro del sistema CNC era el sistema operativo FreeDOS debido a que es una plataforma de cdigo abierto, gratuita y bien documentada; si bien el DOS no es desde sus orgenes una arquitectura abierta, la documentacin heredada a lo largo de los aos provee la informacin necesaria para explotar el sistema a detalle. Si bien, para una primera versin del sistema, decidimos emplear una tarjeta comercial de control de movimiento PID que ofreciera planeacin de trayectorias mnima, la plataforma resultante permitir eventualmente realizar estas funciones por medio de software. Esperamos que en el futuro sea posible ofrecer el control numrico de movimiento implementando la lgica del controlador en software con un soporte mnimo de electrnica, a saber, empleando simplemente una tarjeta de interfaz que mantenga un registro de la posicin de los motores y que genere una seal analgica para los amplificadores.
3.1.1 El lenguaje de programacin

El lenguaje C es, junto a lenguaje ensamblador, un lenguaje de programacin de sistemas por excelencia. La mayor parte del software desarrollado para la plataforma DOS se desarrolla en alguno de estos dos lenguajes y, de hecho, la cantidad de compiladores disponibles en ambos casos es muy amplia. Decidimos emplear el lenguaje C (siguiendo el estndar ANSI 89) para el desarrollo del sistema por dos razones principales:

Especialidad: Mecnica

18

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

El lenguaje C ofrece una portabilidad mucho mayor que lenguaje ensamblador, es decir, al ser un lenguaje estandarizado es posible programar partes crticas del sistema, tales como el cdigo del ejecutivo, de manera independiente de la plataforma, permitiendo as cambios en el compilador o el sistema operativo de ser considerados apropiados. Asimismo, es posible emplear cdigo heredado para la implementacin de algunos algoritmos. El fabricante de tarjetas de control de movimiento provee una biblioteca de lenguaje C que permite el uso de la misma. A pesar de que le biblioteca da soporte a un gran nmero de compiladores, en virtud del tamao de los identificadores, fue necesario emplear un compilador que permitiera identificadores de ms de 32 caracteres. Para cumplir con los dos requerimientos anteriores, elegimos el compilador Turbo C ++ 4.5. Dicho compilador se ejecuta bajo el entorno grfico de Windows 3.1, Windows 95 o Windows 98. Se eligi desarrollar el sistema bajo Windows 98 en virtud de su disponibilidad, pero se tom la decisin de emplear FreeDOS como plataforma de ejecucin final. 3.1.2 La arquitectura del sistema A diferencia de versiones anteriores del sistema, el diseo de esta nueva versin fue modular; este lineamiento fue establecido con la intencin de simplificar el diseo y la programacin del sistema. La modularizacin del sistema ofrece grandes ventajas: Hace ms manejable el desarrollo de programas al reducir las dependencias. Simplifica la depuracin del software pues reduce la interdependencia entre las partes del cdigo. Facilita la reutilizacin de software pues los mdulos pueden emplearse para distintas aplicaciones; por ejemplo, el mdulo ejecutivo que describiremos ms adelante se puede emplear para distintas aplicaciones. Permite el desarrollo del programa por ms de un desarrollador, generalmente en paralelo, pues simplifica el proceso de integracin. Los mdulos que fueron considerados en el diseo del sistema son los siguientes: Editor El mdulo de edicin de archivos de texto, editor, es una biblioteca de funciones escrita en lenguaje C que provee la funcionalidad necesaria para editar varios archivos

Especialidad: Mecnica

19

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

de texto empleando una regin rectangular de la pantalla de dimensiones arbitrarias; despus de editar un archivo las modificaciones en el mismo pueden ser guardadas en el mismo archivo fuente o en otro archivo destino. La idea bsica detrs del diseo de este editor es separar la interfaz de usuario de la representacin interna de los datos. Esto ofrece dos grandes ventajas, a saber: Fue posible desarrollar el editor de manera independiente de la interfaz de usuario. Es posible modificar la operacin interna (implementacin) del editor sin alterar el resto del cdigo. El resto del programa interacta con el editor llamando sus funciones para indicar acciones o solicitar informacin. El editor cuenta con diferentes funciones para poder modificar el archivo de texto fuente, tales como: Creacin de un nuevo editor en la memoria de la computadora. Se pueden crear tantos editores como sean necesarios de manera simultnea en un momento dado, aunque el diseo del sistema CNC slo requiere de la existencia de un ejemplar a la vez. Liberacin de los recursos empleados por un editor dado. Modos de edicin para agregar o sobrescribir texto. Avanzar y regresar pgina. Ir al inicio y al fin de un rengln. Ir al inicio y al fin de un archivo que est siendo editado. Suprimir un carcter que se encuentre adelante o atrs de la posicin de edicin actual. Salto y retorno de lnea. Desplazarse en cualquier direccin, arriba, abajo, izquierda o derecha, a partir de la posicin de edicin actual. Funcionalidad extra orientada a desplegar el archivo de texto en pantalla. La versin actual del editor consiste de un bfer de tamao N que permite editar la lnea actual, la cual es parte de una lista doblemente ligada de cadenas de caracteres. Complilador Un programa CNC se compone de una serie de instrucciones secuenciales de bajo nivel relacionadas al maquinado de una pieza de trabajo. Cada instruccin se especifica en un formato que puede aceptar, interpretar y procesar el sistema CNC. Este campo

Especialidad: Mecnica

20

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

tiene su propia terminologa y trminos especiales. Adems cuenta con sus propias abreviaciones y expresiones que nicamente las personas del mbito conocen, donde la mayora de estos trminos estn relacionados a la estructura del programa. Existen cuatro trminos bsicos usados en la programacin CNC [Smid, 2003]. Ellos aparecen en artculos profesionales, libros, publicaciones, etctera. Estas palabras son la clave para el entendimiento general de la terminologa CNC: Carcter Palabra Bloque Programa

Carcter: es la unidad ms pequea del programa CNC (dgito, letra y smbolo). La combinacin de estos caracteres se llama entrada de programacin alfanumrica. Dgito: Existen diez dgitos disponibles (0 - 9) para crear nmeros en un programa. Los dgitos se usan en dos modos - uno para valores enteros y el otro para nmero reales. Letras: Son veintisis letras en al alfabeto ingls, en teora todas disponibles para la programacin. La mayora de los sistemas de control aceptarn slo ciertas letras y rechazarn otras, segn sea la arquitectura de la mquina - herramienta para la cual est escrito el programa. Las letras maysculas estn designadas normalmente en la programacin CNC, pero algunos controles aceptan tambin letras minsculas con el mismo significado que su equivalente en mayscula. Smbolos: Algunos smbolos son usados adems de dgitos y letras. Los smbolos ms comunes son el punto decimal, signo menos, signo por ciento, parntesis y otros dependiendo de las opciones del control. Palabras: Es una combinacin de caracteres alfanumricos, creando una nica instruccin para el sistema de control. Normalmente, cada palabra comienza con una letra mayscula seguida por un nmero el cual representa un cdigo del programa. Las palabras indican casi siempre la posicin de los ejes, comandos preliminares, funciones miscelneas o algunas otras definiciones. Bloque: As como las palabras se usan como una nica instruccin para los sistemas CNC, los bloques se utilizan como una instruccin mltiple. Cada lnea (bloque

Especialidad: Mecnica

21

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

secuencial o bloque) est compuesto por una o varias palabras y cada palabra se compone por dos o ms caracteres. Programa: La estructura del programa vara para los diferentes controles, pero la lgica no cambia de un control a otro. Un programa CNC usualmente inicia con un nmero de programa o identificador similar, seguido de bloques de instrucciones en orden lgico. El programa termina con un cdigo de error o con el smbolo de fin de programa (%). Los mensajes y documentacin interna para el operador pueden ser colocados en lugares estratgicos dentro del programa. El formato de los programadores ha evolucionado durante los ltimos aos y han surgido varios formatos [Smid, 2003]. Las palabras empleadas en la programacin CNC se pueden dividir en cdigos G, cdigos M y otros registros. Cdigos G La direccin G del programa identifica una funcin preparatoria o cdigo G. Esta direccin tiene uno y solamente un objetivo el cual es preparar al sistema de control a cierta condicin, modo o estado de operacin deseada. El trmino funcin preparatoria indica su significado---un cdigo G preparar al control para aceptar las instrucciones de programacin siguiendo el cdigo G de forma especifica. Los sistemas de control organizan las funciones preparatorias separndolos dentro de grupos arbitrarios. Cada grupo, llamado grupo de cdigo G, tiene un nmero de dos dgitos asignado arbitrariamente. Las reglas que gobiernan la coexistencia de cdigos G es muy simple. Si dos o ms cdigos G del mismo grupo estn en el mismo bloque, ellos estn en conflicto. Los grupos de cdigos G estn normalmente enumerados de 00 hasta el 25. Slo las funciones preparatorias del grupo 00 son no modales, es decir, ellas estn nicamente activas en el bloque en el cual fueron programadas. La relacin de cmo se agrupan los cdigos G tiene un sentido perfecto en todos los casos. Una posible excelcin es el grupo 01 para los comandos de movimientos y el grupo 09 para los ciclos. La relacin entre estos dos grupos es esta: si un cdigo G del grupo 01 se especifica en cualesquiera del grupo 09 de ciclos fijos, el ciclo es cancelado inmediatamente, pero lo opuesto no ocurre [[Smid, 2003]].

Especialidad: Mecnica

22

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

Cdigos M La direccin M del programa identifica una funcin miscelnea o funciones mquina. No todas las funciones miscelneas se relacionan a la operacin de la mquina - herramienta CNC---muy pocas se relacionan al procesamiento del mismo programa. Dentro de la estructura de un programa CNC, los programadores frecuentemente necesitan ciertos medios de activacin de la mquina o para controlar el flujo del programa. Sin la disponibilidad de tales medios, el programa podra no ser completado o imposible de ejecutar. Primero, observemos la relacin de las funciones miscelneas y las funciones reales de la mquina. Varias funciones fsicas de la mqui8na herramienta deben controlarse por el programa, para asegurar un maquinado totalmente automtico. Estas funciones utilizan normalmente la direccin M e incluyen las siguientes operaciones: rotacin del husillo, cambiar rango de engranajes, cambio automtico de herramientas, cambio automtico de pallet, operacin de refrigerante y movimiento de contrapunto entre otras.

Ests operaciones varan entre mquinas. Todas las maquinas herramienta CNC se programan con funciones M, permitiendo por lo general no ms de dos dgitos para estas funciones. Adems, algunas funciones mquina se utilizan para controlar la ejecucin del programa. Una interrupcin de ejecucin de programa requiere una funcin M. Dichas funciones M caen dentro de dos grupos principales: Control de funciones mquina. Control de ejecucin de programa

Los grupos de las funciones M estn tambin normalmente divididos, desde un punto de vista operacional, en dos grupos:

Especialidad: Mecnica

23

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

Las funciones M que se activan al inicio de un bloque. Las funciones M que se activan al final de un bloque.

Si existe incertidumbre de cmo las funciones M interactuarn con el movimiento de la herramienta, la eleccin ms segura es programar la funcin M como un bloque separado [Smid, 2003]. Otros registros Existen otras direcciones que identifican otras funciones de las mquinas - herramientas (S, F, T, etc.). Las actividades del husillo de la mquina (S), la velocidad de corte (F) y la herramienta (T) necesitan ser estrictamente controladas por el programa CNC. El comando relativo a la velocidad del husillo se controla en el sistema CNC por medio de la direccin S. El formato de programacin de la direccin S est usualmente dentro de S1 a S9999 y no se permite el punto decimal. La funcin F se usa en el programa CNC para seleccionar el valor del feedrate. Normalmente se utilizan dos tipos de feedrate en la programacin: Feedrate por minuto Feedrate por revolucin La llamada a direccin para una palabra en el programa es la direccin F, seguida por un nmero de dgitos. El nmero de dgitos seguidos de la direccin F depende del modo de feedrate y de la aplicacin de la mquina - herramienta. El punto decimal es permitido. Cada mquina CNC utiliza un intercambiador automtico de herramienta (funcin T) que puede ser usada en el programa. Para los centros de maquinado, la funcin T normalmente controla slo el nmero de herramienta. Para los tornos CNC, la funcin T indexa la estacin del nmero de herramienta, as como tambin el nmero de desplazamiento. Existen dos tipos de seleccin de herramienta usados en los procesos de cambio automtico de herramienta: Seleccin de herramienta fijo: las mquinas - herramienta que utilizan seleccin fija de herramienta (principalmente centros los maquinado) requieren que el operador coloque todas las herramientas dentro de los huecos del almacn que correspondan al

Especialidad: Mecnica

24

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

nmero de herramienta. Hoy en da, este tipo de seleccin se considera imprctico y costoso en largas ejecuciones, puesto que existen grandes prdidas de tiempo durante los cambios de herramienta. Seleccin de herramienta aleatoria de memoria: esta caracterstica es la ms comn en las mquinas - herramienta modernas. El programador CNC identifica cada herramienta por un nmero T, usualmente en el orden de uso. El nmero de herramienta requerida por el programa mover fsicamente la herramienta a la posicin de espera dentro del almacn de herramientas. Esto puede ocurrir simultneamente, mientras la mquina est usando otra herramienta para desbastar la pieza. No se confunda el mtodo de la direccin T utilizado con la seleccin de la herramienta fija y la misma direccin T usada con la seleccin aleatoria de memoria. En este mtodo se llama a la herramienta con anticipacin antes de que se necesite, as el sistema de control puede buscar la herramienta mientras otra herramienta est haciendo trabajo productivo [Smid, 2003]. Un compilador, por definicin, es un programa que traduce de un lenguaje fuente a un lenguaje destino [Aho et al., 1998]. Generalmente un compilador completo se divide en dos etapas, la de anlisis y la de sntesis. Durante la etapa de anlisis el compilador extrae toda la informacin relevante del lenguaje fuente para despus escribir un subconjunto de dicha informacin en el lenguaje destino durante la etapa de sntesis. En la mayora de los compiladores el lenguaje fuente puede ser generado por un ser humano o ser generado por algn otro programa; tpicamente el cdigo G es escrito por un operador experimentado o por algn programa de diseo o manufactura asistidos por computadora. Ya sea que el programa en cdigo G vaya a ser sintetizado en otro lenguaje o deba ser interpretado en lnea, la etapa de anlisis debe ser realizada por medio de un lector de cdigo G.

La etapa de anlisis y, por consiguiente, un lector de cdigo G realizan tres clases de anlisis, a saber, el anlisis lxico, el anlisis sintctico y el anlisis semntico. Durante el anlisis lxico el lector de cdigo G agrupa los caracteres del flujo de entrada (ya sea un archivo de disco, un arreglo en memoria o un editor de texto) en smbolos
Especialidad: Mecnica 25

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

lxicos o tokens. El cdigo G asigna un registro a cada una de las funciones disponibles para que almacene el valor correspondiente; as pues, el cdigo G tiene veintisis registros identificados por una letra mayscula del alfabeto despus de la cual, sintcticamente, puede seguir un entero o nmero de punto flotante, ya sea con signo o sin signo; los nmeros de punto flotante no emplean notacin cientfica. Cada smbolo lxico es almacenado en una estructura de datos que contiene el tipo de smbolo (nombre de registro, nmero entero no negativo, nmero entero negativo, punto flotante no negativo o punto flotante negativo) junto con su valor (nmero de registro o valor numrico). Algunos registros tal como el registro N siempre almacenan un nmero entero, de modo que el registro N seguido de un nmero de punto flotante es un error de sintaxis. Otros registros tales como X, Y y Z siempre almacenan un nmero de punto flotante, aunque sintcticamente es vlido que estn seguidos por un nmero de punto flotante o de un nmero entero; en caso de que sea un nmero entero el valor debe dividirse entre un factor que depende del sistema de unidades en efecto al momento de cargar el registro. El analizador sintctico siempre est al tanto del sistema de unidades empleado, ya sea sistema internacional (SI) o unidades inglesas. Asimismo, el analizador sintctico siempre provee de informacin en formato incremental al analizador semntico y se configura a s mismo para determinar la forma correcta de leer las unidades del cdigo fuente. Durante la etapa de anlisis semntico los valores de cada registro que deba modificarse junto con otras instrucciones para establecer otros parmetros e indicar acciones se insertan en una cola de prioridades debido a que el orden en que las instrucciones se leen del archivo fuente no necesariamente es el orden en que deben ejecutarse. Se tiene entonces una cola de prioridades que representa a un bloque y que ordena por prioridades a las palabras del cdigo G. Ejecutivo La arquitectura de un sistema de cmputo es una coleccin de mdulos con interfaces bien definidas que permiten describir el comportamiento de un sistema. La implementacin describe la estructura interna de cada uno de los mdulos del sistema. La virtualizacin es el proceso de asociar la arquitectura y la implementacin de un mdulo. El ejecutivo es una pieza verstil de software, y es una parte importante de la

Especialidad: Mecnica

26

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

virtualizacin del sistema, como se describe a continuacin. Si bien es posible ejecutar el cdigo necesario para generar el movimiento de la mquina - herramienta deseado en la forma de acciones semnticas durante la traduccin dirigida por sintaxis que realiza el lector de cdigo G, es ms recomendable ejecutar el cdigo de control movimiento a partir de una interfaz bien definida y uniforme. La idea principal es separar la implementacin de la ejecucin de instrucciones de control movimiento del resto del programa por medio de una interfaz bien definida con la intencin de dar soporte a diversos sistemas de control de movimiento. Las principales ventajas que ofrece este enfoque no se limitan a la programacin ms fcil de los mdulos, sino que se extienden a todas las ventajas de una arquitectura abierta pues al definirse una interfaz bien definida ser posible emplear dicha interfaz no slo para ejecutar programas en una mquina - herramienta, sino que ser posible ``ejecutarlos'' en un simulador (no implementado todava) que permita prever la ejecucin del programa. Actualmente el ejecutivo est implementado de tal forma (Figura 3.1) que ejecuta rutinas de cdigo G conforme son ledas por el lector de cdigo G, accediendo a las rutinas de control de movimiento por medio de una tabla de direcciones que contiene la informacin necesaria para hacer llamadas a funciones. Las instrucciones de control de movimiento estn formadas por una instruccin que describe el tipo de movimiento a realizar (e.g., G03) seguido de parmetros que describen sus caractersticas (e.g., X30.0 Y20.0 R10.0); a partir del tipo de movimiento se selecciona una funcin a la cual se le proveen los parmetros correspondientes.

Especialidad: Mecnica

27

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

Figura 3.1 Diagrama operacional del ejecutivo

Interfaz hombre-mquina (IHM) La interfaz hombre-mquina se desarroll empleando la biblioteca BGI de Turbo C++ 4.5 empleando un enfoque orientado a objetos. Se emplea un controlador BGI para adaptadores SVGA que permite emplear capacidades grficas amplias, as que la interfaz de usuario fue diseada con gran resolucin y nmero de colores. El diseo del sistema grfico es orientado a objetos basado en mensajes. El sistema de control implementa una interfaz de usuario basado en el concepto de pantalla de operacin. Una pantalla de operacin (o escritorio) es un objeto que pertenece a una lista de escritorios y a su vez es una coleccin de objetos grficos que al operar en conjunto permiten al usuario del sistema de control dar instrucciones a una computadora. Cada pantalla de operacin est formada por una coleccin de ventanas de diferentes tipos sobre las cuales se realizan actividades de actualizacin (eventos) por medio de mensajes contenidos en una lista. La coleccin de ventanas de nivel superior (ventanas padres) ocupa regiones de la pantalla de operacin que son mutuamente excluyentes. Las regiones de la pantalla de operacin que no han sido cubiertas por alguna ventana tienen un color de fondo por omisin. La lista de mensajes se lee secuencialmente de tal suerte que los mensajes se van procesando uno por uno conforme se vaya solicitando su procesamiento. La cantidad de memoria mxima para el uso del sistema es aquel requerido por la pantalla de operacin que ocupe mayor cantidad de memoria debido a que cada que se selecciona una pantalla de operacin nueva se libera la memoria empleada por los objetos grficos de la pantalla de operacin anterior y se reserva memoria para los nuevos objetos grficos pertenecientes a la pantalla de operacin que se acaba de seleccionar.

Especialidad: Mecnica

28

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

Figura 3.2: Organizacin de la interfaz grfica de usuario Cada una de las ventanas tiene asociados diferentes propiedades, tales como las coordenadas de la esquina superior izquierda, su ancho y su alto, texto asociado con la misma de ser necesario, una referencia a su ventana padre, una lista de referencias a sus ventanas hijas, un apuntador a un bloque de datos personalizado y una funcin responsable de procesar todos los mensajes recibidos por la ventana. Las ventanas de nivel superior carecen de ventana padre y son las que se dibujan primero al trazar la pantalla. Despus de trazarse a s misma, cada ventana enva a cada una de sus ventanas hijas el mensaje de que se retracen a su vez. Con cada interaccin con el usuario de una ventana el mensaje es procesado por la misma o un mensaje es enviado a su ventana padre para ser procesado cuando sea pertinente. Cada uno de los controles de las ventanas es a su vez una ventana que tiene asociada una funcin de procedimiento que se encarga de procesar los mensajes que corresponden a la misma. Como parte de la biblioteca de la interfaz de usuario, existe una funcin de procedimiento por omisin que se puede emplear para la mayor parte de las actividades subyacentes para ventanas genricas tales como el dibujo de la ventana y otras respuestas estndar. Cada ventana puede tener a su vez ventanas hijas de diferentes clases tales como iconos y botones de comandos. El sistema implementa por omisin diversas funciones (procedimientos de ventana) para atender a las solicitudes hechas a los elementos o controles estndar (como los botones) de la interfaz de
Especialidad: Mecnica 29

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

usuario. Los elementos de la interfaz de usuario reportan informacin al usuario y tambin le permiten interactuar con el sistema. Los eventos que generan los elementos de la interfaz de usuario pueden ser de dos tipos: mensajes de la interfaz de usuario y eventos de tiempo real. Los mensajes de la interfaz de usuario generan ms mensajes para la actualizacin de la interfaz de usuario, se procesan por medio de la lista de mensajes y se emplean para tareas que no son crticas para el sistema. Los eventos de tiempo real interactan directamente con el \hardware{} para acciones tales como paro de emergencia y son procesados directamente sin introducirse en la lista de mensajes. Teclado

Figura 3.3 Teclado tpico de una mquina - herramienta CNC CHROMA-II. El actual diseo y caractersticas varirn para diferentes modelos de mquinas. La interfaz del teclado con la computadora personal (PC, Personal Computer) se ocupa de rastrear continuamente el estado de todas las teclas, es decir, puede detectar si ha ocurrido algn cambio de estado en cualquiera de las teclas. De ser as, determina si lo que ha ocurrido es una pulsacin o una liberacin de la misma. Tambin se encarga de conocer que tecla se encuentra presionada o ha cambiado de estado. Cada una de las teclas tiene asociado un nmero diferente para que el controlador del teclado pueda reconocer a cada una de ellas, este nmero tiene 7 bits y se llama scancode y depende nicamente de la posicin que la tecla ocupa en dicho teclado (vase Figura 3.3) As cuando una tecla ha sido pulsada o liberada, la interfaz del teclado guarda el scan-code de la tecla en una pequea memoria interna. Adems de la pequea memoria interna el teclado tiene algunos otros registros:

Especialidad: Mecnica

30

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

Registro de Estado: contiene informacin acerca de la interfaz. Registro de Datos: si en la memoria interna existen teclas presionadas registradas previamente, el controlador se encarga de guardar una copia en este registro del scancode, la cual corresponde a la primera tecla que se presion. En las PCs compatibles con IBM, la administracin de las interrupciones de hardware normalmente las realiza un micro-controlador. Este circuito recibe las peticiones de interrupcin del sistema y se las enva de una en una al CPU. En la arquitectura de la PC, la interfaz del teclado est conectada a la lnea IRQ-1 del microcontrolador y se identifica ante el CPU como el vector 9. Cada vez que se presione o libere una tecla se producir una interrupcin de hardware con vector 9. Adems existen dos mdulos de software los cuales controlan o administran el f{}lujo de entrada de las teclas. El primer mdulo es el encargado de leer la tecla presionada, para despus convertir esta tecla en su cdigo ASCII correspondiente y guardar el cdigo asignado en un registro de memoria. El otro mdulo se encarga de examinar el contenido del registro y regresar su estado cada vez que el usuario lo solicite. Ambas rutinas se encuentran implementadas en el BIOS (BIOS, Basic Input Output System) de la PC. La primera de ellas se encarga de activar una interrupcin por medio del hardware generada por la interfaz del teclado (INT 9h), que pasa al CPU a travs del micro-controlador. La segunda es llamada por los programas mediante la ejecucin de la interrupcin software INT 16h. El esquema del teclado de propsito especial que utilizamos se muestra en la Figura 3.4 del cual tiene dos conectores que salen del mismo dispositivo. Los cables planos tienen un mximo de RN (N = 6) y CM (M = 13) renglones y columnas respectivamente.

Especialidad: Mecnica

31

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

Figura 3.4: Esquema del teclado alfa-numrico del panel de control CNC Estos cables realmente forman parte de la propia membrana, que no es ms que una matriz de contactos bajo las gomas de las teclas. Este teclado matricial se encuentra repartido en CM columnas de M teclas cada una, que corresponden con los contactos de la membrana (vase Figura 3.4 para ms detalle). En el esquema del teclado matricial cada una de las M columnas estn conectadas a una de las lneas de salida al sistema de control del teclado, y el otro extremo de cada tecla de N renglones se encuentra conectado a un grupo de $N$ lneas de entrada del mismo sistema. Generalmente cuando se quiere saber si una tecla est presionada, se leen los renglones por completo (las N teclas), leyendo el puerto de E/S que pone un cero en la lnea de direccin de dicho rengln. La conexin entre un teclado y la PC se realiza a travs de un conector tipo PS/2 (miniDIN) como se muestra en la Figura 3.5. En el PS/2 una lnea transmite la seal de reloj, otra los datos y dos ms la alimentacin (+5Vdc y GND).

Figura 3.5 Esquema de conexin del conector PS/2.

Especialidad: Mecnica

32

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

En el diagrama de tiempos de la Figura 3.6 podemos observar como los

datos se

sincronizan a travs del reloj, para que as el teclado pueda enviar los datos a la PC.

Figura 3.6: Ejemplo del diagrama de tiempos. Lo ms importante para el problema que nos ocupa es qu informacin nos da el teclado respecto de los teclazos. Es decir, cuando se presiona una tecla, el teclado enva el scan-code, esto es el cdigo asociado con cada tecla a travs de una tabla. Existen tres modalidades o tablas dependiendo del tipo de teclado:

Scan-code 1: es el usado en teclados del tipo XT de 83 teclas. Scan-code 2: propio de teclados AT de 102 teclas, es el ms usado. Scan-code 3: slo utilizado en teclados del tipo PS/2.
El scan-code 1 se considera casi obsoleto debido al poco uso que tiene en la

actualidad, aunque algunos controladores de teclado transforman los scan-codes 2 y 3 a ste por medio de software logrando compatibilidad entre ellos. Lo ms comn, aunque vara segn el fabricante, es que el teclado acepte trabajar con el scan-code 2 y/o 3. El scan-code 3 permite entre otras cosas configurar el teclado en una modalidad de respuesta ms afn con las necesidades de nuestro teclado, por consiguiente es el modo de funcionamiento que hemos elegido. Un rasgo importante que hay que resaltar es que se pueden configurar diferentes modos de trabajo del teclado:

Make: cuando se presiona una tecla se enva el scan-code y ninguna seal cuando de libera la tecla. Make/Break: cuando se presiona una tecla se enva el scan-code y cuando se libera la tecla se vuelve a enviar el scan-code precedido de un cdigo de liberacin (F0). Typematic: cuando se presiona una tecla se enva el \emph{scan-code}, y una vez que ha pasado un breve perodo de tiempo se vuelve a enviar el scan-code continuamente hasta que la tecla sea liberada.

Especialidad: Mecnica

33

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

En resumen, el protocolo de comunicacin entre el teclado y la PC se realiza en forma de transmisin serial (PS/2) con ocho bits de datos, bit de paridad y bit de inicio y fin de transmisin. El controlador de teclado informa a la PC del estado de las teclas y la PC le enva comandos para su configuracin, re-inicializacin, re-envo de datos, entre otras cosas.

Panel de control

La interfaz del sistema CNC involucra algunos teclados de propsito especial (vase Figura 3.7 que basan su operacin en comunicarse a travs del puerto serial de comunicaciones. La comunicacin es bi-direccional pues las teclas envan informacin al puerto serial, donde se almacenan en una cola de teclazos (que no es lo mismo que caracteres, pues no todas las teclas generan caracteres, como son las teclas borrar, flecha arriba, etc.); asimismo, es posible habilitar o inhabilitar los indicadores del teclado (LEDs, Light Emitting Diode) por medio de instrucciones de software. La botonera del panel de control se encuentra dividida en varios grupos de funciones de propsito especial, a estos grupos se les conoce como: modo, funcin, estado, refrigerante, luz, transportador, etctera (vase Figura 3.7). Cada una de las funciones de estos grupos realiza una tarea especfica, la cual depende del modo en que se encuentre el sistema CNC en ese momento.

Figura 3.7: Panel de control tpico de una mquina-herramienta CNC CRHOMA-II de tres ejes. El actual diseo y caractersticas variarn para diferentes modelos de mquinas.

Especialidad: Mecnica

34

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

A continuacin haremos una breve descripcin de las funciones ms importantes del panel de control, utilizadas por el sistema de control numrico CNC CRHOMA-II si desea conocer ms informacin acerca del sistema, vase LABMEC, 2003). Iniciar: se utilizan principalmente para comenzar a ejecutar los programas cargados en memoria o ejecutar una lnea de comando en los modos MEM e IMD respectivamente. Detener: se utilizan principalmente para suspender la ejecucin los programas en el modo MEM o suspender una lnea de comando ejecutada en el modo IMD. PAP: permite la ejecucin los programas cargados en memoria pasa a paso, es decir, el sistema CNC ejecuta una lnea del programa y espera una seal para ejecutar la prxima lnea, y as sucesivamente. AOP: permite detener temporalmente la ejecucin del programa, al programar en el programa un M00. OBQ: permite ignorar las lneas que estn precedidas en le programa por una diagonal (/). Sobre avance: permite sobre-cargar la velocidad de avance programada en el programa, usualmente en el rango de 0% - 150%. MAN: permite mover los ejes (bancadas) de la mquina herramienta de manera precisa (X1, X10 y X100), a travs de un generador de pulsos. IMD: permite la entrada de datos o lneas de comandos al sistema CNC de manera manual. MEM: permite la ejecucin de los programas automticamente. ARCH: permite copiar, eliminar, pegar, etctera archivos de dispositivos externos. EDT: permite realizar cambios en los programas almacenados en memoria. IMP: permite la operacin manual de la mquina herramienta por medio de teclas al configurar una nueva pieza o programa. En resumen, el protocolo de comunicacin entre la botonera y la PC se realiza en forma de transmisin serial (RS--232) con diez y seis bits de datos, bit de paridad y bit de inicio y fin de transmisin. El controlador de la botonera informa a la PC del estado de las teclas y la PC le enva comandos para su configuracin, re-inicializacin, reenvo de datos, entre otras cosas; Adems, el sistema controlador de la botonera trabaja de forma bi-direccional. 3.2 Sistema de Monitorizacin El mtodo que utilizamos para detectar la colisin consiste como primera etapa en realizar el maquinado de una pieza en el cual se guarda el consumo de corriente en los
Especialidad: Mecnica 35

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

motores durante el tiempo del maquinado, a esta etapa le llamamos proceso de aprendizaje y se guarda en memoria la curva del consumo de corriente en los tres motores de los ejes de la mquina. Mediante ello se establecen lmites mximos de consumo de corriente con respecto al tiempo en cada motor. Una vez logrado esto se contina con la produccin de la piezas que se supone son iguales a la primera y se va monitorizando que el consumo no sobrepase en cada motor un 10% del consumido durante el proceso de aprendizaje ver figura 3.8

APRENDIZAJE

MAXIMA CARGA C A R G A

TIEMPO

MONITORIZACION C A R G A

PARO TIEMPO
Figura 3.8 Sistema de monitorizacin de colisin

Para detectar fallas tales como astillamiento o ruptura usamos un mtodo de monitorizacin sensorless debido a que proponemos usar seales que ya estn presentes en la mquina como pueden ser las seales de corriente de los servomotores
Especialidad: Mecnica 36

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

y que presentan un mtodo indirecto de medicin de las fuerzas que se presentan en el maquinado. Esto hace factible el usarse en cualquier tipo de mquina y lo hace prctico porque no se altera en nada el diseo de sujecin de la pieza de trabajo, as como es un sistema muy econmico debido a que no se usan sensores extras, la presente metodologa esta basada en el trabajo de Troncoso y Herrera [2003]. La extraccin de la fuerza de corte a partir de la seal de corriente de los servoamplificadores tiene la ventaja de no utilizar sensores especiales, puesto que se hace uso de una seal que se encuentra disponible en todas las mquinas CNC. Sin embargo, esta seal de corriente contiene componentes indeseables que se manifiestan como ruido de alta frecuencia, conmutacin de la corriente de control y los efectos del tornillo de bolas. Con el objeto de extraer correctamente la informacin pertinente, manteniendo bajos los niveles de las seales espurias, se necesita determinar el intervalo dinmico de la seal para establecer los parmetros del filtro analgico. Es pertinente hacer notar que la seal de corriente de los servo-amplificadores que se utiliza en el presente trabajo, y en las citas referenciadas que hacen uso de ella, se trata realmente de una tensin normalizada proporcional a la corriente de alimentacin del servo-motor y adems es una seal que se encuentra disponible en todos los servo-amplificadores comerciales como estndar industrial. Por conveniencia de compatibilidad entre las diversas fuentes bibliogrficas y el presente trabajo siempre que se haga uso de la seal fuente se referir a ella como la seal de corriente del servo-amplificador, aunque en la realidad se trate de una tensin proporcional. El anlisis resultante no se ve afectado por este tipo de consideraciones debido a que todas las seales se tratan de forma normalizada y el algoritmo desarrollado hace uso de la geometra de la seal, no de su amplitud proporcional. Los parmetros a considerar para el diseo del filtro son: tipo de filtro (pasabajas, pasa-bandas, etc.), aproximacin (Butterworth, Chebyshev, etc.), el intervalo dinmico restringido por las frecuencias de corte y supresin, la atenuacin mxima permitida en la banda de paso y la atenuacin mnima requerida en las bandas de supresin. El objetivo primordial del presente apartado es correlacionar los parmetros de diseo con las condiciones operativas de la fresadora.

Especialidad: Mecnica

37

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

Para proceder con el anlisis de la corriente de los servo-amplificadores, se debe establecer un modelo donde se consideren cada uno de los componentes que conforman el comportamiento general de la forma de onda. Mediciones directas de la forma de onda muestran severas interferencias dentro de la seal y que provienen de diferentes fuentes. Se debe recordar que el componente principal es la corriente de control del servo-motor. El segundo componente es la seal de la fuerza de corte, la cual se encuentra insertada en el componente principal. Las otras dos fuentes que contribuyen con la seal son los efectos del tornillo de bolas de la bancada y el ruido de conmutacin inducido por el equipo digital que se encuentra cerca de la maquinaria (tarjeta controladora, computadora, etc.). Partiendo de la suposicin de independencia lineal entre los diferentes componentes de la seal de corriente, se puede establecer un modelo aditivo simple para la corriente del servo-amplificador como se muestra en la figura 3.9.

Figura 3.9 Modelo aditivo para la corriente del servo-amplificador.

El componente principal de la corriente del servo-amplificador es la corriente de control al servo-motor. Esta seal se genera a partir del control digital de posicin como una tensin en corriente directa DC (Direct Current)

VC , la cual alimenta al

servo-amplificador. Esta tensin de control en el servo-amplificador se utiliza para generar la corriente de control de la forma de una seal de corriente modulada por ancho de pulso PWM (Pulse Width Modulation). La seal PWM tiene un ancho de pulso con periodo constante

TC y ancho variable, proporcional al nivel de tensin de control

y se relaciona con el ciclo de trabajo como:

DC =

TH = KV VC TC

(3.2)

TH es el ancho de pulso en estado alto como se muestra en la figura 3.3 K I y V es la ganancia constante del PWM. Entonces, la corriente de control C se puede
Donde establecer como:

Especialidad: Mecnica

38

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

I IC = M 0

0 < t < TH de otra manera

(3.3)

Figura 3.12 Forma de onda PWM.

I M representa la corriente pico en el servo-amplificador.


Considerando que la seal de corriente de control es peridica con periodo

TC ,

I C puede expandirse en series de Fourier como:


I C = I 0 + I n cos(2nf C + n )
n =1

(3.4)

Donde los principales componentes estn representados por:

I 0 = DC I M
IM

(3.5)

I1 = 2

sen DC
(3.6)

I 0 es la componente de DC de la seal de corriente de control, mientras que I1 1 fC = TC y el resto de las componentes se encuentran es la componente centrada en f C . El espectro resultante de la seal de corriente de
localizadas en mltiplos de control se muestra en la figura 3.10.

Especialidad: Mecnica

39

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

Figura 3.10. Espectro de la seal de corriente de control. Desde el punto de vista central del presente trabajo, la componente ms importante en la corriente del servo-amplificador es la seal de la fuerza de corte. El modelado analtico de las fuerzas de corte para fresado se pueden encontrar en Altintas (2000 a) y se puede ver como una funcin sinusoidal truncada ms una constante. La frecuencia del componente principal se localiza en

fF

donde:

fF =

HN 2

(3.7)

H es la velocidad del husillo en rev/s y N es un entero adimensional que representa el nmero de insertos de la herramienta de corte. Los componentes espectrales se encuentran distribuidos alrededor de cero y amplitud monotnicamente decreciente.

k f F con k = 1,2,3,... y una

Los efectos del tornillo de bolas sobre la corriente del servo-amplificador son no lineales y se reflejan como armnicos y sub-armnicos centrados en la frecuencia B , la cual puede ser relacionada con la tasa de desplazamiento de la bancada R en mm/s y la relacin del tornillo de bolas B en rev/mm para dar:

fB =

RB 2

(3.8)

Los armnicos y sub-armnicos generados por efecto del tornillo de bolas son decrecientes de forma monotnica en ambos lados del componente principal, localizado en

fB .

El ltimo componente que contribuye a la seal de corriente del servoamplificador es el ruido de conmutacin que representa la interferencia producida por los sistemas digitales circundantes como la tarjeta controladora y las computadoras digitales. Esta seal de ruido tiene componentes espectrales en forma de armnicos y sub-armnicos del oscilador base del sistema digital. Mediciones realizadas en los sistemas digitales relacionados permiten determinar que el ruido de conmutacin se localiza en frecuencias superiores a los 10 kHz, por lo tanto, es necesario eliminar la influencia de este ruido mediante un filtrado de todos los componentes espectrales por encima de los 10 kHz. Considerando todos los efectos relacionados con la seal de corriente del servoamplificador, la figura 3.11 muestra el espectro general a partir del cual es posible determinar los requisitos del filtro analgico con el objeto de extraer la seal de la fuerza de corte de una manera consistente.

Especialidad: Mecnica

40

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

Figura 3.11. Espectro completo de la corriente del servo-amplificador. (No mostrada a escala)

De la figura 3.11 se puede inferir que con el objeto de extraer la seal de fuerza de corte de una manera consistente, a partir de la corriente del servo-amplificador, algunas consideraciones deben tomarse en cuenta debido a las interferencias severas que se producen entre los diferentes componentes. Si la frecuencia central de la fuerza
F C , entonces la extraccin de corte del fresado se encuentra restringida a: B de la seal es posible. Una vez que la condicin se satisface, se puede establecer un procedimiento general para calcular los parmetros del filtro analgico.

f << f << f

El sistema cuenta con un simulador del proceso de maquinado, de tal forma que de los Gs que tiene en memoria puede simular las seales del proceso de maquinado de tal forma que puede optimizar las velocidades de corte. La simulacin se basa en el proceso fsico del fresado (Herrera, 1994. Holstein 1969), el modelo matemtico permite obtener una simulacin bastante cercana al proceso de corte (Figura 3.12). La fuerza que nos interesa es la fuerza resultante, esta fuerza es la que tiene la informacin bsica del estado del proceso de corte, esta fuerza se calcula con la siguiente ecuacin:

FR =

Fx 2 + Fy 2 + Fz 2

(1)

Donde Fx es la fuerza ejercida por la herramienta durante el proceso de corte en el eje X , Fy es la fuerza en el eje Y y Fz es la fuerza en el eje Z. Estas fuerzas son las que se obtienen directamente del sensor de fuerzas durante el experimento fsico y sern las que se compararn con la simulacin.

Especialidad: Mecnica

41

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

Fig 3.12 Modelo de Fresado

Dado que nos interesa detectar fallas en maquinado de acabado (endmill) y careado (facemill). Normalmente estos cortes se realizan en dos y media dimensiones, esto es aunque tres ejes se mueven uno se mantiene fijo mientras los otros dos rotan. Esto permite despreciar una de las fuerzas que en este caso ser Fz dado ello nos podemos concentrar en las otras dos fuerzas tomando en cuenta que si el plano de corte cambia solo se intercambian las fuerzas respectivas. Las fuerzas Fx y Fy son calculadas a travs de la fuerzas tangencial Ft y radial Fr ejercida por la herramienta de corte.

Fx = (i) (Ft cos i + Fr sin i)


i=1

(2)

Fy = (i) (Ft sin i - Fr cos i)


i=1

(3)

Si s i e

i = 1

En caso contrario i = 0
donde M es el nmero de dientes o cortadores de la herramienta i es el ngulo de corte de entrada o inicio y e es el ngulo de salida del cortador. La fuerza tangencial y radial se desprenden de las siguiente ecuaciones:

Ft = kt bw hi Fr = kr bw hi

(4) (5)

donde bw es la profundidad de corte, kt y kr son constantes que depende de la dureza del metal de la pieza y del material de la herramienta, hi es la espesura instantnea de la viruta y se obtiene a travs de las siguientes formulas:

Especialidad: Mecnica

42

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

hi = Vt sini + (ri - ri-1) + ci; si Vt sini + ri ri-1 entonces hi= 0 donde ci = Vt sini + (ri-j - ri-j-1)
j =1 M

(6)

(7)

hasta que Vt sini + ri-j > ri-j-1


donde Vt es la velocidad de corte en mm/diente ri es el radio de cada cortador o diente de la herramienta, M el nmero de cortadores o dientes en la herramienta y i es el ngulo instantneo de corte. Las variables kt y kr se obtienen a travs de las siguientes ecuaciones
8 -0.206

kt = 2.6 * 10 hi kr = 0.6 * kt

(8) (9)

Este modelo nos permite simular los procesos de corte bajo los diferentes estados fsicos de la herramienta (normal, ruptura y astillamiento). La ruptura de herramienta se simula dndole al cortador (es) o diente (s) que se rompe (n) un radio ri de 0, en caso de astillamiento se le reduce al radio la cantidad deseada de acuerdo a la magnitud del dao que se desea simular. El procesamiento de las seales de fuerza se hace a travs de la transformada de wavelet. Como mencionamos anteriormente la transforma de wavelet, nos permite enfocarnos en los detalles de la seal, tal y como si utilizramos una cmara con un lente de zoom. Esto se logra a travs de la resolucin de los filtros empleados en la transformada, si aumentamos uno de ellos se incrementa la resolucin en el dominio de frecuencia (a costa de la resolucin en el dominio del tiempo), de tal forma que podemos ir enfocando nuestro anlisis (lente) hasta llegar a la resolucin donde el domino del tiempo y frecuencia son los ms ptimos al tipo de cambios que nos interesa detectar. A diferencia de la transformada de Fourier, la cual solo proporciona informacin en el dominio de la frecuencia, la transformada de wavelet proporciona informacin en los dominios de tiempo y frecuencia simultneamente. La teora de wavelets tambin nos permite trabajar sobre los vacos de informacin que a veces presentan los datos. En realidad la teora de wavelets, a travs de la transformada discreta de wavelet, supera a la transformada rpida de Fourier en el reconocimiento de los cambios pequeos de
Especialidad: Mecnica 43

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

fuerza que se tienen cuando una herramienta corta, y los cuales son definitivos para predecir una falla que pueda volverse fatal en el proceso de maquinado. La transformada de wavelet obtiene su nombre por el uso de wavelets las cuales se usan para generar una familia de funciones wavelets

(t) =
a,b

1 a

( t b ) donde a,b: real > 0.


a

(10)

La transformada continua de wavelet esta dada por:

F(a,b) =

f(t)

*a,b

(t)dt

(11)

Como podemos observar en esta ecuacin la seal F(a,b) que se obtiene de la transformada de la seal f(t) esta definida en el plano a-b, donde a y b son usadas para ajustar el rea de anlisis en frecuencia y tiempo. Un valor pequeo de a produce un anlisis de alta resolucin en el dominio del tiempo, mientras una a grande produce una alta resolucin en el dominio de la frecuencia. Incrementos en b hace que el anlisis de la seal se recorra sobre la longitud de la seal a analizar. En el caso del anlisis de Fourier no es posible localizar el anlisis sobre un rea especfica tal como en el anlisis de wavelet, si incrementamos la frecuencia de los cosenos y senos (que se usan para obtener la transformada de fourier) en el anlisis el resultado se expander alrededor del plano del tiempo, siendo imposible fijarlo sobre una parte localizable (especfica) del anlisis. Tal como sucede con Fourier bajo la transformada discreta de fourier, para poder programar la transformada de wavelet es necesario utilizar la transformada discreta de wavelet. Mtodos de discretizacin son usados para ello. La transformada discreta de wavelet se obtiene de la transformada continua a travs de la discretizacin de la ecuacin 10. Una discretizacin comnmente usada es:

j,k(t) =

1 a

( t 2 ) donde j,k: enteros.


jk

2j

(12)

Como se puede observar a ha sido reemplazado por 2j y b por 2jk la transformada discreta de wavelet esta dada por
Especialidad: Mecnica 44

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

Cj,k =

f(t)

j,k(t)dt

(13)

La transformada discreta es obtenida de ecuacin 13 discretizando f(t)

dj+1,k =

h (i 2 k ) dj , k
I =

(14)

cj+1,k = g (i 2 k ) dj , k
I =

(15)

Cj,k representa la versin discretizada de la funcion original f(t), a cada resolucin j>1 los coeficientes dj,k representan la aproximacin de baja frecuencia de la seal y cj,k representa la distribucin de altas frecuencias. De esta forma es posible programar un algoritmo de la transformada de wavelet, h y g son filtros que se pueden programar de diferentes formas dependiendo de la resolucin buscada, en similitud con las variables a y b de la transformada continua de wavelet. En el caso de la transformada de Fourier existe un solo tipo de filtro basado en senos y cosenos, en el caso de la transformada de wavelet existe un nmero infinito de filtros posibles a disear. Con los datos obtenidos de la transformada se procesan por un mtodo estadstico de asimetra el cual se basa en la ecuacin

A = (Bi +10 Bi )
i =1

10

donde A es el valor de la asimetra y B son los coeficientes obtenidos de la transformada de wavelet. La figura 3.13 muestra la grfica normalizada de la asimetra, obtenida del detector de ruptura en herramientas de corte en condiciones de prueba dinmica y graficada revolucin por revolucin en el husillo para todo el proceso de maquinado. Al inicio del proceso de fresado, cuando las herramientas estn nuevas y sin dao, el valor de la asimetra de la DWT es cercano a cero. Conforme contina el proceso de fresado, una
Especialidad: Mecnica 45

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

herramienta comienza a desgastarse y el valor de la asimetra se incrementa. Finalmente, cuando se rompe la herramienta, la asimetra se incrementa significativamente y se puede detectar un pico en su valor e identificar el ciclo en el que se produce la ruptura. Un detalle comparativo entre la asimetra, los coeficientes de la DWT y los datos en el dominio del tiempo se muestran en la figura 4 donde se han seleccionado algunos ciclos de maquinado para mostrar la operacin en diferentes condiciones del proceso. Las revoluciones seleccionadas corresponden a los ndices: 500, 1050, 1108 y 1120. Para la revolucin con ndice 500, el sistema de deteccin de ruptura indica que las herramientas se encuentran en condiciones normales de operacin. En la revolucin 1050 se detecta cierto grado de desgaste en las herramientas y as es indicado por el sistema con un incremento en la asimetra. Cuando se produce la ruptura se detecta un incremento significativo en el valor de la asimetra, reflejado en la revolucin de ndice 1108 del experimento. Despus de la ruptura, el sistema de deteccin indica que la condicin de las herramientas se ha degradado, por ejemplo en la revolucin de ndice 1120.

Figura 3.13 Asimetra normalizada durante la prueba dinmica.

Especialidad: Mecnica

46

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

En la figura 3.14 se puede observar que los datos en el dominio del tiempo muestran muy pocas variaciones en la forma de onda para las diferentes condiciones de las herramientas de corte por lo que se hace muy difcil su identificacin directa. Esta forma de onda contiene 256 puntos por revolucin con ruido insertado. Por otro lado, los coeficientes de la DWT representan una versin comprimida de los datos en el dominio del tiempo con la ventaja de no mostrar los componentes indeseables de frecuencia. Como se muestra en la figura 4, la DWT mantiene la geometra de la seal original con menos puntos por revolucin (8 puntos para el detalle de nivel 5) y la condicin de las herramientas de corte se puede identificar fcilmente. La asimetra, como una funcin de autocorrelacin no lineal, proporciona una estimacin de la condicin de las herramientas de corte mediante la comparacin de las fuerzas de corte ejercidas por ambos insertos, llegando a detectar desgaste y ruptura en la herramienta.

Figura 3.14 Detalle de la asimetra, coeficientes de la DWT y datos en el dominio del tiempo para la prueba dinmica del sistema.

La figura 3.15 muestra una fotografa en acercamiento con las herramientas de corte despus del experimento de ruptura. El experimento se repiti varias veces y siempre se obtuvieron resultados similares, indicando que el sistema de deteccin de ruptura en herramientas de corte funciona adecuadamente y con la suficiente precisin para detectar ruptura en las herramientas de corte y, hasta cierto grado, desgaste.
Especialidad: Mecnica 47

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

Fig 3.15 Herramientas de corte


Este sistema de monitorizacin esta instalado para la versin del CNC en mquinas fresadoras o mquinas de 3, 4 y 5 ejes de libertad, a continuacin en el siguiente anexo se muestra la experiencia con la instalacin de dicho sistema en un mquina taladradora de una empresa del estado de Quertaro. En figura 3.16 se puede observar la mquina monitorizada.

Fig 3.16 Mquina Taladradora

Especialidad: Mecnica

48

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

En la Figura 3.17 se puede observar la pieza que se trabaja en dicha mquina.

Figura 3.17 pieza trabajada

As mismo se puede observar en figura 3.18 la herramienta y la astilladota en la misma que produce en la pieza trabajada en defecto que hace que la pieza sea rechazada.

Figura 3.18 Pieza y herramienta defectuosa

En figura 3.19 sepuede observar las seales tomadas del procesos de maquinado de dicha pieza, una con la herramienta en buen estado y la segunda en mal estado, as mismo se muestran las seales sin filtrar tal como se obtienen de los servoamplificadores y una vez filtradas.

Especialidad: Mecnica

49

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

Fig 3.19 seales obtenidas por el sistema de monitorizacin

Como se puede observar en la figura 3.20 despus del ciclo 12 se detecta que la herramienta esta en mal estado, pudiendo observar la eficacia del sistema de monitorizacin.

Figura 3.20 ciclo de produccin

En fig 3.21 se muestra el prototipo final del CNC desarrollado.

Especialidad: Mecnica

50

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

Figura 3.21 Sistema CHROMA-II

Conclusiones El desarrollo del presente trabajo muestra el desarrollo de un Control Numrico

de Arquitectura Abierta CHROMA-II el cual tiene capacidades de deteccin de fallas en maquinados, se describiern tres ideas originales: el anlisis sistemtico de la corriente de control de los servo-amplificadores para la extraccin de la seal de fuerza de corte para el monitoreo sin sensores, el uso de la asimetra de la DWT como figura de mrito para la determinacin del estado de las herramientas de corte en mquinas CNC y la propuesta de una arquitectura del CNC. El CNC desarrollado tiene un costo menor a las 10,000 USD as mismo la seccin de monitorizacin tiene un costo total estimado inferior a los $300.00 (Trescientos dlares Us. Cy.) resulta en un sistema competitivo comercialmente cuando se compara con sistemas como el Brankamp de Siemens y el Montronix cuyos precios son superiores a los $10,000.00 (Diez mil dlares Us. Cy.). Al proponer y comprobar estas ideas originales, adems de haber resuelto el problema original de la deteccin de ruptura en herramientas de corte, se ha podido abrir una nueva lnea de desarrollo tecnolgico encaminada a la solucin de problemas relacionados con el rea por medio de algoritmos de procesamiento digital de seales. Esta lnea es prometedora tanto tecnolgica como acadmicamente para mejorar la

Especialidad: Mecnica

51

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

productividad en futuros desarrollos realizados en el posgrado de Instrumentacin y Control Automtico de la Facultad de Ingeniera de la UAQ. Bibliografa Actel Corporation. 1997. ACT-1 Family FPGAs data sheet. Actel Corporation. Actel Corporation. 2001. SX-A Family FPGAs data sheet. Actel Corporation. Altintas, Y. 2000 a. Manufacturing automation, metal cutting mechanics, machine tool vibrations and CNC design. Cambridge University Press. New York. Altintas, Y. 2000 b. Modeling approaches and software for predicting the performance of milling operations at MAL-UBC. Machine Science and Technology, Marcel Dekker Inc. 4:445-478. Bass, M. J., and C. M. Christensen. 2002. The future of the microprocessor business. IEEE Spectrum. April 2002. IEEE Press. New York. Bejhem, M, and C-M Nicolescu. 1999. Machining condition monitoring for automation. Proc. 3rd International Conference on Machining & Grinding. October 4-7. Society of Manufacturing Engineers. Cincinnati. OH. Blaauw, G. A., and F. P. Brooks. 1997. Computer architecture, concepts and evolution. Addison Wesley. Reading. MA. Burr-Brown Corporation. 1998. ADS7862 Data Sheet. Burr-Brown Corporation, a division of Texas Instruments Inc. Carter, J. W. 1996. Microprocessor architecture and microprogramming, a state machine approach. Prentice Hall. NJ. Chandrakasan, A., W. J. Bowhill, and F. Fox. 2001. Design of a high-performance microprocessor circuit. IEEE Press. CA.

Especialidad: Mecnica

52

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

Chang, K. C. 1999. Digital design with VHDL and synthesis, an integrated approach. IEEE Computer Society Press. CA. Chen, W.-K. (Editor-in-chief). 2000. The VLSI handbook. CRC Press and IEEE Press. Boca Raton. FA. Daubechies, I. 1988. Orthonormal bases of compactly supported wavelets.

Communications on Pure and Applied Mathematics. 41:909-996. Daryanani, G. 1976. Principles of active network synthesis and design. John Wiley and Sons, New York. Herrera-Ruiz, G., C. Gutierrez-Mazzotti and K. Mori. 1995. Design of a multiprocessor based monitoring system applied to machine tools Proc. 2nd International Conference on Computer Integrated Manufacturing. September. World Scientific & Global Publications Services. Singapore. Jawahir, I. S., and A. K. Balaji. 2000. Predictive modeling and optimization of turning operations with complex grooved cutting tools for curled chip formation and chip breaking. Machine Science and Technology. Marcel Dekker Inc. 4:399-443. Johnson, D. N. 2000. Recognizing tool failure, Proc. Metalworking Fluids Conference, March 22-23, 2000. Society of Manufacturing Engineers. Arlington Highs. IL. Kaiser, G. 1994. A friendly guide to wavelets. Birkhauser, Quinn-Woodbine. New Jersey. Kasashima, N., K. Mori, and G. Herrera-Ruiz. 1994. Diagnosing cutting tool conditions in milling using wavelet transform. Proc. 7th Int. Conference on Production/Precision Engineering. September 15-17. JSPE Publication Series I. Elsevier Science Ltd. Chiba. Japan. Li, X., A. Djordjevich, and P. Venuvinod. 2000 a. Current-sensor-based feed cutting force intelligent estimation and tool wear condition monitoring. IEEE Trans. On Industrial Electronics. 47:697-702.

Especialidad: Mecnica

53

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

Li, X., S. Dong, and Z. Yuan. 2000. Discrete wavelet transform for tool breakage monitoring. Int. J. Of Machine Tools and Manufacture. 39:1935-1944. Li, X., and S. K. Tso. 1999. Drill wear monitoring based on current signals. Wear. Elsevier Science Ltd. 172-178. Li., X., S. K. Tso, and J. Wang. 2000 c. Real-time tool condition monitoring using wavelet transform and fuzzy techniques. IEEE Trans. On Systems, Manufacture and Cybernetics. Part C: Applications and Reviews. 30:352-357. Li, X., P. K. Venuvinod, and M. K. Chen. 2000 b. Feed cutting force estimation from the current measurement with hybrid learning. Int. J. Of Advanced Manufacturing Technology. Springer-Verlang. London. Lim, H., V. Piuri, and E. E. Swartzlander Jr. 2000. A serial-parallel architecture for twodimensional discrete cosine and inverse discrete cosine transforms. IEEE Trans. On Computers. 49:1297-1309. Madisetti, V. K., and D. B. Williams (Editors). 1998. The digital signal processing handbook. CRC Press and IEEE Press. Boca Raton. FA. Marino, F. 2000. Efficient high-speed/low-power pipelined architecture for the direct 2D discrete wavelet transform. IEEE Trans. On Circuits and Systems II: Analog and Digital Signal Processing. 47:1476-1491. Marino, F., D. Guevorkian, and J. T. Astola. 2000. Highly efficient high-speed/lowpower pipelined architecture for the 1-D discrete wavelet transform. IEEE Trans. On Circuits and Systems II: Analog and Digital Signal Processing. 47:14921502. Matsumura, T. 2001. Self-adaptive tool wear monitoring system in milling process. Proc. XXIX NAMRC Conference. May 22-25. Society of Manufacturing Engineers. Gainsville. FA.

Especialidad: Mecnica

54

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

Milutinovic, V. 1997. Surviving the design of a 200 MHz RISC microprocessor, lessons learned. IEEE Computer Society Press. CA. Oguamanam, D. C. D., S. D. Bhole, H. Raafat and S. M. Tabourn. 1990. Tool wear minitoring and breakage detection: a machine vision approach. Proc. Conference VISION 90. November 12-15. Society of Manufacturing Engineers. Detroit. Michigan. Parhami., B. 2000. Computer arithmetic, algorithms and hardware design. Oxford University Press. New York. Patterson, D. A., and J. L. Hennessy. 1998. Computer organization & design, the hardware/software interface (2nd Edition). Morgan Kaufmann. San Francisco. CA. Pekmastzi, K. Z. 1999. Multiplexer-based array multipliers. IEEE Trans. On Computers. 48:15-23. Prickett, P. W., and C. Johns. 1999. An overview of approaches to end milling tool monitoring. International Journal of Machine Tools and Manufacture. 39:105122. Proakis, J. G., and D. G. Manolakis. 1996. Digital signal processing, principles, algorithms, and applications (3rd Ed.). Prentice Hall Inc. New Jersey. Romero-Troncoso, 35(10). Romero-Troncoso, R. De J., and G. Espinosa-Flores-Verdad. 1999 b. VHDL core for synthesis of phase accumulators in DDS applications. Proc. 2nd Forum on Design Languages FDL99. Lyon. France. Romero-Troncoso, R. De J., and G. Espinosa-Flores-Verdad. 1999 c. Algorithm for phase accumulator synthesis for applications in DDS. Proc. Of the 3rd R. De J., and G. Espinosa-Flores-Verdad. 1999 a. Phase

accumulator algorithm for DDS applications. Electronics Letters. May 13th.

Especialidad: Mecnica

55

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

International Workshop on Design of Mixed-Mode Integrated Circuits and Applications. Puerto Vallarta. Mexico. Roth, J. T., and S. M. Pandit. 1999. Using multivariate models to monitor end-mill wear and predict tool failure. Proc. XXVII NAMRC Conference. May 25-28. Society of Manufacturing Engineers. Berkeley. CA. Rubinfield, L. P. 1975. A proof of the modified Booths algorithm for multiplication. IEEE Trans. on Computers. 25:1014-1015. Shriver, B., and B. Smith. 1998. The anatomy of a high-performance microprocessor, a system perspective. IEEE Computer Society Press. CA. Skahill, K. 1996. VHDL for programmable logic. Addison Wesley and Cypress Semiconductor- CA. Sood, A. K., and M. Abdelguerfi. 1985. Computer-based approaches to tool condition monitoring. Proc. Sensors Conference 85. November 5-7. Society of Manufacturing Engineers. Detroit. Michigan. Stelling, P. F., C. U. Martel, V. G. Oklobdzija, and R. Ravi. 1998. Optimal circuits for parallel multipliers. IEEE Trans. On Computers. 47:273-285. Teltz, R. W., A. Shawky, K. Urbasik and M. A. Elbastawi. 1995. Sensor based planning and control for open architecture machining. Proc. XXIII NAMRC Conference. May 24-26. Society of Manufacturing Engineers. Houghton. Michigan. Texas Instruments Inc. 1999. TL084 data sheet. Texas Instruments Inc. Trang, Y. S., and B. Y. Lee. 1992. Use of model-based cutting simulation system for tool breakage monitoring in milling. International Journal of Machine Tools and Manufacture. 32:641-649. Vetterli, M., and C. Herley. 1992. Wavelets and filter banks: theory and design. IEEE Trans. on Signal Processing. 40:2207-2232.

Especialidad: Mecnica

56

CHROMA Desarrollo de un Control Numrico de Arquitectura Abierta

Wang., L. 2001. Tool wear monitoring in machining processes through wavelet analysis. Proc. XXIX NAMRC Conference. May 22-25. Society of Manufacturing Engineers. Gainsville. FA. Webster, J. G. (Editor-in-chief). 1999. The measurement, instrumentation and sensors handbook. CRC Press and IEEE Press, Boca Raton. FA. Yao, Y., X. Li, and Z. Yuan. 1999. Tool wear detection with fuzzy classification and wavelet fuzzy neural network. Int. J. Of Machine Tool and Manufacture. 39:1525-1538. Yeh, W. C., and C. W. Jen. 2000. High speed Booth encoded parallel multiplier design. IEEE Trans. On Computers. 49:692-701. Yu, S., and E. E. Swartzlander Jr. 2001. DCT implementation with distributed arithmetic. IEEE Trans. On Computers. 50:985-991.

Especialidad: Mecnica

57

You might also like