Upload
alexandre-lomeu
View
218
Download
0
Embed Size (px)
Citation preview
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
1/102
1
DAS 5202DAS 5202 – – Modelagem eModelagem e
Controle de SistemasControle de Sistemas
AutomatizadosAutomatizados
Jean-Marie Farines
José Eduardo Ribeiro Cury
Max Hering de Queiroz
22
OrganizaçãoOrganização
• Parte 1 (SED): Sistemas a Eventos Discretos(SEDs):conceituação, classificação, propriedades, exemplos;
• Parte 2 (Redes de Petri e verificação): Redes de Petri:definições, propriedades, análise, implementação,
modelagem; verificação de propriedades;• Parte 3 (Autômatos e controle supervisório): Modelos
Autômatos de Estados Finitos: conceituação básica,operações, controle supervisório de SEDs baseado emautômatos;
• Parte 4 (Trabalho): Trabalho a ser desenvolvido porequipes e apresentado oralmente pelas equipes, em aula,cada equipe tendo 20 minutos para sua apresentação.
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
2/102
2
33
Controle & AutomaçãoControle & Automação
SistemaSistemaentradas saídas
Controlereferência
perturbação
realimentação
44
Problemas de EngenhariaProblemas de Engenharia
• Modelagem e Análise
• Projeto e Síntese
• Controle
• Avaliação de Desempenho
• Otimização
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
3/102
3
55
ModelosModelos
• Sistemas Dinâmicos de Variáveis Contínuas
• Sistemas Dinâmicos a Eventos Discretos
• Sistemas Híbridos
66
ModelosModelos
tempo
estado
d x/d t = f ( x,u,t )
γ
γ
x1
x2
x3
x4
t 1 t 2 t 3 t 4 t 5 t 6
x0
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
4/102
4
77
Sistemas Dinâmicos de Variáveis ContínuasSistemas Dinâmicos de Variáveis Contínuas
• variáveis contínuas:
– temperatura, vazão, pressão, nível, velocidade,
etc
• dirigido pelo tempo:
– estado evolui continuamente
• modelos matemáticos:
– equações diferenciais/a diferenças
88
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
5/102
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
6/102
6
1111
1212
Sistemas HíbridosSistemas Híbridos
• Dinâmica Contínua
• Dinâmica Discreta
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
7/102
7
Exemplos deExemplos de SEDsSEDs
1414
Sistema de Filas
• Origem no seguinte fato: o uso de certos recursos
exige espera.
• Os três elementos básicos de um sistema de filassão:
– 1. As entidades que devem esperar pelo uso de recursos
(clientes);
– 2. Os recursos pelos quais se espera. Fornecem serviço
aos clientes (servidores);
– 3. O espaço onde a espera se faz (fila).
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
8/102
8
1515
Diagrama representativo de uma fila
1616
Eventos e estados
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
9/102
9
1717
Sistemas de Redes de FilasSistemas de Redes de Filas
1818
Sistemas de manufaturaSistemas de manufatura
• Sistemas descritos por modelos de filas.
– clientes: peças ou itens; ”pallets”;
– servidores: máquinas; dispositivos de manuseioe transporte (robôs, esteiras, ...);
– filas: armazéns; ”buffers”.
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
10/102
10
1919
Linha de transferênciaLinha de transferência
2020
Sistema de TráfegoSistema de Tráfego
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
11/102
11
2121
Eventos e EstadosEventos e Estados
2222
Modelos para SEDModelos para SED
• Modelos lógicos
– Orientados para a análise do comportamento
lógico (sequencial) do sistema• Modelos de Avaliação de Desempenho
– Orientados para a análise de performance
(quantitativa) do sistema
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
12/102
12
2323
Questões de análiseQuestões de análise
• Modelos lógicos – Estado proibido ou desejado
• Pode um certo estado ser alcançado?
– Vivacidade do sistema• O sistema está livre de bloqueio?
• Modelos de Avaliação de Desempenho
– Índices de desempenho• Qual o lead-time, estoque médio de “buffers”, taxa de
produção, taxa de ocupação de equipamentos, eficiência, etc ?
2424
AbordagensAbordagens
• Modelos lógicos – Redes de Petri
– Autômatos (Teoria de Controle Supervisório)
– Lógica Temporal
• Modelos de Avaliação de Desempenho – Modelos Analíticos
• Cadeias de Markov, Redes de Filas, etc
– Modelos p/ Simulação• Arena, Automod, etc
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
13/102
13
2525
Redes deRedes de PetriPetri
• Lugar, Transição e Ficha
• Regra de habilitação
• Regra de disparo
t
2626
ExemploExemplo
...
Par ts
Mach ine 1Buf fe r
R o b o t
Mach ine 2
Fina l P roduc ts
M1 M2B
R
I
t1 t2 t3 t4
t5
t6 t7
M1 M2B
R
I
t1 t2 t3 t4
t5
t6 t7
M1 M2B
R
I
t1 t2 t3 t4
t5
t6 t7
M1 M2B
R
I
t1 t2 t3 t4
t5
t6 t7
M1 M2B
R
I
t1 t2 t3 t4
t5
t6 t7
M1 M2B
R
I
t1 t2 t3 t4
t5
t6 t7
M1 M2B
R
I
t1 t2 t3 t4
t5
t6 t7
M1 M2B
R
I
t1 t2 t3 t4
t5
t6 t7
M1 M2B
R
I
t1 t2 t3 t4
t5
t6 t7
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
14/102
14
2727
Exemplo: Redes de FilasExemplo: Redes de Filas
λ μ
λ μ
A
B
μ
μ
λ
λ
2μ
λ
λ C
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
15/102
1
Modelagem e Controle de Sistemas AutomatizadosModelagem e Controle de Sistemas Automatizados
DAS5202 - ECA - UFSC
Aula 2
Linguagens
2DAS5202 - ECA - UFSC
Alfabetos
Um alfabeto é um conjunto finito enão-vazio de símbolos (eventos).
Exemplos: Σ = {0, 1}
Σ = {a, b, ..., z }
Σ = {α, β, ..., ω}
caracteres ASCII
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
16/102
2
3DAS5202 - ECA - UFSC
Cadeias Uma cadeia (ou palavra) é uma seqüência finita
de símbolos de um alfabeto.
ε: cadeia vazia
|s|: comprimento da cadeia s
Concatenação de u (αββ) e v (γβ) é dada por uv
(αββγβ)
εs = sε = s: identidade da concatenação
u é um prefixo de s (u
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
17/102
3
5DAS5202 - ECA - UFSC
Fechamento de Kleene
Σ*: conjunto de todas as cadeiassobre um alfabeto Σ.
Ex.: {0,1}* = {ε,0,1,00,01,10,11,000,...}
Σ* = Σ0 ∪ Σ1 ∪ Σ2 ∪ ...
Σ+ = Σ1 ∪ Σ2 ∪ Σ3 ∪ ...
Σ* = Σ+ ∪ {ε}
6DAS5202 - ECA - UFSC
Linguagens
Uma linguagem L sobre Σ é umsubconjunto de Σ*. (L ⊆ Σ*)
Ex.: Σ*, ∅, {ε}
Português
C
Para Σ = {α, β, γ}:• L1 = {ε, α, αββ}
• L2 = {todas as possíveis cadeias finitas iniciadaspelo símbolo α}
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
18/102
4
7DAS5202 - ECA - UFSC
Operações sobre linguagens
Sejam A, B ⊆ Σ*
Concatenação:
AB := {s: s = uv , u ∈ A, v ∈ B}
Prefixo-Fechamento:
A := {s: ∃t ∈ Σ*, st ∈ A}
Fechamento de Kleene: A* = ∪n=0,∞A
n, onde
A0 = {ε} e An = An-1A
Operações usuais sobre conjuntos
8DAS5202 - ECA - UFSC
Exemplo
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
19/102
5
9DAS5202 - ECA - UFSC
Representação de SEDs porLinguagens
10DAS5202 - ECA - UFSC
Propriedades de L e Lm
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
20/102
6
11DAS5202 - ECA - UFSC
Exemplos
Esteira da linha de produção decervejas
Robô inserido num sistema demanufatura
12DAS5202 - ECA - UFSC
Robô
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
21/102
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
22/102
1
1
Modelagem e Controle de Sistemas AutomatizadosModelagem e Controle de Sistemas Automatizados
DAS5202 - UFSC
Aula 3
Expressões Regulares
DAS5202 - UFSC 2
Convenção
Se u e v são cadeias de eventos:
u = {u}
(u + v) = {u, v} = {u} ∪ {v}
u* = {ε, u, uu, uuu, ...} uv = {uv}
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
23/102
2
DAS5202 - UFSC 3
Expressão Regular
Definição Recursiva:
1. São expressões regulares:
a) ∅: conjunto vazio,
b) ε: linguagem {ε},
c) σ: linguagem {σ}, ∀σ∈Σ;
2. Se r e s são expressões regulares, então
rs, r *, s*, (r + s) são expressões regulares;
3. Toda expressão regular é obtida pela
aplicação das regras 1 e 2 um número finito
de vezes.
DAS5202 - UFSC 4
Exemplos
Σ = {α, β, γ}
(α + β)γ* = {α,β,αγ,βγ,αγγ,βγγ,αγγγ,βγγγ,...}
(αβ)* + γ = {ε,γ,αβ,αβαβ,αβαβαβ,...}
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
24/102
3
DAS5202 - UFSC 5
Ordem de precedência
1. Fechamento de Kleene
2. Concatenação
3. União
Ex.:
α + βγ* = (α + (β(γ)*))
DAS5202 - UFSC 6
Exemplo
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
25/102
4
DAS5202 - UFSC 7
Exemplo
Σ = {α, β}
α: acesso de uma tarefa a um recurso
β: acesso de outra tarefa ao mesmo recurso
A = (αβ)*
B = (α + β)*
C = (αβ)* + (βα)*
Encontre uma expressão regular que indiqueque a diferença entre os números de acessosdas duas tarefas não seja superior a 1,mesmo para cadeias incompletas.
DAS5202 - UFSC 8
Exemplo
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
26/102
5
DAS5202 - UFSC 9
Linguagem regular
Definição:
Qualquer linguagem que possa ser descrita
como uma expressão regular é uma
linguagem regular .
DAS5202 - UFSC 10
Questões
Se L é uma linguagem finita, então L é
regular?
Para qualquer alfabeto Σ, Σ* é uma
linguagem regular? Qualquer linguagem é uma linguagem
regular?
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
27/102
1
Modelagem e Controle de SistemasModelagem e Controle de Sistemas
AutomatizadosAutomatizados
DAS5202 - UFSC
Aula 4
Autômatos
DAS5202 - UFSC 2
Autômatos Determinísticos de Estados
Finitos (ADEF)
Um ADEF é uma quíntuplaG = (X, Σ, f , x0, Xm)
X = conjunto não-vazio e finito de estados;
Σ = alfabeto;
f : X × Σ → X = função de transição (possivelmente parcial)de estados, definida apenas para alguns elementos deX × Σ (notação: f (q, σ)! ) ;
x0 ∈ X = estado inicial;
Xm ⊆ X = conjunto de estados marcados ou finais.
Função de eventos factíveis ΣG: X → 2Σ:
ΣG(x) = {σ: σ ∈ Σ e f (x, σ)! }
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
28/102
2
DAS5202 - UFSC 3
Exemplo
G = (X, Σ, f , x0, Xm)
X = {x, y, z}
Σ = {α, β, γ}
f (x,α) = x, f (x,γ) = z,f (y,α) = x, f (y,β) = y,f (z,β) = z, f (z,α) = f (z,γ) = y,
x0 = x Xm = {x, z}
ΣG(x) = {α,γ}, ΣG(y) = {α,β}, ΣG(z) = {α,β,γ}
DAS5202 - UFSC 4
Diagrama de Transição de Estado
São grafos direcionados onde os nós representam os estados e os
ramos representam os eventos
Exemplo:
x
z
yα
α,γ
γ
β
βα
G = (X, Σ, f , x0, Xm) X = {x, y, z}
Σ = {α, β, γ}
f (x,α) = x, f (x,γ) = z,f (y,α) = x, f (y,β) = y,f (z,β) = z, f (z,α) = f (z,γ) = y,
x0 = x
Xm = {x, z}
ΣG(x) = {α,γ}, ΣG(y) = {α,β},ΣG(z) = {α,β,γ}
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
29/102
3
DAS5202 - UFSC 5
Extensão da função de transição para cadeias
f ^: X × Σ* → X
f ^(x,ε) = x,
f ^(x,sσ) = f (f
^(x,s),σ)
Exemplo:
f ^(x, γβα) = f (f
^(x, γβ),α) = f (f (f
^(x, γ),β),α)
= f (f (f (f ^(x,ε), γ),β),α) = f (f (f (x, γ),β),α)
= f (f (z,β),α) = f (z,α) = y
DAS5202 - UFSC 6
Linguagens de um autômato
Linguagem Gerada:
L(G) = {s: s ∈ Σ* e f ^(x0, s)!}
Linguagem Marcada:
Lm(G) = {s: s ∈ L(G) e f ^(x0, s) ∈ Xm}
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
30/102
4
DAS5202 - UFSC 7
Exemplo
Máquina com três estados
Lm(G) = (sf + sbr)*
representa os ciclos de trabalho realizados pelo sistema
L(G) = (sf + sbr)*(ε + s + sb)
representa o conjunto de todas as seqüências fisicamente
possíveis de ocorrer no sistema
Is
W
br
D
f
DAS5202 - UFSC 8
Exemplo Seja Σ = {α, β, γ}. Uma tarefa é definida como
qualquer cadeia que inicie uma seqüência de 3eventos, iniciada por α, seguida por β ou γ eentão α.
Expressão Regular: α(β+γ)α(α+β+γ)* Autômato:
α
γ
βα,β,γ
0 1
2
3
4
α
α
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
31/102
5
DAS5202 - UFSC 9
Exercício
Construa um autômato G tal que L(G) e Lm(G)
correspondam aos comportamentos gerado e
marcado do robô abaixo:
DAS5202 - UFSC 1 0
Questões
Toda linguagem regular pode serreconhecida por um autômatodeterminístico de estados finitos?
Toda linguagem reconhecida por umautômato determinístico de estados finitosé regular?
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
32/102
6
DAS5202 - UFSC 1 1
Teorema de Kleene (1956)
Se L é regular, existe um autômato G
com um número finito de estados tal que
Lm(G) = L. Se G tem um número finito de
estados, então Lm(G) é regular.
DAS5202 - UFSC 1 2
Exemplo
L(G) = [b*aa*b]*(ε + b*aa*)
Lm(G) = [b*aa*b]*b*aa*
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
33/102
7
DAS5202 - UFSC 1 3
Exemplo: fila infinita
Sistema de fila
X = {0, 1, 2, ...}
Σ = {a, d}
f (x, a) = x + 1 para todo x ≥ 0
f (x, d) = x - 1 se x > 0
x0 = 0
Xm = {0}
a d
0a
1
d
a2
d
a3
d
a...
d
DAS5202 - UFSC 1 4
Exercício
Lm(G) = (a+b)*ab
L(G) = (a+b)*
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
34/102
1
Modelagem e Controle de SistemasModelagem e Controle de Sistemas
AutomatizadosAutomatizados
DAS5202 - UFSC
Aula 5
Determinização e
Minimização de Autômatos
DAS5202 - UFSC 2
Autômato Não-Determinístico de Estados Finitos
Um ANDEF é uma quíntuplaG = ( X , Σ, f , x 0, X m) X = conjunto não-vazio e finito de
estados;
Σ = alfabeto; f : X × Σ → 2 X = função de transição de
estados;
x 0 ∈ X = estado inicial;
Xm ⊆ X = conjunto de estados marcadosou finais.
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
35/102
2
DAS5202 - UFSC 3
Exemplo G = ( X , Σ, f , x 0, X m)
X = {0, 1}
Σ = {α, β}
f (0,α) = {0,1}, f (0,β) = ∅,f (1,α) = ∅, f (1,β) = {0},
x 0 = 0
X m = {0}
0 1
α
β
α
DAS5202 - UFSC 4
Extensão da função de transição para cadeias
f ^: X × Σ* → 2 X
f ^( x ,ε) = { x },
f ^( x ,sσ) = { z : z ∈ f (y,σ), y ∈ f
^( x ,s)} = Uy ∈f ̂ ( x ,s)f (y ,σ)
Exemplo:
f ^(0,ααβ) = { z : z ∈ f(y,β), y ∈ f
^(0,αα)}
= { z : z ∈ f(y,β), y ∈ f ( x ,α) , x ∈ f (0,α )}
= { z : z ∈ f(y,β), y ∈ f ( x ,α) , x ∈{0,1}}
= { z : z ∈ f(y,β), y ∈ {0,1}}
= { z : z ∈ {0}} = {0}
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
36/102
3
DAS5202 - UFSC 5
Equivalência entre ADEF e ANDEF
Questão: É possível que um ANDEF reconheçalinguagens que não são reconhecíveis por algumADEF?
Teorema: Uma linguagem é reconhecida por umautômato não-determinístico de estados finitos see somente se for reconhecida por um autômatodeterminístico de estados finitos.
Corolário: A todo autômato não-determinísticocorresponde um autômato determinísticoequivalente, ou seja, que reconhece a mesmalinguagem.
DAS5202 - UFSC 6
ANDEF → ADEF
Seja um ANDEF N = ( X N, Σ, f N, x 0, X mN). Defina o ADEF D = ( X D, Σ, f D, { x 0}, X mD),
sendo que:
X D = 2 X N
; X mD = {S: S ∈ X D, S ∩ X mN ≠ ∅};
f D(S,σ) = U x ∈S f N( x ,σ). Com isso:
Lm(N) = Lm(D) Para que L(N) = L(D), remover o estado ∅.
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
37/102
4
DAS5202 - UFSC 7
{1}
∅
{0}
{0,1}
Exemplo
{0}
α
β
α,β
{0,1}
α
β
β
α
{0}
α
β
α,β
{0,1}
∅
β
α
DAS5202 - UFSC 8
Mais Exemplos
a
d
0
0
0,1
e
b 0
1
1
1c
0
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
38/102
5
DAS5202 - UFSC 9
Exercício
a
0,1
c1
b0,1
d0,1
DAS5202 - UFSC 10
Equivalência de autômatos
Dois autômatos A e B são equivalentes see somente se L(A) = L(B) e Lm(A) =Lm(B).
Exemplo:
x y
0
0,1
0
1
z w
1 0,1
A:
x yzw0,1
0,1
B:
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
39/102
6
DAS5202 - UFSC 11
Estados Equivalentes
Seja G = ( X , Σ, f , x 0, X m) um AFD e S ⊆ X .Diz-se que o conjunto S é constituído deestados equivalentes em relação a X m se,para quaisquer x , y ∈ S, x ≠ y , e qualquercadeia s: f
^( x , s) ∈ X m ⇔ f
^(y , s) ∈ X m
f ̂ ( x , s)! ⇔ f ̂ (y , s)!
DAS5202 - UFSC 12
Exemplo
Um autômato deve detectar a seqüênciade dígitos 1,2,3
x 0
1
x 121
x 1
2
x 12331
1
x n1
2,3
2,3 2,331 2
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
40/102
7
DAS5202 - UFSC 13
Algoritmo para Identificação de
Estados Equivalentes1. Excluir ( x , y ) para todo x ∈ X m e y ∉ X m2. Para todo par ( x , y ) não excluído em 1:
a) Se o par (f ( x , σ), f (y , σ)) está excluído para algum σ∈Σou não está definido para uma só das componentes,então:
i. Excluir ( x , y );
ii. Excluir todos os pares (w , z ) na lista de ( x , y );
iii. Repetir para cada (w , z ) até que nenhuma exclusão sejapossível.
b) Se (f ( x , σ), f (y , σ)) não está excluído para nenhum σ∈Σentão:
i. Se f ( x , σ) ≠ f (y , σ), então acrescentar ( x , y ) à lista de(f ( x , σ), f (y , σ)) .
DAS5202 - UFSC 14
Exemplo
x 12 x n1 x 1
x 123
x 12
x n1
x 0
x 1
x 0
1
x 121
x 1
2
x 12331
1
x n1
2,3
2,3 2,331 2
X X X X
X(x0, x1)(xn1, x1)X
X
X
X
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
41/102
8
DAS5202 - UFSC 15
Minimização de AFD
1. Eliminar qualquer estado que não possaser alcançado a partir do estado inicial.
2. Particionar os estados restantes emblocos, de modo que:
todos os estados num mesmo bloco sejamequivalentes
e nenhum par de estados de blocos distintosseja equivalente.
DAS5202 - UFSC 16
Exemplo
Um autômato deve detectar a seqüênciade dígitos 1,2,3
x 0
1
x 12
1 x 1
2
x 123
31
1
x n1
2,3
2,3 2,331 2
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
42/102
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
43/102
10
DAS5202 - UFSC 19
Exemplo
G
X
F
X
X
E
X
X
X
XXXG
XXE
XXXF
CBA
H
C
B
XX
XX
X
DAS5202 - UFSC 20
Exemplo
AE
0
C0
BH
0
1
1
F
1
0
G
0
1
1
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
44/102
1
Modelagem e Controle de SistemasModelagem e Controle de Sistemas
AutomatizadosAutomatizados
DAS5202 - UFSC
A u l a 6
Bloqueio e
Composição de autômatos
DAS5202 - UFSC 2
B l o q u e i o
Deadlock: estado x tal que
• ΣG(x) = ∅ e• x ∉ Xm
Livelock: conjunto de estados que
• formam componente fortemente conexa (estadossão todos acessíveis entre si)• não há transição que saia do conjunto• não são marcados
Um autômato é não-bloqueante se
• Lm(G) = L(G) Se um autômato for bloqueante, então pode ocorrer
deadlock e/ou livelock.
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
45/102
2
DAS5202 - UFSC 3
E x e m p l o
Estado 5 é um deadlock Estados 3 e 4 estão envolvidos num livelock
αα ∈ L(G), mas αα ∉ Lm(G)
0 5
α1
γ
2
βγ
α
4
γ
3
α
β
DAS5202 - UFSC 4
A c e s s i b i l i d a d e
Um estado x ∈ X é chamado deacessível se ∃s ∈ Σ* tal que f (x0, s) = x.
Componente Acessível de um autômato: Ac(G) = (Xac
, Σ, f ac
, x0, Xmac)• X
ac= {x∈X: ∃s ∈ Σ* , f (x0, s) = x}
• xmac
= Xac
∩ Xm
• f ac
= f |Xac×Σ→Xac
Um autômato é acessível se Ac(G) = G
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
46/102
3
DAS5202 - UFSC 5
C o a c e s s i b i l i d a d e
Um estado x ∈ X é coacessível se
∃s ∈ Σ* tal que f (x, s) ∈ Xm
.
Um autômato é coacessível se todos os
estados forem coacessíveis.
Um autômato é trim (aparado) se for
acessível e coacessível. Um autômato é não-bloqueante sse
Ac(G) for coacessível.
DAS5202 - UFSC 6
E x e m p l o
Estado 5: não acessível
Estado 4: não coacessível
0 5
α1
γ
2
βγ
α
4
γ
3 β
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
47/102
4
DAS5202 - UFSC 7
E x e m p l o
Componente acessível
0
α1
2
βγ
α
4
γ
3β
DAS5202 - UFSC 8
E x e m p l o
autômato Trim
0
α1
2
βγ
α
3
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
48/102
5
DAS5202 - UFSC 9
P r o b l e m a
Cozinheiro C1: pega o garfo (g1), pega a faca (f 1) e
devolve ambos talheres (d1) após a operação.
Cozinheiro C2: pega a faca (f 2), pega o garfo (g2)e
devolve ambos talheres (d2) após a operação. Controle: cada recurso não pode ser pego por ambos
usuários ao mesmo tempo
C1 C2
g1, f 1
d1
f 2, g2
d2
DAS5202 - UFSC 10
Q u e s t õe s
1. Existe bloqueio?
2. Modelar por um autômato o
comportamento do sistema.3. Como evitar o bloqueio?
4. Qual o modelo resultante?
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
49/102
6
DAS5202 - UFSC 11
So l ução
00
g10210
11 12 22f 1
d1
g2
f 2
g1f 2
d2
DAS5202 - UFSC 12
So l ução
00
g10210
11 22f 1
d1
g2
f 2d2
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
50/102
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
51/102
8
DAS5202 - UFSC 15
O b s e r v a çõe s
G = G1 || G2 é obtido fazendo-se a evolução em paralelodos autômatos G1 e G2, na qual um evento comum aosdois autômatos só é executado se ambos o executaremsimultaneamente.
Alfabetos idênticos ⇒ interseção.
Alfabetos disjuntos ⇒ composição assíncrona.
Propriedades:
• G1 || G1 ≡ G1• G1 || G2 ≡ G2 || G1• (G1 || G2) || G3 ≡ G1 || (G2 || G3)
DAS5202 - UFSC 16
P r o b l e m a
Cozinheiro C1: pega o garfo (g1), pega a faca (f 1) edevolve ambos talheres (d1) após a operação.
Cozinheiro C2: pega a faca (f 2), pega o garfo (g2)edevolve ambos talheres (d2) após a operação.
Controle: cada recurso não pode ser pego por ambosusuários ao mesmo tempo
C1 C2
g1, f 1
d1
f 2, g2
d2
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
52/102
9
DAS5202 - UFSC 17
Mod e l o s L o c a i s
R F C
g2f 2
d2
G2
R G Cg1 f 1
d1
G10 1
f 1, f 2
d1, d2
Gf
0 1
g1, g2
d1, d2
Gg
DAS5202 - UFSC 18
Pr o d u t o S ín c r o n o G g || G f
0 1
f 1, f 2
d1, d2
Gf
0 1
g1, g2
d1, d2
Gg 00
01
g1, g2
d1, d210
11
f 1, f 2
g1, g2f 1, f 2
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
53/102
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
54/102
11
DAS5202 - UFSC 21
RR
00
g1 RF01
GR
10
CR
11
GF
11
RC
11
f 1
d1
g2
f 2
g1f 2
d2
So l ução
DAS5202 - UFSC 22
L óg i c a d e c o n t r o l e
RR
00
g1 RF01
GR
10
CR
11
RC
11
f 1
d1
g2
f 2
g1f 2
d2
f 2 g1
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
55/102
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
56/102
2
DAS5202 - UFSC 3
Abordagem Global X Abordagem Local
• Abordagem global: procura-se por umADEF que represente todas as seqüências possíveis de eventos que ele pode gerar etarefas que pode completar.
• Tarefa de grande complexidade para sistemas demaior porte;
• Inclusão ou retirada de equipamentos, oumodificação em sua lógica de controle, requer areconstrução do modelo como um todo.
DAS5202 - UFSC 4
Abordagem Global X Abordagem Local
• Abordagem local: parte do princípio de que se pode
construir modelos locais para cada sub-sistema e
restrição de coordenação, e que se pode compor os
mesmos para obter um modelo do sistema global.• Maior facilidade na obtenção de modelos de sistemas de
grande porte;
• Alterações num subsistema ou em alguma restrição
somente exigirão uma mudança no modelo especıfico
correspondente.
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
57/102
3
DAS5202 - UFSC 5
Modelagem da Planta
1. Identificar o conjunto de sub-sistemas ou
equipamentos envolvidos no sistema a
controlar;
2. Construir o modelo básico ADEF Gi, de cada
equipamento i envolvido no sistema;
3. Obter o modelo da planta G a ser controlada,através da composição síncrona de todos os
ADEF Gi.
DAS5202 - UFSC 6
Exemplo: Sistema de Manufatura
Suponha um sistema constituído por duas
máquinas e um buffer
Onde:
{a1,a2}⇒ indicam início de operação
{b1,b2}⇒ indicam fim de operação e depósito de peça
no buffer (b1)
M2M1 Ba1 b1 a2 b2
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
58/102
4
DAS5202 - UFSC 7
Exemplo: Sistema de Manufatura
Máquina M1:
Máquina M2:
M2M1 Ba1 b1 a2 b2
I W
a1
b1
G1:
a2
b2
G2:
I W
DAS5202 - UFSC 8
Exemplo: Sistema de Manufatura
G1 || G2 :
M2M1 Ba1 b1 a2 b2
II WI
a1
b1
G:
WW
a1
b1
IW
a2
b2
a2
b2
I W
a1
b1
G1:
a2
b2
G2:
I W
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
59/102
5
DAS5202 - UFSC 9
Modelagem da Especificação1. Construir autômatos E j para cada restrição de coordenação j,
do sistema a ser controlado; Em geral, cada restrição diz respeito a um sub-conjunto dos sub-
sistemas;
Podem ser muitas vezes descritas por um conjunto pequeno deeventos do sistema;
Não necessitam considerar o comportamento global de cadaequipamento (vide caso justiça no acesso a recurso).
2. Realizar a composição dos autômatos construídos no passo
1; compor o autômato resultante com o autômato da plantaG, gerando o autômato R; Composição das restrições de coordenação, feita no passo 2, leva a
uma restrição global de coordenação;
Composição com G leva à sua reescrita levando em conta ocomportamento da planta ( Lm(R) ⊆ Lm(G))
DAS5202 - UFSC 10
Modelagem da Especificação
3. Atualizar R pela eliminação, caso houver, deestados considerados proibidos;
Considera p.e. restrições de segurança (p.e. estadosindicando colisão, situação de perigo, ...);
Após este passo Lm(R) = E .
4. Atualizar R pelo cálculo de sua componentecoacessível, ou não-bloqueante.
Reflete a idéia de que não se deseja que a especificaçãoinclua situações de bloqueio;
Após este passo Lm(R) = E ⊆ Lm(G) e L(R) = Lm(G).
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
60/102
6
DAS5202 - UFSC 11
Exemplo: Sistema de Manufatura
Restrição de coordenação:
Evitar overflow e underflow
M2M1 Ba1 b1 a2 b2
a2
b1
0b1
a2
1
E:
DAS5202 - UFSC 12
Exemplo: Sistema de Manufatura
E || G :
M2M1 Ba1 b1 a2 b2
a2
b1
a2
b1
II0 WI0
a1
R:
IW0
b2
b1
WI1
a1
a2
WW0
a1
IW1
b1
WW1
a1
b2
b2
b2a
2
II1
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
61/102
7
DAS5202 - UFSC 13
II0 WI0
a1
R:
IW0
b2
b1
WI1
a1
a2
WW0
a1
IW1
b1
WW1
a1
b2
b2
b2a
2
II1
Exemplo: Sistema de Manufatura
Restrição de segurança:
Proibir operar as duas máquinas simultaneamente
M2M1 Ba1 b1 a2 b2
DAS5202 - UFSC 14
Exemplo: Sistema de Manufatura
Eliminação de estados proibidos
M2M1 Ba1 b1 a2 b2
II0 WI0
a1
R:
IW0
b2
b1
WI1
a1
a2
IW1
b2
II1
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
62/102
8
DAS5202 - UFSC 15
Exemplo: Sistema de Manufatura
Especificação não-bloqueante
M2M1 Ba1 b1 a2 b2
a2
a1
a2
a1
II0 WI0
a1
R:
IW0
b2
b1
a2
II1
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
63/102
1
Modelagem e Controle de SistemasModelagem e Controle de Sistemas
AutomatizadosAutomatizados
DAS5202 - UFSC
Aula 8
Teoria de Controle Supervisório
DAS5202 - UFSC 2
Supervisor
supervisor S interage com a planta G, numa estrutura de malha fechada S observa os eventos ocorridos em G; e define que eventos são permitidos de ocorrerem a seguir (controle de natureza
permissiva )
conjunto de eventos habilitados pelo supervisor define uma entrada decontrole;
entrada de controle é atualizada a cada nova ocorrência de eventoobservada em G;
conjunto de eventos é particionado num conjunto de eventos desabilitáveis,ou controláveis, e um conjunto de eventos cuja natureza não permite adesabilitação.
Planta Supervisor Evento
Habilitações
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
64/102
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
65/102
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
66/102
4
DAS5202 - UFSC 7
Controlabilidade
DAS5202 - UFSC 8
Exemplo: Sistema de Manufatura
M2M1 Ba1 b1 a2 b2
a2
b1
a2
b1
II0 WI0
a1
R:
IW0
b2
b1
WI1
a1
a2
WW0
a1
IW1
b1
WW1
a1
b2
b2
b2a
2
II1
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
67/102
5
DAS5202 - UFSC 9
Exemplo: Sistema de Manufatura
M2
M1 B
a1 b1 a2 b2
a2
a1
a2
a1
II0 WI0
a1
R:
IW0
b2
b1
a2
II1
DAS5202 - UFSC 10
Controlabilidade
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
68/102
6
DAS5202 - UFSC 11
Solução do PCS
C (E ): conjunto de linguagens controláveis contidas em E .
possui um elemento supremo supC (E ).
Teorema O problema de controle supervisório possui solução se e somente se supC (E ) ⊇ A
supC (E ) representa o comportamento menosrestritivo possível de se implementar por supervisão.
O supervisor ótimo S é tal que L m (S/ G) = supC (E ):
DAS5202 - UFSC 12
Síntese do supervisor não-bloqueante ótimo
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
69/102
7
DAS5202 - UFSC 13
Algoritmo para supC(E)
DAS5202 - UFSC 14
Maus Estados
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
70/102
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
71/102
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
72/102
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
73/102
2
DAS5202 - UFSC 3
Modelagem da Planta
DAS5202 - UFSC 4
Modelagem da Restrição
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
74/102
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
75/102
4
DAS5202 - UFSC 7
Modelagem da Planta
G1: a1
b1
G2: a2
b2
G3: a3
b3,c3
b1
a1
a1
a1
a1
a2
a2
a2
a2
a3a3
a3
a3
b1
b1
b1
b2
b2
b2
b2 b3,c3
G:
b3,c3
b3,c3
b3,c3
DAS5202 - UFSC 8
Modelagem das Restrições
E1:
a2
b1, c3 b2E2:
a3
E: b1, c3
a2
a2
b2 a3 b2 a3 b1, c3
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
76/102
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
77/102
6
DAS5202 - UFSC 11
Pequena fábrica com quebra
Suponha um sistema constituído por duasmáquinas e um armazém unitário
Incluindo: {λ1, λ2} ⇒ indicam quebra das máquinas
{μ1, μ2} ⇒ indicam reparo das máquinas
Restrições de coordenação: Impedir overflow e underflow do armazém
A prioridade de reparo é da máquina M2, ou seja, casoM1 e M2 estejam ambas quebradas, M2 deve serreparada primeiro.
M2M1 Bα1 β 1 α2 β2
DAS5202 - UFSC 12
Planta
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
78/102
7
DAS5202 - UFSC 13
Restrições
DAS5202 - UFSC 14
SupC(E)
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
79/102
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
80/102
2
DAS5202 - UFSC 3
Grail
Desenvolvido sob o paradigma de
orientação a objetos e implementado em
C++
Pacote disponível no DAS: Grail para
Controle Supervisório
Permite duas visões: Usuário ou programador
DAS5202 - UFSC 4
Instalação do Grail
Instalação (arquivos disponíveis):
Grail para controle supervisório em
http://www.das.ufsc.br/~cury/grail.html
Arquivo de instalação
Manual de utilização
Guia de instalação
Módulos para extensões de controle de SEDs
Instalar a ferramenta Graphviz, encontrada em
http://www.research.att.com/sw/tool/graphviz
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
81/102
3
DAS5202 - UFSC 5
Funcionamento do Grail A representação de uma máquina de estados finitos se dá
através de um conjunto de instruções armazenada em umarquivo ASCII
Exemplo:
Aceita múltiplos estados finais e iniciais É independente do tipo de alfabeto utilizado
)(|2
21
10
0|)(
FINAL
b
a
START
−
−
0 1 2a b
DAS5202 - UFSC 6
Filtros do Grail para autômatos (FM)
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
82/102
4
DAS5202 - UFSC 7
Funcionamento do Grail
Os filtros podem ser utilizados a partir de: um prompt de comando, onde o usuário pode
executar os filtros em arquivos de entrada
Exemplo: % fmsync m1.grail m2.grail > planta.grail
% fmsync m1.grail m2.grail | fmsync m3.grail > G.grail
um .bat criado com a seqüência de operações aser realizada
DAS5202 - UFSC 8
Controle Supervisório no Grail
No Grail, a planta é representada por uma FM onde as
etiquetas de transição são os eventos.
As linguagens das especificações também são
representadas por FM. Os conjunto de eventos não controláveis deve ser fornecido
em uma FM com um só estado com transições em selfloop
com os eventos não-controláveis.
Os supervisores são representados por FM e as ações de
controle são indicadas em outra FM com auto-laços dos
eventos desabilitados em cada estado.
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
83/102
5
DAS5202 - UFSC 9
Algumas funções básicas
fmstats: fornece informações sobre a FM % fmstats fm.grail
isdeterm: testa se FM é determinística
isomorph: testa se duas FM são isomórficas
fmalpha: obtém o alfabeto de uma FM
fmtodot: converte uma FM para o formato
reconhecido pelo Graphviz % fmtodot fm > fm.do
% dotty fm.do
DAS5202 - UFSC 10
Funções para Controle Supervisório
fmsync: faz o produto síncrono de duas FMs
fmremove: elimina estados de uma FM
fmtrim: encontra a componente trim de uma FM
fmcondat: informa dados de controle emsupervisão (eventos desabilitados) % fmcondat g.grail s.grail
fmsupc: encontra a máxima linguagemcontrolável % fmsupc g.grail r.grail sigmau.gdat
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
84/102
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
85/102
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
86/102
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
87/102
9
DAS5202 - UFSC 17
Exemplo: Sistema de Manufatura Determinação do supervisor minimamente restritivo
fmsupc g.grail rtrim.grail sigmau.gdat > s.grail
Teste de controlabilidade
fmcondat g.grail rtrim.grail sigmau.gdat > rtrim.gdat
(FINAL)|-2
(FINAL)|-0
5a15
2a12
1a21
0a20
DAS5202 - UFSC 18
Exemplo: Sistema de Manufatura Visualização do resultado através da ferramenta Graphviz
fmtodot s.grail > s.do
dotty s.do
(FINAL)|-2
(FINAL)|-0
5a15
2a12
1a21
0a20
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
88/102
10
DAS5202 - UFSC 19
Redução de supervisores
fmsupred g.grail s.grail > sred.grail
DAS5202 - UFSC 20
TCT
Ferramenta alternativa ao Grail (restrições quanto
a obtenção do supervisor reduzido)
Existem funções que convertem do formato do
grail para TCT (pacote minsup do Max) Desenvolvido na University of Toronto pela
equipe do Prof. Wonham
Documentação disponível no arquivo tctinfo.txt e
nas notas de aula do Prof. Wonham
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
89/102
11
DAS5202 - UFSC 21
Características
Interface com o usuário (sem script).
Salva os autômatos em arquivos binários:criados e editados dentro do TCT.
Eventos controláveis são representadospor números ímpares e não-controláveispor pares.
Manipula autômatos com até 1.000.000 deestados.
DAS5202 - UFSC 22
TCT
Instalação:
Baixar o TCT (CTCT,XPTCT...) presente em
http://www.control.utoronto.ca/people/profs/wonh
am/wonham.html
Descompactar o xptct86.zip para o diretório
desejado
Inserir o caminho [tct_dir] no path do sistema
Instalar a ferramenta Graphviz, encontrada em
http://www.research.att.com/sw/tool/graphviz
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
90/102
12
DAS5202 - UFSC 23
TCT
DAS5202 - UFSC 24
TCT
Geradores são representados por uma quíntupla
[Size, Init, Mark, Voc, Tran]
Size: número de estados (0… size-1)
Init: estado inicial (estado 0)
Mark: estados marcados
Voc: estados vocais
Tran: transições [I E J] evento E saindo de I e indo para J
(números não negativos, ímpar se controlável e par se
não-controlável)
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
91/102
13
DAS5202 - UFSC 25
Principais funções do TCT
Create ⇒ cria uma nova FM
Trim ⇒ encontra a componente trim de uma FM
Sync ⇒ realiza o produto síncrono de duas FMs
Supcon ⇒ encontra a máxima linguagem
Condat ⇒ informa dados de controle em
supervisão (eventos desabilitados)
Supreduce ⇒ encontra um supervisor reduzido
DAS5202 - UFSC 26
Exemplo
TUM2 B2c d e g
M1
f
aB1
b
a
bI W
M1
c
dI W
M2
e
f,gI W
TU
b,f
c
E1
d
e
E2Σu={b,d,g,f }
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
92/102
1
Modelagem e Controle de Sistemas AutomatizadosModelagem e Controle de Sistemas Automatizados
DAS5202 - UFSC
Aula 11
Controle Modular e Implementação
DAS5202 - UFSC 2
Célula de Manufatura
Buffer de entrada
Buffer de saída
ESTEIRA (M1)
FURADEIRA (M2)
TESTE (M3)
MANIPULADOR (M4)
MESA
CIRCULAR
(M0)
P1
P2
P3
P4
CLPSaídas
Entradas
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
93/102
2
DAS5202 - UFSC 3
O Problema de Controle
Planta livre: funcionamento independente dos 5 equipamentos.
Problemas: operar a esteira, a furadeira, o teste ou o robô enquanto a mesa
girar;
sobrepor peças na posição P1;
girar a mesa sem que as peças em P2, P3 e P4 tenham sidofuradas, testadas ou retiradas, respectivamente;
furar, testar ou acionar o robô sem peças em P2, P3 e P4, resp.;
furar ou testar duas vezes a mesma peça;
girar a mesa sem nenhuma peça.
Lógica de Controle: operar de 0 a 4 peças;
evitar os problemas;
não bloqueante;
minimamente restritiva.
ESTEIRA(M1)
FURADEIRA (M2)
TESTE(M3)
ROBÔ (M4)
MESA(M0)
P1
P2
P3
P4
DAS5202 - UFSC 4
Metodologia
obtenção de um modelo para a planta a ser
controlada;
obtenção de um modelo de representação
das especificações; síntese de uma lógica de controle não-
bloqueante e ótima.
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
94/102
3
DAS5202 - UFSC 5
βi
α i
Gi, i = 0, ..., 4:
Gerador para Mi , i = 0,...,4.
ESTEIRA(M1)
FURADEIRA(M2)
TESTE(M3)
ROBÔ (M4)
MESA(M0)
P1
P2
P3
P4
Modelagem da Planta
Planta global: G = ||i=0,...,4Gi (32 estados e 160 transições),
DAS5202 - UFSC 6
Modelagem das Especificações
E gen,a:
β1, β2, β3
α0β1, β2, β3
E gen,bi , i = 1,...,4:
α0, αi
β0, βi
E gen,ci , i = 1,2,3:
αi+1
βi βiα0 α0
αi+1
Especificação genérica:
Egen = ||x ∈ {a, b1, b2, b3, b4, c1, c2, c3}Egen,x(296 estados e 745 transições)
Especificação global:
Kglobal = Egen || Lm(G)(151 estados e 350 transições)
ESTEIRA(M1)
FURADEIRA(M2)
TESTE(M3)
ROBÔ (M4)
MESA(M0)
P1
P2
P3
P4
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
95/102
4
DAS5202 - UFSC 7
Controle Supervisório
Supervisor:
representado por um gerador S tal que S/G = S || G.
Objetivo:
obter S não-bloqueante tal que Lm(S/G) = Kglobal.
Condição necessária e suficiente: controlabilidade de Kglobal e.r.a G (Ramadge e Wonham, 1987).
Solução minimamente restritiva: SupC(Kglobal,G).
Planta Supervisor Evento
Habilitações
DAS5202 - UFSC 8
Síntese Monolítica para a C.M.
Supervisor:
gerador aparado (trim) de 151 estados e 350 transições;
requer muita memória e capacidade de processamento doCLP;
lógica de controle incompreensível;
dificuldade para:
programação;
depuração;
modificação.
Alternativas:
redução de supervisor;
arquitetura: controle modular local (Queiroz e Cury, 2000).
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
96/102
5
DAS5202 - UFSC 9
Redução de Supervisores
α1
α1
γ1 γ1 γ1 γ1
α1
β1 β1 β1β1
β5,β6
β5,β6
β5,β6
γ1 γ1γ1γ1τ1
τ1
τ1 τ1
τ1
τ1
S X1:
0 1 2 3
4 5 6 7
8 9 10 11
X1
X2
S red,1:
α1
γ1
α1
β1
γ1 X1 X2
DAS5202 - UFSC 10
Supervisor Monolítico Reduzido :
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
97/102
6
DAS5202 - UFSC 11
Abordagem Modular Local
S1
S2S3
S3S
2S1
M1M2
M3 M4
Desvantagem:
pode haver conflito⇒ Bloqueio.
Condição: modularidade local (Queiroz e Cury, 2000).
Se falhar:
resolução de conflito (coordenador).
DAS5202 - UFSC 12
Controle Modular Local - Modelagem
G = G2 || G3 || G4
G 2
6 5
E a
8 7
E b
3 4
G’ 2
3 5
G” 2 G 3
6 7 8 9
G 4
1 2
G1
G A = G2 || G3 ; G B = G3 || G4
E A(B) = E a(b) || Lm(G A(B))
K A(B) = E a(b) || Lm(G)
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
98/102
7
DAS5202 - UFSC 13
Controle Modular Local - Síntese
Definição (Queiroz e Cury, 2000):
Teorema (Queiroz e Cury, 2000):
Se {SupC ( E Xi, Lm(G Xi)), i ∈ I } é localmente modular, então
SupC (∩i∈ I K Xi, Lm(G)) = ||i∈ I SupC ( E Xi, Lm(G Xi)).
Modularidade local garante : otimidade
Sejam E Xi ⊆ Σ Xi*, i ∈ I . O conjunto { E Xi , i ∈ I } é
localmente modular se ||i∈ I E Xi = ||i∈ I E Xi
DAS5202 - UFSC 14
Metodologia
1. Modelar cada subsistema;
2. calcular a mais refinada RSP;
3. modelar cada especificação isoladamente;
4. obter a planta local para cada especificação;
5. calcular as especificações locais;
6. calcular as máximas linguagens controláveis;
7. verificar a modularidade local;
8. se não forem modulares, resolver o conflito ;
9. se forem modulares, implementar os supervisores.
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
99/102
8
DAS5202 - UFSC 15
Síntese Modular Local
4243284ci, i = 1,2,3
23342bi, i = 1,...,4
23232162a
Sred,xSloc,xEloc,xGloc,xEgen,xx
Teste de modularidade local:
S = ||xSloc,x (151 estados) é um autômato trim!
6215115132296Monolítico:
SredSmonKglobalGEgen
DAS5202 - UFSC 16
Supervisores Reduzidos
S red,a :
β1, β2, β3
α0
β1, β2, β3α0
S red,bi , i = 1,...,4:
α0, αi
β0, βi
α0,αi
S red,ci , i = 1,2,3:
αi+1
βi βi
α0,αi
α0
αi+1
αi α0,αiα0αi,αi+1αi+1
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
100/102
9
DAS5202 - UFSC 17
Estrutura Genérica de Implementação
Seqüências Operacionais
Supervisores Modulares
desabilitações eventos
Sistema-Produto
comandos respostas
Sistema Real
saídas do S.C. entradas do S.C.
S i s t e m a d e C o n t r o l e
P
l a n t a I
n t e r f a c e
DAS5202 - UFSC 18
Aplicação à Célula de Manufatura
S red,x, x { a, b1, b2, b3, b4, c1, c2, c3}
sinais de saída sinais de entrada
C L P
comandos respostas
mesa esteira furad. teste robô
desabilitações eventos
G1 G2: G3: G4:G0:
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
101/102
10
DAS5202 - UFSC 19
Implementação em Diagrama Ladder
Supervisor Sred,c1 :
s0 1 s1
|--][-+-][--+--(S)-|
| | s0 |
| +--(R)-|
| s1 0 s2 |
|--][-+-][--+--(S)-|
| | s1 |
| +--(R)-|
| s2 2 s0 |
|--][-+-][--+--(S)-|
| | s2 |
| +--(R)-|
...
Máquina de estado
| s2 d-
0 |
|--][-+-----+--( )-|
| s3 | |
|--][-| |
| s1 d-
1 |
|--][-+-----+--( )-|
| s3 | |
|--][-| |
| s0 d-
2 |
|--][-+-----+--( )-|
| s1 |
|--][-|
Desabilitações
Supervisores Modulares
d-α0, d-α1, d-α2 α0, α2, β1
Sistema-Produto
iníc io de operação f inal de operação
Seqüências Operacionais
sinais de saída sinais de entrada
α2
β1 β1
α0,α
1
α0
α2
α1 α0,α1α0α1,α2α2
s0
s1 s2
s3
DAS5202 - UFSC 20
g0 d-
1 e-ini
|--][-+-]/[-+--( )-|
| | 1 || +--( )-|
| | g1 |
| +--(S)-|
| | g0 |
| +--(R)-|
| | sup |
| +---->>|
Transição controlável
| g1 e-fim 1 |
|--][-+-][--+--( )-|
| | e3 || +--(R)-|
| | g1 |
| +--(S)-|
| | g0 |
| +--(R)-|
| | sup |
| +---->>|
Transição não-controlável
Planta G1 (Esteira): β1
α1
g0 g1
Supervisores Modulares
d-α0 α1, β1
Sistema-Produto
e-ini e-fim
Seqüências Operacionais
sinais de saída sinais de entrada
Implementação em Diagrama Ladder
8/18/2019 DAS5202 - Modelagem e Controle de Sistemas Automatizados
102/102
DAS5202 - UFSC 21
e-ini e1
|--][-+-----+--(S)-|
| e1 O0.1 |
|--][-+-----+--(S)-|
| | e2 |
| +--(S)-|
| | e1 |
| +--(R)-|
| e2 I0.1 O0.1 |
|--][-+-][--+--(R)-|
| | e3 |
| +--(S)-|
| | e2 |
| +--(R)-|
| e3 e-fim |
|--][-+-----+--( )-|
Seqüência Operacional da Esteira:
Supervisores Modulares
desabilitações eventos
Sistema-Produto
e-ini e-fim
Seqüências Operacionais
O0.1 I0.1
Implementação em Diagrama Ladder
Ferramenta CGLI