Vous êtes sur la page 1sur 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 Automao 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.

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 Abstract 1. Introduo 2. Fundamentos da teoria de sistemas a eventos discretos v vi 1 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 Bibliografia 121 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).

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 3 rede de Petri na sintaxe de

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.

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

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.

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.

x(t)

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

X=

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

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

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 Chegada de clientes

Servidor 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 Entradas Mquina 1 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 Fila Mquina 2

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).
3

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, 2checar 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 L1 L4 L1 L4 L4* L1* (i) ; (ii) {} uma linguagem no-vazia, contendo unicamente uma seqncia vazia; (iii) Se L = ento L = , e se L ento, necessariamente, L ; (iv) * = {} e {}* = {}. = = = = = = {g, ag, abbg} {, a, ab, abb} {, g} {, a abb, g, ag, abbg} { , g, gg, ggg, } { , a, abb, aa, aabb, abba, abbabb, }

Observao 2.1: importante observar que:

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 x g z a y a,g b 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 0 a b

a 1

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).
1 a 0 g 2 b a 3 b a 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 t3 p3 t4

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) como x'(pi) =x(pi) - w(pi, tj) + w(tj, pi), i = 1,...,n. (2.2) (2.1) Se f(x, tj) definida, ento o prximo vetor de estados x' = f(x, tj) definido

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 aplicandose 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-sea 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 p2 t1 p3 (a) p1 p2 t1 p3 (b) t3 t2 t3 t2

p4

p1 p2 t1 p3 (c) p1 p2 t1 p3 (d) t3 t2 t3 t2

p4

p4

p4

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, devese, 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) 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 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. x0= [2, 0, 0, 1]. Pode-se, primeiramente, escrever a matriz de incidncia por inspeo do grfico da rede de Petri, (2.3) Usando a matriz de incidncia A, pode-se agora obter a seguinte equao de

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-paraum 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 Chegada de clientes Servidor Partida de clientes

(a)
a a

(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

pC3

t4

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 ksimo 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, } vm={v1,1, v1,2, }

Dinmicas da rede de Petri temporizada

{1,1 , 1, 2 , ...}
{ 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) k = 1,... , xi0. (2.6)

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

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 ksimo 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,
pi I ( tj )

k = 1, 2,

(2.8)

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

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, sk = max{Q,k, I,k}, dk = B,k + vd,k, Q,k = ak, k = 1, 2, ... a0 = 0 k = 1, 2, ... k = 1, 2, ... k = 1, 2, ... 34

I,k = dk-1, B,k = sk, sk = max{ak, dk-1}, dk = sk + vd,k,

k = 1, 2, ..., I,1 = 0 k = 1, 2, ... k = 1, 2, , d0 = 0 k = 1, 2,

Combinando as equaes acima para eliminar Q,k, I,k e B,k, resulta:

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 d0 = 0 dk = max{ak-1 + va,k, dk-1}+ vd,k,

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

PLC
Dispositivos de Sada

Sistema Automatizado

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 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 e os circuitos auxiliares de controle. O sistema de memria

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 Entrada

Entrada

CPU

Sada

Dispositivos de Sada

Alimentao Externa

Fonte de Alimentao Base

Fonte Auxiliar

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.

F2 F1
B0

COM COM X0

COM COM Y0 X3 X1 X4 X2 X5 Y1 Y2 Y4 Y5 End Y3

F2 F1
L0

B1

X0

X1

Y0 Mdulo de Sada

Mdulo de Entrada

Linguagem de Programao

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 T R A D A

Processador

Memria

Barramento (Dados + Controle + Endereo) CPU

S A D A

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 Programa de Execuo: ROM / EPROM Rascunho do Sistema: RAM (Bateria opcional) Memria de Aplicao Programa de Aplicao: RAM EEPROM Tabela de Dados: RAM (Bateria opcional) (Bateria) / EPROM /

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 Chave Pressostato Fluxostato Termostato Ch. Fim de Curso Teclado Chave BCD Fotoclula Outros

Cartes Discretos

CPU

Cartes Discretos

Vlvula Solenide Contator Sinalizador Rels de Controle Sirene Display Lmpada Ventiladores Alarmes Outros

Figura 3.9: Elementos de entrada e sada discretos.

A/D

Multiplexadores

Transdutores

Processo

Circuito Optoacoplador

Barramento

CP

D/A
Demultiplexadores Atuadores Processo

Figura 3.10: Mdulos de entrada e sada analgica.

