Automação
de
Processos Industriais
Docentes:
Prof. Paulo Jorge Oliveira e-mail: pjcro@isr.ist.utl.pt
Eng. Alexandre Bernardino Tel: 21 8418053 ou 2053 (interno)
API P. Oliveira Pág. 1
IST / DEEC / SSC Automação de Processos Industriais
Programa da Cadeira:
Cap. 4 – Grafcet (Sequential Function Chart) [2 semanas]
...
Cap. 6 - Sistemas de Eventos Discretos [2 semanas]
Tutorial: http://vita.bu.edu/cgc/MIDEDS/
http://www.daimi.au.dk/PetriNets/
Caracterização genérica de
um sistema como as relações
de entrada/saída.
Equações de estado:
x(t ) = f ( x(t ),u(t ),t )
y(t ) = g ( x(t ),u(t ),t )
em tempo contínuo (ou em
tempo discreto)
Exemplos?
Vantagens da retroacção?
(Revisitar aquando da supervisão de SEDs)
Conjunto de eventos:
E={N, S, E, W}
Linguagens
Linguagens temporizadas
CPU
CPU
Partida
Chegada de
de CPU processos
processos
Áreas de aplicação de
Sistemas de Eventos Discretos
• Sistemas de filas de espera
• Sistemas Operativos e de Computadores
• Redes de Telecomunicações
• Bases de Dados
• Automação
Autómatos
Aumento
em
capacidade
GRAFCET de
modelação
e da
Redes de Petri complexidade
Propriedades de linguagens
Concatenação:
{ *
La Lb := s ∈ E : s = sa sb , sa ∈ La , sb ∈ Lb }
Prefix-closure:
{ *
L := s ∈ E : ∃t∈E * st ∈ L }
API P. Oliveira Pág. 16
IST / DEEC / SSC Cap. 6 – Sistemas de Eventos Discretos
(E, X, f, x0 ,F)
onde:
E - alfabeto finito ou eventos possíveis
x0 - estado inicial x0 ⊂ X
Exemplo de um autómato
(E, X, f, x0 ,F)
E = {α, β ,γ}
X = {x, y, z}
x0 = x
F = {x, z}
(E, X, f, x0 ,F)
E = {α, β}
X = {0, 1}
x0 = 0
F = {0}
Dada a linguagem
G=(E, X, f, x0 ,F)
Linguagem Gerada
Linguagem Marcada
Lm(G) := {s ∈ Ε∗ : f(x0,s) ∈ F}
b a
a
0 1
b
L(G1) = L(G2)
Lm(G1) = Lm (G2)
Exemplo de um autómato:
Inter-blocagem
Exemplo:
Como se encontram
os deadlocks e os
g
1
a
5 livelocks?
a
0 b 3
g b
a
2 4 Metodologias para análise
O estado 5 é um deadlock,
de Sistemas de Eventos
os estados 3 e 4 constituem Discretos
um livelock.
Bloqueamento:
Lm (G ) ⊆ Lm (G ) ⊆ L(G )
Lm (G ) ⊂ L(G )
e não está bloqueado quando
Lm (G ) = L(G )
API P. Oliveira Pág. 25
IST / DEEC / SSC Cap. 6 – Sistemas de Eventos Discretos
O estado 5 é um deadlock,
os estados 3 e 4 constituem
Lm (G ) ≠ L(G )
um livelock.
Exemplo:
g 0
1 5 ε a
a a 0
b 1
0 3 g a b
g b
a 5 3 2
2 4 b g
4 0
O estado 5 é um deadlock, a
os estados 3 e 4 constituem
3
um livelock.
Redes de Petri
Desenvolvidas por Carl Adam Petri na sua tese de doutoramento em 1962.
(P, T, A, w, x0)
onde:
P - conjunto de lugares
T - conjunto de transições
w - função de peso w: A → Ν
x0 - marcação inicial x0 : P → Ν
API P. Oliveira Pág. 29
IST / DEEC / SSC Cap. 6 – Sistemas de Eventos Discretos
(P, T, A, w, x0)
P={p1, p2, p3, p4, p5}
A={(p1, t1), (t1, p2), (t1, p3), (p2, t2), (p3, t3),
(t2, p4), (t3, p5), (p4, t4), (p5, t4), (t4, p1)}
x0 = {1, 0, 0, 2, 0}
Redes de Petri
Regras a observar:
(P, T, A, w, x0) p1
(P, T, I, O, µ0)
onde:
P - conjunto de lugares
T - conjunto de transições
µ0 - marcação inicial µ0 : P → Ν
3
µ0 = {1, 0, 0, 2, 0} t4
Redes de Petri
p2 p3
O conjunto de todas as marcações 3
t2
possíveis de uma Rede de Petri
constituí o espaço de estados.
∀pi ∈ P : µ ( pi ) ≥ # ( pi , I (t j ))
Uma transição tj ∈ Τ permitida pode disparar (fire),
resultando uma nova marcação:
µ ′( pi ) = µ ( pi ) − # ( pi , I ( t j )) + # ( pi ,O( t j ))
Marcação inicial:
t1
µ0 = {1, 0, 1, 2, 0}
p2 . ... p 3
Tem um deadlock!
3
t4
API P. Oliveira Pág. 37
IST / DEEC / SSC Cap. 6 – Sistemas de Eventos Discretos
Eventos
1) Chegada de tarefa
2) Servidor começa processamento
3) Servidor termina processamento
4) A tarefa é entregue
Evento Pre-condições Pos-condições
1 - b
2 a,b c
3 c d,a
4 d -
API P. Oliveira Pág. 38
IST / DEEC / SSC Cap. 6 – Sistemas de Eventos Discretos
Servidor
aguarda
API P. Oliveira Pág. 39
IST / DEEC / SSC Cap. 6 – Sistemas de Eventos Discretos
Redes de Petri
Mecanismos de modelação
Concorrência Conflito
t1
t1
t2
t2
Redes de Petri
Mecanismos de modelação
t1 t2
m produzir consumir
Secção Secção B
crítica crítica
Redes de Petri
Mecanismos de modelação
s t
produzir consumir n
B
n ler n escrever
n
n
B'
refrigerantes: refrigerante A, p1
t2
t3
f f
e e
f f
e e
equivamentes a
Testes a zero...
Testes a infinito...
API P. Oliveira Pág. 45
IST / DEEC / SSC Cap. 6 – Sistemas de Eventos Discretos
Servidor
aguarda
Servidor
aguarda
q0+q1+ q2 =1
Máquinas de Estados:
Grafos Marcados
Chegada de peças:
a1 - carregar peça em M1
d1 - fim de processamento em M1
M1 M2
r1 - carregar manipulador
r2 - descarregar manipulador R
e carregar M2
d2 - fim de processamento em M2
r3 - manipulador na base
t x1
1 2 3 4
d1 W
B
I
1 2 3 4 t 1 2 3 4 t
r1
x2
1 2 3 4 t
B
r2
I
1 2 3 4 t
1 2 3 4 t
x3
r3
R
C
1 2 3 4 t I
d2 1 2 3 4 t
1 2 3 4 t
. . .
Eventos nova
a1- carregar peça em M1
Idle Idle Idle
d1- fim de processamento em M1
r1- carregar manipulador rejeita
r2 - descarregar manipulador peça r1 r2
e carregar M2 Carrying
d2- fim de processamento em M2 Busy Busy
r3- manipulador na base
d1 d2
Waiting
M1 M2
Returning
R
r3