Está en la página 1de 19

RdP Descripción y propiedades: Ejemplos I

ISA - Vigo 2015 Modelado de sistemas para la programación de autómatas 27


RdP Descripción y propiedades: Ejemplos II

ISA - Vigo 2015 Modelado de sistemas para la programación de autómatas 28


RdP Descripción y propiedades: Ejemplos III

ISA - Vigo 2015 Modelado de sistemas para la programación de autómatas 29


RdP Modelado de sistemas complejos: Concurrencia y Sincronización

• Concurrencia
– Hace referencia a la ejecución simultánea de varios procesos,
dificultando la percepción del concepto de estado.
– En las redes de Petri, la concurrencia se modela mediante
transiciones con más lugares de salida que de entrada
(distribución) aumentando el número total de lugares
marcados.

• Sincronización
– Hace referencia a la necesidad de que varios procesos coordinen
su terminación.
– En las redes de Petri, la sincronización se modela mediante
transiciones con varios lugares de entrada. Pueden implicar la
terminación de tareas (conjunción) o puntos de sincronismo o de
espera.

ISA - Vigo 2015 Modelado de sistemas para la programación de autómatas 30


RdP Modelado de sistemas complejos: Exclusión mutua

• Hace referencia a recursos que solo pueden ser


utilizados por un proceso o por un número limitado de
procesos a la vez.
• En las redes de Petri, la exclusión mutua se modela
mediante lugares marcados con mas transiciones de
salida que de entrada (selección).

t1 t2

ISA - Vigo 2015 Modelado de sistemas para la programación de autómatas 31


RdP Modelado de sistemas complejos: Alternancia

• La alternancia entre dos procesos (modelados con dos subredes


de Petri) puede darse sin necesidad de la existencia de un recurso
común, y también entre más de dos procesos. Por ejemplo, si se
quiere una alternancia entre los procesos A, B y C, es decir, la
secuencia: A ⇒ B ⇒ C ⇒ A ⇒ B ⇒ C...

A B C
finA finB finC

ISA - Vigo 2015 Modelado de sistemas para la programación de autómatas 32


Concurrencia y Sensor de
Alternancia proximidad
inductivo
(Tapón)

Botella
rechazada

Fotocélula de
barrera de luz
(Botella)

Cilindro
neumático

Motor de la
cinta de expulsión

Figura 5.66 Etapa de verificación de un proceso de embotellado.

Figura 5.67 Red de Petri que controla el sistema de verificación del ejemplo 5.13.

ISA - Vigo 2015 Modelado de sistemas para la programación de autómatas 33


RdP Modelado de sistemas complejos: Modularidad (I)

• Una secuencia repetida (subred) se puede reutilizar en varios puntos de la


red sin más que recordar el punto de regreso de la secuencia.

ta0 tb0 tc0 td0


Secuencia repetida

p1
t1
p2

t2
... ... ... ... ... ... ... ...
tn

pn+1
ta1 tb1 tc1 td1

ISA - Vigo 2015 Modelado de sistemas para la programación de autómatas 34


RdP Modelado de sistemas complejos: Modularidad (II)
• No se puede realizar una llamada a la subred mientras está en ejecución.

ta0 tb0 tc0 td0


Llamada (Memoria) (Memoria) (Memoria) (Memoria)

Retorno ta1 tb1 tc1 td1

p1
t1
Secuencia
repetida

p2
t2
... ... (Memoria)

tn
pn+1

ISA - Vigo 2015 Modelado de sistemas para la programación de autómatas 35


Ejemplos de modelado de sistemas complejos
Recurso compartido entre dos carros (I)

• A : Debe esperar en EA hasta que la zona común esté libre.


Espera obligatoria en D de TA=100s.

• B : Igual que A pero con prioridad y TB=50s.

iA
dA
MA CA A iB dB
EA B D
MB CB G
EB

ISA - Vigo 2015 Modelado de sistemas para la programación de autómatas 36


Ejemplos de modelado de sistemas complejos
Recurso compartido entre dos carros (II)

COMENTARIOS:
MA & CA MB & CB
1) Condición inicial: los
dA dB dos carros en reposo en CA
EA EB y CB.
2) El lugar central modela
EB EB el acceso al recurso
dA ; G dB compartido y representa
D D su estado de reposo.
*TA 100 *TB 50
G 3) Las transiciones de
CA CB salida del recurso están en
TA=0 TB=0
conflicto si lo solicitan
iA iA ; G iB iB simultáneamente. Para
EA EB evitarlo, se ha dado
prioridad al carro B.

ISA - Vigo 2015 Modelado de sistemas para la programación de autómatas 37


Ejemplos de modelado de sistemas complejos
Secuencias alternadas (I)

