Você está na página 1de 135

UM LABORATRIO PARA UM CURSO DE AUTOMAO INDUSTRIAL

UTILIZANDO A TEORIA DE SISTEMAS A EVENTOS DISCRETOS

Jos Ricardo da Silva Dias

TESE SUBMETIDA AO CORPO DOCENTE DA COORDENAO DOS


PROGRAMAS DE PS-GRADUAO DE ENGENHARIA DA UNIVERSIDADE
FEDERAL DO RIO DE JANEIRO COMO PARTE DOS REQUISISTOS
NECESSRIOS PARA A OBTENO DO GRAU DE MESTRE EM CINCIAS EM
ENGENHARIA ELTRICA.

Aprovada por:

_______________________________________________
Prof. Joo Carlos dos Santos Basilio, Ph. D.

_______________________________________________
Prof. Fernando Cesar Lizarralde, D. Sc.

_______________________________________________
Prof. Paulo Csar Marques Vieira, D. Sc.

RIO DE JANEIRO, RJ BRASIL


ABRIL DE 2005
DIAS, JOS RICARDO DA SILVA
Um Laboratrio para um Curso de Automa-
o Industrial utilizando a Teoria de Sistemas a
Eventos Discretos [Rio de Janeiro] 2005
VIII, 127 p. 29,7 cm (COPPE/UFRJ, M.Sc.,
Engenharia Eltrica, 2005)
Tese Universidade Federal do Rio de
Janeiro, COPPE
1. Sistemas a Eventos Discretos
2. Autmato
3. Redes de Petri
4. Controladores Lgicos Programveis
5. Linguagem de Programao Ladder
3. Experincias de Laboratrio
I. COPPE/UFRJ II. Ttulo ( srie )

ii
minha me Conceio, minha esposa Andra.
Aos meus filhos Andr Ricardo e Samuel Elias, e
aos meus irmos Eduardo, Ftima, Berna, Glria e Bete.

iii
AGRADECIMENTOS

A Deus Pai pela vida, pela sade, cuidado, proteo e disposio concedidos
sem medida e a Jesus, por seu sacrifcio e sua interseo por ns.
minha me, por ter dedicado sua vida para que ns (seus filhos) tivssemos
condies de estudar e todo o seu esforo para fazer-nos pessoas de bem, e aos meus
irmos que sempre me ajudaram nas dificuldades.
minha esposa Andra e meus filhos Andr e Samuel, pela compreenso,
pacincia e apoio durante mais essa jornada.
Aos professores Afonso Celso, Amit Bhaya, Fernando Lizarralde, Liu Hsu e
Ramon Romankevicius da UFRJ/COPPE, professora Marly Guimares e ao professor
Ccero Costa da UFAM e SUFRAMA, pela disposio e colaborao no ensino.
Ao professor Dionsio pelo emprstimo de vrios livros e a todos que, de
maneira direta e indireta , colaboraram para a concluso deste trabalho.
E, em especial, ao meu professor e orientador Joo Carlos dos Santos Baslio,
que mesmo enfrentando problemas de sade, nunca desanimou e nem me fez desanimar,
continuando sempre firme para concluso deste trabalho, e pelos laos de amizade que
se formaram pela convivncia, mesmo que distncia.

iv
Resumo da Teses apresentada COPPE/UFRJ como parte dos requisitos necessrios
para a obteno do grau de Mestre em Cincias (M. Sc.)

UM LABORATRIO PARA UM CURSO DE AUTOMAO INDUSTRIAL


UTILIZANDO A TEORIA DE SISTEMAS A EVENTOS DISCRETOS

Jos Ricardo da Silva Dias

Abril/2005

Orientador: Joo Carlos dos Santos Baslio

Programa : Engenharia Eltrica

O ensino de automao industrial, em cursos de engenharia, alm dos


fundamentos tericos, requer, a nvel de projeto, a utilizao de redes de Petri e na
implementao, a prtica com o hardware e o software dos controladores lgicos
programveis.
Este trabalho tem por finalidade elaborar experincias para um laboratrio de
automao industrial utilizando a teoria de sistemas a eventos discretos, tratando de
algumas tcnicas usadas para modelagem desses sistemas. As experincias sero
implementadas utilizando-se um controlador lgico programvel (CLP) que ser
programado em linguagem ladder para executar o controle de seqncias de eventos
pr-determinadas. O modelo a ser implementado ser formalizado em rede de Petri e
posteriormente gerado um programa em linguagem ladder de forma heurstica.
As teorias de autmatos e redes de Petri, que so alguns dos formalismos
utilizados para representar um sistema a eventos discretos, sero tambm estudadas
neste trabalho.

v
Abstract of Thesis presented to COPPE/UFRJ as a partial fulfillment of the
requirements for the degree of Master in Sciences (M. Sc.)

A LABORATORY FOR A COURSE IN INDUSTRY AUTOMATION USING THE


THEORY OF DISCREET EVENTS SYSTEMS

Jos Ricardo da Silva Dias

April/2005

Advisor: Joo Carlos dos Santos Basilio

Department: Electrical Engineering

The teaching of industry automation, at undergraduating level, and its besides


theoretical background, also requires the use of Petri Nets implementation using the
hardware and software of programmable logic controllers.
The objective of this work is to propose experiments for a laboratory of a course
in industry automation using the theory of discrete events systems, dealing with some
techniques used for modeling these systems. The experiments will be implemented
using a programmable logical controller (PLC) that will be programmed in ladder
language to execute the control of pre-determined sequences of events. The model to be
implemented will be formalized in Petri net and in the sequel, a program in ladder
language will be developed in a heuristic way.
Automata and Petri nets theories, some of the formalisms used to represent a
discrete events system will also be studied in this work.

vi
Sumrio

Resumo v

Abstract vi

1. Introduo 1
2. Fundamentos da teoria de sistemas a eventos discretos 6
2.1. Sistemas a eventos discretos....................................................................... 6
2.1.1. Evento................................................................................................ 6
2.1.2. Sistemas controlados pelo tempo e sistemas baseados em eventos... 7
2.1.3. Propriedades caractersticas de sistemas a evento discretos.............. 8
2.1.4. Exemplos de sistemas a evento discretos........................................... 10
2.2. Linguagens e Autmato.............................................................................. 14
2.2.1. Linguagens......................................................................................... 14
2.2.2. Operaes em linguagens................................................................... 15
2.2.3. Autmato............................................................................................ 16
2.2.4. Representao de linguagens por autmatos...................................... 18
2.2.5. Bloqueio............................................................................................. 19
2.3. Redes de Petri.............................................................................................. 20
2.3.1. Fundamentos de redes de Petri......................................................... 20
2.3.2. Evoluo dinmica das redes de Petri.............................................. 23
2.3.3. Equaes de estado........................................................................... 25
2.3.4 - Linguagens de Rede de Petri........................................................... 26
2.3.5 - Modelos de redes de Petri para sistemas com filas........................ 27
2.3.6. Comparao entre redes de Petri e autmato................................... 29
2.4. Modelos temporizados................................................................................ 30
2.4.1. Redes de Petri temporizadas............................................................. 31
3. Programao e utilizao de controladores lgicos Programveis (CLPs) 36
3.1. Controlador lgico programvel................................................................. 36
3.1.1. Introduo........................................................................................ 36

vii
3.1.2. Operao Bsica............................................................................... 39
3.1.3. Arquitetura bsica do CLP............................................................... 40
3.1.4. Classificao dos CLPs.................................................................... 45
3.2. Linguagem de programao (ladder).......................................................... 45
3.2.1. Programadores................................................................................. 46
3.2.2. Fundamentos de programao em linguagem ladder....................... 47
3.2.3. Implementao da lgica de controle............................................... 48
3.2.4. Implementao da lgica de controle por funes do CLP.............. 50
3.3. Converso entre Redes de Petri e Linguagem Ladder................................. 53
3.3.1. Mtodos de converso entre redes de Petri e linguagem ladder....... 53
3.3.2. Um mtodo para converter redes de Petri em linguagem ladder...... 55
4. Equipamentos do laboratrio 61
4.1. CLP TSX 37-22.......................................................................................... 61
4.2. Linguagem de Programao do TSX 3722................................................. 66
4.2.1. Estrutura de execuo das Tarefas................................................... 67
4.2.2 Ambiente de trabalho do PL7 Micro................................................ 68
4.2.3. Programao.................................................................................... 68
4.2.4. Criando um programa em linguagem ladder no PL7 Micro............ 72
4.3. Esteira transportadora................................................................................. 75
4.4. Conjunto de lmpadas e chaves de impulso sem reteno......................... 77
4.5. Esquemas de ligaes dos experimentos do captulo 5.............................. 79
5. Experincias do laboratrio 86
5.1. Experimentos bsicos para familiarizao com o CLP............................... 87
5.2. Experimentos para controle de trfego....................................................... 93
5.3. Experimentos para simular uma linha de produo industrial ................... 108
6. Concluso e trabalhos futuros 121
Bibliografia 123

viii
Captulo 1. Introduo

As queixas mais freqentes de alunos dos cursos tcnicos da rea de indstria


so a falta de prticas nos laboratrios do curso e a necessidade de mais embasamento
prtico para que os alunos possam se desenvolver melhor durante seus estgios
curriculares.
Segundo MARTIN e BROWN (1998), durante os ltimos dez anos, foram
administradas entrevistas com os alunos dos cursos superiores do Departamento de
Engenharia Eltrica da Universidade de Engenharia Eltrica de Arkansas em
Fayetteville, Arkansas 72701, aproximadamente 2 semanas antes de completarem o
semestre final. Dos muitos anos de entrevistas, ficou claro que muitos estudantes
sentiam que as disciplinas do currculo carecem de treinamento prtico adequado, i.e.,
no bastava dispensar algum tempo no laboratrio, se que os exerccios de laboratrio
no estiverem bem relacionados ao material dirigido em sala de aula. Alm disso, nas
discusses abertas com empregadores dos mesmos estudantes, verificou-se tambm que
os alunos precisam de uma exposio a uma variedade mais ampla de experincias e
equipamentos.
Um laboratrio de sistemas de engenharia uma amlgama de criar mtodos,
habilidades, princpios e disciplinas. Os mtodos de engenharia incluem descoberta,
avaliao e investigao. As habilidades de engenharia aplicveis incluem
experimentao, anlise de dados e modelagem, (MIDDLETON et al., 1996).
Enquanto foram aplicadas idias inovadoras a muitos aspectos do currculo de
engenharia em recentes anos (GRAYSON, 1994, ASEE, 1994, BORDOGNA et al.,
1993, CIBUZAR et al., 2001), o componente de laboratrio geralmente arrastou-se no
processo de reforma, com a exceo de algum progresso notvel ao nvel de iniciantes
(QUINN, 1993). Ainda hoje, os empregadores das indstrias pedem que a educao dos
estudantes seja recheada de inovaes para adquirir experincias prticas afinadas com
habilidades de integrao necessria aos engenheiros modernos. De acordo com
Norman Augustine (Lockheed Martin Corporation), Uma educao de engenharia tem
que incluir aplicaes claras que certamente tm que incluir as mos no trabalho....
(AUGUSTINE, 1994), De acordo com o Conselho de Engenharia, o currculo tem que
encarnar uma perspectiva de sistemas, uma perspectiva multi-disciplinar, e uma
integrao de conhecimento. (BAUM et al., 1994).

1
A teoria de sistemas a eventos discretos um campo de conhecimentos em
expanso. Seu surgimento justifica-se, entre outras coisas, em face da necessidade de
um tratamento formal requerido por diversos sistemas construdos pelo homem, como
redes de comunicao, sistemas de manufatura, sistemas de trfego automatizado e
sistemas computacionais, guiados a eventos cujo tratamento, baseado classicamente em
equaes diferenciais, se torna extremamente complexo. A teoria tem carter
interdisciplinar e inclui princpios e conceitos extrados da cincia da computao,
teoria de controle e pesquisa operacional (KUMAR e GARG, 1995).
Devido ao grande avano na pesquisa em torno de formalismos e linguagens que
podem executar, implementar e controlar um sistema a eventos discretos, de
significativa importncia a criao de um laboratrio que vise tratar do assunto em
termos de implementao, pois muito do que visto tem carter apenas conceitual. A
experincia de ensino em engenharia de automao industrial, em nvel de graduao,
tem mostrado a importncia de trs elementos: a) a prtica com o hardware e o software
dos Controladores Lgicos Programveis; b) as redes de Petri aplicadas ao projeto de
automao; c) um conjunto consistente de experincias de laboratrio (MORAES e
CASTRUCCI, 2002).
evidente a importncia para a economia nacional de um maior nmero de
graduados em Automao Industrial, e especificamente com experincia nos
Controladores Lgicos Programveis (CLPs). As inmeras aplicaes possveis exigem
do engenheiro: i) presena nas longas fases da especificao, em dilogo com o cliente;
ii) projeto do sistema; iii) gerao do software do PLC; iv) start-up, na prpria planta
industrial, isto , hoje em dia, em qualquer parte do territrio nacional. (MORAES e
CASTRUCCI, 2002). Tambm, segundo MORAES e CASTRUCCI (2002), parece
difcil a migrao de tais instrumentos para a prtica do engenheiro. Nesta, portanto, o
projeto depende de tentativas, de intuies, de simulaes, enfim de engenho e arte.
O projeto de sistemas de controle automticos requer muito conhecimento
terico. A conseqncia deste fato que um nmero grande de conceitos novos tem que
ser introduzido em um primeiro curso em sistemas de controle. Porm, estes conceitos
so introduzidos em geral de alguma maneira independentemente e isto coloca srios
problemas quando os estudantes so exigidos a lidar com o projeto inteiro de um
sistema de controle. Neste sentido um laboratrio de controle deve ser proposto com a
viso a reunir todos os conceitos introduzidos em um curso terico ministrado
previamente (BASILIO, 2002, BASILIO e MOREIRA, 2004). No que se refere a

2
sistemas a eventos discretos, para o conhecimento das ferramentas de modelagem
necessrio um profundo conhecimento dos formalismos de modelagem utilizados em
sistemas a eventos discretos, um conhecimento amplo dos sistemas de controladores
lgicos programveis e suas linguagens de programao e uma metodologia na
elaborao de projetos, com base em linguagem ladder e redes de Petri. Segundo
VENKATESH e ZHOU (1998), um sistema industrial discreto consiste de vrias
unidades simultneas como mquinas, robs, veculos com guias automatizados,
controladores lgicos programveis e computadores que funcionam de forma assncrona
para se encontrar as necessidades dinmicas das variveis do mercado. Softwares
integrados que desenvolvem mtodos para modelar, analisar, controlar, e simular tais
sistemas so tambm importantes.
Muitos usurios industriais de CLPs preferem programar em linguagem ladder
que usa mtodos heursticos. Para sistemas simples, fcil escrever para programas de
PLC que usam o mtodo heurstico. Porm, medida que o sistema se torna mais
complexo, fica muito difcil de controlar problemas efetivamente (CHIRN e
McFARLANE, 1999, VENKATESH et al., 1994b). Estes problemas foram
reconhecidos desde que a linguagem ladder foi extensamente usada. Alguns
nivelamentos foram propostos s ferramentas de projeto para ajudar a solucionar estes
problemas (IEC, 1992; DAVID, 1995). Redes de Petri (PETERSON, 1981,
ZURAWSKI e ZHOU, 1994) so ferramentas comumente usadas neste aspecto, por
causa do sucesso em sistemas de controle de evento discretos (SED).
O objetivo desse trabalho no comparar redes de Petri e linguagem ladder, mas
mostrar que existem estudos a este respeito e na parte de elaborao das experincias de
laboratrio mostrar as duas formas de representao. Contudo os controles sero
implementados usando a linguagem ladder.
Por causa do planejamento e vantagens de organizao de redes de Petri, vrios
investigadores tentaram desenvolver mtodos para transformar redes de Petri
(desenvolvidos na fase de projeto) em linguagem ladder (fase de implementao)
(SATO e NOSE, 1995, JAFARI e BOUCHER, 1994, BURNS e BINDANDA, 1994,
TAHOLAKIAN e HALES, 1997, VENKATESH et al., 1994a, LEE e HSU, 2001).
Alm disso, UZAM et al. (1996) props um mtodo lgico para converter redes de Petri
em linguagem ladder. Porm, estas aproximaes esto focalizadas tipicamente somente
na fase de projeto em lugar de as outras fases do desenvolvimento de sistemas de
controle. As metodologias apontam para traduzir a rede de Petri na sintaxe de

3
linguagem ladder. Porm, problemas na fase de teste e fase de manuteno posterior
ainda so grandes. No somente o tempo de projeto mas tambm o tempo de
manuteno pode ser reduzido se uma aproximao apropriada estiver disponvel
(CHIRN e McFARLANE, 2000). Mais recentemente, LUCAS e TILBURY (2003)
conduziram um estudo com o objetivo de determinar os mtodos atuais de projeto de
sistemas de automao usados na industria automotiva. Neste sentido, verificou-se que
embora a linguagem ladder seja ainda a mais empregada, necessrio, dada a
necessidade de constantes modificaes das programaes nas linhas de produo, que
outras formas de implementaes devam ser usadas. Neste contexto, surge a chamada
linguagem SFC (sequential flow chart) que permite uma implementao mais rpida dos
programas no sistema industrial. Apesar disto, neste trabalho, a implementao ser
feita usando-se linguagem ladder.
Este trabalho est estruturado da seguinte forma. O captulo 2 apresenta os
fundamentos da teoria de sistemas a eventos discretos: autmatos e redes de Petri. O
autmato como formalismo de modelagem discutido em detalhe. apresentado,
tambm, o formalismo de modelagem por redes de Petri e discute-se a anlise e o
controle de modelos de rede de Petri independente do tempo. No final do captulo, as
duas classes de modelos independentes do tempo, autmato e redes de Petri, so
refinadas para incluir o tempo por meio de uma estrutura de temporizao, resultando
no autmato temporizado e nas redes de Petri temporizadas.
O captulo 3 descreve de forma geral um CLP (software e hardware), com suas
definies e caractersticas principais. Os principais blocos que compem um CLP so
descritos. feita uma classificao dos tipos de CLPs. A linguagem que ser utilizada
para implementao das experincias deste trabalho a linguagem ladder. So
mostradas as implementaes das funes lgicas utilizadas em projetos de circuitos
digitais (funes NOT, AND, OR, NAND, NOR, OR Exclusivo e NOR Exclusivo).
Finalizando o captulo, feita uma comparao entre linguagem ladder e redes de Petri,
onde so descritos alguns mtodos relacionados tentativa de converso direta entre
redes de Petri e linguagem ladder.
No captulo 4 so apresentados todos os equipamentos que sero utilizados no
laboratrio proposto, quais sejam: o CLP TSX 3722 (hardware e software), a esteira
transportadora, o dispositivo com um conjunto de lmpadas e o conjunto de chaves sem
reteno. Cada um desses equipamentos detalhado de forma a mostrar suas
caractersticas tcnicas. Tambm descrito o programa PL7 Micro que o software

4
destinado ao modelo de CLP utilizado, dando uma viso geral do ambiente de
programao e dos recursos e ferramentas que so usadas para criao dos programas
em linguagem ladder.
O captulo 5 dedicado aos experimentos que sero propostos. So sete
experimentos ao todo, sendo dois experimentos utilizando-se os recursos do CLP para
acionamento de uma carga, no caso uma lmpada, trs experimentos com o conjunto de
esteiras, procurando simular um ambiente de produo e dois experimentos utilizando o
conjunto de lmpadas, simulando o funcionamento de semforos.
Finalmente, no captulo 6 so apresentados as concluses e os trabalhos futuros.

5
Captulo 2. Fundamentos da teoria de sistemas a eventos discretos

Um sistema a eventos discretos (SED) um sistema a estado discreto, dirigido


por eventos, ou seja, sua evoluo de estado depende inteiramente da ocorrncia de
eventos discretos assncronos no tempo. Neste sentido, ATTI (1998) escreve que
quando o espao de estados de um sistema naturalmente descrito por um conjunto
discreto, e as transies de estado so observadas somente em pontos discretos do
tempo, associam-se estas transies a eventos. O conceito de evento um desses
conceitos primitivos, cuja compreenso deve ser deixada intuio, mais do que a uma
exata definio. No se pode, porm, deixar de enfatizar que um evento deve ser
pensado como de ocorrncia instantnea e como causador de uma transio no valor
(discreto) do estado do sistema.
Neste captulo ser feita uma reviso dos principais conceitos e dos fundamentos
da teoria de sistemas a eventos discretos, estando estruturado da seguinte forma: na
seo 2.1 so apresentados os fundamentos da teoria de sistemas a eventos discretos,
com a introduo dos conceitos de evento, sistemas controlados pelo tempo e sistemas
baseados em eventos, tratados em comparao aos sistemas dinmicos de variveis
contnuas; na seo 2.2 so estudado as linguagens e autmatos, e; na seo 2.3
estudado o segundo formalismo utilizado neste trabalho que so as rede de Petri, como
uma alternativa para substituir os modelos de autmatos de SED, sendo apresentados os
fundamentos de redes de Petri, as equaes de estado e as dinmicas da rede de Petri
para uma classe especial de redes, comparando, ao final, redes de Petri e autmato; na
seo 2.4 introduzida a estrutura de temporizao nas redes de Petri, gerando as redes
de Petri temporizadas.

2.1. Sistemas a eventos discretos


Nesta seo sero apresentados os principais conceitos para o estudo de sistemas
a eventos discretos.

2.1.1. Evento
Evento um conceito primitivo e necessita de uma boa base intuitiva para
compreender o seu significado. Deve ser enfatizado que um evento deve ser pensado
como alguma coisa acontecendo instantaneamente e que causa transies de um valor

6
de estado para outro. Um evento pode ser identificado como uma ao especfica; por
exemplo algum aperta um boto, um computador deixa de funcionar, a chave de
ignio de um automvel ligada etc, ou pode ser o resultado de vrias condies que,
de repente, acontecem.
Neste trabalho ser usado o smbolo e para denotar um evento. Ao considerar
um sistema afetado por tipos diferentes de eventos, define-se um conjunto E cujos
elementos so todos estes eventos. Claramente, E um conjunto discreto.
O conceito de evento pode ser melhor entendido com a ajuda do seguinte
exemplo: um sistema de armazenamento de cargas. Neste caso pode-se perfeitamente
verificar que h, no mnimo, dois eventos: um evento a chegada de produto e o
outro a chegada de caminho. Neste caso, pode-se definir um conjunto de eventos E
= {P,T} onde P denota o evento chegada de produto, e T denota o evento chegada de
caminho, que corresponde sada do produto.

2.1.2. Sistemas controlados pelo tempo e sistemas baseados em eventos


Em sistemas de estados contnuos o estado muda geralmente com mudanas de
tempo. Isto particularmente evidente em modelos a tempo-discreto: um sinal de
clock determina a seqncia de amostras a serem obtidas, pois esperado que a cada
marcao desse sinal, ocorra uma mudana no estado do sistema. Neste caso, a varivel
de tempo (t, em tempo contnuo, ou k, em tempo-discreto) uma varivel independente
que aparece como sendo o argumento de toda a contribuio de entrada dos estados, e
em funes de sada. Por essa razo, esses sistemas so denominados dirigidos pelo
tempo.
Em sistemas de estados discretos, as mudanas de estado s ocorrem em certos
pontos por transies instantneas e, a cada uma dessas transies, pode-se associar um
evento. Suponha que exista um relgio pelo qual tomado o tempo, e considere as duas
possibilidades:
1. A toda marcao do sinal de clock, um evento e ser selecionado de um conjunto fixo
E. Se nenhum evento acontecer, pode-se pensar em um "evento nulo" como pertencendo
a E cuja propriedade no causar nenhuma mudana de estado.
2. Em vrios momentos de tempo (no necessariamente conhecidos com antecedncia, e
no coincidindo com as marcaes de tempo), algum evento determinado e ir ocorrer.
H uma diferena fundamental entre 1 e 2 acima. Em 1, as transies de estado
so sincronizadas pelo relgio, isto , a toda marcao de tempo, um evento (ou nenhum

7
evento) selecionado. O tempo responsvel por toda e qualquer possvel transio de
estado. Em 2, todo evento e de E define um processo distinto pelo qual os momentos de
tempo, quando e acontece, so determinados. As transies de estado so o resultado
das combinaes destes processos de eventos assncronos e simultneos. Alm disso,
estes processos no precisam ser independentes um do outro.
A distino entre 1 e 2 d origem s definies de sistemas dirigidos pelo tempo
(1) e sistemas dirigidos por eventos (2). importante ressaltar que a idia de transies
de estado baseadas em eventos corresponde a uma noo familiar, que de uma
interrupo em sistemas de computador. Enquanto muitas das funes em um
computador so sincronizadas por um relgio, e so controladas pelo tempo, outras so
resultados de chamadas assncronas que podem acontecer a qualquer hora como, por
exemplo, o pedido de um usurio externo ou uma mensagem de intervalo pode
acontecer como resultado de eventos especficos, mas completamente independentes do
relgio do computador.

2.1.3. Propriedades caractersticas de sistemas a evento discretos


A maioria dos sistemas de controle em engenharia so baseados em modelos de
equaes diferenciais ou em equaes a diferenas lineares. Para usar estes modelos
matemticos, esses sistemas devem satisfazer as seguintes propriedades: devem ser de
estado contnuo; com o mecanismo de transio de estado dirigido pelo tempo. A
primeira propriedade permite definir o estado por meio de variveis contnuas que
podem assumir qualquer valor real (ou complexo). Quantidades fsicas comuns como
posio, velocidade, acelerao, temperatura, presso, fluxo etc., esto nesta categoria
desde que se possa definir naturalmente as derivadas para estas variveis contnuas. A
segunda propriedade vem o fato de que o estado geralmente evolui em funo do tempo.
Os sistemas considerados neste trabalho so os Sistemas Dinmicos a Eventos
Discretos (SDED) ou, mais amplamente, Sistemas a Eventos Discretos (SED). As suas
principais caractersticas so: (i) o espao de estado um conjunto discreto; (ii) o
mecanismo de transio de estados baseado em eventos.
Essas propriedades levam a seguinte definio de SED.
Definio 2.1. Um Sistema a Eventos Discretos (SED) um sistema de estado discreto
baseado em eventos, isto , a evoluo dos estados depende somente da ocorrncia de
eventos discretos assncronos.

8
Muitos sistemas, particularmente tecnolgicos, so na realidade sistemas de
estados discretos. At mesmo se este no for o caso, para muitas aplicaes de interesse,
uma viso de estado discreto de um sistema complexo pode ser necessria. Alguns
exemplos simples de sistemas de estados discretos so: (i) O estado de uma mquina
pode ser selecionado de um conjunto como {LIGADA, DESLIGADA} ou
{OCUPADO, OCIOSO, LIVRE}; (ii) um computador que executa um programa pode
ser visto como estando em um de trs estados: {ESPERANDO POR INSTRUES,
EXECUTANDO, PARADO}; (iii) qualquer tipo de inventrio que consiste de valores
discretos (por exemplo produtos, unidades monetrias, pessoas) tem um espao de
estado natural nas grandezas no negativas {0,1,2,...}, (iv) a maioria dos jogos pode ser
modelado como tendo um espao de estado discreto (em xadrez, por exemplo, toda
possvel configurao do tabuleiro define um estado); o espao resultante enorme, mas
discreto.
A propriedade baseada em eventos de SED decorre do fato de que o estado s
pode mudar no tempo em pontos discretos, que correspondem fisicamente a ocorrncias
assncronas de eventos discretos. De um ponto de desenvolvimento de um modelo, isto
tem a seguinte implicao: se for possvel identificar um conjunto qualquer de "eventos"
que podem causar uma transio de estado, ento o tempo j no serve ao propsito de
dirigir tal sistema e no pode ser uma varivel independente apropriada.
As duas caractersticas fundamentais que distinguem Sistemas Dinmicos de
Variveis Contnuas (SDVC) de SED so claramente mostradas ao se comparar
trajetrias tpicas de cada uma destas classes de sistema, como na figura 2.1. Para o
SDVC mostrado, o espao de estado X o conjunto de nmeros reais R, e x(t) pode
assumir algum valor fixo. A funo x(t) a soluo da equao diferencial x& (t)=f[x(t),
u(t), t], onde u(t) a entrada. Para o SED, o espao algum X fixo e discreto igual a
{s1, s2, s3, s4, s5, s6}. De acordo com a trajetria mostrada na figura 2.1.b, o estado s
muda de um valor para outro se um evento ocorrer. V-se, inclusive, que um evento
pode acontecer, mas no causar uma transio de estado, como no caso de e3.

9
s6
x(t)
s5
s4

s3
s2
X = {s1, s2, s3, s4, s5, s6}

s1
X=
t1 t2 t3 t4 t5 t6 t7 t
(b)

t
e1 e2 e3 e4 e5 e6 e7 e
(a) (c)

Figura 2.1: Comparao de caminhos de amostra para Sistemas Dinmicos de Variveis


Contnuas (SDVC) e Sistemas de Evento Discretos (SED).

2.1.4. Exemplos de sistemas a evento discretos


Nesta seo sero apresentados trs exemplos de SED utilizados no mundo real
e experincias comuns em engenharia. O primeiro desses exemplos representa uma
estrutura simples que servir para representar muitos SED de interesse.

1. Sistemas de filas
O termo fila decorre de um fato intrnseco que em muitos dos sistemas mais
comuns, para se usar certos recursos, deve-se esperar. Por exemplo, para usar os
recursos de um caixa de banco, as pessoas formam uma fila e esperam; para usar o
recurso de um caminho, produtos acabados esperam em um armazm.
Semelhantemente, para usar os recursos da CPU, vrias tarefas esperam em algum lugar
no computador at que seja dado acesso s mesmas por mecanismos potencialmente
complexos.
H trs elementos bsicos em um sistema de filas:
1 - As entidades que fazem a espera para utilizao dos recursos. Estas entidades
so usualmente denominadas clientes.
2 - Os recursos para os quais a espera realizada. Desde que os recursos
provejam alguma forma de servio aos clientes, devemos genericamente os
cham-los de servidores.
3 - O espao onde a espera realizada. A esse elemento d-se o nome fila.

10
Fila Servidor
Chegada de clientes Partida de clientes

Figura 2.2: Um simples sistema de fila.

A cada chegada, o cliente, ou se dirige ao SERVIDOR e servido, ou tem que


