informe

14
UNIVERSIDAD NACIONAL EXPERIMENTAL POLITECNICA “ANTONIO JOSE DE SUCRE” VICERRECTORADO BARQUISIMETO DIRECCION DE INVESTIGACION Y POSTGRADO MAESTRIA EN ELECTRONICA INFORME: TEORIA DE AUTOMATAS, REDES DE PETRI Y AGENTES IMPLEMENTADA EN UN SISTEMA DINAMICO A EVENTOS DISCRETOS (MODELADO DE PROCESOS CONCURRENTES) EDILIO J. ALVAREZ F. C.I. V-17.784.880

Upload: 31171811

Post on 27-Nov-2015

10 views

Category:

Documents


0 download

TRANSCRIPT

UNIVERSIDAD NACIONAL EXPERIMENTAL POLITECNICA “ANTONIO JOSE DE SUCRE”

VICERRECTORADO BARQUISIMETO DIRECCION DE INVESTIGACION Y POSTGRADO

MAESTRIA EN ELECTRONICA

INFORME: TEORIA DE AUTOMATAS, REDES DE PETRI Y AGENTES IMPLEMENTADA EN UN

SISTEMA DINAMICO A EVENTOS DISCRETOS (MODELADO DE PROCESOS CONCURRENTES)

EDILIO J. ALVAREZ F. C.I. V-17.784.880

1. Desarrollo en autómatas de un sistema dinámico a eventos discretos

Tomaremos como objeto de estudio una planta o empresa de elaboración de concreto premezclado para la distribución y utilización en labores de construcción en general. Comenzaremos por definir el proceso mencionado, de tal manera que podamos identificar cada uno de los elementos que intervienen en el, y así, poder desarrollar posteriormente su respectivo modelo a eventos discretos. Descripción del proceso Inicialmente se tiene toda la materia prima del proceso (cemento, arena, agregado y agua) pesada y almacena, lista para su utilización. Una vez inicializado o arrancado el proceso, se comienza por descargar el cemento, la arena y el agregado (grava, piedra) a la mezcladora, en proporciones previamente definidas. La descarga de la materia prima se realiza por medio de dos cintas o bandas transportadoras, una para la descarga de cemento y otra para la de arena y agregado. Una vez descargada la mezcla, se enciende el motor de la mezcladora y acto seguido se abre la válvula de flujo de agua, para de esta manera empezar a descargar el agua dentro de la mezcladora. Después de determinado tiempo se da por finalizado el proceso y de esta manera se apaga el motor de la mezcladora y se da inicio a la descarga del producto a través de la compuerta de descarga de la mezcladora la cual desemboca en el trompo u hormigonero, para su posterior traslado al cliente. En la figura 1 se ilustra el proceso de elaboración de concreto premezclado.

Figura 1. Proceso de elaboración de concreto premezclado.

MEZCLADOR (M)

VALVULA DE AGUA (V)

CINTA TRANSPORTADORA (CT1)

CINTA TRANSPORTADORA (CT2)

Agregado

Cemento Agua

COMPUERTA DE DESCARGA (C)

Hormigonero

BT1

0

1

OFF

ON

1 2

0

1

OFF

ON

3 4

0

1

OFF

ON

5 6

0

1

CERRADA

ABIERTA

7 8

0

1

CERRADA

ABIERTA

9 10

BT2 M V C

Modelado en autómatas Comencemos por definir los elementos presentes en el proceso. En la tabla 1 se muestra cada uno de dichos elementos, los cuales se comportan como variables discretas.

Tabla 1. Variables del proceso

ITEM Variable Estado

1 Válvula de flujo de agua Abierta Cerrada

2 Compuerta de descarga Abierta Cerrada

3 Mezcladora Activada

Desactivada

4 Cinta transportadora Nº 1 Activada

Desactivada

5 Cinta transportadora Nº 2 Activada

Desactivada

Ahora definiremos detalladamente cada uno de los elementos, de tal manera que puedan ser representados en autómatas finitos. En la tabla 2 se muestra el número de estados y transiciones por elemento.

Tabla 2. Elementos del proceso con sus respectivos estados y transiciones.

ELEMENTO Nº DE

ESTADOS Nº DE

TRANSICIONES

Válvula de flujo de agua (V) 2 2

Compuerta de descarga (C) 2 2

Mezcladora (M) 2 2

Cinta transportadora Nº 1 (CT1) 2 2

Cinta transportadora Nº 2 (CT2) 2 2

