Anda di halaman 1dari 51

Instituto Militar de Engenharia

Departamento de Engenharia Eltrica (DE/3)


Programa de Ps-Graduao em Engenharia Eltrica

Controle Supervisrio de SEDs:


Introduo
Antonio Eduardo Carrilho da Cunha

Rio de Janeiro, 4 de junho de 2003

Sumrio

Introduo
O controle supervisrio de SEDs: generalidades
Modelagem do problema
O Problema de controle supervisrio
Comentrios

04/06/03

Controle Supervisrio de
SEDs: Introduo

Introduo

Novos sistemas dinmicos

Surgidos com a evoluo das tecnologias de computao,


comunicao e sensoreamento
Sistemas tecnolgicos e altamente complexos
Redes de computadores e de comunicao
Sistemas de manufatura automatizados
Sistemas de C3I (comando, controle, comunicao e informao)
altamente integrados
Sistemas de transporte inteligentes
Sistemas avanados de controle e monitorao de veculos e edifcios
Sistemas de software distribudos
Sistemas de controle de trfego areo
...

Sistemas a eventos discretos

04/06/03

Controle Supervisrio de
SEDs: Introduo

Dinmica dirigida a eventos


Uma parcela significativa da atividade destes sistemas
governada por regras operacionais projetadas por
humanos
A dinmica do sistema caracterizada por ocorrncia
assncrona de eventos discretos
Eventos controlveis
apertar uma tecla, ligar um equipamento, enviar um pacote de
mensagens etc.

Eventos no controlveis
Falhas espontneas de equipamentos, perda de pacotes de
mensagens etc.

Eventos observveis
Eventos no observveis
04/06/03

Controle Supervisrio de
SEDs: Introduo

O que so Sistemas a Eventos


Discretos?
Um sistema a eventos discreto (SED) um
sistema dinmico discreto e dirigido a eventos,
isto , com espao de estados discreto e cuja
evoluo de estado depende inteiramente da
ocorrncia assncrona de eventos discretos.

04/06/03

Controle Supervisrio de
SEDs: Introduo

Modelagem de SEDs
O arsenal matemtico centrado nas equaes
diferenciais e a diferenas inadequado ou
simplesmente inapropriado para os sistemas a
eventos discretos

04/06/03

Controle Supervisrio de
SEDs: Introduo

Ferramentas e Teorias
Necessita-se de uma abordagem
multidisciplinar
Teoria de controle
para otimizao do desempenho por controle
(realimentao)

Cincia da computao
para modelagem e verificao de processos dirigidos a
eventos

Pesquisa operacional
para anlise e simulao de modelos estocsticos de
SEDs
04/06/03

Controle Supervisrio de
SEDs: Introduo

Ferramentas e Teorias

Necessitam-se de novas formas de modelagem, tcnicas de anlise


e procedimentos de controle

Teoria de linguagens e autmatos


Redes de Petri
Teoria de filas
lgebra (max,+)
Cadeias de Markov
...

Necessitam-se de novos paradigmas para combinar tcnicas


matemticas com o processamento de dados experimentais

Verificao a estado discreto


Programao linear
Simulao a eventos discretos
Anlise de perturbao
...

04/06/03

Controle Supervisrio de
SEDs: Introduo

Oportunidades de pesquisa de SEDs


rea recente e em desenvolvimento
Surgimento constante e crescente de
aplicaes
Complexidade dos sistemas crescente
Necessidade de mtodos poderosos para
Melhorar os procedimentos de projeto
Prevenir falhas
que podem ser catastrficas quando os sistemas atingem
certo nvel de complexidade

Tirar o mximo do desempenho dos sistemas


04/06/03

Controle Supervisrio de
SEDs: Introduo

10

O controle supervisrio de SEDs:


generalidades

Generalidades
Abordagem introduzida por Ramadge e Wonham (1989)
Abordagem Ramadge-Wonham (RW)

Destina-se ao controle lgico de sistemas a eventos


discretos
Aspectos temporais includos em extenses teoria bsica

Baseado na teoria de linguagens formais e autmatos


Tratam-se problemas bsicos da teoria de controle
Controlabilidade, observabilidade etc.