esperar primeiro na FILA at que o servidor esteja disponvel. Aps ser atendido, cada
cliente parte. Exemplos de clientes so: pessoas (por exemplo, esperando em um banco
ou em um ponto de nibus), mensagens transmitidas de algum meio de comunicao,
tarefas, trabalhos ou transaes executadas em um sistema de computador, produo em
um processo de fabricao e carros que usam uma rede de estradas. Exemplos de
servidores so: pessoas (por exemplo, caixas de banco ou caixas de sada de
supermercado), canais de comunicao responsveis pela transmisso de mensagens,
processadores de computador ou dispositivos perifricos, vrios tipos de mquinas
usadas na fabricao e semforos que regulam o fluxo de carros. Exemplos de filas so
encontrados em vrios locais, como por exemplo banco, pontos de nibus ou
supermercados. Porm, filas tambm esto presentes em redes de comunicao ou
sistemas de computador onde tambm so alocadas formas menos tangveis de clientes,
como telefonemas ou tarefas a serem executadas em reas de espera.
Graficamente, um simples sistema de fila ser representado como mostrado na
figura 2.2. O crculo representa um servidor, e uma caixa aberta representa uma fila que
precede a este servidor. Aberturas de fila indicam os clientes em modo de espera. Os
clientes so vistos como chegando fila e partindo do servidor. Supe-se ainda que o
processo de servir os clientes, normalmente leva uma quantidade estritamente positiva
de tempo (caso contrrio no haveria espera). Assim, um servidor pode ser visto como
um "bloco de atraso" que retm um cliente por algum tempo at a realizao do servio.
Visto como um SED, o sistema de fila da figura 2.2 tem um conjunto de eventos
E = {a, d}, onde {a} denota um evento de chegada e {d} denota um evento de sada.
Uma varivel de estado o nmero de clientes na fila ou o comprimento da fila. Assim,
o espao de estado o conjunto de valores no negativos X = {0,1,2,...}.

11
2. Sistemas de manufatura
Em um processo industrial, os clientes so as peas ou partes de peas da
produo. Essas peas esto dispostas para o acesso aos vrios servidores da fbrica que
so as mquinas que executam operaes especficas e dispositivos de manipulao de
material, como robs e correias transportadoras. Quando as peas no esto sendo
trabalhadas, elas so armazenadas em uma fila at que o servidor libere o acesso para a
prxima operao que est disponvel. Por causa de reais limitaes fsicas, filas em um
sistema industrial tm normalmente capacidades finitas.
Uma vez mais, modelos de filas provem uma conveniente descrio para
sistemas industriais. Um exemplo simples mostrado na figura 2.3, onde as peas
passam por duas mquinas, sendo a capacidade da primeira fila infinita, enquanto a
capacidade da fila da segunda mquina limitada a dois. Como resultado, possvel que
uma parte de servio da mquina 1 seja completado porm a mquina 2 esteja ocupada e
alm disso a fila esteja completa. Neste caso, a pea tem que permanecer na mquina 1
embora no requeira mais nenhum servio; alm disso, so foradas outras peas a
esperar o acesso na mquina 1 permanecendo em fila. O conjunto de eventos fixado
para este exemplo E = {a, c1, d2}, onde a uma chegada para a primeira mquina, c1
uma concluso de servio da primeira mquina e d2 uma partida para a fila da segunda
mquina.

Fila Mquina Fila Mquina


Entradas
1 2

Figure 2.3: Sistema industrial de filas.

Observe que o evento c1 no implica em movimento de uma pea da mquina 1


para a fila da mquina 2, desde que esta possibilidade esteja bloqueada. O estado do
sistema pode ser definido como um vetor x = [x1, x2]T correspondendo aos
comprimentos de fila das duas mquinas. Neste caso, x2 restrito aos valores {0,1,2,3}.
Porm, note que quando x2 = 3, a mquina 1 bloqueada, pois acabou de executar o
servio na pea e a fila da segunda mquina est completa. Para modelar o fenmeno de
bloqueio necessitamos introduz uma varivel adicional B que x2 pode gerar. O espao de
estado se torna o conjunto discreto X = {(x1, x2) : x1 0, x2 {0, 1, 2, 3, B}}. Para
ilustrarmos a flexibilidade do processo modelado (dependendo do nvel de detalhe que

12
se deseja capturar) pode-se gerar um espao de estado alternativo que pode ser: X = {x1,
x2) : x1 {I, W, B} e x2 {I, W}} onde x1 o estado da primeira mquina, que pode
assumir os seguintes valores: inativo (I), trabalhando (W) ou bloqueado (B), e x2 o
estado da segunda mquina, que pode assumir os seguintes valores: inativo (I) ou
trabalhando (W). Neste modelo, no so focalizados os comprimentos das filas, mas sim
os estados lgicos de cada mquina.

3. Sistemas de trfego
Considere, agora, como exemplo uma simples interseo em T (figura 2.4). H
quatro tipos movimentos de veculos: (a) veculos vindo de ponto 1 e virando para o
ponto 2; (b) veculos vindo de 1 e virando para o ponto 3; (c) veculos que vo
diretamente do ponto 2 ao 3, e (d) veculos que vo do ponto 3 ao 2. O semforo
funciona da seguinte forma: fica vermelho para os veculos vindo da posio 1 e verde
para os veculos vindo das posies 2 e 3, permitindo assim os movimentos ce d, ou
ao contrrio, vermelho para os veculos vindo das posies 2 e 3 e verde para os
veculos vindo da posio 1, permitindo os movimentos ae b.
Neste caso, o conjunto de eventos determinado por:
E = {a12, a13, a23, a32, d12, d13, d23, d32, g, r},
onde a12, a13, a23, a32 so as chegadas de veculo em cada uma das quatro possibilidades
e d12, d13, d23 e d32 so as partidas de veculo quando o semforo permite o trfego, g e r
indicam o estado do semforo.
Um possvel espao de estado definido pelos comprimentos de fila formados
pelos quatro tipos de veculo e o estado do prprio semforo, isto :
X = {(x12, x13, x23, x32, y) : x12, x13, x23, x32 0, y {g1, g2, g3, r1, r2, r3},
onde x12, x13, x23, x32 so os quatro comprimentos de fila, e y o estado da luz (gi e ri
denotam, respectivamente, verde e vermelho para os veculos que vem dos pontos
indicados).

1 Semforo

Figura 2.4: Uma simples interseo T controlada por semforos.

13
2.2. Linguagens e autmato
Nesta seo ser apresentado o primeiro formalismo de modelagem utilizado
para representar um SED, que o autmato, uma vez que os sistemas a eventos
discretos (SED) no so adequadamente modelados atravs de equaes diferenciais,
como so modelados os Sistemas Dinmicos de Variveis Contnuas (SDVC).
O autmato forma a classe bsica de modelos de SED. So intuitivos, fceis de
usar, com facilidade para operaes de composio e para anlise (no caso de estado
finito), mas carecem de uma estrutura e, por esta razo, podem levar a grandes espaos
de estados quando do modelamento de sistemas complexos. O segundo formalismo de
modelagem a ser considerado neste trabalho redes de Petri. Como ser visto, as redes
de Petri tm mais estruturas que os modelos de autmatos, embora no possuam, no
geral, o mesmo poder analtico que os autmatos. Deve ser ressaltado que as redes de
Petri que sero utilizadas para gerar a modelagem dos experimentos do laboratrio
propostos neste trabalho.

2.2.1. Linguagens
Um SED possui um conjunto de eventos E associado a ele que pode ser visto
como sendo o alfabeto de uma linguagem. As seqncias de eventos associados a este
conjunto so definidas como "palavras" desta linguagem. Para entender o seu sentido
considere o seguinte exemplo: suponha que aps um carro ser ligado, as seguintes
tarefas bsicas devam ser realizadas: (a) quando o carro ligado (ON), primeiramente
deve ser enviado um sinal informando que foi ligado e est no estado ON, e ento; (b)
realizar um simples relatrio informando as seguintes condies: 1-tudo OK, 2-
checar leo, ou 3-necessito de gasolina, e, (c) concluir com outro sinal informando
que o relatrio de condies foi feito". Cada um destes sinais define um evento e todos
os possveis sinais que o carro puder emitir definem um alfabeto. Assim, esse sistema
tem as mesmas caractersticas de um SED dirigido por esses eventos, sendo responsvel
por reconhecer eventos e dar a prpria interpretao para qualquer seqncia particular
recebida. Por exemplo, a seqncia de eventos: estou ON, tudo est OK, relatrio
de condies feito, completam com sucesso a tarefa. Por outro lado, a seqncia de
eventos: estou ON e relatrio de condies feito, sem que seja relatada a condio
real entre os eventos, deve ser interpretado como uma condio anormal requerendo
ateno especial. Pode-se, portanto, pensar nas combinaes de sinais emitidos pelo

14
carro, como palavras pertencendo linguagem particular falada por este carro. Neste
exemplo, a linguagem de interesse tem somente trs palavras ou eventos.
Uma linguagem um caminho formal para descrever o comportamento de um
SED. A linguagem especifica todas as seqncias admissveis de eventos que o SED
capaz de "processar" ou "gerar", no necessitando de qualquer estrutura adicional.
Definio 2.2. (Notao de Linguagem) O conjunto de eventos E de um SED visto
como um alfabeto, e ser suposto finito. Uma seqncia de eventos tirados desse
alfabeto forma uma palavra ou seqncia. Uma seqncia que consiste de nenhum
evento chamado de seqncia vazia e denotada por (o smbolo no deve ser
confundido com o smbolo genrico e para um elemento de E). O comprimento de uma
sequncia o nmero de eventos contidos nesta seqncia, contando ocorrncias
mltiplas do mesmo evento. Se s uma seqncia, seu comprimento denotado por
s. Por conveno, o comprimento da seqncia vazia zero, isto , =0.
Definio 2.3. (Linguagem) Uma linguagem definida em um conjunto de eventos E
um conjunto de seqncias de comprimentos finitos formados de eventos de E.
Como exemplo, seja E = {a, b, g} um conjunto de eventos. Podem-se definir as
seguintes linguagens: L1 = {, a, abb}, consistindo somente de trs seqncias, ou uma
linguagem; L2 = {todos as possveis seqncias de comprimento 3 que comeam com o
evento a}, ou seja, L2 = {aaa, aab, aag, aba, abb, abg, aga, agb, agg}, que contm
nove seqncias; ou linguagem L3 = {todos as seqncias de possveis comprimentos
finitos que comeam com evento a}, que contm um nmero infinito de seqncias etc.

2.2.2. Operaes em linguagens


Seja E* o conjunto de todas as seqncias finitas de elementos de E, incluindo .
O conjunto E* denominado fechamento de Kleene de E. Por exemplo, se E={a, b, c}
ento E*={, a, aa, ab, ac, ba, bb, bc, ca, cb, cc, aaa, ...}. Note que E* infinito porm
contvel e tem seqncias de comprimento arbitrariamente longos.
As operaes fixas habituais so: unio, interseo, diferena e complemento
com respeito a E*, e so aplicveis para linguagens, desde que sejam conjuntos. Alm
disso, so usadas as seguintes operaes:
1 Concatenao. Seja La,Lb E*. Ento:
LaLb := {s E* : (s = sasb) e (sa La) e (sb Lb)} .
Uma seqncia est em LaLb se ela puder ser escrita como a concatenao de uma

15
seqncia em La com uma seqncia em Lb.
2 Fechamento de Prefixos. O fechamento de prefixos de L a linguagem
denotada por L e consiste de todo os prefixos de todas as seqncias em L. No geral, L
L . Seja L E*, ento:
L := {s E* : t E* (st L)}.

Uma linguagem L dita ser de prefixo fechado se L = L . Assim a linguagem L


de prefixo fechado se qualquer prefixo de qualquer seqncia em L for tambm um
elemento de L.
3 Fechamento de Kleene: seja L E*, ento
L* := {} L LL LLL ...
Para melhor entender os conceitos acima, considere o seguinte exemplo: Seja E
= {a,b,g}, e considere as linguagens L1 = {, a, abb} e L4 = {g}. Note que L1 e L4 no
so de prefixo fechado uma vez que ab L1 e L4. Ento:
L1L4 = {g, ag, abbg}
L1 = {, a, ab, abb}

L4 = {, g}

L1 L4 = {, a abb, g, ag, abbg}

L4* = { , g, gg, ggg, }


L1* = { , a, abb, aa, aabb, abba, abbabb, }
Observao 2.1: importante observar que:
(i) ;
(ii) {} uma linguagem no-vazia, contendo unicamente uma seqncia vazia;
(iii) Se L = ento L = , e se L ento, necessariamente, L ;
(iv) * = {} e {}* = {}.

2.2.3. Autmato
A dificuldade de se trabalhar com linguagens simplesmente que representaes
simples de linguagem no so, em geral, fceis de especificar ou de trabalhar.
necessrio, pois, um conjunto de estruturas compactas que definam linguagens e que
possam ser manipuladas atravs de operaes claras de modo que possam construir e,
subseqentemente, manipular e analisar linguagens arbitrariamente complexas.

16
Um autmato um dispositivo que capaz de representar uma linguagem de
acordo com regras claras. O modo mais simples para apresentar a noo de autmato
considerar sua representao de grfico direcionada, ou diagrama de transio de
estado. Considere, portanto, o seguinte exemplo: considere o grafo da figura 2.5, onde
os ns representam estados e os arcos rotulados representam transies entre esses
estados. Este grfico fornece uma descrio completa de um autmato. O conjunto de
ns o conjunto de estados do autmato, X = {x, y, z}. O conjunto de rtulos para as
transies o conjunto de evento (alfabeto) do autmato, E = {a, b, g}. Os arcos no
grfico fornecem uma representao grfica da transio funcional do autmato, sendo
denotado como : X E X: (x, a) = x, (x, g) = z, (y, a) = x, (y, b) = y, (z, b) = z
e (z, a) = (z, g) = y. A notao (y, a) = x representa os meios de representar que o
autmato est no estado y, e com a ocorrncia de um evento a, o autmato far uma
transio rpida para o estado x. A causa da ocorrncia do evento a irrelevante; o
evento pode ser uma entrada externa para o sistema modelado pelo autmato, ou pode
ser um evento espontaneamente gerado pelo sistema modelado.

a
a
x y b

g a,g
z b

Figura 2.5: Diagrama de transio de estado.

Trs observaes so vlidas com respeito ao exemplo acima: primeira, um


evento pode ocorrer sem mudar o estado, como em (x, a) = x; segunda, dois eventos
distintos podem ocorrer em um dado estado causando a mesma exata transio, como
em (z, a) = (z, g) = y (o que interessante sobre o ltimo fato que possvel no
distinguir os eventos a e g simplesmente observando-se uma transio do estado z para
o estado y); terceira, a funo uma funo parcial com domnio em X E, isto , no
precisa ser uma transio definida para cada evento em E e cada estado de X (por
exemplo, (x, b) e (y, g) no so definidas).
Para se definir completamente um autmato, necessrio ainda um estado
inicial, denotado por x0, e um subconjunto Xm de X que representa os estados de X que

17
so marcados. Os estados so marcados quando necessrio dar um significado
especial para eles e so referidos como estados finais. O estado inicial ser
identificado por uma flecha apontando para dentro e estados pertencentes a Xm sero
identificados por crculos duplos.
Pode-se, agora, dar uma definio formal de um autmato.
Definio 2.4. (Autmato determinstico) Um autmato Determinstico denotado por
G, uma sextpla G = (X, E, f, , x0, Xm ), onde X o conjunto de estados, E o
conjunto finito de eventos associados com as transies em G, f : X E X a funo
de transio f(x, e) = y, que significa que existe uma transio rotulada pelo evento e do
estado x para o estado y (no geral, f uma funo parcial em seu domnio), : X 2E
funo de evento ativa (ou possvel funo de evento), (x) o conjunto de todos os
eventos de E tais que f(x, e) definida (isto chamado de conjunto de evento ativo ou
possvel conjunto de evento de G em x), x0 o estado inicial e Xm X o conjunto de
estados marcados.
O autmato G opera como segue: comea no estado inicial x0 e na ocorrncia de
um evento e (x0) E far uma transio de estado f(x0, e) X. Este processo ento
continua baseado nas transies para as quais f definida.
Por convenincia, f sempre estendida do X E para o domnio X E* da
seguinte maneira recursiva: f(x, e) := x e f(x, se) := f(f(x, s), e) para s E* e e E .

2.2.4. Representao de linguagens por autmatos


A conexo entre linguagem e autmato feita facilmente por inspeo do
diagrama de transio de estado do autmato, considerando todos os caminhos diretos
que podem ser seguidos no diagrama de transio de estado, comeando no estado
inicial, e, dentre esses, aqueles caminhos que terminam em um estado marcado. Isto
conduz s noes de linguagens geradas e marcadas por um autmato.
Definio 2.5. (Linguagens geradas e marcadas) A linguagem gerada por G = (X, E, f,
, x0, Xm ) L(G) := {s E* : f(x0, s) definida}. A linguagem marcada por G Lm(G)
:= {s L (G) : f(x0, s) Xm}.
A linguagem L(G) representa todos os caminhos diretos que podem ser seguidos
ao longo do diagrama de transio de estado, comeando no estado inicial. Portanto,
uma seqncia s est em L(G) se e somente se essa corresponde a um caminho
admissvel no diagrama de transio de estados ou equivalentemente, se e somente se f

18
definida em (x0, s). A segunda linguagem representada por G, Lm(G), o subconjunto
de L(G) consistindo unicamente da seqncia s tais que f(x0, s) Xm, quer dizer, essas
seqncias correspondem aos caminhos que terminam em um estado marcado no
diagrama de transio de estado.
As definies de linguagens gerada e marcada podem ser melhor compreendidas
com a ajuda do seguinte exemplo: seja E = {a, b} um conjunto de eventos e considere o
autmato de estado finito G = (X, E, f, , x0, Xm) onde X = {0, 1}, x0 = 0, Xm = {1}, e f
definida como : f(0, a) = 1, f(0, b) = 0, f(1, a) = 1, f(1, b) = 0, representado na figura
2.6. Como 0 o estado inicial, a linguagem gerada por esse autmato o prprio E* isto
: L (G) = {a, b, aa, ba, bb, aaa, }. Como o nico estado marcado o 1, ento esse
estado s pode ser atingido pelas seqncias de L (G) em que o ltimo evento o a.
Portanto Lm(G) = {a, aa, ba, aaa, aba, baa, bba, }. Pode-se, ento, concluir que um
autmato G a representao de duas linguagens L(G) e Lm(G).

b a
a
0 1
b
Figura 2.6: Autmato.

2.2.5. Bloqueio
A partir das definies de G, L(G), e Lm(G) tem-se que Lm(G) Lm (G ) L(G).

A primeira incluso de conjunto devida ao fato de Xm ser um subconjunto do prprio


X, enquanto a segunda incluso de conjunto uma conseqncia da definio de Lm(G)
e do fato de que L(G) ser, por definio, de prefixo fechado.
Um autmato G pode alcanar um estado x, tal que (x) = mas x Xm isto , f
no definida para x. Isto chamado de trancamento definitivo (deadlock) tendo em
vista que nenhum evento adicional pode ser executado. Se um trancamento definitivo
acontecer, ento necessariamente Lm (G ) ser um subconjunto prprio de L(G), uma

vez que qualquer seqncia de L(G) que termina no estado x no pode ser um prefixo de
uma seqncia em Lm(G).
Outro tipo de trancamento quando o sistema entra em um determinado
conjunto de estados no marcados e no consegue sair deles. A esse tipo de

19
trancamento, dar-se o nome de trancamento cclico (livelock). Tambm nesse caso,
fcil observar que Lm (G ) um subconjunto prprio de L(G). Pode-se, ento, apresentar
a seguinte definio:
Definio 2.6. Um autmato G dito estar bloqueando se Lm ( G ) L(G) onde a

incluso de conjunto prpria, e no bloqueia quando Lm (G ) = L(G).

Para entender esses conceitos, considere o autmato G descrito na figura 2.7.


Claramente, o estado 5 um estado de trancamento definitivo. Alm disso, os estados 3
e 4, com suas transies associadas a, b, e g, formam um componente absorvente
fortemente conectado; uma vez que 3 e 4 no so marcados, qualquer seqncia que
alcana o estado 3 conduzir a um trancamento cclico. Note que a seqncia ag L(G)

mas ag Lm (G ) ; o mesmo verdade para qualquer seqncia em L(G) que comea

com aa. Assim G est bloqueando uma vez que Lm (G ) um subconjunto prprio de

L(G).
g
1 5
a a

0 b 3
b
g a
2 4 g

Figura 2.7: Autmato bloqueando.

2.3. Redes de Petri


Uma alternativa para substituir os modelos de autmatos de SED fornecida
pelas redes de Petri. Uma rede de Petri um dispositivo que manipula eventos de
acordo com regras estabelecidas. Uma de suas caractersticas principais a existncia
de condies explcitas sob as quais um evento pode ou no ser habilitado, permitindo
representaes de SED muito gerais, cuja operao depende de esquemas de controle
potencialmente complexos.

2.3.1. Fundamentos de redes de Petri


A definio de uma rede de Petri feita em dois passos: primeiro, define-se o
grafo da rede de Petri, tambm chamado estrutura da rede de Petri, que anlogo ao

20
diagrama de transio de estado de um autmato; em seguida, junta-se a esse grafo um
estado inicial, um conjunto de estados marcados, e uma funo de transio rotulada,
resultando no modelo completo da rede de Petri.
Em uma rede de Petri, os eventos esto associados s transies. Para que uma
transio acontea, vrias condies devem ser satisfeitas. Estas condies so
localizadas nos prprios estados ou lugares com suas informaes relacionadas a cada
transio. Os lugares podem ser definidos como entradas ou sadas para uma
transio. Transies, lugares, e as relaes entre esses definem os componentes bsicos
de um grafo da rede de Petri. O grafo de uma rede de Petri tem dois tipos de ns
(lugares e transies) e setas conectando estes ns. Por esta razo a rede de Petri um
grafo bipartido, no sentido que as setas no podem conectar diretamente ns do mesmo
tipo, isto , as setas conectam ns de lugares para ns de transio e ns de transio
para ns de lugares. Pode-se, ento apresentar a seguinte definio.
Definio 2.7. (Grafo da rede de Petri) Um grafo ou estrutura da rede de Petri um
grafo ponderado bipartido (P, T, A, w), onde P o conjunto finito de lugares, T o
conjunto finito de transies, A (P x T) (T x P) o conjunto de setas de lugares
para transies e de transies para lugares no grfico e w : A {1,2,3,...} a funo
dos pesos das setas (um nmero inteiro positivo).

t2
p1
t1 p2 p3 t4

t3

t5 p4

Figura 2.8: Grfico de rede do Petri.

Para tornar mais clara a definio 2.7, considere o grafo de uma rede de Petri
mostrado na figura 2.8. Tem-se que o conjunto de lugares P = {p1, p2, p3, p4}, o
conjunto de transies T = {t1, t2, t3, t4, t5}, A={(p1, t1), (p1, t2), (p2, t2), (p2, t3), (p2, t5),
(p4, t5), (t1, p1), (t1, p2), (t2, p3), (t3, p3), (t3, p4), (t4, p3), (t5, p1)}, w(p1, t1)=1, w(p1, t2)=1,
w(p2, t2)=1, w(p2, t3)=2, w(p2, t5)=1, w(p4, t5)=1, w(t1, p1)=1, w(t1, p2)=1, w(t2, p3)=1,
w(t3, p3)=1, w(t3, p4)=1, w(t4, p3)=1 e w(t5, p1)=1.
Note que como a transio t4 no tem nenhum lugar de entrada, ento o evento

21
correspondente a t4 acontece de forma incondicional. Em contraste, o evento
correspondente transio t2, depende de certas condies relacionadas aos lugares p1 e
p2 para que possa ocorrer.
Voltando idia de que as transies em um grafo de redes de Petri representam
os eventos que fazem a evoluo de um SED e que os lugares descrevem as condies
sob as quais esses eventos podem ocorrer, tornam-se, ento, necessrios mecanismos
que identifiquem se essas condies foram, de fato, satisfeitas ou no. Isto feito
atribuindo-se discos aos lugares para indicar que a condio descrita por aquele lugar
satisfeita. Esses discos definem uma marca. Formalmente, uma marcao, x, de um
grafo da rede de Petri (P, T, A, w) uma funo x : P = {0, 1, 2,...}. Assim, a
marcao de x define um vetor linha x = [x(p1), x(p2),..., x(pn)] onde n o nmero de
lugares na rede de Petri e a i-sima entrada deste vetor indica o nmero de discos no
lugar pi, x(pi) . Em um grafo da rede de Petri, um disco indicado por um ponto
escuro posicionado no interior do crculo que define o lugar.
Definio 2.8. (Rede de Petri marcada) Uma rede de Petri marcada uma Quntupla
(P, T, A, w, x), onde (P, T, A, w) um grafo da rede de Petri e x a marcao de um
conjunto de lugares P, isto , x = [x(p1), x(p2),...,x(pn)] n o vetor linha associado a
x.
Para ilustrar o conceito acima, considere a rede de Petri representada pelo grafo
da figura 2.9. Nessa figura esto mostradas duas possveis marcaes, correspondentes
aos vetores linha x1= [1, 0] e x2 = [2, 1].

p1 t1 p2 p1 t1 p2

x1=[1, 0] x2=[2, 1]

Figura 2.9: Duas marcaes, x1 e x2, ao grfico de rede de Petri.

Observao 2.2. (a) Por simplicidade, uma rede de Petri marcada ser, de agora em
diante, referida simplesmente como Rede de Petri; (b) O nmero de discos atribudos a
um lugar um nmero inteiro arbitrrio e no negativo. Segue-se, ento, que o nmero
de estados que se pode ter , em geral, infinito. Assim, o espao de estado X, de uma
rede de Petri, com n lugares definido por todos os vetores n-dimensionais, isto ,
X=n.

22
Enquanto o termo marcao mais comum que estado na literatura sobre
rede de Petri, o termo estado consistente com o papel de estado em sistemas
dinmicos. Alm disso, o termo estado evita uma potencial confuso entre marcao em
grafos da rede de Petri e marcao no sentido de estados marcados em autmato.

2.3.2. Evoluo dinmica das redes de Petri


A definio 2.8 no descreve explicitamente os mecanismos de transio das
redes de Petri, embora este seja um ponto crucial na utilizao das redes de Petri para
modelar SED dinmico. Para Tanto a seguinte definio necessria.
Definio 2.9. (Transio habilitada) Uma transio tj T em uma rede de Petri dita
estar habilitada se x(pi) w(pi, tj) para todo pi I(tj), onde I(tj) denota o conjunto de
lugares conectados transio tj por meio de setas.
De acordo com a definio 2.9 a transio tj na rede de Petri estar habilitada
quando o nmero de discos no lugar pi maior ou igual ao peso da seta que conecta pi a
tj, para todo lugar pi que so entradas para a transio tj. Note na figura 2.9 que para o
estado x1, x(p1) = 1 < w(p1, t1) = 2, e portanto t1 no est habilitada. Por outro lado para o
estado x2, tem-se x(p1)=2= w(p1, t1) e ento, t1 est habilitada.
Nos autmatos, o mecanismo de transio de estado diretamente capturado
pelos arcos conectando os ns (estados) no diagrama de transio de estado,
equivalentemente pela funo de transio f. O mecanismo de transio de estado em
redes de Petri dado pelo movimento dos discos atravs da rede, conseqentemente,
pela mudana do estado da rede de Petri. Quando uma transio est habilitada, diz-se
que ela pode disparar. A funo de transio de estado de uma rede de Petri definida
atravs da mudana no estado da rede de Petri devido ao disparo de uma transio
habilitada. Algumas vezes podem haver diversas transies habilitadas e poder-se-ia
pensar em disparos simultneos. No presente trabalho, ser suposto que os disparos
acontecem um de cada vez.
Definio 2.10. (Dinmicas da rede de Petri) A funo de transio de estado, f : n
T n, da rede de Petri (P, T, A, w, x) definida pela transio tj T se e somente se
x(pi) w(pi, tj) para todo pi I(tj) (2.1)
Se f(x, tj) definida, ento o prximo vetor de estados x' = f(x, tj) definido
como
x'(pi) =x(pi) - w(pi, tj) + w(tj, pi), i = 1,...,n. (2.2)

23
A condio (2.1) assegura que a funo de transio de estado seja definida
unicamente por transies que so habilitadas. Assim, o prximo estado, definido pela
condio (2.2) depende explicitamente dos lugares de entrada e de sada de uma
transio e dos pesos das setas que conectam esses lugares transio. importante
observar que o nmero de discos no precisa necessariamente ser conservado aps o
disparado de uma transio em uma rede de Petri. Em geral, inteiramente possvel que
depois de vrios disparos de transio, o estado resultante seja x = [0,...,0], ou que o
nmero de smbolos em um ou mais lugares cresa arbitrariamente depois de um
nmero arbitrariamente grande de disparos de transio.
Para ilustrar o processo de disparo de transies e mudanas de estado de uma
rede de Petri, considere a rede de Petri da figura 2.10(a), onde o estado "inicial" x0 =
[2, 0, 0, 1]. fcil verificar que a nica transio habilitada t1, uma vez que ela requer
um nico smbolo do lugar p1 e tem-se x0(p1) = 2. Em outras palavras, x0(p1) w(p1, t1),
e a condio (2.1) satisfeita para a transio t1. Quando t1 dispara, um smbolo
removido de p1, e um smbolo colocado em cada lugar de p2 e p3, como pode ser visto
no grfico da rede de Petri. Esse mesmo resultado poderia ser obtido tambm aplicando-
se diretamente a equao (2.2) para obter o novo estado x1= [1, 1, 1, 1], como mostrado
na figura 2.10(b). Neste estado, todas as trs transies t1, t2 e t3 esto habilitadas.
Considere, agora, o disparo da transio t2. Um disco removido de cada um dos
lugares de entrada, p2 e p3. Como os lugares de sada so p2 e p4, ento, um disco retorna
ao lugar p2, uma vez que p2 I(t2) O(t2); alm disso, um disco adicionado a p4. O
novo estado x2 = [1, 1, 0, 2], como mostrado na figura 2.10(c). Neste estado, t2 e t3 j
no esto habilitados, mas t1 ainda est.
Voltando ao estado x1 da figura 2.10(b) e ao invs de disparar t2, suponha se
dispare t3. fcil verificar que de cada um dos lugares de entrada, p1, p3, e p4, mover-se-
a um disco. Como no h lugares de sada, o novo estado denotado por x'2 ser dado por
x'2 = [0, 1, 0, 0], como mostrado na figura 2.10(d). V-se que nenhuma transio est
habilitada e, assim, nenhuma mudana de estado adicional possvel, isto , o estado [0,
1, 0, 0] um estado de trancamento definitivo desta rede de Petri.

24
p1 p4 p1 p4
p2 t2 p2 t2

t1 t1

p3 t3 p3 t3
(a) (c)

p1 p4 p1 p4
p2 t2 p2 t2

t1 t1

p3 t3 p3 t3
(b) (d)

Figura 2.10: Seqncias de disparos de transies em uma rede de Petri.

Uma observao importante sobre o comportamento dinmico de redes de Petri


que nem todos os estados em n podem necessariamente ser alcanados em um
grfico da rede de Petri com um dado estado inicial. Por Exemplo, ao examinar o grafo
da figura 2.9, tem-se que para o estado inicial x2 = [2, 1], o nico estado que pode ser
alcanado de x2 [0, 2]. Isto leva definio de conjunto de estados alcanveis, R[(P,
T, A, w, x)], da rede de Petri (P, T, A, w, x). Neste sentido, primeiramente, necessrio
estender a funo de transio de estado f do domnio n T ao domnio Nn T*, isto :
f( x , ) := x

f( x , st) := f(f( x , s), t) para s T * e t T
onde o smbolo interpretado como a ausncia de disparo de transio.
Definio 2.11. (Estados Alcanveis) O conjunto de estados alcanveis da rede de
Petri (P, T, A, w, x)
R[(P, T, A, w, x)] := {y n : s T*( f(x, s) = y)}

2.3.3. Equaes de estado


Considere novamente a equao (2.2), que descreve como o valor de estado de
um lugar individual muda quando com o disparo de uma transio. No difcil ver que
possvel gerar um sistema de equaes a partir da equao (2.2) para obter o prximo
estado da rede de Petri x' = [x'(p1), x'(p2),..., x'(pn)] a partir do estado atual x = [x(p1),
x(p2),..., x(pn)] dado que uma transio particular, tj, tenha disparado. Para tanto, deve-
se, primeiro, definir o vetor disparo u, isto um vetor linha de dimenso m da forma
u=[0,..., 0, l, 0,..., 0], onde um nico 1 aparece na j-sima posio, j {1, ..., m}, para
indicar o fato que a j-sima transio est, neste momento, disparando. Alm disso,

