Encuentro de Investigación en IE, 17—18 Marzo, 2005 Encuentro de Investigación en Ingeniería Eléctrica Zacatecas, Zac, Marzo 17 —18, 2005 Herramienta de Cómputo para Grabado mediante PDA. Morales-Valladares J, Licenciatura en Ciencias Computacionales Electrónica (estudiante) , Instituto Nacional de Astrofísica, Óptica y Electrónica, Av. Universidad 1001, Col. Chamilpa, CP 62210, Cuernavaca, Morelos, México. TEL: +(777)3297084, correo-e: [email protected] Basurto-Pensado M.A., Centro de Investigación en Ingeniería y Ciencias Aplicadas, Laboratorio de sensores de fibra óptica, Universidad Autónoma del Estado de Morelos, Morelos, CP – 62210. TEL: +(777)3297084, ext. 6208, correo-e: [email protected] Ochoa-Ortiz-Zezzatti C.A., Instituto de Computacão (Programa Postdoctorale), UNICAMP; Radamaelli Brasil. correo-e: [email protected] Resumen - El presente trabajo describe el funcionamiento de una herramienta de cómputo que se está desarrollando para realizar procesos de control mediante un dispositivo PDA. En esta herramienta se utiliza una técnica de Inteligencia Artificial, denominada Razonamiento Basado en Casos (RBC) que nos permite optimizar las instrucciones de código para llevar a cabo un proceso de control. El código se encuentra escrito en lenguaje “C”, y está desarrollado en el programa Code Warrior que permite transferir el sistema al dispositivo PDA. El desarrollo consiste en elegir una serie de parámetros que nos dan la pauta para realizar la búsqueda en una librería de casos mediante RBC y poder asi procesar los datos por la PDA, teniendo ya realizada la parte de software se envía al puerto infrarrojo del dispositivo, para después enviar la información a un receptor que se encarga de transmitirla y realizar el movimiento de motores. Abstract – The present work describes the operation of a computing tool that is under development to make control of processes by a PDA device. In this tool a technique of Artificial intelligence is used, denominated Reasoning Based on Cases (CBR) that allows us to optimize the instructions of code to carry out a control process. The code is written in language "C", and it is developed in the program Code Warrior that allows to transfer the system to device PDA. The development consists of choosing a series of parameters to set the standard to us to make the search in a cases library by CBR and process the data by the PDA, having already made the part of software is sent to the infrared port of the device, later to send the information to a receiver that is in charge of transmitting it and to make the movement of motors. Palabras clave — CNC , PDA, RBC. 122 Encuentro de Investigación en IE, 17—18 Marzo, 2005 O 123 I. INTRODUCCIÓN riginalmente, las técnicas de grabado eran realizadas por equipos de grandes tamaños. Estos equipos están sujetos a un ordenador para controlar el manejo del proceso de grabado. El Control Numérico Computarizado (CNC) tuvo su origen a principios de los años cincuenta en el Instituto de Tecnología de Massachusetts (MIT), en donde se automatizó por primera vez una gran fresadora. En esa época las computadoras estaban en sus inicios y eran tan grandes que el espacio ocupado por la computadora era mayor que el de la máquina. Hoy día las computadoras son cada vez más pequeñas y económicas, con lo que el uso del CNC se ha extendido a todo tipo de maquinaria: tornos, rectificadoras, eletroerosionadoras, máquinas de coser, etc. En una máquina CNC, a diferencia de una máquina convencional o manual, una computadora controla la posición y velocidad de los motores que accionan los ejes de la máquina. Gracias a esto, puede hacer movimientos que no se pueden lograr manualmente como círculos, líneas diagonales y figuras complejas tridimensionales. Las máquinas CNC son capaces de mover la herramienta al mismo tiempo en los tres ejes para ejecutar trayectorias tridimensionales como las que se requieren para el maquinado de complejos moldes y troqueles. Un conjunto de órdenes que siguen una secuencia lógica constituyen un programa de maquinado. Dándole las órdenes o instrucciones adecuadas a la máquina, ésta es capaz de maquinar una simple ranura, una cavidad irregular, la cara de una persona en altorrelieve o bajorrelieve, un grabado artístico un molde de inyección de una cuchara o una botella, entre otros. La tendencia actual está en reducir el tamaño de los dispositivos controladores y hacer que estos sean más simples de programar. II PROBLEMA. En la actualidad existen máquinas que realizan el proceso de control mediante una computadora, la cual funciona como cerebro para llevar a cabo este proceso, a estas máquinas se les denomina CNC que a diferencia de una máquina convencional o manual, una computadora es la que controla ese proceso. Un inconveniente que se les presenta a ciertas instituciones que requieren llevar a cabo este tipo de procesos es el elevado costo que estas aplicaciones tienen, así como el encontrarse sujetos a un ordenador de escritorio, lo cual delimita el área de trabajo. III. PROPUESTA. Desarrollar una herramienta de cómputo que nos permita controlar motores a pasos o servomotores mediante dispositivos PDA’s, ya que permite tener flexibilidad en el manejo de aplicaciones permitiendo adaptarse al lugar y aplicación del usuario. Estos dispositivos son ordenadores con todo el significado de la palabra, pues disponen de capacidad de procesamiento y almacenamiento de datos. Encuentro de Investigación en IE, 17—18 Marzo, 2005 124 Para poder llevar a cabo el control se tiene dos opciones de comunicación puerto serie y puerto infrarrojo, el primero depende de una conexión fisica de la PDA, mientras que el segundo envía la información de forma inlámbrica, lo cual nos permite tener independencia entre la PDA y el módulo receptor. IV. SOFTWARE Y DESARROLLO A. Metodología. Con la técnica de RBC Razonamiento Basado en Casos se pretende optimizar este sistema, al encontrar los parámetros más adecuados para cada proceso de control, dependiendo de las características del material y la forma geométrica que se desea grabar. Los procesos implicados en el Razonamiento Basado en Casos (RBC) [1] se pueden representar por medio de un diagrama conceptual (véase la Figura 1). El cuál describe al RBC típicamente como un proceso cíclico que abarcaba las cuatro erres: RECUPERAR el caso(s) más similar; REUTILIZAR el caso(s) para procurar solucionar el problema; REVISAR la solución propuesta en caso de necesidad, y RETENER la nueva solución como parte de un nuevo caso. Un nuevo problema se compara contra casos en la librería de casos y se recuperan unos o más casos similares. Una solución sugerida por los casos que tiene gran similitud con el nuevo problema, es posteriormente reutilizada y se prueba para obtener el éxito de la solución. A menos que el caso recuperado sea un caso muy similar, la solución tendrá probablemente que ser revisada produciendo un nuevo caso que puede ser conservado. Este ciclo ocurre actualmente raramente sin la intervención humana. Por ejemplo muchas herramientas de RBC [2] actúan sobre todo como recuperación del caso y reutilizan sistemas. La revisión del caso (también llamada, adaptación) es realizada a menudo por los encargados de la Librería de Casos. Sin embargo, esto no debe ser visto como una debilidad del RBC, ya que permite funcionar como una herramienta de toma de decisiones, con la colaboración humana en ayuda de la mejor decisión [3]. En la actualidad existen una veintena de herramientas comerciales y conferencias internacionales en el tema son realizadas cada año. Figura 1. El Ciclo Básico de RBC [adaptado del propuesto por Aamodt & Plaza, 1994] B. Herramienta desarrollada. El desarrollo del sistema se lleva a cabo en el programa Code Warrior, en el cual se utiliza el lenguaje “C”. El sistema desarrollado cuenta con los diferentes parámetros que requiere la PDA’s para poder emitir el proceso. 125 Encuentro de Investigación en IE, 17—18 Marzo, 2005 En el diagrama siguiente se muestra los diferentes bloques en los que esta basado el proceso del sistema (Figura 2). Almacenado en una libreria de casos Figura Código numérico interpretado por PDA Metodología RBC Material Conjunto de órdenes que siguen una secuencia lógica Intensidad Velocidad Figura 2. Bloques bajo los cuales trabaja la herramienta desarrollada. El proceso inicia con la elección de tres de los parámetros, figura que se desea grabar, material utilizado para llevar a cabo este proceso de grabado y por último la intensidad con la que se desea grabar, este último factor dependiendo del material elegido previamente. Teniendo ya esta información se utiliza la técnica de RBC en la cual se busca en la librería de casos, la velocidad más adecuada para dichos parámetros, se obtiene esa información y se conjunta con el resto de parámetros. Teniendo ya un conjuto de órdenes y siguiendo una secuencia lógica se procesan los datos en la PDA[4],traduciéndolos en un código numérico para poder ser interpretados y enviados.. Con esta herramienta desarrollada y analizados los datos, entonces se puede ya realizar el proceso de control para iniciar el grabado con los dichos datos. El siguiente diagrama conceptual (Figura 3) muestra cómo se lleva a cabo el proceso de control mediante la herramienta de cómputo desarrollada. Módulo emisor-receptor de infrarrojo PDA Motor Figura 3. Diagrama Conceptual, mostrando el Proceso de control mediante PDA. Todo el proceso se lleva a cabo mediante el uso de "lenguaje conversacional" en el que el programador escoge la operación que desea y la máquina le pregunta los datos que se requieren, iniciando este con el envío de información del sistema al puerto infrarrojo, ésta es recibida por un receptor de infrarrojos, el cuál se encarga de transmitir dicho conjunto de datos a los motores y poder así comenzar el proceso de grabado. Encuentro de Investigación en IE, 17—18 Marzo, 2005 126 V. CONCLUSIONES Y TRABAJO FUTURO El sistema ha comprobado su funcionamiento, habiéndose realizado pruebas en un emulador que nos permite tener el comportamiento de un dispositivo PDA. Falta realizar las pruebas con la parte electrónica y poder así enriquecer nuestra librería de casos, con más “casos” específicos. Se pretende precisar otros parámetros como lo son dimensión y grosor de las figuras, una vez realizadas las mismas, aunado a poder utilizar este sistema desde cualquier ubicación donde se encuentre físicamente el usuario por medio de la red internet (WWW), esto se podrá realizar con el puerto infrarrojo. RECONOCIMIENTOS El presente articulo re realizó en coordinación con el Dr. Miguel A. Basurto Pensado y el Dr. Alberto Ochoa Ortiz. Y mediante el apoyo del PROMEP (proyecto UAEMOR-PTC-55) Este trabajo fue desarrollado en las instalaciones del Laboratorio de Sensores de Fibra Óptica del Centro en Investigación en Ingeniería Ciencias Aplicadas. REFERENCIAS [1] [2] [3] [4] A. Aamodt & E. Plaza (1994). Case-Based Reasoning: Foundational Issues, Methodological Variations, and System Approaches. AI Communications, 7(i): pp 39-59 A. Ochoa, et al. “Proceedings of Doctoral Forum, PRICAI 2004, Auckland University of Technology, August 2004. J. Wainer, Luana Borgonovi & A. Ochoa. “Ornithological Classification using case-based reasoning for discovered new species”, UNICAMP Postdoctoral program; Radamaelli, Brazil January 2005. Darly Wilding-McBride. Java Development on PDAs, Addison-Wesley.