Para la integración de todos estos elementos se desarrolló el producto paralelo de cada una de sus respectivas máquinas de estado finito (ver figura 2), para de esta manera obtener el modelo a eventos discretos del proceso o de la planta en general.

Figura 2. Representación en autómatas de los elementos del proceso.

En la imagen adjunta a este documento se ilustra el autómata de todos los estados posibles del proceso (G), el cual se obtiene de la realización del producto asíncrono (producto paralelo) de cada uno de los elementos descritos, esto es:

Lo cual da como resultado 32 estados distintos, ya que en este caso particular #G=25=32 (#G:= número de elementos del conjunto G). A la representación de G se le denomina modelo de la planta, del cual solo será posible alcanzar ciertos estados en función de las especificaciones de nuestro proceso. Descripción Lógica del Proceso de Elaboración de Concreto Premezclado (Especificaciones) Para la descripción debemos considerar cual será nuestro objetivo dentro del proceso, es decir, cuál de los 32 estados queremos alcanzar. En nuestro caso, el estado que deseamos alcanzar (también llamado, estado marcado) es aquel en el que el concreto premezclado, una vez elaborado, es descargado en el hormigonero. Para la realización de las especificaciones del proceso consideraremos que la función generadora de eventos está regida por una base de tiempo la cual varía en función de las características deseadas del concreto, es decir, cada transición del proceso ocurrirá o se disparara en función de determinados tiempos previamente establecidos, esto implica que las transiciones deben ocurrir bajo cierto orden para poder alcanzar nuestro estado marcado. Por tanto, las especificaciones de nuestro proceso se desglosan de manera ordena a continuación:

1. Se activa la cinta transportadora N°1 (CT1). 2. Se activa la cinta transportadora N°2 (CT2). 3. Se desactiva la cinta transportadora N°2 (CT2). 4. Se desactiva la cinta transportadora N°1 (CT1). 5. Se activa la mezcladora (M). 6. Se abre la válvula de flujo de agua (V). 7. Se cierra la válvula de flujo de agua (V). 8. Se desactiva la mezcladora (M). 9. Se abre la compuerta de descarga (C).

De esta manera el modelo de la planta se reduce al mostrado en la figura 3, cuyo lenguaje es un subconjunto del lenguaje del modelo de la planta. Cabe destacar que según las especificaciones o algoritmo descrito anteriormente, el lenguaje marcado que lo describe es el siguiente:

( ) * +

Figura 3. Representación en autómatas de las especificaciones del proceso de elaboración de concreto premezclado.

BT1 BT2 M V C

0 0 0 0 0

1 0 0 0 0

2 1

1 1 0 0 0

4 3

0 0 1 0 0

0 0 1 1 0

8 7

6

5

0 0 0 0 1 9

10

2. Modelado en Redes de Petri (PN; Petri Net) Una vez desarrollado el modelo en autómatas de nuestro proceso, procedemos a desarrollar su respectiva representación en redes de Petri, para ello debemos identificar inicialmente cada uno de los elementos que conformaran dicha representación, esto es, lugares, transiciones, fichas. El número de lugares (PN) es equivalente al número de estados en el modelo en autómatas de nuestro proceso, es decir, el modelo PN a desarrollar poseerá 6 lugares, a los cuales se le adicionaran 4 lugares más, de los cuales 2 corresponden a el supervisor del sistema, y los restante corresponden al lugar de inicio y el lugar de reinicio del sistema. El número de transiciones en nuestro modelo de PN es de 13, de las cuales 10 corresponden a las mismas transiciones del modelo en autómatas, otras 2 al supervisor, y una última que da inicio al proceso. En cuanto a las fichas, el sistema inicialmente necesitara de 3 fichas, distribuidas estratégicamente para que el modelo en PN se ejecute de manera acertada. En la figura 4 se muestra la representación en redes de Petri de nuestro sistema con su respectiva distribución inicial de las fichas. Análisis Matemático Existen diferentes métodos para el análisis de las propiedades dinámicas de un modelo en redes de Petri, en esta ocasión se desarrollara el método de análisis matricial, el cual se fundamenta en una matriz denominada Matriz de Incidencia (D) y una ecuación de estado (M(k)). La matriz D es el resultado de la diferencia entre una matriz D+ y otra D-, donde sus entradas (d+

ij) representan el peso de los arcos que van desde la j-esima transición al i-esimo lugar del modelo, mientras que las entradas (d-

ij) de la otra matriz representan el peso de los arcos que van desde el i-esimo lugar a la j-esima transicion.

