Você está na página 1de 6

Promoo:

VII SEMINRIO NACIONAL DE


CONTROLE E AUTOMAO
INDUSTRIAL, ELTRICA E DE TELECOMUNICAES

8 a 10 de novembro de 2011 - Salvador, Bahia, Brasil.


Concepo de uma ferramenta para gerao automtica de cdigo para
CLPs baseada na Teoria de Controle Supervisrio
Adriano Oliveira Pires*, Diogo Luis Lemes da Cruz**, Andr Bittencourt Leal*
* Universidade do Estado de Santa Catarina - UDESC

GRUPO:

** Pollux Automation

TEMA: Experincias e tendncias de evoluo de Software e Hardware para sistemas de


automao e controle
PALAVRAS-CHAVE: Sistemas a Eventos Discretos, Controle Supervisrio, Gerao de Cdigo
KEYWORDS: Discrete Event System, Supervisory Control, Code Generation.
RESUMO: Este trabalho apresenta a concepo
de uma ferramenta computacional baseada na
Teoria de Controle Supervisrio (TCS) que
interpreta dados na forma de autmatos e
eventos e gera uma lgica de controle
compatvel com o padro Ladder, bem como
alguns dos problemas da implementao da
teoria em controladores fsicos. Tal ferramenta se
mostra como uma interface entre estudos
acadmicos da TCS e a sua aplicao industrial
atravs dos CLPs.
ABSTRACT: This paper presents a conception of
a computational Tool based on the Supervisory
Control Theory (SCT) that aims to translate and
process input data in form of automata then
convert the events and others information into a
standard PLC ladder diagram, also discuss some
implementation issues. This tool presents an
interface between the academic studies on SCT
solutions and industries applications.
INTRODUO
Atualmente Indstrias e alguns sistemas
automatizados
utilizam
os
conhecidos
Controladores Lgico Programveis (CLPs) em
diversas aplicaes.
Apesar da grande experincia de alguns
profissionais tcnicos na programao de CLPs
ainda no existe uma metodologia para a
definio da lgica de controle destes
equipamentos, permitindo que cada programador
siga sua prpria linha de raciocnio na confeco
do cdigo, gerando programas com pouco ou
nenhuma
padronizao,
consequentemente
dificultando sua manuteno, atualizao ou
compreenso. Alm disso, o cenrio atual deixa

margem para a ocorrncia de falhas humanas


que podem causar problemas de bloqueio e
aes de controle indesejadas.
Como alternativa, a Teoria do Controle
Supervisrio (TCS) e suas extenses [1],
apresentam-se como alternativas viveis para a
criao de uma lgica de controle minimamente
restritiva e no bloqueante.
Tal alternativa tem despertado um grande
interesse por parte da academia, mas, como
discutido em [2], apresenta pouco impacto na
indstria, principalmente devido a falta de uma
interface adequada entre o modelo da planta
descrito segundo a TCS e uma linguagem
conhecida do controlador utilizado.
Este trabalho discute e apresenta a
concepo de uma ferramenta para gerao
automtica de cdigo para CLP baseada na TCS
que busca fornecer esta interface entre a
aplicao terica e prtica do Controle
Supervisrio.
MATERIAS OU MTODOS

TEORIA DO CONTROLE SUPERVISRIO


ABORDAGEM MODULAR LOCAL
A Teoria do Controle Supervisrio, proposta por
proposta por Ramadge e Wonham (1989),
permite a obteno de um controle no
bloqueante e minimamente restritivo para
sistemas de automao modelados atravs de
autmatos baseados em Sistemas de Eventos
Discretos (SED).

Pgina 1 de 6

VII SEMINRIO NACIONAL DE


CONTROLE E AUTOMAO
INDUSTRIAL, ELTRICA E DE TELECOMUNICAES

Dentre as extenses da TCS, a abordagem


modular local, diferentemente da abordagem
monoltica, prev o desacoplamento de
subsistemas concorrentes em Sistemas Produto
(SP) e a sntese de supervisores modulares para
cada especificao [3].
Para grandes sistemas esta abordagem
apresenta um gasto muito menor do que as
outras extenses da teoria, solucionando alguns
problemas computacionais.
PROBLEMAS DE IMPLEMENTAO DA TCS
EM CLPs
Estando os supervisores modulares sintetizados
como autmatos de estados finitos a lei de
controle terica est bem definida e atende-se s
especificaes desejadas segundo a metodologia
da TCS. Porm, como discute-se em [4], torna-se
necessrio extrair as informaes agrupadas nos
autmatos na forma de estados e eventos e
transferi-las para um controlador de modo a
tornar implementvel os supervisores obtidos.
nesta etapa que aparecem os problemas
de implementao listados abaixo:

