Modelagem e CLP Autômatos Rafael Garlet de Oliveira Instituto Federal Catarinense - IFC Câmpus Luzerna 5 de março de 2014 Rafael Garlet de Oliveira 1 / 20
Sumário 1 Autômato Determinístico Finito Definição Exemplo Linguagem de um Autômato Autômatos x Linguagens Regulares Composição de Autômatos Abordagens para modelagem Eventos Controláveis e Observáveis Autômatos Acessíveis e Co-acessíveis 2 Introdução Controle supervisório Metodologia para síntese de supervisores ótimos Rafael Garlet de Oliveira 2 / 20
Introdução Autômato Linguagem que permite representar o comportamento de SEDs; Uma forma de representar expressões regulares, que por sua vez geram as linguagens; Representação gráfica: os nós representam estados e os arcos, eventos; Os nós são os estados globais do sistema, ou seja, a situação de todas as subpartes do SED. Rafael Garlet de Oliveira 3 / 20
Definição Um Autômato Determinístico de Estados Finitos (ADEF) é definido por: G = (Q, Σ, f, q 0, Qm) Q: Conjunto finito e não-vazio de estados; Σ: Alfabeto com os eventos do sistema; f: Q x Σ Q: Função de transição de estados; q 0 Q: Estado inicial; Qm Q: Conjunto de estados finais. Rafael Garlet de Oliveira 4 / 20
Exemplo Representação do comportamento de uma máquina: Estado 1: Máquina parada; Estado 2: Máquina em operação. Evento a: início de uma tarefa; Evento b: término da tarefa. Q = {1, 2}; Σ = {a, b}; f(1, a) = 2, f(2, b) = 1; q 0 : estado 1; Qm = estado 1. Figura: Autômato representando a operação da máquina. Rafael Garlet de Oliveira 5 / 20
Linguagem de um Autômato Os autômatos permitem representar expressões regulares. A Linguagem Gerada por G é: L(G) := {s Σ /f (q 0, s) é definida} A Linguagem Marcada de G é: L m (G) := {s L(G)/f (q 0, s) Q m } A linguagem L(G) representa todas as cadeias geradas no autômato a partir do estado inicial; a linguagem L m (G) representa todas as cadeias que, a partir do estado inicial, atingem um estado marcado. Rafael Garlet de Oliveira 6 / 20
Exemplo Seja Σ = {a, b}; Qual a Linguagem representada pelo seguinte autômato? Rafael Garlet de Oliveira 7 / 20
Autômatos x Linguagens Regulares Teorema de Kleene Uma linguagem é regular se e somente se for reconhecida por um autômato de estados finitos determinístico. Autômato Expressão Regular Rafael Garlet de Oliveira 8 / 20
Composição de Autômatos Composição Síncrona A Composição de Autômatos é uma operação que sincroniza eventos compartilhados, enquanto que os não compartilhados podem executar de uma forma assíncrona. Utilizada em uma abordagem modular; G1 G2 = G2 G1; (G1 G2) G3 = G1 (G2 G3); A composição pode ser estendida para n autômatos. Rafael Garlet de Oliveira 9 / 20
Abordagens para modelagem Gerador: Pode ser entendido como um autômato. Pode gerar duas linguagens, a linguagem gerada L(G) e a linguagem marcada Lm(G). Abordagem global: Modelar o sistema como um todo, de uma forma generalizada; Abordagem local: Modelar cada subsistema separadamente e formar o sistema global a partir da composição. Rafael Garlet de Oliveira 10 / 20
Eventos Controláveis e Observáveis Eventos Controláveis Podem ser habilitados, ou desabilitados, pelo controle supervisório, ex: Atuadores. Eventos Observáveis Eventos que podem ser medidos. Os não observáveis podem ser entendidos como eventos internos de uma máquina. Rafael Garlet de Oliveira 11 / 20
Autômatos Acessíveis e Co-acessíveis Acessível: Todos os estados Q podem ser alcançados a partir de q 0. Não Acessível: Há estados inacessíveis a partir de q 0. É possível reduzir um autômato a sua componente acessível, removendo os estados não acessíveis. Co-acessível ou não bloqueante: Todas as cadeias são prefixo de cadeias marcadas. L(G) = Lm(G) Ou seja, a partir de qualquer estado pode-se chegar a um estado final (marcado). É possível obter uma componente co-acessível, eliminando os estados alcançados por cadeias que não podem ser completadas em tarefas. Trim: Acessível e co-acessível. Rafael Garlet de Oliveira 12 / 20
Exemplos Figura: Autômato acessível com bloqueio. Mostrar exemplos no IDES. Figura: Autômato trim: acessível e co-acessível. Rafael Garlet de Oliveira 13 / 20
Exemplo Estrutura de autômato com deadlock e livelock. Para encontrar a componente trim basta eliminar os estados não acessíveis e não co-acessíveis. Figura: Exemplo de deadlock e livelock. Rafael Garlet de Oliveira 14 / 20
Introdução Composição dos subsistemas em uma planta pode gerar eventos indesejáveis. É papel do supervisor fazer com que os subsistemas atuem de forma coordenada. Para isso, o supervisor desabilita estes eventos indesejáveis. Rafael Garlet de Oliveira 15 / 20
Obtenção da Especificação Deve restringir o comportamento do sistema para atingir os objetivos do projeto; Autômato que leva em conta os eventos que devem ser coordenados; Pode ser modelado com a abordagem local. Figura: Especificação para o acionamento ordenado de duas máquinas. Rafael Garlet de Oliveira 16 / 20
Obtenção do supervisor Supervisor é obtido pela composição síncrona R=G E, eliminando-se estados com eventos não-controláveis (maus-estados). O comportamento R pode ser não-controlável, devido aos eventos não controláveis de G. Então deve-se obter a máxima linguagem controlável, supc, que representa a lógica ótima de supervisão. supc representa o comportamento menos restritivo possível. Rafael Garlet de Oliveira 17 / 20
Algorítmo para o cálculo de supc Dados G, E e R, calcular supervisor S: 1 Identificar maus estados em R, caso não existam fazer S = R; 2 Caso existam, atualizar R por eliminação de maus estados; 3 Calcular a componante trim de R e voltar ao passo 1. Mau estado: Estado em R cujo estado correspondente em G possui algum evento não-controlável que não pertence a este estado de R. Rafael Garlet de Oliveira 18 / 20
Metodologia para síntese de supervisores ótimos Passo a passo para obtenção de um supervisor: 1 Obtenção do modelo da planta G; 2 Modelagem da especificação E; 3 Composição da planta G com as especificações E: R = G E; 4 Cálculo de S = supc(r). Exemplos e atividades... Rafael Garlet de Oliveira 19 / 20
Rafael Garlet de Oliveira rafael.oliveira@luzerna.ifc.edu.br Sala de Professores 1 Rafael Garlet de Oliveira 20 / 20