04/06/03

Controle Supervisrio de
SEDs: Introduo

12

Generalidades
Questes
Pode-se restringir o comportamento de um sistema para que
este atenda a certas especificaes?
Pode-se proibir a ocorrncia de uma dada seqncia de
eventos?
Poder-se impedir que o sistema alcance a um dado estado?

Fornece um mtodo formal para sntese de controladores


para tais sistemas
Otimalidade
Controlador gerado corresponde ao comportamento
minimamente restritivo do sistema que atende s especificaes

04/06/03

Controle Supervisrio de
SEDs: Introduo

13

Esquema de controle
Planta
Entrada de controle

Evento observado

Supervisor

Planta
Gera eventos espontaneamente
Dotada de estrutura de controle

Supervisor
Agente controlador
Observa seqncia de eventos gerada pela planta
Aplica entradas de controles

04/06/03

Controle Supervisrio de
SEDs: Introduo

14

Exemplo - Clula de manufatura


armazm de sada
manipulador
armazm de
entrada

P4
P1

mesa
circular

teste

esteira
entradas

P3

P2

CLP

furadeira

sadas

04/06/03

Controle Supervisrio de
SEDs: Introduo

15

Exemplo - Clula de manufatura


Condio de controle

armazm de sada

No h informao da
presena da pea na posio
Pi.

manipulador
armazm de
entrada

P1 mesa
circular

Nvel de abstrao do controle


Observa-se e controla-se o
incio e o fim de funcionamento
dos equipamentos

P4

teste

esteira
entradas

CLP

P3

P2

furadeira

sadas

Objetivo
Projetar o programa do CLP
04/06/03

Controle Supervisrio de
SEDs: Introduo

16

Exemplo - Clula de manufatura


Requisitos operacionais

armazm de sada

Evitar rotao da mesa circular


sem que as peas em P2, P3 e
P4 no estejam furadas, testadas
e removidas respectivamente.
Evitar operao da esteira,
furador, testador ou rob ao
mesmo tempo que a mesa girar.
Tratar o fluxo de peas da mesa
Evitar overflow de peas em P1
Furar ou testar uma pea duas vezes
Furar, testar ou pegar sem peas em
P2, P3 ou P4 respectivamente
Girar a mesa quando estiverem
todas as posies vazias

04/06/03

manipulador
armazm de
entrada

P4
P1 mesa
circular

teste

esteira
entradas

CLP

P3

P2

furadeira

sadas

Requisitos adicionais
Operar com o mximo nmero de
peas o possvel
Otimalidade = controle minimamente
restritivo
No bloqueio

Controle Supervisrio de
SEDs: Introduo

17

Modelagem do problema

Autmatos de estados finitos


Dispositivo que representa linguagens de acordo com
regras especficas
Um autmato de estados finitos uma quntupla G = (, Q,
, q0, Qm) onde:
um conjunto finito de etiquetas
Q um conjunto finito de estados
uma funo de transio (possivelmente parcial)
: Q Q

q0 o estado inicial (q0 Q)


Qm um conjunto de estados finais (Qm Q)

Notao
( q, )! significa que est definido para qQ e .
04/06/03

Controle Supervisrio de
SEDs: Introduo

19

Diagramas de transio de estados


Forma de representao grfica de autmatos
de estados finitos
Grafos direcionados onde os ns representam
os estados e os arcos etiquetados representam
as transies de estados

04/06/03

Controle Supervisrio de
SEDs: Introduo

20

Exemplo - autmato de estados finitos


G = ( , Q, , q0, Qm)

estados
04/06/03

0
1
2

smbolos
a
b
0
0
1
1
2

= { a, b, c}
Q = { 0, 1, 2}
q0 = 0
Qm = { 0, 2}

b
a

1
c

c
2
1

a
c
2

Observe que
(0,b) e (1,c)
no esto
definidos

Controle Supervisrio de
SEDs: Introduo

21

Linguagens associadas a um autmato


Linguagem gerada por G
L(G) = { u* | (q0,u)!}
Representa o conjunto de todos as possveis seqncias de
smbolos que G pode gerar

Linguagem marcada por G