Transdutores de Tenso Transd. de Corrente Transd. de Presso Transd. de Fluxo Potnciomentros Outros Cartes Analgicos CPU Cartes Analgicos

Vlvula Analgica Acionamento de Motores DC Controladores de Potncia Atuadores Analgicos Mostradores Grficos 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 L O T

S L O T 0

S L O T 1

S L O T 2

S L O T 3

S L O T 4

Fonte de Alimentao

D 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 Normalmente Normalmente Aberto(NA) Fechado(NF) Representao utilizada pela Automationdirect.com

Contato NA

Contato NF

Representao utilizada pela GE

Figura 3.16: Exemplo de instrues em linguagem ladder.

Coluna 1 Linha 1 Rung 1 Linha 2 1 I3 I1

Coluna 2 I2

Coluna 3

Coluna de Sada Q0

Linha 1 Rung 2 2

I1 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.

Interpretao Lgica

Tabela-Verdade

Gerao de Funces 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 2. A.0 = 0 3. A + 0 = A 4. A.1 = A 5. A + 1 = A 6. A + A = A 7. A.A = A 8. A + A = A 48 9. A. A = 0 10. A.B + A.C = A.(B+C) 11. A + A .B = A + B

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.
Funo Tabela-verdade A A 0 1 1 0 A 0 0 1 1 A 0 0 1 1 A 0 0 1 1 A 0 0 1 1 A 0 0 1 1 A 0 0 1 1 B 0 1 0 1 B 0 1 0 1 B 0 1 0 1 B 0 1 0 1 B 0 1 0 1 B 0 1 0 1 Y 0 0 0 1 Y 0 1 1 1 Y 1 1 1 0 Y 1 0 0 0 Y 0 1 1 0 Y 1 0 0 1 Lgica booleana / De Morgan Implementao em Linguagem ladder
I0 Q0

NOT

A=A

I0

I1

Q0

AND

Y = A.B

I0

Q0

OR

Y = A+B

I1

I0

I1

M0

I0

Q0

NAND

Y = A.B = A+B

M0

Q0

OU

I1

I0

M0 I0 I1 Q0

NOR

Y = A+B = A.B

I1 M0 Q0

OU

I0

I1

Q0

OR Exclusivo

Y=A.B+A.B= A + B

I0

I1

I0 I0 I1 Q0

I1

M0

NOR Exclusivo

Y = A.B + A.B = Y = (A+B).(A+B)


I0 I1

OU

I0

I1

M0

Q0

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 10s

I0 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 I1

C0
C (crescente)

D (Decrescente)

I2
Reset

C0

100

Tempo

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 SP0 Funo Primeira varredura Descrio Ativado apenas na primeira varredura da CPU; desativado nas demais SP1 SP2 SP3 SP4 SP5 SP6 Sempre ligado Sempre deslidado Clock de 1 minuto Ativado em todas as varreduras Desativado em todas as varreduras 30seg em nivel alto e 30seg em nvel baixo

Clock de 1 segundo 0,5s em nvel alto e 0,5s em nvel baixo Clock de 100 mseg Clock de 50 mseg 50 ms em nvel alto e 50 ms em nvel baixo 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 bsicos Linguagem ladder
Boto de Presso

Rede de Petri
Lugar Transio

Chave NA Chave NF

Ns

Rel Temporizador Contador Solonide

R
TR CNT

Arco normal

Links

Linha

Arco inibidor

54

Tabela 3.5: Lgica para converso entre redes de Petri e linguagem ladder.
Lgica
1 ... m 1 m m+1

Rede de Petri

Linguagem ladder

Lgica AND
... m+1 m+n

Ns = m + n + 1 Links = m + n

m+n

Ns = m + n Links = m + 2n

m 1 m+1

Lgica OR

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

m+1

Ns = m + n Links = 2(m + n)

m+n

1 m+n+1 m+1 m+n m+2 m+2n m+n+n

m+1

Modelo Sequencial
m

m+3 m+2n+1 m+2n+n

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

Ns = 2(m + n + n) - 1 Links = m + n + 2n
... m 1 Atraso (delay) ... m m+1 Timer T

Lgica AND Temporizada


m+1

Ns = m + n + 1 Links = m + n
m+2 m+r

m+n

Ns = m + n + r + 1 Links = m + 2n + r + 2
m Atraso d (delay) 1 Timer Atraso (delay 1)

m+r+n

Lgica OR Temporizada

3d+1

Atraso 1 (delay)

m+1

Ns = 2d + n Links = d (1 + n)
m+n Timer Atraso (delay d) 3d+n 1 m+1 m+n m+n+1 1 m Timer Atraso (delay 1)

