INSTITUTO TECNOLÓGICO Y DE ESTUDIOS SUPERIORES DE MONTERREY CAMPUS TOLUCA DISEÑO Y CONSTRUCCIÓN DE UN LABORATORIO VIRTUAL UTILIZANDO REDES DE PETRI TESIS Que para obtener el grado académico de MAESTRO EN CIENCIAS En Ingeniería Electrónica PRESENTA CARLOS VÁZQUEZ HURTADO ASESOR DR. LUCIANO CHIRINOS GAMBOA CO-ASESOR M. EN C. ALAÍN CÉSAR GONZÁLEZ GARCÍA TOLUCA, MÉXICO DICIEMBRE 2002 ÍNDICE Resumen........................................................................................................... vi Capítulo 1. Introducción.................................................................................. 1 Introducción.................................................................................. Antecedentes............................................................................... Definición del problema................................................................ Objetivo........................................................................................ Justificación.................................................................................. Limitación y delimitación.............................................................. Organización de la tesis............................................................... 1 2 4 6 6 7 7 Capítulo 2. Marco teórico................................................................................ 9 1.1. 1.2. 1.3. 1.4. 1.5. 1.6. 1.7. Introducción.................................................................................. Sistemas de Eventos Discretos................................................... Introducción a las redes de Petri.................................................. 2.3.1. Estructura de redes de Petri.............................................. 2.3.2. Gráficas de redes de Petri................................................. 2.3.3. Marcajes de redes de Petri................................................ 2.3.4. Reglas de ejecución de las redes de Petri........................ 2.3.5. Espacio de estados de redes de Petri............................... 2.3.6. Propiedades de las redes de Petri.................................... 2.3.6.1. Seguridad.......................................................... 2.3.6.2. Acotamiento....................................................... 2.3.6.3. Conservación..................................................... 2.3.6.4. Vivacidad .......................................................... 2.3.6.5. Alcanzabilidad................................................... 2.3.7. Técnicas de análisis 2.3.7.1. Árbol de alcanzabilidad 2.3.7.2. Métodos matriciales 2.3.8. Redes de Petri temporizadas 2.3.8.1. Inclusión del tiempo en un modelo de RdP....... 2.3.8.2. Redes de Petri con transiciones temporizadas. Estabilidad, control y regulación.................................................. 9 9 10 10 11 12 13 14 15 15 15 15 15 16 16 16 16 18 18 18 19 Capítulo 3. Metodología.................................................................................. 20 2.1. 2.2. 2.3. 2.4. 3.1. 3.2. 3.3. Introducción.................................................................................. Diagrama de flujo de la metodología........................................... Metodología.................................................................................. 3.3.1. Definición del problema..................................................... 3.3.2. Diagrama técnico............................................................... 3.3.3. Diagrama de estados........................................................ 3.3.4. Reglas de ejecución.......................................................... 3.3.5. Definición de plazas y transiciones................................... 3.3.6. Asignación de marcas....................................................... 20 20 21 21 21 22 23 24 24 ii 3.3.7. Gráfica de la red de Petri................................................... 3.3.8. Análisis de estabilidad....................................................... 3.3.9. Control y regulación........................................................... 3.3.10. Simulación........................................................................ 3.3.11. Redes de Petri temporizadas........................................... 25 26 26 27 27 Capítulo 4. Pruebas y resultados................................................................... 29 4.1. Pruebas........................................................................................ 4.1.1. Validación del modelo de RdP del sistema....................... 4.1.2. Tiempo de respuesta del programa WinCC...................... 4.1.3. Tiempos de acceso dentro del Campus............................ 4.1.4. Tiempos de acceso fuera del Campus.............................. 4.1.5. Pruebas del Laboratorio Virtual en quipos de trabajo....... Resultados................................................................................... 4.2.1. Experimento virtual, la forma tradicional........................... 4.2.1.1. Definición del problema.................................... 4.2.1.2. Diagrama técnico.............................................. 4.2.1.3. Grafcet.............................................................. 4.2.2. Modelado del experimento virtual utilizando RdP............. 4.2.2.1. Definición del problema.................................... 4.2.2.2. Diagrama técnico.............................................. 4.2.2.3. Diagrama de estados........................................ 4.2.2.4. Reglas de ejecución.......................................... 4.2.2.5. Definición de plazas y transiciones................... 4.2.2.6. Asignación de marcas....................................... 4.2.2.7. Gráfica de la red de Petri.................................. 4.2.2.8. Análisis de estabilidad....................................... 4.2.2.9. Control y regulación.......................................... 4.2.2.10. Simulación........................................................ 4.2.3. Implementación................................................................. 4.2.3.1. Elección de Hardware y Software..................... 4.2.3.2. Modos de operación.......................................... 4.2.3.3. Manipulación de los modos de operación......... 4.2.3.4. Organización del programa............................... 4.2.3.5. Descripción de las funciones............................ 4.2.3.6. Asignación de entradas y salidas..................... 4.2.4. Interfase gráfica con WinCC............................................. 4.2.4.1. Descripción de la pantalla................................. 4.2.5. Visualización mediante cámara de red............................. 29 29 29 29 31 31 33 33 33 34 34 35 35 35 36 36 37 38 39 39 40 42 43 43 45 46 47 48 49 51 51 52 Capítulo 5. Resultados y conclusiones......................................................... 53 4.2. Conclusiones................................................................................ Trabajo futuro............................................................................... 53 54 Referencias...................................................................................................... 55 5.1. 5.2. iii RESUMEN El objetivo de este proyecto es el de proveer a los estudiantes tanto del ITESM Campus Toluca como de la Universidad de Ciencias Aplicadas de Esslingen, con acceso remoto, al proyecto del Laboratorio Virtual. El Laboratorio Virtual se compone en este momento por un experimento electro-neumático conectado a una computadora personal (servidor) vía un Controlador Lógico Programable (PLC). El usuario puede utilizar un navegador de Internet para acceder al servidor de VNC (Virtual Network Computing) y enviar los parámetros o comandos requeridos al PLC. El modelado puede ser hecho usando redes de Petri o herramientas tradicionales como Grafcet o diagrama de estados. Se ha diseñado un simulador propio para el experimento virtual de manera tal que los estudiantes puedan probar e implementar sus controladores de forma segura. Con el propósito de llevar un seguimiento más real del proceso se añade una cámara de red al servidor. iv CAPÍTULO 1 INTRODUCCIÓN 1.1. INTRODUCCIÓN El propósito de está tesis es modelar, simular e implementar un experimento electroneumático. Dicho experimento supone un proceso industrial sencillo en donde el dispositivo toma y coloca piezas. Para ubicar al experimento dentro de un contexto global denominado en adelante “Laboratorio Virtual” se conectará el sistema electro-neumático a una computadora personal vía un Controlador Lógico Programable (PLC, acrónimo en inglés de Programmable-Logic Controller). La computadora funcionará como servidor de VNC [5] (Virtual Network Computing) y proveerá a los estudiantes de acceso remoto a través de Internet al Laboratorio Virtual. El proyecto del Laboratorio Virtual surge en el año 2001. Es un trabajo coordinado entre dos universidades para ofrecer a sus estudiantes la oportunidad de trabajar juntos, de resolver problemas considerando diferentes puntos de vista, de aprender nuevos idiomas y de intercambiar culturas. El Laboratorio Virtual brinda desde el punto de vista técnico el uso de herramientas industriales de hardware y software reales. En cuanto al hardware se utilizan actuadores neumáticos de FESTO y para control se emplean PLCs S7-300 de SIEMENS [2]. Hablando de software se utiliza STEP 7 [3] para programar los PLCs. Para visualización y control se usa WinCC. Este último es un sistema industrial y tecnológicamente neutral capaz de manejar despliegue de gráficas y tareas de control de sistemas en procesos de automatización y producción [4]. El concepto de Laboratorio Virtual se ha manejado ya con un enfoque diferente dentro del ITESM Campus Toluca, así por ejemplo se puede citar el proyecto de dos estudiantes que en el 2002 trabajaron bajo el sistema operativo en tiempo real QNX y utilizando los lenguajes de programación Java y C++ [1] desarrollaron un programa para control de procesos a distancia basado en una plataforma determinística. _____________________________________________________________________________ 1 Capítulo 1. Introducción 1.2. ANTECEDENTES El Internet fue creado en 1974 como una herramienta de comunicación para institutos de investigación, universidades y la milicia [6]. Las aplicaciones del Internet en la industria son relativamente nuevas y se refieren principalmente al uso de PLCs conectados en línea. Realizar el control de un proceso de manera remota tiene la ventaja de descentralizar el proceso de automatización y control. Una de las principales desventajas de usar este método es que el tiempo desde que se envía un comando al controlador hasta que éste lo recibe y actúa es impredecible. Éste tema ha sido abordado con anterioridad por investigadores de diversas universidades y en la industria. A continuación se mencionan algunos trabajos similares al que en este proyecto se propone: Jorge Tuttas y Bernard Wagner trabajaron en un proyecto titulado “Distributed Online Laboratories”. El objetivo de este proyecto es el desarrollo de nuevos métodos de aprendizaje así como del equipo apropiado para el aprendizaje y entrenamiento basados en experimentación distribuida [7]. Utilizando herramientas como HTML y Java para construir un laboratorio remoto hace posible que estudiantes de las universidades de Stanford (Stanford Learning Lab) y la universidad de Hannover (Learning Lab Lower Saxony) diseñen, implementen y prueben controladores discretos. Mohamed Shanen y sus colaboradores publicaron en 1998 un artículo titulado “Remote Laboratory Experimentation” en donde describen un proyecto cuyo objetivo es el de proveer a los estudiantes de Case Wetern Reserve y Copoper Union Universities con acceso remoto al control de proceso bytronico [8]. Ellos se valían de un navegador para que el usuario ingresara a su página desde cualquier parte del mundo. Por éste medio podían enviar los parámetros hasta un servidor LabVIEW G conectado a la unidad de control a través de un PLC. Celal Batur y un grupo de investigadores publicaron en Junio del 2000 un artículo en donde explican cómo sintonizar de manera remota un controlador de posición PID vía Internet [9]. En su publicación discuten principalmente dos problemas que encontraron al momento de realizar su aplicación; el primero se refiere a los retardos impredecibles en la comunicación _____________________________________________________________________________ 2 Capítulo 1. Introducción en el sistema de Internet, el segundo se refiere a la confiabilidad de tal metodología de control. Jin Bin trabajó con su equipo para desarrollar un control jerárquico flexible para una línea de ensamble automatizada [10]. Él y su equipo utilizan un controlador lógico programable basado en redes Petri como estación de control para realizar operaciones de ensamble individuales. Por otro lado, mediante un controlador de línea, forman un número de operaciones de ensamble separadas dentro de una línea de ensamble. Finalmente para interconectar las estaciones de control con los controladores de línea se utiliza una red de área local de bajo costo. S.C. Lauzon desarrolló en colaboración con otros tres investigadores una aplicación de la teoría para sistemas de eventos discretos en la manufactura flexible [11]. En su artículo presentan la implementación del modelo de Sistemas de Eventos Discretos en conjunción con la tecnología de PLCs para realizar el control en la manufacturación de celdas de carga. Los autores proponen el uso de una computadora personal que posea la capacidad para generar automáticamente estrategias de supervisión y control en línea, así como su consecuente descarga en el PLC. William Burke y Eamonn Byrne desarrollaron un sistema de control de temperatura confiable para el tanque de vació Alcator C-MOD [12]. Mediante un PLC monitorean 472 termocoples tipo K para medir las temperaturas y controlar los calentadores usando bancos de relevadores de estado sólido. Además el PLC ofrece logging de datos y capacidad para realizar diagnósticos en línea. Noriichi Kanaya desarrolló junto con Asaoka y Maezawa un sistema de control de una bomba de vació usando controladores lógicos programables sobre una red TCP/IP para el anillo de almacenamiento 2.5-GeV [13]. Los investigadores utilizan un PLC para controlar la corriente de dieciséis relevadores de estado sólido, logrando con ello el control simultaneo de dieciséis bombas. Puesto que los PLCs que usan cuentan con un puerto de red TCP/IP es posible conectarlos a una computadora personal (PC). Entonces la PC puede _____________________________________________________________________________ 3 Capítulo 1. Introducción controlar automáticamente los PLCs enviando un conjunto de instrucciones a través de la red. En el tema de los simuladores Yaobin Chain desarrollo un simulador para control en tiempo real de sistemas de manufactura automatizados utilizando redes de Petri [14]. El software ofrece una herramienta de diseño intuitivo con enfoque gráfico y con capacidad para corregir errores, muy conveniente para modelado y control de sistemas de manufactura. Gasper Music y Drago Matko presentan un artículo llamado “Petri net based control of a modular production system” [15] en donde plantean un enfoque sistemático para diseño de control secuencial. Su primera meta es mostrar como los modelos con redes de Petri pueden ser usados como herramienta para la especificación del control secuencial que permita el desarrollo sistemático y el análisis de un modelo de especificación. En segundo lugar muestran como el modelo de especificación puede ser usado como dato de entrada para el segundo nivel de coordinación empleando conceptos de control de supervisión. Al final presentan un método de implementación. El doctor Zvi Retchkiman escribió un artículo sobre la teoría de estabilidad para una clase de sistemas dinámicos [16]. En ellos ofrece la teoría de estabilidad básica que se necesita para entender las contribuciones del autor al campo de los sistemas de eventos discretos. Ofrece además fórmulas simplificadas para el análisis de estabilidad de sistemas modelados con redes de Petri. 1.3. DEFINICIÓN DEL PROBLEMA ¿Qué ventajas ofrece a los estudiantes del sistema ITESM Campus Toluca contar con un Laboratorio Virtual que les permita modelar, simular, monitorear y controlar procesos industriales? La creciente demanda por cursos en línea con una validez y respaldo académico fue uno de los motores que llevaron al ITESM a crear la universidad virtual. Este concepto funciona en _____________________________________________________________________________ 4 Capítulo 1. Introducción el ámbito teórico conceptual, sin embargo, a la fecha no se ofrecen cursos prácticos en línea para que el estudiante interactúe con un proceso industrial. Bajo el concepto del Laboratorio Virtual el alumno está en contacto con estudiantes de universidades en el extranjero para resolver un problema común. Dicho problema comienza al modelar ya sea con Grafcet o con redes de Petri el sistema de manufactura asignado, una vez que se ha conseguido el modelo es necesario validarlo aplicando la teoría de estabilidad para sistemas modelados con redes de Petri y simularlo. La simulación puede ser hecha con simuladores genéricos o con el simulador desarrollado para éste proyecto. Finalmente la implementación se realiza con herramientas como actuadores neumáticos, PLCs y software de visualización y control industrial. Entre las ventajas de ésta propuesta se pueden mencionar: • El estudiante puede aplicar sus conocimientos teóricos en la práctica aún desde una localidad remota. • El estudiante tiene la oportunidad de intercambiar y aplicar ideas para la solución de problemas con estudiantes de otras universidades, aún cuando éstas se encuentren en continentes diferentes. • El estudiante está más motivado a aprender nuevas lenguas que le permitan interactuar de manera más natural con estudiantes de otros países. • El estudiante puede intercambiar aspectos culturales de su país al relacionarse con otros estudiantes por un período considerable de tiempo a la vez que resuelven el problema del experimento asignado. • El estudiante realiza la implementación de manera más rápida y efectiva al contar con un modelo valido con Grafcet o redes de Petri. • El estudiante verifica y corrige errores oportunamente mediante la simulación del proceso. • El profesor puede difundir sus conocimientos a mayor distancia, así como aprender o compartir técnicas didácticas con profesores de otras universidades. _____________________________________________________________________________ 5 Capítulo 1. Introducción 1.4. OBJETIVO El presente trabajo tiene como objetivo diseñar un Laboratorio Virtual y construir un experimento que simule un proceso industrial controlado y visualizado desde Internet. Dicho proceso será modelado con redes de Petri. 1.5. JUSTIFICACIÓN Este proyecto surge de la inquietud de dotar a los estudiantes de ingeniería o postgrado, con una herramienta que les permita poner en práctica desde su hogar o una localidad remota el conocimiento adquirido en las aulas. Este trabajo se realiza en coordinación con la universidad alemana Esslingen University of Applied Sciences. Lo anterior permitirá un intercambio de ideas y experiencias a través de la red toda vez que los alumnos del Campus tendrán acceso a los experimentos por ellos propuestos y viceversa. Otra de las razones por las que se concibió este proyecto es porque los alumnos que estudian a través de la universidad virtual carecen de talleres prácticos en línea. Aquí se proponen algunos procesos para que el alumno pueda controlar y aportar soluciones creativas. Entre las principales aportaciones de este proyecto están: • La construcción de un Laboratorio Virtual que fomenta la colaboración entre distintas universidades. • Presenta una metodología para modelar con Grafcet, diagramas de estado y principalmente con redes de Petri. • Ofrece un simulador gráfico propio para el proceso del primer experimento virtual. • Optimiza recursos e innova al equipo de automatización. • Permite adquirir habilidades técnicas de nueva generación. • Fomenta el intercambio de ideas y culturas. _____________________________________________________________________________ 6 Capítulo 1. Introducción 1.6. LIMITACIÓN Y DELIMITACIÓN Este proyecto está delimitado a diseñar el Laboratorio Virtual y ofrecer una metodología para modelar sistemas de manufactura con redes de Petri ordinarias y temporizadas. Las limitaciones del proyecto son: 1) Las sesiones de práctica del estudiante están limitadas por el número de PLCs conectados en línea. 2) Dichas sesiones están afectadas por los retardos de Internet que se generan por la carga de la red. 3) En este momento sólo se cuenta con un experimento así que cada grupo de trabajo tiene un tiempo asignado para su sesión de entrenamiento. 4) El simulador de proceso desarrollado sólo puede simular el experimento actual. 1.7. ORGANIZACIÓN DE LA TESIS En el capítulo uno se ofrece un marco introductorio y de referencia en el cual se explica el problema del Laboratorio Virtual, presenta un panorama de trabajos relacionados, se dan los objetivos, la justificación y se delimita el trabajo de tesis. En el capítulo dos se explica la teoría necesaria para comprender el proceso de modelado con redes de Petri. Se divide en tres secciones: Sistemas de eventos discretos, Introducción a las redes de Petri y Análisis de estabilidad, control y regulación para sistemas modelados con RdP. En el capítulo tres se presenta la metodología propuesta para modelado y simulación de sistemas de manufactura utilizando redes de Petri. Se explica dicha metodología utilizando un ejemplo sencillo resuelto paso a paso hasta obtener el modelo en redes de Petri a partir del sistema físico. En el capítulo cuatro se exponen las pruebas realizadas sobre el Laboratorio Virtual y se muestran los resultados obtenidos como son: modelado del experimento del Laboratorio _____________________________________________________________________________ 7 Capítulo 1. Introducción utilizando Grafcet, modelado del experimento utilizando redes de Petri, la implementación de éste último modelo, la interfase gráfica de control y visualización con WinCC y la visualización del proceso con una cámara de red. En el capítulo cinco se brindan las conclusiones del trabajo, las aportaciones del mismo y se enlistan algunas ideas de trabajo a futuro que puede seguir a partir de esta tesis. _____________________________________________________________________________ 8 Capítulo 1. Introducción CAPÍTULO 2 MARCO TEÓRICO 2.1. INTRODUCCIÓN En este capítulo se explica la teoría necesaria para comprender el proceso de modelado con redes de Petri expuesto en el capítulo tres. Así mismo se ofrecen técnicas como estabilidad y regulación que permiten crear un modelo libre de errores. Las Redes de Petri (RdP), son una herramienta que sirve para modelar sistemas. El modelo obtenido ofrece información acerca de la estructura y comportamiento dinámico del sistema. Esta información puede ser utilizada para evaluar, sugerir cambios o mejoras y para validar el sistema. 2.2. SISTEMAS DE EVENTOS DISCRETOS Los sistemas de eventos discretos (DES) son aquellos que están compuestos por elementos que manejan entidades discretas, es decir numerables y diferenciables entre sí [17]. Su funcionamiento está caracterizado por una sucesión finita o infinita de estados estables delimitados por eventos que ocurren, generalmente, de manera asíncrona. La mayor parte de los DES han sido construidos por el hombre; como ejemplo se pueden citar los sistemas de cómputo y los sistemas de producción discretos conocidos también como sistemas de manufactura. En lo que se refiere al diseño y construcción de sistemas de eventos discretos, el modelado constituye una etapa importante. Las pruebas efectuadas sobre el modelo (validación), las cuales incluyen la simulación y pruebas formales, permiten detectar problemas de diseño debidos generalmente a: especificaciones incompletas, ambiguas y a veces erróneas (o irrealizables). La aplicación iterada de pruebas y ajustes conducen a un modelo cuya implementación será confiable. _____________________________________________________________________ 9 Capítulo 2. Marco Teórico 2.3. INTRODUCCIÓN A LAS REDES DE PETRI A continuación se presentan los conceptos básicos de las redes de Petri [18]. Se ofrecen las nociones fundamentales de la teoría de RdP y su aplicación al modelado de sistemas de eventos discretos [25]. 2.3.1. Estructura de redes de Petri Una RdP C, es una cuadrupleta: C = (P,T,I,O) (2.1) donde: P = {p1 ,..., pn } es un número finito de plazas, n ≥ 0 . (2.2) T = {t1 ,..., t m } es un número finito de transiciones, m ≥ 0 . (2.3) Los multiconjuntos de plazas y transiciones son disjuntos: P ∩ T = Φ . I : T → P ∞ es la función de entrada. (2.4) O : T → P ∞ es la función de salida. (2.5) DEFINICIÓN Un lugar pi es una plaza de entrada a una transición t j ⇔ pi ∈ I (t j ) . Un lugar pi es una plaza de salida de la transición t j ⇔ pi ∈ O(t j ) . DEFINICIÓN La multiplicidad de un lugar de entrada pi para una transición tj es el número de ocurrencias de pi en I (t j ) , lo cual es igual a # ( pi , I (t j )) . De forma similar la multiplicidad de un lugar de salida pi para una transición tj es el número de ocurrencias de pi en O(t j ) , lo cual es igual a # ( pi , O(t j )) . DEFINICIÓN Las funciones de entrada (2.4) y salida (2.5) se extienden de la siguiente manera: _____________________________________________________________________ 10 Capítulo 2. Marco Teórico I : P →T∞ # (t j , I ( pi )) = # ( pi , O(t j )) (2.6) O: P →T∞ # (t j , O( pi )) = # ( pi , I (t j )) (2.7) 2.3.2. Gráficas de redes de Petri DEFINICIÓN Una gráfica de RdP G, es una multigráfica bipartita G = (V , A) (2.8) Donde: V = {v1 , v2 ,..., vs } es el multiconjunto de nodos (vértices) (2.9) A = {a1 , a2 ,..., ar } es un multiconjunto de arcos dirigidos a j = (v j , vk ) con v j , vk ∈ V . (2.10) El multiconjunto V puede ser partido en dos multiconjuntos distintos P y T, tal que V = P ∪ T ; P ∩ T = Φ y para cada arco dirigido ai ∈ A si a j = (v j , vk ) entonces v j ∈ P y vk ∈ T o v j ∈ T y vk ∈ P . Nota: Una estructura de RdP consiste de plazas y transiciones, por lo tanto se tienen dos clases de vértices (nodos). Un círculo representa un a plaza y una línea una transición. Ejemplo 2.1. Dibujar la gráfica de la red de Petri que se da a continuación: C = ( P, T , I , O ) P = {p1 ,..., p3 } T = {t1 ,...,t3 } _____________________________________________________________________ 11 Capítulo 2. Marco Teórico I (t1 ) = {p1} O(t1 ) = {p1 , p2 } I (t 2 ) = {p1 } O(t 2 ) = {p2 , p3 } I (t3 ) = {p2 , p3 } O(t3 ) = {p3 } Entonces la gráfica de la RdP anterior es: Figura 2.1. Gráfica de la RdP. Donde las tres plazas se dibujaron como círculos, las tres transiciones como líneas, los arcos están definidos por las funciones de entrada y salida. 2.3.3. Marcajes de redes de petri Un marcaje µ es una asignación de “marcas” a las plazas de la Red de Petri. DEFINICIÓN Un marcaje µ en una RdP C = ( P, T , I , O) es una función µ : P → Ν ( Ν = Naturales). El marcaje también se define como un vector µ µ = ( µ1 , µ 2 ,..., µ n ) (2.11) con n =| P | y cada µ i ∈ Ν , es decir, µ = Ν m con µ i el número de marcas de la i-ésima plaza. El marcaje inicial µ 0 es el marcaje original del sistema. _____________________________________________________________________ 12 Capítulo 2. Marco Teórico DEFINICIÓN Una RdP con marca M = (C , µ ) es una red de Petri C = ( P, T , I , O) y un marcaje µ : P → Ν que también suele denotarse por: M = ( P, T , I , O, µ ) (2.12) 2.3.4. Reglas de ejecución para las redes de Petri La ejecución de una RdP está controlada por el número y distribución de las marcas en la red. Las marcas residen en las plazas y controlan la ejecución de las transiciones. Una RdP se ejecuta disparando transiciones, lo cual significa remover marcas de las plazas de entrada a la transición y creando nuevas marcas (distribuidas) en las plazas de salida. Las transiciones solo pueden ser disparadas si están habilitadas. DEFINICIÓN Una transición t j ∈ T en una RdP con marca M = ( P, µ ) está habilitada si ∀pi ∈ I (t j ) µ ( pi ) ≥ # ( pi , I (t j )) (2.13) Una transición se dispara removiendo todas las marcas habilitadas de sus plazas de entrada y depositando en cada una de sus plazas de salida una marca por cada arco de la transición a la plaza. DEFINICIÓN Una transición tj en una RdP con marca M = (C , µ ) se dispara cuando tj esta habilitada. Si tj es disparada, esto resulta en un nuevo marcaje definido por µ ' : µ ' ( pi ) = µ ( pi ) − # ( pi , I (t j )) + # ( pi , O(t j )) (2.14) _____________________________________________________________________ 13 Capítulo 2. Marco Teórico 2.3.5. Espacio de estados de redes de Petri Definiciones: i) El estado de una RdP está definido por su marcaje. ii) El espacio de estados de una red de Petri con m plazas es el conjunto de todas las posibles marcas Ν m . DEFINICIÓN La función “Próximo estado” δ : Ν m × T → Ν m para una RdP C = ( P, T , I , O) con marca µ y transición t j ∈ T está definida si y sólo si se cumple (2.13), y si δ ( µ , t j ) esta definida, entonces δ ( µ , t j ) = µ ' , donde µ ' es igual a (2.14) DEFINICIÓN Para una RdP C = ( P, T , I , O) con marcaje µ , un marcaje µ ' es “inmediatamente alcanzable” desde µ si existe una transición t j ∈ T tal que δ ( µ , t j ) = µ ' . DEFINICIÓN El conjunto de “alcanzabilidad” R(C , µ ) de una RdP C = ( P, T , I , O) con marca µ es el “más pequeño” conjunto de marcas definido por: 1. µ ∈ R(C , µ ) 2. Si µ '∈ R(C , µ ) y µ ' ' = δ ( µ ' , t j ) para alguna t j ∈ T ⇒ µ ' '∈ R(C , µ ) DEFINICIÓN La “función extendida de próximo estado” está definida para un marcaje µ y una sucesión de transiciones σ ∈ T como: δ ( µ , t j , σ ) = δ (δ ( µ , t j ), σ ) (2.15) _____________________________________________________________________ 14 Capítulo 2. Marco Teórico 2.3.6. Propiedades de las redes de Petri 2.3.6.1. Seguridad Una plaza pi ∈ P de una RdP C = ( P, T , I , O) con un marcaje inicial µ es segura si ∀µ '∈ R(C , µ ), µ ' ( pi ) ≤ 1 . Una RdP se dice ser segura si cada plaza en la red es segura. 2.3.6.2. Acotamiento Una plaza pi ∈ P de una RdP C = ( P, T , I , O) con un marcaje inicial µ es k-segura o kacotada si ∀µ '∈ R(C , µ ) existe µ ' ( pi ) ≤ k . 2.3.6.3. Conservación Una red de Petri con marcaje inicial µ es "estrictamente" C = ( P, T , I , O ) conservativa si ∀µ '∈ R(C , µ ) tiene: ∑ µ( p ) = ∑ µ' ( p ) i pi ∈P (2.16) i pi ∈P Nota: En términos de las funciones de entrada y salida se tiene que: | I (t j ) |=| O(t j ) | ∀t j ∈ T (2.17) DEFINICIÓN Una red de Petri C = ( P, T , I , O) con marcaje inicial µ se dice ser conservativa "con respecto a un vector de peso ω " si ∀µ '∈ R(C , µ ) ∑ω µ( p ) = ∑ω µ' ( p ) i i i i i (2.18) i 2.3.6.4. Vivacidad i) Un bloqueo en una RdP es una transición (o una sucesión de transiciones) que no puede(n) ser disparadas. _____________________________________________________________________ 15 Capítulo 2. Marco Teórico ii) Una RdP esta viva si no esta bloqueada. 2.3.6.5. Alcanzabilidad Dada una red de Petri C = ( P, T , I , O) con marcaje µ , se dice que µ ' es alcanzable si µ '∈ R(C , µ ) . 2.3.7. Técnicas de análisis 2.3.7.1. Árbol de alcanzabilidad Se trata de obtener una representación finita de todas las posibles sucesiones de disparo de transición. Ejemplo 2.2. A continuación se obtendrá el árbol de alcanzabilidad de la gráfica de la RdP del ejemplo 2.1 considerando que el marcaje inicial es µ 0 = {1,0,0} . Figura 2.2. Gráfica de RdP. Figura 2.3. Árbol de alcanzabilidad. 2.3.7.2. Métodos matriciales Otra alternativa consiste en definir la RdP de la siguiente forma: Una RdP consiste en la cuatrupleta ( P, T , A+ , A− ) donde P y T son multiconjuntos de plazas y transiciones con: A− ( j , i ) = # ( pi , I (t j )) Entradas a las transiciones (2.19) _____________________________________________________________________ 16 Capítulo 2. Marco Teórico A + ( j , i ) =# ( pi , O(t j )) Salidas a las transiciones (2.20) son matrices de m renglones (| T |= m) y n columnas (| P |= n) . (Evidentemente el proporcionar estas matrices es equivalente a dar I : T → P ∞ y O : T → P ∞ , ya que por medio de A+ y A− se puede construir O e I respectivamente y viceversa), la ventaja de esta definición es que ahora es posible rescribir todo en forma matricial. ∆ Sea e[ j ] = (0,...,0,1,0,...,0) entonces t j = e[ j ]lxm . Ahora suponiendo que tj esta habilitada − con un marcaje µ , i.e., µ lxm ≥ e[ j ]lxm Amxn y como resultado de disparar tj en el marcaje µ , el nuevo marcaje µ ' es: δ ( µ , t j ) = µ − e[ j ] A− + e[ j ] A+ = µ + e[ j ](− A− + A+ ) = µ + e[ j ] A (2.21) donde: A = A+ − A− (2.22) Ahora en el caso de tener una sucesión de disparos σ = t j , t j ,..., t j 1 2 k entonces: δ ( µ , σ ) = µ + e[ j1 ] A + e[ j2 ] A + ... + e[ jk ] A = µ + (e[ j1 ] + e[ j2 ] + ... + e[ jk ]) A = µ + f (σ ) A (2.23) _____________________________________________________________________ 17 Capítulo 2. Marco Teórico donde: f (σ ) = e[ j1 ] + e[ j2 ] + ... + e[ jk ] es llamado "Vector de disparo" de la sucesión σ = t j , t j ,..., t j . El i-esimo elemento de f (σ ) , f (σ ) i denota el número de veces que la 1 2 k transición ti ha sido disparada en la sucesión σ = t j1 , t j2 ,..., t jk . 2.3.8. Redes de Petri temporizadas 2.3.8.1. Inclusión del tiempo en un modelo de RdP La inclusión del tiempo en una RdP puede ser hecha asignando tiempos a las transiciones o a los lugares. El nombre que recibe una RdP con restricciones temporales es red de Petri temporizada (RPT) [17]. En general, el tiempo puede ser asignado a los lugares, a las transiciones, o a ambos; sin embargo el tratamiento de los modelos en RPT se ve simplificado cuando se temporiza un solo tipo de nodo. 2.3.8.2. RdP con transiciones temporizadas Una RPT a la cual el tiempo esta asociado a las transiciones se le llama RdP con transiciones temporizadas (RPTT). Una RPTT se define como: (C, D, Γ ) donde: • C es una RdP ordinaria • D (D ={di}; i = l,...,n) es un conjunto de retardos (o duraciones) asociados a transiciones • Γ un conjunto ordenado cuyos elementos ( tj, τ k ) ∈ ( T × R + ) representan el instante de disparo de una transición. Una RdP es un caso especial de una RPTT donde cada di = 0. En esta convención el retardo dj ligado a una transición tj indica la duración del disparo de ésta. Además el árbol de alcanzabilidad de una red de Petri plaza-transición es un conjunto del árbol de alcanzabilidad de una RPT, porque en el mejor de los casos todas las transiciones de la RPT son disparadas. _____________________________________________________________________ 18 Capítulo 2. Marco Teórico 2.4. ESTABILIDAD, CONTROL Y REGULACIÓN En ésta sección se presenta el problema de estabilidad y regulación de sistemas de eventos discretos modelados con redes de Petri usando la teoría de funciones de Lyapunov. Primero se darán algunas caracterizaciones matemáticas que garanticen la estabilidad y regulación [16] Proposición. Sea PN una red de Petri. PN es uniforme y prácticamente estable si existe un m vector estrictamente positivo φ tal que ∆v = u T Aφ ≤ 0 (2.24) Para su demostración ver [16] Lema. Suponiendo que la ecuación (2.24) se cumple, entonces ∆v = u T Aφ ≤ 0 ⇔ Aφ ≤ 0 (2.25) Definición. Sea PN una red de Petri. PN puede estabilizarse si existe una secuencia de disparo de transición con un vector de conteo de transición u tal que la siguiente ecuación se satisface ∆v = AT u ≤ 0 (2.26) Comentario 1. Es importante mencionar que escogiendo un vector u particular, que satisfaga (2.26) el árbol de alcanzabilidad se restringe a las marcas finitas de u. Ésta técnica puede utilizarse para obtener algunos vectores u de regulación y quitar algunos eventos no deseados. _____________________________________________________________________ 19 Capítulo 2. Marco Teórico CAPÍTULO 3 METODOLOGÍA 3.1. INTRODUCCIÓN El laboratorio virtual tiene como primer experimento un sistema posicionador de piezas neumático. El problema es tradicionalmente resuelto utilizando herramientas como Grafcet o diagramas de estado que permiten llevar un seguimiento secuencial del proceso. En este capítulo se describe la metodología para modelar y simular sistemas de manufactura utilizando la teoría de redes de Petri descrita en el capítulo dos. 3.2. DIAGRAMA DE FLUJO DE LA METODOLOGÍA El proceso metodológico puede resumirse en el siguiente diagrama de flujo. Figura 3.1. Diagrama de flujo. ______________________________________________________________________ 20 Capítulo 3. Metodología 3.3. METODOLOGÍA Con el fin de facilitar la comprensión del modelado con redes de Petri, se partirá de un ejemplo sencillo en el cual se sigue la metodología propuesta en el diagrama de flujo para así obtener la RdP a partir de un problema físico. 3.3.1. Definición del problema Consiste en explicar la forma en que evoluciona el sistema elegido, es decir, mencionar bajo que condiciones se acciona cada actuador para ejecutar un ciclo de operación completo. Es aconsejable asignarle a cada actuador, sensor, etc. un nombre o sigla para identificarlo. A continuación se define el problema para el ejemplo auxiliar (en adelante se hará referencia a éste como ejemplo 3.1) El sistema está compuesto de dos vagones que se desplazan sobre vías independientes por la acción de las señales Di (Movimiento a la derecha) e Ii (Movimiento a la izquierda) con i=1,2. Las posiciones de los extremos se detectan por los sensores a, b, c y d. Un botón M sirve para iniciar la operación del sistema desde su posición inicial (vagones en reposo a la izquierda): cuando se oprime ambos vagones parten hacia la derecha; al llegar éstos a su extremo derecho deben regresar y detenerse al alcanzar la posición inicial. Solo se puede comenzar un nuevo ciclo cuando los dos vagones estén en la posición inicial. Las velocidades de los vagones pueden ser cualesquiera. 3.3.2. Diagrama técnico Una vez que se ha planteado el problema se puede obtener el diagrama técnico del sistema. En el diagrama técnico se realiza una representación grafica del proceso que permita comprender de manera visual el funcionamiento dado en la definición del problema. Es aconsejable dibujar los actuadores, sensores y acciones e identificarlos con el nombre o sigla previamente asignada. El diagrama técnico del ejemplo 3.1 se ilustra en la figura 3.2. ______________________________________________________________________ 21 Capítulo 3. Metodología Figura 3.2. Diagrama técnico del sistema. 3.3.3. Diagrama de estados El diagrama de estados se obtiene dibujando un círculo por cada estado y un arco para cada transición. Los estados representan acciones y las transiciones representan condiciones. Dentro de cada círculo se escribe un número que identifica al estado, el estado inicial se indica con el número más pequeño. Las acciones de los estados se escriben fuera del circulo utilizando la nomenclatura del diagrama técnico y las condiciones de las transiciones se escriben al lado de la flecha de los arcos. Dibujar el diagrama de estados en este caso es opcional pues ocurren múltiples ocurrencias y solo se incluye como parámetro de comparación entre el diagrama de estados y la red de Petri. La figura 3.3. muestra el diagrama de estados reducido del ejemplo 3.1. En el diagrama de estados simplificado se obtienen nueve estados y veintiún transiciones. Si se utiliza una tabla de estados se tendrían que considerar 25 posibles combinaciones de los sensores. La figura 3.3. Diagrama de estados del sistema. ______________________________________________________________________ 22 Capítulo 3. Metodología 3.3.4. Reglas de ejecución Los sistemas de producción fueron desarrollados por Newell y Simon para su modelo de cognición humana [19]. Los sistemas de producción son esquemas de representación modular del conocimiento, encontrados principalmente en aplicaciones de inteligencia artificial. La idea básica de estos sistemas está en que el conocimiento se presenta en forma de reglas de producción (reglas de ejecución) con el formato de pares condición-acción: “ Si tal condición (o premisa, o antecedente) se cumple, Entonces alguna acción ocurre (o resultado, o colusión, o consecuencia). Por ejemplo: Si la luz del semáforo está en verde Y el auto de adelante avanza Entonces avanza tu también. Para el ejemplo 3.1. las reglas de ejecución son las siguientes: 1. Si ambos vagones están detenidos en la izquierda (a,c implica sincronización) Y se presiona el botón M Entonces mover los vagones a la derecha (D1,D2) 2. Si el vagón 1 llega a la derecha (b) Entonces mover vagón 1 a la izquierda (I1) 3. Si el vagón 2 llega a la derecha (d) Entonces mover vagón 2 a la izquierda (I2) 4. Si el vagón 1 llega a la izquierda (a) Entones detenerse 5. Si el vagón 2 llega a la izquierda (c) Entonces detenerse ______________________________________________________________________ 23 Capítulo 3. Metodología 3.3.5. Definición de plazas y transiciones Una plaza es un lugar físico dentro del sistema, (i.e. una banda transportadora, las vías de un montacargas, una pila de piezas, el montacargas moviéndose sobre un tramo determinado – en cuyo caso la plaza seria el tramo de vías sobre el que se mueve -, etc.) las transiciones son eventos o resultados de esos eventos (acciones) que ejecuta el sistema (i.e. un botón oprimido, el efecto de presionar dicho botón –moverse, detenerse-, etc.). Formalmente las redes de Petri ordinarias o plaza-transición se definen en la ecuación (2.1). En el mismo apartado 3.2.1. se ofrecen definiciones importantes sobre la interacción entre plazas y las transiciones mediante funciones de entrada y salida. Para el ejemplo 3.1 es necesario definir las plazas y transiciones de la red de Petri. Observar que en este caso las plazas corresponden a las posiciones de los vagones y las transiciones a eventos que permiten la evolución de las marcas en las plazas. • Definición de plazas P1: Vagón 1 en reposo. P2: Vagón 1 moviéndose a la derecha. P3: Vagón 1 moviéndose a la izquierda. P4: Vagón 2 en reposo P5: Vagón 2 moviéndose a la derecha. P6: Vagón 2 moviéndose a la izquierda. • Definición de transiciones T1: Botón M presionado T2: Detector b oprimido T3: Detector a oprimido T4: Detector d oprimido T5: Detector c oprimido 3.3.6. Asignación de marcas Las marcas son puntitos que se colocan dentro las plazas y corresponden a los recursos del sistema (i.e. en un montacargas sobre las vías, la plaza son las vías y el montacargas es la ______________________________________________________________________ 24 Capítulo 3. Metodología marca -recurso-, es decir, un puntito dentro de la plaza vías). El marcaje es la asignación de marcas a las plazas, formalmente definido por (2.11). En este momento se conocen las plazas y las transiciones del ejemplo 3.1, también se les ha dado un significado físico (basándose en las reglas de ejecución), pero falta asignar las marcas. Físicamente existen dos vagones, estos son los recursos del sistema y en redes de Petri cada uno equivale a una marca colocada originalmente en las plazas P1 y P4 respectivamente. Entonces el marcaje inicial es µ 0 = (1,0,0,1,0,0) 3.3.7. Gráfica de la red de Petri Una gráfica de RdP es una representación de una estructura de una RdP como una multigráfica dirigida bipartita, definida en (2.8). Para dibujarla se toman las siguientes consideraciones: Un círculo representa una plaza, una línea una transición, una flecha un arco. Las plazas contienen a las marcas que se dibujan solamente en la posición inicial, los arcos van de plazas a transiciones, o de transiciones a plazas, pero nunca de plazas a plazas o transiciones a transiciones. Ahora es posible dibujar la gráfica de la red de Petri para el ejemplo 3.1. Primero se dibujan seis círculos (correspondientes a cada plaza) y cinco líneas (aquí se dibujaron verticales pero pueden estar en cualquier orientación). Los arcos se dibujan siguiendo el flujo del problema, por ejemplo: la transición uno modela el problema de sincronización (ambos vagones -marcas- deben estar en reposo –plazas uno y cuatro- para que dicha transición se habilite, T1 se dispara si esta habilitada y se presiona el botón M ), las demás transiciones se habilitan cuando su respectiva marca esta en la plaza de entrada y se disparan cuando se satisface la condición de sensado. Figura 3.4. Gráfica de la red de Petri del sistema. ______________________________________________________________________ 25 Capítulo 3. Metodología 3.3.8. Análisis de estabilidad Se comprueba mediante el análisis de estabilidad práctica para sistemas de eventos discretos modelados con redes de Petri usando la teoría de funciones de Lyapunov (ver sección 2.4). Éste tipo de análisis como su nombre lo indica es práctico y entre los aspectos más importantes que revisa están: que no se creen ni destruyan recursos (marcas), que los estados sean alcanzables, que el sistema no sufra bloqueo y para determinar los vectores de disparo f (σ ) válidos. Para el ejemplo 3.1 primero se obtiene la matriz de incidencias utilizando la ecuación (2.22), A = A+ − A− . Después se tiene que satisfacer la implicación de la ecuación (2.25) Aφ ≤ 0 , donde φ es un vector estrictamente positivo. 1 0 −1 1 0 0 − 1 1 0 −1 1 1 0 0 0 0 1 Aφ = 1 0 −1 0 0 0 = 0 1 − 0 0 0 0 1 1 1 0 0 0 0 1 0 − 1 0 1 Como la ecuación (2.25) se satisface, es decir Aφ = 0 , entonces el sistema es uniforme y prácticamente estable. 3.3.9. Control y regulación Mediante el análisis de control y regulación se pueden determinar los vectores de disparo f (σ ) validos en el sistema. Además se puede observar que transiciones se disparan y cuales no. Para realizar el análisis de control y regulación se debe satisfacer la ecuación (2.26) AT u ≤ 0 , donde u es un vector perteneciente al espacio nulo de la matriz AT. ______________________________________________________________________ 26 Capítulo 3. Metodología Calculando u para el ejemplo 3.1 se tiene que: k k k u = k k k El vector u resultante satisface (2.26), es decir AT u = 0 y significa que el sistema es completamente controlable y regulable, físicamente quiere decir que todas las transiciones pueden ser disparadas k veces. Desde el punto de vista de vector de disparo se tiene que f (σ ) = {k , k , k , k , k , k} donde σ = {t1 , t 2 , t3 , t 4 , t5 , t 6 } . 3.3.10. Simulación Para verificar que la red de Petri sea viva se pueden utilizar simuladores de redes de Petri, estos se encuentran en Internet. Este ejemplo fue simulado satisfactoriamente utilizando HPSIM V1.1 [20]. Como no sufrió bloqueo el sistema es vivo. 3.3.11. Redes de Petri temporizadas Un caso particular de las redes de Petri son las RPT, dichas redes fueron descritas en el capítulo dos. A continuación se extiende el ejemplo 3.1 al caso de RPTT. Primero se obtiene el árbol de alcanzabilidad del sistema como apoyo (ver figura 3.5). Figura 3.5. Árbol de alcanzabilidad. ______________________________________________________________________ 27 Capítulo 3. Metodología Ahora, si se toma el vector d = {0,4,4,5,5} se tiene la sucesión de disparo resaltada en el árbol σ = {t1 , t 2 , t 4 , t3 , t5 } . Se supondrá que τ 1 = 0 , es decir, la transición t1 se dispara en cuanto se presione M. Para comprender la evolución del marcaje se dibuja un diagrama de tiempos. Figura 3.6. Diagrama de tiempos. Lo que genera el vector ϕ = {(t1 ,0), (t 2 ,0), (t 4 ,0), (t3 ,4), (t5 ,5)} ______________________________________________________________________ 28 Capítulo 3. Metodología CAPÍTULO 4 PRUEBAS Y RESULTADOS 4.1. PRUEBAS Entre las pruebas aplicadas al sistema se encuentran las siguientes: • Validación del modelo de RdP del sistema. • Tiempo de respuesta del programa WinCC. • Tiempos de acceso dentro del Campus. • Tiempos de acceso fuera del Campus. • Pruebas del Laboratorio Virtual en equipos de trabajo. A continuación se detalla cada una de las pruebas que fueron realizadas diariamente a lo largo de una semana. 4.1.1. Validación del modelo de RdP del Sistema. El modelo se puede verificar simulándolo y comprobando sus propiedades. La simulación ya fue descrita en la sección 3.5.8. y se comprobó que el sistema era vivo. Estabilidad y regulación se comprobaron en 3.5.9 y 3.5.10. 4.1.2. Tiempo de respuesta del programa WinCC. El programa WinCC tiene diferentes tiempos de respuesta para entrada y salida de datos y estos se resumen en la tabla 4.1. Operación Salida de datos Entrada de datos Tiempo En tiempo real 1.5 seg Tabla 4.1. Tiempo de respuesta de WinCC. 4.1.3. Tiempos de acceso dentro del Campus. En la tabla 4.2. se resumen los tiempos de acceso al servidor de VNC y el retardo de la pantalla mostrada con respecto a los cambios reales de acuerdo a la hora del día. _____________________________________________________________________ 29 Capítulo 4. Pruebas y resultados Hora Tiempo (seg) Retardo (seg) 8:00 20 2 9:00 23 2 10:00 20 2 11:00 30 3 12:00 50 3 13:00 54 3 14:00 52 3 15:00 47 3 16:00 50 3 17:00 49 3 18:00 30 2 19:00 20 2 20:00 20 2 Tabla 4.2. Tiempo de acceso al servidor de VNC. En la tabla 4.3. se resumen los tiempos de acceso y el retardo para recibir la imagen de la cámara de red de acuerdo a la hora del día. Hora Tiempo (seg) Retardo (seg) 8:00 3 0.5 9:00 3 0.5 10:00 4 1 11:00 4 1 12:00 7 2 13:00 6 2 14:00 8 2 15:00 8 3 16:00 7 3 17:00 8 2 _____________________________________________________________________ 30 Capítulo 4. Pruebas y resultados 18:00 4 2 19:00 4 1 20:00 3 1 Tabla 4.3. Tiempo de acceso a la cámara de red. 4.1.4. Tiempos de acceso fuera del Campus. En la tabla 4.4. se resumen los tiempos de acceso al servidor de VNC y el retardo de la pantalla mostrada con respecto a los cambios reales de acuerdo al lugar desde donde se accede. Lugar Tiempo (seg) Retardo (seg) Toluca 20-30 3-6 Alemania 50-90 3-10 Distrito Federal 30-40 3-8 Tabla 4.4. Tiempo de acceso al servidor de VNC. En la tabla 4.5. se resumen los tiempos de acceso a la cámara de red y el retardo para recibir la imagen de acuerdo al lugar desde donde se accede. Lugar Tiempo (seg) Retardo (seg) Toluca 5-10 3-10 Alemania 10-20 5-20 Distrito Federal 5-10 5-15 Tabla 4.5. Tiempo de acceso al servidor de VNC. 4.1.5. Pruebas del Laboratorio Virtual en equipos de trabajo. La metodología ofrecida para que el estudiante desarrolle el experimento propuesto en esta tesis es la siguiente: 1. Organizar grupos de trabajo constituidos por estudiantes del ITESM Campus Toluca y estudiantes de la Universidad de Ciencias Aplicadas de Esslingen. Se propone que los _____________________________________________________________________ 31 Capítulo 4. Pruebas y resultados equipos de trabajo cuenten como máximo con cuatro integrantes de los cuales dos serán mexicanos y dos serán alemanes. 2. Una vez organizados los grupos de trabajo se asignarán las tareas a desarrollar por cada uno de ellos, entre las posibles tareas están: • Modelar y validar el sistema de manufactura utilizando la herramienta apropiada según sea el objetivo de la práctica. 3. • Implementar el modelo obtenido en un PLC utilizando para ello el programa VNC. • Desarrollar la interfase gráfica correspondiente utilizando WinCC. Ya que se han cumplido las tareas anteriormente propuestas es tiempo de realizar pruebas para lo cual la coordinación entre ambos bandos es imprescindible. 4. La comunicación entre ambos bandos se realiza con herramientas comerciales como Yahoo Messenger o correo electrónico. Se probó la metodología con un grupo de estudiantes tanto mexicanos como alemanes obteniendo resultados satisfactorios en cuanto a tiempos de acceso, organización de grupo, manejo de liderazgo y realización en el tiempo propuesto de las tareas asignadas para cada estudiante. El sistema fue probado dentro y fuera del Campus. Tanto estudiantes como personal académico del ITESM Campus Toluca y la Universidad de Ciencias Aplicadas de Esslingen pudieron firmarse en el servidor del proyecto, enviar los parámetros requeridos, correr, simular y controlar el experimento de manera satisfactoria. La limitación del proyecto es que actualmente solo se cuenta con un experimento y los equipos de trabajo tienen que esperar su turno para la sesión asignada, que además esta limitada en tiempo. Lo anterior no seria tan critico de no presentarse los retardos por carga en la red que ocasionan tiempos de acceso muy lentos. _____________________________________________________________________ 32 Capítulo 4. Pruebas y resultados Otra limitante encontrada fue en cuanto a que los horarios de trabajo entre ambas universidades están desfasados entre si. Entonces el intervalo de tiempo real entre universidades es de seis horas y se muestra en la tabla 4.6. Inicio común de actividades Fín común de actividades (hora local) (hora local) ITESM 7:00 A.M. 12:00 P.M. FHTE 12:00 P.M 18:00 P.M. Tabla 4.6. Horario de actividades. La comunicación entre estudiantes de ambas universidades se dio exitosamente utilizando herramientas comerciales como correo electrónico o el mensajero de Yahoo. No es necesario desarrollar herramientas propias para este tipo de comunicación pues las antes mencionadas funcionan adecuada y eficazmente para intercambio de mensajes, imágenes y archivos. 4.2. RESULTADOS 4.2.1. Experimento virtual, la forma tradicional El experimento virtual puede resolverse utilizando Grafcet si se considera como un sistema secuencial en el cual solo ocurre un evento a la vez. En las siguientes líneas se ilustra el proceso de modelado con Grafcet. 4.2.1.1. Definición del problema Un disco metálico es movido a la derecha sobre una banda transportadora, al final del recorrido cae por una rampa donde es empujado por un cilindro horizontal (posicionador), cuando el posicionador está completamente extendido un cilindro vertical toma la pieza con ayuda de una ventosa y se mueve a la izquierda, en donde regresa el disco a la banda transportadora. Solo se utiliza un disco y la banda puede permanecer siempre prendida. _____________________________________________________________________ 33 Capítulo 4. Pruebas y resultados 4.2.1.2. Diagrama técnico Figura 4.1. Diagrama técnico del sistema 4.2.1.3. Grafcet El Grafcet del sistema se muestra en la figura 4.2. Se considera que la banda transportadora siempre está prendida y solamente se utiliza un disco. Figura 4.2. Grafcet. La obtención Grafcet concluye el proceso de modelado para el sistema tradicional, y se implementa utilizando máquinas de estado. La forma tradicional de solución y modelado no implica múltiples ocurrencias, si se dibujara la red de Petri quedaría muy similar al diagrama de estados (o al Grafcet), por está razón no se utiliza el enfoque de RdP. _____________________________________________________________________ 34 Capítulo 4. Pruebas y resultados 4.2.2. Modelado del experimento virtual utilizando RdP En el apartado anterior se resolvió el problema del Laboratorio Virtual utilizando Grafcet de manera sencilla, ¿porqué utilizar entonces redes de Petri? La respuesta es por eficiencia, el posicionador empuja la pieza hasta que el portador regresó a la derecha y esto es lento. Realizar varios eventos al mismo tiempo reduce tiempo y optimiza los recursos, es por ello que se plantea un modelo con redes de Petri. A continuación se resuelve el experimento virtual utilizando la metodología propuesta para redes de Petri. 4.2.2.1. Definición del problema Una banda transportadora mueve cilindros metálicos (piezas) de izquierda a derecha, al llegar al final de dicha banda caen por una rampa. Desde allí son empujados pieza por pieza por un cilindro neumático (posicionador) a la posición de home. El portador toma una pieza usando para ello una ventosa y la coloca en la posición final como efecto del desplazamiento a la izquierda del cilindro de accionamiento lineal. La pieza cae deslizándose por el borde de la estructura en la banda transportadora. El ciclo se repite mientras el sistema este encendido y en modo automático. El sistema es capaz de manejar los siguientes procesos de manera simultanea: • Portador moviéndose a la izquierda o a la derecha y extender posicionador. • Portador moviéndose a la izquierda o a la derecha y apagar o encender la banda transportadora. 4.2.2.2. Diagrama técnico Figura 4.3. Vistas frontal y derecha del sistema neumático. _____________________________________________________________________ 35 Capítulo 4. Pruebas y resultados 4.2.2.3. Diagrama de estados Al igual que en el ejemplo del apartado 3.3. se tiene múltiple ocurrencia de eventos que justifican el uso de redes de Petri, sin embrago se presenta el diagrama de estados sólo como parámetro de comparación. Note que el diagrama no esta completo pues implica más estados y transiciones pero basta para ilustrar que no es la herramienta de modelado más sencilla. Figura 4.4. Diagrama de estados del sistema 4.2.2.4. Reglas de ejecución Una vez que ha sido definido el problema se puede rescribir en forma de sentencias. Para conseguir los anterior hay que dictar las reglas de ejecución del sistema y son las siguientes: 1.a. Si hay pieza en la rampa 1.b. Si no hay pieza en la rampa O el posicionador no esta retraído Y el posicionador está retraído Entonces apagar la banda Entonces prender la banda 2. Si hay pieza en la rampa Y no hay pieza en home Y el portador está arriba Entonces empujar la pieza _____________________________________________________________________ 36 Capítulo 4. Pruebas y resultados 3. Si hay pieza en home Y el portador está en la derecha Y el portador está arriba Y el sensor de vació está en bajo Entonces bajar por la pieza y encender el vació 4. Si hay pieza en home Y el portador no está arriba Y el sensor de vació está en alto Entonces subir con la pieza 5. Si el sensor de vació está en alto Y el portador esta en la derecha Y el portador esta arriba Entonces mover a la izquierda 6. Si el portador esta en la derecha Y el portador está arriba Y el sensor de vació esta en alto Entonces soltar la pieza 7. Si el portador está en la izquierda Y el portador está arriba Y el sensor de vació está en bajo Entonces mover a la derecha 4.2.2.5. Definición de plazas y transiciones Existen nueve plazas en el modelo y son: P1: Banda transportadora P2: Rampa P3: Home _____________________________________________________________________ 37 Capítulo 4. Pruebas y resultados P4: Portador en la derecha P5: Portador moviéndose a la izquierda P6: Portador en la izquierda P7: Portador moviéndose a la derecha P8: Error debido a un retardo al subir o bajar el portador o retardo al mover el portador a la la izquierda P9: Error debido a un retardo en la presencia de pieza o retardo al mover el portador a la derecha. Las once transiciones de éste modelo son las siguientes: T1: Encender o apagar la banda transportadora. T2: El posicionador empuja la pieza. T3: El portador baja y sujeta la pieza. T4: El portador sube la pieza. T5: El portador se mueve a la izquierda. T6: El portador suelta la pieza y se mueve a la derecha. T7: Esta transición es temporizada, el sistema se detiene. T8: Esta transición es temporizada, el sistema se detiene. T9: Reestablece al sistema después de un error. T10: Esta transición es temporizada, el sistema se detiene. T11: Reestablece al sistema después de un error. 4.2.2.6. Asignación de marcas Ya que han sido definidas las plazas hay que asignar las marcas de dichas plazas. Los recursos con los que cuenta el sistema son las piezas y el portador. Existen seis piezas que originalmente están en P1 (banda) y un portador que inicialmente se encuentra ubicado a la derecha (P7). Lo anterior indica que la marcación inicial es µ 0 = (6,0,0,0,0,0,1,0,0) . _____________________________________________________________________ 38 Capítulo 4. Pruebas y resultados 4.2.2.7. Gráfica de la red de Petri La gráfica de la red de Petri que considera todos los incisos anteriores se muestra en la figura 4.5. Figura 4.5. Gráfica de la RdP del sistema. 4.2.2.8. Análisis de estabilidad Primero se obtiene la matriz de incidencias utilizando la ecuación (2.22), A = A+ − A− . − 1 0 0 0 0 A = 1 0 0 1 0 0 1 −1 0 0 0 0 0 0 0 0 1 −1 0 0 0 0 0 0 0 0 2 − 2 0 0 − 2 0 0 0 0 0 2 −2 0 0 −2 0 0 0 0 0 2 −2 0 0 0 0 0 −1 0 0 1 0 0 1 0 0 0 0 0 0 2 2 − 2 0 0 0 0 0 0 0 0 0 0 −1 1 0 0 1 − 1 0 0 0 0 0 0 0 0 0 Se propone un vector φ positivo del tamaño del número de plazas: φ T = [1,1,1,1,1,1,1,1,1] Para que el sistema sea estable se debe de cumplir que la implicación de la ecuación (2.25) Aφ ≤ 0 se satisfaga. _____________________________________________________________________ 39 Capítulo 4. Pruebas y resultados − 1 0 0 0 0 Aφ = 1 0 0 1 0 0 1 −1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 −1 0 0 2 −2 0 0 2 −2 0 0 2 −1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 −2 0 0 0 0 −2 0 −2 0 0 0 1 0 0 1 0 2 2 −2 0 0 0 0 0 0 0 0 0 0 −1 1 0 0 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 = 0 0 1 0 0 1 0 0 1 0 1 1 0 − 1 0 Como la ecuación (2.25) se satisface, es decir Aφ = 0 , entonces el sistema es considerado como uniforme y prácticamente estable. 4.2.2.9. Control y regulación Para realizar el análisis de control y regulación se debe satisfacer la ecuación (2.26) AT u ≤ 0 , donde u es un vector perteneciente al espacio nulo de la matriz AT. 0 0 1 0 0 1 0 0 − 1 0 0 1 1 0 0 0 0 0 0 0 0 0 0 −1 −1 0 0 0 0 0 0 0 0 0 0 2 2 0 0 2 0 0 0 0 − − AT = 0 0 0 2 −2 0 0 −2 0 0 0 0 2 −2 0 0 0 0 0 0 0 0 0 0 −1 0 0 1 0 0 1 −1 1 0 0 0 2 2 −2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 − 1 Entre los vectores de disparo de sucesión de transiciones válidos están: u = 1 1 1 1 1 1 0 0 0 0 0 , 0 0 0 0 0 0 0 0 0 1 1 , 1 1 1 0 0 0 1 0 1 0 0 , 1 1 1 1 0 0 0 1 1 0 0 , 1 1 1 1 1 1 0 0 0 1 1 _____________________________________________________________________ 40 Capítulo 4. Pruebas y resultados Dado que el producto AT u = 0 , el sistema es controlable y ajustable. La interpretación física de los vectores u válidos se ofrece a continuación: • El vector u1T = [1,1,1,1,1,1,0,0,0,0,0] corresponde a un ciclo completo sin errores, es decir, la banda se enciende hasta que llegue la pieza a la rampa, es empujada por el posicionador a home, el portador baja por ella y la transporta a la izquierda, allí la pieza cae en la banda y el portador regresa a la derecha ( σ = {t1 , t 2 , t3 , t 4 , t5 , t 6 } ). • El vector u 2T = [0,0,0,0,0,0,0,0,0,1,1] es un ciclo con error de temporización por ausencia de discos: cuando el portador está en la derecha (suponiendo condiciones iniciales) transcurre un intervalo de tiempo de espera de disco, si éste ha transcurrido el sistema se detiene y se enciende la lámpara de error ( σ = {t10 , t11} ). • El vector u3T = [1,1,1,0,0,0,1,0,1,0,0] es un ciclo de error de temporización por atascamiento de portador: cuando el portador esta tomando la pieza puede atascarse, un temporizador revisa el tiempo que toma ejecutar dicha acción y si es superado se detiene el sistema y se enciende la lámpara de error ( σ = {t1 , t 2 , t3 , t 7 , t9 } ). • El vector u 4T = [1,1,1,1,0,0,0,1,1,0,0] es un ciclo de error de temporización por atascamiento del cilindro de accionamiento lineal a la izquierda: se produce cuando el portador esta transportando la pieza a la izquierda y el temporizador asociado es rebasado, entonces se detiene el sistema y se enciende la lámpara de error ( σ = {t1 , t 2 , t3 , t 4 , t8 , t9 } ). • El vector u5T = [1,1,1,1,1,1,0,0,0,1,1] es un ciclo de error de temporización por atascamiento del cilindro de accionamiento lineal a la derecha: se produce cuando el portador esta moviéndose a la derecha y el temporizador asociado se supera, entonces se detiene el sistema y se enciende la lámpara de error ( σ = {t1 , t 2 , t3 , t 4 , t5 , t5 , t10 , t11} ). _____________________________________________________________________ 41 Capítulo 4. Pruebas y resultados 4.2.2.10. Simulación La red de Petri de la figura 4.5 fue simulada satisfactoriamente en el programa HPSIM V1.1. El sistema no sufrió bloqueo por lo que la red de Petri es viva. Se desarrolló además un simulador específico para este experimento. El simulador gráfico desarrollado permite que el usuario introduzca tanto parámetros como acciones y transiciones para cualesquiera de los dos modelos (Grafcet o RdP), pueda variar el tiempo de las transiciones temporizadas y el número de discos. Una pantalla presenta una animación gráfica del proceso y otras dos pantallas ilustran el avance en ambos modelos. Además se puede realizar la animación en modo demostración para dar una idea al estudiante de lo que se desea obtener. La figura 4.6 muestra las diferentes opciones del simulador grafico. Dicho simulador puede ser descargado desde la página web del proyecto: http://tecweb.tol.itesm.mx/al00960636/ Figura 4.6a. Página de simulación. Figura 4.6b. Página de Grafcet. _____________________________________________________________________ 42 Capítulo 4. Pruebas y resultados Figura 4.6c. Página de red de Petri. 4.2.3. Implementación Ya se tiene el modelo en RdP y su interpretación física. Con toda esa información es posible escribir el programa para el PLC así como realizar la interfase gráfica con WinCC. El primer paso para implementar consiste en elegir adecuadamente el hardware y software. Dicho proceso se describe a continuación. 4.2.3.1. Elección de Hardware y Software 1. Elección del hardware. Existen tres tipos de hardware a considerar: (a) el sistema electro-neumático o electromecánico con el que se va a trabajar , (b) el PLC para operar el sistema elegido y (c) el procesador de comunicaciones del PLC. a) Se escogió un sistema electro-neumático que consiste de tres cilindros y una banda transportadora. La función del dispositivo es la de tomar piezas metálicas desde una posición inicial y llevarlas a una posición final. Dicho sistema se eligió porque es simple desde el punto de vista académico y lo suficientemente completo para formar en el estudiante las bases que le permitan trabajar con equipo más complejo durante el desempeño de su actividad profesional. b) Se utilizan PLCs de la serie 300 de SIEMENS principalmente por su robustez y aplicabilidad en la industria. _____________________________________________________________________ 43 Capítulo 4. Pruebas y resultados c) El procesador de comunicaciones originalmente elegido fue el CP 343-1 [24]. Con este procesador se puede programar al PLC desde una posición remota por medio de TCP/IP, sin embargo su compra se pospuso debido al alto costo del mismo. 2. Elección del software. Aquí hay tres aspectos a considerar y cada uno de ellos requiere software especifico. a. Programación del PLC: Se utilizó STEP 7 por ser el software que SIEMENS ofrece para programar sus PLCs de las series 300 y 400. b. Visualización y Control: La visualización y control se puede realizar de diferentes maneras, utilizando Applets de java, ProTool o WinCC (todos ellos de SIEMENS) o desarrollar una interfase propia. Con los Applets únicamente se consigue visualizar indicadores y controlar por botones simples. ProTool [22] pude manejar visualización y control de manera sencilla pero no sale a Internet. WinCC es muy poderoso en el aspecto de que permite manejar gráficos, control de procesos, generación de reportes, manipulación de bases de datos y acceso a Internet a través de WebNavigator [23]. Finalmente, la razón por la cual es muy difícil desarrollar una interfase propia es que el protocolo de comunicación que SIEMENS utiliza con sus PLCs no esta disponible al consumidor. Se eligió WinCC por ser el software que mayores ventajas ofrece sin embargo no se utilizó la opción de salir a Internet mediante WebNavigator por su alto precio. c. Acceso remoto: Como se vio en la elección de hardware y software es necesario tener acceso remoto tanto al PLC como al programa de visualización. Este problema se resolvió utilizando el software llamado VNC con el cual se puede _____________________________________________________________________ 44 Capítulo 4. Pruebas y resultados acceder a la computadora (servidor) en donde están instalados los programas STEP 7 y WinCC. Para conectarse al servidor es necesario ingresar un password, pueden firmarse hasta tres usuarios simultáneamente (configurable por el administrador). Al conectarse el cliente puede utilizar los programas del servidor como si estuviesen en su propia computadora. 4.2.3.2. Modos de operación El panel de operación que se muestra en la figura 4.7 se usa para manejar el sistema entre los modos de operación que a continuación se muestran: • Manual • Inicio • Automático Figura 4.7. Panel de operación. a) Modo de Inicio Antes de iniciar cualquier ciclo automático, el sistema debe comenzar en la posición inicial. Dicha posición implica que el portador se encuentre a la derecha y arriba, la banda transportadora apagada, el posicionador retraido y las plazas rampa y home vacías. _____________________________________________________________________ 45 Capítulo 4. Pruebas y resultados El ciclo de inicio se consigue colocando la llave de modos en “Inicio” y presionando el botón “Comenzar”. Este ciclo termina cuando se cumplen todas las condiciones mencionadas en el párrafo anterior. El ciclo de inicio se detiene si: • El botón “Parar” se presiona; el ciclo de inició continua si se presiona nuevamente el botón “Comenzar”. • Si se detecta un error. b) Modo manual Solamente disponible a través de panel virtual de WinCC. Para iniciarlo la llave de modos debe estar en “Manual”. Cuando la llave de modos cambia de posición todas las operaciones del modo se reinician. En este modo cada actuador puede ser activado al presionar el botón apropiado. Cada actuador esta deshabilitado en caso de que se desee operar de manera incorrecta (e.g. el portador no puede moverse de derecha a izquierda cuando esta abajo). c) Modo automático Se inicia cuando la llave de modos está en “Automático” y se presiona el botón “Comenzar”. Es condición que se haya ejecutado anteriormente un ciclo de inicio. Cuando la llave de modos cambia de posición todas las operaciones del modo se reinician. El modo automático se detiene si: • El botón “Parar” se presiona; el ciclo automático continua si se presiona nuevamente el botón “Comenzar”. • Si se genera un error. 4.2.3.3. Manipulación de los modos de operación Como se mencionó anteriormente no se puede pasar de un modo a otro con completa libertad. Existen restricciones y básicamente consisten en arrancar el sistema en modo _____________________________________________________________________ 46 Capítulo 4. Pruebas y resultados inicio para poder pasar a automático. El modo manual no tiene restricciones pero el paso de manual a automático sí. Para facilitar la comprensión en la forma de manipular los diferentes modos de operación se expone el diagrama de estados de la figura 4.8: Figura 4.8. Diagrama de estados de los modos. 4.2.3.4. Organización del programa El programa se organiza como se muestra en el esquema de la figura 4.9 Figura 4.9. Esquema del programa. Se observa que la tarea de control y supervisión se divide en sub-funciones [21]. FC1: Control de los modos de operación FC2: Control de modo manual FC3: Control de modo automático FC4: Control de modo de inicio _____________________________________________________________________ 47 Capítulo 4. Pruebas y resultados FC5: Control de los actuadores FC6: Despliegue de lámparas de estado FC7: Supervisión y corrección de errores 4.2.3.5. Descripción de las funciones 1. FC1: Control de los modos de operación Se encarga de controlar los tres diferentes modos de operación - Lee la llave de modos - Pone las variables de memoria apropiadas - Llama a las funciones correspondientes 2. FC2: Control de modo manual Se encarga de controlar el modo manual - Lee las variables de memoria del panel virtual - Controla las variables de memoria de los actuadores 3. FC3: Control de modo automático Controla el modo automático - Lee los interruptores “comenzar” y “parar” - Lee las diferentes entradas de los sensores - controla las variables de memoria de los actuadores 4. FC4: Control de modo de inicio Controla el modo de inicio - Lee los interruptores “comenzar” y “parar” - Lee las diferentes entradas de los sensores - controla las variables de memoria de los actuadores 5. FC5: Control de los actuadores Controla los actuadores - Lee las variables de memoria de los actuadores _____________________________________________________________________ 48 Capítulo 4. Pruebas y resultados - Lee las diferentes entradas de los sensores - controla la salida de los actuadores 6. FC6: Despliegue de lámparas de estado Controla las lámparas de estado (es responsable de colectar información del proceso) - Lee las variables de memoria de los actuadores - Lee las variables de memoria de los modos - Lee las diferentes entradas de los sensores - controla la salida de las lámparas 7. FC7: Supervisión y corrección de errores Controla el proceso en caso de error - Se usa para ejecutar alguna acción correctiva en caso de error. 4.2.3.6. Asignación de entradas y salidas • Sensores del sistema Símbolo Función Entrada B1.0 Portador en la derecha I0.0 B1.1 Portador en la izquierda I0.1 B2 Pieza en rampa I0.2 B3 Pieza en home I0.3 B4 Parte en la ventosa I0.4 B5 Portador arriba I0.5 B6 Posicionador retraído I0.6 • Salida Actuadores del sistema Símbolo Función Y1.0 Mover portador a la derecha Entrada Salida Q4.0 _____________________________________________________________________ 49 Capítulo 4. Pruebas y resultados Y1.1 Mover portador a la izquierda Q4.1 Y2 Extender posicionador Q4.2 Y3 Encender vacío Q4.3 Y4 Bajar portador Q4.4 Y5 Encender banda Q4.5 • Panel de operación Símbolo Función Entrada Salida Lámparas H1 Lámpara de error Q4.6 H2 Lámpara de modo manual Q4.7 H3 Lámpara de modo inicio Q5.0 H4 Lámpara de modo automático Q5.1 H5 Lámparas de portador arriba Q5.2 H6 Lámpara de pieza en rampa Q5.3 H7 Lámpara de pieza en home Q5.4 H8 Lámpara de posicionador retraido Q5.5 H9 Lámpara de vacío encendido Q5.6 H10 Lámpara de corriendo Q5.7 S0 Paro de emergencia I0.7 Llave de modos S1.1 Modo manual I1.0 S1.2 Modo de inicio I1.1 S1.3 Modo automático I1.2 Pulsadores S2 Restablecer error I1.3 S3 Parar I1.4 _____________________________________________________________________ 50 Capítulo 4. Pruebas y resultados S4 Comenzar I1.5 Nota: Las señales de entrada y salida son activas en alto. 4.2.4. Interfase Gráfica con WinCC El programa WinCC permite que se controle y visualice de forma remota el experimento del laboratorio virtual. WinCC ofrece ventaja como protección por password y tiempo de práctica limitado por lo que los usuarios deben firmarse en el servidor primero. A la interfase de control y visualización de WinCC puede accederse desde la página web del proyecto y se muestra en la figura 4.10. Figura 4.10. Interfase gráfica de WinCC. 4.2.4.1. Descripción de la pantalla En la esquina superior izquierda se muestran las lámparas indicadoras de modo, estas se encienden hasta que se hayan cumplido todas las condiciones del mismo (i.e. para modo de inicio se requiere que no exista pieza ni en home ni en rampa, que el portador este a la derecha, arriba y sin pieza, etc.). Debajo de las lámparas de modo están las lámparas de error y de estado del sistema que se encienden conforme a las condiciones del proceso. _____________________________________________________________________ 51 Capítulo 4. Pruebas y resultados En la parte central se muestra el diagrama animado del proceso que cambia con las condiciones del proceso (la visualización con esta pantalla se demora aproximadamente un segundo con respecto a los cambios reales cuando se esta accediendo directamente por adaptador MPI). En la parte superior del recuadro de visualización esta la llave de modos y el paro de emergencia. En la esquina superior derecha están los botones de comienzo, paro y pasos. Debajo de ellos están los botones para operar al sistema en modo manual. 4.2.5. Visualización mediante cámara de red Se añadió al proyecto una cámara de red con servidor integrado para visualizar el proceso mientras WinCC esta corriendo para obtener una idea física de lo que realmente está ocurriendo. Una fotografía del experimento del laboratorio virtual se presenta en la figura 4.11. Figura 4.11. Experimento de laboratorio virtual. _____________________________________________________________________ 52 Capítulo 4. Pruebas y resultados CAPÍTULO 5 CONCLUSIONES Y TRABAJO FUTURO 5.1. CONCLUSIONES El proyecto del Laboratorio Virtual en el ITESM Campus Toluca ha provisto acceso remoto al primer experimento en línea de manera exitosa. Los parámetros pueden enviarse al servidor de VNC usando cualquier navegador de Internet. El control y monitoreo del proceso se realizan con la interfase gráfica de WinCC. La visualización se realizó adecuadamente con la cámara de red. La programación remota del PLC se efectuó satisfactoriamente. Las redes de Petri demostraron ser una herramienta de modelado efectiva para sistemas en donde suceden múltiples ocurrencias. Se consiguió optimizar recursos y tiempo puesto que se pueden agregar hasta nueve discos al sistema y el tiempo que le toma al portador llevar la pieza de la posición inicial a la final ya no depende de la velocidad de la banda. El simulador de proceso diseñado comprobó ser de gran ayuda en el proceso de pruebas preliminares a la implementación, los estudiantes pudieron detectar algunos de sus errores y corregirlos en un intervalo de tiempo mucho menor. Pudieron también visualizar gráficamente el resultado físico de las acciones obtenidas del modelo de redes de Petri o Grafcet que con anterioridad habían obtenido. La metodología propuesta para modelar con RdP fue rápidamente comprendida y seguida por los alumnos. La implementación en el PLC depende de la habilidad del estudiante que realiza el programa, pero el contar con un modelo claro y sencillo minimizó mucho el tiempo de dicha implementación. La metodología proporcionada para trabajar en equipos internacionales se siguió adecuadamente logrando buenos resultados en cuanto a organización y desarrollo de las tareas asignadas. El objetivo propuesto para cada estudiante fue satisfactoriamente _____________________________________________________________________ 53 Capítulo 5. Conclusiones y trabajo futuro concluido y el ensamble del proyecto por sus cuatro integrantes fue exitoso, consiguiendo con ello no solo el buen funcionamiento del sistema sino una clara integración de los elementos del equipo. El Laboratorio Virtual es una aportación que conjuga la aplicación de tecnología de punta y la colaboración interdisciplinaria entre universidades con miras hacia la solución de problemas en un mundo globalizado. Las contribuciones de la metodología de modelado con RdP y el simulador gráfico en el ámbito académico y técnico son: la optimización de recursos, mejoras en el tiempo de ejecución del proceso, obtención de un modelo confiable y libre de errores, menor tiempo de implementación y la obtención de un sistema de manufactura que funciona conforme a las especificaciones de diseño. Finalmente, la aportación más importante sobre las indiscutibles habilidades técnicas que los estudiantes adquieren es la capacidad formada en el alumno para relacionarse y resolver problemas en un contexto internacional librando las barreras del lenguaje y la distancia. 5.2. TRABAJO FUTURO 1) Construir una serie de experimentos tanto electro-neumáticos como electromecánicos que puedan controlarse en línea ya sea con PLCs o con tarjetas de adquisición de datos. 2) Construir una red de PLCs conectados en línea por TCP/IP, para lo cual es necesario adquirir y configurar apropiadamente el procesador de comunicaciones CP 343-1. 3) Configurar el programa WinCC mediante WebNavigator para controlar remotamente la red de PLCs. 4) Conectar algunas cámaras de video propiamente seleccionadas para llevar un seguimiento visual del proceso. 5) Crear cuartos virtuales de dialogo y participación entre las diferentes universidades involucradas. _____________________________________________________________________ 54 Capítulo 5. Conclusiones y trabajo futuro REFERENCIAS [1] Gaona, A. (2002). “Remote control system”, Thesis, ITESM Toluca, Mexico. [2] Siemens. (1999). “SIMATIC S7-300 installation”,http://www4.ad siemens.de/ [3] Siemens. (2001). “Getting Started STEP 7 ”, USA: Autor. [4] Siemens. (1997). “WinCC control center”, manual. Germany: http://www4.ad.siemens.de [5] AT&T Laboratories Cambridge. (1999). “Virtual Network Computing (VNC)”, Univeristy of Cambridge. http://www.uk.research.att.com/vnc/ [6] Alcatel. (1999). “Vinton Cerf, the father of the Internet”, Alcatel’s International Magazine. Vol. VII, No. 2. Paris: http://www.alcatel.com/telecom/mbd/publi/newslink/9902/interview.htm [7] Wagner, B.; Tuttas, J. (2001). ”Team learning in an online lab”, Frontiers in Education Conference, 31st Annual , Volume: 1, 2001 Page(s): TIF -18-22 vol.1 [8] Shaheen, M.; Loparo, K.A.; Buchner, M.R. (1998). “Remote laboratory experimentation”. American Control Conference, Proceedings of the 1998 , Volume: 2 , 1998 Page(s): 1326 -1329 vol.2 [9] Batun, C.; Ma, Q. (2000). “Remote tuning of a PID position controller via Internet”, Proceedings of the American control conference, Volume: 6 , 2000, Page(s): 4403-4406. vol.6 Programmable controller hardware and [10] Bin Jin; Guez, A. (1994) “Flexible hierarchical control of an automated assembly line”, Industrial Technology, Proceedings of the IEEE International Conference on , 1994, Page(s): 325-329. [11] Lauzon, S.C.; Ma, A.K.L.; Mills, J.K.; Benhabib, B. (1996). “Application of discrete-event-systems theory to flexible manufacturing”. IEEE Control Systems Magazine , Volume: 16 Issue: 1 , Page(s):41-48 [12] Burke, W.; Byrne, E. (1993). “A reliable temperature control system for the Alcator C-MOD Vacuum Vessel”. Fusion Engineering, 15th IEEE/NPSS Symposium on , Volume: 1 , 1994 Page(s): 517-520 vol.1 [13] Kanaya, N.; Asaoka, S. (1999). “Vacuum pump control system using programmable logic controllers on the TCP/IP network for the 2.5-GeV storage ring”, Proceedings of the 1999 particle accelerator conference.Volume:2, Page(s): 667-669. [14] Chen, Y.; Wongladkown, C. (1991). “A real-time control simulator design for automated manufacturing systems using Petri nets”. Robotics and Automation, 1991. Proceedings., 1991 IEEE International Conference on , Page(s): 2542 -2547 vol.3 [15] Music, G.; Matko, D. (1999). “Petri net based control of a modular production system”. Industrial Electronics, ISIE '99. Proceedings of the IEEE International Symposium on , Volume: 3 , 1999 Page(s): 1383 -1388 vol.3 [16] Retchkiman, Z. (2000). “A vector Lyapunov function approach for the stabilization of discrete event systems”, Vowrez, No. 7, pp 829-838. [17] López, E. (1997). “Introducción a las redes de Petri”. Facultad de ciencias físico-matemáticas. Universidad Autónoma de Nuevo León. 55 [18] Murata, T. (1989). “Petri Nets: Properties, Analysis and Applications”, Proceedings of the IEEE, 77(4), Page(s): 541-580. [19] Turban, E. (1992).”Expert Systems and Applied Artificial Intelligence”, New York: Macmillan Pub. Co. [20] Anschuetz, H. (2002). “HPSim petri net simulator”,Ver.1.1. http://home.tonline.de/home/henryk.a/petrinet/e/hpsim_e.htm [21] Kayser K.-H. (2001). “Automation System 1, Tutorial PLC”, FHTE, Germany. [22] Siemens. (2001). “Productos y sistemas para manejo y visualización”, Catálogo ST 80 - SIMATIC HMI. Siemens AG. [23] Siemens. (2001). “WinCC Web Navigator V1.1”, Manual. SIMATIC HMI. Siemens AG. [24] Siemens. (1999). “Comunicación industrial”, Catálogo IK-10 - SIMATIC NET. Siemens. [25] Zhou M.; Venkatesh, K. (1999) ”Modeling, Simulation, and Control of Flexible Manufacturing Systems: A Petri Net Approach “, Book news, Inc. Portland, USA. 56