PUCPR
1
Modelos para analise de SEDs Redes de Petri - RdP
Prof. Eduardo Rocha Loures
Redes de Petri
como ferramenta de Modelagem, Análise e Controle de Sistemas Flexíveis de Manufatura
PUCPR
2
Análise das propriedades das RdP
PUCPR
3
Conjunto de marcações acessíveis de uma RdP
A(R, M0): o conjunto de marcações que se pode atingir da marcação através de uma sequência de disparo
Para uma rede R com marcação inicial M0 define-se
Grafo de alcançabilidade (ou acessibilidade) (ou de marcações acessíveis): nós - marcações acessíveis
arcos - transição de estado
A(R, M0) = {Mi, ∃s M à Mi}
GA(R, M) cujos nos são marcações acessíveis de A(R, M)
s
PUCPR
4
Conjunto de marcações acessiveis de uma RdP
Exemplo: GA(R,M)
a
b
c
d
p1 p2 p3
3
3
M0 = (0 3 0)
0 3 0
1 2 0
2 1 0
3 0 0 a
a a b b
b
c d
0 0 1
PUCPR
5
Exemplos
http://www.informatik.uni-hamburg.de/TGI/PetriNets/introductions/aalst/
PUCPR
6
Exemplos
PUCPR
7
Exemplos
PUCPR
8
Exemplos
PUCPR
9
Exemplos
PUCPR
10
Exemplos
PUCPR
11
Exemplos
PUCPR
12
Exemplos
PUCPR
13
Exemplos
PUCPR
14
Exemplos
PUCPR
15
Exemplos
PUCPR
16
Exemplos
PUCPR
17
Exemplos
PUCPR
18
Exemplos
PUCPR
19
Exemplos
PUCPR
20
Exemplos
PUCPR
21
Exemplos
PUCPR
22
Exemplos
PUCPR
23
Exemplos
PUCPR
24
Exemplos
PUCPR
25
Propriedades dependentes de Mo
Redes livres de bloqueio:
Uma RdP com marcação inicial M0 é livre de bloqueio se para toda marcação M ∈ A(R, M0) existe pelo menos uma transição t ∈ Τ sensibilizada
à permite identificar bloqueios no sistema
PUCPR
26
Exemplo: Célula de fabricação com funcionamento c/ bloqueio:
entrada saída
Propriedades dependentes de Mo
PUCPR
27
Exemplo: Rede de Petri da célula de fabricação:
sequência mortal a partir de M0 : p-c-p
robo-livre
máq-livre
transporte transporte
entrada saída p c t s
M0 = (x 0 1 0 1 0 y)
p1
p2
p3
p4
p5
p6
p7 op
Propriedades dependentes de Mo
PUCPR
28
Exemplo: Rede de Petri da célula de fabricação:
seqüência mortal a partir de M0 : p-c-p
robô-livre
máq-livre
transporte transporte
entrada saída p c t s
M0 = (x 0 1 0 1 0 y)
p1
p2
p3
p4
p5
p6
p7 op
Propriedades dependentes de Mo
PUCPR
29
Exemplo: Rede de Petri da célula de fabricação:
seqüência mortal a partir de M0 : p-c-p
robô-livre
máq-livre
transporte transporte
entrada saída p c t s
M0 = (x 0 1 0 1 0 y)
p1
p2
p3
p4
p5
p6
p7 op
Propriedades dependentes de Mo
PUCPR
30
Exemplo: Rede de Petri da célula de fabricação:
seqüência mortal a partir de M0 : p-c-p à marcação morta
robô-livre
máq-livre
transporte transporte
entrada saída p c t s
M0 = (x 0 1 0 1 0 y)
p1
p2
p3
p4
p5
p6
p7 op
Propriedades dependentes de Mo
PUCPR
31
Redes vivas e quase vivas Uma RdP é viva para uma marcação inicial M0 se toda transição t ∈ Τ permanece sempre potencialmente sensibilizável
⇒ se uma rede é não viva, existem transições que deixam de ser sensibilizáveis
• propriedade permite checar operacionalidade do sistema • Uma RdP viva garante que nenhum bloqueio ocorre • Garante a inexistência de lugares mortos
2 2 t t
não sensibilizável sensibilizável
Propriedades dependentes de Mo
PUCPR
32
Exemplos:
p1
p2 p3
p4
Rede viva p/ M0 = (1 0 0 1)
p1
p3 p2
Rede não-viva p/ M0 = (1 0 0)
Propriedades dependentes de Mo
PUCPR
33
Redes vivas e quase vivas
Uma RdP é quase-viva para uma marcação inicial M0 se toda transição t ∈ Τ é potencialmente sensibilizável pelo menos uma vez
Propriedades dependentes de Mo
PUCPR
34
Exemplos: Mo=p3p4 transição d , RdP quase viva
Elemento fortemente conexo
Propriedades dependentes de Mo
PUCPR
35
Redes reinicializáveis Uma RdP é reinicializável para uma marcação inicial M0 se seu grafo de marcação acessível é fortemente conexo (marcação inicial é sempre reatingível)
Exemplo: Rede não-reinicializável p/ M0 = (1 0 0 1)
1001 a
0101
0110
1010 b
a c
p1
p2 p3
p4
a
b
c
Propriedades dependentes de Mo
PUCPR
36
Marcação / Estado de recepção
Uma marcação acessivel M’ de A(R, M) é um estado de recepção se ele é acessivel de qualquer marcação acessivel M’’ de A (R,M). Se o estado de recepção é indicado pela marcação inicial Mo, o sistema (RdP) pode ser dito reinicializável.
Propriedades dependentes de Mo
PUCPR
37
Redes k-limitadas Um lugar p ∈ P de uma RdP é k-limitado para uma marcação inicial M0 se ∀ marcação acessível M’, M’∈(p) ≤ k Uma RdP é k-limitada se todos seus lugares são k-limitados Para o caso k = 1, diz-se que o lugar ou a rede é binária (safe)
• propriedade permite checar p.ex. limitação de buffers
Exemplo: p1
p3 p2
Rede ilimitada p/ M0 = (100)
Propriedades dependentes de Mo
PUCPR
38
Propriedades independentes de Mo – Propriedades estruturais
Invariantes de lugar:
M(p1) + M(p2) + M(p4) + M(p6) + M(p7) = constante M(p2) + M(p3) + M(p6) = constante M(p4) + M(p5) = constante
robo-livre
máq-livre
transporte transporte
entrada saída p c t s
p1
p2
p3
p4
p5
p6
p7 op
PUCPR
39
Invariantes de lugar: Elementos nas somas são independentes de M0
e definem os invariantes de lugar Valor das constantes depende de M0 Componente conservador (invariante linear de lugar): wT.C = 0,
onde C é a matriz de incidência e zT um vetor de tamanho igual ao numero de lugares wT = [w1, w2,...,wn]
• propriedade permite • checar coerência do modelo • ganhar conhecimento sobre o sistema
Propriedades independentes de Mo – Propriedades estruturais
PUCPR
40
Invariantes de lugar: No exemplo: wT = [w1, w2, w3, w4, w5, w6, w7] . C = 0
M(p1) + M(p2) + M(p4) + M(p6) + M(p7) = constante indica o número e posição de pallets no sistema
M(p2) + M(p3) + M(p6) = constante
indica o número e condição do(s) robô(s) no sistema
M(p4) + M(p5) = constante
indica o número e condição da(s) máquina(s) no sistema
Propriedades independentes de Mo – Propriedades estruturais
PUCPR
41
Invariantes de transição: Um invariante de transição é uma sequência de disparos de transições que não modifica a marcação da rede.
• permite identificar comportamentos cíclicos do sistema
Corresponde a uma sequência cíclica de eventos que pode se repetir indefinidamente Componente repetitivo estacionário (invariante de transição):
C. zT = 0 onde C é a matriz de incidência e wT um vetor de tamanho igual ao numero de
transições zT = [z1, z2,...,zn]
(ver exemplo da célula de fabricação)
Propriedades independentes de Mo – Propriedades estruturais
PUCPR
42
Análise de modelos de manufatura
PUCPR
43
Célula de fabricação
Modelo
Matriz de incidência
C Invariante de lugar: [w1, w2, w3, w4, w5, w6] . C = 0 Invariante de transição: C. [z1, z2, z3, z4, z5, z6] = 0
PUCPR
44
Célula de fabricação Invariante de transição C. zT = 0
Solução não negativa: z1=z2=z3=z4=z5=z6
• Para reencontrar uma marcação é necessário disparar todas as transições um número igual de vezes • Mostra que o sistema retorna ao seu estado inicial assim que ele fabrique um numero exato de séries (P1, P2, P3)
PUCPR
45
Célula de fabricação
Solução não negativa: w1=w2=w3=0 w4=w5=w6
M(P4)+M(P5)+M(P6) = cte = 1
• Única combinação linear de marcações que resta constante ao longo da evolução do sistema
• Significa que o circuito elementar <P6,t2,P4,t4,P5,t6,P6> contém sempre somente 1 ficha
Invariante de lugar wT . C = 0
PUCPR
46
Máquina sujeita à falhas Matriz de incidência
Arvore de recobrimento ou cobertura
Grafo de acessibilidade
Circuito: funcionamento normal Circuito: estado de falha
C
PUCPR
47
Máquina sujeita à falhas Invariantes de lugar wT.C = 0 :
• Solução não negativa: W=[1,1,1,1] e todos os seu multiplos inteiros • Como W.MT = W. MoT para qualquer M, W.MT = 1
• Significa que existe sempre apenas 1 ficha: ou representando que existe uma peça em espera ou fabricação ou a máquina está livre
- w1 + w2 = 0
- w2 + w3 = 0
w1 - w3 = 0
w2 - w4 = 0
- w2 + w4 = 0
PUCPR
48
Técnicas de análise
PUCPR
49
• Prova de que a RdP é k-limitada: árvore de cobertura • Se a RdP é k-limitada -> construção do GA (R;Mo) (grafo de acessibilidade) • Mostrar que GA é fortemente conexo • Mostrar que toda ti ∈ T aparece pelo menos uma vez
à RdP é • k-limitada • reinicializável • viva
• O problema de explosão combinatória de estados pode ser solucionado por técnicas de redução de RdP
Técnicas de Análise
PUCPR
50
p1
p2
p3
p4
t1
t2
t3
[ ]0001
Árvore de Cobertura (State Coverability): Dada uma RdP N com estado inicial M0, o estado M’ diz-se coberto se existirem M ∈ Α(R,X0) tais que M(pi) ≥ M’(pi) para todo o i=1,...,n.
Técnicas de Análise
O procedimento (algoritmo) para quando:
• volta à marcação inicial • marcação resultando superior à marcação do ramo
PUCPR
51
Árvore de Cobertura: Algoritmo mais detalhado
Técnicas de Análise
1. Indique a marcação inicial Mo como sendo a raiz e com o tag “new” 2. Enquanto a marcação “new” existe faça:
• Selecione uma marcação “new” M • Se M é idêntico à outra marcação na arvore, então identifique M com o tag
“old” e va para outra marcação “new” • Se a partir de M nenhuma transição é habilitada identifique M com o tag
“deadend” ou “terminal” • Para cada transição t a partir da marcação M faça:
• Obtenha a marcação M’ que resulta do disparo de t • Se no caminho de Mo até M existe uma marcação M’’tal que M’(p) ≥
M’’ (p) para cada lugar p, e M’ ≠ M’’ então substitua M’(p) por w para cada p sempre que M’(p) > M’’(p)
• Coloque M’ como um no’ , trace um arco de M até M’ indicando no mesmo t e identifique M’ com o tag “new”
• Remova o tag “new” de M
PUCPR
52
[ ]0001
p1
p2
p3
p4
t1
t2
t3
t1
[ ]0110
Árvore de Cobertura: Ex. 1
PUCPR
53
[ ]0001t1
[ ]0110p1
p2
p3
p4
t1
t2
t3
p1
p2
p3
p4
t1
t2
t3
[ ]001 ω
t2 t3
[ ]1100
Árvore de Cobertura : Ex. 1
PUCPR
54
[ ]0001t1
[ ]0110p1
p2
p3
p4
t1
t2
t3
p1
p2
p3
p4
t1
t2
t3
[ ]001 ω
t2 t3
[ ]1100t1
[ ]010 ω
[ ]001 ω
t2 t3
[ ]100 ωterminal
duplicado terminal
Árvore de Cobertura : Ex. 1
PUCPR
55
Árvore de Cobertura : Ex. 2
PUCPR
56
Árvore de Cobertura : Ex. 3
PUCPR
57
Árvore de Cobertura : Conclusões
1. A RdP é k-limitada se e somente se w não aparece em nenhum no’ • Pode-se encontrar o máximo número de fichas em um lugar através da
inspeção dos nós. Digamos que seja 3, logo a RdP é 3-limitada • A RdP k-ilimitada se é encontrada uma marcação na árvore de cobertura tal
que M(p) = w 2. A rede é safe (binária) se e somente se cada no’ da árvore contém somente zeros e
uns 3. Se nenhum “deadend” contém w, o número de diferentes “deadends” na árvore é o
número de marcações mortas na RdP. • Se uma marcação “deadend” contém w então a RdP contém infinito número
de marcações mortas 4. Uma transição t é morta (não viva) se ela não aparece como tag nos arcos da árvore 5. Se dado dois nós na árvore de recobrimento, existe um caminho direto e todas as
trasições estão presentes, logo a RdP é viva 6. Se existe um caminho direto de qualquer no’ para marcação inicial na árvore de
cobertura sem o símbolo w, a RdP é reversivel (reinicializavel)
PUCPR
58
Árvore de Cobertura Exemplo Linha de Fabr. 2 Máq.
PUCPR
59
Árvore de Cobertura Exemplo Célula e produção robotizada
PUCPR
60
Árvore de Cobertura Exemplo Célula e produção robotizada
K = 1
pallet disponivel
K = 2
pallets disponiveis
PUCPR
61
Ferramentas de Simulação e Analise
PUCPR
62
Ferramentas
PUCPR
63
Ferramentas
PUCPR
64
RdP Temporizadas - Temporais
PUCPR
65
RdP Temporizadas
Definição formal: Rt = < R,Θf >
R é uma RdP < P, T, Pre, Post, X0>
Θf : T →Q+ é a função duração de disparo, que associa a cada Transição um número racional que descreve a duração do disparo.
Esta definição pode ser extendida para RdP P-temporizadas e Arco-temporizadas.
PUCPR
66
RdP Temporizadas Interpretação do tempo
• Timed Arc (de um lugar para transição): a ficha no lugar necessita esperar um tempo τ para habilitar a transição
• Timed Arc (de transição para um lugar): a ficha gerada pelo disparo da transição necessita esperar um tempo τ para poder ir para o lugar
• Modelagem de processo de transporte ou fluxo de material que leva um tempo.
PUCPR
67
RdP Temporizadas Interpretações análogas: Timed Place, Timed Arc
à Timed Transition
Timed Place Timed Arc
Timed Arc
PUCPR
68
RdP Temporais Definição formal:
RTL = <R, I>
R é uma RdP <P, T, Pre, Post, X0> I é um intervalo de tempo θ(t) = [θmin(t), θmax(t)] associado a cada transição o qual descreve uma duração de sensibilização
fim2[θ, θ] fim1[0, 0] Watchdog
PUCPR
69
Comparação entre RdP temporizadas e temporais
[ 2 ] [ 0 ] fim2[θ, θ] fim1[0, 0]
temporizada temporal
A RdP ordinário é obtida se o intervalo de tempo for [0, ∝)
PUCPR
70
Redução de RdP
PUCPR
71
Redução de RdP
Para sistemas mais complexos o grafo de marcações acessiveis pode-se tornar muito grande à problema de explosão combinatoria e esforço computacional Solução: aplicação de regras de redução de tal forma à que a RdP reduzida seja equivalente à RdP original do ponto de vista de propriedades
PUCPR
72
Redução de RdP
Lugar substituível
),(),(Pre, es tqPosttqPq ≤∈∀
o par tets é substituído pela transição tes tal que:
),(),(Pre ),(),(),(Pre ),(Pre ,
ssees
ees
tqPosttqtqPosttqPosttqtqPq
+−=
=∈∀
PUCPR
73
a b
c d
Redução de RdP
Lugar substituível
ac ad bc bd
PUCPR
74
Redução de RdP
Lugar implícito É um lugar cuja marcação é a combinação linear de outros lugares e que não introduz nenhuma condição suplementar as transições de entrada e saída.
a
b
c
p4
p2
p3
p5
p1
a
b
c
p4
p2
p3
p5
a
b
c
p4
p2
p3
p5
p1 d
PUCPR
75
Redução de RdP
Transições idênticas Duas transições são consideradas idênticas sse as colunas correspondentes das matrizes Pre e Post são idênticas.
t1 t1 t2
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
00001111
Pre
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
11110000
Post
PUCPR
76
Redução de RdP
Regras de redução: a) Fusão / aumento de lugares em série b) Fusão / aumento de transições em série c) Fusão / aumento de lugares em paralelo d) Fusão / aumento de transições em paralelo e) Eliminação / adição de lugares em meio-loop f) Eliminação / adição de transições em meio-loop Estas regras preservam as propriedades:
k-limitada, vivacidade e reiniciabilidade
PUCPR
77
Redução de RdP
PUCPR
78
Redução de RdP: exemplo 1
PUCPR
79
Redução de RdP: exemplo 2
PUCPR
80
Redes Interpretadas
PUCPR
81
Redes Interpretadas
Redes de Petri Ordinária: • Representa apenas as estruturas. • Os conflitos não são resolvidos. • A transição é disparada desde que ela seja sensibilizada.
Redes de Petri Interpretadas: • São associadas condições às transições. • Pode-se representar restrições ligadas ao ambiente. • O tempo é um elemento que pode ser representado.
PUCPR
82
Redes Interpretadas
Sistema modelado
Rede de Controle
Rede de Dados
Ambiente externo
Controle: descreve os encadeamentos potenciais de eventos e de atividades.
Dados: descreve as estruturas de dados e os cálculos que são feitos sobre eles, sem explicitar em quais instantes eles são realizados.
PUCPR
83
B1 e B2 são acionadas alternadamente LSH=1 tanque no nível alto e bomba deve ser acionada LSL=1 tanque no nível baixo e bomba deve ser desligada Espera 2 segundo antes de acionar a bomba de reserva PSH=1 pressão está alta e bombas devem ser desligadas. Esse sinal será ignorado se restar até 30 segundo para o fim
Redes Interpretadas: Exemplo
LSH
LSL
PSH
B1
B2
ti Nome Ci,Ai t1 B2-Resp_Desligada (;B2_ligada=0&lsl=0)
t2 B2_Rec_Sinal_Liga (liga_B2=1;liga_B2=0)
t3 B2-Resp_Ligada (;B2_ligada=1&lsh=0)
t4 B2_Rec_Sinal_Desliga
(desl_B2=1;desl_B2=0)
t5 B1-Resp_Ligada (;B1_ligada=1&lsh=0)
t6 B1_Rec_Sinal_Liga (liga_B1=1;liga_B1=0)
t7 B1-Resp_Desligada (;B1_ligada=0&lsl=0)
t8 B1_Rec_Sinal_Desliga
(desl_B1=1;desl_B1=0)
Env Sinal Liga B2:
Lsh=1&b=2 Liga_B2=1&b=1
Bonbas Desl: B1_ligada=0 B2_ligada=0
Liga Outra_B [2]
Env Sinal Liga B2:
Lsh=1&b=2 Liga_B2=1&b=1
Rec Sinal B2: B2_Ligada=1
Lsl Desl B2: Lsl=1&b=1 Desl_B2=1
Lsl Desl B1: Lsh=1&b=2 Desl_B1=1
Psh Desl B2: psh=1&b=1 Desl_B2=1
Psh Desl B1: psh=1&b=2 Desl_B1=1
Rec Sinal B1: B1_Ligada=1
Psh atua psh=1
Verifica psh [30]
Psh não confirma Psh=0
PUCPR
84
Redes Interpretadas: Exemplo
B2-Desligando
B2-Ligado
B2-Desligado
B2-Ligando
TQ_Vazio
TQ_Enchendo
TQ_esvaziando TQ_cheio
B1-Ligado B1-Ligando
B1-Desligando B1-Desligada
lsh=1
lsl=1
Top Related