25
defina a matriz de incidncia A de uma rede de Petri, uma matriz m x n cujo elemento
(j, i) da forma
aji= w(tj, pi) w(pi, tj) (2.3)
Usando a matriz de incidncia A, pode-se agora obter a seguinte equao de
estados
x' = x + uA (2.4)
que descreve o processo de transio de estado como resultado de uma "entrada" u, isto
, uma transio particular disparando. O i-simo elemento da equao (2.4)
precisamente a equao (2.2). Portanto, f(x, tj) = x + uA, onde f(x, tj) a funo de
transio definida anteriormente. O argumento tj nesta funo indica que a j-sima
entrada em u , no zero. A equao de estado fornece uma ferramenta algbrica
conveniente e uma alternativa anlise grfica para descrever o processo de transies
aps disparos e mudanas de estado de uma rede de Petri.
Para ilustrar a evoluo de um SED a partir das equaes de estado, considere a
rede de Petri da figura 2.10(a), com o estado inicial x0= [2, 0, 0, 1]. Pode-se,
primeiramente, escrever a matriz de incidncia por inspeo do grfico da rede de Petri,
que neste caso :
1 1 1 0
A = 0 0 1 1
1 0 1 1

A entrada (1, 2), por exemplo, dada por w(t1, p2) - w(p2, t1) = 1 - 0. Usando a equao
(2.4), a equao de estado quando a transio t1 dispara no estado x0
1 1 1 0
x1=[ 2 0 0 1] + [1 0 0] 0 0 1 1
1 0 1 1

x1=[ 2 0 0 1] + [-1 1 1 0] = [ 1 1 1 1]
que precisamente o foi obtido no exemplo de figura 2.10(b). Similarmente, os outros
estados tambm podem ser obtidos.

2.3.4 - Linguagens de rede de Petri


Seja E o conjunto de eventos de um SED cuja linguagem modelada por uma
rede de Petri. O modelo por redes de Petri desse sistema deve ser tal que a cada
transio em T corresponda um evento distinto no conjunto de eventos E, e vice-versa.

26
Contudo, isto poderia ser desnecessariamente restritivo, uma vez que em modelos de
autmatos permitido haver duas setas diferentes (originando de dois estados
diferentes) rotulados com o mesmo evento. Isto conduz definio de uma rede de
Petri rotulada.
Definio 2.12. (Rede de Petri rotulada) Uma rede de Petri rotulada N uma ctupla
N = ( P, T, A, w, E, l, x0, Xm), onde ( P, T, A, w) um grfico de rede de Petri, E o
conjunto de eventos por transio rotulada, l: T E a funo de transio rotulada, x0
n o estado inicial da rede (i.e., o nmero inicial de smbolos em cada lugar) e Xm
n o conjunto de estados marcados da rede.
A seguir introduzido o conceito de estados marcados para definir uma
linguagem marcada de uma rede de Petri rotulada.
Definio 2.13. (Linguagens geradas e marcadas) A linguagem gerada por uma rede de
Petri rotulada N = ( P, T, A, w, E, l, x0, Xm)
L(N) := {l(s) E* : s T e f(x0, s) definida }.
A linguagem marcada por N
Lm(N):= {l(s) L(N) : s T* e f(x0, s) Xm }.
Pode-se ver que essas definies esto completamente consistentes com as
definies correspondentes aos autmatos. A linguagem L(N) representa todas as
seqncias de transies rotuladas que so obtidas por todos as possveis (finitas)
seqncias de disparos de transio em N, comeando no estado inicial x0 de N. A
linguagem marcada Lm(N) o subconjunto destas seqncias que deixam a rede de Petri
em um estado que um membro do conjunto de estados marcados da definio de N.
A classe de linguagens que podem ser representados por redes de Petri rotuladas

PNL:={K E*: N = ( P, T, A, w, E, l, x0, Xm)[ Lm(N)=K]}

Esta uma definio geral e as propriedades de PNL dependem fortemente das

suposies especficas que so feitas sobre l (por exemplo, se injetiva ou no) e Xm


(por exemplo, se finito ou infinito). Nesse trabalho sero adotadas as seguintes
hipteses: l no necessariamente injetiva e Xm no precisa ser finito.

2.3.5 - Modelos de redes de Petri para sistemas com filas


Considere o grafo da figura 2.11 em que trs eventos ou transies dirigem um

27
sistema com filas, quais sejam: chegada de cliente (a), comeo do servio (s) e servio
completo e partida do cliente (c). A partir desses eventos possvel formar o conjunto
de transio T ={a, s, c}. Note que, nesse exemplo no necessrio considerar redes de
Petri rotulada; equivalentemente, pode-se supor que E = T e que l um mapa um-para-
um entre esses dois conjuntos. A transio a espontnea e no requer condies
(lugares de entrada). Por outro lado, a transio s conta com duas condies: a presena
de clientes na fila, e que o servidor esteja inativo. Essas duas condies sero
representadas por dois lugares de entradas para esta transio, lugar Q (fila) e lugar I
(servidor inativo). Finalmente, a transio c requer que o servidor esteja ocupado, assim
introduziremos um lugar de entrada B (servidor ocupado) para isto. Assim, o conjunto
de lugares desse sistema P = {Q, I, B}.
O grfico da rede de Petri completo, junto com o simples modelo de sistema de
fila, mostrado nas figuras 2.11(a) e (b). Nenhum smbolo colocado em Q, indicando
que a fila est vazia, e um smbolo colocado em I, indicando que o servidor est
inativo. Isto define o estado inicial x0= [0, 1, 0]. Uma vez que a transio de estado a
est sempre habilitada, possvel gerar vrios caminhos de amostra possveis. Como um
exemplo, a figura 2.11(c) mostra o estado [2, 0, 1] resultante do disparo da seqncia de
transies {a, s, a, a, c, s, a}. Este estado corresponde a dois clientes esperando na fila,
enquanto um terceiro est em servio (a primeira chegada na seqncia j tem partido
depois da transio c).
Fila Servidor
Chegada de clientes Partida de clientes

(a)
a a

I I
Q Q

s s

B B

c c

(b) (c)

Figura 2.11: (a) Simples sistema de fila, (b) Modelo de rede de Petri para um sistema de
fila simples com estado inicial [0, 1, 0]. (c) Modelo de rede de Petri de um sistema de

28
fila simples com estado inicial [0, 1, 0] depois de disparada a seqncia {a, s, a, a, c, s,
a}.

2.3.6. Comparao entre redes de Petri e autmatos


Autmatos e redes de Petri podem ser utilizadas para representar o
comportamento de um SED. Nos autmatos, isto feito enumerando-se explicitamente
todos estados possveis e conectando-se esses estados com as possveis transies
entre eles, resultando na funo de transio do autmato. Em redes de Petri os estados
no so enumerados, pois a informao de estado distribuda dentre um conjunto de
lugares que capturam as condies chaves que governam a operao do sistema e,
ento, conectam esses lugares corretamente s transies.
No possvel afirmar qual o melhor formalismo de modelagem, pois,
modelar sempre envolve questes pessoais e muitos freqentemente dependem de
aplicao considerada. Entretanto possvel comparar segundo critrios especficos,
quais sejam:
(a) Expressividade de Linguagem
Como primeiro critrio para comparar autmatos e redes de Petri, tem-se a
classe de linguagens que pode ser representada por cada formalismo, quando restrito a
modelos que requerem memria finita (uma bvia considerao prtica). A classe PNL

estritamente maior que a classe R, significando que redes de Petri com conjuntos
finitos de lugares e transies podem representar (isto , marcar) mais linguagens em E*
que os autmatos de estado finito. Um exemplo de criao de uma rede de Petri em que
no h um correspondente autmato, pode ser visto em CASSANDRAS e
LAFORTUNE (2000).

(b) Modelo de Construo Modular


A despeito da complexidade potencial de grficos da rede de Petri exigidos para
modelar at mesmo um SED relativamente simples, a estrutura da rede de Petri possui
algumas vantagens inerentes. Uma dessas vantagens sua capacidade para decompor ou
modular um sistema potencialmente complexo. Suponha que haja dois sistemas que
possuem os espaos de estado X1 e X2 modelados como autmatos. Ao combinar esses
dois sistemas dentro de um, seu espao de estado, X, pode ser to grande quanto os
estados de X1 X2; em particular, este limite superior ser alcanado se os dois sistemas

29
no tm eventos comuns. Isto significa combinar sistemas mltiplos, aumentando-se
ligeiramente a complexidade de modelos de autmatos. Por outro lado, se os sistemas
so modelados atravs da rede de Petri, o sistema combinado freqentemente mais
fcil de se obter por deixar as redes originais como eles so e simplesmente somando-se
uns poucos lugares e/ou transies (ou fundindo alguns lugares) representando a unio
efetuada entre os dois. Alm disso, ao olhar tal grfico da rede de Petri, uma pessoa
pode convenientemente ver os componentes individuais, discernir o nvel de sua
interao, e finalmente decompor o sistema dentro de mdulos distintos lgicos.

(c) Capacidade de Tomar Decises


Outra maneira de se comparar redes de Petri com autmatos quanto a
capacidade de tomar deciso. Suponha que seja feita a seguinte pergunta: pode uma
certa seqncia de eventos ser reconhecida por um determinado autmato de estado
finito? A este problema d-se o nome de capacidade de tomar deciso, isto , se h
um algoritmo ou procedimento especfico que permite dizer sim ou no como
resposta. Um recurso atrativo dos autmatos de estado finito que tais perguntas podem
ser respondidas precisamente porque o espao de estado finito. Infelizmente, isto nem
sempre verdadeiro em procedimentos com redes de Petri, refletindo um compromisso
natural entre a capacidade de tomar deciso e a riqueza do modelo.
Como concluso mais conveniente pensar em redes de Petri e autmatos como
abordagens de modelagens complementares e no como tcnicas que competem entre si.
Ser a aplicao considerada que definir qual a tcnica de modelagem (autmato ou
rede de Petri) a ser adotada.

2.4. Modelos temporizados


Nesta seo ser feita uma breve reviso da teoria de modelos temporizados de
SED. O estudo ser limitado a uma descrio de entrada que completamente
especificada, a fim de se ter uma compreenso das dinmicas de um SED com eventos
bsicos contendo tempo, independente da caracterizao probabilstica de sua entrada.
No sero considerados nesse estudo, autmatos temporizados, uma vez que os modelos
a serem utilizados nos experimentos propostos so as redes de Petri.

30
2.4.1. Redes de Petri temporizadas
Ser, agora, introduzido uma temporizao estrutura de redes de Petri. Para
tanto, uma seqncia de tempo vj agora associada com uma transio tj. Um nmero
real positivo, vj,k, atribudo a tj ter o seguinte significado: quando a transio tj for
habilitada no k-simo instante, ela no dispara imediatamente, mas incorre em um atraso
no disparo dado por vj,k; durante este atraso, os discos so guardados na entrada do lugar
t j.
importante ressaltar que nem todas as transies tero que disparar com atraso.
Algumas transies podem disparar to logo sejam habilitadas. Assim, T (o conjunto
das transies ou eventos) pode ser dividido em dois subconjuntos T0 e TD, tais que T =
T0 TD, onde T0 um conjunto de transies que sempre ocorrem sem atrasos no
disparo, e TD o conjunto de transies que geralmente incorrem em algum atraso no
disparo. O ltimo chamado de transies dependentes do tempo
As seguintes definies podem ser apresentadas.
Definio 2.14. A estrutura de tempo associada a um conjunto de transies
temporizadas TD T de uma rede de Petri marcada (P, T, A, w, x) um conjunto V =
{vj : tj TD} de seqncias de temporizao (tempo de vida), vj ={vj,1, vj,2, ...}, tj TD,
Vj,k R+, k = 1, 2, ...
Graficamente, as transies sem atraso de disparo so representadas por barras,
ao passo que transies temporizadas so representadas por retngulos, conforme
mostra a figura 2.12. A seqncia de tempo associada com uma transio temporizada
normalmente escrita prximo ao retngulo.
Definio 2.15. Uma Rede de Petri Dependente do Tempo (com temporizao) uma
sextupla (P, T, A, w, x, V) onde (P, T, A, w, x) uma rede de Petri marcada, e V = {vj : tj
TD} uma estrutura de tempo.
Para ilustrar as definies de estrutura de tempo para redes de Petri, considere
uma seqncia de duas tarefas T1 e T2 que so desempenhadas simultaneamente com
uma terceira tarefa T3, e ento uma quarta tarefa T4 executada para combinar as sadas
de T2 e T3. Uma possvel modelagem deste processo mostrada na figura 2.12.

31
p1 p3

v1 t1 v3 t3

p2 p2C

v2
s t2
t23 p4 v4 F

t4
pC3

Figura 2.12: Rede de Petri dependente do tempo.

As transies dependentes do tempo t1, t2, t3, t4 correspondem aos eventos de


concluso das tarefas so indicadas pelos retngulos acompanhados pelos
correspondentes tempos de atrasos de disparo v1, v2, v3, v4. Quando a tarefa 2
concluda, um disco somado para o lugar pC3 (indicando que T2 est completa, mas T3
ainda pode estar em execuo). Similarmente, para o lugar p2C. Assim, a transio de
tempo t23 ser habilitada quando ambas as tarefas 2 e 3 so completadas. Note que os
lugares pC3 e p2C podiam diretamente habilitar a transio t4, omitindo t23 e p4. O
processo terminado quando um disco adicionado ao lugar F. Na figura 2.12 a rede de
Petri tem um estado inicial tal que as tarefas 1 e 3 esto sendo realizadas.
Pode-se explorar a estrutura da rede de Petri decompondo o modelo dentro de
dinmicas de transies individuais. As equaes de estado em um tal modelo geram
seqncias de disparo de transies da forma {j,1, j,2, ...}, j = 1, ... , m onde j,k o k-
simo tempo de disparo da transio tj, k = 1, 2,..., que ilustrado na figura 2.13. A
obteno desses modelos , em geral, uma tarefa bastante complicada, porm para uma
classe especial de sistemas (sistemas de filas, por exemplo), ele pode ser obtido com
relativa facilidade.

v1={v1,1, v1,2, }
{1,1 , 1, 2 , ...}
Dinmicas da rede de
vm={v1,1, v1,2, }
Petri temporizada { m,1 , m, 2 , ...}

Figura 2.13: Modelo de uma rede de Petri dependente do tempo de um SED.

32
Ser considerado, inicialmente, o caso em que um lugar pi tem somente uma
transio de entrada tr. Para tanto, seja i,k o instante de tempo quando o lugar pi recebe
seu k-simo disco, k = 1, 2,.... Suponha inicialmente que x(pi) = 0. Ento, o k-simo
instante em que um disco depositado em pi precisamente o k-simo tempo de disparo
tr. que denotado por r,k. Se, por outro lado, pi inicialmente contm xi0 discos, ento, o
k-simo tempo de disparo de tr o tempo quando pi recebe seu (xi0 + k)-simo disco.
Portanto tem-se a seguinte relao:
i,k + xi0 = r,k, pi O(tr), k = 1, 2, ... (2.5)

onde xi0 a marcao inicial do lugar pi e i,k = 0 para todo k = 1,... , xi0.
Equivalentemente,
i,k = r,k - xi0 , pi O(tr), k = xi0 + 1, xi0 + 2, ... (2.6)

Ser, agora, considerado o caso em que o lugar pi tem somente uma nica
transio de sada tj. Para tanto, suponha que pi o nico lugar de entrada de tj. Se tj
no dependente do tempo, ento o k-simo tempo de disparo de tj precisamente o
tempo em que pi recebe seu k-simo disco, e habilita tj. Ento, tem-se que j,k = i,k , k =
1, 2, .... Por outro lado, tj dependente do tempo com uma seqncia de tempo vj, ento
este relacionamento torna-se
j,k = i,k + vj,k k = 1, 2, ... (2.7)
Finalmente se pi no a nica entrada do lugar tj, ento tj habilitado para o k-
simo tempo sempre que o ltimo lugar de entrada do conjunto I(tj) recebe seu k-simo
disco, isto , em algum instante s,k, ps I(tj), tal que s,k i,k para todo pi I(tj).
Pode-se, ento, expressar este simples fato com a expresso
j,k = max { i,k} + vj,k, k = 1, 2, (2.8)
pi I ( tj )

Em resumo, a combinao de (2.5) at (2.8) fornece um conjunto de equaes


recursivas que permitem determinar o tempo de disparo das transies para esta classe
de redes de Petri.
Para ilustrar as dinmicas da rede de petri, considere um sistema de filas com
redes de Petri temporizadas, sendo P = {Q, I, B} o conjunto que representa os estados
do servidor e {a, d} o conjunto que representa as chegadas de clientes fila e s
partidas de clientes do servidor. Um modelo de rede de Petri temporizado mostrado na
figura 2.14 com estado x = [0, 1, 0], isto , quando a fila est vazia e o servidor est
ocioso. Neste caso, o conjunto de transio dependente do tempo tD = {a, d},

33
correspondente para chegadas de cliente e para partidas do servidor. A transio s, por
outro lado, no precisa de nenhum atraso de disparo. O servio comea to logo o
servidor fique ocioso e um cliente esteja na fila. A estrutura de tempo para este modelo
consiste de va = {va,1, va,2, ...} e vd = {vd,1,vd,2,... } e a mesma estrutura de tempo de um
modelo de autmato dependente do tempo. Alm disso, pode-se fazer x(t) = x(Q) + x(B)
denotar o nmero total de discos nos lugares Q e B com o tempo t.
a va

Q I

d vd

Figura 2.14: Rede de Petri dependente do tempo de um simples sistema de filas.

Observando a figura 2.14, pode-se ver que o modelo satisfaz os requisitos de um


grafo marcado. Portanto, pode-se imediatamente derivar as equaes da forma (2.5) a
(2.8) para descrever a dinmica de disparo das transies de um simples sistema de
filas. Fazendo:
ak : k-simo instante de chegada.
dk : k-simo instante de partida.
sk : k-simo instante de comeo do servio.
Q,k : instante em que Q recebe seu k-simo disco.
I,k : instante em que I recebe seu k-simo disco, com I,1 = 0.
B,k : instante em que B recebe seu k-simo disco.
De (2.6), ou diretamente por inspeo, pode-se escrever:
ak = ak-1 + va,k, k = 1, 2, ... a0 = 0
sk = max{Q,k, I,k}, k = 1, 2, ...
dk = B,k + vd,k, k = 1, 2, ...
Q,k = ak, k = 1, 2, ...

34
I,k = dk-1, k = 1, 2, ..., I,1 = 0
B,k = sk, k = 1, 2, ...
Combinando as equaes acima para eliminar Q,k, I,k e B,k, resulta:
sk = max{ak, dk-1}, k = 1, 2, , d0 = 0
dk = sk + vd,k, k = 1, 2,
Pode-se ainda eliminar sk para obter a seguinte relao fundamental que
importante para este simples sistema de fila, obtendo
dk = max{ak, dk-1}+ vd,k, k = 1, 2, , d0 = 0,
que representa uma simples relao recursiva caracterizando os instantes de partida dos
clientes, que representa o fato de que a k-sima partida ocorre no tempo vd,k unidades
depois da (k - l)-sima partida, exceto quando ak >dk-1. Este ltimo caso ocorre quando a
partida em dk-1 esvazia a fila; o servidor deve ento esperar a prxima chegada no
instante ak,e gerar a prxima partida no instante ak + vd,k.
Reescrevendo ak e dk para k = 2, 3, ... obtm-se:
ak = ak-1 + va,k, a0 = 0
dk = max{ak-1 + va,k, dk-1}+ vd,k, d0 = 0
que representa um modelo em espao de estado na estrutura da figura 2.13. O modelo
de sistema de filas dirigido pelas seqncias de tempo va e vd, e sua sada consiste de
seqncias de tempo de chegada e partida {a1, a2, ...} e {d1,d2, ...} geradas atravs das
equaes de estado de ak e dk para k = 1, 2, ..., a0 = 0 e d0 = 0.

35
Captulo 3. Programao e utilizao de controladores lgicos
programveis

Neste captulo ser feita uma anlise geral sobre controladores lgicos
programveis (CLP) com suas caractersticas. Sero apresentados, tambm, alguns CLP
disponveis no mercado e abordadas cada uma de suas partes com seus detalhes
tcnicos.
Este captulo est estruturado da seguinte forma: na seo 3.1 descrito o CLP
com suas definies e caractersticas principais, sendo os principais blocos que
compem um CLP descritos, e tambm, uma classificao dos tipos de CLPs; na seo
3.2 realizado um estudo sobre linguagem ladder (linguagem esta que ser utilizada
para implementao dos experimentos deste trabalho), apresentando tambm as
implementaes das funes utilizadas em projetos de circuitos digitais (funes NOT,
AND, OR, NAND, NOR, OR Exclusivo e NOR Exclusivo); na seo 3.3 so vistas
formas de converso entre linguagem ladder e redes de Petri, onde so descritos alguns
mtodos relacionados tentativa de converso direta, sendo mostrados ainda alguns
exemplos de converso utilizando um desses mtodos, tendo como objetivo principal a
reduo do esforo de projeto devido complexidade de problemas de controle e prover
critrios de projeto para ajustar as aproximaes.

3.1. Controlador lgico programvel


3.1.1. Introduo
De acordo com a Associao Brasileira de Normas Tcnicas (ABNT), o
controlador lgico programvel (CLP) um equipamento eletrnico digital com
hardware e software compatveis com aplicaes industriais. A National Electrical
Manufacturs Association (NEMA), de acordo com a International Electrotechnical
Commission (IEC), segundo a norma IEC 1131-1, define CLP como sendo um aparelho
eletrnico digital que utiliza uma memria programvel para o armazenamento interno
de instrues para implementaes especficas, tais como lgica, seqenciamento,
temporizao, contagem e aritmtica para controlar, atravs de mdulos de entradas e
sadas, vrios tipos de mquinas ou processos.
O controlador lgico programvel pode, tambm, ser definido como um

36
dispositivo de estado slido, com memria programvel para armazenamento de
instrues para controle lgico programvel e pode executar funes equivalentes s de
um painel de rels ou de um sistema de controle lgico, tambm realizando operaes
lgicas e aritmticas, manipulao de dados e comunicao em rede, sendo utilizado no
controle de sistemas automatizados.
O CLP e seus perifricos, ambos associados, so projetados de forma a poder ser
integrados dentro de um sistema de controle industrial e finalmente usados a todas as
funes s quais so destinados. A figura 3.1 apresenta uma aplicao do CLP.

Dispositivos de
Entrada
Sistema
PLC Automatizado
Dispositivos de
Sada

Figura 3.1: Aplicao geral do controlador lgico programvel.

Os principais blocos que compem um CLP so:


1) CPU (Unidade Central de Processamento). Compreende o processador, o
sistema de memria e os circuitos auxiliares de controle. O sistema de memria
compreende:
1.1) Memria de programa: Armazena as instrues do software aplicativo e do
usurio (programas que controlam a mquina ou a operao do processo), que so
continuamente executados pela CPU. Pode ser memria RAM, EPROM, EEPROM,
NVRAM ou FLASH-EPROM.
1.2) Memria de dados: Armazena temporariamente os estados de I/O
(entrada/sada), marcadores ou presets de temporizadores, contadores e valores digitais
para que a CPU possa process-los. A cada ciclo de varredura, a memria de dados
atualizada. Geralmente uma memria RAM, sendo tambm conhecida como memria
de rascunho.
2) Mdulos de I/O. Podem ser discretos com sinais digitais, contatos normalmente
abertos, contatos normalmente fechados ou analgicos.
3) Fonte de Alimentao. Dispositivo responsvel pela tenso de alimentao

37
fornecida CPU e aos Mdulos (circuitos) de I/O. Em alguns casos proporciona sada
auxiliar de baixa corrente.
4) Base ou Rack. Serve de conexo mecnica e eltrica entre a CPU, os mdulos
de I/O e a fonte de alimentao. Contm o barramento de comunicao entre os
dispositivos, no qual os sinais de dados, endereo, controle e tenso de alimentao
esto presentes.
A figura 3.2 mostra a estrutura bsica de um CLP por meio dos blocos descritos.
Um CLP comercial apresentado na figura 3.3.

Dispositivos de Dispositivos de
Entrada
Entrada CPU Sada Sada

Alimentao
Externa Fonte de Alimentao Fonte Auxiliar

Base

Figura 3.2: Estrutura bsica do CLP.

CLP Allen Bradley: sistema de I/O Compact Logix 1769

Fonte de Tenso Processador Mdulos de I/O


Figura 3.3: Exemplo de CLP disponvel no mercado.

38
3.1.2. Operao Bsica
A CPU controla todas as aes do CLP executando a leitura das condies e
estados dos dispositivos por meio dos mdulos de I/O. Essas condies so
armazenadas em memria para serem processadas pelo programa de aplicao
desenvolvido pelo usurio e armazenado na memria no CLP. O processador atualiza os
status dos dispositivos de sada por meio dos mdulos de I/O, realizando a lgica de
controle, para garantir o ciclo de varredura.
A programao pode ser feita atravs de um programador manual ou com
software de programao no computador para posterior transferncia. A linguagem
ladder (Relay Ladder Logic), a mais utilizada. Esta linguagem a representao lgica
da seqncia eltrica de operao, como ilustrado nas figuras 3.4 e 3.5.

B0 B1 L0

F1 F2

Figura 3.4: Lgica convencional - contatos eltricos.

COM COM
F2 COM
F2
COM
B0
F1 X0
Y0 F1
B1 X3 Y3 L0
Y1
X1
X4 Y4
Y2
X2
X5 Y0 Y5
X0 X1
End
Mdulo de Mdulo de
Linguagem de Programao
Entrada Sada

Figura 3.5: Implementao da lgica convencional por meio de CLP.

De acordo com as figuras 3.4 e 3.5 (SILVEIRA, 1999), v-se que a lgica
implementada pelo CLP muito similar convencional, sendo que os dispositivos de
entrada (chaves B0 e B1) so conectados aos mdulos de entrada e os dispositivos de
sada (lmpada L0) aos mdulos de sada. O programa de aplicao determina o
acionamento da sada em funo das entradas. Qualquer alterao desejada nesta lgica
realizada por meio de alteraes no programa, permanecendo as mesmas conexes nos
mdulos de I/O.

39
3.1.3. Arquitetura bsica do CLP
A figura 3.6 ilustra a estrutura bsica de um CLP. Esta compreende o processador,
o sistema de memria, os barramentos de dados, de endereos e de controle, alm dos
circuitos auxiliares de controle. A figura 3.7 apresenta trs modelos de CPUs
disponveis em uma mesma famlia de CLP, relacionando algumas de suas
caractersticas.

E
N Processador Memria S
T A
R
A D
Barramento (Dados + Controle + Endereo)
D A
A
CPU

Figura 3.6: Estrutura bsica da CPU.

Controllogix Allen Bradley Compact Logix 1769 CPU PremiumTelemecanique


Figura 3.7: Exemplos de CPUs disponveis no mercado (modelos Allen Bradley).

A seguir , as principais caractersticas desses elementos sero apresentadas.


a) Processador
Os processadores podem ser do tipo microprocessador/controlador convencional
80286, 80386, 8051, at um processador dedicado, um DSP (Processador Digital de
Sinais). Os processadores atualmente utilizados em CLPs so dotados de alta
capacidade computacional. Existem CPUs que possuem processamento paralelo, no
qual dois ou mais processadores executam o programa de aplicao, comparando os
resultados obtidos aps cada ciclo de varredura.
O processador responsvel pelo gerenciamento total do sistema, controlando os
barramentos de endereos, de dados e de controle, interpreta e executa as instrues do

40
programa de aplicao, controla a comunicao com dispositivos externos e verifica a
integridade de todo o sistema realizando relatrios ou diagnsticos do sistema
operacional. Pode operar com registros e palavras de instruo, ou de dados, de
diferentes tamanhos (8, 16 ou 32 bits), de acordo com a capacidade do acumulador e
pela lista de instrues disponveis para cada CPU.

b) Sistema de memria
O sistema de memria da CPU composto por: (i) memria do sistema de
operao, onde armazenado o programa de execuo desenvolvido pelo fabricante, e
que determina como o sistema deve operacionalizar, incluindo a execuo dos
programas do usurio, controle de servios perifricos, atualizao dos mdulos de I/O
etc. (ii) memria de aplicao ou memria de usurio, onde o programa desenvolvido
pelo usurio para implementao (chamado de programa de aplicao) armazenado.
Juntamente com o programa de aplicao, so armazenados os dados do sistema em
uma tabela para realizao dos controles dos mdulos de I/O utilizados. Cada ponto de
I/O conectado aos mdulos, tem um endereo especfico na tabela de dados, o qual
acessado pelo programa de aplicao. Essa memria do tipo RAM. A tabela 3.1
apresenta uma comparao entre as memrias do sistema de operao e do usurio.

Tabela 3.1: Sistema de memria da CPU.


Sistema de Memria da CPU
Memria do Sistema de Operao Memria de Aplicao
Programa de Execuo: Programa de Aplicao:
ROM / EPROM RAM (Bateria) / EPROM /
EEPROM
Rascunho do Sistema: Tabela de Dados:
RAM (Bateria opcional) RAM (Bateria opcional)

c) Mdulos de entrada/sada (I/O)


Os mdulos de I/O realizam a comunicao entre a CPU e os dispositivos
externos por meio das entradas e sadas dos mdulos, garantindo isolao e proteo
CPU. Os mdulos de entrada recebem os sinais dos dispositivos de entrada tais como
sensores, chaves e transdutores e convertem esses sinais em nveis adequados para

41
serem processados pela CPU. Os mdulos de sada enviam os sinais de controle aos
dispositivos externos tais como motores, atuadores e sinalizadores. Esses sinais so
resultantes da lgica de controle, pela execuo do programa de aplicao, ou podem
ser forados pelo usurio, independente da lgica de controle.
Para CLP compactos com CPU e I/O alojados em um nico invlucro, usa-se o
termo circuitos de I/O e para CLP modulares com CPU e I/O disponveis de forma
independente, usa-se o termo mdulos de I/O. A figura 3.8 mostra exemplos de CLP
compacto e CLP modular.

