PDF de programación - Microsoft Word - PetriDesign_Especificación.doc

Imágen de pdf Microsoft Word - PetriDesign_Especificación.doc

Microsoft Word - PetriDesign_Especificación.docgráfica de visualizaciones

Publicado el 14 de Enero del 2017
486 visualizaciones desde el 14 de Enero del 2017
85,0 KB
8 paginas
Creado hace 12a (19/12/2011)
Práctica PetriDesign
Proyecto: Diseño de un sistema concurrentes.
Autor: José M. Drake
Fecha del documento: 19-12-11

Objetivo:
Esta práctica propone concebir y realizar el diseño detallado de un sistema concurrente a partir de su
especificación.
Se diseña una aplicación para el control de cualquier entorno físico a partir de una descripción de la
estrategia reactiva de control formulada como una red de Petri (RdP).
Haciendo uso de UML (no escribir código Java) hay que proponer un conjunto de clases que
implementen la funcionalidad de los elementos propios de las redes de Petri (transición, plaza, testigo) y
de un entorno físico (eventos, acciones). Estos elementos deben estar concebidos a fin de que se
construya automáticamente el programa que controle el sistema a partir de la descripción de la red de
Petri y del entorno.
El diseño debe quedar completamente documentado, a fin de que un programador (sin capacidad de
iniciativa de diseño pueda escribir su código Java completo).
A cada grupo de prácticas se le establecerán ciertos criterios específicos de diseño.

Implementación de redes de Petri para el control de un entorno físico.

Red de Petri (RdP)
Una RdP es una abstracción concebida para modelar sistemas basados en eventos discretos, que en este
trabajo se quiere utilizar para desarrollar aplicaciones Java concurrentes de control de un entorno físico.
Los elementos definidos en una RdP son los siguientes:
Transición (Transition): Una transición representa un elemento que está asociado en la RdP a un conjunto
de plazas de entrada y a un conjunto de plazas de salida. Una transición se dispara de forma
autónoma cuando en todas sus plazas de entrada existen al menos un testigo. El disparo de la
transición extrae de cada plaza de entrada un testigo y deposita en cada plaza de salida un nuevo
testigo. La ejecución de una transición supone el cambio de estado del sistema.



disparo

No habilitada

Habilitad

Plaza(place): Es un elemento contendor de la RdP que puede estar vacía o contener un conjunto de
testigos. Cada plaza puede estar conectada en la RdP como salida de una transición y en ese caso
recibe un nuevo testigo cada vez que esa transición se dispara. Así mismo, una plaza puede esta
conectada en la RdP como una salida de una transición, y en ese caso, el que disponga de testigo es
una condición para que esa transición se pueda disparar. Cuando esto ocurre se extrae un testigo de la
plaza. Todos los testigos de una plaza son del mismo tipo (representan la misma situación), y el
número de testigos que contienen el conjunto de todas las plazas de la RdP representan el estado del
sistema.



disparo

Ambas habilitadas

Sólo una se dispara



Testigo(Tocken): Representa la ocurrencia de un evento de sincronización y no lleva asociados ninguna
información. Los testigos se almacenan en las plazas. Los eventos se generan y se eliminan como
efecto del disparo de las transiciones. Entre los eventos que se eliminan por el disparo de una
transición, y los eventos que se genera por la misma no hay ninguna relación.

Red de Petri (RdP): Es un grafo cuyos nudos son transiciones o plazas, y los arcos del grafo relacionan

transiciones con plazas. Una red de Petri representa completamente una aplicación.

Entorno físico
El entorno físico (sistema) es una infraestructura compuesta por equipos, con sensores y actuadores que
realizan algún tipo de proceso industrial (mecánico, eléctrico, químico, etc.). El sistema evoluciona de
acuerdo con su dinámica propia. El control del sistema se realiza en base a una estrategia reactiva, basada
en señales y acciones:
Señal: Es una variable booleana que indica que el sistema se encuentra en un estado interno relevante. El

estado de la señal puede ser consultado.

Evento: Es un aviso que se genera cuando una señal cambia de estado, esto es, cuando el sistema alcanza

o abandona un estado relevante señalizado.

Acción: Es una actuación instantánea que se ejecuta en el sistema para cambiar su estado.
Estrategia de control: Consiste en gobernar el funcionamiento del sistema asociando a cada evento una

respuesta compuesta por diferentes acciones.

Interacciones entre el sistema y la RdP de control.
Se pueden utilizar diferentes opciones de interacción entre el sistema físico y la RdP que implementa su
estrategia de control. En cada una de estas opciones se formaliza como los eventos del sistema afectan el
estado de la RdP, y como los cambios de estado de la RdP se traducen en acciones que se ejecutan en el
sistema.
Opciones de comunicación de eventos:

1. El disparo de una transición se condiciona con el estado de una señal del sistema: En este caso
cuando la transición está habilitada por el estado de las plazas de entrad de la RdP, sólo dispara

si está establecida la señal del sistema a la que está asociada.

Entorno

Señal



Entorno

Señal



Habilitada pero no dispara

Habilitada y dispara