Ns = 3d + n Links = 5d + 2n

Modelo Sequencial Temporizado

m+n+n m Atraso 1 (delay) Atraso d (delay) 1 Timer Atraso (delay d)

Ns = 2d + m + n - 1 Links = 2d + m + n - 2

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 Condio ou status do elemento do sistema Atividade Fluxo de informao ou material Objetos ativos: mquinas, robs, pallets, etc... A
Lgica AND IF A=1 AND B=1 AND C=1 THEN D=1

Rede de Petri Lugar

Linguagem ladder Representao no explicita Representao no explicita Representao no explicita Representao no explicita

Transio Arco direcionado Smbolo presente no lugar B C

D A B C A B D C D

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

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

B D E

C D E

Temporizado IF A=1 THEN aps atraso de tempo B=1 Sincronizao IF A=1 THEN Aps atraso de tempo D=1 IF B=1 AND C=1 THEN Aps atraso de tempo E=1 IF D=1 AND E=1 THEN Aps atraso de tempo F=1

1
2
3

A
Timer

A
Timer

D
1

B C D F E D E

E F

Timer

Timer

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 Estrados(Pallet)

Transportador Estao de Montagem

Mesa de Trabalho

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 C B Timer
A B D

D
t1 C t2 E

E Timer

D
t3 F

E Timer

(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 Detecco: Falha P3 Conjunto acionado para expelir o produto defeituoso (A2) T4 Expelir produto

T3 Deteco: OK P4

Conjunto deixa passar o produto (A2)

T5 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 P5

000.05 T6-1 000.06 T6-2

P1

100.00 P1 100.00 P1

100.01 P2

000.00 T1

100.01

100.01 P2

100.02 P3

100.03 P4

P2

100.01 P2

000.02 T2

100.02

100.02 P3

100.04 P5

P3

100.01 P2

000.01 T3

100.03

100.01 P2

001.00

100.03 P4

100.04 P5

P4

001.00 A1

100.04 P5

A1

100.02 P3

000.04 T4

100.04

100.02 P3

001.01

100.03 P4

000.03 T5

P5

001.01 A2

100.03 P4

A2

100.04 P5

100.00 P1

100.00 P1

001.02

A3

(a) ladder para as aes de sada. 60

(b)

Figura 3.29: (a) Linguagem ladder da seqncia de controle e (b) Linguagem

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 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.

Base do CLP

62

Sada Sada comum Entrada 3 Entrada 5 Entrada 7 Entrada 9 NC NC

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

Mdulo analgico integrado

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 prdefinidas. 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 14 Kwords(37-10) 20 Kwords(37-20)

Dados Programa Constantes

Flash EPROM interna 15 Kwords

Cpia de Backup 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 homemmquina. 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).

T FTX 1020/050

XBT Z 968 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

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


F2 F3 P F4 N F5

S F12

Seta o bit associado para 1 quando este recebe nvel 1 Seta o bit associado para 0 qdo. este recebe nvel 1 Constri um jump Bloco de operaes Bloco de comparao 2 col. e 1 lin. Bloco de comparao 2 col. e 4 lin.

Contato normalmente fechado Contato P detecta borda de subida

R S-F1

S-F2

Contato N detecta borda de descida Constri uma linha em um bloco

OPER S-F3 COMP M S-F4 COMP V S-F5

F6

F7

Constri uma linha na vertical Apaga uma linha construda na vertical Constri uma linha em vrios blocos Seta o bit associado para um valor recebido

x
F8

... Bloco para acessar as subrotinas


FB

S-F6

F9

S-F7 F (...) S-F8

Bloco B funes (TM, C, MN, R, DR) de Bloco de funes pr -definidas (PID, etc...)

F10

F11

Seta o bit associado para um valor inverso

Figura 4.15: Palete para construo da aplicao em ladder.

Smbolo

Operando
%I, %Q, %M, %S, %BLK %I, %Q, %M, %S, %BLK

P N

%I, %Q, %M %I, %Q, %M %Q, %M, %FBs %Q, %M, %FBs

S R

%Q, %M, %FBs %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.

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

Cabo do sensor PNP

Marron +V 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.

24 VDC

127 VAC 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
Boto 1 2 3 4

5 6 7 8

chave

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.

TSXDMZ 28DR
1 3 4 5 6 7 2