Causalidade: a TCS assume que a


planta gera espontaneamente todos os
eventos e que o supervisor o
responsvel
por,
dinamicamente,
desabilitar os eventos que estariam
proibidos segundo as especificaes.
Porm, na maioria dos sistemas reais, os
eventos
no
so
gerados
espontaneamente,
tornando-se
dependentes de respostas entradas e
sadas do controlador. Por este motivo,
em vez de implementar diretamente a
lgica de controle, obtida pela TCS, no
CLP necessrio adequar a teoria e a
prtica;

Efeito avalanche: pode ocorrer quando


um mesmo evento utilizado em vrias
transies de estado, fazendo com que o
CLP transite indevidamente vrios
estados do supervisor num mesmo ciclo
de scan;

Problema da escolha: ocorre quando


para um dado estado do supervisor
existem
eventos controlveis que
permitem a transio para estados
diferentes, conforme ilustra o autmato
da figura 1. Neste caso o programa em
CLP precisa escolher qual dos eventos
dever ser gerado de modo que o
supervisor transite para apenas um dos
estados possveis;

Figura 1 - Exemplo de automato que apresenta o


problema da escolha

Simultaneidade: Devido aos limites


tecnolgicos para a leitura das entradas
do CLP, duas ou mais mudanas de sinal
da planta podem ocorrer num mesmo
ciclo de scan, de modo que o controlador
no consiga identificar a ordem de
ocorrncia dos eventos;

Sincronizao inexata: Devido ao ciclo


de scan do CLP possvel que ocorra
uma mudana de sinal na planta
enquanto o programa est sendo
processado, invalidando esta mudana.

ESTRUTURA DO PROGRAMA GERADO PARA


CLP
A lei de controle devidamente traduzida para
diagrama Ladder para CLP consiste basicamente
em trs partes: Deteco da ocorrncia de
eventos
no
controlveis
na
planta;
Desabilitao, atravs do supervisor, dos eventos
controlveis; e efetuar as transies de estados
do sistema a partir dos eventos habilitados. Cada
uma destas etapas est ligada a uma ou mais
subrotinas do CLP conforme explicitadas abaixo.
ROTINA PRINCIPAL
a rotina responsvel por chamar as outras
subrotinas principais na ordem correta, conforme
o fluxograma da figura 1 abaixo.

Pgina 1 de 6

VII SEMINRIO NACIONAL DE


CONTROLE E AUTOMAO
INDUSTRIAL, ELTRICA E DE TELECOMUNICAES

(responsvel pelas transies dos supervisores


dado um evento no controlvel) e CG
(responsvel pelas transies dos SP dado um
evento controlvel).
ROTINA CMM
Trata o problema da escolha descrito
anteriormente. A ferramenta utiliza um algoritmo
que os eventos onde o ocorre o problema da
escolha e o cdigo gerado para CLP garante que
os eventos controlveis, envolvidos no problema,
sejam aleatoriamente desabilitados de modo que
o supervisor transite apenas um nico estado no
ciclo de scan.

Figura 2 - Fluxograma da rotina principal


ROTINA INICIALIZAO
Todos os autmatos tm um estado inicial
definido pelo seu modelo. A rotina de
inicializao responsvel por garantir que o
CLP tenha esta informao.
ROTINAS UCG, UCS, CS E CG
Estas so as rotinas responsveis por
efetuar as transies de estados dos supervisores
e dos sistemas produto de acordo com os
eventos controlveis ou no controlveis
habilitados no atual estado do autmato.
Na figura 2 abaixo temos um exemplo de
transio feito pela rotina CS (relacionada s
transies efetuadas a partir dos eventos
controlveis do supervisor).

Figura 3 - Exemplo de funcionamento da rotina CS


Esta linha do diagrama em Ladder fora com
que, caso possvel, os supervisores Sa e Sd
transitem, respectivamente, do estado 1 para o 0,
e do estado 0 para o 1 dado a que o evento
controlvel A2 ocorra.
Semelhante a rotina acima existem as
rotinas UCG (responsvel pelas transies dos
SP dado um evento no controlvel), UCS