Lm(G) = { uL(G) | (q0,u)Qm}
representa o subconjunto de seqncias que terminam num
estado marcado

Propriedades
L(G) prefixo-fechada (L(G) = L(G))
Lm(G) L(G)

Um autmato de estados finitos pode representar qualquer


tipo de linguagem? Controle Supervisrio de
04/06/03
22
SEDs: Introduo

Exemplo - Linguagens associadas a


um autmato
a

b
a

1
c

a
c
2
b

Notao para
expresses
regulares

Lm(G) = (a*cb*(a+c)b*a)*(a* + a*cb*)


L(G) = (a*cb*(a+c)b*a)*(a* + a*cb* + a*cb*(a+c)b*)

04/06/03

Controle Supervisrio de
SEDs: Introduo

23

Autmatos como modelos para SEDs


O autmato G = (, Q, , q0, Qm) representa um
SED
representa o conjunto de eventos gerados pelo
sistema
L(G) representa todas as seqncias de eventos
geradas pelo sistema
Lm(G) representa todas as seqncias de eventos
geradas pelo sistema que correspondem a tarefas
completas do sistema

Referencia-se a G como sendo o prprio


sistema
04/06/03

Controle Supervisrio de
SEDs: Introduo

24

Estrutura de controle
Partio de em conjuntos c e nc
c o conjunto de eventos controlveis
podem ser desabilitados (inibidos, proibidos de ocorrer)

nc o conjunto de eventos no controlveis


no podem ser desabilitados (inibidos, proibidos de ocorrer)

Entradas de controle
Se , ento est habilitado por
Caso contrrio, est desabilitado
Propriedade
Eventos no controlveis no podem ser desabilitados (nc )

O controle permissivo
No fora a ocorrncia de um evento
04/06/03
Supervisrio de
ocorrncia
Apenas inibe a suaControle
SEDs: Introduo

25

Exemplo - SED
SED G mquina num sistema de manufatura

Pea bruta

Pea processada

Trs estados
P parada
T trabalhando
Q quebrada

Quatro eventos
- incio de operao
- fim de operao
- quebra
- conserto

Alguns eventos podem ser


impedidos de ocorrer

Modelo da planta
Alfabeto
= { , , , }

Comportamento
L(G) = (()* + ()*)*( ++)
Lm(G) = (()* + ()*)*
04/06/03

Controle Supervisrio de
SEDs: Introduo

Estrutura de controle
c = {, }
nc = {, }

(notao no grafo)
26

Modelos de SEDs compostos


Sistemas compostos
Diversos componentes G1, G2, ... e Gn
Alfabetos possivelmente no disjuntos

Modelo do sistema composto


Produto sncrono dos modelos dos componentes
G = G1 || G2 || ... || Gn

04/06/03

Controle Supervisrio de
SEDs: Introduo

27

Exemplo - clula de manufatura


Planta
armazm de sada

Modelos dos componentes


Gi, i {0,1,2,3,4}
Gi

manipulador (G4 )
armazm de
entrada

ai

esteira (G1 )
entradas

bi

CLP

Modelo do sistema completo


G = G0|| G1|| G2 || G3 || G4

P4
P1 mesa
circular
(G0 )

P2

P3
teste (G3 )

furadeira (G2 )

sadas

(32 estados, 160 transies, 10 eventos)


04/06/03

Controle Supervisrio de
SEDs: Introduo

28

Modelagem das especificaes


Escrevem-se especificaes para o comportamento do
sistema em malha fechada
Requisitos comuns
Segurana, vivacidade e justia

Construo das especificaes


Especificaes locais
Especificaes Ei envolvendo seqncias de eventos relevantes
Conjuno de todas as especificaes locais E = E1 || ... || E n

Especificaes globais
Tipicamente de estado proibido
Obtidas por anlise e corte de estados de G

Linguagem-alvo
Comportamento desejado em malha fechada K Lm (G)

04/06/03

Controle Supervisrio de
SEDs: Introduo

29

Exemplo - especificaes para a clula


Evitar rotao da mesa circular sem
que as peas em P2, P3 e P4 no
estejam furadas, testadas e
removidas respectivamente (Ea)

armazm de sada
manipulador
armazm de
entrada

P1 mesa
circular

E a b 1, b 2, b 3
0

b1, b2, b3

P3
teste

esteira
entradas

CLP

a0

P2

furadeira

sadas

Evitar operao da esteira, furador,


testador ou rob ao mesmo tempo
que a mesa girar (Eb)

Ebi

a 0, a i

i {1, 2, 3, 4}
1

b 0, b i
04/06/03

P4

Controle Supervisrio de
SEDs: Introduo

Eb = Eb1||Eb2||Eb3||Eb4
30

Exemplo - especificaes para a clula


Tratar o fluxo de peas da mesa
(Ec)

Eci

armazm de sada
manipulador
armazm de
entrada

Evitar overflow de peas em P1


Furar ou testar uma pea duas
vezes
esteira
Furar, testar ou pegar sem
peas em P2, P3 ou P4
entradas
respectivamente
CLP
Girar a mesa quando estiverem
sadas
todas as posies vazias
a0
Ec = Ec1 || Ec2 || Ec3
bi
a0
bi
0

i {1, 2, 3}
04/06/03

1
ai+1

ai+1
Controle Supervisrio de
SEDs: Introduo

P4
P1 mesa
circular

P3
teste

P2

furadeira

Especificao
global:
(296, 745, 10)
Linguagem alvo:
(159, 370,10)
31

Supervisor
Representado por um autmato S = (,Y,,y0,Ym)
O supervisor S segue a evoluo da planta G = (, Q, , q0,
Qm)
A ao de controle de S sobre G est implcita na estrutura
de transio de S
Num dado estado y de S e q de G, os eventos desabilitados de
G so os eventos tais que (q,)! e (y,) no definido

Sistema em malha fechada (S/G)


Descrito pelo produto sncrono S||G
L(S/G) = L(S||G)
Lm(S/G) = Lm(S||G)
04/06/03

Controle Supervisrio de
SEDs: Introduo

32

Supervisor no bloqueante
Em geral Lm(S/G) L(S/G)
O que quer dizer Lm(S/G) L(S/G)?
O que esta condio corresponde no sistema em malha
fechada?

Supervisor no bloqueante
Lm(S/G) = L(S/G)
Todas as seqncias de eventos admitidas em malha fechada
so prefixos de tarefas completas do sistema

04/06/03

Controle Supervisrio de
SEDs: Introduo

33

Exemplo - supervisor para a clula


S1

a1

b1

Avana esteira at
haver pea em P1

b4

13

04/06/03

a0

12

b0

11

a0

Gira a mesa 90o


(pea vai para P4)

a2

b2

Fura pea em P2

Gira a mesa 90o


(pea vai para P2)

Pega pea em P4
e deposita no
armazm de sada

a4

b0

a0

Gira a mesa 90o


(pea vai para P3)

10

b3

a3

b0

Testa a pea em P3

Controle Supervisrio de
SEDs: Introduo

34

Exemplo - supervisor para a clula


Atende s especificaes
Lm(S1/G) K

Supervisor no bloqueante
Poltica de controle conservadora
A clula processa uma pea por vez

04/06/03

Controle Supervisrio de
SEDs: Introduo

35

O problema de controle supervisrio

Enunciado
Problema de controle supervisrio (PCS)
Dados uma planta G e uma especificao K *
encontre um supervisor S tal que Lm(S/G) K

04/06/03

Controle Supervisrio de
SEDs: Introduo

37

Controlabilidade e existncia de
supervisores
Para uma planta G com conjunto de eventos
no controlveis nc, a linguagem K * dita
controlvel em relao a (e.r.a.) L(G) e nc se
K ncL(G) K.

Fato
Existe um supervisor no bloqueante S tal que Lm(S/G)
= K se e somente se K Lm(G) e K for controlvel

04/06/03

Controle Supervisrio de
SEDs: Introduo

38

Soluo do PCS
Conjunto de linguagens controlveis contidas em K
C(K) = { J K | J nc L(G) J }
Subentende-se L(G) e nc

Fatos sobre C(K)


No vazio
Fechado para a unio
Contm um nico elemento supremo, denotado sup C (K)

sup C (K)
Mxima linguagem controlvel (e.r.a. L(G) e nc) contida em K

Fato
O PCS possui soluo se e somente se K Lm(G) e supC(K)
04/06/03

Controle Supervisrio de
SEDs: Introduo

39

Mxima linguagem controlvel


Representa o comportamento minimamente
restritivo em malha fechada que atende s
especificaes
O supervisor S tal que Lm(S/G) = sup C (K)
dito supervisor timo

04/06/03

Controle Supervisrio de
SEDs: Introduo

40

Clculo da mxima linguagem


controlvel
Existe um algoritmo para clculo da mxima
linguagem controlvel em um nmero finito de
passos para planta e especificaes expressas
em termos de autmatos de estados finitos
Algoritmo com complexidade polinomial em
relao ao nmero de estados do autmato
produto da planta com as especificaes

04/06/03

Controle Supervisrio de
SEDs: Introduo

41

Mtodo de sntese de supervisores


Modelar o comportamento em malha
aberta do sistema
Planta

Modelar as especificaes
Linguagem alvo

Sintetizar o supervisor timo


Calcular a mxima linguagem controlvel
contida na linguagem alvo

Implementar o supervisor
04/06/03

Controle Supervisrio de
SEDs: Introduo

42

Exemplo - supervisor para a clula


Supervisor sintetizado a partir das
especificaes
151 estados e 350 transies
Permite at 4 peas sendo processadas na
mesa simultaneamente

Implementao em um programa de CLP

04/06/03

Controle Supervisrio de
SEDs: Introduo

43

Comentrios

Resumo
SEDs
Crescendo em nmero de aplicaes e complexidade
Necessidade de mtodos formais

Controle supervisrio de SEDs


Fornece um mtodo de sntese de controladores lgicos
para SEDs
Baseado na teoria de linguagens e autmatos

04/06/03

Controle Supervisrio de
SEDs: Introduo

45

Limitaes
Complexidade computacional
Algoritmo de sntese com complexidade polinomial em
relao ao nmero de estados do autmato produto de planta
com especificaes
Nmero de estados do autmato produto cresce
exponencialmente com a adio de componentes da planta e
novas especificaes

Implementao dos supervisores


Mtodos ainda no consolidados
Supervisor monoltico da abordagem bsica possui nmero
imenso de estados mesmo para pequenos sistemas reais
Ilegibilidade dos programas de controle gerados
Soluo - decomposio estrutural
04/06/03

Controle Supervisrio de
SEDs: Introduo

46

Ferramentas
Em geral acadmicas e de pesquisa
Sntese

TCT - Universidade de Toronto


UMDES software library - Universidade de Michigan
DESCO - universidade de Chelmers
VALID - Siemens
CONDES - Universidade Federal de Santa Catarina
GRAIL - Universidade Federal de Santa Catarina

Automatizao da implementao
CONCEL - Universidade Federal de Santa Catarina
SUPREMICA - Universidade de Chelmers
VALID (?) - Siemens
04/06/03

Controle Supervisrio de
SEDs: Introduo

47

Aplicaes

Sistemas flexveis de manufatura


Protocolos de comunicao
Servios adicionais para centrais digitais
Sistemas de transaes para bancos de dados
Sistemas de transporte inteligentes
Controle de processos

04/06/03

Controle Supervisrio de
SEDs: Introduo

48

Extenses

SEDs com eventos forados


SEDs temporizados
SEDs com observao parcial
Controle modular
Controle descentralizado
Controle hierrquico
Explorao da simetria
Controle robusto
Controle adaptativo
Controle de sistemas hbridos
Controle do comportamento infinito de SEDs

04/06/03

Controle Supervisrio de
SEDs: Introduo

49

reas de interesse
Automatizao da implementao de supervisores em
CLPs
Aplicao a sistemas flexveis de manufatura ou sistemas
supervisrios

Controle supervisrio de sistemas hbridos


Aplicao ao controle de processos

Aplicaes especficas
Logstica
Sistemas de C3I
Jogos de guerra

Prtico vs terico

04/06/03

Controle Supervisrio de
SEDs: Introduo

50

Muito obrigado!