Esquema de ligao do TSXDMZ 28DR 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 15 16 17 18 19 NC 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 +24VDC 0VDC 14 %I1.0 %I1.1 %I1.2 %I1.3 %I1.4 %I1.5 %I1.6 %I1.7 %I1.8 %I1.9 %I1.10 %I1.11 %I1.12 %I1.13 %I1.14 %I1.15 Source Sink %Q2.0 %Q2.1 %Q2.2 %Q2.3 %Q2.4 %Q2.5 %Q2.6 %Q2.7 %Q2.8 %Q2.9 %Q2.10 %Q2.11

CLP

8 9 10 11 12 13

24VDC

23 24 25 26

0VDC

27 28 29 30 31

L 127/220VCA N

32 33 34 35

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

79

Botoeira
A B

1 5 6 7 8 2 3 4

chave

130V 15W L1 L4

130V 15W

130V 15W L7

TSXDMZ 28DR

1 3 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35

130V 15W
24VDC

130V 15W L2 L5

130V 15W L8

CLP

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

80
L1 L2 L3 L4 L5 L6 L7 L8

130V 15W
L9

130V 15W L3 L6

130V 15W L9

24VDC

0VDC

Rede Eltrica

127/220VCA

COM N F 127 VAC

Rels de 24V - 5A

Botoeira
A B

1 5 6 7 8 2 3 4

chave

130V 15W L1 L4

130V 15W

130V 15W L7

TSXDMZ 28DR

1 3 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35

130V 15W
24VDC

130V 15W L2 130V 15W L5 130V 15W

130V 15W L8 130V 15W

CLP

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

81
L1 L2 L3 L4 L5 L6 L7 L8

24VDC

0VDC

L9

L3
COM

L6

L9

Rede Eltrica

127/220VCA

Rede Eltrica

N F 127 VAC

Rels de 24V - 5A

Botoeira
A B

1 5 6 7 8 2 3 4

chave

130V 15W L1 L4

130V 15W

130V 15W L7

TSXDMZ 28DR

1 3 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35

130V 15W
24VDC

130V 15W L2 L5

130V 15W L8

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

(experimento 4).
L1 L2 L3 L4 L5 L6 L7 L8

CLP

82
L9 COM
Rede Eltrica

130V 15W L3

130V 15W L6

130V 15W L9

24VDC

0VDC

Rede Eltrica

127/220VCA

N F 127 VAC

Rels de 24V - 5A

Botoeira
A B

1 5 6 7 8 2 3 4

chave

TSXDMZ 28DR

L 1 3 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34
Rede Eltrica

Liga 127 VCA + 24 VCC

5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35

+ 24 V - Habilita Esteira + 24 V - Inverte Sentido

Rede Desliga N

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

(experimento 5).

83

CLP

+24 Vcc Sensor 1 NPN PNP +24 Vcc Sensor 2 NPN PNP

24VDC

0VDC

Rede Eltrica

127/220VCA

Esteira

Botoeira
A B

1 5 6 7 8 2 3 4

chave

TSXDMZ 28DR

L 127 VCA + 24 VCC 1 3 2 4 6 8 10 12 14 NPN PNP 16 18 20 NPN PNP 22 24 26 28 30 32 34 Sensor 1 +24 Vcc Sensor 2 +24 Vcc + 24 V - Habilita Esteira + 24 V - Inverte Sentido
Rede Eltrica

Liga
Rede Eltrica

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

Rede Desliga N

5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35

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

(experimento 6).

84

CLP

+24 Vcc Sensor 1 NPN PNP +24 Vcc Sensor 2 NPN PNP

24VDC

0VDC

Rede Eltrica

127/220VCA

Esteira 1

Esteira 2

Botoeira
A B

1 5 6 7 8 2 3 4

chave

TSXDMZ 28DR

L 127 VCA + 24 VCC 1 3 2 4 6 8 10 12 14 NPN PNP 16 18 20 NPN PNP 22 24 26 28 30 32 34 +24 Vcc Sensor 2 Sensor 1 +24 Vcc + 24 V - Habilita Esteira + 24 V - Inverte Sentido
Rede Eltrica

Liga
Rede Eltrica

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

Rede Desliga N

5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35

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

(experimento 7).

85

CLP

+24 Vcc Sensor 1 NPN PNP +24 Vcc Sensor 2 NPN PNP

24VDC

0VDC

Rede Eltrica

127/220VCA

Esteira 1

Esteira 2

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
Avanar
Movimento da esteira

Sensor 2

Retroceder
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
Acender lmpada Lmpada apagada Acionar boto Lmpada acesa

p2

t1

p1
Boto acionado

t2

p4
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 1 A= 0 1 0 1 1 0 0 1 1 0 0 1 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, 2,k = 2,k, 3,k = 3,k-1, 4,k = 2,k, 1,k = 1,k, 2,k = max{1,k, 3,k}, 3,k = max{2,k, 4,k}+ v3,k, 4,k = max{1,k, 4,k}, k = 1, 2, ... k = 1, 2, ... k = 2, 3, ..., k = 1, 2, ..., k = 1, 2, ... k = 1, 2, ... k = 1, 2, ..., k = 1, 2, ..., 3,1 = 0

Equaes dos instantes de tempo de disparo das transies (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 IN

% TM0 TM

% Q2.0 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
Lmpada apagada Acender lmpada

p2
Lmpada acesa

4 Acionar boto

t2

tempo = 0s

t1

p1
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 A = 4 0 0 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 x1 = [0, 0, 1] + [1, 0, 0]. 4 0 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 0 1 1 0 1 1

1,k = 1,k, 2,k = 2,k, 3,k = 3,k-1, 1,k = 1,k, 2,k = max{1,4k, 3,k}, 3,k = 3,k + v3,k, 1,k = 1,k,

k = 1, 2, ... k = 1, 2, ... k = 2, 3, ..., k = 1, 2, ... k = 1, 2, ... k = 1, 2, ... 3,1 = 0

Equaes dos instantes de tempo de disparo das transies (2).

Essas equaes podem ser colocadas na seguinte forma recursiva: 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 P IN % TM0 TM % Q2.0 Q

MODE: TON TB: 1s TM.P: 5 MODIF: Y % Q2.0 N R S % I1.0


C.P: 4

% C0 C

E %M0 D F

CU
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 Vermelha Amarela
1 2 3 4 5 6 7 OFF OFF ON ON ON ON OFF OFF ON OFF OFF OFF OFF OFF

Verde
ON OFF OFF OFF OFF OFF ON

Semforos 2 e 3 Vermelha Amarela


ON ON ON OFF OFF ON ON OFF OFF OFF OFF ON OFF OFF

Verde
OFF OFF OFF ON OFF 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
Lmpada vermelha acesa (semforos 2 e 3)

Semforo 1 passou do sinal amarelo para o vermelho Lmpada verde acesa (semforo 1)

p1 t2 v2

p8

p2 t4 v4
Acender lmpada verde

Acender lmpada amarela (semforo 1)

Lmpada amarela acesa (semforo 1)

Lmpada verde acesa (semforos 2 e 3)

p3
Acender lmpada vermelha (semforo 1)

p5 t5 v5
Acender lmpada amarela (semforos 2 e 3)

t3 v3

Lmpada vermelha acesa (semforo 1)

p4 t7 v7 t6
Acender lmpada verde (semforo 1)

p6

Lmpada amarela acesa (semforos 2 e 3)

p7
Semforos 2 e 3 passaram do sinal amarelo para o vermelho

v6

Acender lmpada vermelha (semforos 2 e 3)

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 A= 0 0 0 1

1 0 0 1 0 1 0

0 1 1 0 0 0 0

0 0 1 0 0 0 1

0 0 0 1 1 0 0

0 0 0 0 1 1 0

0 0 0 0 0 1 1

0 0 1 1 0 0 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] t2: u2 = [0, 1, 0, 0, 0, 0, 0] t3: u3 = [0, 0, 1, 0, 0, 0, 0] t4: u4 = [0, 0, 0, 1, 0, 0, 0] t5: u5 = [0, 0, 0, 0, 1, 0, 0] t6: u6 = [0, 0, 0, 0, 0, 1, 0] t7: u7 = [0, 0, 0, 0, 0, 0, 1] x1 = x0 + u1.A = [1, 1, 0, 0, 0, 0, 0, 0] x2 = x1 + u2.A = [0, 1, 1, 0, 0, 0, 0, 0] x3 = x2 + u3.A = [0, 1, 0, 1, 0, 0, 0, 1] x4 = x3 + u4.A = [0, 0, 0, 1, 1, 0, 0, 0] x5 = x4 + u5.A = [0, 0, 0, 1, 0, 1, 0, 0] x6 = x5 + u6.A = [0, 1, 0, 1, 0, 0, 1, 0] 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 % M14 N

% M2 IN

% TM0 TM

%M0 Q %M1 %M3

% M13 N IN

% TM5 TM

%M14 Q %M15

MODE: TP TB: 1s TM.P: 15 MODIF: Y

MODE: TON TB: 1s TM.P: 3 MODIF: Y % M0