Figura 4. Representación en Redes de Petri del proceso de elaboración de concreto premezclado.

De esta manera, para nuestro sistema la matriz de incidencia (D) viene dada por:

(

)

(

)

(

)

Ahora bien, con la matriz de incidencia D y la marcación inicia M(0), se obtiene la ecuación de estados,

la cual nos permitirá conocer la situación del sistema luego de cierta transición k. Dicha ecuación es la

siguiente:

( ) ( ) ∑

Donde

( )

(

)

y

(

)

Por ejemplo, al desarrollando la ecuación de estados para k=1, se obtiene que el vector de marcación

M(1), al disparar solo la primera transición, es:

( )

(

)

y

(

)

3. Representación en autómatas del proceso en estudio, mediante la utilización de la herramienta State Flow del paquete MATLAB

El proceso de elaboración de concreto premezclado, que hemos venido desarrollando, se puede modelar haciendo uso del paquete o software MATLAB, el cual posee una herramienta denominada STATE FLOW, dicha herramienta permite realizar una simulación del comportamiento que tendrá nuestro proceso según sus especificaciones o reglas previamente definidas. El modelo en autómatas es muy similar al que se muestra en la figura 3, salvo que en esta ocasión se hace uso de una interfaz gráfica que permite su representación de una manera menos abstracta. En nuestro modelo de STATE FLOW, mostrado en la figura 5, encontraremos dos elementos esenciales, los estados y las transiciones. Los estados nos permiten señalizar o definir cada una de las etapas en las que se encuentra nuestro proceso, es decir, nos permite desarrollar cuales son nuestros estados deseados para que se ejecute de forma correcta el proceso de elaboración de concreto premezclado. En cada uno de estos estados se definen una serie de instrucciones que a posterior van a definir el flujo de un estado a otro siguiendo las especificaciones de nuestra planta.

Figura 5. Representación en autómatas usando la herramienta STATE FLOW

Con respecto a las transiciones, están cumplirán la misma función que han venido desenvolviendo, se encargaran de disparar el cambio de un estado a otro. Estos cambios se darán, si solo si, se cumple ciertas condiciones definidas en cada una de ellas. Estas condiciones no son más que las veces de un supervisor el cual determinara en qué momento se debe hacer un cambio de estado, los cuales para nuestro caso de estudio van estar condicionados a una cierta base de tiempo, la cual le dirá al proceso que después de cumplido cierto instante, y además de encontrarse en cierto estado en particular, puede ejecutarse la transición de un estado a otro. De manera más detallada, en el modelo de la figura 5 tenemos 17 estados presentes, entre los cuales se encuentran estados que nos indican la situación de cada uno de los elementos del proceso a través de un desarrollo cronológico, es decir, no muestra cómo se desenvuelve la planta desde su estado DETENIDO hasta el estado marcado en el que la compuerta de descarga está abierta (C_OPEN), pasando por cada una de las etapas donde se muestra las aperturas, encendidos, cierres y apagados de los respectivos elementos presentes en la planta, además de mostrar aquellos estados donde se simboliza el periodo de espera entre una acción y otra, donde dichas esperas son determinantes para la ejecución correcta de la receta de preparación del concreto premezclado. Es de notar que las transiciones que permiten la estancia dentro de los estados de espera están condicionadas por la variable “T” la cual es determinada por la cantidad de producto deseado, esta variable T no es vas que un múltiplo de la base del tiempo de la herramienta simulink (entorno donde se ejecuta state flow). En la figura 6 se muestra el entorno simulink en el cual están presentes el autómata del conjunto proceso-supervisor y los elementos modificables por el usuario, como lo son los botones de RUN y RESET, y la variable de base de tiempo (TIME BASE), además de un conjunto de elementos propios del diseño del modelo que permiten la realización de la graficas que permiten observar de manera más amigable la ejecución o simulación del proceso.

Figura 6. Ilustración macro del proceso vista desde simulink.

Además de los 17 estados, encontramos la misma cantidad de transiciones, donde en cada una de ellas se encontrara determinada instrucción que debe cumplirse para poder permitir el cambio de estados. Entre estas instrucciones (condicionales) tenemos instrucciones simples que solo permiten la transición si, y solo si, cierto elemento del proceso se encuentra en cierta posición (llámese cerrado, abierto, apagado o encendido), y otras instrucciones que se activan solo después de cierto instante de tiempo, el cual va depender del valor de la variable “T”. Por ultimo en la figura 7 se muestra las gráficas del comportamiento de cada uno de los componentes del proceso durante la correcta ejecución del proceso de elaboración de concreto premezclado para cierta cantidad. En la gráfica se muestra la ejecución del proceso cuando se inicia por primera (RUN) vez y cuando se ejecutando de nuevo por medio de la instrucción RESET.