Para implementar esta opción a cada transición de la RdP se asocia (o nó) una señal del entorno
que debe ser verificada para que la transición se pueda disparar. La transacción puede consultar
el estado de la señal asociada, y el entorno puede enviar un evento cuando el estado de la señal
cambia.

2. El evento de establecimiento de una señal del sistema se traduce en la introducción de un testigo

en una plaza: Cuando una señal se establece en el sistema, en la plaza de la RdP asociada a ella
se introduce un nuevo testigo. Este testigo es creado e introducido por el entorno, y no por el
disparo de una transición.

Entorno

Señal



Entorno

Señal



Transición no habilitada

Habilitada y dispara


Para implementar esta opción a cada señal del sistema se le asocia una plaza de la RdP, en la que
se introduce un testigo con cada evento de establecimiento de la señal.

Opciones de ejecución de acciones:

1. La acción se asocia al disparo de una transición: A
ciertas transiciones del la RdP se le asocia una
acción. Cuando la transición se dispara, la acción se
ejecuta sobre el sistema.

Entorno

action



2. La acción se asocia a la entrada o a la salida de
un testigo en una plaza: A ciertas plazas de la RdP
se le asocian acciones que se ejecutan cuando en
la plaza entra un evento y/o cuando de ella sale un
evento.

Entorno

Action 1


Action 2



CoalMine: Ejemplo de control de un sistema de transporte.

Transición no habilitada

in

out

Entrada y salida de testigo
de plaza invoca acción

G

B

M U

M A

L

A

L

B

Bl

Br

l
A
A

BM

r
A
W
A
WB

Se trata de controlar el sistema de transporte de
una mina que se muestra en la figura. Se
controlan los movimientos de los vagones
(avance hacia la derecha (r), avance hacia la
izquierda (l) y parada (s), en base a las señales
que se establecen con los pulsadores en las
estaciones terminales (MA,MB y MU), y de los
sensores de paso por determinados puntos de las
vías (LA,LB,WA,WB y U). En el recorrido de los vagones hay una sección común, a la que se debe acceder
con exclusión mútua.
La estrategia de control de este sistema se realiza con la lógica del la RdP que se muestra en la siguiente
figura.
En este sistema se disponen de las siguientes señales del entorno:

• MA y MB : Se ha pulsado el botón para que el vagón correspondiente salga de su terminal

U

izquierdo.

extremo izquierdo.

bufurcación de las vías

• MU: Se ha pulsado el botón para que el vagón presente abandone el terminal derecho.
• LA y LB: Sensor de la vía que indica que el correpondiente vagón ha alcanzado la estación del

• WA y WB: Sensor de la vía que indica que el vagón correspondiente ha alcanzado el punto de

• U: Sensor de la vía que indica que un vagón ha alcanzado la estación derecha del recorrido.

Las acciones que están definidas en el sistema son:

• a.r y b.r: El vagón a o b inicia su marcha hacia la derecha.
• a.l y b.l: El vagón a o b inicia su marcha hacia la izquierda.
• a.s y b.s: El vagón a o b se para.

A modo de ejemplo, en la Tabla I se muestra una posible descripción del sistema de control en un fichero
XML. Este ejemplo corresponde a las opciones de asociar las señales a condiciones de disparo de las
transacciones, y las acciones al disparo de transiciones.
El ejemplo se ha formulado en base a la existencia de un modelo de la infraestructura con dos tipos de
elementos CoalMine, y Wagon, con las instancias tres instancias que se muestran en la siguiente figura.


a.s

p1

p8

b.s

MA

t1

t8

MB

a.r

p2

p9

a.r

WA

a.s

t2

p15

t9

p3

p10

WB

b.s

t3

t10

a.r

p4

p11

b.r

U

t4

t11

a.s

p5

p12

b.s

MU

t5

t12

a.l

p6

p13

b.l

WA

t6

t13

a.l

p7

p14

b.l

LA

t7

t14

MU

WB

LB

Clases del entorno

CoalMine

main()
ma():boolean
mb():boolean
mu/():boolean
la():boolean
lb():boolean
wa():boolean
wb():boolean
u():boolean

wagon

*
Wagon

Wagon()
r()
l()
s()

Objetos en CoalMine

coalMine:CoalMine

aWagon:Wagon

bWagon:Wagon


El objetivo de diseño que se propone es diseñar un conjunto de clases que corresponden a los elementos
básicos de la RdP: RdP, Transicion, Place, Tocken, que permitan construir la aplicación de forma
automática por la simple invocación de la aplicación desde el sistema operativo:


RdP.main(“CoalMain.xml);



Objeto del diseño

CoalMine enviroment packet

CoalMine

CoalMine)
ma():boolean
mb():boolean
mu/():boolean
la():boolean
lb():boolean
wa():boolean
wb():boolean
u():boolean

Wagon

Wagon()
r()
l()
s()

Petri Net packet

RdP

main(args)
- - - -
- - - -

Transition
Transition()
-
  • Links de descarga
http://lwp-l.com/pdf1047

Comentarios de: Microsoft Word - PetriDesign_Especificación.doc (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad