Gílson Maekawa Kanashiro Reconstituição de Projetos de Controladores Lógicos Programáveis Uma abordagem para conversão da linguagem Ladder para Gráficos de Funções Seqüenciais Design Recovery for Relay Ladder Logic - A. Falcione & B. H. Krogh Orientador: Cap Carrilho
Sumário 1) Carro-chefe do controle industrial Controladores Lógicos Programáveis (CLP) Relay Ladder Logic (RLL) Sequential Function Chart (SFC) 2) Algoritmo de conversão a) Emulação de RLL através de SFC Gráficos: Simultaneidade Dependência Simultaneidade Condensado Decomposições: Componentes conexos Conectividade total Grafos de seqüência b) Implementação 3) Conclusão
Sumário 1) Carro-chefe do controle industrial Controladores Lógicos Programáveis (CLP) Relay Ladder Logic (RLL) Sequential Function Chart (SFC) 2) Algoritmo de conversão a) Emulação de RLL através de SFC Gráficos: Simultaneidade Dependência Simultaneidade Condensado Decomposições: Componentes conexos Conectividade total Grafos de seqüência b) Implementação 3) Conclusão
Carro-chefe da automação industrial Crescente uso de CLP na automação de processos industriais Evolução da linguagem de programação CLP (Sequential Function Chart - SFC) Necessidade de tradução de antigos projetos (linguagem ladder ) para uma linguagem atual (SFC)
Sumário 1) Carro-chefe do controle industrial Controladores Lógicos Programáveis (CLP) Relay Ladder Logic (RLL) Sequential Function Chart (SFC) 2) Algoritmo de conversão a) Emulação de RLL através de SFC Gráficos: Simultaneidade Dependência Simultaneidade Condensado Decomposições: Componentes conexos Conectividade total Grafos de seqüência b) Implementação 3) Conclusão
Controlador Lógico Programável Controlador: baseado em microprocessadores Ciclo ou varredura: entradas +programa+saídas N variáveis de estado Q(x), x=1, 2,..., N M variáveis de entrada U(y), y=1, 2,..., M Q(x)=P{Q(x-1),U(y)}, onde x>=1 e Q(0) é um estado inicial
Sumário 1) Carro-chefe do controle industrial Controladores Lógicos Programáveis (CLP) Relay Ladder Logic (RLL) Sequential Function Chart (SFC) 2) Algoritmo de conversão a) Emulação de RLL através de SFC Gráficos: Simultaneidade Dependência Simultaneidade Condensado Decomposições: Componentes conexos Conectividade total Grafos de seqüência b) Implementação 3) Conclusão
Lógica Ladder para Relés Varredura ordenada nos R degraus Bobina de saída é representada por um círculo " AND, OR e NOT serão os símbolos ".", "+" e "!" " AND -> variáveis em série " OR -> variáveis em paralelo o i :=B j (Q,U), j=1,...,r, onde o j pertence a Q U U O número de degraus R é exatamente o número de variáveis de estado: R=N e Q={q 1, q 2,..., q R }. Além disso, assume-se que as variáveis de estado são indexadas de tal forma que as saídas do degrau j é q j :=B j (Q,U) v 1 = (start+v 1 ).!ls 2.!v 3
Sumário 1) Carro-chefe do controle industrial Controladores Lógicos Programáveis (CLP) Relay Ladder Logic (RLL) Sequential Function Chart (SFC) 2) Algoritmo de conversão a) Emulação de RLL através de SFC Gráficos: Simultaneidade Dependência Simultaneidade Condensado Decomposições: Componentes conexos Conectividade total Grafos de seqüência b) Implementação 3) Conclusão
Gráficos de Funções Seqüenciais Consiste de etapas q i = variáveis estado + entrada 1) Ler a entrada física 2) Varrer todos as etapas ativas 3) Avaliar as receptividades etapas a serem habilitadas etapas a serem desabilitadas 4) Atualizar a marcação SFC 5) Varrer os passos habilitados 6) Configurar as saídas Tipos de estrutura divergência simples divergência paralela Elementos do SFC retângulo duplo ou negritado receptividades esquerda para a direita variáveis de marcação M indicam passos ativos
Sumário 1) Carro-chefe do controle industrial Controladores Lógicos Programáveis (CLP) Relay Ladder Logic (RLL) Sequential Function Chart (SFC) 2) Algoritmo de conversão a) Emulação de RLL através de SFC Gráficos: Simultaneidade Dependência Simultaneidade Condensado Decomposições: Componentes conexos Conectividade total Grafos de seqüência b) Implementação 3) Conclusão
Sumário 1) Carro-chefe do controle industrial Controladores Lógicos Programáveis (CLP) Relay Ladder Logic (RLL) Sequential Function Chart (SFC) 2) Algoritmo de conversão a) Emulação de RLL através de SFC Gráficos: Simultaneidade Dependência Simultaneidade Condensado Decomposições: Componentes conexos Conectividade total Grafos de seqüência b) Implementação 3) Conclusão
Emulação de RLL através de SFG SFC's básicos (2 etapas) uma inicial, e; outra aos quais todos os degraus ladder se referem O SFC básico é gerado pela inspeção direta de um diagrama ladder. <---- As bobinas v1, m, h, tl, v4, v2, al e v3 são as variáveis de estado da segunda etapa no SFC básico ao lado --------->
Emulação de RLL através de SFC Variáveis de estado, que não possam estar ativas paralelamente em ladder, são associadas a estruturas de caminho simples Variáveis de estado que podem estar ativas paralelamente são associadas a etapas SFC em estruturas de caminho paralelo
Sumário 1) Carro-chefe do controle industrial Controladores Lógicos Programáveis (CLP) Relay Ladder Logic (RLL) Sequential Function Chart (SFC) 2) Algoritmo de conversão a) Emulação de RLL através de SFC Gráficos: Simultaneidade Dependência Simultaneidade Condensado Decomposições: Componentes conexos Conectividade total Grafos de seqüência b) Implementação 3) Conclusão
Sumário 1) Carro-chefe do controle industrial Controladores Lógicos Programáveis (CLP) Relay Ladder Logic (RLL) Sequential Function Chart (SFC) 2) Algoritmo de conversão a) Emulação de RLL através de SFC Gráficos: Simultaneidade Dependência Simultaneidade Condensado Decomposições: Componentes conexos Conectividade total Grafos de seqüência b) Implementação 3) Conclusão
Gráfico de Simultaneidade O gráfico não-direcionado contém informações de como as variáveis de estado podem estar ativas simultaneamente Composição: Pontos ou nós => variáveis de estado, saída dos degraus (etapas) linhas => indicam simultaneidade 6 degraus no ladder <=> 6 etapas no SFC q 1 e q 2, q 2 e q 4, q 2 e q 5 são variáveis de saída simultâneas mas, q 4 e q 5, q 2 e q 6, q 3 e q 6 não são simultâneos
Sumário 1) Carro-chefe do controle industrial Controladores Lógicos Programáveis (CLP) Relay Ladder Logic (RLL) Sequential Function Chart (SFC) 2) Algoritmo de conversão a) Emulação de RLL através de SFC Gráficos: Simultaneidade Dependência Simultaneidade Condensado Decomposições: Componentes conexos Conectividade total Grafos de seqüência b) Implementação 3) Conclusão
Gráfico de dependência O gráfico direcionado contém informações de como os degraus dependem das saídas de degraus anteriores Os degraus que dependem de um anterior devem ser varridos na mesma ordem no SFC Composição: pontos ou nós => variáveis de estado, saídas dos degraus (etapas) setas => indica dependência Exemplo: q 2 depende de q 1, q 4 depende de q 1 mas,... q 5 é independente de todas as variáveis
Sumário 1) Carro-chefe do controle industrial Controladores Lógicos Programáveis (CLP) Relay Ladder Logic (RLL) Sequential Function Chart (SFC) 2) Algoritmo de conversão a) Emulação de RLL através de SFC Gráficos: Simultaneidade Dependência Simultaneidade Condensado Decomposições: Componentes conexos Conectividade total Grafos de seqüência b) Implementação 3) Conclusão
Gráfico de Simultaneidade Condensado É um gráfico não-direcionado resultante dos gráficos de simultaneidade e de dependência Os degraus dependentes de anteriores são mantidos na mesma etapa SFC Fusão de nós interconexos mantendo as mesmas conexões do gráfico de simultaneidade Gráfico de dependência: {q1, q2, q4}, {q3, q6} e {q5}
Sumário 1) Carro-chefe do controle industrial Controladores Lógicos Programáveis (CLP) Relay Ladder Logic (RLL) Sequential Function Chart (SFC) 2) Algoritmo de conversão a) Emulação de RLL através de SFC Gráficos: Simultaneidade Dependência Simultaneidade Condensado Decomposições: Componentes conexos Conectividade total Grafos de seqüência b) Implementação 3) Conclusão
Decomposição de Gráficos de Simultaneidade O gráfico de simultaneidade condensado, durante a reconstituição do projeto, passa por duas operações de decomposição decomposição de componente conectado X estrutura de caminho simples decomposição de conectividade total X estrutura de caminho paralelo
Sumário 1) Carro-chefe do controle industrial Controladores Lógicos Programáveis (CLP) Relay Ladder Logic (RLL) Sequential Function Chart (SFC) 2) Algoritmo de conversão a) Emulação de RLL através de SFC Gráficos: Simultaneidade Dependência Simultaneidade Condensado Decomposições: Componentes conexos Conectividade total Grafos de seqüência b) Implementação 3) Conclusão
Decomposição de Componentes Conexos DCC(G) => subgráficos {G 1, G 2,...} em que cada G i =(N i,l i ) 1) nenhum nó em G i está conectado a um nó em G j, i!=j G I G J 2) os conjuntos de nós para os subgráficos em DCC(G) formam uma partição para N 3) os conjuntos de bordas para os subgráficos em DCC(G) formam uma partição para L 4) número de nós e bordas não se altera
Decomposição de Componentes Conexos Associações e Correspondências variáveis de estado X novas etapas (de acordo com os conjuntos de nós) etapas SFC X subgráfico G i
Sumário 1) Carro-chefe do controle industrial Controladores Lógicos Programáveis (CLP) Relay Ladder Logic (RLL) Sequential Function Chart (SFC) 2) Algoritmo de conversão a) Emulação de RLL através de SFC Gráficos: Simultaneidade Dependência Simultaneidade Condensado Decomposições: Componentes conexos Conectividade total Grafos de seqüência b) Implementação 3) Conclusão
Decomposição de Conectividade Total FCD(G) => subgráficos {G 1, G 2,...} em que cada G i =(N i,l i ) 1) O nó considerado é conexo a todos os outros 2) Cada subgráfico gerado por FCD(G) forma uma partição do conjunto N 3) Cada linha de G está em no máximo um dos subgráficos E 1 E 2... Ee E I E J = 4) O número de nós não se altera, mas o número de linhas é igual ou menor que o gráfico original 5) Alternativa de implementação: grafos negativos
Sumário 1) Carro-chefe do controle industrial Controladores Lógicos Programáveis (CLP) Relay Ladder Logic (RLL) Sequential Function Chart (SFC) 2) Algoritmo de conversão a) Emulação de RLL através de SFC Gráficos: Simultaneidade Dependência Simultaneidade Condensado Decomposições: Componentes conexos Conectividade total Grafos de seqüência b) Implementação 3) Conclusão
Grafos de Seqüência Exemplo de gráfico de seqüência e a respectiva estrutura de divergência simples
Grafos de Seqüência Observar que Pr2 ATIVA q4 e DESATIVA q1 O grafo direcionado mostra a seqüência em seu percurso que vai de q1 para q4
Grafos de Seqüência O grafo de seqüência ainda será modificado: 1) Remoção de estruturas desnecessárias ( percursos entre os nós n i e n j de estruturas diferentes são os mesmos) 2) Remoção de loops Observar que Pr2 ATIVA q4 e DESATIVA q1 O grafo direcionado mostra a seqüência em seu percurso que vai de q1 para q4
Sumário 1) Carro-chefe do controle industrial Controladores Lógicos Programáveis (CLP) Relay Ladder Logic (RLL) Sequential Function Chart (SFC) 2) Algoritmo de conversão a) Emulação de RLL através de SFC Gráficos: Simultaneidade Dependência Simultaneidade Condensado Decomposições: Componentes conexos Conectividade total Grafos de seqüência b) Implementação 3) Conclusão
Implementação
Implementação Sistema de neutralização - Descrição 1) Sensores: - ts e as: ambos ativados indicam neutralização completada. - ls1, ls2 e ls3: indicadores de nível. 2) Atuadores (válvulas e contatos): - v1, v2, v3 e v4, m, h Funcionamento - Descrição 1) Início: válvulas fechadas, misturador m e aquecedor h desligados, tanque de reação vazio 2) Abre v1 e aguarda ls2 3) a) Liga-se m somente quando ls2 ativo. b) Para regular a temperatura, liga-se h. c) Para balancear, abre-se v2. Obs.: Se o tanque encher (ls3), fechar v2, abrir v4 até ls2, fechar v4, voltar a 3c) 4) Se ph e temperatura corretos (as e tl), desliga h, fecha v2, abre v3 até ls1, fecha v3, voltar para 1)
Implementação 1) v1=(start+v1).!ls2.!v3 2) m=(ls2+m).ls1 3) h=ls2.!ts.!v3 4) tl=ls2.ts 5) v4=(ls3+v4).ls2 6) v2=ls2.!as.!v3.!v4 7) al=ls2.as 8) v3=(ls2.ts.as+v3).ls1.!v4 8 saídas: v1,m,h,tl,v4,v2,al,v3 6 entradas: ls1,ls2,ls3,ts e as
Implementação Criação de 2 etapas e 2 transições Simplificação: utilização de conceitos da álgebra booleana Teoremas de De Morgan - (ABC)'=A'+B'+C' - (A+B+C)'=A'.B'.C' OU...
Método de Quine-McClusky
Continuando... Obtenção do gráfico de simultaneidade condensado
FCD e SFC
FCD e SFC
FCD e SFC
CCD e SFC
CCD e SFC
CCD e SFC
FCD e SFC
FCD e SFC
FCD e SFC
CCD e SFC
CCD e SFC
CCD e SFC
Sumário 1) Carro-chefe do controle industrial Controladores Lógicos Programáveis (CLP) Relay Ladder Logic (RLL) Sequential Function Chart (SFC) 2) Algoritmo de conversão a) Emulação de RLL através de SFC Gráficos: Simultaneidade Dependência Simultaneidade Condensado Decomposições: Componentes conexos Conectividade total Grafos de seqüência b) Implementação 3) Conclusão
Conclusão - Área extremamente promissora - Projeto multidisciplinar - Necessidade de sólidos conhecimentos em programação - Necessidade de uma abordagem mais formal A ser feito: - Programas que abordem a simplificação proposta pelo algoritmo de Quine-McClusky - Desenvolvimento de novas implementações para recursos como temporizadores, latches e outros do CLP - Eliminar o critério subjetivo inerente a cada sistema para que o processo possa ser abordado através de um software.