% Q2.0 % Q2.1 % Q2.2

% M3 N

% TM1 TM IN MODE: TP TB: 1s TM.P: 6 MODIF: Y

%M4 Q %M5 % M6 %M2 % M4

S
%M6 Q %M7

% M8 % M12 % M14 % M9 % Q2.3 % Q2.4 % Q2.5

% M4 N

% TM2 TM IN MODE: TP TB: 1s TM.P: 3 MODIF: Y

% M7 N IN

% TM3 TM

%M8 Q %M9 %M10 %M12 Q %M13

% M13 % M1 % M5 % M7 % M15

MODE: TP TB: 1s TM.P: 15 MODIF: Y % M10 N IN % TM4 TM

MODE: TP 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
1 2 3 4 5 6 7 8 9 OFF OFF OFF OFF ON ON ON ON OFF OFF OFF OFF ON OFF OFF OFF OFF OFF ON ON ON / OFF OFF OFF OFF OFF OFF ON ON ON ON ON ON OFF OFF ON ON OFF OFF OFF OFF OFF ON ON / OFF OFF OFF

Boto
OFF ON XX XX XX XX XX XX 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 0 0 1 0 A= 0 1 0 0 0 0 0 1 0 1 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0 0 1 1 0 0 0 0 0 0 0 0 1 0 0 0 4 0 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 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 0 1 0 0 0 1 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 0 4 0 0 0 0 0 0 0 1 0 0 0 0 1

101

Lmpada verde acesa (semforo)

p1

Solicitao de Passagem

t3 p2

Acionar boto

t2 v2

Apagar lmpada

t1 v1
Apagar lmpada

v3

Retirar discos de p2 Invalida todos os acionamentos do boto durante o ciclo

Inicia ciclo para lmp. piscar

p4

Lmpada verde apagada (semforo)

p3

t4

t5 v5

4
Nmero de vezes que a lmpada verde (p1) deve piscar

p5 t6

p6

Acender lmpada verde (semforo) Condio para mudana de sinal Lmpada vermelha acesa (passagem pedestre)

Acender lmpada amarela

Lmpada amarela acesa (semforo)

p9 p7 t7 v7
Condio para mudana de sinal

p10 t9 v9
Acender lmpada verde (passagem de pedestre)

Acender lmpada vermelha (semforo veculos)

Lmpada verde acesa (passagem de pedestre)

p11

Lmpada vermelha acesa (semforo)

p8
Acender lmpada verde (semforo veculos)

p15 t11 v11


Apagar lmpada

t8 v8

t10 v10
Apagar lmpada

Inicia ciclo para lmp. piscar

p12

Lmpada verde apagada (passagem)

t12 v12

4
Nmero de vezes que a lmpada verde (p1) deve piscar

p13 t13

p14

Acender lmpada verde (passagem)

Acender lmpada verde (passagem) e habilitar 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). 1,k 0, k = 1 = 5,k -1 , k = 2,3,4,5,7,8,9,10,12,13,... , k = 6,11,16,21,... 8,k -1 k = 1,2,3, k = 2,3,4...

2,k = 3,k,

1,k , k = 1 3,k = min{1,5( k -1 ) + 1 , 4,k } 1,k , 4,k = 2 , k , 1,k , 5, k = 2 , k , 6,k = 2,k,

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

104

7,k = 6,k, 8,k = 7,k, 9,k = 7,k,

k = 1,2,3, k = 1,2,3, 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 , 12,k = 11,k , 10,k , 13,k = 11,k , 14,k = 11,k, 15,k = 13,k, k = 1,6,11,16,21,... k = 2,3,4,5,7,8,9,10,12... k = 1,6,11,16,21,... k = 2,3,4,5,7,8,9,10,12... k = 1,2,3, 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 % M12 N

% M16

%M14

% M7 N IN

S
%M15

% TM4 TM

%M8 Q % M11 %M9 %M10 %M11

S
%M17

MODE: TP TB: 1s TM.P: 15 MODIF: Y % M10 IN % TM5 TM

R
% I1.1 P % I1.1 % M17 %M16

% S6 Q

S
%M14

R
%M15

MODE: TON TB: 1s TM.P: 11 MODIF: Y % M10 N IN % TM6 TM %M12 Q %M13

R
% I1.1 % M17 IN % TM0 TM % M2 Q %M1 %M3 %M2 %M17 % M0 % M14 % M4 % M6 % M8 % M12 % M9 % M4 N % TM3 TM IN MODE: TP TB: 1s TM.P: 3 MODIF: Y % M7 % M13 % M15 %M6 Q %M7 % M5 % M1 %M0

MODE: TP TB: 1s TM.P: 20 MODIF: Y % M3 IN % TM1 TM % S6 Q

MODE: TP TB: 1s TM.P: 3 MODIF: Y

% Q2.0

MODE: TON TB: 1s TM.P: 16 MODIF: Y % M3 N IN % TM2 TM

S
%M4 Q %M5

% Q2.1 % Q2.2

MODE: TP TB: 1s TM.P: 6 MODIF: Y

% Q2.3 % Q2.4

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 Bloco

Sensor 2

Figura 5.12: Esteira, posicionamento dos sensores. Tabela 5.3: Evoluo dos estados.
Estado dos componentes do experimento Esteira Sensor 1 Sensor 2
1 2 3 4 5 OFF ON - Avanar OFF ON - Retroceder OFF OFF OFF OFF OFF ON OFF OFF ON OFF OFF

t1
Desligar esteira

Acionar boto para ligar esteira

t10 p2 t2
Avanar esteira

Boto acionado

2 p1
Ligar esteira Esteira avanando

Nmero mximo de discos igual a 1

Esteira desligada

t11 t4 p4
Objeto na posio do sensor 2 Sensor 2 detecta objeto

Esteira retrocedendo objeto no sentido do sensor 1

Parar esteira

Esteira parada, objeto na posio do sensor 1

t7 p3 t3

p6

t6
Parar esteira

p7 v7= 10s t8

Parar esteira

Objeto na posio do sensor 1

Esteira parada, objeto na posio do sensor 2

p8 t9 t5
Sensor 1 detecta objeto

p5 v5= 5s
Reroceder esteira

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 1 0 0 0 A= 0 0 0 0 1 2

0 1 0 0 0 0 0 0 0 1 0

0 1 1 0 0 0 1 1 0 0 0

0 0 1 1 0 0 0 0 0 0 0

0 0 1 0 1 0 0 0 0 0 0

0 0 0 0 1 1 0 0 0 0 0

0 0 0 0 0 1 1 1 0 1 0

0 0 0 0 0 1 0 1 1 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 % I1.0 % M0 % M0 % M2 % I1.1

% M1

%M0 %M1

% M2 % M2

%M2 % I1.2 % Q2.0

R
% Q2.1 % Q2.0

R
%M4

S
% M4 % Q2.0

R
%M5 % M5 % TM1 TM Q % Q2.0

R
% M3 % M2 IN % M3 % TM0 TM IN MODE: TON TB: 1s TM.P: 5 MODIF: Y % Q2.0 Q

S
% Q2.1

MODE: TON TB: 1s TM.P: 10 MODIF: Y

S
%M4

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

Figura 5.15: Montagem das esteiras para o experimento. Tabela 5.4: Evoluo dos estados.
Esteira 1
1 2 3 4 5 6 7 8 OFF ON - Avanar ON - Avanar ON - Avanar OFF OFF OFF ON - Avanar

Estado dos componentes do experimento Sensor 1 Esteira 2 Sensor 2 Sensor 3


OFF OFF ON OFF ON ON ON OFF OFF ON - Avanar ON - Avanar OFF OFF ON - Avanar OFF ON - Avanar OFF OFF OFF ON ON OFF OFF OFF OFF OFF OFF OFF OFF OFF ON OFF

Condio
Esteiras desligadas Esteiras ligadas Primeiro passagem de bloco, esteira 2 liberada Esteira 2 parada com bloco na posio do sensor 2 Sensor 1 detecta objeto parando esteira 1 Esteira 2 avanando Esteira 2 parada com bloco na posio do sensor 3 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 detecta objeto

t2

Sensor 2 detecta objeto

t3
Objeto detectado pelo sensor 2 Esteira 2 avanando

Sensor 3 detecta objeto

t8

Esteira 1 avanando

Objeto detectado pelo sensor 1

Esteira 2 com objeto

p1 2 t4

p2
Parar esteira

p3

Objeto detectado pelo sensor 3

p6 t6

p7
Parar esteira 2

p9 t9
Parar esteira 2 tempo = 0s

Esteira 2 livre Esteira 1 parada com objeto na posio do sensor 1 Esteira 2 parada com objeto na posio do sensor 2 Esteira 2 parada com objeto na posio do sensor 3

p4 t5

p5 t7

p8 v7

p10 t10 v10

Ligar esteira 1

Ligar esteira 2

