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. KroghOrientador: Cap Carrilho
1) Carro-chefe do controle industrial Controladores Lógicos Programáveis (CLP) Relay Ladder Logic (RLL) Sequential Function Chart (SFC)
2) Algoritmo de conversãoa) Emulação de RLL através de SFC
Gráficos:• Simultaneidade• Dependência• Simultaneidade Condensado
Decomposições: • Componentes conexos• Conectividade total
Grafos de seqüênciab) 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ãoa) Emulação de RLL através de SFC
Gráficos:• Simultaneidade• Dependência• Simultaneidade Condensado
Decomposições: • Componentes conexos• Conectividade total
Grafos de seqüênciab) Implementação
3) Conclusão
Sumário
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)
1) Carro-chefe do controle industrial Controladores Lógicos Programáveis (CLP) Relay Ladder Logic (RLL) Sequential Function Chart (SFC)
2) Algoritmo de conversãoa) Emulação de RLL através de SFC
Gráficos:• Simultaneidade• Dependência• Simultaneidade Condensado
Decomposições: • Componentes conexos• Conectividade total
Grafos de seqüênciab) Implementação
3) Conclusão
Sumário
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
1) Carro-chefe do controle industrial Controladores Lógicos Programáveis (CLP) Relay Ladder Logic (RLL) Sequential Function Chart (SFC)
2) Algoritmo de conversãoa) Emulação de RLL através de SFC
Gráficos:• Simultaneidade• Dependência• Simultaneidade Condensado
Decomposições: • Componentes conexos• Conectividade total
Grafos de seqüênciab) Implementação
3) Conclusão
Sumário
Lógica “Ladder” para RelésVarredura ordenada nos R degrausBobina 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
oi:=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={q1, 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 é
qj:=B
j(Q,U)
v1 = (start+v
1).!ls
2.!v
3
1) Carro-chefe do controle industrial Controladores Lógicos Programáveis (CLP) Relay Ladder Logic (RLL) Sequential Function Chart (SFC)
2) Algoritmo de conversãoa) Emulação de RLL através de SFC
Gráficos:• Simultaneidade• Dependência• Simultaneidade Condensado
Decomposições: • Componentes conexos• Conectividade total
Grafos de seqüênciab) Implementação
3) Conclusão
Sumário
Gráficos de Funções Seqüenciais
Consiste de etapas “qi”= variáveis estado + entrada
1) Ler a entrada física2) Varrer todos as etapas ativas3) Avaliar as receptividades
●etapas a serem habilitadas●etapas a serem desabilitadas
4) Atualizar a marcação SFC5) Varrer os passos habilitados6) 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
1) Carro-chefe do controle industrial Controladores Lógicos Programáveis (CLP) Relay Ladder Logic (RLL) Sequential Function Chart (SFC)
2) Algoritmo de conversãoa) Emulação de RLL através de SFC
Gráficos:• Simultaneidade• Dependência• Simultaneidade Condensado
Decomposições: • Componentes conexos• Conectividade total
Grafos de seqüênciab) 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ãoa) Emulação de RLL através de SFC
Gráficos:• Simultaneidade• Dependência• Simultaneidade Condensado
Decomposições: • Componentes conexos• Conectividade total
Grafos de seqüênciab) Implementação
3) Conclusão
Sumário
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
1) Carro-chefe do controle industrial Controladores Lógicos Programáveis (CLP) Relay Ladder Logic (RLL) Sequential Function Chart (SFC)
2) Algoritmo de conversãoa) Emulação de RLL através de SFC
Gráficos:• Simultaneidade• Dependência• Simultaneidade Condensado
Decomposições: • Componentes conexos• Conectividade total
Grafos de seqüênciab) 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ãoa) Emulação de RLL através de SFC
Gráficos:• Simultaneidade• Dependência• Simultaneidade Condensado
Decomposições: • Componentes conexos• Conectividade total
Grafos de seqüênciab) Implementação
3) Conclusão
Sumário
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
q1 e q
2, q
2 e q
4, q
2 e q
5 são variáveis de saída
simultâneas
mas, q4 e q
5, q
2 e q
6, q
3 e q
6 não são simultâneos
1) Carro-chefe do controle industrial Controladores Lógicos Programáveis (CLP) Relay Ladder Logic (RLL) Sequential Function Chart (SFC)
2) Algoritmo de conversãoa) Emulação de RLL através de SFC
Gráficos:• Simultaneidade• Dependência• Simultaneidade Condensado
Decomposições: • Componentes conexos• Conectividade total
Grafos de seqüênciab) Implementação
3) Conclusão
Sumário
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:
q2 depende de q
1, q
4 depende de q
1
mas,...q
5 é independente de todas as
variáveis
1) Carro-chefe do controle industrial Controladores Lógicos Programáveis (CLP) Relay Ladder Logic (RLL) Sequential Function Chart (SFC)
2) Algoritmo de conversãoa) Emulação de RLL através de SFC
Gráficos:• Simultaneidade• Dependência• Simultaneidade Condensado
Decomposições: • Componentes conexos• Conectividade total
Grafos de seqüênciab) Implementação
3) Conclusão
Sumário
Gráfico de Simultaneidade Condensado
É um gráfico não-direcionado resultante dos gráficos de simultaneidade e de dependência
Fusão de nós interconexos mantendo as mesmas conexões do
gráfico de simultaneidade
Os degraus dependentes de anteriores são mantidos na mesma etapa SFC
Gráfico de dependência: {q1, q2, q4}, {q3, q6} e {q5}
1) Carro-chefe do controle industrial Controladores Lógicos Programáveis (CLP) Relay Ladder Logic (RLL) Sequential Function Chart (SFC)
2) Algoritmo de conversãoa) Emulação de RLL através de SFC
Gráficos:• Simultaneidade• Dependência• Simultaneidade Condensado
Decomposições: • Componentes conexos• Conectividade total
Grafos de seqüênciab) Implementação
3) Conclusão
Sumário
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 conectadoX
estrutura de caminho simples
decomposição de conectividade totalX
estrutura de caminho paralelo
1) Carro-chefe do controle industrial Controladores Lógicos Programáveis (CLP) Relay Ladder Logic (RLL) Sequential Function Chart (SFC)
2) Algoritmo de conversãoa) Emulação de RLL através de SFC
Gráficos:• Simultaneidade• Dependência• Simultaneidade Condensado
Decomposições: • Componentes conexos• Conectividade total
Grafos de seqüênciab) Implementação
3) Conclusão
Sumário
Decomposição de Componentes Conexos DCC(G) => subgráficos {G
1, G
2, ...}
em que cada Gi=(N
i,L
i)
1) nenhum nó em Gi está conectado a um nó em G
j , i!=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
G I
G J
Decomposição de Componentes Conexos
etapas SFC
X
subgráfico Gi
variáveis de estadoX
novas etapas (de acordo com os conjuntos de nós)
Associações e Correspondências
1) Carro-chefe do controle industrial Controladores Lógicos Programáveis (CLP) Relay Ladder Logic (RLL) Sequential Function Chart (SFC)
2) Algoritmo de conversãoa) Emulação de RLL através de SFC
Gráficos:• Simultaneidade• Dependência• Simultaneidade Condensado
Decomposições: • Componentes conexos• Conectividade total
Grafos de seqüênciab) Implementação
3) Conclusão
Sumário
Decomposição de Conectividade Total
FCD(G) => subgráficos {G1, 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
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
E1∪E2∪...⊆E EI∩EJ=∅
1) Carro-chefe do controle industrial Controladores Lógicos Programáveis (CLP) Relay Ladder Logic (RLL) Sequential Function Chart (SFC)
2) Algoritmo de conversãoa) Emulação de RLL através de SFC
Gráficos:• Simultaneidade• Dependência• Simultaneidade Condensado
Decomposições: • Componentes conexos• Conectividade total
Grafos de seqüênciab) Implementação
3) Conclusão
Sumário
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
Observar que Pr2 ATIVA q4 e DESATIVA q1
O grafo direcionado mostra a seqüência em seu percurso que vai de q1 para q4
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
1) Carro-chefe do controle industrial Controladores Lógicos Programáveis (CLP) Relay Ladder Logic (RLL) Sequential Function Chart (SFC)
2) Algoritmo de conversãoa) Emulação de RLL através de SFC
Gráficos:• Simultaneidade• Dependência• Simultaneidade Condensado
Decomposições: • Componentes conexos• Conectividade total
Grafos de seqüênciab) Implementação
3) Conclusão
Sumário
Implementação
ImplementaçãoSistema de neutralização - Descrição1) 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, hFuncionamento - Descrição 1) Início: válvulas fechadas, misturador m e aquecedor h desligados, tanque de reação vazio2) Abre v1 e aguarda ls23) 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.!v32) m=(ls2+m).ls13) h=ls2.!ts.!v34) tl=ls2.ts5) v4=(ls3+v4).ls26) v2=ls2.!as.!v3.!v47) al=ls2.as8) 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
Teoremas de De Morgan - (ABC)'=A'+B'+C' - (A+B+C)'=A'.B'.C'
Simplificação: utilização de conceitos da álgebra booleana
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
1) Carro-chefe do controle industrial Controladores Lógicos Programáveis (CLP) Relay Ladder Logic (RLL) Sequential Function Chart (SFC)
2) Algoritmo de conversãoa) Emulação de RLL através de SFC
Gráficos:• Simultaneidade• Dependência• Simultaneidade Condensado
Decomposições: • Componentes conexos• Conectividade total
Grafos de seqüênciab) Implementação
3) Conclusão
Sumário
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.