ROTINAS
DESABILITAES
E
ATUALIZAO
So as rotinas que atualizam as memrias
de quais eventos controlveis esto desabilitados
no estado do supervisor. Abaixo, na figura 3, h
um exemplo de cdigo em diagrama Ladder.

Figura 4 - Exemplo em diagrama Ladder da rotina


de disabilitaes
Esta imagem mostra que o supervisor Sd no
estado 2 desabilita os eventos controlveis A2,
A4 e A5.
A
FERRAMENTA
GERADORA
DE
CDIGO
A fim de obter um aplicativo que ao mesmo
tempo tivesse boa compatibilidade e velocidade,
optou-se por utilizar a linguagem de programao
C#. Para minimizar os problemas com a interface
utilizou-se a IDE Microsoft Visual Studio 2010.
TELA DE BOAS VINDAS
A tela inicial permite que, atravs dos
radiobuttons, os usurios escolham entre criar um
novo projeto ou importar um projeto j existente.
Permite tambm que o usurio defina com qual
abordagem da TCS ir trabalhar (abordagem
modular local ou abordagem monoltica).
A interface tambm permite que o usurio
escolha em qual formato o autmato vai ser
carregado na ferramenta: formato gerado pelo
Pgina 1 de 6

VII SEMINRIO NACIONAL DE


CONTROLE E AUTOMAO
INDUSTRIAL, ELTRICA E DE TELECOMUNICAES

software GRAIL [5], TCT [2] ou IDES [6].


Atualmente a ferramenta s consegue gerar
cdigo de maneira adequada se os supervisores
e sistemas produtos forem modelados conforme
a abordagem modular local e exportados pelo
IDES.

CONFIGURAO DOS EVENTOS


Uma vez que todos os supervisores e sistemas
produto tenham sido importados pela ferramenta
ser possvel o acesso a uma tela como a da
figura 5 abaixo.

ARQUIVO RESULTANTE
Estando todos os parmetros definidos, o usurio
capaz de gerar o cdigo para CLP de acordo
com a norma IEC 61131-3.
Atualmente o cdigo gerado escrito
apenas como XML (Extensible Markup Language)
com a extenso L5X, compatvel apenas para ser
importado pelo software RSLogix 5000 da
empresa Rockwell Automation.

SOLUO DE UM PROBLEMA
Para apresentar um exemplo da soluo do
problema utilizando a ferramenta geradora de
cdigo pode-se utilizar um sistema automtico de
produo de mltiplos produtos apresentado em
[7].
O
sistema
genrico
(conforme
[8]
apresentada na figura 6) prev mltiplas
estaes de trabalho que produziro peas a
partir de processos distintos. Cada estao de
trabalho possui uma mquina, um buffer unitrio
de entrada e um buffer unitrio de sada. Para a
alimentao de produtos no sistema uma esteira
alimenta buffer, tambm unitrio.

Figura 5 - Tela para a configurao dos eventos


Os eventos so apresentados conforme o
nome que receberam no modelo terico descrito
pelo software IDES. A partir da possvel dividir
os eventos em duas categorias: controlveis e
no controlveis.
Os eventos no controlveis devero ser
relacionados com os endereos de entrada do
controlador, indicando a sua ligao com
sensores ou botes. preciso informar para o
programa que tipo de mudana de sinal na
entrada (borda de subida ou borda de descida)
dever ocorrer para que o CLP identifique a
gerao do evento no controlvel.
Os eventos controlveis podero ser
relacionados com os seguintes efeitos fsicos: (1)
ativar uma sada digital por tempo indefinido,
sendo necessrio que algum outro evento seja
configurado como resetter desta sada,
desabilitando-a quando especificado; (2) ativar
uma sada digital por um perodo de tempo
definido pelo usurio; (3) ativar uma subrotina, a
ser programada pelo usurio, que realizar uma
atividade mais especfica no prevista pela
ferramenta.

Figura 6 - Representao do sistema


Neste exemplo iro se considerar trs
estaes de trabalho com mquinas as M1, M2 e
M3, um buffer B0 de entrada de peas e os
buffers B1, B2, B3, B4, B5 e B6 referentes s
estaes de trabalho. Um rob responsvel por
movimentar as peas pelas estaes de trabalho,
com a condio que o sistema possa processar
os dois tipos de produto A e B.
A figura 7 apresenta os autmatos que
modelam as plantas G1, G2 e G3 que modelam
as mquinas M1, M2 e M3 respectivamente. Os
eventos controlveis mtA e mtB representam o
Pgina 1 de 6