CLP Compacto Mitsubishi FX2N CLP Modular Mitsubishi serie AnSH


Figura 3.8: Exemplos de CLPs compacto e modular disponveis no mercado.

Os mdulos de I/O so classificados como Discretos (Digitais) ou Analgicos,


existindo tambm os especiais em algumas famlias de CLPs. Os mdulos discretos de
I/O tratam sinais digitais e so utilizados em sistemas seqenciais e na maioria das
aplicaes com CLPs, mesmo como parte de sistemas contnuos, conforme mostrado na
figura 3.9. Os mdulos analgicos tratam os sinais analgicos que so utilizados pelos
sistemas contnuos. Os mdulos analgicos de entrada convertem sinais analgicos
provenientes dos dispositivos de entrada (transdutor, conversor, termopar) em sinais
digitais por meio de conversores analgico/digital, disponibilizando-os adequadamente
ao barramento da CPU. Os mdulos analgicos de sada convertem sinais digitais,
disponveis no barramento da CPU, em sinais analgicos por meio de conversor
digital/analgico, enviando-os aos dispositivos de sada (driver, amplificador). A figura
3.10 ilustra o funcionamento dos mdulos analgicos de entrada e de sada. Na figura
3.11 so mostrados alguns elementos de entrada e sada analgicos.

42
Boto Vlvula Solenide
Chave Contator
Pressostato Sinalizador
Fluxostato Rels de Controle
Termostato Cartes Cartes Sirene
Ch. Fim de Curso CPU Display
Discretos Discretos
Teclado Lmpada
Chave BCD Ventiladores
Fotoclula Alarmes
Outros Outros

Figura 3.9: Elementos de entrada e sada discretos.

Multiplexadores Transdutores Processo


A/D

Circuito
Optoacoplador
Barramento CP

D/A
Demultiplexadores Atuadores Processo

Figura 3.10: Mdulos de entrada e sada analgica.

Transdutores de Tenso Vlvula Analgica


Transd. de Corrente Acionamento de Motores DC
Transd. de Presso Controladores de Potncia
Cartes Cartes
Transd. de Fluxo CPU Atuadores Analgicos
Analgicos Analgicos
Potnciomentros Mostradores Grficos
Outros Medidores Analgicos
Outros

Figura 3.11: Elementos de entrada e sada analgicos.

d) Fonte de alimentao
o dispositivo responsvel pela converso da tenso de alimentao fornecida
pela rede de energia eltrica aos nveis aceitveis de funcionamento para cada tipo de
aplicao. A fonte de alimentao fornece todos os nveis de tenso para a alimentao
da CPU e dos mdulos de I/O e funciona como um dispositivo de proteo. A fonte do

43
CLP responsvel, em alguns casos, pela alimentao do circuito lgico dos mdulos
de I/O, sendo que a fonte externa alimenta os circuitos de potncia, ou circuitos
externos. A figura 3.12 mostra duas possibilidades de apresentao da fonte de
alimentao.
Atualmente, as fontes de alimentao para os CLPs so do tipo chaveadas. Em
alguns casos, a tenso de entrada no fixa e nem selecionvel pelo usurio, mas a
fonte possui ajuste automtico, proporcionando maior versatilidade e qualidade ao
sistema. As protees externas so basicamente um transformador de isolao ou
supressor de rudos para rede e aterramento.

Fonte Fonte de alimentao acoplada a base


Figura 3.12: Fonte de alimentao (Allen Bradley Controllogix 1756).

e) Base ou Rack
A Base responsvel pela sustentao mecnica dos elementos. Possui o
barramento que faz a conexo eltrica entre os elementos do CLP, no qual esto
presentes os sinais de dados, endereo e controle necessrios para comunicao entre a
CPU e os mdulos de I/O, alm dos nveis de tenso fornecidos para que possam
operar. A figura 3.13 apresenta um exemplo de base com indicao do barramento
interno.

Figura 3.13: Exemplo de base do modelo Allen Bradley Controllogix 1756.

Cada posio da base denominada de slot (ranhura, abertura) e cada slot da base
tem uma identificao prpria, conforme o fabricante (figura 3.14). Uma mesma famlia
de CLP pode possuir bases com diferentes quantidades de slots, com o objetivo de

44
atender s necessidades especficas de cada aplicao.

S S S S S S
L L L L L L
O O O O O O
T T T T T T
Fonte de
D 0 1 2 3 4
Alimentao A

C
P
U

Figura 3.14: Exemplo de identificao dos Slots da base.

3.1.4.Classificao dos CLPs


Segundo GEORGINI (2000), os CLPs podem ser divididos em grupos especficos
de acordo com a estrutura que apresentem, quantidade de pontos de I/O que a CPU
pode controlar e quantidade de memria de programao disponvel. So esses:
1 - Micro CLP, com at 64 pontos de I/O e at 2Kwords de memria.
2 - Pequeno CLP, com 64 a 512 pontos de I/O e at 4Kwords de memria.
3 - CLP Mdio, com 256 a 2048 pontos de I/O e dezenas de Kwords de memria.
4 - CLP Grande, que possui acima de 2048 pontos de I/O e centenas de Kwords de
memria.
Em 1997, os controladores lgicos programveis com at 14 pontos de I/O e
tamanho muito reduzido foram lanados no mercado, tendo sido denominados pelos
fabricantes de Nano CLP.
Entre os micros e pequenos CLP , ainda, possvel encontrar outra diviso:
1 CLP Compacto: que tem quantidade fixa de pontos de I/O.
2- CLP Modular: que permite a configurao, por parte do usurio, da quantidade e
combinao dos pontos de I/O.

3.2. Linguagem de programao (ladder)


A linguagem de programao que ser utilizada neste trabalho para
implementao nos CLP a linguagem ladder. Essa uma linguagem grfica baseada
em smbolos, semelhantes aos contatos de bobinas nos esquemas eltricos. Por sua
semelhana com sistemas de controle a rels facilmente compreendida.
Existem outros tipos de linguagem que so utilizadas nos CLPs, como a
linguagem de lista de instrues que amplamente difundida na Europa. A lista de

45
instrues uma linguagem textual, semelhante ao assembly, e faz parte das linguagens
bsicas normalmente disponveis em um CLP.
As outras linguagens de programao encontrados no mercado para programao
dos CLP so as linguagens C e BASIC. A Norma IEC 61131 (inicialmente 1131), de
agosto de 1992, apresenta atualmente oito partes (IEC 61131-1 a IEC 61131-8). A
terceira parte (IEC 61131-3), aborda as linguagens de programao, e define, tambm,
a estrutura de um projeto, os tipos de dados e a organizao interna do programa. As
cinco linguagens de programao definidas com sintaxe e semntica de duas linguagens
textuais e duas linguagens grficas, e estruturao por diagramas funcionais, podendo,
inclusive, ser interligadas, so: ladder (LD), lista de instrues (IL), texto estruturado
(ST), diagrama de blocos de funo (FBD) e diagrama funcional seqencial (SFC)
(NATALE, 1995, OLIVEIRA, 1993).

3.2.1. Programadores
As principais ferramentas para programao disponveis atualmente para as
famlias de CLP encontrados no mercado so o programador manual e o software de
programao para PC. Ambas as ferramentas possuem recursos para monitorao de
condies internas CPU (diagnsticos e erros), verificao da execuo do programa
de aplicao e controle sobre os modos de operao, entre outros. Cada fabricante, e em
alguns casos cada famlia de CLP, tem suas prprias ferramentas de programao que
no podem ser usadas para CLP (ou CPU) distintos.
O programador manual uma ferramenta de menor custo e utilizada para
pequenas alteraes. Conforme mostrado na figura 3.15, o programador manual possui
um display de cristal lquido com duas linhas para apresentao das informaes
(endereo e dados do programa, condio dos pontos de I/O e diagnsticos internos) e
um teclado de membrana para entrada dos dados. O programador manual, contudo, no
indicado para o desenvolvimento de todos os programas de aplicao, pois permite
edio e alterao apenas por meio de mnemnicos (linguagem de lista de instrues).
Porm, bastante til como ferramenta de manuteno para trabalho de campo,
proporcionando visualizao, monitorao e alterao de parmetros e do programa de
aplicao com muita rapidez e com a vantagem de ser porttil e resistente ao ambiente
industrial.

46
Figura 3.15: Ferramentas de programao - programador manual.

O software de programao para PC desenvolvido de acordo com as normas da


IEC, variando muito de acordo com o fabricante em seu ambiente de trabalho e em suas
configuraes internas. Mais adiante ser descrito o ambiente de programao utilizado
neste trabalho, que o PL7 micro.

3.2.2. Fundamentos de programao em linguagem ladder


A figura 3.16 mostra alguns componentes da linguagem ladder e na figura 3.17
um exemplo de um programa em linguagem ladder.

Contato Contato Contato Contato


Normalmente Normalmente NA NF
Aberto(NA) Fechado(NF)
Representao utilizada Representao utilizada
pela Automationdirect.com pela GE

Figura 3.16: Exemplo de instrues em linguagem ladder.

Coluna 1 Coluna 2 Coluna 3 Coluna de


Sada
Linha 1
I1 I2
Rung 1 1 Q0

Linha 2 I3

Linha 1 I1
Rung 2 2 Q1

END

Figura 3.17: Componentes da programao em linguagem ladder.

47
A quantidade de colunas e linhas, ou elementos e associaes, que cada rung
pode conter determinada pelo fabricante do PLC, podendo variar conforme a CPU
utilizada. Em geral, este limite no representa uma preocupao ao usurio durante o
desenvolvimento do programa de aplicao, pois os softwares de programao indicam
se tal quantidade foi ultrapassada, por meio de erro durante a compilao do programa
de aplicao.
Cada elemento da lgica de controle representa uma instruo da linguagem
ladder, sendo alocada em um endereo especfico e consumindo uma quantidade
determinada de memria (word) disponvel para armazenamento do programa de
aplicao, conforme a CPU utilizada. Um mesmo smbolo grfico da linguagem ladder
(contato normalmente aberto, por exemplo) pode representar instrues diferentes,
dependendo da localizao na lgica de controle.

3.2.3. Implementao da lgica de controle


A figura 3.18 apresenta um diagrama de blocos que mostra como resolver em
etapas um problema de lgica.

Gerao de
Interpretao
Tabela-Verdade Funces
Lgica
Lgicas

Figura 3.18: Organizao do raciocnio na soluo de problemas de lgica.

A anlise para a criao de programas no CLP est baseada na lgica binria. Esse
sistema conhecido como lgebra de Boole, o qual est baseado em um conjunto de
operaes entre variveis binrias. O sistema binrio um sistema de numerao que
consta de dois valores, 0 e 1. Cada dgito de um nmero representado no sistema binrio
recebe o nome de bit, de maneira tal que cada bit pode tomar o valor 0 ou 1. A notao
aqui utilizada A para negar A, . e + para indicar e e ou, respectivamente
(BIGNELL e DONOVAN, 1995). Os teoremas booleanos so:

1. A = A 5. A + 1 = A 9. A. A = 0
2. A.0 = 0 6. A + A = A 10. A.B + A.C = A.(B+C)
3. A + 0 = A 7. A.A = A 11. A + A .B = A + B
4. A.1 = A 8. A + A = A

48
Esses teoremas, juntamente com os teoremas de DE MORGAN permitem
minimizar as relaes lgicas entre as variveis. Os teoremas de De Morgan so:
1. A . B = A + B
2. A + B = A . B
A tabela 3.2 a seguir considera as funes lgicas e suas implementaes
utilizando a linguagem ladder.

Tabela 3.2: Implementao da lgica booleana/De Morgan em linguagem ladder.

Lgica booleana /
Funo Tabela-verdade Implementao em Linguagem ladder
De Morgan

A A I0 Q0
NOT 0 1 A=A
1 0

A B Y I0 I1 Q0
0 0 0
AND 0 1 0 Y = A.B
1 0 0
1 1 1

A B Y I0 Q0
0 0 0
OR 0 1 1 Y = A+B I1
1 0 1
1 1 1

A B Y I0 I1 M0 I0 Q0
0 0 1
NAND 0 1 1 Y = A.B = A+B M0 Q0 OU I1
1 0 1
1 1 0
I0 M0
A B Y
0 0 1 I0 I1 Q0
I1
NOR 0 1 0 Y = A+B = A.B OU
1 0 0
M0 Q0
1 1 0

A B Y I0 I1 Q0
0 0 0
OR
0 1 1 Y=A.B+A.B= A + B I0 I1
Exclusivo
1 0 1
1 1 0
I0 I1 M0
A B Y I0 I1 Q0
0 0 1 Y = A.B + A.B =
NOR I0 I1
0 1 0 OU
Exclusivo Y = (A+B).(A+B)
I0 I1
1 0 0
M0 Q0
1 1 1

49
3.2.4. Implementao da lgica de controle por funes do CLP
a) Funo SET e RESET
Em muitas situaes necessrio fixar o valor lgico de uma varivel no nvel
lgico 1, aps o acionamento de um sensor atravs do uso da sentena SET, que permite
ativar uma sada ante uma condio de entrada e permanecer ativada mesmo mudando o
estado da entrada e podendo desativar este estado na execuo de um programa
mediante o uso de uma instruo de RESET, a qual desativa a sada ante uma condio
da entrada e permanece desativada mesmo mudando essa condio de entrada.
Os CLP diferem na forma de implementar essas funes variando de acordo com
o tipo de fabricante dos controladores. Um exemplo geral mostrado na figura 3.19.
Neste diagrama, aps o acionamento da entrada I0, se estabelecer (SET) na sada Q0
ou estado lgico 1, o qual permanecer nesse estado indefinidamente, mesmo que o
estado da entrada seja alterado. Somente mediante o acionamento da entrada I1, se
desativar a sada Q0, voltando ao nvel lgico 0, permanecendo nesse estado desde que
I0 no esteja acionada. Em muitos CLPs a sentena de RESET prevalece sobre as
sentenas de SET, no causando travamento do CLP.

I0 Q0
S

I1 Q0
R

Figura 3.19: Circuito de SET e RESET.

b) Temporizadores
Os CLPs atuais possuem um recurso de temporizao, acionando os dispositivos
aps um retardo de tempo. A maneira como ele inserido no diagrama de contatos,
assim como algumas de suas particularidades so prprias de cada modelo de CLP. Um
diagrama de contatos para o uso de um temporizador est mostrado na figura 3.20. Note
que o tempo ajustado de 10 segundos. Assim ao se ativar a entrada I0, se ativar a
base de tempo T0, a qual esperar um tempo 10 s. Passado esse tempo, se ativar a

50
chave T0 e, portanto, a sada Q0, a qual permanecer ativada at a entrada I0 se
desativar. Se, no entanto, a entrada I0 permanecer ativada um tempo menor que 10s, a
sada Q0 no se ativar. O diagrama de tempos mostrado na figura 3.21 ilustra essa
situao.

I0 T0

Tempo
10

T0
Q0

Figura 3.20: Diagrama ladder de um temporizador.

<10s >10s
I0
10s
T0

Q0
Figura 3.21: Diagrama de tempos de um circuito temporizador.

c) Contadores
Os CLPs possuem funes de contagem, que podem ter como base o tempo, pois
variam de acordo com os sinais de entrada que ele recebe, permitindo controlar
quantidades, nmero de ocorrncias e com esses dados efetuar operaes matemticas
internas do CLP. O modo de implementar um contador em um diagrama de contatos ou
linguagem ladder tambm varia de um modelo para outro em um CLP. Existem
contadores que realizam essa funo em ordem crescente ou decrescente de acordo com
o especificado no dispositivo. Um exemplo geral de um contador est mostrado na
figura 3.22.

51
I0 C0
C (crescente)

I1
D (Decrescente)

I2
Reset

C0 Tempo
100
Q0

Figura 3.22: Diagrama de contatos de um circuito contador.

Note na figura 3.22 que o contador C0 possui 4 entradas: a entrada de contagem


crecente (incrementando) C, controlada pela entrada I0, a entrada de contagem
descendente D, controlada pela entrada I1, a entrada R para o iniciar a contagem,
controlada pela entrada I2, e finalmente a entrada PV, para especificar depois de
quantas ocorrncias se ativar o contador. Assim, a chave C0 ser acionada,
alimentando a sada Q0, aps um nmero determinado de ocorrncias, que neste caso
ser de 100.

d) Rels Especiais
So funes existentes em muitos CLPs e predefinidas pelo fabricante, por
exemplo, instrues internas de memria, como indicao de status do acumulador da
CPU, monitoramento do sistema, indicao de erros e base de tempo-real. So
identificados por SP ou por outro smbolo de acordo com o tipo de CLP e so
associadas s instrues booleanas de entrada, ou seja, contatos normalmente abertos ou
contatos normalmente fechados. A tabela 3.3 apresenta alguns exemplos de rels
especiais.

52
Tabela 3.3: Rels especiais (nvel lgico alto 1 e nvel lgico baixo 0).

Rel Funo Descrio

SP0 Primeira varredura Ativado apenas na primeira varredura da


CPU; desativado nas demais
SP1 Sempre ligado Ativado em todas as varreduras
SP2 Sempre deslidado Desativado em todas as varreduras
SP3 Clock de 1 minuto 30seg em nivel alto e 30seg em nvel baixo
SP4 Clock de 1 segundo 0,5s em nvel alto e 0,5s em nvel baixo
SP5 Clock de 100 mseg 50 ms em nvel alto e 50 ms em nvel baixo
SP6 Clock de 50 mseg 25 ms em nvel alto e 25 ms em nvel baixo

3.3. Converso entre redes de Petri e linguagem ladder


Nesta seo sero apresentadas algumas formas de converso entre redes de Petri
e linguagem ladder. Devido grande facilidade de anlise, as redes de Petri tm sido
empregadas em grande escala para anlise de sistemas a eventos discretos e por esta
razo, muitos tm estudado formas de converso direta entre redes de Petri e linguagem
ladder. O objetivo desta seo mostrar que existe esta possibilidade, mas, sem entrar
na questo de qual das programaes a melhor. Ao longo desta seo sero colocadas
as formas de converso, que muitas das vezes necessitam de um conhecimento prvio
para anlise e programao.

3.3.1. Mtodos de converso entre redes de Petri e linguagem ladder


Durante as ltimas dcadas, foram desenvolvidos muitos mtodos para
implementao em CLP baseados em redes de Petri e linguagem ladder. Esses mtodos
visam a converso direta entre redes de petri e linguagem ladder. BOUCHER et al.
(1989), desenvolveram um controlador para um rob e controle numrico de um torno
mecnico com redes de Petri e carregadores e compiladores de linguagem ladder. Foi
comparado o desempenho de controle, tendo as redes de Petri descrito um fluxo de
processo mais eficaz que a linguagem ladder correspondente. JAFARI e BOUCHER
(1994) desenvolveram uma interface entre uma especificao de alto-nvel de um
sistema e seu controlador lgico, cuja interface foi baseada em vrias regras para
transformar as especificaes em um controlador baseado em redes de Petri e transferir

53
as especificaes para linguagem ladder. CAZZOLA et al. (1995), investigaram como o
desempenho de um algoritmo de controlador lgico afetado pelo modo particular de
paridade no qual um esquema de redes de Petri convertido em um algoritmo corrente
em um CLP. Os mtodos sistemticos para formular redes de Petri para CLP e comparar
redes de Petri e linguagem ladder para sistemas industriais podem ser visto em
VENKATESH e ZHOU (1998).
A tabela 3.4 mostra os elementos bsicos que constituem uma linguagem ladder e
uma rede de Petri e na tabela 3.5 so mostradas a lgica modelada construda por redes
de Petri e linguagem ladder, que podem ser usadas para calcular o nmero de elementos
bsicos necessrios para uma rede de Petri e linguagem ladder (PENG e ZHOU, 2001,
LEE e HSU, 2001, PENG e ZHOU, 2004). Os critrios de comparao incluem
complexidade de projeto (medida pelo nmero de ns bsicos e ligaes), facilidade de
compreenso (habilidade para avaliar a lgica programada, verificar a transformao e
manter o sistema de controle), flexibilidade (facilidade de modificar o sistema de
controle quando ocorrem mudanas nas especificaes) e tempo de resposta (tempo de
varredura da linguagem programada).

Tabela 3.4: Elementos bsicos da linguagem ladder e da rede de Petri.


Elementos Linguagem Rede de
bsicos ladder Petri

Boto de Presso
Lugar
Chave NA

Transio
Chave NF

Ns Rel R

TR
Temporizador

Contador CNT

Solonide

Arco normal
Links Linha
Arco inibidor

54
Tabela 3.5: Lgica para converso entre redes de Petri e linguagem ladder.

Lgica Rede de Petri Linguagem ladder


1 m
...
1 m m+1
Lgica AND Ns = m + n + 1 Ns = m + n
Links = m + n Links = m + 2n
m+n
...
m+1 m+n

1 m
1
Lgica OR
m+1 Ns = 2m + n m+1 Ns = m + n
Links = m (1 + n) Links = 2(m + n)
m
m+n
m+n

1 m m+1
1 m+n+1
Modelo m+2 m+3 Ns = m + n + 2n
m+1 m+n Links = 3(n + 1) + (m -1) + 2(n - 1)
Sequencial
m+2n m+2n+1
m+n+n
m+2n+n
m
Ns = 2(m + n + n) - 1
Links = m + n + 2n

1 m m m+1
... 1
Timer
Lgica AND Ns = m + n + 1 T
Atraso
Temporizada (delay)
Links = m + n
m+2 m+r
...
m+1 m+n m+r+n
Ns = m + n + r + 1
Links = m + 2n + r + 2

1 m 1
Timer 3d+1
Lgica OR Atraso
Atraso 1 Atraso d (delay 1)
Temporizada (delay) m+1 (delay)
Ns = 3d + n
Ns = 2d + n Links = 5d + 2n
Links = d (1 + n)
m+n Timer
Atraso
(delay d)
3d+n

1 m+n+1 1 m
Timer
Modelo m+1 m+n
Atraso
(delay 1)
Sequencial
Temporizado m+n+n
1
m
Atraso 1 Atraso d Timer
(delay) (delay) Atraso
(delay d)
Ns = 2d + m + n - 1
Links = 2d + m + n - 2 n
Ns = 4d + m + n - 2
Links = 6d + m + 2n - 3

3.3.2. Um mtodo para converter redes de Petri em linguagem ladder


Para facilitar a anlise deste assunto, deve-se salientar que possvel criar
blocos lgicos para redes de Petri, tal como Lgica OR, Lgica AND, Concorrncia e
Sincronizao. O mtodo apresentado , em particular, baseado em uma classe especial
de redes de Petri, costurada para modelar o fluxo de controle em sistemas discretos. O
objetivo principal da metodologia proposta reduzir o esforo de projeto devido
complexidade de problemas de controle e prover critrios de projeto para ajustar as
aproximaes (LEE e HSU, 2001, JIMNEZ et al., 2001, JONES et al., 1996).

55
A lgica e outros blocos de construo bsicos usados para controle em seqncia
que so modelados por redes de Petri e linguagem ladder so mostrados na tabela 3.6.
Na tabela, as primeiras quatro linhas mostram em fila como os elementos bsicos de
redes de Petri so usados para modelar condies, estados, atividades, informaes e
fluxo de material e recursos. Note que a linguagem ladder no possui as representaes
explcitas correspondentes. A lgica AND e a lgica OR podem facilmente modelar
redes de Petri e linguagem ladder com complexidades semelhantes, os outros conceitos
mencionados como concorrncia e sincronizao so tambm ilustrados na tabela 3.6,
sendo acrescentado, tambm, a questo da temporizao.

Tabela 3.6: Modelagem de redes de Petri e linguagem ladder.

Lgica de Construo Rede de Petri Linguagem ladder

Condio ou status do elemento


Lugar Representao no explicita
do sistema

Atividade Transio Representao no explicita


Arco
Fluxo de informao ou material Representao no explicita
direcionado

Objetos ativos: Smbolo presente no Representao no explicita


mquinas, robs, pallets, etc... lugar

A B C A B C D
Lgica AND
IF A=1 AND B=1 AND C=1
THEN D=1
D

A
A B C
Lgica OR
IF A=1 OR B=1 OR C=1 B D
THEN D=1
C
D

A B A B C
Concorrncia
IF A=1 AND B=1
D
THEN C=1 AND D=1 AND E=1 E
C D E

Temporizado B
A B A
IF A=1
THEN aps atraso de tempo
Timer

B=1

Sincronizao A B C A D
IF A=1
THEN Aps atraso de tempo 1 Timer
1 E
D=1 B C
IF B=1 AND C=1 D E Timer
2
THEN Aps atraso de tempo 2 D E F
E=1 Timer
IF D=1 AND E=1 3
THEN Aps atraso de tempo 3 F
F=1

56
Para ilustrar a aplicao da tabela 3.6, suponha a seguinte funo lgica: Y = ((X0
+ X1 + X2).(X4.X5)) + X3, essa funo gera respectivamente as seguintes linguagens
ladder, conforme figura 3.23, e rede de Petri, figura 3.24.

X0

X1

X2 X4 X5
Y
X3

Figura 3.23: Linguagem ladder da funo Y = ((X0 + X1 + X2).(X4.X5)) + X3.

P1 P2 P3

P10
P5 P6

P4 P7

P9

P8

Figura 3.24: Rede de Petri da funo Y = ((X0 + X1 + X2).(X4.X5)) + X3.

Considere, agora, um simples sistema industrial, conforme mostrado na figura


3.25. Este sistema consiste de uma estao de armazenamento de estrado (pallet), uma
estao de montagem, uma estao de inspeo, um transportador, e um rob. Duas
peas so colocadas, atravs do rob, na estao de montagem. Depois que a montagem
das duas peas feita, o rob descarrega o produto acabado em uma mesa de trabalho.
O transportador de pallet leva um pallet vazio da estao de armazenamento de pallet
para a estao de montagem. O rob tambm descarrega o produto acabado da mesa de
trabalho e coloca no pallet que est no transportador. Finalmente, o transportador
transporta o produto acabado carregado em pallet da estao de montagem para estao
de inspeo.

57
Estao de
Armazenamento de Transportador
Estrados(Pallet)
Estao
Mesa de Trabalho de
Montagem

Chave limite D

Chave limite E Sensor C

Chave limite F
Rob

Estao de Inspeo

Figura 3.25: Esquema de manufatura.

As disponibilidades das peas so verificadas atravs de dois sensores A e B, no


mostrados na figura. As chaves limite D, E, e F verificam a presena do transportador
nos pontos determinados. O sensor C reconhece o carregamento do produto acabado na
mesa de trabalho atravs do Rob. A durao de tempo de ajuntamento pelo Rob e a
transferncia do produto acabado da mesa de trabalho 1 unidades, 2 e 3 so as
duraes de tempo para o transportador se deslocar da estao de armazenamento de
pallet estao de montagem e da estao de montagem para a estao de inspeo,
respectivamente.
O modelo de rede de Petri do sistema mostrado na figura 3.26(a) e na figura
3.27(b) mostrada a respectiva linguagem ladder para o modelo.

A B C
Timer

A B D C 1
E
D
Timer
t1 t2
C E
E 2

D E F
t3 Timer

F F 3

(a) (b)
Figura 3.26: (a) Rede de Petri e (b) Linguagem ladder da figura 3.25.

58
Considere mais um exemplo para anlise entre redes de Petri e linguagem ladder.
Suponha que em uma estao de teste exista uma linha de transporte usando detectores
para encontrar produtos defeituosos. A condio do produto conferida quando o
produto entrar na estao de teste. Se um defeito achado no produto, ele expelido
atravs do acionamento de uma alavanca que faz com o produto defeituoso siga por
outro caminho; caso contrrio, ele atravessa a linha de transporte e vai para a prxima
estao. O mecanismo para este exemplo ilustrado na figura 3.27.

Sada de produtos aprovados

Detectores de saida

Detector de passagem

Produto defeituoso Alavanca para


expelir produto

Detector para
expelir produto

Sensor de entrada

Detector de defeito

Entrada de produto

Figura 3.27: Layout do exemplo.

A seqncia de controle para a estao de teste descrita pelo diagrama da rede


de Petri na figura 3.28. Nesta figura, os cinco lugares (P1 at P5) representam os estados
progressivos operados pela estao de teste, enquanto as seis transies (Tl at T6)
decidem a sucesso destes estados. Quatro aes (Al at A3) so ativadas
respectivamente do estado P2 at P5, para executar as aes externas.

A simbologia usada pela linguagem ladder de um PLC Omron C-200H


(OMRON, 1994) e empregado para implementar a modelagem feita por uma rede de
petri. As descries das transio (condio externa) e ao para a rede de petri. So
mostradas nas figura 3.29(a) e 3.29(b) as linguagens ladder que foram convertidas a
partir do modelo de rede de Petri da figura 3.28.

59
Ligar

P1
Esperando sinal para prxima
entrada de produto (A3)

T1
Entrada de produto

P2
Ativado o detector de defeito (A1)

T2 T3
Detecco: Falha Deteco: OK

P3 P4
Conjunto acionado Conjunto deixa
para expelir o passar o produto (A2)
produto defeituoso (A2)

T4 T5
Expelir produto Passar produto

P5 Desativar o detector de defeito (A1)

T6 Sada do produto

Figura 3.28: Rede de Petri da estao de teste.


Ligar
253.15 100.00

100.04 000.05 P1
P5 T6-1

000.06
T6-2

100.00 100.01
P1 P2

100.00 000.00 100.01


P1 T1

100.01 100.02 100.03 P2


P2 P3 P4

100.01 000.02 100.02


P2 T2

100.02 100.04 P3
P3 P5

100.01 001.00
100.01 000.01 100.03
P2
P2 T3

001.00 100.04 A1
100.03 100.04 P4
A1 P5
P4 P5

100.02 001.01
100.02 000.04 100.04
P3
P3 T4

001.01 100.03 A2
100.03 000.03 P5
A2 P4
P4 T5

100.00 001.02
100.04 100.00
P1
P5 P1

A3

(a) (b)
Figura 3.29: (a) Linguagem ladder da seqncia de controle e (b) Linguagem
ladder para as aes de sada.

60
Captulo 4. Equipamentos do laboratrio proposto

Neste captulo sero descritos os equipamentos que fazem parte do laboratrio


proposto neste trabalho. So eles: o CLP TSX 3722 (hardware e software), a esteira
transportadora, o dispositivo com um conjunto de lmpadas e o conjunto de chaves de
impulso sem reteno. O laboratrio, tambm, possui um computador para a
programao do CLP.
Este captulo est estruturado da seguinte forma: na seo 4.1 descrito o CLP
TSX 37-22 Telemecanique modular, com suas caractersticas de entrada e sada bem
como algumas de suas vantagens de utilizao e operao; na seo 4.2 visto o
software de programao (programa PL7 Micro) projetado especificamente para o CLP
TSX 37-22, que operam no ambiente windows, onde estudada a composio do
programa e seu ambiente de programao juntamente com suas ferramentas de
manipulao; na seo 4.3 descrita a esteira transportadora em termos de seus
componentes (sensores, painel de controle e o motor interno da esteira); na seo 4.4
descrito o conjunto de lmpadas com suas caractersticas tcnicas e o conjunto de
chaves de impulso sem reteno, e tambm visto um pequeno esquema de ligao das
lmpadas com o CLP; na seo 4.5 so vistos os esquemas de ligaes utilizados nos
experimentos do laboratrio, isto , entre o CLP e a esteira transportadora e entre o
CLP e o conjunto de lmpadas.