Ligar esteira 2

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: 0 1 0 1 0 0 1 2 1 0 A= 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 1 0 0 1 0 0 0 0 1 0 0 0 0 1 1 0 1 1 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 1 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
%M1

R
%M5 % M5 IN % TM1 TM %M6 Q

S
%M9

S
% I1.1 % I1.3 % M7 % M4 %M0

S
%M8

R
%M1

MODE: TON TB: 1s TM.P: 10 MODIF: Y % M0 % I1.1 % M8 % M1 % M3 % M6 % M9

S
%M4

R
%M2 %M6

R
% Q2.0

R R
%M7

S
%M8 % Q2.1

R
% M2 % TM0 TM IN MODE: TON TB: 1s TM.P: 5 MODIF: Y %M3 Q

S
%M4

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

Figura 5.18: Esteiras do stimo experimento. Tabela 5.5: Evoluo de estados do experimento
Esteira 1
1 2 3 4 5 6 7 8 9 10 11 12 13 OFF ON - Avanar ON - Avanar ON - Avanar ON - Avanar OFF OFF OFF OFF OFF OFF OFF ON - Avanar

Estado dos componentes do experimento Sensor 1 Esteira 2 Sensor 2 Sensor 3 Sensor 4


OFF OFF ON OFF OFF ON ON ON ON ON ON ON OFF OFF ON - Avanar ON - Avanar ON - Avanar OFF OFF ON - Avanar OFF ON - Retroceder OFF ON - Avanar OFF ON - Avanar OFF OFF OFF ON OFF OFF OFF OFF OFF OFF OFF OFF OFF OFF OFF OFF OFF ON ON OFF OFF OFF ON OFF OFF OFF OFF OFF OFF OFF OFF OFF OFF ON OFF OFF OFF ON OFF

Condio
Esteiras desligadas Esteiras ligadas Sensor 1 detecta objeto, mas esteira 2 est livre Sensor 2 detecta objeto, esteira 2 ocupada Esteira 2 parada com objeto na posio do sensor 3 Esteira 1 parada com objeto na posio do sensor 1 Esteira 2 avanando Esteira 2 parada com objeto na posio do sensor 4 Esteira 2 retrocedendo Esteira 2 parada com objeto na posio do sensor 3 Esteira 2 avanando Esteira 2 parada com objeto na posio do sensor 4 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 t2
Sensor 1 detecta objeto

t3

Sensor 2 detecta objeto

Sensor 3 detecta objeto

t6
Esteira 2 avanando

Sensor 4 detecta objeto

t9

Esteira 1 avanando

Objeto detectado pelo sensor 1

Esteira 2 com objeto

Objeto detectado pelo sensor 3

Objeto detectado pelo sensor 4

p1 2 t4

p2
Parar esteira 1

p3 t7

p6
Parar esteira 2

p7 t10
Parar esteira 2 Esteira 2 parada com objeto na posio do sensor 3 Esteira 2 parada com objeto na posio do sensor 4

p9

Contador

p12 2 p10
Retroceder esteira 2

t13
Objeto sai da esteira 2

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

p4 t5

p5 t8

p8 v8

v13

Avanar esteira 2

Ligar esteira 1

Avanar esteira 2

t11 v11

p13
Nmero de 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 1 1 0 A= 0 0 0 0 0 0 0 0 1 0 2 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 1 1 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 1 0 0 0 0 1 0 1 0 0 0 0 0 1 1 0 1 0 0 1 0 0 0 0 0 0 1 1 0 0 0 1 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 1 0 0 0 2 0 0 1 0 0 0 0 0 0 0 1 0 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 IN

S
%M1

% TM1 TM

%M6 Q

S
%M7

S
%M8

MODE: TON TB: 1s TM.P: 10 MODIF: Y % M0 % M10 % I1.1 % M1 % M3 % M6 % M7 % I1.2 R S % I1.4


C.P: 2

S
% M11 %M10

S
% I1.3 % M4 %M1

S
% Q2.0

R
%M2 %M7

R
%M6

% M8 % Q2.1

R
%M11

R
%M0

R
%M9

R
% I1.3 % M2 % TM0 TM IN MODE: TON TB: 1s TM.P: 5 MODIF: Y % I1.4 %M3 %M10

% M9 % C0 C

% Q2.2

R
%M3 Q

E % M11 D F

S
%M4

S
% M9

CU
MODIF: Y

CD

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 internet. ajuda de softwares de simulao de redes de Petri e (vi) desenvolvimento de ferramentas para a atualizao remota desse laboratrio via

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

Vous aimerez peut-être aussi