• Tratamiento de superficies por inmersión.


 2 cubas de tratamiento (doble tiempo).
 2 subciclos con afirmación de operario.

M i d s
b
C DG Tr1 Tr2 L DC
PA
41 42 32 31
1 2
PB

1 2
Carga Desengrase Tratamiento Lavado Descarga

ISA - Vigo 2015 Modelado de sistemas para la programación de autómatas 38


Ejemplos de modelado de sistemas complejos
Secuencias alternadas (II)

2 3 4 i
i d i

C L DG

s Tr1 Tr2 s

M PA PA

1 s d s d

PA DC PA
d b d Tr1 Tr2

DG PB L

b b b
PB PB PB

¿Se podría reutilizar alguna secuencia? ¿cómo?


ISA - Vigo 2015 Modelado de sistemas para la programación de autómatas 39
Ejemplos de modelado de sistemas complejos
Productor-consumidor con exclusión mutua (I)

 Almacén con capacidad finita 4.


 El control es capaz de ordenar: producir (p), depositar (d),
consumir (c) y extraer (e).
 Recibe fin de acciones (Fp , Fd , Fc , Fe).
 No se puede depositar y extraer a la vez.

Productor Almacén Consumidor


p d Fp Fd c e Fc Fe
Control

ISA - Vigo 2015 Modelado de sistemas para la programación de autómatas 40


Ejemplos de modelado de sistemas complejos
Productor-consumidor con exclusión mutua (II)

¿Resolución del conflicto? COMENTARIOS:


(Huecos) (Objetos)
1) Condición inicial: almacén
lleno, no hay orden de
(Huecos) extraer ni depositar en curso.
2) La situación del almacén
en lo referente al llenado se
d e modela con dos lugares que
representan los huecos y
Fd Fe
objetos presentes.
p c 3) El recurso compartido se
encarga de coordinar el
Fp Fc acceso al almacén.
4) RdP no binaria.

ISA - Vigo 2015 Modelado de sistemas para la programación de autómatas 41


Ejemplos de modelado de sistemas complejos
Lectores y redactores (I)

• Problema clásico de recursos compartidos: gestión de privilegios


de acceso a un determinado recurso.
• Existen dos conjuntos de usuarios, lectores y redactores, que
deben coordinarse para acceder a unos datos comunes.
• Los Lectores sólo inspeccionan ⇒ pueden acceder a los datos de
forma simultánea. Los Redactores modifican los datos ⇒ es
necesario una exclusión mutua con el resto (lectores y
redactores).
• Cada usuario puede encontrarse en tres estados:
 Reposo (R): no necesita el recurso.
 Espera (E): pendiente de acceder al recurso.
 Activo (A): trabajando con el recurso.

ISA - Vigo 2015 Modelado de sistemas para la programación de autómatas 42


Ejemplos de modelado de sistemas complejos
Lectores y redactores (II)

COMENTARIOS:
1) Si la red es binaria
hacen falta tantos
R R R R recursos como lectores.
D D D D 2) Cada redactor se
lleva todas las marcas
E E E E para el uso del recurso.
C C C C

A A
¿Se podría
A A
representar con
F F F F una red no
Lectores Redactores binaria? ¿cómo?

ISA - Vigo 2015 Modelado de sistemas para la programación de autómatas 43


Ejemplos de modelado de sistemas complejos
Filósofos (I)

Cuatro filósofos se reúnen para elucubrar y cenar. La cena se


compone de un plato único a base de “spaguetti”, los cuales
deben comerse con dos tenedores. Como en la mesa sólo hay
un tenedor por servicio, se les plantea un problema. Tras
reflexionar, los filósofos adoptan el siguiente ritual (protocolo):
 Cada filósofo se sentará delante de un servicio.
 Para comer, un filósofo podrá utilizar su tenedor y el del
comensal de su derecha.
 Cada filósofo puede estar en una de las tres situaciones
siguientes: comiendo, esperando para comer o pensando.
 Inicialmente todos los filósofos están pensando.

ISA - Vigo 2015 Modelado de sistemas para la programación de autómatas 44


Ejemplos de modelado de sistemas complejos
Filósofos (II)

COMENTARIOS:
1) La red es viva, pero:
ψ1 E1 ψ2 E2 ψ3 E3 ψ4 E4 en determinadas
situaciones, dos filósofos
fe1 fe2 fe3 fe4 pueden monopolizar los
recursos
C1 C2 C3 C4
2) Ejemplo:
fc1 fc2 fc3 fc4 Fp1(T),fp3(T+1.5), C=2,P=1

P1 P2 P3 P4 4
ψ4
fp1 fp2 fp3 fp4
1 ψ1 ψ3 3
ψ2

2
ISA - Vigo 2015 Modelado de sistemas para la programación de autómatas 45

También podría gustarte