4.1. CLP TSX 37-22


O CLP TSX 3722 um CLP Telemecanique modular, com as seguintes
caractersticas: (i) pode receber at 140 entradas e sadas com bornes para conexo; (ii)
no possui mdulos de entrada e sada embutidos como padro; (iii) a memria de
programa do usurio pode ser aumentada; (iv) aceita um mdulo de comunicao; (v) a
alimentao feita em AC e DC; (vi) possui funes de contagem rpida e analgicas;
(vii) a flexibilidade e a praticidade; (viii) permitem a expanso do nmero de slots para
a insero de mdulos atravs de um rack de extenso, conforme mostrado na figura
4.1.
A alimentao do CLP feita de modo AC, uma alimentao de 24 V da base
do CLP fornece alimentao para seus sensores e para os I/Os de extenso, se

61
requeridos, desde que o consumo de corrente seja menor ou igual a 400 mA. Se este no
o caso, necessrio o uso de uma alimentao auxiliar de 24 VDC.

Mdulo em
formato
padro

Mdulo em
formato
reduzido

Rack de Extenso
Base do CLP

Figura 4.1: CLP com expanso do nmero de slots.

Os CLPs da linha TSX 37 no possuem mdulos de I/O integrados. Qualquer


necessidade relacionada a estas sanada por meio do uso de mdulos. Os mdulos de
I/O discretos diferem-se no somente em seu formato, mas tambm pela sua
modularidade (de 4 sadas a 64 entradas e sadas), pelo tipo de entradas (DC ou AC),
pelo tipo de sadas (transistor ou rel) e pelas conexes (bloco de bornes ou conectores
HE10). Estas entradas e sadas discretas so utilizadas para o acionamento de atuadores,
sensoriamento etc.
O CLP oferece 3 mtodos de contagem: (i) usando as entradas discretas do
primeiro mdulo; (ii) usando canais contadores integrados no CLP TSX 3722 e (iii)
usando mdulos contadores que podem ser inseridos em qualquer posio disponvel.
O CLP TSX 37-22 o nico da linha TSX 37 que possui recursos integrados
relativos ao processamento de sinais analgicos. Esse mdulo integrado (figura 4.2)
constitudo de 8 entradas e 1 sada, com conversores de 8 bits, 0-10V.

62
Sada 1
9 NC Mdulo analgico integrado
Sada comum 2
10 Entrada 2
Entrada 3 3
11 Entrada 4
Entrada 5 4
12 Entrada 6
Entrada 7 5
13 Entrada 8
Entrada 9 6
14 Entrada comum
NC 7
15 Sada de referncia : 10v
NC 8

Figura 4.2: Mdulo analgico integrado.

A estrutura de memria do CLP TSX 3722 composta por uma memria RAM
onde so executados os programas e uma memria Flash EPROM onde fica armazenada
uma cpia de backup do programa que est sendo executado. Caso seja necessrio um
espao maior de memria, pode-se conectar um carto de memria PCMCIA, que
possibilita um aumento de memria de 32 ou 64 Kwords. Para maior compreenso
dessa estrutura de memria observa-se a figura 4.3 (sem carto de memria PCMCIA).
Na parte Dados ficam armazenadas as palavras (words) de sistema, funes do FB
(contadores, temporizadores, monoestveis, registradores e drums), words internas ou
words comuns. Na parte Programa feita a descrio e execuo das tarefas pr-
definidas. As Constantes podem ser valores iniciais ou configurao de I/Os;
finalmente o Backup o local onde fica armazenado uma cpia do programa que est
sendo executado (memria Flash EPROM). Como se pode observar na figura 4.3,
feito um backup atravs de uma memria Flash EPROM do programa que est sendo
executado; na falta de alimentao o programa fica armazenado.

63
RAM
interna
Dados

14 Kwords(37-10)
20 Kwords(37-20) Programa

Constantes

Flash Cpia de
EPROM
interna Backup
15 Kwords Programa

Figura 4.3: Estrutura de memria.

O CLP possui um bloco de visualizao dos estados e falhas dos mdulos, este
bloco centraliza um grupo de servios que so requeridos para setup, operao,
diagnstico e manuteno. Pode ser melhor descrito na figura 4.4. A visualizao do
estado do CLP melhor vista na figura 4.5, com os seguintes terminais: 5 LEDs (RUN ,
TER ,I/O , ERR , BAT).

Boto

Figura 4.4: Blocos de visualizao.

64
Aceso uma aplicao est sendo executada
Piscando execuo da aplicao est parada
Apagado - nenhuma aplicao vlida no CLP ou este est com falha

Aceso troca de informaes via porta de comunicao

Aceso falha em I/O

Aceso falha na CPU do CLP


Piscando nenhuma aplicao vlida no CLP ou existe uma falha de
bloqueio na aplicao
Aceso falta de bateria
falha na bateria

Figura 4.5: Visualizao do estado do CLP.

As falhas so apresentadas no modo diagnstico, acessvel por um


pressionamento longo (maior que 1 segundo) do boto no bloco de visualizao, se uma
entrada ou sada est com falha, seu LED correspondente pisca rapidamente. Se um
mdulo est com falha (mdulo faltando, no est de acordo com a configurao,
mdulo desligado etc), todos os LEDs correspondentes a seu slot piscam lentamente.
Este modo permite a visualizao de falhas em todos os mdulos (mdulos de I/O
discretos, mdulos contadores etc).
O CLP TSX 3722 possui duas portas de comunicao distintas, assinaladas
como TER e AUX, que so funcionalmente idnticas (figura 4.6). Elas permitem
conexo simultnea de um terminal de programao e de uma interface homem-
mquina.
A porta de comunicao assinalada como TER (comum a todos os tipos de CLP
da linha TSX 37), pode ser usada para conectar qualquer dispositivo suportando o
protocolo UNI-TELWAY, e em particular dispositivos que no tenham sua prpria
fonte de alimentao (terminal de programao FTX 117, cabo conversor RS 485 / RS
232, caixa de isolao TSX P ACC 01 etc). A porta de comunicao assinalada como
AUX (encontrada no TSX 37-22), pode ser usada somente para conectar dispositivos
que tenham sua prpria fonte de alimentao (painel do operador, CLP etc). A figura
4.7 ilustra o uso das portas de comunicao.

65
Figura 4.6: Portas de comunicao.

A porta de comunicao do CLP pode manipular dois dispositivos


simultaneamente, que podem ser um terminal de programao e um painel do operador.
O CLP TSX 3722 , tambm, conectado em redes e barramentos de
comunicao por meio de cartes de comunicao PCMCIA. Os padres fsicos
suportados pelos cartes so RS-232-D e RS-485 (compatvel com o RS 422).

XBT Z 968
T FTX 1020/050
Terminal de
programao
Terminal de
programao CCX 17

Figura 4.7: Portas de comunicao e os dispositivos que podem ser conectados.

4.2. Linguagem de programao do TSX 3722


O programa PL7 Micro um software de programao projetado para o CLP
TSX 37, operando em ambiente Windows. O programa composto de: a) Uma
linguagem grfica que linguagem de contatos com transcrio de esquemas de rels,

66
que est adaptada ao tratamento combinatrio com as seguintes caractersticas: (i)
oferece smbolos grficos de base (contatos e bobinas); (ii) a escrita de clculos
numricos pode ser efetuada nos blocos de operao; e, (iii) uma linguagem booleana
que a linguagem de lista de instrues, sendo uma linguagem de mquina com
escrita de tratamentos lgicos e numricos; b) Uma linguagem literal estruturada que
uma linguagem do tipo informtica com uma escrita estruturada de tratamentos
lgicos e numricos; c) Uma linguagem Grafcet que permite representar graficamente e
de forma estruturada o funcionamento de um automatismo seqencial.
Estas linguagens formulam blocos de funes predefinidas (temporizadores,
contadores etc), funes especficas (analgica, comunicao, contagem etc) e funes
particulares (controle de tempo, cadeia de caracteres etc). Os objetos da linguagem
podem ser simbolizados mediante o editor de variveis na rea de trabalho do programa.

4.2.1. Estrutura de execuo das tarefas


Sua estrutura de execuo de tarefas possui uma estrutura monotarefa e
multitarefa. A Estrutura monotarefa uma estrutura pr-determinada do programa,
contendo uma s tarefa que a tarefa mestre. A tarefa mestre pode ser executada de
forma cclica (funcionamento pr-determinado) ou peridica. Em funcionamento
cclico, as execues da tarefa se encadeiam uma com as outras tarefas, sem tempo de
espera. No funcionamento peridico, as execues das tarefas se encadeiam em um
perodo determinado pelo usurio.
As tarefas de um programa PL7 so compostas de vrias partes denominadas
sees e subprogramas, sendo cada uma das sees com uma linguagem apropriada ao
tratamento que se deseja realizar. Esta diviso em sees permite criar um programa
estruturado e gerar ou incorporar facilmente os mdulos de programa. Pode ser feita
uma chamada aos subprogramas de qualquer seo da tarefa qual pertence ou de
outros subprogramas da mesma tarefa.

67
4.2.2. Ambiente de trabalho do PL7 Micro

1 2 3 4

5
6

Figura 4.8: Ambiente de programao do PL7 Micro.

O ambiente de programao do PL7 Micro explicado de maneira simplificada


na figura 4.8, onde a numerao corresponde a: barra de Menu, que permite acesso a
todas as funes do programa (1), barra de Ferramentas, que oferece acesso rpido
mediante o mouse a todas as funes bsicas e a todos os editores (2), ajuda, que
proporciona informaes sobre o programa (3), editores, que permite a criao,
depurao e a utilizao das aplicaes (4), paleta de elementos grficos, que permite o
acesso direto a todas as ferramentas para criao dos programas em linguagem ladder
(5) e barra de estado, que fornece um conjunto de informaes vinculadas ao estado do
programa (6).

4.2.3. Programao
A linguagem de contatos pode mostrar simultaneamente variveis e smbolos.
Os objetos da linguagem podem ser simbolizados usando-se o editor de variveis na
rea de trabalho do programa. O usurio pode introduzir e visualizar os objetos

68
mediante suas variveis (%M1, %M2), ou mediante uma cadeia de caracteres (mximo
32 caracteres) denominada smbolo (Ligar, Sensor_1, Sensor_2, por exemplo),
conforme mostra a figura 4.9.

Figura 4.9: Variveis usadas no programa.

Antes de iniciar-se a programao no software PL7 Micro, deve-se considerar


de grande importncia os parmetros de comunicao entre o micro computador e o
CLP. A opo UNI-TELWAY, mostrada na figura 4.10, deve ser configurada de
acordo com as caractersticas do computador utilizado.

Figura 4.10: Configurao da comunicao.

Quando se deseja criar um novo programa deve-se obedecer a uma seqncia de


comandos e selecionar adequadamente as opes em que se desejar executar o novo
programa. Quando pedido pelo software a criao de um novo programa, ir aparecer
na tela um quadro (figura 4.11) para que seja selecionado o tipo de CLP e a verso
utilizada do programa gerador da linguagem ladder. Neste trabalho ser utilizado o CLP

69
TSX 3722 verso 1.5 do software. Note que, no mesmo quadro aparece a opo para ser
utilizada a linguagem Grafcet, deve-se clicar na opo No, pois a linguagem a ser
utlizada ser a linguagem ladder, a ser selecionada mais adiante. As opes de 32K ou
64K, mostradas na figura 4.11, s podem ser selecionadas quando existir a placa
PCMCIA para a expanso de memria. No caso do laboratrio proposto neste trabalho,
o modelo utilizado no possui esta placa; portanto, deve ser selecionada a opo None.

Figura 4.11: PLC e verso utilizada do software.

Finalizando a seqncia anterior, o programa permite a seleo do tipo de


programa a ser utilizado. Para tanto, as opes MAST e MAIN sero utilizadas,
conforme ilustrado na figura 4.12. Aps esta seleo, uma ltima tela aparecer para
que possa ser selecionado o tipo de linguagem a ser utilizada, conforme mostra a figura
4.13. Deve-se, ento, selecionar a opo Ladder (LD). Aps todos esses procedimentos
o ambiente de programao estar disponvel para ser utilizado, conforme mostrado na
figura 4.14.

Figura 4.12: Tipos de programas que podem ser gerados.

70
Figura 4.13: Seleo da linguagem a ser utilizada.

Figura 4.14: Ambiente de programao.

Deste ponto em diante, pode-se comear a construir um programa neste


ambiente de programao que ser transferido e utilizado no CLP. Deste ambiente de
programao, importante descrever o palete para construo das aplicaes em
linguagem ladder, que completamente detalhado na figura 4.15. Contudo, um passo
importante ainda necessrio, que a configurao do tipo de CLP a ser utilizado.
Deve ser lembrado que o CLP possui disponvel 16 entradas e 12 sadas no mdulo de
I/O. As instrues utilizadas pelo CLP possuem o seguinte formato: %I a entrada do
CLP; %Q a sada do CLP; %M um bit Interno; %S um bit do Sistema e %BLK
um bit dos blocos de funes. Podem-se utilizar entradas de %I1.0 at %I1.15 para
ocupar as 16 entradas e de %Q2.0 at %Q2.11 para as 12 sadas disponveis no CLP.
Outros elementos importantes so: as funes booleanas, que podem ser declaradas
atravs de um endereo de memria qualquer (bit interno) ou atravs de mdulos de I/O
digitais (bit de I/O). As instrues booleanas tm um smbolo correspondente e um
operando pode ser associado a este smbolo, tal como ilustrado na figura 4.16.

71
Contato normalmente aberto S Seta o bit associado para 1 quando este recebe nvel 1
F2 F12

Contato normalmente fechado R Seta o bit associado para 0 qdo. este recebe nvel 1
F3 S-F1

P Contato P detecta borda de subida Constri um jump


F4 S-F2

N Contato N detecta borda de descida OPER Bloco de operaes


F5 S-F3

Constri uma linha em um bloco COMP


M Bloco de comparao 2 col. e 1 lin.
F6 S-F4

Constri uma linha na vertical COMP


V Bloco de comparao 2 col. e 4 lin.
F7 S-F5

x Apaga uma linha construda na vertical ... Bloco para acessar as subrotinas
F8 S-F6

Constri uma linha em vrios blocos FB Bloco B


de funes (TM, C, MN, R, DR)
F9 S-F7

Seta o bit associado para um valor recebido F (...) Bloco de funes pr -definidas (PID, etc...)
F10 S-F8

Seta o bit associado para um valor inverso


F11

Figura 4.15: Palete para construo da aplicao em ladder.

Smbolo Operando
%I, %Q, %M, %S, %BLK
%I, %Q, %M, %S, %BLK
P %I, %Q, %M
N %I, %Q, %M
%Q, %M, %FBs
%Q, %M, %FBs
S %Q, %M, %FBs
R %Q, %M, %FBs

Figura 4.16: Smbolos e operandos correspondentes.

O CLP utilizado nesse laboratrio o TSX 3722, que possui (para


desenvolvimento deste trabalho) somente a opo do mdulo TSX DMZ 28 DR que
um mdulo digital com 16 entradas e 12 sadas que est inserido nas posies 1 e 2 do
rack do CLP.

4.2.4. Criando um programa em linguagem ladder no PL7 Micro


Para implementar o programa em linguagem ladder mostrado na figura 4.17,
deve-se proceder da seguinte maneira:
I1 Q0

Figura 4.17: Linguagem ladder.

72
Estando o programa no ambiente de programao, conforme mostrado na figura
4.18, clique na funo F2 (no teclado do computador) ou arraste o mouse at o ponto
indicado pela seta A mostrada na figura 4.18 e clique no boto esquerdo do mouse; a
partir deste momento, quando o mouse for arrastado, a figura da funo selecionada
aparecer ao lado da seta do mouse no monitor. Arraste o mouse at o ponto de incio
do programa indicado por B que a clula inicial. Neste momento ir aparecer o
contato NA selecionado e um retngulo aparecer sobre o contato pedindo que seja
especificada a descrio do contato, conforme figura 4.19, neste caso deve-se digitar
%I1.0. Aps digitar I1.0 aperte no boto ENTER do teclado. O resultado mostrado na
figura 4.20, estando, portanto, criada a chave NA referente ao circuito da figura 4.17.
Para criar a sada, clique com o boto direito do mouse sobre o ponto indicado
pela seta C (figura 4.18); a partir deste momento acontece o mesmo que na criao da
chave NA, a figura referente a sada aparecer ao lado da seta do mouse. Arraste o
mouse para posicionar ao lado da figura da chave NA %I1.0 e clique com o boto do
lado direito do mouse. O resultado mostrado na figura 4.21. Digite, ento, o tipo de
sada desejada, neste caso deve-se digitar Q2.0 e apertar, agora, duas vezes na tecla
ENTER do teclado do computador. O resultado mostrado na figura 4.22, o programa
est criado e pronto para ser transferido para o PLC.

A C

Figura 4.18: Ambiente de programao.

73
Figura 4.19: Incio do programa: especificar o contato NA.

Figura 4.20: Contato NA especificado.

Figura 4.21: Criando e especificando uma sada.

Figura 4.22: Programa completo.

Aps ser criado o programa de aplicao, o passo seguinte a transferncia para


o CLP. No menu principal deve-se clicar com o mouse em PLC. Com isso sero
mostradas vrias opes, devendo, ento, clicar em Tranfer.... Pode acontecer de o
arquivo necessitar ser salvo antes de ser tranferido. Se isso acontecer, uma tela ir
aparecer solicitando tal procedimento. Em seguida, clica-se novamente em PLC e
posteriormente em Connect. Novamente clica-se em PLC e em seguida em Run....
Agora, sim, o programa transferido e est sendo executado pelo CLP.

74
4.3. Esteira transportadora

Figura 4.23: Conjunto esteira transportadora.

Sensores
Liga

127 VCA +
Rede Desliga
24 VCC
-
+ 24 V - Habilita Esteira + 24 V - Inverte Sentido

+24 Vcc

Sensor 1

NPN PNP
+24 Vcc

Sensor 2

NPN PNP

102 mm
610 mm
Comunicao entre esteira e
painel

Figura 4.24: Esteira transportadora e detalhes de esteira e painel.

O conjunto esteira transportadora1 (figura 4.23) composto de uma esteira


deslizante feita de lona, dois sensores PNP, um motor interno para o arrasto da esteira e
um painel para ligao dos componentes da esteira com o CLP.
O painel de controle, ou ligao, faz a conexo entre a esteira e o CLP. Quando
os pontos de +24 volts, que habilitam a esteira ou inverte o sentido do movimento, so
alimentados via CLP, a esteira tem seu funcionamento iniciado. Os sinais de atuao
dos sensores so retirados dos pontos NPN e PNP do painel e levados aos terminais de
entrada de sinal do CLP para realizao da lgica de controle. A figura 4.25 ilustra
1- Um dos fabricantes desse mdulo a INTERDIDACTIC Sistemas Educacionais LTDA. Rua Orianga, 217 CEP 04 052 030 So Paulo SP Telefax 011 5078 9910
www.interdidatic.com.br Email: comercial@interdidactic.com.br

75
detalhadamente o painel. Internamente o painel constitudo por um transformador de
127 volts para 24 volts e uma placa eletrnica para realizar a inverso de alimentao do
motor, isto , para que o motor possa inverter o sentido de rotao.

Liga

127 VCA +
Rede Desliga
24 VCC
-
+ 24 V - Habilita Esteira + 24 V - Inverte Sentido

+24 Vcc

Sensor 1

NPN PNP
+24 Vcc

Sensor 2

NPN PNP

Figura 4.25: Painel de conexo entre esteira e CLP.

O Motor de fabricao da Buehler Products, INC. um motor reversvel com


tenso de alimentao de 24 volts, torque nominal aproximado de 150 mN.m, rotao de
121 rpm (carga) e 160 rpm (sem carga), corrente nominal de 250 mA. Fica localizado
dentro da esteira, e faz a correia transportadora girar pelo acionamento de um cilindro
interligado a seu eixo por engrenagens, como ilustrado pela figura 4.26.
Os sensores de esteira so do tipo PNP com tenso de alimentao entre 10 e
30Vcc, corrente aproximada de 150mA, alcance de deteco entre 10cm e 30cm e
temperatura de operao entre 25C e +55C. Sua forma de conexo ilustrada pela
figura 4.27.

Motor

Figura 4.26: Motor da esteira, transmisso feita por engrenagens.

76
Marron
Cabo do sensor +V
PNP Preto
NA

Carga
Azul
0V

Carga

Branco

NF

Figura 4.27: Sensor e conexo do cabo do sensor.

4.4. Conjunto de lmpadas e chaves de impulso sem reteno


O conjunto de lmpadas composto por 9 lmpadas coloridas (3 vermelhas, 3
verdes e 3 amarelas) de caractersticas 130V/15W. A figura 4.28 mostra o conjunto
completo, a figura 4.29 ilustra os pontos de alimentao de 127 V e 24 VDC. Cada
lmpada acionada individualmente por um rel, ilustrado na figura 4.30, que recebe a
tenso de 24 VDC enviada pelo CLP, de acordo com a lgica de controle. Finalmente a
figura 4.31 indica, de forma simplificada, como realizada a conexo entre o conjunto
de lmpadas e o CLP.

Figura 4.28: Conjunto de lmpadas.

77
Figura 4.29: Pontos de alimentao 127 V da rede eltrica e 24 VDC via CLP.

Figura 4.30: Rels de chaveamento para acionamento das lmpadas.

127 VAC
24 VDC
Fase Neutro
Lmpada
130 V / 15
W

Rel
Sada
do
CLP

Figura 4.31: Esquema simplificado para acionamento de uma lmpada via CLP.

O conjunto de chaves formado por 8 chaves de impulso sem reteno. A figura


4.32 mostra como formado o esquema do conjunto de chaves.

78
Botoeira A

chave
B

1 5
Boto
2 6
3 7
4 8

Entrada Sadas
Figura 4.32: Conjunto de chaves de impulso sem reteno.

4.5. Esquemas de ligaes utilizados nos experimentos


A figura 4.33 mostra o esquema de ligao do mdulo TSXDMZ 28DR e as
figuras 4.34 a 4.39 mostram os esquemas de ligao entre o CLP e a esteira e entre o
CLP e o conjunto de lmpadas.

Esquema de ligao do TSXDMZ 28DR


TSXDMZ
28DR 1 %I1.0
2 %I1.1
1 3 %I1.2
2
3 4 %I1.3
4 5 %I1.4
5 6 %I1.5
6 7 %I1.6
7 8 %I1.7
8
9 %I1.8

CLP
9
10 %I1.9
10
11 11 %I1.10
12 12 %I1.11
13 13 %I1.12
14 14 %I1.13
15 15 %I1.14
16 16 %I1.15
17 +24VDC Source
17
18 0VDC
18
19 Sink
20 19 NC
21 20 %Q2.0
22 21
23 22 %Q2.1
24VDC
24 23 %Q2.2
25
24 %Q2.3
26
0VDC 25
27
28 26 %Q2.4
29 27 %Q2.5
L 30 28 %Q2.6
31 29 %Q2.7
127/220VCA 32 30
33
31 %Q2.8
N 34
35 32 %Q2.9
33 %Q2.10
34 %Q2.11
35

Figura 4.33: Esquema de ligao do mdulo TSXDMZ 28DR do CLP TSX 37-22.

79
A B
Botoeira chave
1 5
2 6
3 7
130V 130V 130V
4 8
15W 15W 15W

TSXDMZ
L1 L4 L7
28DR

1
2
3 130V 130V 130V
4
5
6 15W 15W 15W
7
8
9 24VDC
CLP 10
11

80
13
12 L1 L2 L5 L8
14 L2
15
16 L3
17
18 L4 130V 130V 130V
19 L5
20
21 L6 15W 15W 15W
22
23
24VDC 24 L7
25 L8
26 L3 L6 L9
0VDC 27 L9
28
L 29
30
31
Rede Eltrica 127/220VCA 32
N 33
34
35 COM

Figura 4.34: Esquema de ligao dos experimentos 1 e 2.


N
F
127 VAC
Rels de 24V - 5A
A B
Botoeira chave
1 5
2 6
3 7
4 8 130V 130V 130V
15W 15W 15W

TSXDMZ
L1 L4 L7
28DR

1
2
3 130V 130V 130V
4
5
6 15W 15W 15W
7
8
9 24VDC
CLP 10
11

81
13
12 L1 L2 L5 L8
14 L2
15
16 L3
17
18 L4 130V 130V 130V
19 L5
20
21 L6 15W 15W 15W
22
23
24VDC 24 L7
25 L8
26 L3 L6 L9
0VDC 27 L9
28
L 29
30
31
Rede Eltrica 127/220VCA 32
N 33
34
35 COM

N
F
Rede Eltrica 127 VAC
Rels de 24V - 5A

Figura 4.35: Esquema de ligao do experimento com os semforos (experimento 3).


A B
Botoeira chave
1 5
2 6
3 7
4 8 130V 130V 130V
15W 15W 15W

TSXDMZ
L1 L4 L7
28DR

1
2
3 130V 130V 130V
4
5
6 15W 15W 15W
7
8
9 24VDC
CLP 10
11

82
12 L1 L2 L5 L8
13
14 L2
15
16 L3
17
18 L4

(experimento 4).
19
130V 130V 130V
20 L5
21 L6 15W 15W 15W
22
23
24VDC 24 L7
25 L8
26 L3 L6 L9
0VDC 27 L9
28
L 29
30
31
Rede Eltrica 127/220VCA 32
N 33
34
35 COM

N
F
Rede Eltrica 127 VAC

Figura 4.36: Esquema do experimento do semforo da passagem de pedestre


Rels de 24V - 5A
A B
Botoeira chave
1 5
2 6
3 7
4 8

TSXDMZ Liga
28DR L
127 VCA +
1 Rede Eltrica Rede Desliga
2 N 24 VCC
3 -
4
5 + 24 V - Habilita Esteira + 24 V - Inverte Sentido
6

83
7
8
9 +24 Vcc
CLP 10
11
12 Sensor 1

(experimento 5).
13
14 NPN PNP
15 +24 Vcc
16
17
18 Sensor 2
19
20 NPN PNP
21
22
23
24VDC 24
25
26
0VDC 27
28
L 29
30
31
Rede Eltrica 127/220VCA 32
N 33
34
35

Figura 4.37: Esquema de ligao do experimento com 1 esteira e 2 sensores


Esteira
A B
Botoeira chave
1 5
2 6
3 7
4 8

TSXDMZ Liga Liga


28DR L L
127 VCA + 127 VCA +
1 Rede Eltrica Rede Desliga Rede Eltrica Rede Desliga
2 N 24 VCC N 24 VCC
3 - -
4
5 + 24 V - Habilita Esteira + 24 V - Inverte Sentido + 24 V - Habilita Esteira + 24 V - Inverte Sentido
6
7

84
8
9 +24 Vcc +24 Vcc
CLP 10
11
12 Sensor 1 Sensor 1
13
14 NPN PNP NPN PNP
15

(experimento 6).
+24 Vcc +24 Vcc
16
17
18 Sensor 2 Sensor 2
19
20 NPN PNP NPN PNP
21
22
23
24VDC 24
25
26
0VDC 27
28
L 29
30
31
Rede Eltrica 127/220VCA 32
N 33
34
35

Esteira 1 Esteira 2

Figura 4.38: Esquema de ligao do experimento com 2 esteiras e 3 sensores


A B
Botoeira chave
1 5
2 6
3 7
4 8

TSXDMZ Liga Liga


28DR L L
127 VCA + 127 VCA +
1 Rede Eltrica Rede Desliga Rede Eltrica Rede Desliga
2 N 24 VCC N 24 VCC
3 - -
4
5 + 24 V - Habilita Esteira + 24 V - Inverte Sentido + 24 V - Habilita Esteira + 24 V - Inverte Sentido
6
7

85
8
9 +24 Vcc +24 Vcc
CLP 10
11
12 Sensor 1 Sensor 1
13
14 NPN PNP NPN PNP
15

(experimento 7).
+24 Vcc +24 Vcc
16
17
18 Sensor 2 Sensor 2
19
20 NPN PNP NPN PNP
21
22
23
24VDC 24
25
26
0VDC 27
28
L 29
30
31
Rede Eltrica 127/220VCA 32
N 33
34
35

Esteira 1 Esteira 2

Figura 4.39: Esquema de ligao do experimento com 2 esteiras e 4 sensores


Captulo 5. Experimentos do laboratrio

Neste captulo sero propostos sete experimentos para o laboratrio de


automao industrial, os dois primeiros experimentos implantados utilizaro os recursos
de temporizao e contagem do CLP. Os trs experimentos seguintes utilizam esteiras e
os dois ltimos utilizam um conjunto de lmpadas para ilustrar o funcionamento de
semforos (CASSANDRAS e LAFORTUNE, 2000, pg. 47).
De acordo com o captulo 2, as redes de Petri sero redes marcadas (P, T, A, w,
x) com um conjunto V = {vj : tj TD} que uma estrutura de tempo e que vj ={vj,1, vj,2,
...}, tj TD, Vj,k R+, k = 1, 2, .... Graficamente, as transies sem atraso de disparo
sero representadas por barras, ao passo que transies temporizadas sero
representadas por retngulos; os sensores tero sua representao em forma de barras,
mas sua condio de disparo dependente da deteco do objeto. Sero mostradas as
dinmicas da rede decompondo o modelo dentro das dinmicas de transies
individuais (captulo 2, seo 2.4.1), usando a notao i,k para o instante de tempo
quando o lugar pi recebe seu k-simo disco e j,k o k-simo tempo de disparo da
transio tj.
Sero ainda mostrados em alguns experimentos os estados dos componentes,
simbolizados com ON para as situaes de estado ligado, detectando, acesa (lmpada)
etc e OFF para as situaes de desligado, no detectando, apagada (lmpada) etc; para a
esteira ser considerado que ela est avanando quando o seu movimento for no sentido
de A para B, e retrocedendo, quando o seu movimento for no sentido de B para A,
conforme ilustrado pela figura 5.1. Tambm, sero utilizadas as redes de Petri como
formalismo de modelagem para tais experimentos e a implementao no CLP ser
efetuada em linguagem ladder.
Este captulo est estruturado da seguinte forma: na seo 5.1 visto a utilizao
dos recursos de temporizao e contagem do CLP; na seo 5.2 visto controle de
trfego de veculos e o controle de uma passagem de pedestre; na seo na seo 5.3
implementado uma seqncia de comandos de controle para: (i) uma esteira com dois
sensores; (ii) duas esteiras e trs sensores; e (iii) duas esteiras e quatro sensores.

86
Sensor 1 Sensor 2

Avanar
Movimento da esteira

A Retroceder B
Movimento da esteira

Figura 5.1: Movimentos da esteira.

5.1. Experimentos bsicos para familiarizao com o CLP


Estes experimentos consistem em ligar e desligar uma lmpada utilizando os
recursos do CLP.

(i) Primeiro experimento


O primeiro experimento consiste em ligar e desligar uma lmpada utilizando os
recursos de temporizao do CLP. Quando o boto acionado, uma lmpada ou um
conjunto de lmpadas acende por um determinado perodo de tempo e depois
desligada automaticamente. Uma forma de modelagem deste experimento atravs de
redes de Petri e, para tanto devem ser definidos os elementos da sxtupla (P, T, A, w, x,
V). Note que os eventos so: (i) acionar um boto; (ii) enquanto a lmpada estiver acesa
o acionamento do boto desabilitado; (iii) acionar as lmpadas e (iv) apagar as
lmpadas, definindo assim o conjunto de transies T = {t1, t2, t3, t4}. Os estados da
lmpada so ON e OFF e dentro da idia de que os lugares denotam as condies para
que um evento possa ocorrer, ento P = {p1, p2, p3, p4}, onde: p1 representa a
habilitao para ligar a lmpada, p2 a lmpada acesa, p3 a lmpada apagada e p4
desabilita o acionamento do boto enquanto a lmpada estiver ligada, conforme
ilustrada na figura 5.2. fcil ainda verificar que A={(p1, t2), (p1, t4), (p2, t3), (p3, t2),
(p4, t3), (p4, t4), (t1, p1), (t2, p2), (t2, p4), (t3, p3), (t4, p4)}, w(p1, t2)=1, w(p1, t4)=1, w(p2,
t3)=1, w(p3, t2)=1, w(p4, t3)=1, w(p4, t4)=1, w(t1, p1)=1, w(t2, p2)=1, w(t2, p4)=1, w(t3,
p3)=1, w(t4, p4)=1. Finalmente; para este experimento, ser adotado V={v3} e v3={v3,1,
v3,2, v3,3, ...}={10, 10, 10, ...}.

87
Apagar lmpada
t3

v3
p3 p2
Acender lmpada
Lmpada apagada Lmpada acesa

Acionar boto

t2
p1 p4
t1 Boto acionado Boto para ligar a
lmpada desabilitado

Desabilitar
acionamento do boto
t4

Figura 5.2: Rede de Petri para ligar a lmpada primeiro experimento.

Suponha ainda que o estado inicial desta rede de Petri x0= [0, 0, 1, 0], isto , a
lmpada se encontra apagada e o boto ainda no foi apertado.
Para obter a dinmica desta rede de Petri, deve-se inicialmente encontrar a
matriz de incidncia A, que ser uma matriz 4x4 cujos elementos (j, i) so da forma
aji=w(tj, pi) w(pi, tj), sendo, portanto, dada por:
1 0 0 0
1 1 1 1
A=
0 1 1 0

1 0 0 0
Usando a matriz de incidncia A, pode-se, a partir da equao de estados x' = x
+ uA, simular os resultados de todos os prximos estados que podem ser gerados a
partir do disparo das transies.
Com o disparo de t1 tem-se u1=[1, 0, 0, 0], ento:
x1= x0 + u1.A, x1 = [0, 0, 1, 0] + [1, 0, 0, 0].A = [1, 0, 1, 0]
A partir do disparo de t1, a transio t2 fica habilitada, disparando
imediatamente. Assim, a lmpada acender e portanto:
x2= x1 + u2.A, x2= [1, 0, 1, 0] + [0, 1, 0, 0].A = [0, 1, 0, 1]
x3= x2 + u3.A, x3= [0, 1, 0, 1] + [0, 0, 1, 0].A = [0, 0, 1, 0] = x0
Se t1 for disparada antes do final do ciclo, t4 dispara desabilitando o acionamento
do boto, tem-se:
x'2= [0, 1, 0, 1] + [1, 0, 0, 0].A = x'2= [1, 1, 0, 1]
x'3= [1, 1, 0, 1] + [0, 0, 0, 1].A = x'3= [0, 1, 0, 1] = x3

88
Lembrando que i,k denota o instante em que o lugar pi recebe seu k-simo disco
e que j,k o k-simo tempo de disparo da transio tj, ento para este experimento
pode-se decompor o modelo dentro das dinmicas de transies individuais, que so:
Equaes dos instantes de tempo que os lugares recebem os discos (1).
1,k = 1,k, k = 1, 2, ...
2,k = 2,k, k = 1, 2, ...
3,k = 3,k-1, k = 2, 3, ..., 3,1 = 0
4,k = 2,k, k = 1, 2, ...,
Equaes dos instantes de tempo de disparo das transies (2).
1,k = 1,k, k = 1, 2, ...
2,k = max{1,k, 3,k}, k = 1, 2, ...
3,k = max{2,k, 4,k}+ v3,k, k = 1, 2, ...,
4,k = max{1,k, 4,k}, k = 1, 2, ...,
As equaes acima podem ser arranjadas, levando seguinte forma recursiva e
desprezando 4,k, pois apenas uma condio para desabilitar o boto e no influencia
no tempo do ciclo, tem-se:
1,k = 1,k ,
2,k = max{1,k, 3,k}, com condio inicial 3,1 = 0,
3,1 = 3,k + v1,k .
Note que a evoluo desse sistema depende de 1,k. Para ilustrar esse
experimento, considere a seguinte sequncia: 1,k={0, 12, 25}. Tem-se ento:
1,1 = 1,1 = 0,
2,1 = max{1,1, 3,1}= max{0, 0} = 0,
3,2 = 3,1 + v1,1 = 0 + 10 = 10,
A lmpada fica, agora, 2 segundos apagada antes de ser acesa novamente.
1,2 = 12,
2,2 = max{1,1, 3,2}= max{12, 10} = 12,
3,3 = 12 + 10 = 22,
A lmpada fica, agora, 3 segundos apagada antes de ser acesa novamente.
1,3 = 25,
2,2 = max{25, 22}= 25,
3,4 = 25 + 10 = 35,

89
O programa em linguagem ladder para implementao no CLP mostrado na
figura 5.3, onde %I1.0 a entrada do CLP acionada por uma chave para ligar a lmpada
e %Q2.0 a sada do CLP para acionar o mdulo de lmpadas e %TM0 o
temporizador, ajustado para um atraso de 10s.

% I1.0 % TM0 % Q2.0


IN TM Q
MODE: TP
TB: 1s

TM.P: 10
MODIF: Y

Figura 5.3: Linguagem ladder do primeiro experimento.

(ii) Segundo experimento


O segundo experimento semelhante ao primeiro, sendo agora acrescentado o
recurso de contagem, ao lugar, da rede de Petri, que anteriormente representava a
condio do acionamento do boto. No experimento atual, os arcos passam a representar
um contador, pois a transio t2 dever ocorrer aps o boto ser acionado quatro vezes,
fazendo com que a lmpada passe do estado desligada para o estado ligada. Assim
como no experimento anterior, aps a lmpada acender ou o conjunto de lmpadas
acender, permanece acesa por um determinado perodo de tempo e depois desligada
automaticamente. Uma forma de representao por redes de Petri mostrada na figura
5.4.
Apagar lmpada
t3 v1

tempo = 10s

p3 p2
Lmpada apagada Acender lmpada Lmpada acesa

4 tempo = 0s
t2
Acionar boto
p1
t1 Contador

Figura 5.4: Redes de Petri para ligar uma lmpada utilizando um contador.

A rede de Petri (P, T, A, w, x, V) conta com os mesmos elementos P = {p1, p2,


p3}, T = {t1, t2, t3}, A={(p1, t2), (p2, t3), (p3, t2), (t1, p1), (t2, p2), (t3, p3)}, definidos no

90
experimento anterior, e w(p1, t2) = 4, w(p2, t3) = 1, w(p3, t2) = 1, w(t1, p1) = 1, w(t2, p2) =
1, w(t3, p3) = 1. (V={v3} e v3={v3,1, v3,2, v3,3, ...} = {10, 10, 10, ...}).
O estado inicial desta rede de Petri x0= [0, 0, 1], e por inspeo pode-se
encontrar a matriz de incidncia A da rede de Petri da figura 5.4, uma matriz 3x3 cujo
elemento (j, i) da forma aji= w(tj, pi) w(pi, tj), dada por:
1 0 0
A = 4 1 1
0 1 1

Usando a matriz de incidncia A, pode-se, a partir da equao de estados x' = x


+ uA, simular os resultados de todos os prximos estados que podem ser gerados a
partir do disparo das transies.
Com o disparo de t1 tem-se u1=[1, 0, 0], ento:
x1= x0 + uA
1 0 0
x1 = [0, 0, 1] + [1, 0, 0]. 4 1 1
0 1 1

x1= [1, 0, 1]
A partir do primeiro disparo de t1, nenhuma transio habilitada, pois para que
a transio t2 possa ser habilitada necessrio que ocorram quatro disparos da transio
t1, que habilitar t2 fazendo com que o prximo disparo estado seja [0, 1, 0], conforme
descrito na seqncia a seguir:
x2= [1, 0, 1] + [1, 0, 0].A
x2= [2, 0, 1]
x3= [2, 0, 1] + [1, 0, 0].A
x3= [3, 0, 1]
x4= [3, 0, 1] + [1, 0, 0].A
x4= [4, 0, 1]
x5= [4, 0, 1] + [0, 1, 0].A
x5= [0, 1, 0]
Assim como no experimento anterior, os prximos estados dependero do
nmero de vezes que o boto seja acionado antes que sejam decorridos v3 segundos. A
evoluo desse sistema melhor visualizada utilizando-se as equaes dos instantes de
disparo das transies . Para tanto note que:
Equaes dos instantes de tempo que os lugares recebem os discos (1).

91
1,k = 1,k, k = 1, 2, ...
2,k = 2,k, k = 1, 2, ...
3,k = 3,k-1, k = 2, 3, ..., 3,1 = 0
Equaes dos instantes de tempo de disparo das transies (2).
1,k = 1,k, k = 1, 2, ...
2,k = max{1,4k, 3,k}, k = 1, 2, ...
3,k = 3,k + v3,k, k = 1, 2, ...
Essas equaes podem ser colocadas na seguinte forma recursiva:
1,k = 1,k,
2,k = max{3,k-1, 1,4k}, 3,1 = 0
3,k = 2,k + v3,k,
que depende inicamente das sequncias 1,k e v3,k. Considere, ento a sequncia: 1,k =
{1, 2, 5, 10, 12, 14, 16, 19, 25, 36, 39, 41}. Portanto:
1,1 = 1, 1,2 = 2, 1,3 = 5, 1,4 = 10
2,1 = max{3,1, 1,4}= max{ 0, 10}= 10
3,1 = 10 + 10 = 20

1,5 = 12, 1,6 = 14, 1,7 = 16, 1,8 = 19


2,2 = max{3,2, 1,8}= max{ 20, 19}= 20
3,1 = 20 + 10 = 30

1,9 = 25, 1,10 = 36, 1,11 = 39, 1,12 = 41


2,3 = max{3,3, 1,12}= max{ 30, 41}= 41
3,1 = 41 + 10 = 51
definindo, portanto, a seguinte seqncia de disparos: ts = {t1, t1, t1, t1, t2, t1, t1, t1, t1, t3,
t2, t1, t3, t1, t1, t1, t1, t2, t3}, levando seguinte evoluo de estados: [0, 0, 1], [1, 0, 1], [2,
0, 1], [3, 0, 1], [4, 0, 1], [0, 1, 0], [1, 1, 0], [2, 1, 0], [3, 1, 0], [4, 1, 0], [4, 0, 1], [0, 1, 0],
[0, 0, 1], [1, 0, 1], [2, 0, 1], [3, 0, 1], [4, 0, 1], [0, 1, 0] e [0, 0, 1].
O programa em linguagem ladder que ser implementado no CLP para o
experimento 2 mostrado na figura 5.5, onde %I1.0 a entrada do CLP acionada por
uma chave para ligar a lmpada, %Q2.0 a sada do CLP para acionar o mdulo de

92
lmpadas, %TM0 o temporizador, ajustado para um atraso de 10s e %C0 contador,
ajustado para o nmero de contagem igual a 4.

% M0 % TM0 % Q2.0
P IN TM Q
MODE: TON
TB: 1s

TM.P: 5
MODIF: Y

% Q2.0 % C0
N R C E
%M0
S D
% I1.0 C.P: 4

CU F
MODIF: Y

CD

Figura 5.5: Linguagem ladder para implementao do segundo experimento.

5.2. Experimentos para controle de trfego


Nestes experimentos sero consideradas duas situaes: o controle de semforos
em uma interseo T e o controle de um sinal de trnsito para pedestre.

(i) Terceiro experimento


Este experimento tem por finalidade implementar o controle de trfego de uma
simples interseo em T, mostrado na figura 5.6. O fluxo de veculos na avenida A
ocorre num nico sentido, caminhando no sentido da avenida B. Na avenida B o fluxo
ocorre nos dois sentidos e no existe acesso para avenida A. Deseja-se controlar o
trfego de maneira que o fluxo nos dois sentidos da avenida B seja interrompido ao
mesmo tempo e permita o acesso dos veculos da avenida A para avenida B nos dois
sentidos. Aps isso, o fluxo da avenida A interrompido permitindo que o fluxo nos
dois sentidos da avenida B seja restabelecido, e assim sucessivamente. A evoluo dos
estados mostrada na tabela 5.1, a modelagem por rede de Petri para este experimento
vista na figura 5.7. Embora sejam dois os semforos que controlam o fluxo na avenida
B, ser considerado como sendo somente um, uma vez que operam em paralelo. Assim,
tem-se apenas, dois semforos controlando o fluxo de veculos nas duas avenidas: o
semforo 1, que controla o fluxo na avenida A e o semforo 2, que controla o fluxo na
avenida B. Cada semforo possui trs lmpadas sinalizadoras (verde, amarela e
vermelha). Os semforos 2 e 3 funcionam da mesma maneira e ao mesmo tempo

93
(sincronizados). Em todos os semforos, o tempo que o sinal verde permanecer ligado
ser de 15s e o tempo do sinal amarelo de 6s. Deve-se ressaltar que a mudana de
sinal entre os dois semforos s ocorrer 3s aps o sinal vermelho acender em todos os
semforos. Por exemplo, no semforo 1 o sinal vermelho s passar para o sinal verde
aps 3s dos semforos 2 e 3 estiverem passado para o sinal vermelho.
Semforo 3

Semforo 1

Semforo 2

Avenida A

Avenida B

Figura 5.6: Interseo T do terceiro experimento.

Tabela 5.1: Evoluo dos estados das lmpadas do semforo.


Estado das lmpadas
Semforo 1 Semforos 2 e 3
Vermelha Amarela Verde Vermelha Amarela Verde
1 OFF OFF ON ON OFF OFF
2 OFF ON OFF ON OFF OFF
3 ON OFF OFF ON OFF OFF
4 ON OFF OFF OFF OFF ON
5 ON OFF OFF OFF ON OFF
6 ON OFF OFF ON OFF OFF
7 OFF OFF ON ON OFF OFF

Para obter o modelo (P, T, A, w, x, V) da rede de Petri, note que os eventos desse
sistema so: (i) ligar semforos (lmpada verde do semforo 1 juntamente com as
lmpadas vermelhas dos semforos 2 e 3 acendem) ; (ii) desligar lmpada verde
semforo 1 e ligar lmpada amarela do semforo 1; (iii) desligar lmpada amarela do
semforo 1 e ligar lmpada vermelha do semforo 1; (iv) desligar lmpadas vermelhas
dos semforos 2 e 3 e ligar lmpadas verdes dos semforos 2 e 3; (v) desligar lmpadas
verdes dos semforos 2 e 3 e ligar lmpadas amarelas dos semforos 2 e 3; (vi) desligar
lmpadas amarelas dos semforos 2 e 3 e ligar lmpadas vermelhas dos semforos 2 e 3;
(vii) desligar lmpada vermelha do semforo 1 e ligar a lmpada verde do semforo 1,
voltando ao estado inicial. Esses eventos do origem ao conjunto T = {t1, t2, t3, t4, t5, t6,
t7}. Os lugares, que representam as condies para que os eventos ocorram so:
lmpada verde semforo 1 acesa (p1), lmpadas vermelhas dos semforos 2 e 3 acesas

94
(p2), lmpada amarela do semforo 1 acesa (p3), lmpada vermelha do semforo 1 acesa
(p4), lmpadas verdes dos semforos 2 e 3 acesas (p5), lmpadas amarelas dos
semforos 2 e 3 acesas (p6), indica mudana de sinal do amarelo para o vermelho nos
semforos 2 e 3 (p7), indica mudana do sinal amarelo para o vermelho no semforo 1
(p8), definindo, portanto, o conjunto P = {p1, p2, p3, p4, p5, p6, p7, p8}. Os elementos da
rede de Petri so: A={(p1, t2), (p2, t4), (p3, t3), (p4, t7), (p5, t5), (p6, t6), (p7, t7), (p8, t4), (t1,
p1), (t1, p2), (t2, p3), (t3, p4), (t3, p8), (t4, p5), (t5, p6), (t6, p2), (t6, p7)}, w(p1, t2)=1, w(p2,
t4)=1, w(p3, t3)=1, w(p4, t7)=1, w(p5, t5)=1, w(p6, t6)=1, w(p7, t7)=1, w(p8, t4)=1, w(t1,
p1)=1, w(t1, p2)=1, w(t2, p3)=1, w(t3, p4)=1, w(t3, p8)=1, w(t4, p5)=1, w(t5, p6)=1, w(t6,
p2)=1, w(t6, p7)=1, x[x(p1), x(p2), x(p3), x(p4), x(p5), x(p6), x(p7), x(p8)], onde x0=[0, 0, 0, 0, 0, 0,
0, 0] e v2={v2,1, v2,2, v2,3, ...}={15, 15, 15, ...}, v3={v3,1, v3,2, v3,3, ...}={6, 6, 6, ...}, v4={v4,1, v4,2, v4,3,
...}={3, 3, 3, ...}, v5={v5,1, v5,2, v5,3, ...}={15, 15, 15, ...}, v6={v6,1, v6,2, v6,3, ...}={6, 6, 6, ...},
v7={v7,1, v7,2, v7,3, ...}= {3, 3, 3, ...}.
Ligar semforos
t1
Semforo 1 passou do sinal
amarelo para o vermelho
Lmpada vermelha
acesa

p1
Lmpada verde acesa
(semforo 1) p8 (semforos 2 e 3)

p2
t2 t4
Acender lmpada
amarela (semforo 1) Acender lmpada
v2 v4 verde

Lmpada amarela acesa Lmpada verde acesa


(semforo 1) (semforos 2 e 3)

p3 p5
t3 t5
Acender lmpada Acender lmpada
vermelha amarela
(semforo 1)
v3 v5 (semforos 2 e 3)

Lmpada vermelha
acesa (semforo 1) Lmpada amarela
acesa
p4 p6 (semforos 2 e 3)

t7 t6
Acender lmpada verde Acender lmpada
(semforo 1) vermelha
v7 p7 v6 (semforos 2 e 3)

Semforos 2 e 3 passaram do
sinal amarelo para o vermelho

Figura 5.7: Rede de Petri da interseo T.

Uma vez caracterizados todos os elementos da rede de Petri, o prximo passo


obter a evoluo dos estados. A partir da figura 5.7 pode-se obter a matriz de incidncia
A. Portanto:

95
1 1 0 0 0 0 0 0
1 0 1 0 0 0 0 0

0 0 1 1 0 0 0 1

A= 0 1 0 0 1 0 0 1
0 0 0 0 1 1 0 0

0 1 0 0 0 1 1 0
1 0 0 1 0 0 1 0

Usando a matriz de incidncia A, pode-se a partir da equao de estados, x' = x +
u.A, simular os resultados de todos os prximos estados que podem ser gerados a partir
do disparo das transies.
t1: u1 = [1, 0, 0, 0, 0, 0, 0] x1 = x0 + u1.A = [1, 1, 0, 0, 0, 0, 0, 0]
t2: u2 = [0, 1, 0, 0, 0, 0, 0] x2 = x1 + u2.A = [0, 1, 1, 0, 0, 0, 0, 0]
t3: u3 = [0, 0, 1, 0, 0, 0, 0] x3 = x2 + u3.A = [0, 1, 0, 1, 0, 0, 0, 1]
t4: u4 = [0, 0, 0, 1, 0, 0, 0] x4 = x3 + u4.A = [0, 0, 0, 1, 1, 0, 0, 0]
t5: u5 = [0, 0, 0, 0, 1, 0, 0] x5 = x4 + u5.A = [0, 0, 0, 1, 0, 1, 0, 0]
t6: u6 = [0, 0, 0, 0, 0, 1, 0] x6 = x5 + u6.A = [0, 1, 0, 1, 0, 0, 1, 0]
t7: u7 = [0, 0, 0, 0, 0, 0, 1] x7 = x6 + u7.A = [1, 1, 0, 0, 0, 0, 0, 0]
As equaes de estado para os tempos de disparos das transies, so:
Equaes dos instantes de tempo para os lugares receberem o disco (1).
1,k , k = 1
1,k =
1,k , k 1
1,k , k = 1
2,k =
6 , k , k 1
3,k = 2,k
4,k = 3,k
5,k = 4,k
6,k = 5,k
7,k = 6,k
8,k = 3,k
Equaes do instante de tempo de disparo das transies (2).
1,k (definido apenas para k=1): 1,1 = 0
2,k = 1,k + v2,k
3,k = 3,k + v3,k

96
4,k = max{8,k; 2,k}+ v4,k
5,k = 5,k + v5,k
6,k = 6,k + v6,k
7,k = max{4,k; 7,k} + v7,k
Substituindo as equaes de 1 em 2, temos:
1,k (definido apenas para k=1): 1,1 = 0
1,k + v 2,k , k = 1
2,k =
7,k -1 + v 2,k , k 1
3,k = 2,k + v3,k
max{ 3,k , 1,k } + v 4,k , k = 1
4, k =
max{ 3,k , 6,k -1} + v 4,k , k 1
max{ 2,k + v3,k , 1,k } + v 4,k , k = 1
4, k =
max{ 2,k + v3,k , 6,k -1} + v 4,k , k 1
max{1,k + v 2,k + v3,k , 1,k } + v 4,k , k = 1
4, k =
max{ 7,k -1 + v 2,k + v3,k , 6,k -1} + v 4,k , k 1
como 2,1 = 0, ento:
v 2,k + v3,k + v 4,k , k = 1
4, k =
max{ 7,k -1 + v 2,k + v3,k , 6,k -1} + v 4,k , k 1
5,k = 5,k + v5,k
v 2,k + v3,k + v 4,k + v5,k , k = 1
5, k =
max{ 7,k -1 + v 2,k + v3,k , 6,k -1} + v 4,k + v5,k , k 1
6,k = 6,k + v6,k
v 2,k + v3,k + v 4,k + v5,k + v6,k , k = 1
6,k =
max{ 7,k -1 + v 2,k + v3,k , 6,k -1} + v 4,k + v5,k + v6,k , k 1
7,k = max{4,k; 7,k} + v7,k
max{max{ 3,k , 1,k }, 6,k } + v7,k , k = 1
6,k =
max{max{ 3,k , 6,k -1}, 6,k } + v7,k , k 1
Portanto:
1,k (definido apenas para k=1): 1,1 = 0
1,k + v 2,k , k = 1
2,k =
7,k -1 + v 2,k , k 1

97
3,k = 2,k + v3,k
1,k + v 2,k + v3,k + v 4,k , k = 1
4, k =
7,k -1 + v 2,k + v3,k + v 4,k , k 1
1,k + v 2,k + v3,k + v 4,k + v5,k , k = 1
5, k =
7,k -1 + v 2,k + v3,k + v 4,k + v5,k , k 1
1,k + v 2,k + v3,k + v 4,k + v5,k + v6,k , k = 1
6,k =
7,k -1 + v 2,k + v3,k + v 4,k + v5,k + v6,k , k 1
1,k + v 2,k + v3,k + v 4,k + v5,k + v6,k + v7,k , k = 1
7,k =
7,k -1 + v 2,k + v3,k + v 4,k + v5,k + v6,k + v7,k , k 1
O programa em linguagem ladder que realiza a seqncia de transies para
implementao do experimento dos semforos da interseo T no CLP mostrado na
figura 5.8. %I1.0 a chave para ligar o sistema, %Q2.0 acende a lmpada verde do
semforo 1, %Q2.1 acende a lmpada amarela do semforo 1, %Q2.2 acende a lmpada
vermelha do semforo 1, %Q2.3 acende a lmpada verde do semforo 2, %Q2.4 acende
a lmpada amarela do semforo 2 e %Q2.5 acende a lmpada vermelha do semforo 2.

% I1.0 % M2 % TM0 %M0 % M13 % TM5 %M14


IN TM Q TM Q
N IN
% M14 MODE: TP %M1 MODE: TON %M15
TB: 1s TB: 1s
N
TM.P: 15 %M3 TM.P: 3
MODIF: Y MODIF: Y
% M0 % Q2.0
% M3 % TM1 %M4
N IN TM Q % M4 % Q2.1
MODE: TP %M5
TB: 1s
% M6 % Q2.2
TM.P: 6 %M2
MODIF: Y
S % M8

% M4 % TM2 %M6
TM % M12
N IN Q
MODE: TP %M7
TB: 1s % M14

TM.P: 3
MODIF: Y % M9 % Q2.3

% M7 % TM3 %M8 % M13 % Q2.4


N IN TM Q
MODE: TP %M9 % M1 % Q2.5
TB: 1s

TM.P: 15 %M10 % M5
MODIF: Y

% M10 % TM4 %M12 % M7


N IN TM Q
MODE: TP %M13 % M15
TB: 1s

TM.P: 6
MODIF: Y

Figura 5.8: Linguagem ladder para a interseo T.

98
(ii) Quarto experimento
Neste experimento ser implementado um programa para executar o controle de
sistema de trfego de veculos em um ponto de travessia de pedestre. O sistema possui
dois semforos, um para os veculos com trs lmpadas sinalizadoras (verde, amarela e
vermelha) e outro para o pedestre com duas lmpadas sinalizadoras (verde e vermelha).
Quando o pedestre chega a uma via pblica (figura 5.9) e deseja atravessar esta
via, usando o recurso do semforo de controle de trnsito, ele dever acionar um boto
no poste prximo a passagem em um painel de comando para poder ativar o sistema.
Aps acionado o pedido de passagem, o programa dever executar um tempo de espera
de 20s para poder iniciar o ciclo de mudana nas lmpadas do semforo. Quando a
mudana comear, a luz verde, para passagem de veculos, dever piscar quatro vezes
at que mude para o sinalizador amarelo, e em seguida para o vermelho. Durante a
passagem do sinal amarelo para o sinal vermelho, a luz amarela deve permanecer por 6s
acesa. Aps 3s da passagem do sinal amarelo para o sinal vermelho no semforo para
passagem de veculos, o sinalizador para passagem de pedestre passar do sinal
vermelho para o verde, permanecendo assim por 15s. Ao final deste perodo a lmpada
verde, do sinal de pedestre dever, tambm, piscar quatro vezes, indicando o final do
perodo e, em seguida, retornar para o vermelho. Aps 3s da passagem do sinal verde
para o vermelho da passagem de pedestre, que o sinalizador para passagem de
veculos voltar para o sinal verde. A tabela 5.2 mostra a evoluo dos estados do
experimento e a figura 5.10 mostra a modelagem em rede de Petri.

Figura 5.9: Ilustrao de uma passagem de pedestre.

99
Tabela 5.2: Evoluo de estados da passagem de pedestre.
Estado das lmpadas
Semforo - Carros Semforo - Pedestre
Vermelha Amarela Verde Vermelha Verde Boto
1 OFF OFF ON ON OFF OFF
2 OFF OFF ON ON OFF ON
3 OFF OFF ON / OFF ON OFF XX
4 OFF ON OFF ON OFF XX
5 ON OFF OFF ON OFF XX
6 ON OFF OFF OFF ON XX
7 ON OFF OFF OFF ON / OFF XX
8 ON OFF OFF ON OFF XX
9 OFF OFF ON ON OFF ON ou OFF

Para obter o modelo (P, T, A, w, x, V) da rede de Petri, note que os eventos desse
sistema so: (i) apertar boto; (ii) fazer lmpada verde semforo de veculos piscar; (iii)
desligar lmpada verde do semforo de veculos e ligar lmpada amarela do semforo
de veculos; (iv) desligar lmpada amarela do semforo de veculos e ligar lmpada
vermelha do semforo de veculos; (v) desligar lmpada vermelha do semforo de
pedestre e ligar lmpada verde do semforo de pedestre; (vi) piscar lmpada verde do
semforo de pedestre; (vii) desligar lmpada verde do semforo de pedestre e ligar
lmpada vermelha do semforo de pedestre; (viii) desligar lmpada vermelha do
semforo de veculos e ligar lmpada verde do semforo de veculos, voltando ao estado
inicial. Esses eventos do origem ao conjunto T = {t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12,
t13}. Os lugares, que representam as condies para que os eventos ocorram so:
lmpada verde do semforo de veculos acesa (p1), boto para passagem de pedestre
acionado (p2), torna invlido todos os acionamentos do boto durante a realizao do
ciclo de passagem de pedestre (p3), condio para lmpada verde do semforo de
veculos comear a piscar (p4), lmpada verde do semforo de veculos apagada (p5),
nmero de vezes que a lmpada verde do semforo de veculos pisca (p6), lmpada
amarela do semforo de veculos acesa (p7), lmpada vermelha do semforo de veculos
acesa (p8), indica mudana do sinal amarelo para o vermelho no semforo de veculos
(p9), lmpada vermelha do semforo de pedestre acesa (p10), lmpada verde do semforo
de pedestre acesa (p11), condio para lmpada verde do semforo de pedestre comear
a piscar (p12), lmpada verde do semforo de pedestre apagada (p13), nmero de vezes
que a lmpada verde do semforo de pedestre deve piscar (p14), indica mudana do sinal
verde para o vermelho no semforo de passagem de pedestre (p15), definindo, portanto,

100
o conjunto P = {p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15}. Os elementos
da rede de Petri so: A={(p1, t1), (p1, t2), (p2, t1), (p3, t4), (p3, t8), (p4, t2), (p4, t6), (p5, t5),
(p5, t6), (p6, t6), (p7, t7), (p8, t8), (p9, t9), (p10, t9), (p11, t10), (p11, t11), (p12, t11), (p12, t13),
(p13, t12), (p13, t13), (p14, t13), (p15, t8), (t1, p3), (t1, p4), (t1, p5), (t2, p4), (t2, p5), (t2, p6), (t3,
p2), (t4, p3), (t5, p1) (t6, p7), (t7, p8), (t7, p9), (t8, p1), (t9, p11), (t10, p12), (t11, p12), (t11, p13),
(t11, p14) (t12, p11), (t13, p10), (t13, p15)}, w(p1, t1)=1, w(p1, t2)=1, w(p2, t1)=1, w(p3, t4)=1,
w(p3, t8)=1, w(p4, t2)=1, w(p4, t6)=1, w(p5, t5)=1, w(p5, t6)=1, w(p6, t6)=4, w(p7, t7)=1,
w(p8, t8)=1, w(p9, t9)=1, w(p10, t9)=1, w(p11, t10)=1, w(p11, t11)=1, w(p12, t11)=1, w(p12,
t13)=1, w(p13, t12)=1, w(p13, t13)=1, w(p14, t13)=4, w(p15, t8)=1, w(t1, p3)=1, w(t1, p4)=1,
w(t1, p5)=1, w(t2, p4)=1, w(t2, p5)=1, w(t2, p6)=1, w(t3, p2)=1, w(t4, p3)=1, w(t5, p1)=1,
w(t6, p7)=1, w(t7, p8)=1, w(t7, p9)=1, w(t8, p1)=1, w(t9, p11)=1, w(t10, p12)=1, w(t11, p12)=1,
w(t11, p13)=1, w(t11, p14)=1, w(t12, p11)=1, w(t13, p10)=1, w(t13, p15)=1, x[x(p1), x(p2), x(p3),
x(p4), x(p5), x(p6), x(p7), x(p8), x(p9), x(p10), x(p11), x(p12), x(p13), x(p14), x(p15)], onde
x0=[1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0] e v1={v1,1, v1,2, v1,3, ...}= {16, 16, 16, ...},
v2={v2,1, v2,2, v2,3, ...}= {0.5, 0.5, 0.5, ...}, v3={v3,1, v3,2, v3,3, ...}={0, a, b, ...}, v5={v5,1, v5,2,
v5,3, ...}={0.5, 0.5, 0.5, ...}, v7={v7,1, v7,2, v7,3, ...}={6, 6, 6, ...}, v8={v8,1, v8,2, v8,3, ...}={3,
3, 3, ...}, v9={v9,1, v9,2, v9,3, ...}={3, 3, 3, ...}, v10={v10,1, v10,2, v10,3, ...}= {11, 11, 11, ...} ,
v11={v11,1, v11,2, v11,3, ...}={0.5, 0.5, 0.5, ...}, v12={v12,1, v12,2, v12,3, ...}={0.5, 0.5, 0.5, ...}.
Uma vez caracterizados todos os elementos da rede de Petri, o prximo passo
obter a evoluo dos estados. A partir da figura 5.10 pode-se obter a matriz de
incidncia A. Portanto:
1 1 1 1 1 0 0 0 0 0 0 0 0 0 0
1 0 0 0 1 1 0 0 0 0 0 0 0 0 0

0 1 0 0 0 0 0 0 0 0 0 0 0 0 0

0 1 0 0 0 0 0 0 0 0 0 0 0 0 0
1 0 0 0 1 0 0 0 0 0 0 0 0 0 0

0 0 0 1 1 4 1 0 0 0 0 0 0 0 0
A= 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0

1 0 1 0 0 0 0 1 0 0 0 0 0 0 1
0 0 0 0 0 0 0 0 1 1 1 0 0 0 0

0 0 0 0 0 0 0 0 0 0 1 1 1 0 0

0 0 0 0 0 0 0 0 0 0 1 0 1 1 0
0 0 0 0 0 0 0 0 0 0 1 0 1 0 0

0 0 0 0 0 0 0 0 0 1 0 1 1 4 1

101
Lmpada verde acesa
(semforo)

p1 Solicitao de
Passagem t3
Acionar
boto

t2 t1 v3
Apagar
p2
Apagar lmpada
lmpada
v2 v1
Retirar
discos de p2

Invalida todos os p3 t4
Inicia ciclo
p4 Lmpada verde
apagada t5
acionamentos do boto
durante o ciclo
para lmp. (semforo)
piscar

p5 v5
4 Acender lmpada
verde (semforo)

Nmero de vezes p6 t6 Condio para


que a lmpada mudana de sinal
verde (p1) deve Acender lmpada
piscar amarela
Lmpada vermelha acesa
(passagem pedestre)

Lmpada amarela acesa p9 p10


(semforo)

p7 t9 Acender lmpada verde


(passagem de pedestre)
t7 v9
Acender lmpada vermelha
(semforo veculos)
Lmpada verde acesa
v7 (passagem de pedestre)

Condio para
mudana de sinal p11
Lmpada vermelha acesa
(semforo) p15
p8
t11 t10
t8 Apagar
Apagar lmpada
Acender lmpada verde lmpada
(semforo veculos) v11 v10
v8

Inicia ciclo p12 Lmpada verde


apagada
t12
para lmp. (passagem)
piscar

v12
4 p13 Acender lmpada verde
(passagem)
p14
Nmero de vezes t13
que a lmpada
Acender lmpada verde
verde (p1) deve
(passagem) e habilitar
piscar
condio

Figura 5.10: Rede de Petri para passagem de pedestre.

102
Usando a matriz de incidncia A, pode-se, a partir da equao de estados, x' = x
+ u.A, simular os resultados de todos os prximos estados que podem ser gerados a
partir do disparo das transies. x0=[1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0]
A partir do disparo da transio t3, tem-se:
t3: u1 =[0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
x1 = x0 + u1.A = [1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0]
t1: u2 =[1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
x2 = x1 + u2.A = [0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0]
t5: u3 =[0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]
x3 = x2 + u3.A = [1, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0]
t2: u4 =[0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
x4 = x3 + u4.A = [0, 0, 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0]
t5: u5 =[0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]
x5 = x4 + u5.A = [1, 0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0]
t2: u6 =[0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
x6 = x5 + u6.A = [0, 0, 1, 1, 1, 2, 0, 0, 0, 1, 0, 0, 0, 0, 0]
t5: u7 =[0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]
x7 = x6 + u7.A = [1, 0, 1, 1, 0, 2, 0, 0, 0, 1, 0, 0, 0, 0, 0]
t2: u8 =[0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
x8 = x7 + u8.A = [0, 0, 1, 1, 1, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0]
t5: u9 =[0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]
x9 = x8 + u9.A = [1, 0, 1, 1, 0, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0]
t2: u10 =[0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
x10 = x9 + u10.A = [0, 0, 1, 1, 1, 4, 0, 0, 0, 1, 0, 0, 0, 0, 0]
t6: u11 =[0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0]
x11 = x10 + u11.A = [0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0]
t7: u12 =[0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0]
x12 = x11 + u12.A = [0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0]
t9: u13 =[0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0]
x13 = x12 + u13.A = [0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0]
t10: u14 =[0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0]
x14 = x13 + u14.A = [0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0]
t12: u15 =[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0]
x15 = x14 + u15.A = [0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0]

103
t11: u16 =[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0]
x16 = x15 + u16.A = [0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 0]
t12: u17 =[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0]
x17 = x16 + u17.A = [0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 1, 0]
t11: u18 =[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0]
x18 = x17 + u18.A = [0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 2, 0]
t12: u19 =[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0]
x19 = x18 + u19.A = [0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 2, 0]
t11: u20 =[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0]
x20 = x19 + u20.A = [0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 3, 0]
t12: u21 =[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0]
x21 = x20 + u21.A = [0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 3, 0]
t11: u22 =[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0]
x22 = x21 + u22.A = [0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 4, 0]
t13: u23 =[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1]
x23 = x22 + u23.A = [0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1]
t8: u24 =[0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0]
x24 = x23 + u24.A = [1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0]=x0

As dinmicas da rede de Petri, decompondo o modelo dentro das dinmicas de


transies individuais, so:
Equaes dos instantes de tempo que os lugares recebem o disco (1).
0, k = 1

1,k = 5,k -1 , k = 2,3,4,5,7,8,9,10,12,13,...
, k = 6,11,16,21,...
8,k -1
2,k = 3,k, k = 1,2,3,
1,k , k = 1
3,k =
min{1,5( k -1 ) + 1 , 4,k } k = 2,3,4...

1,k , k = 1,6,11,16,21,...
4,k =
2 , k , k = 2,3,4,5,7,8,9,10,12,...

1,k , k = 1,6,11,16,21,...
5, k =
2 , k , k = 2,3,4,5,7,8,9,10,12,...

6,k = 2,k, k = 1,2,3,

104
7,k = 6,k, k = 1,2,3,
8,k = 7,k, k = 1,2,3,
9,k = 7,k, k = 1,2,3,
10,k = 13,k-1, k = 1,2,3,; 1,1 = 0
9,k , k = 1,6,11,16,21,...
11,k =
12,k , k = 2,3,4,5,7,8,9,10,12,...
10,k , k = 1,6,11,16,21,...
12,k =
11,k , k = 2,3,4,5,7,8,9,10,12...

10,k , k = 1,6,11,16,21,...
13,k =
11,k , k = 2,3,4,5,7,8,9,10,12...

14,k = 11,k, k = 1,2,3,


15,k = 13,k, k = 1,2,3,
Equaes dos instantes de tempos dos disparos das transies (2).
1,k = max{1,k; 2,k} + v1,k
2,k = max{1,k; 4,k} + v2,k
3,k = v3,k
4,k = max{2,k; 3,k}
5,k = 5,k + v5,k
6,k = max{4,4k; 5,4k; 6,4k}
7,k = 7,k + v7,k
8,k = max{3,k; 8,k; 15,k} + v8,k
9,k = max{9,k; 10,k} + v9,k
10,k = 11,k + v10,k
11,k = max{11,k; 12,k} + v11,k
12,k = 13,k + v12,k
13,k = max{12,4k; 13,4k; 14,4k}
Substituindo as equaes de 1 em 2 , em funo de seqncia de disparos das
transies, comeando com a transio t3, tem-se:
t3: 3,1 = v3,1; (disco: 2,1)
t1: 1,1 = v3,1 + v1,1;(disco: 3,1, 4,1, 5,1)
t5: 5,1 = 1,1 + v5,1= v1,1+ v3,1 + v5,1; (disco: 1,2)
t2: 2,1 = 5,1 + v2,1= v1,1+ v2,1+ v3,1 + v5,1; (disco: 4,2, 5,2, 6,1)

105
t5: 5,2 = 2,1 + v5,2= v1,1+ v2,1+ v3,1 + v5,1+ v5,2; (disco: 1,3)
t2: 2,2 = 5,2 + v2,2= v1,1+ v2,1+ v2,2+ v3,1 + v5,1+ v5,2; (disco: 4,3, 5,3, 6,2)
t5: 5,3 = 2,2 + v5,3= v1,1+ v2,1+ v2,2+ v3,1 + v5,1+ v5,2+ v5,3; (disco: 1,4)
t2: 2,3 = 5,3 + v2,3= v1,1+ v2,1+ v2,2+ v2,3+ v3,1 + v5,1+ v5,2+ v5,3; (disco: 4,4, 5,4, 6,3)
t5: 5,4 = 2,3 + v5,4= v1,1+ v2,1+ v2,2+ v2,3+ v3,1 + v5,1+ v5,2+ v5,3+ v5,4; (disco: 1,5)
t2: 2,4 = 5,4 + v2,4= v1,1+ v2,1+ v2,2+ v2,3+ v2,4+ v3,1 + v5,1+ v5,2+ v5,3+ v5,4; (disco: 4,5, 5,5,
6,4)
t6: 6,1 = 2,4= v1,1+ v2,1+ v2,2+ v2,3+ v2,4+ v3,1 + v5,1+ v5,2+ v5,3+ v5,4; (disco: 7,1)
t7: 7,1 = 6,1+ v7,1= v1,1+ v2,1+ v2,2+ v2,3+ v2,4+ v3,1 + v5,1+ v5,2+ v5,3+ v5,4+ v7,1; (disco: 8,1,
9,1)
t9: 9,1 = 7,1+ v9,1= v1,1+ v2,1+ v2,2+ v2,3+ v2,4+ v3,1 + v5,1+ v5,2+ v5,3+ v5,4+ v7,1+ v9,1
(v2,1= v2,2= v2,3= v2,4 e v5,1= v5,2= v5,3= v5,4); (disco: 11,1)
t10: 10,1 = 9,1+ v10,1= v1,1+ 4.v2,1+ v3,1 + 4.v5,1+ v7,1+ v9,1+ v10,1; (disco: 12,1, 13,1)
t12: 12,1 = 10,1+ v12,1= v1,1+ 4.v2,1+ v3,1 + 4.v5,1+ v7,1+ v9,1+ v10,1+ v12,1; (disco: 11,2)
t11: 11,1 = 12,1+ v11,1= v1,1+ 4.v2,1+ v3,1 + 4.v5,1+ v7,1+ v9,1+ v10,1+ v11,1+ v12,1; (disco: 12,2,
13,2, 14,1)
t12: 12,2 = 11,1+ v12,2= v1,1+ 4.v2,1+ v3,1 + 4.v5,1+ v7,1+ v9,1+ v10,1+ v11,1+ v12,1+ v12,2; (disco:
11,3)
t11: 11,2 = 12,2+ v11,2= v1,1+ 4.v2,1+ v3,1 + 4.v5,1+ v7,1+ v9,1+ v10,1+ v11,1+ v11,2+ v12,1+ v12,2;
(disco: 12,3, 13,3, 14,2)
t12: 12,3 = 11,2+ v12,3= v1,1+ 4.v2,1+ v3,1 + 4.v5,1+ v7,1+ v9,1+ v10,1+ v11,1+ v11,2+ v12,1+ v12,2+
v12,3; (disco: 11,4)
t11: 11,3 = 12,3+ v11,3= v1,1+ 4.v2,1+ v3,1 + 4.v5,1+ v7,1+ v9,1+ v10,1+ v11,1+ v11,2+ v11,3+ v12,1+
v12,2+ v12,3; (disco: 12,1, 13,4, 14,3)
t12: 12,4 = 11,3+ v12,4= v1,1+ 4.v2,1+ v3,1 + 4.v5,1+ v7,1+ v9,1+ v10,1+ v11,1+ v11,2+ v11,3+ v12,1+
v12,2+ v12,3+ v12,4; (disco: 11,5)
t11: 11,4 = 12,4+ v11,4= v1,1+ 4.v2,1+ v3,1 + 4.v5,1+ v7,1+ v9,1+ v10,1+ v11,1+ v11,2+ v11,3+ v11,4+
v12,1+ v12,2+ v12,3+ v12,4; (disco: 12,5, 13,5, 14,4)
t13: 13,1 = 11,4= v1,1+ 4.v2,1+ v3,1 + 4.v5,1+ v7,1+ v9,1+ v10,1+ v11,1+ v11,2+ v11,3+ v11,4+ v12,1+
v12,2+ v12,3+ v12,4; (disco: 10,2, 15,1)
(v11,1= v11,2= v11,3= v11,4 e v12,1= v12,2= v12,3= v12,4)

106
t8: 8,1 = 13,1+ v8,1= v1,1+ 4.v2,1+ v3,1 + 4.v5,1+ v7,1+ v8,1+ v9,1+ v10,1+ 4.v11,1+ 4.v12,1;
(disco: 1,6)
1,6 indica que foi executado um ciclo completo, desde que o boto para
passagem de pedestre foi acionado.
O programa em linguagem ladder que ser implementado no CLP que executa a
seqncia de mudanas de estado no semforo de pedestre mostrado na figura 5.11.
%I1.0 a chave para ligar o sistema, %I1.1 o boto para passagem de pedestre,
%Q2.0 acende a lmpada verde do semforo de veculos, %Q2.1 acende a lmpada
amarela do semforo de veculos, %Q2.2 acende a lmpada vermelha do semforo de
veculos, %Q2.3 acende a lmpada verde do semforo de pedestres e %Q2.4 acende a
lmpada vermelha do semforo de pedestre.

% I1.0 % M16 %M14 % M7 % TM4 %M8


S N IN TM Q
% M12 %M15 MODE: TP % M11 %M9
TB: 1s
N S
%M17 TM.P: 15 %M10
MODIF: Y
R
% I1.1 %M16 % M10 % TM5 % S6 %M11
P S IN TM Q
% I1.1 % M17 %M14 MODE: TON
TB: 1s
R
%M15 TM.P: 11
MODIF: Y
R
% I1.1 % M17 % TM0 % M2 %M0 % M10 % TM6 %M12
IN TM Q TM Q
N IN
MODE: TP %M1 MODE: TP %M13
TB: 1s TB: 1s

TM.P: 20 %M3 TM.P: 3


MODIF: Y MODIF: Y
% M0 % Q2.0
% M3 % TM1 % S6 %M2
IN TM Q
% M14
MODE: TON %M17
TB: 1s
S % M4 % Q2.1
TM.P: 16
MODIF: Y
% M3 % TM2 %M4 % M6 % Q2.2

N IN TM Q
MODE: TP %M5 % M8
TB: 1s

TM.P: 6 % M12
MODIF: Y

% M9 % Q2.3
% M4 % TM3 %M6
IN TM Q
N % M1 % Q2.4
MODE: TP %M7
TB: 1s
% M5
TM.P: 3
MODIF: Y
% M7

% M13

% M15

Figura 5.11: Linguagem ladder para passagem de pedestre.

107
5.3. Experimentos para simular uma linha de produo industrial
Nos experimentos a seguir (quinto, sexto e stimo) a motivao principal
descrever como uma seqncia de comandos pode ser realizada em uma linha de
produo industrial. Sero, para tanto, utilizadas duas esteiras e sensores para detectar
os objetos para realizao de controles como: parar por um determinado perodo de
tempo, avanar e retroceder. Durante essas operaes podem ser realizadas, em um
ambiente industrial, operaes de soldagem, pinturas, montagem de aparelhos
eletrnicos, empacotamento etc e aps a realizao dessas atividades o processo
continua normalmente.

(i) Quinto experimento


Utilizando-se apenas uma esteira, deve-se programa-la para que execute o
seguinte movimento: quando ligada, a esteira deve avanar no sentido de A para B,
quando um objeto colocado sobre a esteira, em qualquer posio, esta passar a
executar um movimento cclico. Trs so as possibilidades de o objeto ser colocado
sobre a esteira: (i) o objeto colocado na posio do sensor 1, sendo detectado por ele;
(ii) colocado no meio da esteira, ento ela deslocar o objeto at ser detectado pelo
sensor 2 e (iii) o objeto colocado na posio do sensor 2, sendo detectado por este
outro sensor. Qualquer que seja a posio em que o objeto colocado na esteira a
seqncia de comandos deve ser a seguinte: (a) quando o sensor 1 detectar o objeto, a
esteira dever parar por 10s e em seguida avanar; (b) quando o objeto for detectado
pelo sensor 2, a esteira dever parar por 5s e em seguida retroceder. Repetindo um
movimento peridico. A figura 5.12 ilustra a esteira e os sensores posicionados nos
pontos A e B da esteira. A tabela 5.3 mostra os estados dos componentes da esteira. A
figura 5.13 mostra uma modelagem por rede de Petri para o experimento proposto.
Sero desprezados em todos os experimentos com esteiras, os estados em que,
no momento de acionamento das esteiras, tanto para avanar como tambm para
retroceder, os sensores estejam detectando naquele instante; isto pelo fato da base de
tempo ser desprezvel. Contudo, este detalhe deve ser considerado na elaborao dos
programas em linguagem ladder para que no ocorram problemas de conflito de
comando.

108
Sensor 1 Sensor 2
Bloco

A B

Figura 5.12: Esteira, posicionamento dos sensores.

Tabela 5.3: Evoluo dos estados.


Estado dos componentes do experimento
Esteira Sensor 1 Sensor 2
1 OFF OFF OFF
2 ON - Avanar OFF OFF
3 OFF OFF ON
4 ON - Retroceder OFF OFF
5 OFF ON OFF

Acionar boto para


t1 ligar esteira

Desligar esteira t10 Boto acionado


Nmero mximo de
2 discos igual a 1

Esteira p2 p1
desligada t11
t2 Ligar esteira
Esteira
parada, objeto
Esteira retrocedendo
objeto no sentido do Parar esteira na posio do
Avanar
esteira
Esteira
avanando
t4
sensor 1
sensor 1
t7 Sensor 2
detecta objeto
p7 p4
p3
p6 t6 Objeto na posio
v7= 10s do sensor 2
t3 Parar esteira
Parar esteira
t8

Esteira parada,
Objeto na posio objeto na posio
do sensor 1 do sensor 2

p8 p5
t5
t9 Sensor 1
Reroceder esteira
detecta objeto v5= 5s

Figura 5.13: Rede de Petri para o quinto experimento.

109
Para se obter o modelo (P, T, A, w, x, V) da rede de Petri desse sistema, note que
os eventos do sistema, considerando primeiro, que o objeto seja colocado no centro da
esteira ou na posio do sensor 2, so: (i) ligar esteira; (ii); deteco do objeto pelo
sensor 2; (iii) parada da esteira nas posies do sensor 2; (iv) retroceder esteira aps 5s;
(v) deteco do objeto pelo sensor 1; (vi) parar esteira na posio do sensor 1 e (vii)
avanar esteira aps 3s. Considerando, agora, que o objeto colocado na posio do
sensor 1, os eventos so: (i) ligar esteira; (ii); deteco do objeto pelo sensor 1; (iii)
parada da esteira nas posies do sensor 1; (iv) avanar esteira aps 10s; (v) deteco do
objeto pelo sensor 2; (vi) parar esteira na posio do sensor 2 e (vii) retroceder esteira
aps 5s. Observa-se que a seqncia de eventos pode mudar, mas o movimento
peridico permanece. Esses eventos do origem ao conjunto T = {t1, t2, t3, t4, t5, t6, t7, t8,
t9, t10, t11}. Os lugares, que representam as condies para que os eventos ocorram so:
acionamento do boto (p1), esteira desligada (p2), esteira ligada e avanando (p3), objeto
na posio do sensor 2 (p4), esteira parada na posio do sensor 2 (p5), esteira
retrocedendo (p6), esteira parada na posio do sensor 1 (p7), objeto na posio do
sensor 1 (p8), definindo, portanto, o conjunto P = {p1, p2, p3, p4, p5, p6, p7, p8}. Os
elementos da rede de Petri so: A={(p1, t2), (p1, t10), (p1, t11), (p2, t2), (p3, t3), (p3, t8), (p4,
t3), (p5, t5), (p6, t6), (p7, t7), (p7, t10), (p8, t6), (p8, t8), (t1, p1), (t2, p3), (t3, p5), (t4, p4), (t5,
p6), (t6, p7), (t7, p3), (t8, p7), (t9, p8), (t10, p2), (t11, p1)}, w(p1, t2)=1, w(p1, t10)=1, w(p1,
t11)=2, w(p2, t2)=1, w(p3, t3)=1, w(p3, t8)=1, w(p4, t3)=1, w(p5, t5)=1, w(p6, t6)=1, w(p7,
t7)=1, w(p7, t10)=1, w(p8, t6)=1, w(p8, t8)=1, w(t1, p1)=1, w(t2, p3)=1, w(t3, p5)=1, w(t4,
p4)=1, w(t5, p6)=1, w(t6, p7)=1, w(t7, p3)=1, w(t8, p7)=1, w(t9, p8)=1, w(t10, p2)=1, w(t11,
p1)=1, x[ x(p1), x(p2), x(p3), x(p4), x(p5), x(p6), x(p7), x(p8)], onde x0=[0, 1, 0, 0, 0, 0, 0, 0]
e v5={v5,1, v5,2, v5,3, ...}= {5, 5, 5, ...}, v7={v7,1, v7,2, v7,3, ...}= {10, 10, 10, ...}.
Uma vez caracterizados todos os elementos da rede de Petri, o prximo passo
obter a evoluo dos estados. A partir da figura 5.13 pode-se obter a matriz de
incidncia A(j, i)11x8, onde aji= w(tj, pi) w(pi, tj). Portanto:

110
1 0 0 0 0 0 0 0
1 1 1 0 0 0 0 0

0 0 1 1 1 0 0 0

0 0 0 1 0 0 0 0
0 0 0 0 1 1 0 0

A= 0 0 0 0 0 1 1 1
0 0 1 0 0 0 1 0

0 0 1 0 0 0 1 1
0 0 0 0 0 0 0 1

1 1 0 0 0 0 1 0

2 0 0 0 0 0 0 0

definindo, portanto, x' = x + uA. Assim sendo, para x0=[0, 1, 0, 0, 0, 0, 0, 0] e supondo


que a esteira tenha sido ligada com o objeto sendo colocado no centro da esteira ou na
posio do sensor 2, obtm-se:
x1 = x0 + [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0].A = [0, 0, 1, 0, 0, 0, 0, 0]
x2 = x1 + [0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0].A = [0, 0, 1, 1, 0, 0, 0, 0]

x3 = x2 + [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0].A = [0, 0, 0, 0, 1, 0, 0, 0]

x4 = x3 + [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0].A = [0, 0, 0, 0, 0, 1, 0, 0]

x5 = x4 + [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0].A = [0, 0, 0, 0, 0, 1, 0, 1]

x6 = x5 + [0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0].A = [0, 0, 0, 0, 0, 0, 1, 0]

x7 = x6 + [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0].A = [0, 0, 1, 0, 0, 0, 0, 0] = x1, repetindo o ciclo.

seguindo esta seqncia, pode-se considerar um disparo da transio t1, em qualquer


instante aps a esteira ser ligada, esse disparo solicita que a esteira seja desligada,
contudo, a esteira s ser desligada quando o objeto estiver na posio do sensor 1,
conforme mostra a rede de Petri.
Observao 5.1: Para experimentos com esteiras, no sero mostradas as equaes de
estados para instantes de disparo das transies uma vez que iro depender da distncia
do ponto em que o objeto foi colocado na esteira.
O programa em linguagem ladder para o experimento 5 mostrado na figura
5.14, sendo %I1.0 a chave para ligar e desligar a esteira, %I1.1 e %I1.2,
respectivamente, os sensores 2 e 1, %Q2.0 e %Q2.1 so, rspectivamente, as sadas do
CLP para ligar a esteira, Quando %Q2.0 est acionada a esteira avana e quando as duas
sadas, %Q2.0 e %Q2.1, esto acionadas a esteira retrocede.

111
% I1.0 % M1 %M0

% I1.0 %M1

% M0 % M2 %M2
% I1.2 % Q2.0
% M0 % M2 R
% Q2.1
% M2 % Q2.0 R
S %M4
% I1.1 % M4 % Q2.0 R
R %M5
% M3
% M5 % M2 % TM1 % Q2.0
TM Q
% M3 % TM0 % Q2.0 IN S
TM
IN Q S MODE: TON
TB: 1s
MODE: TON % Q2.1
TB: 1s
S TM.P: 10
MODIF: Y
TM.P: 5 %M4
MODIF: Y
S

Figura 5.14: Linguagem ladder do quinto experimento.

(ii) Sexto experimento


Utilizando-se, agora, duas esteiras e trs sensores, deve-se programar a esteira
para executar o seguinte movimento: quando ligadas, as esteiras devem avanar no
sentido de A para B. O objeto ser sempre colocado no ponto A da esteira 1, e avanar
no sentido da esteira 2 sendo detectado pelo sensor 1. Caso a esteira 2 esteja desocupada
o objeto passar imediatamente para esta esteira e caso a esteira 2 esteja ocupada, o
objeto dever parar na posio do sensor 1 (desligando a esteira 1) e esperar at que a
esteira 2 fique livre. Na esteira 2 o objeto quando detectado pelo sensor 2 dever parar
por 10s e, em seguida, a esteira avanar novamente levando o objeto at a posio do
sensor 3, onde novamente a esteira 2 dever parar por 5s. Aps passar este intervalo de
tempo o objeto liberado da esteira 2 permitindo que a esteira 1 entre em
funcionamento, colocando um novo objeto sobre a esteira 2. A figura 5.15 ilustra o
posicionamento dos sensores deste experimento e a tabela 5.4 mostra a evoluo dos
estados. A figura 5.16 mostra a modelagem por rede de Petri para o experimento.

112
Sensor 1 Sensor 2 Sensor 3

A B A B

Figura 5.15: Montagem das esteiras para o experimento.

Tabela 5.4: Evoluo dos estados.


Estado dos componentes do experimento
Esteira 1 Sensor 1 Esteira 2 Sensor 2 Sensor 3 Condio
1 OFF OFF OFF OFF OFF Esteiras desligadas

2 ON - Avanar OFF ON - Avanar OFF OFF Esteiras ligadas

3 ON - Avanar ON ON - Avanar OFF OFF Primeiro passagem de


bloco, esteira 2 liberada
4 ON - Avanar OFF OFF ON OFF Esteira 2 parada com bloco
na posio do sensor 2
5 OFF ON OFF ON OFF Sensor 1 detecta objeto
parando esteira 1
6 OFF ON ON - Avanar OFF OFF Esteira 2 avanando

7 OFF ON OFF OFF ON Esteira 2 parada com bloco


na posio do sensor 3
8 ON - Avanar OFF ON - Avanar OFF OFF Bloco sai da esteira 2 e
esteira 1 envie outro bloco

Para se obter o modelo (P, T, A, w, x, V) da rede de Petri, note que os eventos do


sistema so: (i) ligar esteiras; (ii); deteco do objeto pelo sensor 1; (iii) parar esteira 1
na deteco de um novo objeto pelo sensor 1; (iv) parar esteira 2 na deteco do objeto
pelo sensor 2; (v) avanar esteira 2 aps 5s; (vi) parar esteira 2 na deteco do objeto
pelo sensor 3; (vii) avanar esteira 1 e 2 aps 10s. Esses eventos do origem ao conjunto
T = {t1, t2, t3, t4, t5, t6, t7, t8, t9, t10}. Os lugares, que representam as condies para que os
eventos ocorram so: esteira 1 avanando (p1), objeto detectado pelo sensor 1 (p2),
esteira 2 com objeto (p3), esteira 1 parada com objeto na posio do sensor 1 (p4),
esteira 2 livre (p5), objeto detectado pelo sensor 2 (p6), esteira 2 avanando (p7), esteira
2 parada com objeto na posio do sensor 2 (p8), objeto detectado pelo sensor 3 (p9),
esteira 2 parada com objeto na posio do sensor 3 (p10), definindo, portanto, o conjunto
P = {p1, p2, p3, p4, p5, p6, p7, p8, p9, p10}. Os elementos da rede de Petri so: A={(p1, t4),
(p2, t4), (p3, t4), (p4, t5), (p5, t5), (p6, t6), (p7, t6), (p7, t9), (p8, t7), (p9, t9), (p10, t10), (t1, p1),
(t1, p7), (t2, p2), (t3, p3), (t3, p6), (t4, p4), (t5, p1), (t6, p8), (t7, p7), (t8, p9), (t9, p10) , (t10, p5),
(t10, p7)}, w(p1, t4)=1, w(p2, t4)=2, w(p3, t4)=1, w(p4, t5)=1, w(p5, t5)=1, w(p6, t6)=1, w(p7,
t6)=1, w(p7, t9)=1, w(p8, t7)=1, w(p9, t9)=1, w(p10, t10)=1, w(t1, p1)=1, w(t1, p7)=1, w(t2,
p2)=1, w(t3, p3)=1, w(t3, p6)=1, w(t4, p4)=1, w(t5, p1)=1, w(t6, p8)=1, w(t7, p7)=1, w(t8,
p9)=1, w(t9, p10)=1, w(t10, p5)=1, w(t10, p7)=1, x[x(p1), x(p2), x(p3), x(p4), x(p5), x(p6),

113
x(p7), x(p8) , x(p9), x(p10)], onde x0=[0, 0, 0, 0, 0, 0, 0, 0, 0, 0] e v7={v7,1, v7,2, v7,3, ...}= {5,
5, 5, ...}, v10={v10,1, v10,2, v10,3, ...}= {10, 10, 10, ...}.

Ligar esteiras
t1
Sensor 1 Sensor 2 Sensor 3
detecta objeto t2 detecta objeto t3 detecta objeto t8
Objeto detectado
Objeto Esteira 2 Esteira 2
pelo sensor 2
Esteira 1 detectado pelo com objeto avanando
avanando sensor 1
Objeto detectado
p1 p2 p3 pelo sensor 3

p6 p7 p9
2
t4 Parar esteira t6 t9 Parar esteira 2
Parar esteira 2 tempo = 0s

Esteira 2 livre
Esteira 2
Esteira 2
Esteira 1 parada com parada com
parada com
objeto na posio do objeto na
objeto na
posio do
sensor 1
p4 p5 sensor 2
posio do

p8 p10
sensor 3

t5 t10
t7 Ligar esteira 2 Ligar esteira 2
Ligar esteira 1
v7 v10
Objeto sai da esteira 2

Figura 5.16: Rede de Petri para do sexto experimento.

O estado inicial desta rede de Petri x0= [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] . Por inspeo


pode-se encontrar a matriz de incidncia A da rede de Petri da figura 5.16, sendo dada
por:
1 0 0 0 0 0 1 0 0 0
0 1 0 0 0 0 0 0 0 0

0 0 1 0 0 1 0 0 0 0

1 2 1 1 0 0 0 0 0 0
1 0 0 1 1 0 0 0 0 0
A=
0 0 0 0 0 1 1 1 0 0
0 0 0 0 0 0 1 1 0 0

0 0 0 0 0 0 0 0 1 0
0 0 0 0 0 0 1 0 1 1

0 0 0 0 1 0 1 0 0 1

Usando a matriz de incidncia A, pode-se, a partir da equao de estados x' = x +


u.A, simular os resultados de todos os prximos estados que podem ser gerados a partir
do disparo das transies.

114
A partir do disparo de t1, que ocorre uma nica vez, tendo em vista que se refere
operao de uma chave externa para ligar o sistema, as prximas transies que
ocorrem, aps o objeto ser colocado sobre a esteira 1, so: t2, t3, t6, t2, t4, t7, t8, t9, t10, t5,
t3, t6, t2, t4,.... Quando o objeto passa para a esteira 2, imediatamente colocado um
novo objeto sobre a esteira 1.
Para este experimento, tambm, no ser feita a decomposio do modelo dentro
das dinmicas de transies individuais, pois, as transies dos sensores dependem de
fatores como: comprimento do objeto, arrasto da esteira, escorregamento da esteira
devido ao peso do objeto, sensibilidade dos sensores na deteco dos objetos etc, tudo
isso levaria a uma impreciso na determinao dos tempos de disparos das transies.
Com o disparo de t1 tem-se u1=[1, 0, 0, 0, 0, 0, 0, 0, 0, 0], ento:
x1 = x0 + [1, 0, 0, 0, 0, 0, 0, 0, 0, 0].A = [1, 0, 0, 0, 0, 0, 1, 0, 0, 0]
x2 = x1 + [0, 1, 0, 0, 0, 0, 0, 0, 0, 0].A = [1, 1, 0, 0, 0, 0, 1, 0, 0, 0]

x3 = x2 + [0, 0, 1, 0, 0, 0, 0, 0, 0, 0].A = [1, 1, 1, 0, 0, 1, 1, 0, 0, 0]

x4 = x3 + [0, 0, 0, 0, 0, 1, 0, 0, 0, 0].A = [1, 1, 1, 0, 0, 0, 0, 1, 0, 0]

x5 = x4 + [0, 1, 0, 0, 0, 0, 0, 0, 0, 0].A = [1, 2, 1, 0, 0, 0, 0, 1, 0, 0]

x6 = x5 + [0, 0, 0, 1, 0, 0, 0, 0, 0, 0].A = [0, 1, 0, 1, 0, 0, 0, 1, 0, 0]

x7 = x6 + [0, 0, 0, 0, 0, 0, 1, 0, 0, 0].A = [0, 1, 0, 1, 0, 0, 1, 0, 0, 0]

x8 = x7 + [0, 0, 0, 0, 0, 0, 0, 1, 0, 0].A = [0, 1, 0, 1, 0, 0, 1, 0, 1, 0]

x9 = x8 + [0, 0, 0, 0, 0, 0, 0, 0, 1, 0].A = [0, 1, 0, 1, 0, 0, 0, 0, 0, 1]

x10 = x9 + [0, 0, 0, 0, 0, 0, 0, 0, 0, 1].A = [0, 1, 0, 1, 1, 0, 1, 0, 0, 0]

x11 = x10 + [0, 0, 0, 0, 1, 0, 0, 0, 0, 0].A = [1, 1, 0, 0, 0, 0, 1, 0, 0, 0] = x2

O programa a ser implementado no CLP para realizao desse experimento est


mostrado na figura 5.17, onde %I1.0 a chave para ligar a esteira. %I1.1, %I1.2 %I1.3
so, respectivamente os sensores 1, 2 e 3, %Q2.0 e %Q2.1 so, respectivamente, as
sadas do CLP para ligar as esteiras, Quando %Q2.0 est acionada a esteira 1 deve
avanar e quando %Q2.1 est acionada a esteira 2 deve, tambm, avanar. No existe
movimento de retroceder neste experimento.

115
% I1.0 %M0 % I1.4 %M3
S R
%M1 %M5
S
%M9 % M5 % TM1 %M6
S IN TM Q S
% I1.1 % M7 %M0 MODE: TON %M8
TB: 1s
R S
% I1.3 % M4 %M1 TM.P: 10 %M4
MODIF: Y
R R
%M2 % M0 % Q2.0
R
%M6 % I1.1 % M9
R
%M7 % M8
S
%M8 % M1 % Q2.1
R R
% M2 % TM0 %M3 % M3
IN TM Q S
MODE: TON %M4 % M6
TB: 1s
S
TM.P: 5
MODIF: Y

Figura 5.17: Linguagem ladder para o sexto experimento.

(iii) Stimo experimento


Neste experimento sero utilizados duas esteiras e quatro sensores, devendo
programa-las a fim de que executem os seguintes movimentos: quando ligadas, as
esteiras devem avanar no sentido de A para B e quando um objeto colocado no ponto
A da esteira 1, este avanar no sentido da esteira 2 sendo detectado pelo sensor 1. Caso
a esteira 2 esteja desocupada o objeto passar imediatamente para esta esteira e caso a
esteira 2 esteja ocupada, o objeto dever parar na posio do sensor 1 desligando a
esteira 1 no momento em que o sensor 1 detectar um novo objeto e espera at que a
esteira 2 fique livre. Na esteira 2 o objeto, quando detectado pelo sensor 3, dever para
por 5s e, em seguida, a esteira avanar novamente levando o objeto at a posio do
sensor 4. Neste ponto novamente a esteira 2 dever parar por 10s e, em seguida, a
esteira dever retroceder at a posio do sensor 3 e ali parar novamente por 5s. Logo
aps este intervalo de tempo, a esteira 2 avanar fazendo que o objeto seja detectado
novamente pelo sensor 4 parando novamente por 10s. A quantidade de vezes que o
movimento repetido ser determinada no CLP, em sua programao, atravs de um
contador. Neste experimento esse nmero 2, ou seja, aps duas vezes detectado pelo
sensor 4 a esteira 2 libera o objeto permitindo que a esteira 1 envie um novo objeto para

116
a esteira 2, para que um novo ciclo seja iniciado. Nesta nova entrada de objeto para a
esteira 2 o sensor 2 tem a funo de resetar o contador, para que o contador inicie uma
nova contagem, sempre que um objeto passa por este. A figura 5.18 ilustra o
posicionamento dos sensores deste experimento e a tabela 5.5 mostra a evoluo dos
estados. A figura 5.19 mostra a modelagem por rede de Petri para o experimento. A
diferena deste experimento em relao ao experimento anterior o fato que, agora, o
objeto na esteira 2 ter que executar um ciclo repetitivo entre os dois pontos da esteira.

Sensor 1 Sensor 2 Sensor 3 Sensor 4

A B A B

Figura 5.18: Esteiras do stimo experimento.

Tabela 5.5: Evoluo de estados do experimento


Estado dos componentes do experimento
Esteira 1 Sensor 1 Esteira 2 Sensor 2 Sensor 3 Sensor 4 Condio
1 OFF OFF OFF OFF OFF OFF Esteiras desligadas

2 ON - Avanar OFF ON - Avanar OFF OFF OFF Esteiras ligadas

3 ON - Avanar ON ON - Avanar OFF OFF OFF Sensor 1 detecta objeto, mas


esteira 2 est livre
4 ON - Avanar OFF ON - Avanar ON OFF OFF Sensor 2 detecta objeto, esteira 2
ocupada
5 ON - Avanar OFF OFF OFF ON OFF Esteira 2 parada com objeto na
posio do sensor 3
6 OFF ON OFF OFF ON OFF Esteira 1 parada com objeto na
posio do sensor 1
7 OFF ON ON - Avanar OFF OFF OFF Esteira 2 avanando

8 OFF ON OFF OFF OFF ON Esteira 2 parada com objeto na


posio do sensor 4
9 OFF ON ON - Retroceder OFF OFF OFF Esteira 2 retrocedendo

10 OFF ON OFF OFF ON OFF Esteira 2 parada com objeto na


posio do sensor 3
11 OFF ON ON - Avanar OFF OFF OFF Esteira 2 avanando

12 OFF ON OFF OFF OFF ON Esteira 2 parada com objeto na


posio do sensor 4
13 ON - Avanar OFF ON - Avanar OFF OFF OFF Esteira 2 libera objeto, esteira 1
envia outro objeto para esteira 2

Para se obter o modelo (P, T, A, w, x, V) da rede de Petri, note que os eventos do


sistema so: (i) ligar esteiras; (ii); deteco do objeto pelo sensor 1; (iii) deteco do
objeto pelo sensor 2; (iv) parar esteira 1 na deteco de um novo objeto pelo sensor 1;
(v) parar esteira 2 na deteco do objeto pelo sensor 3; (vi) avanar esteira 2 aps 5s;
(vii) parar esteira 2 na deteco do objeto pelo sensor 4; (viii) retroceder esteira 2 aps
10s; (ix) avanar esteira 2, aps 10s, depois que o objeto for detectado pela segunda vez
pelo sensor 4. Esses eventos do origem ao conjunto T = {t1, t2, t3, t4, t5, t6, t7, t8, t9, t10,
t11, t12, t13}. Os lugares, que representam as condies para que os eventos ocorram so:
esteira 1 avanando (p1), objeto detectado pelo sensor 1 (p2), esteira 2 com objeto (p3),

117
esteira 1 parada com objeto na posio do sensor 1 (p4), esteira 2 livre (p5), objeto
detectado pelo sensor 3 (p6), esteira 2 avanando (p7), esteira 2 parada com objeto na
posio do sensor 3 (p8), objeto detectado pelo sensor 4 (p9), esteira 2 parada com
objeto na posio do sensor 4 (p10), esteira 2 retrocedendo (p11), contador do nmero de
deteces do sensor 4 (p12), indica o nmero de vezes que a esteira 2 deve retroceder
aps o disparo de t2 (p13), definindo, portanto, o conjunto P = {p1, p2, p3, p4, p5, p6, p7,
p8, p9, p10, p11, p12, p13}. Os elementos da rede de Petri so: A={(p1, t4), (p2, t4), (p3, t4),
(p4, t5), (p5, t5), (p6, t7), (p6, t12), (p7, t7), (p7, t10), (p8, t8), (p9, t10), (p10, t11), (p10, t13), (p11,
t13), (p12, t13), (p13, t11), (t1, p1), (t1, p7), (t2, p2), (t3, p3), (t3, p13), (t4, p4), (t5, p1), (t6, p6),
(t7, p8), (t8, p7), (t9, p9), (t9, p12), (t10, p10), (t11, p11), (t12, p8), (t13, p5), (t13, p7)}, w(p1,
t4)=1, w(p2, t4)=2, w(p3, t4)=1, w(p4, t5)=1, w(p5, t5)=1, w(p6, t7)=1, w(p6, t12)=1, w(p7,
t7)=1, w(p7, t10)=1, w(p8, t8)=1, w(p9, t10)=1, w(p10, t11)=1, w(p10, t13)=1, w(p11, t13)=1,
w(p12, t13)=2, w(p13, t11)=1, w(t1, p1)=1, w(t1, p7)=1, w(t2, p2)=1, w(t3, p3)=1, w(t3, p13)=1,
w(t4, p4)=1, w(t5, p1)=1, w(t6, p6)=1, w(t7, p8)=1, w(t8, p7)=1, w(t9, p9)=1, w(t9, p12)=1,
w(t10, p10)=1, w(t11, p11)=1, w(t12, p8)=1, w(t13, p5)=1, w(t13, p7)=1, x[x(p1), x(p2), x(p3),
x(p4), x(p5), x(p6), x(p7), x(p8), x(p9), x(p10), x(p11), x(p12), x(p13)], onde x0=[0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0] e v8={v8,1, v8,2, v8,3, ...}= {5, 5, 5, ...}, v12={v12,1, v12,2, v12,3, ...}= {10,
10, 10, ...}, v13={v13,1, v13,2, v13,3, ...}= {10, 10, 10, ...}.
Ligar esteiras
t1
Sensor 1 Sensor 2 Sensor 3 Sensor 4
t2 detecta objeto
t3 detecta objeto detecta objeto
t6 detecta objeto
t9
Objeto
Objeto Esteira 2 detectado Objeto detectado
Esteira 1 detectado pelo com objeto pelo sensor 3 pelo sensor 4
avanando sensor 1 Esteira 2
avanando

p1 p2 p7
p3 p6 p9
2 Contador

t4 t7 t10 p12
Parar esteira 1
Parar esteira 2 Parar esteira 2
t13
Esteira 2 livre
Esteira 2
Esteira 2
2 Objeto sai da
esteira 2
Esteira 1 parada com parada com
parada com
objeto na posio do objeto na
sensor 1
p4 p5
posio do
sensor 3
objeto na
posio do v13 Avanar

p8 sensor 4
p10
esteira 2

p13
t5 t11
t8 Avanar Nmero de
Ligar esteira 1
v8 esteira 2
v11 Retroceder
esteira 2
vezes que a
esteira 2 deve
retroceder

Esteira 2
retrocedendo

p11
t12
v12 Parar esteira 2

Figura 5.19: Rede de Petri do stimo experimento.

118
Por inspeo da da rede de Petri da figura 5.19 pode-se encontrar a matriz de
incidncia A. Ento, tem-se:
1 0 0 0 0 0 1 0 0 0 0 0 0
0 1 0 0 0 0 0 0 0 0 0 0 0

0 0 1 0 0 0 0 0 0 0 0 0 1

1 2 1 1 0 0 0 0 0 0 0 0 0
1 0 0 1 1 0 0 0 0 0 0 0 0

0 0 0 0 0 1 0 0 0 0 0 0 0
A= 0 0 0 0 0 1 1 1 0 0 0 0 0

0 0 0 0 0 0 1 1 0 0 0 0 0
0 0 0 0 0 0 0 0 1 0 0 1 0

0 0 0 0 0 0 1 0 1 1 0 0 0

0 0 0 0 0 0 0 0 0 1 1 0 1
0 0 0 0 0 1 0 1 0 0 1 0 0

0 0 0 0 0 0 1 0 0 1 0 2 0
Usando a matriz de incidncia A, pode-se, a partir da equao de estados, x' = x
+ u.A, simular os resultados de todos os prximos estados que podem ser gerados a
partir do disparo das transies.
Com o disparo de t1 tem-se u1=[1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], ento:
x1 = x0 + [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0].A = [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0]
x2 = x1 + [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0].A = [1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0]

x3 = x2 + [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0].A = [1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1]

x4 = x3 + [0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0].A = [1, 1, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1]

x5 = x4 + [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0].A = [1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]

x6 = x5 + [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0].A = [1, 2, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]

x7 = x6 + [0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0].A = [0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1]

x8 = x7 + [0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0].A = [0, 1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1]

x9 = x8 + [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0].A = [0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 1]

x10 = x9 + [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0].A = [0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 1]

x11 = x10 + [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0].A = [0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0]


x12 = x11 + [0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0].A = [0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 1, 1, 0]
x13 = x12 + [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0].A = [0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0]
x14 = x13 + [0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0].A = [0, 1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0]
x15 = x14 + [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0].A = [0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 2, 0]

119
x16 = x15 + [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0].A = [0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 2, 0]
x17 = x16 + [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1].A = [0, 1, 0, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0]
x17 = x16 + [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0].A = [1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0] = x2
Para este experimento, tambm, no ser feita a decomposio do modelo dentro
das dinmicas de transies individuais, uma vez que o os disparos dos sensores no
podem ser precisamente determinados.
O programa em linguagem ladder que dever ser implementado no CLP para
realizao do experimento 5 mostrado na figura 5.20, onde %I1.0 a chave para ligar
a esteira, %I1.1, %I1.2, %I1.3 e %I1.4 so, respectivamente, os sensores 1, 2, 3 e 4.
%Q2.0, %Q2.1 e Q2.2 so, respectivamente, as sadas do CLP para ligar as esteiras.
Quando %Q2.0 est acionada a esteira 1 deve avanar. %Q2.1 e %Q2.2 controlam o
movimento da esteira 2, quando %Q2.1 est acionada a esteira 2 deve avanar e quando
%Q2.1 e %Q2.1 estiverem acionadas a esteira 2 retrocede.

% I1.0 %M0 % M5 % TM1 %M6


S IN TM Q S
%M1 MODE: TON %M7
TB: 1s
S S
%M8 TM.P: 10 % M11 %M10
MODIF: Y
S S
% I1.3 % M4 %M1 % M0 % Q2.0
R
%M2 % M10

%M7 % I1.1 % M8
R
%M6 % M1 % Q2.1
R
%M11 % M3
R
%M0 % M6
R
%M9 % M7 % M9 % Q2.2
R
% I1.3 %M10 % I1.2 % C0
R R C E
% M2 % TM0 %M3 % M11
TM
IN Q S S D S
MODE: TON %M4 % I1.4 C.P: 2 % M9
TB: 1s
S CU F S
TM.P: 5 MODIF: Y
MODIF: Y
CD
% I1.4 %M3
R
%M4
R
%M5

Figura 5.20: Linguagem ladder do stimo experimento.

120
Captulo 6. Concluso e trabalhos futuros.

O grande aperfeioamento que h em equipamentos utilizados em automao,


dentro dos seus mais variados setores da industria, comrcio, mdico-hospitalar etc,
impedem que seja feito um modelo nico de laboratrio para a implantao de cursos na
rea de automao industrial. Dentro deste contexto, este trabalho teve por finalidade
propor uma sistematizao de vrios experimentos que podem ser utilizados na
implantao de um laboratrio de automao industrial com base na teoria de sistemas a
eventos discretos. Os experimentos aqui propostos, foram todos implantados na prtica
e podem ser utilizados como proposto, em qualquer outro laboratrio, quer em cursos de
automao, informtica industrial ou controladores lgicos programveis, podendo
sofrer modificaes e aperfeioamentos de acordo com o enfoque e caractersticas do
curso ministrado. Em particular, o uso das esteiras com sensores e do conjunto de
lmpadas podem proporcionar uma variedade muito grande de experimentos.
Neste trabalho procurou-se mostrar os fundamentos principais de sistemas a
eventos discretos, juntamente com suas formas de representao. A necessidade de
ferramentas para modelagem de tais sistemas foi vista quando do estudo dos autmatos
e das redes de Petri. Pde-se observar a grande facilidade que essas ferramentas
proporcionam para anlise de sistemas a eventos discretos. Foi realizado um breve
estudo entre converses diretas entre redes de Petri e linguagem ladder, onde se pode
notar as dificuldades em se trabalhar com estes tipos de converses, as facilidades em
documentar tais sistemas e a grande facilidade em se analisar e realizar manutenes em
projetos elaborados em linguagem ladder, por este ser de difcil anlise quando os
programas so muito grandes e de difcil solues de problemas quando estes
acontecem.
Foram propostos sete experimentos para serem utilizados em um laboratrio de
automao industrial utilizando a teoria de sistemas a eventos discretos. Durante esses
experimentos pde-se perceber muitas dificuldades, podendo-se destacar: (i) a
dificuldade de correo de programas em linguagens ladder medida que os programas
aumentam de tamanho; (ii) problemas de acionamentos contnuos de uma chave,
quando se utiliza a modelagem por redes de Petri; (iii) dificuldade de transformao
direta entre redes de Petri e linguagem ladder e (iv) representao clara da evoluo dos

121
estados de um sistema, quando estes dependem de fatores externos a rede de Petri, como
acionamento manual de botes, deteco por sensores etc.
A partir desse trabalho pde-se observar uma grande vantagem do uso de redes
de Petri dentro dos laboratrios de automao industrial, pela facilidade de compreenso
da evoluo dos estados do sistema (embora, em alguns casos de difcil representao) e
por esta ferramenta proporcionar aos profissionais em formao uma ampla viso
metodolgica para o desenvolvimento, criao a anlise de projetos envolvendo CLP. O
grande crescimento da industria nacional depende e muito da capacidade de produo e
gerao de novos conceitos, estando as redes de Petri nesta linha de conhecimento.
Assim, implant-las nos cursos automao industrial pode representar um grande
benefcio para o estudo, desenvolvimento e expanso do ensino de sistemas a eventos
discretos.
Em relao a trabalhos futuros que podem ser desenvolvidos, a partir deste
trabalho, pode-se destacar: (i) a implantao destas mesmas experincias em um
laboratrio de sistemas a eventos discretos com a utilizao de controle supervisrio;
(ii) incorporao do uso de sistemas hidrulicos e pneumticos com suas respectivas
formas de modelagem em conjunto com a utilizao de redes de Petri ou autmato; (iii)
mtodos de transformao direta entre redes de Petri e linguagem ladder, com vistas aos
grandes aperfeioamentos de linguagem de programao ladder que so oferecidos por
cada fabricante de CLP; (iv) a implantao de experincias utilizando mtodos
estocsticos com ajuda de softwares de simulao de redes de Petri e (vi)
desenvolvimento de ferramentas para a atualizao remota desse laboratrio via
internet.

122
Referncias Bibliogrficas

ASEE: American Society of Engineering Education, Engineering Education for a


Changing World, Report of a Joint Project of the ASEE Engineering Deans
Council and Corporate Roundtable, Annual Conference Proceedings, Edmonton,
Canada, 1994.

ATTI, S. S., Automao Hidrulica e Pneumtica Empregando a Teoria de Sistemas


a Eventos Discretos. Tese de M. Sc, Universidade Federal de Santa Catarina,
Florianpolis, Brasil, 1998.

AUGUSTINE, N. R., Augustine's Views, National Academy of Engineering, The


Bridge, vol. 23, n 3, 1994.

BASILIO, J. C., A laboratory for a First Course in Control System, International


Journal of Electrical Engineering, Education vol. 39, 54-70, 2002.

BASILIO, J. C., MOREIRA, M. V., State-space Parameter Identification in a Second


Control Laboratory, IEEE Transactions on Education E, vol. 47, n 2, 204-210,
2004.

BAUM, E., DOWELL, E., McTAGUE, J., HOCKER, J., Engineering Education for a
Changing World, Joint Project by the Engineering Deans Council and the
Corporate Roundtable, American Society of Engineering Education, vol. 4, n 4,
1994.

BIGNELL, J. W., DONOVAN, R. L., Eletrnica Digital, Editora Makron Books, vol. 1
e 2, So Paulo, 1995.

BORDOGNA, J., FROMM, E., ERNST, E., Engineering Education: Innovation


Through Integration, Journal of Engineering Education, vol. 82, n 1, 3-8, 1993.

123
BOUCHER, T. O., JAFARI, M. A., MEREDITH, G. A., Petri Net Control of an
Automated Manufacturing Cell, Computers in Industrial Engineering, vol. 17,
Orlando, FL, USA 459-463, 1989.

BURNS, G. L., BINDANDA, B., The Use of Hierarchical Petri Nets for the Automatic
Generation of Ladder Logic Programs, Proceedings ESD IPC-94 Conference &
Exposition, 169-179, Detroit, Michigan, 1994.

CASSANDRAS, C. G.,LAFORTUNE, S., Introduction to Discrete Event Systems.


Kluwer Academic Publishers. 2 Edio. Boston, 2000.

CAZOLA, F., FERRARINI, L., PREZIOSA, M., Interpretation rules of PETRI NET
models for logic control, Proc. IEEE Symp. Emerging Technologies and Factory
Automation (ETFA'95), vol. 2, 289-297, 1995.

CHIRN, J. L., McFARLANE, D. C., Petri net based design of ladder logic diagrams,
Internal Report, Institute for Manufacturing, Cambridge University, England,
2000.

CIBUZAR, G., STAEGE, J., NORDELL, J., RAU, A., BUSENBARRICK, D., MTL
Intranet: A University Microelectronics Laboratory WWW-based Management
System, IEEE Transactions on Industrial Electronics, 92-95, 2001.

DAVID, R., Grafcet: A Powerful Tool for Specification of Logic Controllers", IEEE
Transactions on Control Systems Technology, vol. 3, n 3, 253-268, 1995.

GEORGINI, M., Automao Aplicada. Editora rica. 1 Edio. So Paulo, 2000.

GRAYSON, L. P. (Ed.), Educating Engineers for World Competition Proc. 24th


Frontiers in Education Conference, ASEE-IEEE, 233-236, San Jose, CA, 1994.

IEC: International Electrotechnical Commission. International standard IEC 1131-3,


Programmable Controllers, Part 3: Programming Languages. Geneva, 1992.

124
JAFARI, M., BOUCHER, T. O., A rule-based system for generating a ladder logic
control program from a high-level systems model, Journal of Intelligent
Manufacturing, vol. 5, n. 2, 103-120, 1994.

JIMNES, I., LOPS, E., RAMRES, A., Synthesis of Ladder Diagrams from Petri
Nets Controller Models, Proceedings of the 2001 IEEE International Symposium
on Intelligent Control, 225-230, Mxico City, Mxico, 2001.

JONES, A. H., UZAM, M., AJLOUNI, N., Design of discrete event control systems
for programmable logic controllers using T-timed Petri nets, Proc. 1996 IEEE
Int. Symp. Computer-Aided Control System Design, Dearborn, MI, 212-217, 1996.

KUMAR, R., GARG, V. K., Modeling and Control of Logical Discrete Event Systems,
research monograph, Kluwer Academic Publishers, Norwell Massachusetts, 1995.

LAUZON, S. C., Ma, A. K. L., MILLS, J. K., BENHABIB, B., Application of


Discrete Event System Theory to flexible manufacturing, IEEE Control Systems,
41-48, 1996.

LEE, J. S., HSU, P. L., A New Approach to Evaluate Ladder Logic Diagrams and Petri
Nets via the IF-THEN Transformation, IEEE Conference on Systems, Man and
Cybernetics, 2711-2716, Tucson, AZ, 2001.

LUCAS, M. R., TILBURY, D. M., A study of current logic design practices in the
automotive manufacturing industry, International Journal of Human-Computer
Studies, vol. 59, 725-753, 2003.

MARTIN, T. W., BROWN, W. D., A Downsized, Laboratory-Intensive Curriculum in


Electrical Engineering, Proceedings of the 1997 Frontiers in Education
Conference, 878-882, 1997.

MIDDLETON, N. T., GLASER, S., GOSINK, J. P., PARKER, T., An Integrated


Engineering Systems Laboratory, Proceeding of the 1996 Frontiers in Education
Conference , 651-655, 1996.

125
MIYAGI, P. E., Controle Programvel. Editora Edgard Blcher. So Paulo, 1996.

MORAES, C. C., CASTRUCCI, P. L., Um Programa Didtico em Automao


Industrial, Anais do XIV - Congresso Brasileiro de Automtica, pp. 1397-1402,
Natal, Brasil, Set., 2002.

NATALE, F., Automao Industrial. Ed. rica. 2 Edio. So Paulo, 1995.

OLIVEIRA, J. C. P., Controlador Lgico Programvel. Editora Makron Books. So


Paulo, 1993.

OMRON, C200H Programmable Controllers (CPU01-E/03- E/11-E) Operation


Manual, Omron Co., 1994.

PETERSON, J. L., Petri net theory and the modeling of systems, Prentice Hall, 1981.

PENG, S. S., ZHOU, M. C., Ladder Diagram and Petri Net Based Discrete Event
Control Design Methods, IEEE Transactions on Systems, Man, and Cybernetics
Part C: Applications and Reviews, 1-9, 2004.

PENG, S. S., ZHOU, M. C., Conversion between Ladder Diagrams and Petri Net in
Discrete Event Control Design A Survey, In: IEEE Conference on Systems,
Man and Cybernetics, Tucson, AZ, 2682-2687, 2001.

QUINN, R. G., The E4 Introductory Engineering Test, Design and Simulation


Laboratory, Journal of Engineering Education, vol. 82, n 4, 1993.

SATO, T., NOSE, K., Automatic Generation of Sequence Control Program via Petri
Nets and Logic Tables for Industrial Applications, Petri Nets in Flexible and Ag.
Automation, Kluwer Academic Publishers, 93-108, 1995.

SILVEIRA, P. R., SANTOS, W. E., , Automao e Controle Discreto. Editora rica. 1


edio. So Paulo, 1999.

126
TAHOLAKIAN, A. HALES, W. M. M., PN/PLC: A methodology for designing,
simulating and coding PLC based control systems using Petri nets, International
Journal of Product Research, , vol. 35, n 6, 1743-1762, 1997.

UZAM, M., JONES, A., AJLOUNI, N., Conversion of Petri nets controllers for
manufacturing systems into ladder logic diagrams", IEEE Symposium on
Emerging Technology and Factory Automation, ETFA, vol. 2, 649-655, 1996.

VENKATESH, K., ZHOU, M.C., Modeling, Simulation, and control of Flexible


manufacturing Systems A Petri Net Approach, World Scientific Publishers, Singapore,
1998.

VENKATESH, K, ZHOU, M. C., CAUDILL, R. J., Comparing Ladder Logic


Diagrams and Petri Nets for Sequence Controller Design Through a Discrete
Manufacturing System, IEEE Transactions on Industrial Electronics, vol. 41, n
6, 611-619, 1994a.

VENKATESH, K, ZHOU, M. C., CAUDILL, R. J., Evaluating the Complexity of


Petri Nets and Ladder Logic Diagrams and for Sequence Controllers Design in
Flexible Automation Proceedings of the 1994 IEEE Symposium on Emerging
Technologies e factory Automation, 428-435, 1994b.

ZURAWSKI, R., ZHOU, M. C., Petri Nets and Industrial Application: A Tutorial,
IEEE Transactions on Industrial Electronics, vol. 41, n 6, 567-583, 1994.

127