Figura 7. Gráfica del desenvolvimiento del proceso.

4. Desarrollo en autómatas del proceso de premezclado de concreto utilizando la herramienta state flow implementando la teoría de agentes dentro del proceso

La implementación de la teoría de agentes a nuestro proceso le da un agregado de robustez al sistema permitiendo que este sea más completo y cada vez más autónomo. El agente hace acto de presencia dentro del modelo de la planta (en simulink) gracias a un nuevo elemento denominada función, el cual genera determinada salida o respuesta en función de ciertas entradas previamente definidas. La figura del agente para el proceso bajo estudio tiene como función, encargarse de gestionar el comportamiento del supervisor que a su vez se encarga de asegurar que se cumplan las especificaciones o reglas del proceso durante la ejecución o funcionamiento de la planta. Para que la figura del agente tuviese mayor grado de competencia, y así poder justificar en cierta medida su implementación, al proceso original que se ha venido estudiando se le adicionaron nuevas características, la cuales son:

a) En el proceso de elaboración de concreto premezclado se podrán dar más de una receta distinta de concreto según las necesidades del mercado. En nuestro caso implementaremos 3 recetas distintas a manera ilustrativa. Estas recetas son introducidas por el operario de planta.

b) Además de la variedad de recetas el proceso también será capaz de surtir distintas cantidades del producto final, todo a su vez que de nueva cuenta un operario determine la cantidad de concreto que desea obtener al final del proceso según las peticiones del cliente.

Ahora bien, el agente de nuestro proceso se encargara de recibir o captar los datos de tipo de receta y cantidad de producto deseado para que de esta manera el genere en función de estas entradas cuáles serán los tiempos de espera requeridos para cumplir con la orden del producto, es decir, el agente le suministrara al supervisor los tiempo que él debe mantener encendida(s) las bandas transportadoras, la mezcladora, y abierta la válvula de flujo de agua. El agente además estará en la capacidad de decidir cuando el proceso está o no habilitado para que este se inicie, esto se logra a través de una variable denominada “enable” la cual es controlada por el agente en función del tipo de receta que haya seleccionado el operario, ya que, si este selecciona una receta que no se encuentre programada entonces la variable en cuestión mantendrá el valor lógico “0” hasta tanto no se introduzca una receta valida, entonces el agente le dará la autorización al supervisor para que este de inicio al proceso de elaboración de concreto según la cantidad y receta establecida. El modelo en state flow para esta nueva implementación (ver figura 8) es similar al que se desarrolló en el punto anterior (punto 3), entre las diferencias presentes tenemos:

a) Ahora ya no se trabaja con la variable “T”, en lugar de esta aparecen cuatro nuevas variables: “t_cem” (tiempo de encendido de la banda transportadora descargadora de cemento), “t_agre” (tiempo de encendido de la banda transportadora descargadora de agregado), “t_mez” (tiempo de encendido de la mezcladora) y “t_agua” (tiempo de apertura de la válvula de flujo de agua).

b) Implementación o utilización de una nueva variable denominada “enable”, la cual agregara una nueva condición para poder dar inicio al proceso.

Figura 8. El modelo en state flow con la implementación del agente.

Las nuevas variables que engrosaran el sistema son todas ellas generadas por el agente, y suministradas por este de forma directa al supervisor del proceso, es por ello que decimos que el agente se encargara de gestionar el comportamiento del supervisor. Es importante recalcar que la figura del agente no es algo más que una función, la cual responde estímulos o entradas, generando como resultados una respuestas o salidas determinadas que gobernaran el desenvolvimiento de todo el sistema. En la figura 9 se ilustra el diseño en simulink del conjunto proceso, supervisor y agente. Por último, vale mencionar que el modelo en state flow, tanto de la parte 3 como el de la parte 4, es una representación del conjunto proceso-supervisor, es decir, en ellos tenemos la aglomeración del proceso y el supervisor actuando como una sola representación en autómatas, de esta manera es comprensible que algunas de las salidas del chart (bloque del autómata) retroalimenten a este mismo.

Figura 9. Conjunto proceso, supervisor y agente, en el entorno simulink.