VII SEMINRIO NACIONAL DE


CONTROLE E AUTOMAO
INDUSTRIAL, ELTRICA E DE TELECOMUNICAES

incio de operao das peas tipo A e B; os


eventos no controlveis mtA e mtB, representam
o final de produo das peas tipo A e B.

Na figura 9 apresenta-se o modelo para o


rob, onde os eventos controlveis xy
reapresentam o comando de deslocamento do
rob de um buffer x para um buffer y e z um
evento no controlvel que representa a chegada
do rob num buffer z.

Figura 7 - Plantas a) G1, b) G2 e c) G3


A figura 8 apresenta o modelamento da
esteira de entrada de produto no processo. O
evento controlvel es representa o incio de
funcionamento da esteira e pA e pB so os
eventos
no
controlveis
que
indicam,
respectivamente, se o produto A ou B chegaram
no buffer B0.
Figura 9 - Autmato que representa o rob

Figura 8 - Autmato que representa a esteira para


entrada de produto no processo

Especificaes so projetadas para os


buffers de B0 B6 a fim de evitar o underflow e o
overflow. Coordenando a organizao a
movimentao das peas pelo rob. Outras
especificaes so feitas baseadas na regra de
produo dos produtos nas estaes de trabalho
e na regra para o funcionamento da produo.

CONCLUSO
Apesar de j existirem ferramentas tericas
importantes como o TCT, o GRAIL e o IDES,
ainda importante criar e disseminar ferramentas
prticas, que auxiliem o profissional com
conhecimentos tericos da TCS a implementar
mais facilmente sistemas de automao reais
baseando-se numa metodologia como a aqui
discutida.
A ferramenta discutida pode se mostrar
como um avano neste sentido, uma vez que
automatiza a gerao de cdigo para CLP
ocupando-se de questes de implementao
fsica, solucionando problemas como o problema
da escolha, o efeito avalanche e o da
causalidade.
Mesmo com avanos na rea, ainda existem
Pgina 1 de 6

VII SEMINRIO NACIONAL DE


CONTROLE E AUTOMAO
INDUSTRIAL, ELTRICA E DE TELECOMUNICAES

outros problemas de implementao para serem


explorados e solucionados, bem como diversas
melhorias,
expanses
em
relao
a
compatibilidade e otimizaes da ferramenta.
AGRADECIMENTOS
Os autores agradecem o apoio financeiro
fornecido pela UDESC (Universidade do Estado
de Santa Catarina), CNPq e FAPESC (Contrato
CON04504/2008-7) e ao MEC/SESu, mantenedor
do Programa de Educao Tutorial PET.
REFERNCIAS
[1] M. Fabian and A. Hellgren. PLC-based
implementation of supervisory control for
discrete event systems. In Proc. Of the 37th
CDC, 1998.
[2] L. Fen and W. Wonham. Tct: A computation
tool for supervisory control synthesis.
International Workshop on Discrete Event
Systemsl, (8):1012, July 2006.
[3] T. Hasdemir, S. Kurtulan, and L. Gren.
Hierarchical
control
for
structural
decentralized des. Discrete Event Systems,
pages 2730, september 2004.
[4] A. B. Leal, D. L. L. Da Cruz, and M. Da S.
Hounsell.
Supervisory
control
implementation into programmable logic
controllers. Pages 899905, 2009.
[5] C. Reiser, A. da Cunha, and J.Cury.The
environment grail for supervisory control of
discrete
event
systems.
International
Workshop on Discrete Event Systems
l,(8):390391, July2006.
[6] K.Rudie. The integrated discrete-event
systems tool. International Work shop on
Discrete
Event
Systems
l,(8):394
395,July2006.
[7] SILVA, D. B.; BUSETTI M. A.;VIEIRA, A. D.;
SANTOS, E. A.; MApplication of the
Supervisory Control to Automated Systems
of Multi-Product Manufacturing. In: 12th
IEEEConference on Emerging Technologies
and Factory Automation, Patras, Grecee.
Proceedings of 12th IEEEConference on
Emerging
Technologies
and
Factory
Automation, p. 689 696. 2007.
[8] GROOVER, M. P.; Automation, Production
Systems
and
Computer
Integrated
Manufacturing. Ed. Prentice Hall 2 ed. New
Jersey. 2001.

Pgina 1 de 6

Você também pode gostar