Você está na página 1de 112

UNIVERSIDADE DO ESTADO DE SANTA CATARINA BACHARELADO EM CINCIA DA COMPUTAO

Edgar Lus da Silva

SIMULADOR DE UMA CLULA DE MANUFATURA RECONFIGURVEL VIRTUAL

Marcelo da Silva Hounsell


Orientador

Joinville Junho, 2009

II

UNIVERSIDADE DO ESTADO DE SANTA CATARINA BACHARELADO EM CINCIA DA COMPUTAO

Edgar Lus da Silva

SIMULADOR DE UMA CLULA DE MANUFATURA RECONFIGURVEL VIRTUAL

Trabalho de concluso de curso submetido Universidade do Estado de Santa Catarina como parte dos requisitos para a obteno do grau de Bacharel em Cincia da Computao.

Marcelo da Silva Hounsell


Orientador

Joinville Junho, 2009

III

Simulador de uma Clula de Manufatura Reconfigurvel Virtual

Edgar Lus da Silva

Trabalho de concluso de curso submetido Universidade do Estado de Santa Catarina como parte dos requisitos para a obteno do grau de Bacharel em Cincia da Computao.

Banca Examinadora
___________________________________ Marcelo da Silva Hounsell, Dr (orientador)

___________________________________ Andr Bittencourt Leal, Doutor

___________________________________ Carlos Norberto Vetorazzi Jr., Mestre

___________________________________ Roberto Silvio Ubertino Rosso Jr., Doutor

IV

Dedico este trabalho aos meus pais por todo o amor, dedicao e incentivo.

AGRADECIMENTOS
Dedico meus sinceros agradecimentos: Ao professor Marcelo, orientador deste trabalho, por todo o auxilio e dedicao; Ao professor Andr, co-orientador deste trabalho, pelo auxilio no desenvolvimento dos supervisores necessrios para os testes da soluo desenvolvida; Aos meus pais por todo o emprenho, dedicao, compreenso e incentivo; Aos amigos que me auxiliaram e prestaram apoio durante toda a graduao e durante este trabalho em especfico; E a todos que direta ou indiretamente contriburam para a realizao deste trabalho.

VI

H mais pessoas que desistem do que pessoas que fracassam. (Henry Ford)

VII

RESUMO
Este trabalho apresenta o desenvolvimento de um sistema intitulado Clula Reconfigurvel Virtual (CeRV). A CeRV consiste de um sistema que permite a programao lgica de processos em uma clula de manufatura reconfigurvel virtual, em que possvel a visualizao de simulaes grficas atravs de uma interface 3D disponvel via Internet. Sendo assim, este trabalho apresenta fundamentos tericos necessrios ao entendimento de uma Clula de Manufatura Virtual, tais como fundamentos sobre Sistemas de Manufatura, Sistema a Eventos Discretos, Controle Supervisrio de Sistema a Eventos Discretos e Realidade Virtual. Na seqncia apresentando um levantamento bibliogrfico dos principais sistemas encontrados na literatura que simulam graficamente em 3D a sequencializao de eventos de Clulas de Manufatura Reais. A pesquisa literria, tanto da fundamentao terica quanto de Clulas de Manufatura Virtuais correlatas, permitiu o levantamento e anlise de: estratgias para o controle de processos virtuais e; estratgias de (re) configurao do layout da cena grfica e de equipamentos virtuais. A contribuio da CeRV para a literatura vai de encontro principalmente a composio reconfigurvel de layouts e programas de controle reais, ou seja, aspectos ainda pouco comuns na literatura. Desta forma, ao final deste trabalho apresentado o projeto de software UML (Unified Modeling Language) para a soluo que contempla estas funcionalidades e o processo de desenvolvimento desta soluo.

VIII

ABSTRACT
This work presents the development of a system called Virtual Reconfigurable Cell (ViRC). The ViRC consists of a system which allows the logic programming of Reconfigurable Virtual Manufacture Cell, in which is possible a view of graphics simulation throughout a 3D interface available on the internet. Afterwards, this work shows necessary backgrounds to Virtual Manufacture Cell understanding, as well backgrounds about Manufacture Systems, Discreet Events Systems, Supervisory Control of Discreet Events Systems and Virtual Reality. In order, it is presented a bibliographic search of mainly systems found in literature that simulate graphically in 3D the sequentiality events of Real Manufacture Cells. This researching, as the theory background as the correlate Virtual Manufacture Cells allowed the survey of strategies to the control of virtual process; and strategies of layout (re) configuration from graphic scene and virtual device. The ViRC contribution to the literature increases mainly the composition between layout reconfiguration and virtual device, or the otherwise, the not much common aspects in literature. Therefore, at the end of this work it is presented the UML (Unified Modeling Language) software project to the solution that contemplates that functionalities and the process of development of this solution.

IX

LISTA DE FIGURAS
Figura 1. Esquema de funcionamento da Clula Reconfigurvel Virtual (CeRV). ................. 20 Figura 2. Rede de Petri. ............................................................................................................ 25 Figura 3. Autmato Determinstico. ......................................................................................... 26 Figura 4. Supervisor Monoltico............................................................................................... 29 Figura 5. Autmato do subsistema esteira (G1) e autmato de restrio fsica (R1). .............. 29 Figura 6. Autmato da especificao E1. ................................................................................. 30 Figura 7. Parte do AFD para o supervisor. ............................................................................... 31 Figura 8. Diagrama Ladder. ..................................................................................................... 33 Figura 9. Funo STL.............................................................................................................. 34 Figura 10. Documento VRML. ................................................................................................ 37 Figura 11. Integrao VRML com applets Java....................................................................... 38 Figura 12. Cena grfica AManufacturing. ................................................................................ 39 Figura 13. Arquitetura do AManufacturing.............................................................................. 40 Figura 14. Cena grfica VFactory. ........................................................................................... 42 Figura 15. Clula de Manufatura Real...................................................................................... 42 Figura 16. Layout da cena grfica do Decision Support System. ............................................. 44 Figura 17. Rede de Petri representando a CMV da Figura 16.................................................. 45 Figura 18. Cena grfica do FlexMan. ....................................................................................... 47 Figura 19. Arquitetura FlexMan............................................................................................... 47 Figura 20. Operations Editor.................................................................................................... 48 Figura 21. Rule Editor. ............................................................................................................. 49 Figura 22. Modelo arquitetural do Manufacturing Engineering Environment. ....................... 51 Figura 23. Manufacturing Cell Simulation Environment. ........................................................ 52 Figura 24. Cena grfica da CMV.............................................................................................. 53 Figura 25. Clula de Manufatura Real...................................................................................... 57 Figura 26. Programao do bloco OB1 em Ladder.................................................................. 60 Figura 27. Programao do bloco FC3 em Ladder................................................................... 61 Figura 28. Programao do bloco FC3 em Ladder. ................................................................. 61 Figura 29. Diagrama de casos de uso UML. ............................................................................ 62 Figura 30. Diagrama de classes UML. ..................................................................................... 63 Figura 31. Diagrama de estados de navegao UML............................................................... 64 Figura 32. Interface de login. ................................................................................................... 64 Figura 33. Interface de cadastramento/configurao de projetos. ............................................ 65 Figura 34. Configurao de layout da cena grfica .................................................................. 66 Figura 35. Interface de configurao de trajetrias. ................................................................. 66 Figura 36. Interface de simulaes de sequencializaes virtuais............................................ 67 Figura 37: Interface da CeRV................................................................................................... 71 Figura 38: Diagrama de Classes UML desenvolvido............................................................... 74 Figura 39: Diagrama de Navegao desenvolvido. .................................................................. 76 Figura 40: Sequencializao de eventos na Classe Supervisor. ............................................... 78 Figura 41: Funo executeControlableEvent. .......................................................................... 80 Figura 42: Funo executeEvent............................................................................................... 81 Figura 43: Funo executeUncontrolableEvent. ...................................................................... 83 Figura 44: Cdigo desenvolvido Classe Esteira. ...................................................................... 85 Figura 45: Cdigo desenvolvido Classe Mesa Giratria. ......................................................... 85 Figura 46: Cdigo desenvolvido Classes Robo........................................................................ 87

Figura 47: Ilustrao do Funcionamento da Classe TrajetoriaRobo (Rob 1 e 2). .................. 87 Figura 48: Visualizao grfica Layout 1................................................................................. 89 Figura 49: Cdigo desenvolvido Layout 1. .............................................................................. 90 Figura 50: Visualizao grfica Layout 2. ................................................................................ 90 Figura 51: Cdigo desenvolvido Layout 2. .............................................................................. 91 Figura 52: Visualizao grfica Layout 3................................................................................. 92 Figura 53: Cdigo desenvolvido Layout 3. .............................................................................. 92 Figura 54: Erro de Sequencializao que pode ser observado na CeRV.................................. 95 Figura 55: Erro evento no controlvel no encontrado........................................................... 96

XI

LISTA DE TABELAS
Tabela 1. Filtros para controle supervisrio. ............................................................................ 31 Tabela 2. Comparativo entre linguagens CLPs. ....................................................................... 35 Tabela 3. Contribuies da literatura para o projeto CeRV. .................................................... 54 Tabela 4. Caractersticas funcionais das CMVs. ...................................................................... 56 Tabela 5. Eventos dos subsistemas fsicos da Clula de Manufatura Real. ............................. 59 Tabela 8: Eventos Utilizados no Supervisor / Layout 1. .......................................................... 93 Tabela 9: Eventos Utilizados no Supervisor / Layout 2. .......................................................... 94 Tabela 10: Eventos Utilizados no Supervisor / Layout 3. ........................................................ 94 Tabela 9: Peas X Threads X Frames Por Segundo (FPS). ..................................................... 97

XII

LISTA DE QUADROS
Quadro 1. Especificao Grail................................................................................................. 32 Quadro 2. Sequencializao possvel para o layout da Figura 37. .......................................... 72 Quadro 3. Erro visual apresentado pela CeRV. ....................................................................... 95 Quadro 4. Erro de evento no controlvel esperado. ............................................................... 96

XIII

LISTA DE ANEXOS
Anexo A. Supervisores. .......................................................................................................... 108

XIV

LISTA DE ABREVIATURAS E SIGLAS


AFD API CAD CeRV CMR CMV CLP ER FC1 FC2 FC3 FK FMS HTTP IEC LARVA MER OB1 PK RMS RV RVI RVNI SED UML Autmatos Finitos Determinsticos Application Programming Interface Computer Aided Design Clula Reconfigurvel Virtual Clula de Manufatura Real Clula de Manufatura Virtual Controlador Lgico Programvel Expresses Regulares Bloco do supervisor Bloco dos eventos Bloco das sadas Foreign Key Flexible Manufacturing System HyperText Transfer Protocol International Electrotechnical Commission LAboratrio de Realidade Virtual Aplicada Modelo de Entidades e Relacionamentos Bloco de gerenciamento Primary Key Reconfigurable Manufacturing System Realidade Virtual Realidade Virtual Imersiva Realidade Virtual No Imersiva Sistema a Eventos Discretos Unified Modeling Language

XV

VRML XML W3C

Virtual Reality Modeling Language Extensible Markup Language World Wide Web Consortium

XVI

SUMRIO
LISTA DE FIGURAS............................................................................................................ IX LISTA DE TABELAS........................................................................................................... XI LISTA DE QUADROS......................................................................................................... XII LISTA DE ANEXOS.......................................................................................................... XIII LISTA DE ABREVIATURAS E SIGLAS ........................................................................XIV 1 INTRODUO ................................................................................................................... 18 1.1. Objetivos............................................................................................................................ 20 1.1.1. Objetivo Geral ........................................................................................................ 20 1.1.2. Objetivos Especficos ............................................................................................. 20 1.1.2. Resultados Esperados ............................................................................................. 21 1.2. Estrutura do Trabalho de Concluso de Curso .................................................................. 21 2 FUNDAMENTAO TERICA...................................................................................... 22 2.1. Flexvel ou Reconfigurvel ? ......................................................................................... 22 2.2. Sistema a Eventos Discretos.............................................................................................. 23 2.2.1. Rede de Petri........................................................................................................... 24 2.2.1. Autmato Finito Determinstico............................................................................. 25 2.3. Controle Supervisrio de Sistema a Eventos Discretos .................................................... 26 2.3.1. Supervisor............................................................................................................... 28 2.3.1.1. Controle Monoltico ............................................................................................ 28 2.3.1. Sntese do Supervisor ............................................................................................. 29 2.3.2. Grail: Uma Ferramenta para Sntese do Supervisor ............................................... 30 2.3.3. Implementao do Supervisor ................................................................................ 32 2.3.3.1. Ladder.................................................................................................................. 32 2.3.3.2. STL-Statement List Programming ...................................................................... 34 2.3.3.3. Comparativo ........................................................................................................ 35 2.6. Realidade Virtual............................................................................................................... 36 2.7. VRML................................................................................................................................ 37 3 CLULAS DE MANUFATURA VIRTUAIS 3D ............................................................. 39 3.1. AManufacturing ................................................................................................................. 39 3.2. VFactory ............................................................................................................................ 42 3.3. Decision Support System ................................................................................................... 44 3.4. FlexMan............................................................................................................................. 46 3.5. Manufacturing Engineering Environment ......................................................................... 50 3.6. Consideraes Finais do Captulo ..................................................................................... 54 4 A SOLUO PROPOSTA................................................................................................. 57 4.1. Clula de Manufatura Real ................................................................................................ 57 4.1.1. Modelagem da Clula de Manufatura Real ............................................................ 58 4.1.2. Programao do CLP.............................................................................................. 60 4.2. Projeto da Clula Reconfigurvel de Manufatura ............................................................. 62 4.2.1. Diagrama de Classes............................................................................................... 62 4.2.1.1. Classe Controladora Sistema_CeRV ................................................................... 64 4.2.1.2. Classe Projetos..................................................................................................... 67 4.2.1.3. Classe Layout....................................................................................................... 68 4.2.1.4. Classe Supervisor ................................................................................................ 68 4.2.1.5. Classe Trajetria_Equipamentos ......................................................................... 69 4.2.1.6. Classe Eventos..................................................................................................... 69 4.2.1.7. Classe Equipamentos_Prottipos ........................................................................ 70

XVII

5 IMPLEMENTAO .......................................................................................................... 71 5.1. Diagrama de Classes Implementado ................................................................................. 73 5.1.1. Classe SistemaCeRV .............................................................................................. 76 5.1.2. Classe Supervisor ................................................................................................... 78 5.1.3. Classe Eventos........................................................................................................ 80 5.1.4. Classes Equipamentos Robo, Esteira e, Mesa Giratria...................................... 83 5.1.5. Classe Layout.......................................................................................................... 88 5.2. Resultados.......................................................................................................................... 93 6 CONCLUSO...................................................................................................................... 98 REFERNCIAS ................................................................................................................... 102 ANEXO A Supervisores.................................................................................................... 108

18

1 INTRODUO
A tarefa de configurao dos elementos de um sistema de manufatura uma tarefa rdua e fatigante que requer preciso e repetibilidade, contemplando ambientes insalubres com equipamentos de alto custo comercial. Segundo Jo et al., (1997) a necessidade de rpida reconfigurao e complexidade destes sistemas dificultam testes e anlises da configurao dos programas de controle. Entretanto, testes completos de programas de controle so essenciais para garantir a integridade e confiabilidade de Sistemas de Manufatura. Estes fatores motivam a utilizao da RV na simulao de configuraes de clulas de manufatura, atravs de ambientes seguros, onde erros so completamente administrveis no ocasionando danos a equipamentos, o que permite ganhos na produtividade. Alm do que, as simulaes das configuraes de elementos de um sistema de manufatura reconfigurvel atravs da RV trazem facilidade na verificao da sequencializao dos processos, em busca da realizao de tarefas individuais e conjuntas, podendo assim, serem utilizadas como ferramenta de visualizao do comportamento do sistema de manufatura. Alm disto, existe a vantagem de que todos os elementos de uma clula de trabalho virtual podem ser visualizados por ngulos ilimitados para verificao da conformidade dos parmetros do processo, garantindo a preciso da programao (Scott, 2004). Nos ltimos anos a tecnologia de Realidade Virtual (RV) vem ampliando seu papel na rea industrial (Redel et al., 2004), considerando todas as funcionalidades oferecidas pela tecnologia no auxlio resoluo de problemas. J em 1999, trabalhos como o de Freund et al., (1999) demonstravam os benefcios oferecidos pela composio entre tcnicas de RV e o controle verstil de robs e outros elementos em sistemas de manufatura, principalmente no que se refere s tcnicas de visualizao para a validao de modelos, como por exemplo, em um sistema de manufatura reconfigurvel. Outra importante vantagem para a utilizao de simulaes de RV na rea da manufatura se refere questo de possibilidades de danos tanto aos equipamentos quanto integridade fsica das pessoas envolvidas na atividade, caso esta viesse a ocorrer em um ambiente real (Diehl, 2004; Scott, 2004). Conceitualmente, Cioi et al., (2006) definem que o uso de Ambientes Virtuais no campo da manufatura, disponibiliza modelos que podem ser testados sobre diversas condies extremamente difceis ou que apresentam custos inviveis se executadas em um ambiente real. Assim, muitas empresas esto adotando a simulao atravs de modelos virtuais como uma soluo rpida, fcil e uma forma de baixo custo para o

19 desenvolvimento de produtos e processos de manufatura, pois problemas podem ser rapidamente identificados e corrigidos atravs de modelos virtuais de fcil modificao. Existem ainda outras vantagens em relao utilizao da RV em simulaes de processos de automao industrial (Gunnar, 2002): reduo de riscos tcnicos; promoo do entendimento comum pela visualizao; identificao de problemas crticos; criao de cenrios de trabalho variados; avaliao de solues propostas de forma analtica e visual; implementao de produtos virtuais; planejamento para a manufatura; treinamento personalizado; otimizao de ferramentas; contnuo acoplamento entre modelos CAD e programao de robs e; testes de impossibilidades. Vislumbrando este cenrio, este trabalho apresenta o processo de projeto e desenvolvimento de um simulador grfico da sequencializao dos processos dos equipamentos de um sistema de manufatura reconfigurvel, onde a visualizao da sequencializao pode assumir o importante papel de planejamento de configuraes, testes de solues (otimizadas ou no) ou at mesmo como ferramenta de auxlio na aprendizagem (educao e/ou treinamento). Conforme pode ser observado na Figura 1, este simulador grfico permite a simulao de processos na Clula Reconfigurvel de Manufatura (CeRV) atravs de um browser web, com os seguintes parmetros de entrada: (a) Supervisor: um arquivo texto que descreve a lgica de controle discreto para a clula de manufatura, de forma que a mesma se comporte conforme especificaes de projeto; (b) Descritor do Layout dos Equipamentos: responsvel por descrever o posicionamento e orientao dos equipamentos que compem a cena grfica, no caso, a Clula de Manufatura Virtual e; (c) Descritor da Configurao dos Movimentos: responsvel por descrever os pontos que compem a trajetria dos robs manipuladores virtuais (dispositivos com mais de um grau de liberdade). Cada rob virtual pode ter uma ou mais trajetrias dependendo da sequencializao que simulada. A cena grfica da CeRV contm diversos equipamentos virtuais, tais como: mesas, objetos, esteira, mesa giratria, sensores e robs. Um dos principais equipamentos virtuais da CeRV o rob manipulador Scorbot ER-4PC virtual, em desenvolvimento pelo grupo LARVA (LAboratrio de Realidade Virtual Aplicada). A descrio dos objetos 3D do Scorbot Virtual foi desenvolvida atravs das linguagens VRML e Java, esta ltima, utilizada para implementar funcionalidades que o VRML no possui, ou seja, interface com o usurio e flexibilidade para clculos matemticos.

20 Na literatura, podem ser encontrados alguns trabalhos de modelagem em VRML de equipamentos e sistemas de manufatura (Vermeulen et al., 1999; Haage e Nilsson, 1999).

Figura 1. Esquema de funcionamento da Clula Reconfigurvel Virtual (CeRV).

1.1. Objetivos

1.1.1. Objetivo Geral Desenvolver um simulador grfico 3D da sequencializao de processos em um sistema de manufatura reconfigurvel.

1.1.2. Objetivos Especficos (a) Entender Sistemas a Eventos Discretos (SEDs), Controle Supervisrio de SEDs e sequencializao de processos em Sistemas de Manufatura. (b) Investigar estratgias existentes para a simulao de sistemas de manufatura. (c) Definir uma arquitetura de Ambiente Virtual (AV) para composio de equipamentos (subsistemas) e a coordenao das operaes destes (sequencializao) em um sistema de manufatura reconfigurvel.

21 1.1.2. Resultados Esperados A CeRV deve permitir a configurao de diferentes cenrios de clulas de manufatura, executando vrias estratgias e/ou programaes distintas de sequenciamento e permitindo a visualizao de toda a movimentao de objetos pela clula.

1.2. Estrutura do Trabalho de Concluso de Curso


Este trabalho est estruturado como segue: O captulo 1 apresentou a introduo do trabalho. O captulo 2 dedicado ao estudo dos fundamentos sobre Sistemas de Manufatura, Sistema a Eventos Discretos, Controle Supervisrio de Sistema a Eventos Discretos e Realidade Virtual, conceitos estes que so de suma importncia para o entendimento dos trabalhos correlatos e do trabalho proposto. No captulo 3 sero levantados os trabalhos correlatos ao trabalho, isto , Clulas de Manufatura Virtuais 3D apresentadas na literatura e, atravs destes sistemas, foram identificadas estratgias de sequencializao e outras funcionalidades para o projeto da CeRV. No captulo 4 apresentado com detalhes a Clula de Manufatura Real e o projeto da CeRV, assim, so descritos detalhadamente todos os processos para o desenvolvimento do sistema. Desta forma, no captulo 5 apresentado o desenvolvimento, este, em conformidade com o projeto. E por fim, no captulo 6 so apresentadas as consideraes finais, evidenciando assim os resultados obtidos neste trabalho.

22

2 FUNDAMENTAO TERICA

2.1. Flexvel ou Reconfigurvel ?


Na literatura so usualmente encontradas duas classes de sistemas de manufatura que apresentam caractersticas relacionadas a este trabalho: os FMS (Flexible Manufacturing Systems) e os RMS (Reconfigurable Manufacturing Systems). Tanto FMS quanto RMS so classes de sistemas de manufatura que visam agilidade na produo de produtos em clulas de trabalho automatizadas, porm possuem diferentes paradigmas relacionados ao sistema de produo. O conceito de flexibilidade a base para o projeto e operao de um FMS. O termo flexibilidade para sistemas de manufatura tem sido convencionalmente associado com a habilidade de manufaturar uma considervel variedade de famlia de produtos (Buzacott, 1982; Zelenovic, 1982). Barad e Sipper (1988) definem que um FMS possui uma estrutura hierrquica que consiste de equipamentos (mquinas, robs, computadores e outros) e clulas (conjunto de equipamentos automatizados por um mecanismo lgico de controle). Logo, um FMS pode estar relacionado a uma ou mais clulas que permitam o processamento de diferentes famlias de produtos, estes produtos entram em contado com o sistema em unidades discretas de tempo podendo ser processados concorrentemente, compartilhando um nmero finito de recursos (no necessariamente todos os recursos do sistema) como mquinas processadoras, robs, esteiras e outros (Li et al., 2006). J o conceito de reconfigurao base para outra classe de sistemas de manufatura, os RMS. RMS um termo designado para sistemas que possibilitam rpidas alteraes (reconfiguraes) em termos de hardware e software, buscando a adaptao da capacidade e funcionalidade de produo, tendo em vista uma famlia de produtos especfica (Koren et al., 1999). A reconfigurao dos componentes de hardware se refere, por exemplo, ao layout da clula de trabalho, j a reconfigurao de software relaciona-se rpida alterao de programas lgicos de controle de equipamentos e da sequencializao dos processos. Os RMS contemplam uma pluralidade de equipamentos reconfigurveis, tais como mquinas processadoras, robs, esteiras e dispositivos controladores, que permitem rpidos ajustes para a manufatura de novos produtos de uma mesma famlia, estes sistemas so comumente restritos a uma nica clula de manufatura (Landers et al., 2001).

23 RMS e FMS possuem diferentes objetivos. FMS visa a manufatura de uma crescente variedade de famlias de produtos produzidos em um conjunto de clulas de trabalhos que interagem entre si. Enquanto que os RMS visam uma crescente velocidade de reconfigurao permitindo rpidas customizaes de produtos, so tambm flexveis, porm a um limitado escopo de produtos, logo sua flexibilidade confinada a produo de uma nica famlia de produtos. Esta uma flexibilidade de customizao ou caractersticas de customizao, que no comumente oferecida por um FMS. A Clula de Manufatura Virtual proposta neste trabalho (CeVR) implementar uma Clula de Manufatura Real da classe de sistemas reconfigurveis de manufatura, ou seja, os RMS. Embora esta clula no vise diretamente a produo de produtos, pois ser utilizada basicamente para fins educacionais, ela visa reconfigurao gil em termos de software e hardware e restrita a uma nica clula de manufatura (no um conjunto de clulas), fatores estes que mais a aproximam de um RMS. Uma das funcionalidades da CeRV est relacionada a rpida reconfigurao em um ambiente virtual tridimensional, podendo ser tambm utilizada como ferramenta de apoio tomada de decises quando da reconfigurao da Clula de Manufatura Real, dando velocidade ao processo de configurao. Na CeRV a configurao em termos de hardware est ligada possibilidade de fcil alterao do layout da cena grfica, embora no sejam dispositivos fsicos (dispositivos fsicos de uma clula real). Entretanto, em termos de software est relacionada a (re) configurao da trajetria dos equipamentos da cena grfica (robs, esteira, mesa giratria) e do controle supervisrio da clula. Este ltimo aspecto ser tratado com maiores detalhes na prxima seo, pois remete ao formalismo que ser empregado na Clula de Manufatura Virtual para o controle de eventos.

2.2. Sistema a Eventos Discretos


Sistema um elemento finito no universo, que interage com outros elementos atravs das fronteiras que o delimitam, este conceito tambm se aplica aos Sistemas a Eventos Discretos (SEDs), que percebem o mundo externo atravs da recepo de estmulos, denominados eventos (Cury, 2001). Neste contexto, evento conceituado como uma ocorrncia instantnea que causa a transio de um estado para outro, assim, um estado representado pela ao de um subsistema (equipamentos atuadores e sensores). A ocorrncia de um evento no sistema, geralmente causa uma mudana em um subsistema (elemento do sistema), perceptvel ou no a um observador externo, inclusive uma mudana em um

24 subsistema pode ocorrer por um evento interno do prprio sistema, tais como o fim de uma atividade ou temporizao. Segundo Cassandras e Lafortune (1999), quando o espao de estados de um sistema naturalmente descrito por um conjunto discreto como {0, 1, 2, ...}, e transies de estados so somente observadas em pontos discretos no tempo, associa-se estas transies de estados com eventos, logo trata-se de um SED. Desta forma, Sistema a Eventos Discretos um sistema dinmico que evolui de acordo com a ocorrncia abrupta de eventos fsicos, em intervalos de tempo em geral irregulares e desconhecidos (Cury, 2001). Uma srie de sistemas de automao podem ser tratados por SEDs, tais como sistemas de manufatura, protocolos de comunicao, sistemas automatizados de trfego, sistemas computacionais e de gerenciamento de dados (Montgomery, 2004). A tarefa de anlise destes sistemas pode ser auxiliada por Autmatos Finitos Determinsticos (AFD) e Redes de Petri. Estes paradigmas sero apresentados nas prximas subsees e, embora possam ser utilizados para o mesmo fim (neste caso anlise de sistemas de automao) possuem diferentes conceitos e aspectos.

2.2.1. Rede de Petri Rede de Petri uma ferramenta grfica e matemtica que se adapta bem a uma diversidade de aplicaes em que as noes de eventos e de evolues simultneas so importantes (Murata, 1989). So exemplos de aplicaes que utilizam este recurso: avaliao de desempenho, anlise e verificao formal em sistemas discretos, protocolos de comunicao, controle de oficinas de fabricao, entre outros. Uma Rede de Petri uma qudrupla definida por R = {P, T, Pre, Post}, onde (Cardoso e Valette, 1997): P um conjunto finito de lugares de dimenso n; T um conjunto finito de transies de dimenso m; Pre definido por P
X

T IN, ou seja, aplicao de

entrada (lugares precedentes ou incidncia anterior), com IN sendo o conjunto dos nmeros naturais e; Post definido por P incidncia posterior). Na Figura 2 pode-se observar uma qudrupla R = {P, T, Pre, Post}, com P = (p1, p2, p3), T = {a, b, c, d) e os valores das aplicaes de entrada e sada dados por: Pre(p2, c) =3, Pre(p1, b) = Pre(p2,a) = Pre(p3,d) = 1, Post(p2, d) = 3 e Post(p1,a) = Post(p2, b) = Post(p3, c) = 1.
X

T IN, ou seja, aplicao de sada (lugares seguintes ou

25

Figura 2. Rede de Petri. Na Figura 2 tambm so apresentadas marcaes (em p2), estas representam que a Rede de Petri uma Rede de Petri Marcada. Uma Rede de Petri dita marcada N, quando representada pela dupla N = {R, M}, onde R uma Rede de Petri e M a marcao inicial dada pela aplicao, em que M: P IN (Cardoso e Valette, 1997). M(p) o nmero de marcas ou fichas (do ingls, tokens) contidas no lugar p. A marcao M a distribuio das fichas nos lugares, sendo representada por um vetor coluna cuja dimenso o nmero de lugares e elementos M(p). Do exemplo da Figura 2, temos a Rede de Petri N, representada pelo vetor de marcas M = [0,3,0].

2.2.1. Autmato Finito Determinstico Um Autmato Finito Determinstico (AFD) uma mquina de estados finitos onde, para cada par de estados e smbolo de entrada, existe um prximo estado determinstico, ou seja, em um AFD sempre possvel determinar qual o estado para o qual o autmato transita aps a leitura de um smbolo qualquer, pois o retorno da funo de transio em um AFD um estado nico. Desta forma, diferentemente de uma Rede de Petri, um AFD no possibilita evoluo simultnea de estados. Segundo Arbib (1965) a representao formal de um AFD definida por uma quntupla G = (X, , f, x0, Xm), onde: X o conjunto finito de estados do autmato; o conjunto de smbolos (eventos) que definem o alfabeto; f: X x X a funo de transio, possivelmente parcial, ou seja, no h necessidade da funo ser definida para todo elemento de em cada estado de X;

x0 o estado inicial do autmato;

26 Xm o conjunto de estados marcados ou finais, Xm X. Um autmato pode ser representado graficamente como um grafo dirigido, onde os ns representam os estados e os arcos etiquetados representam as transies entre os estados. O estado inicial identificado atravs de uma seta apontando para ele e os estados finais so representados com crculos duplos. A Figura 3 um exemplo de um autmato determinstico apresentado por Cury (2001), cuja descrio formal a seguinte: X = {x, y, z}; = {a, b, g}; A funo de transio : f(x,a) = x, f(x,g) = z, f(y, a) = x, f(y, b) = y, f(z, b) = z e f(z, a) = f(z,b) = y;

x0 = {x} e;
Xm = {x, z}.

Figura 3. Autmato Determinstico.

2.3. Controle Supervisrio de Sistema a Eventos Discretos


A Teoria de Controle Supervisrio de Ramadge e Wonham (1989) tem sido desenvolvida nas ltimas duas dcadas como uma proposta de metodologia formal para a sntese automtica de controladores para SEDs, entre os quais se inclui uma considervel parte dos sistemas de manufatura. O principal objetivo do controle supervisrio a coordenao dos componentes do sistema (subsistemas) de forma que estes atendam a tarefas individuais e coletivas, garantido o bom funcionamento do sistema (Queiroz et al., 2001). A teoria de controle de SEDs proposta por (Ramadge e Wonham, 1989), tem por base a modelagem da planta (sistema em malha aberta) e das especificaes de controle atravs de autmatos. A planta a controlar modelada por um gerador G. O gerador um

27 autmato G = (, Q, , q0, Qm), onde um alfabeto de eventos, Q um conjunto de estados, q0 Q o estado inicial, Qm Q o conjunto de estados marcados ou finais e :
X

Q Q, a funo de transio, uma funo que geralmente se apresenta de forma parcial

definida em cada estado de Q para um subconjunto de . Seja * o conjunto de todas as cadeias finitas de , incluindo a cadeia nula . Ento, G caracterizado por dois subconjuntos de * chamados de comportamento gerado de G (todas as seqncias de eventos que a planta pode gerar), denotado por L(G), e de comportamento marcado de G (seqncias representando tarefas completas), denotado por Lm(G). Segundo Cury (2001), Os de eventos que compem os modelos individuais de cada subsistema fsico definem uma estrutura de controle , definida pelo particionamento de em: (a) eventos controlveis c, onde c , cuja ocorrncia de c pode ser desabilitada pela ao de controle, como por exemplo, o incio de uma atividade ou a parada de uma esteira e; (b) eventos no-controlveis u, onde u , cuja ocorrncia de u no pode ser desabilitada pela ao de controle, como por exemplo, a ativao de um sensor, ou seja:

= u c.
Essencial para a soluo do problema de controle supervisrio o conceito de controlabilidade de linguagens (Cury, 2001). Segundo Cury (2001), dada uma planta definida por um autmato gerador G, com comportamento (L(G), Lm(G)) e estrutura de controle , definidos sobre o conjunto de eventos e a linguagem E L(G), E dita ser controlvel com respeito a G, ou simplesmente controlvel, se:

u L .
Uma opo de controle aplicada ao sistema contm o conjunto ativo de eventos habilitado a ocorrer no sistema (Cury, 2001). Com a definio da controlabilidade de eventos, a estrutura de controle toma a forma:

onde a condio u, indica simplesmente que os eventos no controlveis no podem ser desabilitados, por ao de controle. O conceito de Linguagens Controlveis possibilita que problemas de controle sejam solucionados de forma sistemtica, garantindo assim que o supervisor obtido atender s

28 especificaes impostas pelo projetista. Nas prximas subsees ser detalhado o conceito de supervisor, e sero apresentados procedimentos relacionados sua obteno, isto , sntese e implementao em um CLP (Controlador Lgico Programvel).

2.3.1. Supervisor Um supervisor pode ser caracterizado por S = (E, ), onde E um Autmato Finito Determinstico definido por um quntupla E = (X, , f, x0, Xm), conforme apresentado na seo 2.2.1. O supervisor reconhece uma linguagem sobre o mesmo conjunto de eventos de uma dada planta G e um mapeamento entre o par (estados de E, eventos de ) e o conjunto {desabilitado, habilitado}. Segundo Costa (2005), o comportamento em malha fechada de um sistema controlado por um supervisor S = (E, ) representado por um autmato S/G, onde o comportamento de malha fechada, verificado pela linguagem L(S/G), permite a ocorrncia de uma cadeia de eventos se esta for aceita por G e E, e se cada elemento da cadeia estiver habilitado por . A superviso denotado por:

Pode-se dizer que um dado supervisor S no bloqueante, se para uma planta definida por G no ocorrer o bloqueio do sistema em malha fechada, ou seja, se:

2.3.1.1. Controle Monoltico

Conforme apresentado na seo anterior, o autmato G modela o comportamento do SED sem nenhuma ao de controle. Para a realizao do controle monoltico, o projetista de um SED visa encontrar um nico controlador a fim de habilitar ou desabilitar um conjunto de eventos pertencentes ao alfabeto . A ao de controle visa modificao do comportamento do sistema a fim de realizar certas limitaes fsicas, operacionais, de segurana e/ou lgicas e deve ser entendida como uma restrio do comportamento a um subconjunto de L(G) (Costa, 2005). Para alterar o comportamento introduz-se um supervisor, denominado S.

29 De acordo com a habilitao ou desabilitao de eventos, o supervisor S consegue moldar a linguagem L(G). O sistema dever acompanhar a ocorrncia dos eventos, onde para tal dever possuir um nico estado ativo do supervisor monoltico a cada instante de tempo e a sua evoluo dar-se- atravs da ocorrncia de eventos de forma seqencial (Costa, 2005). Na Figura 4 visualiza-se o funcionamento de um supervisor monoltico.

Figura 4. Controle Monoltico.

2.3.1. Sntese do Supervisor O processo de sntese de um supervisor monoltico deve obter um modelo para a planta (sistema a ser controlado) e um modelo global que rena todas as especificaes de controle (Curzel e Leal, 2007). O modelo para a planta obtido atravs da composio sncrona (Ramadge e Wonham, 1989) entre os autmatos dos subsistemas fsicos e as restries fsicas do sistema, ou seja, G = Gi || Gi+1 || ... || Gn || Ri || Ri+1 || ... || Rn. A Figura 5 ilustra um exemplo de autmato do subsistema fsico esteira (G1) e um autmato de restrio da planta (R1) para a Clula de Manufatura Real da Figura 25. Segundo Curzel e Leal (2007), para o autmato G1, que modela o funcionamento da esteira, o estado inicial 0 representa a esteira desligada e o estado 1 representa a esteira ligada. Nota-se aqui que os eventos E_liga (liga a esteira) e E_desl (desliga a esteira) so eventos controlveis e que, portanto, podem ser desabilitados pelo supervisor. J a restrio fsica R1 indica que o sensor da esteira s pode ser ativado quando a esteira est ligada.

Figura 5. Autmato do subsistema esteira (G1) e autmato de restrio fsica (R1). Fonte: Curzel e Leal (2007).

30

A especificao global E, obtida a partir das especificaes individuais Ei, isto , E = Ei || Ei+1 || ... || En. A Figura 6 ilustra o autmato da especificao E1 referente ao subsistema fsico esteira da Clula de Manufatura Real. Segundo Curzel e Leal (2007), a especificao E1 indica que a esteira pode ser ligada somente quando o sensor est desativado e deve ser desligada apenas quando o sensor est ativado.

Figura 6. Autmato da especificao E1. Portanto, a linguagem alvo K obtida a partir da sincronizao de G e E, fazendo-se K = G || E. Por fim, calcula-se a mxima linguagem controlvel contida em K, denotada como SupC(G, K). Todo o processo de sntese do supervisor, descrito acima, pode ser realizado com o auxilio da ferramenta Grail, que ser descrita em detalhes na prxima seo.

2.3.2. Grail: Uma Ferramenta para Sntese do Supervisor O Grail uma ferramenta de computao simblica para pesquisa e aplicaes que pode envolver Autmatos Finitos Determinsticos (AFD). A programao em Grail permite duas vises (Cury, 2006): usurio e programador. Na viso usurio, o Grail visto como uma biblioteca de funes denominadas filtros, acessveis em linha de comando. Na viso de programador, possvel escrever programas aplicativos prprios usando as classes oferecidas e, adicionar funcionalidades e classes distribuio original. Os filtros do Grail so acessveis em linha de comando. Utiliza-se qualquer janela do terminal do sistema operacional no qual o Grail est instalado para acess-los. Os objetos a serem utilizados como parmetros podem ser direcionados a partir do teclado ou redirecionados a partir de arquivos (Raymond, 1999). Alguns dos filtros para controle supervisrio de SEDs implementadas no Grail esto na Tabela 1.

31

Tabela 1. Filtros para Controle Supervisrio. A Figura 7 apresenta um exemplo de um AFD Grail que ilustra parte do supervisor da Clula de Manufatura Real apresentada na Figura 24. O exemplo contempla os seguintes equipamentos: esteira; sensor da esteira e; rob. As transies entre os estados representam os eventos: E_liga (liga a esteira); S_liga (chegada de pea numa posio especfica da esteira, onde se tem um sensor ligado); E_desl (desliga a esteira) e; T_M (inicia a operao do rob).

Figura 7. Parte do AFD para o supervisor. Fonte: Curzel e Leal (2006).

Conforme ilustrado na Figura 7, no incio, o supervisor encontra-se no estado 0, onde o evento E_liga est habilitado e, por ser um evento controlvel, gerado (executado) pelo prprio programa do CLP. No estado 1, o supervisor fica aguardando a ocorrncia do evento S_liga, que por ser um evento no controlvel, gerado espontaneamente pela dinmica da planta e, o supervisor apenas transita de estado na sua ocorrncia. No estado 2, o supervisor desliga a esteira e gera o evento E_desl, que um evento controlvel. Por fim, no estado 3 o supervisor gera o evento controlvel T_M, que ativa a trajetria do rob.

32 No Grail o formato de especificao de um AFD consiste de uma lista de instrues que podem ser armazenadas em um arquivo ASCII, onde cada instruo uma tripla composta por um estado origem, uma etiqueta de transio e um estado destino (Cury, 2006). Para o exemplo da Figura 7, tem-se o seguinte arquivo no formato Grail (Quadro 1):
(START) |- 0 0 E_liga 1 1 S_liga 2 2 E_desl 3 3 T_M 4 0 -| (FINAL)

Quadro 1: Especificao Grail.

Segundo Raymond (1999), os estados no Grail so representados por nmeros naturais. Os estados iniciais e finais so indicados por pseudo-etiquetas, que so os smbolos especiais |- e -|, (START) e (FINAL) so pseudo-estados. O alfabeto dado pelos smbolos que aparecem nas etiquetas de transio, com exceo das pseudo-etiquetas. Na prxima seo sero apresentadas ferramentas que possibilitam a implementao do supervisor em um CLP aps sua sntese.

2.3.3. Implementao do Supervisor Nesta seo sero apresentadas duas linguagens de CLPs, so estas: Ladder e STL. Estas linguagens sero apresentadas pois possibilitam a implementao de um supervisor projetado atravs da Teoria de Controle Supervisrio e sintetizado com o auxilio da ferramenta Grail, alm do mais, ambas so padronizadas internacionalmente pelo IEC (International Electrotechnical Commission). Ao final da apresentao das linguagens ser feito um breve comparativo entre as duas abordagens (Ladder e STL). 2.3.3.1. Ladder Ladder uma linguagem lgica definida pelo padro internacional IEC 1131 (Erickson, 1996). Pode ser definida como uma linguagem grfica que permite transladar com relativa facilidade diagramas eltricos baseados em rels1 para CLPs.
Rel um dispositivo eletro-mecnico, com inmeras aplicaes possveis em comutao (acionamento/desligamento) de contatos eltricos, comumente utilizado para ligar ou desligar dispositivos eltricos e eletrnicos (Erickson, 1996).
1

33 A lgica deve ser programada de forma que as instrues sejam energizadas a partir de um caminho de corrente entre duas barras (Figura 8), atravs de contatos ou blocos de funes interligados. Entretanto, o fluxo de corrente eltrica simulado em uma lgica, flui somente no sentido da barra de energia da esquerda para a direita, diferentemente dos esquemas eltricos reais. Os trs smbolos lgicos bsicos da linguagem Ladder so: -| |-: representa um contato normalmente aberto; -| / |-: representa um contato normalmente fechado e; -( )-: representa uma sada. Onde, uma sada energizada (acionada) sempre que uma entrada da esquerda para a direita fecha um determinado contato, fator que permite o controle de eventos. Existem duas classes de instrues lgicas Ladder (Erickson, 1996): instrues de entrada e instrues de sada. Instrues de entrada so instrues de contato, logo, estas instrues so condies para que sejam geradas sadas. Uma instruo de sada sempre ocorre no lado estremo direito do diagrama. Na Figura 8 exibido parte de um diagrama de Ladder correspondente ao supervisor da Clula de Manufatura Real mostrado na Figura 7.

Figura 8. Diagrama Ladder. Conforme ilustrado na Figura 8, no incio, o supervisor encontra-se no estado 0, onde o evento E_liga est habilitado e, por ser um evento controlvel, gerado (executado) pelo prprio programa do CLP. No estado 1, o supervisor fica aguardando a ocorrncia do

34 evento S_liga, que por ser um evento no controlvel, gerado espontaneamente pela dinmica da planta e, o supervisor apenas transita de estado na sua ocorrncia. No estado 2, o supervisor desliga a esteira e gera o evento E_desl, que um evento controlvel.

2.3.3.2. STL-Statement List Programming STL (Statement List Programming) uma linguagem lgica orientada a sentenas textuais definida pelo padro internacional IEC 1131 (Berguer, 2003). A linguagem STL permite ao programador (usurio) solucionar tarefas de controle utilizando instrues que descrevam operaes desejadas. Estes programas so construdos atravs de linhas de instrues atravs da utilizao de alguns importantes elementos, estes podem ser vistos com maiores detalhes em (Festo, 1999; Berguer, 2003). Para definir um programa de controle, nem todos os elementos possveis so requeridos, e a forma com que eles so combinados influencia diretamente no comportamento do programa de controle. Na Figura 9 exibida parte de uma funo STL correspondente ao supervisor da Clula de Manufatura Real mostrado na Figura 7.

Figura 9. Funo STL.

35

Conforme ilustrado na Figura 9, no incio, o supervisor encontra-se no estado 0, onde o evento E_liga est habilitado (esteira ligada) e, por ser um evento controlvel, gerado (executado) pelo prprio programa do CLP. No estado 1, o supervisor fica aguardando a ocorrncia do evento S_liga (sensor liga), que por ser um evento no controlvel, gerado espontaneamente pela dinmica da planta e, o supervisor apenas transita de estado na sua ocorrncia. No estado 2, o supervisor desliga a esteira e gera o evento E_desl, que um evento controlvel.

2.3.3.3. Comparativo Na Tabela 2 proposto um comparativo entre as linguagens para programao de CLPs apresentadas nas subsees anteriores (Ladder e STL). Este comparativo atenta para: apresentao forma de apresentao da linguagem, esta pode ser grfica ou textual; nvel de abstrao pode ser alto ou baixo, e est diretamente relacionado com o formato de apresentao da linguagem; metfora abstrao formal que rege a linguagem e; difuso na indstria classificao quanto a difuso na indstria (muito ou pouco difundida).
ITEM/ LINGUAGEM apresentao nvel de abstrao metfora difuso na industria Ladder Grfica Alto Lgica de Rels Muito difundida STL Textual Baixo Programao Estrutural Pouco difundida

Tabela 2. Comparativo entre linguagens CLPs. Analisando a Tabela 2, pode-se observar que a linguagem Ladder muito utilizada na indstria, isto se d devido a sua forma de apresentao, que facilita a abstrao do usurio devido a sua forma de apresentao, ou seja, lgica de rels, fator que facilita a analogia com circuitos eletromecnicos reais. J a linguagem STL apresenta um baixo nvel de abstrao, podendo ser visualizada somente de forma textual. Apesar de a linguagem STL ser mais abrangente e flexvel se comparado com a linguagem Ladder, pouco difundida na indstria, e isto se deve principalmente a sua complexidade de uso.

36

2.6. Realidade Virtual


A complexidade de se configurar os elementos de um Sistema Reconfigurvel de Manufatura um fator que motiva a utilizao de tcnicas de Realidade Virtual (RV) na simulao de configuraes, atravs de Ambientes Virtuais tridimensionais. A RV uma tcnica avanada de interface do usurio com o computador, que permite realizar imerso, navegao e interao em um ambiente sinttico tridimensional gerado por computador, utilizando canais multi-sensoriais (Burdea e Coiffet, 1994). Segundo Netto et al. (2002), a idia de imerso est ligada com o sentimento de fazer parte do ambiente e, alm do fator visual, dispositivos como retorno auditivo, tato e fora de reao da pessoa e dos movimentos da cabea so tambm importantes. A interao est relacionada com a capacidade do computador de detectar as entradas do usurio e modificar instantaneamente o mundo virtual e as aes sobre ele (capacidade reativa). E por sua vez, o envolvimento est ligado com o grau de motivao para o engajamento de uma pessoa com determinada atividade. Esta tcnica vem sendo aplicada em diversas reas do conhecimento, dependendo da aplicao sua utilizao implica na economia de tempo e dinheiro das empresas, pessoas e de qualquer um que queira simular processos. Os sistemas de RV podem ser imersivos (RVI) e no imersivos (RVNI) e o que os diferenciam o hardware. Os sistemas de RVI so baseados no uso de capacetes, luvas e salas de projeo, enquanto que os RVNI so baseados no uso de monitores (Netto et al. 2002). Para simulaes de clulas de manufatura, comum a utilizao de tcnicas de RVNI (J et al. 1997; Lin e Fu et al. 2001; Bannerjee e Cecil, 2003; Bogdan et al. 2004 e; outros) por fatores que esto diretamente ligados a custos. Possuem aspectos facilitadores para os desenvolvedores (no h a necessidade de desenvolver drivers especiais nem programao muito sofisticada e complexa) bem como para os usurios (podem experimentar Ambientes Virtuais com configuraes de hardware bem menores do que outras aplicaes e em qualquer lugar). A principal vantagem da RVNI para a CeRV a navegabilidade 3D e a possibilidade de disponibilizar o sistema na Internet. Para que estes aspectos sejam contemplados na CeRV ser utilizada a linguagem de descrio VRML (Virtual Reality Modeling Language) na construo e visualizao do Ambiente Virtual. Esta ser descrita em detalhes na prxima seo.

37

2.7. VRML
A linguagem VRML um padro (ISO 14772-1: 1997) que permite a representao de objetos tridimensionais atravs de geometrias primitivas, transformaes hierrquicas, fontes de luz, pontos de viso, animaes, mapeamentos de texturas, entre outros (Carrey e Bell, 1997). uma linguagem independente de plataforma, ou seja, pode ser visualizada tanto atravs de computadores pessoais quanto de computadores de alto desempenho. Esta linguagem possibilita representar ambientes tridimensionais interativos na Internet. Os arquivos VRML possuem extenso .wrl, e para que sejam visualizados atravs de um browser preciso que o navegador seja configurado adicionando-se um plug-in, assim ele poder interpretar o contedo do arquivo que est recebendo. A estrutura de um arquivo VRML formada basicamente pelo cabealho que o identifica como VRML e os ns onde so descritos os modelos grficos e animaes. O cabealho obrigatrio e identifica a verso da linguagem. Os ns so estruturas sintticas utilizadas para a representao de objetos, cenrios e animaes no mundo virtual. O arquivo VRML pode contar tambm com comentrios, um comentrio de linha iniciado pelo smbolo #. A Figura 10 apresenta um exemplo de cdigo VRML, onde a primeira linha o cabealho e depois descrito um n shape, que contm a descrio de objetos modelados. Como ns internos ao n shape tem-se o n appearance e o n geometry. O n appearance tem a funo de descrever a aparncia do objeto a ele associado, o campo material define os atributos de aparncia do material que compe o objeto, no caso da Figura 10 aplicada a cor verde definida atravs do parmetro diffuseColor. O n geometry define a forma tridimensional do objeto, normalmente usa-se uma das primitivas geomtricas (cubo, esfera e outros). Conforme a Figura 10 um cubo e instanciado atravs da primitiva Box, que define uma caixa regular de quatro lados de tamanho 2 (dois) atravz do parmetro size.

Figura 10. Documento VRML.

38 Uma funcionalidade da linguagem VRML que permite a prototipao (EXTERNPROTO), ou seja, um mecanismo que permite que um conjunto original de ns seja estendido a partir de um outro arquivo. Este recurso muito semelhante s definies de classes em programao orientada a objetos, e permite fazer o encapsulamento e a parametrizao de formas geomtricas, atributos, comportamentos, ou at mesmo combinaes destes. O VRML 2.0 permite a criao de Ambientes Virtuais dinmicos onde eventos podem ser gerenciados. Por exemplo, disparar uma ao quando determinado objeto se aproxima de um ponto. Estes eventos so mecanismos que possibilitam a troca de mensagem entre objetos envolvendo um par de ns que atuam conjuntamente e um route (rota) de comunicao. Quando definido um route entre dois ns, o primeiro deles poder enviar mensagens, atravs de um acionador de sada (eventOut) a um segundo n, que receber mensagens atravs de um acionador de entrada (eventIn), ou seja eventos (event), podendo-se inclusive encadear rotas. Os eventos so geralmente acionados por sensores (sensors). Sensores em VRML so ns que tm a capacidade de gerar eventos atravs de estmulos do cenrio virtual ou ao passar de um determinado tempo (Curzel et al., 2007). A linguagem VRML tambm permite integrao com aplicaes JAVA (applets), onde, possvel extrair toda a dinmica do sistema para uma aplicao independente e robusta, utilizando o motor de execuo VRML apenas para visualizar o mundo virtual 3D. Na Figura 11 ilustrado o relacionamento entre applets JAVA, EAI (External Authoring Interface) e a cena VRML. O EAI uma API que possibilita que applets JAVA interajam com cenas VRML. Outros elementos que compem a interface entre VRML e JAVA so os Scripts Nodes e Routes (Brutzman, 1998). Desta forma, os scripts nodes encapsulam as funcionalidades JAVA e os routes possibilitam a ligao lgica para a transmisso de eventos.

Figura 11. Integrao VRML com applets Java.

39

3 CLULAS DE MANUFATURA VIRTUAIS 3D


Foram encontrados alguns trabalhos relacionados ao desenvolvimento de Clulas de Manufatura Virtuais (CMVs). Nos itens a seguir sero apresentados alguns destes sistemas, atentando principalmente para os seguintes aspectos: arquitetura do sistema; elementos simulados no ambiente virtual; forma de programao dos processos virtuais; agilidade na tarefa de configurao do sistema; uso de tcnicas de RV nestas simulaes (RVI ou RVNI) e; tratamento de erros durante a simulao. As CMVs que sero apresentadas neste captulo, seguem uma ordem cronolgica abordando desde o trabalho Jo et al. (1997) at os dias atuais, onde apresentado o trabalho mais completo e atual da pesquisa (Inukai et al. 2007). Foram selecionadas estas referncias pois, so oriundas do meio acadmico e enfatizam a arquitetura de software dos sistemas, assim como os aspectos referentes a sequencializao de processos em CMVs 3D, ou seja, foco principal deste trabalho.

3.1. AManufacturing
AManufacturing uma CMV desenvolvida por Jo et al. (1997). Esta clula permite simulaes grficas baseadas na visualizao de processos/operaes que podem ser efetuados em uma Clula de Manufatura Real (CMR), permitindo assim a busca por erros de sequencializao nos processos relativos ao programa de controle (sequenciamento), antes que estes sejam aplicados ao sistema real. A Figura 12 apresenta a cena grfica da CMV.

Figura 12. Cena grfica AManufacturing. Fonte: Jo et al., (1997).

40 A CMV AManufacturing simula equipamentos como robs; esteiras; prensas mecnicas e; outros. Porm a cena grfica no permite reconfigurao do layout, sendo necessrias modificaes na estrutura grfica do software para que este seja alterado. A arquitetura da CMR (Real Mode) e virtual (Virtual Mode) exibida na Figura 13. A sequencializao de processos da CMR feita por um programa de controle dedicado escrito na linguagem C++ (MV Controller) que executa em um dispositivo de hardware MVME167 (VxWorks). Desta forma, o programa de controle e a configurao das operaes robticas so isolados em classes de C++ (Vision e Robot). Esta arquitetura possibilita que o programa de controle escrito para a CMR (escrito em C++) seja previamente executado (testado) sobre a CMV por intermdio das classes Real Driver e Virtual Driver (que promovem a comunicao entre os dispositivos fsicos e virtuais).

Figura 13. Arquitetura do AManufacturing. Fonte: Jot et al., (1997). Na CMR os eventos de robs e de outros equipamentos, so acionados pelo programa de controle (MV Controller). Conforme Figura 13, os equipamentos mecnicos so controlados atravs de atuadores/sensores (Actuator/Sensor). Porm, na CMV os equipamentos reais, so substitudos por equipamentos virtuais que se comunicam com o programa de controle (real) atravs das classes Real e Virtual Driver, como j mencionado. As operaes referentes sequencializao dos processos, executadas na CMV atravs do

41 Virtual Driver (emite e retorna sinais traduzidos da cena grfica para o equipamento real de controle, e vice-versa) sero relacionadas a seguir: Virtual Robot Interface O Virtual Driver envia sinais de controle para o rob atravs de uma porta de comunicao (Comunication Gateway), ento esta porta de comunicao retorna o reconhecimento dos sinais pelo rob; Virtual Vision Interface O Virtual Driver emite sinais (requisies) para o Vision Simulator Gateway. Este ento retorna dados gerados atravs da localizao dos equipamentos na cena grfica, para uso do programa de controle; Virtual Sensor Interface Sensores, so simulados atravs de operaes do gerenciador de sinais/tarefas e uma memria global (Global Memory). Existe um gerenciador de sinais que responsvel por atualizar continuamente o status de sinais (entradas advindas da cena grfica) na memria global. Ento, o programa de controle atua na cena grfica de acordo com os sinais coletados da memria global pelo Virtual Driver e; Virtual Actuator Interface Para simular a atuao de outros equipamentos na CMV (esteiras e prensas) sinais (sadas geradas pelo programa de controle) so enviados para o Comunication Gateway atravs do Virtual Driver, acionando eventos na cena grfica. O AManufacturing um sistema de cdigo proprietrio que proporciona a visualizao de simulaes atravs de um monitor comum (Desktop) mas, no entanto depende de outros hardwares especficos que constituem a clula de trabalho. Esta clula permite que o usurio navegue pelo Ambiente Virtual, onde, possvel que ele visualize processos por diversos ngulos. As principais vantagens deste sistema remetem flexibilidade de utilizao de novos programas de controle tanto na CMV (para testes e visualizaes da qualidade da sequencializao) quanto na CMR, e o uso de dispositivo e programas de controle reais na sequencializao de processos na CMV o que aumenta o realismo nas simulaes visuais de sequencializao. So alguns dos fatores limitantes deste sistema: a no possibilidade de reconfigurao do layout da cena grfica; no existe deteco de coliso na cena grfica; no existem mecanismos de anlise da pega de objetos pelos dispositivos de manipulao tais como robs; o sistema no detecta erros na sequencializao; depende de hardware

42 especficos na comunicao entre o programa de controle da CMR e a CMV e; a forma de configurao da trajetria dos equipamentos (robs e maquinas) no levada em considerao, assim, distanciando-se da forma de configurao real.

3.2. VFactory
VFactory uma CMV desenvolvida por Lin e Fu (2001). Este sistema atua como uma ferramenta de anlise do escalonamento de processos, para posterior uso de uma CMR. Conforme pode ser observado na Figura 14, a CMV VFactory contempla 4 equipamentos: dois tipos de robs (Adept e CRS), uma mquina processadora e uma esteira. Esta CMV no permite a reconfigurao do layout, pois se baseia na configurao original da CMR (Figura 15) que possui layout fixo, logo as diferentes configuraes possveis atravs da CMV refletem somente a sequencializao dos processos com base no layout fixo.

Figura 14. Cena grfica VFactory. Fonte: Lin e Fu (2001).

Figura 15. Clula de Manufatura Real. Fonte: Lin e Fu (2001).

43 A arquitetura do sistema VFactory (VF) definida por, VF = [VA, LB, SP], onde VA, LB e SP, so denotados por Autmato Virtual, Biblioteca Virtual e Especificaes. O Autmato Virtual uma 7-upla responsvel pelo armazenamento de informaes referentes a sequencializao dos processos na CMV, definida por VA = {Q, I, p, qo, W, O, }, onde: Q o nmero finito de estados (processos), so exemplos de estados: rob ligado; rob desligado; esteira ligada e; outros; I um conjunto finito de entradas, por exemplo, fim de curso de um rob; p o conjunto finito das funes dos prximos estados, definido por p = [PX, PQ], onde PX e PQ so denotados por variveis dos recursos e variveis do sistema. Variveis dos recursos podem ser caracterizadas pelas mudanas nos recursos ou dados como, por exemplo, a movimentao de um rob na CMV. Variveis do sistema so as variveis que representam o estado atual do sistema, constantemente atualizado durante a simulao; qo o estado inicial; W o conjunto de estados finais; O o conjunto finito de sadas, O PX, e; a funo de sadas onde, : Q X I O.

A Biblioteca Virtual definida como um gerenciador de informaes que explora e extrai informaes de vrios recursos como, por exemplo, estatsticas, equaes do Autmato Virtual, gerador de simulaes e dados histricos ou temporais. As Especificaes representam os servios que podem ser providos pela CMV. O modelo de sequencializao de processos presente nesta CMV apresenta um formalismo na definio do sistema, que modelado atravs de Redes de Petri. Esta modelagem proporciona flexibilidade quanto aplicao de novas configuraes de sequenciamento. A CMV VFactory no incorpora mecanismos de deteco de coliso na cena grfica e de anlise de pega de objetos virtuais, pois preocupa-se fundamentalmente com a anlise da sequencializao. Falhas na sequencializao de processos que possam vir a ocorrer no sistema so percebidas somente de forma visual, sem que haja auxlio especfico do sistema (onde o sistema detecta erros e informa aos usurios). Nesta CMV os processos so visualizados atravs da interface 3D Wonderwave InTouch com tcnicas de RVNI, onde possvel interagir com a sequencializao dos processos atravs de representaes grficas (Figura 14).

44

3.3. Decision Support System


Decision Support System uma CMV (Bannerjee e Cecil, 2003) que utiliza tcnicas de RV na visualizao-simulao da sequencializao de processos, auxiliando na avaliao de programas de controle. Logo, esta CMV foi desenvolvida para interpretar informaes de controle (sequencializao de processos) de uma CMR e simul-las visualmente em um Ambiente Virtual, informaes estas representadas por Redes de Petri. A CMV Decision Support System apresenta um layout no reconfigurvel (o layout esttico da CMV exibido na Figura 16), porm permite modificao do relacionamento entre os equipamentos da clula e, do sequenciamento de processos de manufatura.

Figura 16. Layout da cena grfica do Decision Support System. Fonte: Bannerjee e Cecil (2003). Como pode ser observado na Figura 16, so equipamentos simulados nesta CMV: duas esteiras (conveyor 1 e 2); duas mquinas (machine 1 e 2); um rob (robot) e; um objeto que ser processado (part). Estes equipamentos efetuam operaes bsicas de manufatura tais como carregamento, descarregamento, movimentao, armazenamento e processos. A sequencializao dos processos desta clula baseia-se fundamentalmente em um grafo utilizado para a representao de Redes de Petri. Portanto, a representao da sequencializao atravs de Redes de Petri definida pela qudrupla {P, T, I, O}, onde: P o conjunto de estados (processos);

45 T o conjunto de transies e; I e O so o conjunto de funes entre P e T, representando as entradas e sadas respectivamente.

Figura 17. Rede de Petri representando a CMV da Figura 16. Fonte: Bannerjee & Cecil (2003).

Neste modelo, embora no seja demonstrado na qudrupla, o tempo um fator importante e existe um delay (D) (atraso fixo ou varivel) de uma operao para outra. O

46 modelo de Redes de Petri para a CMV (Figura 16) conjuntamente com a descrio de todos os lugares (Pi), transies (Ti) e delays (Di), exibido na Figura 17. As simulaes 3D na CMV Decision Support System so efetuadas atravs de uma base de dados que armazena todas as possveis informaes do sequenciamento dos processos, inclusive tempos. Estas informaes so geradas com base no grafo de Rede de Petri atravs de um conversor (tradutor) que faz a converso do formato de dados. Quando do resgate das informaes para a simulao, se algum sinal no reconhecido ou deveria existir e no detectado (deadlock) o sistema envia uma mensagem de erro para a interface. A anlise dos resultados da sequencializao dos processos atravs do Decision Support System, pode levar a necessidade de otimizao de rotas. Possveis modificaes levam a reconfigurao da sequencializao (Rede de Petri Figura 17), porm, devido a uma limitao do sistema, no possvel a reconfigurao de rotas relacionadas a modificao do layout da cena grfica (Figura 16). Um aspecto importante deste sistema o formalismo utilizado para representar as informaes relativas a simulao da sequencializao dos processos atravz do uso de Redes de Petri. Alguns dos aspectos limitantes observados so: o sistema no faz a deteco de erros de sequencializao; no existem mecanismos de deteco de coliso na cena grfica; no existe anlise de pega dos objetos virtuais (preocupao somente com a visualizao da sequencializao) e; no possvel reconfigurar o layout da cena grfica.

3.4. FlexMan
O sistema FlexMan (ver Figura 18) uma CMV reconfigurvel desenvolvida por Bogdan et al. (2004) que possibilita o planejamento estratgico e escalonamento de tarefas atravs de simulaes visuais em um Ambiente Virtual, obtendo-se um nvel de configurao prximo ao de uma CMR. A arquitetura do sistema baseada no modelo cliente/servidor, proporcionando comunicao entre servidores atravs do protocolo TCP/IP, onde todos os dados transferidos e armazenados (tais como configuraes de sequencializao, movimentao de equipamentos, layout da clula, etc.) so padronizados com o formato XML2 (eXtensible Markup Language),

XML uma linguagem de marcao desenvolvida pela W3C (World Wide Web Consortium) que permite o armazenamento, recuperao e transmisso de dados de forma simples e estruturada (Dcio, 2000).

47 o que proporciona a execuo/visualizao de simulaes (em modo cliente) remotamente. O esquema pode ser visto na Figura 19.

Figura 18. Cena grfica do FlexMan. Fonte: Bogdan et al., 2004.

Figura 19. Arquitetura FlexMan. Fonte: Bogdan et al., 2004.

Conforme a Figura 19, o lado cliente da arquitetura composto por trs partes: Construtor de Cena - possibilita a construo do layout da cena virtual atravs do posicionamento, orientao e escala dos equipamentos utilizando uma tcnica pick-and-place, fator que facilita a criao do layout da cena.

48 Planejador de Trajetria Web aps a configurao do layout da cena, so configuradas as funes e comportamentos de cada equipamento, natureza e durao de cada operao, e condies iniciais do sistema. Isto possvel atravs do Operations Editor (Figura 20). Aps a definio das tarefas, ativado um algoritmo em background que possibilita a execuo dos movimentos configurados. Providenciadas as operaes e comportamentos dos equipamentos, o ltimo passo na configurao desta CMV modelar o sequenciamento e comportamento das operaes. O responsvel por esta funo no construtor de cena intitulado Rule Editor (Figura 21). Nesta CMV a sequencializao criada de forma no convencional atravs de regras tais como IF-THEN, que descrevem a sequencializao de operaes. Cliente de Visualizao - proporciona a visualizao 3D dos processos de manufatura.

Figura 20. Operations Editor. Fonte: Bogdan et al., 2004.

No FlexMan as trajetrias dos equipamentos que possuem somente um grau de liberdade so geradas facilmente durante a configurao do sistema, mas trajetrias de recursos com dois ou mais um grau de liberdade (exemplo rob), so planejadas com um componente deste software (Web Trajectory Planner). Assim, os usurios movimentam o rob de uma posio para outra, adicionando pontos a uma lista, conjuntamente com tempos de trajetria, e ao final requisitam ao servidor o resultado da trajetria desejada.

49

Figura 21. Rule Editor. Fonte: Bogdan et al., 2004.

O lado servidor da arquitetura tambm composto por trs partes: LEONARDO ferramenta de planejamento da sequencializao de processos; aceita requisies do Construtor de Cena (lado cliente), e faz o planejamento de trajetrias via uma matriz algbrica que possibilita a simulao de FMSs dinmicos armazenando-as no banco de dados para uso do FMS Controller. Isto possvel, pois a sequencializao de processos gerada no lado cliente facilmente convertida para uma matriz atravs de um conversor (faz a converso dos dados em XML para matrizes). As matrizes descrevem conexes lgicas sobre os equipamentos e operaes, em outras palavras, elas representam as configuraes de IF-THEN de regras geradas no Construtor de Cena (mais especificamente no Rule Editor). Estas matrizes so: Sr: matriz de recurso de liberao (equipamentos); Sv: matriz de operaes iniciais; Sy: matriz de sadas; Fi: matriz de equipamentos requeridos, estas matrizes so descritas com maiores detalhes em (Lewis et al., 1998). FMS Controller utiliza as matrizes geradas pelo componente LEONARDO que armazenam dados referentes aos equipamentos, comportamentos e trajetrias para gerar a sequencializao dos processos que sero exibidos no

50 lado cliente. Este componente atua como um interpretador das informaes geradas pelo componente LEONARDO; Base de Dados - armazena as matrizes de FMS dinmicos geradas pelo componente LEONARDO e que sero utilizadas no FMS Controller (interpretador). Todos estes componentes do FlexMan, tanto no lado cliente quanto no lado servidor, so implementados atravs de applets JAVA inseridos em uma pgina HTML, conjuntamente com um plug-in VRML que promove a visualizao em 3D e transportados atravs do padro XML. O layout desta CMV utiliza modelos predefinidos pelo sistema (prottipos) dos objetos como: robs; mquinas; esteiras e; reas de armazenamento. Estes objetos ficam armazenados na base de dados do servidor, e a partir das configuraes (efetuadas diretamente na interface Web do sistema) da cena por parte dos usurios, so designadas as posies, escalas e orientaes destes modelos. A possibilidade de se utilizar variados equipamentos, permitindo a simulao da fabricao flexvel de diversas famlias de produtos conduz este sistema a classe de FMSs. Esta CMV permite a configurao de novas simulaes com agilidade, pois possibilita a reconfigurao de novos layouts de cena (atravs da interface Web), trajetria e comportamento dos equipamentos da clula e sequencializao dos processos. O sistema FlexMan um sistema de cdigo proprietrio e faz uso de tcnicas de RVNI, onde o ambiente se apresenta aos usurios atravs de um browser. No que se refere ao tratamento de erros, o FlexMan faz uso das matrizes geradas pelo componente LEONARDO para localizar regras/configuraes geradas que tragam situaes de conflitos e deadlocks contidos no modelo, assim erros de configurao so corrigidos em tempo real. Este sistema no possui mecanismos de deteco de coliso entre os elementos na cena grfica e anlise de pega de objetos virtuais, portanto estes erros no so tratados. Outros fatores que limitam este ambiente, se referem ao fato de que a sequencializao dos processos configurada atravs da interface no prprio Ambiente Virtual (forma no convencional), distanciando-se da forma de configurao da CMR (por exemplo: Ladder, Redes de Petri e outros).

3.5. Manufacturing Engineering Environment


Manufacturing Engineering Environment um ambiente integrado de engenharia desenvolvido por Inukai et al., (2007). Este sistema consiste de dois sub-ambientes

51 integrados: Manufacturing Cell Simulation Environment e; Distributed Simulated Environment. O Manufacturing Cell Simulation Environment usado para criar e avaliar lgicas de controle escritas na linguagem Ladder misturando equipamentos reais (controladores) com modelos virtuais, permitindo que os programas lgicos de controle sejam testados na CMV antes da aplicao CMR. J o sub-ambiente Distributed Simulated Environment, tem como objetivo conectar o Manufacturing Cell Simulation Environment e outros sistemas de manufatura no estgio de design. Simulao Distribuda (do ingls, Distributed Simulation) definida como a execuo da simulao enquanto diversos equipamentos diferentes so conectados e sincronizados, ou seja, controladores reais e virtuais so sincronizados com a execuo de processos da cena grfica. A Figura 22 apresenta uma viso geral da arquitetura do Manufacturing Engineering Environment, onde Emulator (da legenda, 2), so aplicativos que imitam os equipamentos reais, Simulator (da legenda, 1) so aplicativos que estendem as funes dos equipamentos reais e por fim Real (da legenda, 3), so os equipamentos reais.

Figura 22. Modelo arquitetural do Manufacturing Engineering Environment. Fonte. Inukai et al., 2007.

O Manufacturing Cell Simulation Environment composto por quatro principais funes:

52 (a) funo de simulao: usada para simular o comportamento da CMV utilizando dados do mundo real gerados pelos controladores reais, e dados dos emuladores dos controladores reais. (b) funo de ligao: usada para estabelecer uma ligao lgica entre dados do mundo real e dados de simulaes virtuais que so modelados na CMV (que implementa a funo de simulao). (c) funo de transmisso: encarregada de transmitir sinais de dados entre o mundo virtual e real, sem considerar diferenas entre dados que venham de controladores reais ou emuladores. (d) funo de interface de rede: responsvel por conectar controladores reais e emuladores. No que diz respeito implementao destas funes, existe um simulador virtual de manufatura para executar a funo (a), e um sistema Soft-wiring para executar a funo de ligao (b) sem que seja necessrio hardware especfico. Assim, a CMV simula comportamentos mecnicos de acordo com os sinais fornecidos pelo sistema Soft-wiring. As funes (c) e (d) so executadas pela camada ORiN. A ORiN (Open Resource interface for the Network) um middle-ware baseado na tecnologia orientada a objetos. A Figura 23 exibe uma viso geral da Manufacturing Cell Simulation Environment.

Figura 23. Manufacturing Cell Simulation Environment. Fonte. Inukai et al., 2007.

53

O componente responsvel pela sequencializao dos processos e aquisio dos movimentos de equipamentos com mais de um grau de liberdade da CMV o Soft-wiring. Existem muitos tipos de dados originados dos controladores reais (CLPs) como, por exemplo, inteiros, reais, caracteres e outros. Para simular adequadamente a sequencializao de processos e a movimentao dos equipamentos (com mais de um grau de liberdade) na CMV utilizando sinais e dados do mundo real, necessrio transformar os dados do mundo real para dados que possam ser interpretados pela CMV. Ento, o sistema Soft-wiring realiza a ligao lgica entre dados do mundo real e a simulao virtual na CMV. Para isto, o sistema (Soft-wiring) precisa executar as seguintes funes: (a) funo de ligao lgica (por rede) entre o mundo real e virtual. (b) funo de execuo de converses de dados, converso de tipos de dados, maceramento de dados, clculo de dados e outros. (c) funo de filtro de dados, caso haja limitao de tamanho devido a largura de banda, por exemplo. (d) funo de gravao de dados convertidos. Aps a converso e gravao de dados (pelo Soft-wiring), estes so utilizados pelo simulador da clula virtual na sequencializao dos processos de equipamento. So equipamentos desta CMV (Figura 24): um rob (robot); uma esteira (conveyor); uma estao de teste (tester) e; uma rea de armazenamento (palettizer).

Figura 24. Cena grfica da CMV.

54 Fonte. Inukai et al., 2007. A principal vantagem deste sistema a possibilidade de validao e verificao de programas Ladder em uma CMV utilizando CLPs reais, antes que os programas de controle sejam aplicados CMR. Isto permite uma avaliao da sequencializao lgica de forma gil, sem comprometer a CMR. Esta avaliao facilitada, pois no so necessrias converses no programa de controle para que este seja aplicado a CMR ou vice-versa. Porm este sistema possui algumas limitaes, tais como: no possui mecanismos de reconfigurao do layout da cena grfica (layout fixo); no possui deteco de coliso na cena grfica; no faz uma verificao consistente da manipulao de objetos virtuais (ex: pega de objetos pelo rob) e; o sistema no detecta erros na cena grfica. Esta CMV foi desenvolvida atravs de tcnicas de RVNI com as linguagens C/C++ e VBasic e uma aplicao de cdigo proprietrio.

3.6. Consideraes Finais do Captulo


Os trabalhos relacionados nas subsees anteriores apresentam funcionalidades e estratgias que so utilizadas no projeto da CeRV. Estas contribuies so listadas na Tabela 3. Itens
a b c d

Funcionalidades
Modelo de sequencializao Configurao de trajetria de equipamentos Reconfigurao de layout Validao de programas de controle

Contribuies da Literatura
Manufacturing Engineering Environment (Inukai et al., 2007) FlexMan (Bogdan et al., 2004) FlexMan (Bogdan et al., 2004) VFactory (Lin & Fu, 2001) FlexMan (Bogdan et al., 2004)

Tabela 3. Contribuies da literatura para o projeto CeRV. Nos pargrafos a seguir sero exemplificados os itens apresentados na Tabela 3, e que sero reaproveitados no projeto da CeRV: (a) No que se refere ao modelo de sequencializao, o trabalho de Inukai et al., (2007) apresenta uma camada de software que precede o simulador grfico 3D (soft-wiring). Esta camada faz a converso de informaes de mais baixo nvel (linguagens de CLPs

55 Ladder) para informaes de mais alto nvel, de forma que estas possam ser interpretadas pela cena grfica 3D permitindo a sequencializao virtual de processos; (b) Quanto configurao da trajetria virtual de equipamentos que apresentam mais do que um grau de liberdade (por exemplo, robs manipuladores). Em Bogdan et al., (2004) estes equipamentos so configurados em um software que compe a CMV (Web Trajectory Planer). Atravs deste software so adicionados pontos de trajetria aos equipamentos, e estes so armazenados em um Banco de Dados. A utilizao do Banco de Dados facilita a leitura das informaes posteriormente pela CMV, onde alm da sequencializao ser simulada tambm a movimentao adequada dos equipamentos que compem a clula; (c) No que se refere reconfigurao do layout, o nico trabalho encontrado que dispe deste recurso, o trabalho de Bogdan et al., (2004). Neste a configurao do layout (localizao dos equipamentos, escala, orientao) tambm armazenado em um banco de dados, o que facilita a recuperao dos dados posteriormente pela cena grfica e; (d) A validao de programas de controle em CMVs atravs da contemplao de simulaes grficas e feedback de erros do sistema, aspecto contemplado nos trabalhos de Lin & Fu, (1997) e Bogdan et al., (2004) uma funcionalidade desejvel tanto para aplicaes da indstria quanto para aplicaes educacionais. Na Tabela 4, apresentam-se as funcionalidades relacionadas a cada uma das CMVs levantadas nas subsees anteriores, conjuntamente com as funcionalidades que compem o projeto da CeRV. O projeto da CeRV permiti a visualizao da sequencializao dos processos e validao de programas de controle reais (supervisores) antes que estes sejam aplicados Clula de Manufatura Real, projetados atravs do formalismo de autmatos. Desta forma possvel tanto a alterao dos layouts que so utilizados na cena grfica, quanto a reconfigurao da lgica de controle, aspecto que nenhuma das CMVs levantadas (Tabela 4) tratou conjuntamente. Quanto deteco de possveis erros de sequencializao que possam vir a ocorrer em uma Clula de Manufatura Virtual, o trabalho de Bogdan et al. (2004) trata alguns desses, e no possibilita que as simulaes sejam executadas com erros, logo o sistema os corrige automaticamente. A correo automtica de erros no desejvel para a CeRV, pois interessante que os usurios (estudantes e profissionais de engenharia) visualizem, percebam e entendam os erros de sequencializao dos processos, fator este que auxilia na aprendizagem. Desta forma, o projeto do sistema CeRV prev a deteco de erros alertando os usurios,

56 aspecto importante tambm para aplicaes da rea industrial (por exemplo: validao de programas de controle).

Decision Suport System

Man. Eng. Environment

(Bannerjee & Cecil, 2003)

(Bogdan et al., 2004)

(Inukai et al., 2007)

AManufacturing

(Lin & Fu, 2001)

(Jo et al., 1997)

VFactory

FlaxMan

Itens
a b c e f

Funcionalidades
Programa de controle reconfigurvel Exibe feedback de deteco de erros Uso linguagem de alto nvel Permite alterao do layout Permite alterao da trajetria de equipamentos Total de Funcionalidades

Tabela 4. Caractersticas funcionais das CMVs.

CeRV

57

4 A SOLUO PROPOSTA
Neste captulo apresentada a soluo que, alm de comportar boas prticas apontadas na literatura, e j aplicadas na sequencializao de eventos em Clulas de Manufatura Virtuais, incorpora aspectos ainda pouco comuns, ou seja, a composio reconfigurvel entre layouts da planta grfica com programas de controle supervisrio variados, dentre outras funcionalidades. Desta forma, este captulo apresentar um projeto de software UML (Unified Modeling Language) que exprime a soluo proposta. A notao UML adotada neste trabalho pode ser consultada em (Wazlawick, 2004). Em um primeiro momento do projeto, ser detalhada a Clula de Manufatura Real que foi tomada como base para a construo da CeRV, facilitando assim o entendimento do projeto da CeRV, que apresentado na seqncia.

4.1. Clula de Manufatura Real


A Clula de Manufatura Real que motiva o sistema proposto (CeRV), uma clula de manufatura didtica, composta por dois robs (Eshed Robotech Scorbot ER4pc), uma mesa giratria (Intelitek Rotary Table), uma estao teste (sensor fotoeltrico tipo dak on / dark light), um sensor de presena (sensor fotoeltrico), uma esteira transportadora (Intelitek Conveyor ASSV), uma mesa de experimentos (Intelitek Experiment Table) que serve de depsito para peas rejeitadas e uma rea de depsito de peas prontas. Na Figura 25, apresentada a Clula de Manufatura Real ( esquerda), e um diagrama esquemtico do layout em questo (a direita).

Figura 25. Clula de Manufatura Real. Fonte: Adaptado de (Curzel et al., 2006).

58

Segundo Curzel et al. (2006), uma possvel seqncia de funcionamento da Clula de Manufatura Real, para o layout apresentado na Figura 25, inicia com a ligao do motor da esteira de forma a transportar peas at o rob 1. Assim, quando uma pea detectada pelo sensor fotoeltrico posicionado no final da esteira, esta deve ser desligada e o rob 1 deve levar a pea at a mesa giratria. O rob 1 coloca a pea na mesa giratria (posio P1) e volta sua posio inicial, gerando ento um sinal para o CLP informando o final de sua operao. A mesa d um giro de 90, levando a pea at a posio P2, onde a mesma sofrer um processo de manufatura (simulado). Ao final da operao de manufatura a mesa gira novamente at a posio P3 onde a pea passa por um teste que indica se a mesma esta boa ou ruim. Atualmente, a indicao de pea boa ou ruim feita atravs de uma tarja preta fixada na pea e o elemento de teste um sensor fotoeltrico tipo dark on / dark light. As peas com tarja preta so consideradas com defeito e as demais so consideradas peas boas. Ao final do teste a mesa d mais um giro de 90, levando a pea at a posio P4, onde o rob 2 far o transporte para o local adequado, de acordo com o tipo de pea: peas boas devem ser transportadas para a rea de depsito de peas prontas e peas ruins devem ser transportadas para a mesa de rejeito, tomando-se o cuidado de colocar somente uma pea em cada uma das 5 posies disponveis nesta mesa. A indicao de presena de pea na mesa de rejeito feita por intermdio de chaves de fim de curso existentes em cada uma das posies da mesa. Deseja-se que as peas com defeito passem novamente pelo processo de manufatura e de teste, de forma a corrigir o defeito. Assim, o rob 1 deve transportar tais peas da mesa de rejeito para a posio P1 da mesa giratria. Esta e outras possveis sequencializaes so controladas pelo supervisor. O supervisor obtido atravs da aplicao da Teoria de Controle Supervisrio e implementado no CLP de forma a garantir que a planta (clula) apresente o comportamento desejado/especificado. Estes aspectos sero tratados em detalhes nas prximas subsees. Uma verso animada desta clula para a sequencializao apresentada anteriormente pode ser encontrada em (LARVA, 2007) e o funcionamento, modelagem e controle desta clula so detalhados em (Curzel et al. 2007).

4.1.1. Modelagem da Clula de Manufatura Real

59 A modelagem da clula e a resoluo de problemas de controle so feitos seguindo a Teoria de Controle Supervisrio de Sistemas a Eventos Discretos. Nesta abordagem, o

controle feito por um autmato denominado supervisor, o qual restringe o comportamento do sistema fsico de forma a satisfazer um conjunto de especificaes (Curzel e Leal, 2006). O alfabeto de eventos que compe os modelos individuais de cada subsistema fsico (equipamentos) dividido em eventos controlveis e no controlveis. A Tabela 5 indica os eventos associados a cada subsistema fsico da clula, conjuntamente com o tipo (controlvel ou no controlvel) e a descrio do evento. Este conjunto de eventos tambm utilizado na CeRV, uma vez que ela far uso do programa de controle supervisrio obtido atravs da Teoria do Controle Supervisrio. SUBSISTEMA EVENTO CLASSIFICAO Esteira E_liga Controlvel E_desl Controlvel Sensor da S_liga No controlvel esteira S_desl No controlvel Mesa giratria Rob 1 I_giro F_giro T_M F_rb1 Estao de teste I_teste T_OK T_NOK Rob 2 T_R Controlvel No controlvel Controlvel No controlvel Controlvel No controlvel No controlvel Controlvel DESCRIO Liga a esteira. Desliga a esteira. Chegada de pea na esteira. Sada de pea da esteira. Liga a mesa giratria. Fim de giro da mesa. Inicia a operao do rob 1. Fim de operao do rob 1. Inicio do teste de pea. Resultado teste pea boa. Resultado do teste pea ruim Incio de operao do rob 2 para retirada de pea ruim. Incio de operao do rob 2 para retirada de pea boa. Fim de operao do rob 2

T_S

Controlvel

F_rb2

No controlvel

Tabela 5. Eventos dos subsistemas fsicos da Clula de Manufatura Real. Fonte: Estendido de (Curzel e Leal, 2006). Na Clula de Manufatura Real, pode-se utilizar um nico supervisor para controlar a clula, ou seja, um supervisor monoltico, este obtido atravs de um processo de sntese de

60 todos os requisitos de controle e que ser implementado no CLP de forma a garantir todas as especificaes de controle (Curzel e Leal, 2006). Este processo de sntese do supervisor realizado com o auxlio da ferramenta Grail (Raymond e Derick, 1995), e pode ser vislumbrado com maiores detalhes em (Curzel e Leal, 2006).

4.1.2. Programao do CLP O supervisor sintetizado da Clula de Manufatura Real implementado em um CLP Siemens da famlia Step7_300. Na programao deste CLP utilizada a linguagem Ladder, gerada a partir do arquivo do supervisor no formato do Grail. Para a implementao, so criados quatro blocos de programa de forma a facilitar a organizao: Bloco de gerenciamento (OB1); Bloco do supervisor (FC1); Bloco dos eventos (FC2) e; Bloco das sadas (FC3). O Bloco OB1 necessrio no CLP utilizado, pois, em sua rotina de execuo definida a seqncia em que os blocos de funo (FCs) sero executados, conforme a Figura 26. O bloco FC1 a prpria implementao do supervisor monoltico. Assim, cada estado do supervisor corresponde a uma memria interna do CLP, que ativada ou desativada de acordo com a seqncia do supervisor. Parte do supervisor e sua respectiva explicao de funcionamento foram apresentadas na subseo 2.5.2 (Figura 7 do Captulo 2).

Figura 26. Programao do bloco OB1 em Ladder. Fonte: Curzel e Leal (2006). No bloco FC3, so definidas as aes (sadas) do supervisor, de acordo com o estado definido no bloco FC1. Assim, conforme visto na Figura 7, quando o supervisor estiver no

61 estado S0, a sada que ativa o motor da esteira ser acionada, conforme pode ser observado na Figura 27 (Network 1). Este comando envia um sinal eltrico para a sada fsica do CLP, de forma a acionar/desativar os equipamentos.

Figura 27. Programao do bloco FC3 em Ladder. Fonte: Curzel e Leal (2006).

J no bloco FC2, so ativados ou desativados os eventos de acordo com sinais de entrada e sada do CLP. Assim, ao ser ativado o motor da esteira, o evento E_liga ser ativado (Tabela 5), indicando para o supervisor (bloco FC1) que o motor da esteira foi ativado. Ao mesmo tempo, o evento que informava ao supervisor que o motor da esteira havia sido desligado desativado, conforme Figura 28.

Figura 28. Programao do bloco FC3 em Ladder. Fonte: Curzel e Leal (2006). A programao do CLP nos estados do supervisor em que existem eventos controlveis e no controlveis, d-se prioridade no tratamento dos no controlveis, pois

62 estes so espontaneamente gerados em funo da dinmica da planta e devem ser tratados imediatamente aps a sua ocorrncia.

4.2. Projeto da Clula Reconfigurvel de Manufatura


Nesta seo apresentado o projeto da CeRV de forma a simular o comportamento da Clula de Manufatura Real no que se refere ao controle de eventos e ao comportamento de equipamentos (subsistemas fsicos). O projeto da CeRV possibilita a interao do usurio na criao/configurao de projetos (que contemplem layouts e programas de controle variados) e a visualizao de simulaes atravs de um mundo virtual VRML. O relacionamento do usurio com o sistema acontecera por intermdio de uma classe principal denominada SistemaCeRV. Na Figura 29 apresentado um diagrama de casos de uso UML que ilustra todas as possveis interaes do usurio com a CeRV.

Figura 29. Diagrama de casos de uso UML. Alm da classe Sistema_CeRV que faz interface entre o usurio e o sistema, a CeRV possui ainda seis classes internas: Projetos; Supervisor, Layout, Trajetoria_Equipamentos; Eventos e; Equipamentos_Prototipos. Estas classes so responsveis pela sequencializao de eventos atravs do gerenciamento de parmetros de entrada passados pelo usurio a partir da classe de interface Sistema_CeRV. Todas estas classes sero detalhadas na prxima seo.

4.2.1. Diagrama de Classes Os trs principais parmetros de entrada passados pelo usurio quando este interage com a classe controladora Sistema_CeRV so: layout este parmetro corresponde aos dados

63 de cada equipamento que constitui a cena grfica, assim como sua respectiva localizao e orientao; supervisor arquivo no formato Grail que permite o controle de eventos durante a simulao da sequencializao de eventos e; trajetria de equipamentos este parmetro corresponde aos dados de trajetria dos equipamentos que constituem o layout da cena grfica, por exemplo, robs e esteiras. As informaes de configurao passadas pelos usurios e outras informaes gerais do sistema, como por exemplo, tabela de eventos (da Clula de Manufatura Real, Tabela 5), so armazenadas em um banco de dados, ou seja, cada tabela do banco de dados corresponde a uma das classes do sistema, o que auxilia na disposio das informaes. A Figura 30 ilustra o diagrama de classes UML da CeRV, o relacionamento destas classes exprime analogamente o relacionamento de cada uma das tabelas do banco de dados.

Figura 30. Diagrama de classes UML. Conforme pode ser observado na Figura 30, a esquerda do diagrama tem-se as classes internados do sistema, e a direita tem-se a classe controladora Sistema_CeRV que faz

64 interface entre o usurio e o sistema. Nas subsees a seguir ser feito o detalhamento de cada uma das classes do diagrama.

4.2.1.1. Classe Controladora Sistema_CeRV A classe controladora Sistema_CeRV responsvel por toda a interao do usurio com o sistema, assim, esta classe composta tanto por interfaces VRML como por interfaces Java, que podem ser integradas facilmente. Para melhor exemplificar a interao do usurio com o sistema, a Figura 31 ilustra o diagrama de estados de navegao UML da classe controladora Sistema_CeRV.

Figura 31. Diagrama de estados de navegao UML. Conforme pode ser observado no diagrama da Figura 31, a primeira interao do usurio com o sistema consiste de uma interface de login (Figura 32), onde o usurio poder acessar um projeto previamente cadastrado, ou criar um novo projeto.

Figura 32. Interface de login.

65

Caso o usurio selecione a opo Cadastrar novo projeto na interface de login, ele ser direcionado para uma interface de cadastramento e configurao de novos projetos, esta interface ilustrada na Figura 33. A interface de cadastramento de projetos possibilita a configurao de novos projetos, atravs de parmetros previamente configurados por outros projetos cadastrados, como por exemplo, layout da cena grfica e supervisor. O nico parmetro que no entendvel de outros projetos a trajetria de equipamentos, pois estes parmetros dependem diretamente da configurao de layout e supervisor de cada projeto e necessitam de configurao personalizada.

Figura 33. Interface de cadastramento/configurao de projetos.

Para a configurao do layout da cena grfica a classe Sistema_CeRV conta com uma interface que agrupa uma applet Java e uma cena VRML. Atravs da applet Java possvel definir interativamente posies, orientaes e equipamentos que iro compor a cena grfica. J a cena grfica VRML permite a visualizao das configuraes em 3D. O mesmo processo ocorre para a definio da trajetria de equipamentos que compem o layout da cena grfica, onde a cena VRML permite movimentar o rob (equipamento com cinco graus de liberdade) de uma posio para outra, adicionando-se pontos de trajetria atravs de uma applet Java. Para equipamentos com apenas um grau de liberdade, configura-se apenas o sentido da trajetria (horrio ou anti-horrio).

66

Figura 34. Configurao de layout da cena grfica

Figura 35. Interface de configurao de trajetrias.

67 Todas as configuraes de projeto so armazenadas no banco de dados atravs das classes internas do sistema que sero detalhadas nas prximas subsees. Aps efetuadas todas as configuraes de um projeto, o usurio retorna a interface de login, onde poder acessar a interface de simulao do novo projeto configurado. A interface de simulao da classe Sistema_CeRV permite que o usurio visualize/interaja com simulaes atravs de uma cena VRML integrada com uma applet Java. A Figura 36 ilustra a interface de simulao de sequencializaes virtuais.

Figura 36. Interface de simulaes de sequencializaes virtuais.

4.2.1.2. Classe Projetos A classe Projetos gerencia informaes relacionadas aos projetos da CeRV. Atua principalmente armazenando e recuperando informaes de projetos no banco de dados. So informaes gerenciveis por esta classe: cd_projeto cdigo de um projeto; nm_projeto nome de um projeto; senha senha de um projeto; ds_projeto descrio de um projeto; dn_layout denominao do layout associado ao projeto e; cd_supervisor cdigo do supervisor associado ao projeto.

68 Na classe Projetos so implementadas as seguintes funes: armazenaProjeto() funo responsvel por armazenar informaes de um projeto e; buscaProjeto() funo responsvel por recuperar informaes de um projeto.

4.2.1.3. Classe Layout A classe Layout gerencia informaes relacionadas ao layout de cada um dos projetos da CeRV. Um layout armazenado por esta classe no banco de dados poder ser utilizado por mais de um projeto da CeRV, basta que o usurio responsvel pelo projeto selecione o layout desejado. So informaes gerenciveis por esta classe: dn_layout denominao utilizada para um determinado layout; cd_equipamento cdigo de um equipamento que compe o layout da cena grfica; pos_cord_x coordenada x de um equipamento na cena grfica; pos_cord_y coordenada y de um equipamento na cena grfica; pos_cord_z coordenada z de um equipamento na cena grfica; angulo_orientacao ngulo de orientao de um equipamento na cena grfica. So funes implementadas pela classe Layout: armazenaLayout() funo responsvel por armazenar informaes de um layout e; buscaLayout() funo responsvel por recuperar informaes de um layout.

4.2.1.4. Classe Supervisor Esta classe gerencia informaes relacionadas ao programa supervisor Grail que controla a sequencializao de um determinado projeto. Este programa de controle est intimamente relacionado ao layout da cena grfica. O supervisor o nico parmetro de entrada externa que o usurio carrega atravs de upload no sistema, ou seja, um arquivo .txt que tambm pode ser utilizado para o controle de eventos na Clula de Manufatura Real. Caso o usurio no deseje criar um novo supervisor para um determinado projeto, ele pode usar um supervisor j existente e armazenado pelo sistema. So informaes gerenciveis pela classe supervisor: cd_supervisor cdigo de um supervisor; dn_supervisor denominao de um supervisor; estado_origem estado de origem de um evento; dn_evento denominao de um evento; estado_destino estado de destino de um evento e; estado_atual estado atual da sequencializao de eventos. A classe supervisor implementa as seguintes funes: armazenaSupervisor() uma funo

69 responsvel por converter os dados do arquivo supervisor (.txt) de entrada para formatos aceitos pelo banco de dados e armazena-los; buscaSupervisor() funo responsvel por buscar informaes de estados e eventos de um determinado supervisor; controlador() a funo central de controle de eventos controlveis e no controlveis da CeRV, esta funo a principal responsvel pela sequencializao de eventos e; iniciaControlador() a funo que dispara o primeiro evento de uma sequencializao.

4.2.1.5. Classe Trajetria_Equipamentos A classe Trajetria_Equipamentos responsvel por gerenciar as informaes que relacionam dados da trajetria de um equipamento um evento. So informaes gerenciveis por esta classe: dn_evento denominao de um evento relacionado trajetria; cd_equipamento cdigo do equipamento relacionado trajetria; graus_liberdade graus de liberdade do equipamento relacionado a trajetria; sentido_trajetoria sentido da trajetria para equipamento com apenas um grau de liberdade (horrio ou anti-horrio); pt_trajetria_x coordenada x de um ponto de trajetria; pt_trajetria_y coordenada y de um ponto de trajetria; pt_trajetria_z coordenada z de um ponto de trajetria e; pt_sequencia seqncia dos pontos de trajetria. A classe Trajetria_Equipamentos implementa as seguintes funes:

armazenaTrajetoria() funo que armazena dados de trajetria e; buscaTrajetria() funo que recupera dados de trajetria de um equipamento, utilizada principalmente quando da execuo de um evento por um equipamento.

4.2.1.6. Classe Eventos A classe Eventos recupera informaes dos eventos relacionados aos subsistemas fsicos (equipamentos) da CeRV armazenados no banco de dados. Estes eventos no so armazenados por projetos, j esto presentes no sistema, pois so eventos que modelam o comportamento dos equipamentos da Clula de Manufatura Real, conforme j apresentado na Tabela 5. So informaes que esta classe gerencia: cd_evento cdigo do evento; dn_evento denominao do evento (exemplo E_liga liga a esteira); tipo_evento tipo do evento (controlvel ou no controlvel); cd_equipamento cdigo do equipamento associado ao evento.

70 A classe Eventos implementa as funes: buscaEvento() funo responsvel por buscar informaes de eventos no banco de dados; enviaEntradaSupervisor() funo responsvel pelo envio de sinais de entrada da cena grfica classe Supervisor e; enviaSaidaEquipamentos() funo responsvel pela gerao de sinais de sada originados na classe Supervisor e que sero gerado na cena grfica.

4.2.1.7. Classe Equipamentos_Prottipos Equipamentos_Prototipos uma classe de componentes JAVA e VRML que ir encapsular todos os subsistemas (equipamentos) da CeRV. Estes so os mesmos equipamentos que compem a Clula de Manufatura Real. So informaes que a classe Equipamentos_Prottipos gerencia: cd_equipamento cdigo do equipamento e;

nm_equipamento nome do equipamento. A classe Equipamentos_Prototipos implementa as funes: executaSaidas() funo responsvel pela execuo dos eventos de sada na cena grfica, eventos estes gerados pela funo controle() da classe Supervisor e; recebeEntradas() funo responsvel por propagar para a funo controle() da classe Supervisor os eventos de entrada que ocorrem na cena grfica e; buscaEquipamentos() funo responsvel pela recuperao de dados dos equipamentos prottipos.

71

5 IMPLEMENTAO
Neste capitulo apresentado o detalhamento da implementao da CeRV fazendo um comparativo com o projeto proposto no captulo 4. Desta forma, em um primeiro momento descrito o funcionamento da sistema de forma geral, para posteriormente apresentar o diagrama de classes implementado e detalhar cada uma das classes desenvolvidas, relacionando-as com suas respectivas funcionalidades. E ao final elencar todos os resultados obtidos atravs dos testes efetuados, relacionando os supervisores, layouts e trajetrias utilizadas nestes testes. A CeRV foi desenvolvida com base no projeto (capitulo 4) de forma a permitir a simulao do comportamento da Clula de Manufatura Real no que se refere ao controle de eventos e ao comportamento dos equipamentos (subsistemas fsicos). Logo, a CeRV permite a interao do usurio na configurao de sequencializaes, estas contemplando Layout e programas de controle onde possvel visualizar as simulaes configuradas atravs de um ambiente virtual desenvolvido em VRML.

Figura 37: Interface da CeRV.

72 O relacionamento do usurio com o sistema ocorre por intermdio de um painel de controle principal, este desenvolvido em Java, e que interage com o ambiente grfico 3D atravs da interface de autoria externa EAI (exemplificada na seo 2.7). Conforme pode ser observado na Figura 37, ao lado esquerdo da imagem possvel visualizar a interface grfica 3D que permite a visualizao de simulaes. Para o layout selecionado, tem-se 2 robs, 1 esteira, 1 mesa giratria, 1 sensor fotoeltrico (localizado na mesa giratria) e 2 sensores de presena (um localizado na esteira e outro na mesa giratria). Uma possvel seqncia de funcionamento que pode ser configurada via interface e visualizada graficamente em 3D (para o Layout configurado para a Figura 37) apresentada no Quadro 2. A simulao inicia com a ligao do motor da esteira de forma a transportar peas at o rob 1. Assim, quando uma pea detectada pelo sensor de presena posicionado no final da esteira, esta deve ser desligada e o rob 1 deve levar a pea at a mesa giratria. O rob 1 coloca a pea na mesa giratria e volta sua posio inicial, gerando ento um sinal para o CLP informando o final de sua operao. A mesa d um giro de 180 levando a pea at a posio onde ser efetuado um teste simulado pelo sensor fotoeltrico que indicar se a mesma esta boa ou ruim. Ao final do teste o rob 2 far o transporte para o local adequado (de acordo com o resultado obtido no teste): peas boas devem ser transportadas para a rea de depsito de peas prontas e peas ruins devem ser transportadas para a mesa de rejeito. Quadro 2: Sequencializao possvel para o layout da Figura 37. Fonte: Curzel et al. 2007. No lado direito da Figura 37, exibida a interface grfica 2D que permite a configurao e inicializao das sequencializaes que sero controladas pela CeRV e visualizadas na interface grfica 3D. Nesta interface, logo abaixo ao ttulo pode ser vista uma rea composta por 4 checkbox que permitem configurar o tipo de trajetria de cada um dos robs, estas trajetrias podem ser do tipo Interpoladoras (With Interpolation) ou NoInterpoladoras (Without Interpolation) e o que as difere a seqncia de pontos percorridos durante cada tipo de trajetria, ou seja, no primeiro tipo de trajetria (Interpoladora) o rob percorre diversos pontos at completar toda a trajetria, por exemplo, trajetria da esteira para a mesa, j no segundo tipo de trajetria (No-Interpoladora) o rob percorre somente dois pontos, onde um o ponto inicial (ponto sobre a esteira) e o outro o ponto final (ponto sobre a mesa giratria). Abaixo da rea de configurao de trajetrias existe uma rea de seleo de

73 Layouts, esta rea caracterizada por 3 botes (Layout 1; Layout 2 e; Layout 3) que permitem ao usurio dispor diferentes Layouts previamente disponibilizados pelo sistema CeRV, entretanto o sistema permite abertura para a incorporao de mais Layouts, maiores detalhes sero apresentados no sub-tpico 5.1.5. O Layout apresentado na Figura 37 corresponde ao boto Layout 3. Aps a rea de configurao de Layouts, existe uma rea de texto que permite a insero do supervisor responsvel pela sequencializao de eventos que pode ser exibida na interface grfica 3D. Abaixo da rea de insero do supervisor possvel definir o nmero de peas que iro compor a sequencializao (Number of Parts) e iniciar a mesma atravs do boto responsvel pela inicializao (boto Execute). Logo abaixo da rea de configuraes da sequencializao, pode ser observada a rea de feedbacks do sistema, onde possvel visualizar o estado corrente (identificado pelo rtulo Current State), o ltimo evento controlvel disparado (identificado pelo rtulo Last Controlable Event) e por fim o ltimo evento no controlvel disparado (identificado pelo rtulo Last Uncontrolable Event). Todas estas funcionalidades de configurao da sequencializao so implementadas pela classe SistemaCeRV, ou seja, a classe principal geradora da interface de interao do usurio com o sistema. Esta classe d incio a sequencializao de eventos na cena grfica, que por sua vez instanciar todas as demais classes da CeRV. Estas classes so responsveis pelo gerenciamento de Layouts (classe Layout), controle de equipamentos da cena grfica (classes: Robo; MesaGiratoria e; Esteira), execuo de trajetrias com mais de um grau de liberdade para os robs manipuladores (classe TrajetoriaRobo), execuo do Supervisor (classe Supervisor) e identificao/atribuio de eventos controlveis e no controlveis (classe Eventos). O completo detalhamento destas classes ser apresentado na prxima subseo.

5.1. Diagrama de Classes Implementado


O diagrama de classes implementado no sistema CeRV corresponde essencialmente ao diagrama projetado e ilustrado na Figura 30 (captulo 4). A maior mudana existente no modelo implementado em relao ao modelo projetado reflete na no utilizao de Base de Dados para busca e armazenando de informaes relacionadas aos projetos de sequencializao da CeRV. O uso de Base de Dados para gerenciamento de informaes do sistema foi desconsiderado, pois as tecnologias utilizadas para a implementao da CeRV (applet Java integrando com VRML) no permitiram conexo com Base de Dados devido a

74 imposio de diversas restries tecnolgicas geradas pela unio das duas tecnologias, visto que para o desenvolvimento da CeRV foi utilizado a verso 1.3 da Mquina Virtual Java/Microsoft (nica forma possvel de integrao com VRML). Portanto, a integrao com Base de Dados s ser possvel atravs da migrao de todas as tecnologia que foram utilizadas para desenvolver a CeRV para tecnologias mais atuais, estas incluem tambm a migrao dos trabalhos de Hounsell e Redel (2004), trabalhos estes responsveis pelo desenvolvimento do Rob Scorbot Virtual (que compem a CeRV), ou seja, principal motivao para o uso das tecnologias Java e VRML. As maiores perdas relacionadas ao no uso de Base de Dados remetem a impossibilidade de se armazenar projetos no sistema, de forma que estes possam ser acessados e resgatados em um uso posterior (outra seo do navegador). Outras perdas remetem a no possibilidade de reconfigurao de trajetrias para os robs manipuladores e layouts para os equipamentos que compem a cena grfica, conforme fora planejado e projetado no captulo 4, ou seja, possvel somente utilizar as trajetrias e layouts previamente disponibilizados na CeRV. Entretanto, estas limitaes impostas pelas tecnologias adotadas no impossibilitaram a obteno dos objetivos principais deste trabalho (descritos no captulo 1).

Figura 38: Diagrama de Classes UML desenvolvido.

75

a) Projetos Como forma de contornar este problema, entidades que antes estavam projetadas para se relacionar com um ambiente composto por uma Base de Dados, passaram a se relacionar com informaes inseridas diretamente pelo usurio no momento que antecede a sequencializao, informaes estas tais como: supervisor responsvel pela sequencializao; descrio do layout e descrio dos pontos de trajetria dos robs. Portanto, com o novo modelo proposto no foi possvel implementar a funcionalidade de armazenamento de projetos apresentada no subitem 4.2.1.2 do captulo 4, fator este que resultou na excluso da classe Projetos. b) Equipamentos Prottipos Outra classe excluda do modelo original foi a classe EquipamentosPrototipos, esta deu origem a outras classes individuais que representam cada um dos equipamentos manipuladores (um ou mais graus de liberdade), so estas: Robo; Esteira e; MesaGiratoria. J para os sensores, no foram criadas classes especficas, pois, a funcionalidade destes (gerao de eventos no controlveis) controlada diretamente pela classe do equipamento no qual estes sensores esto atrelados, por exemplo, o sensor de presena da esteira tratado na classe Esteira, o funcionamento deste e dos demais sensores ser detalhado no subtpico 5.1.5 que detalha as classes responsveis pelos equipamentos da cena grfica. c) Execues Paralelas Esta mudana de classes foi efetuada devido a necessidade de utilizao de MultiThreads por cada um dos equipamentos, ou seja, percebeu-se durante o desenvolvimento do sistema a necessidade de ocorrncia de trajetrias simultneas na cena grfica logo, cada uma destas novas classes representa uma Thread gerenciada pela classe Eventos, onde a execuo de um evento controlvel d incio a uma nova Thread, de forma que possam existir diversas Threads sendo executadas paralelamente na CeRV. d) Trajetrias Outra caracterstica que pode ser observada no diagrama da Figura 38 a alterao do nome da classe TrajetoriaEquipamentos para TrajetoriaRobo, pois, foi verificado que haveria a necessidade de maior gerenciamento apenas para as trajetrias referentes aos robs manipuladores, devido ao maior nmero de graus de liberdade destes equipamentos e, conseqentemente maior complexidade, logo, as trajetrias dos equipamentos esteira e mesa

76 giratria foram tratados diretamente nas classes que os implementam (respectivamente classe Esteira e MesaGiratoria), estas caractersticas sero melhor detalhadas no subtopico 5.1.2. Existem outras mudanas no diagrama de classes implementado que se referem a pequenas melhorias ou necessidades identificadas durante a atividade de implementao, estas podem ser observadas no prprio diagrama que exibido na Figura 38. Cada uma das classes ilustradas neste diagrama ser exemplificada nas prximas subsees, de forma a explicar as alteraes efetuadas e o que foi mantido do projeto inicial com o intuito de alcanar os principais objetivos deste trabalho. 5.1.1. Classe SistemaCeRV A classe controladora SistemaCeRV responsvel por toda a interao do usurio com o sistema, ou seja, essa classe composta pela interface VRML e Applet Java, ambas apresentadas na Figura 37. As alteraes efetuadas nesta classe remetem principalmente a alterao j comentada no subtpico anterior, ou seja, a remoo de conexo externas (no que se refere a Base de Dados). Logo, etapas que antes representavam inseres e personalizaes salvas de projetos cadastrados, que envolviam supervisor, layout e trajetrias foram implementadas de modo a serem configuraes dinmicas, ou seja, continuam mantidos todos os aspetos referentes a fcil reconfigurao do sistema, porm no mais possvel o cadastramento de projetos para uso posterior, ou seja, a cada nova seo do navegador o usurio dever efetuar todas as configuraes antes de iniciar a sequencializao grfica. Na Figura 39 apresentado o diagrama de navegao implementado, este diagrama apresenta as interaes do usurio com o sistema.

Figura 39: Diagrama de Navegao desenvolvido.

77 No diagrama da Figura 39 possvel visualizar 4 principais situaes de interao do usurio com a classe SistemaCeRV (conforme pode ser visto na Figura 37), so estas: Configura Trajetrias Permite que o usurio defina, via interface, os tipos de trajetrias que sero utilizadas pelos robs manipuladores da cena grfica (com ou sem interpolao, conforme Figura 37), ou seja, a partir de trajetrias previamente definidas no SistemaCeRV possvel selecionar a que se deseja utilizar. Alm disto, atravs da classe TrajetoriaRobo novos pontos de trajetrias podem ser adicionados a cada um dos robs, sem que haja necessidade de reestruturao da arquitetura de software do sistema CeRV, o que permite fcil incluso de trajetrias variadas (dos robs) para simulao na cena grfica, ou apenas a alterao das j existentes. A Funcionalidade de configurao de trajetrias disponibilizadas pela CeRV ser exemplificada no subtpico 5.1.4; Insere Supervisor Permite a insero de um supervisor descrito atravs de um arquivo em formato ASCII, diretamente na interface do sistema, desde que os eventos deste supervisor estejam no padro apresentado na Tabela 5, fator que converge diretamente com o objetivo de reconfigurabilidade do sistema porque permite a incorporao de sequencializaes variadas atravs do uso de inmeros supervisores, estes compostos de diferentes caractersticas no que se refere a seqencia dos eventos enviados e recebidos da cena grfica. O detalhamento funcional em termos do desenvolvimento deste mecanismo ser apresentado no subtpico 5.1.2; Configura Layout Permite ao usurio definir qual Layout ser utilizado pelo supervisor adicionado na sequencializao grfica, estes Layouts esto previamente definidos no sistema (conforme Figura 37). Define Nmero de Peas Esta funcionalidade permite ao usurio definir o nmero total de peas que sero utilizadas na sequencializao. Para que seja iniciada a sequencializao de eventos necessrio que seja definida pelo menos uma pea para compor a sequencializao, onde a trajetria desta pea na CeRV ser manipulada pelos equipamentos que compem o layout de acordo com os eventos a que estes forem submetidos. Quanto maior o nmero de peas configurado para compor a sequencializao, maior o tempo de execuo da mesma, devido necessidade de atuao dos equipamentos manipuladores sobre todas as peas.

78 Executa Simulaes Depois de configurado o projeto via interface, o usurio poder visualizar a sequencializao dos eventos coordenados pelo supervisor, definindo ainda, o nmero de peas que sero apresentadas na sequencializao grfica. A classe SistemaCeRV alm de ser responsvel pela interao do usurio com o sistema, a responsvel por instanciar todas as demais classes que representam os aspectos de fcil reconfigurao da CeRV (tais como: Supervisor; Layouts e TrajetoriaRobo), aspecto este que tambm pode ser observado no diagrama de classes desenvolvido (ilustrado na Figura 38). 5.1.2. Classe Supervisor A classe Supervisor foi uma classe j planejada no projeto inicial e a mesma foi desenvolvida com algumas pequenas alteraes tambm relacionadas a no existncia de conexo com Base de Dados. Logo, o supervisor que gerenciar a sequencializao grfica ser informado diretamente na interface pelo usurio, de forma que o padro Grail (ASCII) continue mantido. Outra alterao importante efetuada durante o desenvolvimento da classe Supervisor em relao ao projeto inicial a excluso do relacionamento com a classe Projetos, conforme j apresentado anteriormente, pois esta classe foi removida do projeto da CeRV.

Figura 40: Sequencializao de eventos na Classe Supervisor.

Conforme pode ser observado no diagrama da Figura 38, a classe Supervisor possui relacionamento com a classe principal SistemaCeRV, classe Eventos e classes dos

79 Equipamentos (Robo; Esteira e; MesaGiratoria). O relacionamento com a classe SistemaCeRV se d atravs do incio da sequencializao que executado a partir da applet Java (classe SistemaCeRV) aps definio de todos os elementos configurveis (layout; trajetrias e; supervisor). O relacionamento com a classe Eventos remete ao envio de eventos controlveis para que estes sejam propagados cena grfica, onde estes eventos so classificados pela classe Eventos que verifica a que equipamento determinado evento pertence (cada equipamento responsvel por um conjunto de eventos). Identificado o equipamento no qual o evento pertence, este imediatamente enviado a classe equipamento (Robo; Esteira e; Mesa Giratoria) responsvel pela sua posterior execuo na cena grfica. J os eventos no controlveis, so recebidos da cena grfica pela classe Supervisor que atualiza imediatamente o novo estado corrente da sequencializao quando da ocorrncia deste tipo de evento. Os eventos no controlveis gerados na cena grfica so informados para a classe Supervisor diretamente a partir das classes Equipamentos (Robo; Esteira e; Mesa Giratoria). Logo, a classe Eventos atua como um dicionrio, interpretando o evento emitido pelo Supervisor e o traduzindo para o seu devido equipamento e as classes Equipamentos atuam como emissores de estmulos gerados na cena grfica e enviados classe Supervisor. Na Figura 40 apresentado um trecho do cdigo desenvolvido, correspondente a classe Supervisor. Este trecho de cdigo define a execuo de eventos controlveis e no controlveis. Conforme j explicado anteriormente, os eventos controlveis partem da classe Eventos e os eventos no controlveis so enviados pelos equipamentos da cena grfica classe Supervisor e devem ser atualizados imediatamente, pois estes partem da dinmica do prprio ambiente grfico (exatamente como ocorre no ambiente real da clula de manufatura). O trecho de cdigo apresentado na Figura 40 est contido em um lao de repetio, onde a cada nova iterao verificado se existe algum evento recebido da cena grfica, o que caracteriza a entrada de um evento no controlvel que deve ser atualizado. Caso haja, verificado se este evento no controlvel estava previsto para execuo naquele determinado estado. Se sim, o estado corrente da sequencializao atualizado na classe Supervisor e esta passa a executar um novo evento (controlvel ou no controlvel) em uma nova iterao no lao de repetio. Caso o evento no controlvel no esteja previsto, caracteriza um erro de projeto da sequencializao (supervisor e/ou layout), logo informada a ocorrncia de erro na rea de feedback da CeRV. Caso no seja recebido nenhum evento controlvel pela cena grfica, verificado se existe algum evento controlvel no estado corrente, se existir, o evento

80 enviado para a classe Eventos para que seja executado pelo seu respectivo equipamento (por exemplo, E_liga seria enviado para a esteira executa execut-lo). Porm caso no haja nenhum evento controlvel no presente estado, a classe Supervisor permanece aguardando a ocorrncia de um novo evento no controlvel de forma que o estado corrente seja atualizado, o que permitira a execuo de novos estados (caso existam). O lao de repetio s ser finalizado (o que acarreta a finalizao da sequencializao) quando no existirem mais peas na cena grfica e o supervisor encontre-se em um estado final. A identificao do fim da sequencializao obtida atravs do estado definido pelo smbolo (FINAL) do supervisor Grail , ou seja, qualquer ocorrncia de evento que leve a este estado, caso no hajam mais peas na sequencializao, pode representar o fim da mesma. 5.1.3. Classe Eventos Conforme abordado no subtpico anterior, a classe Eventos gerencia todos os eventos controlveis e no controlveis da CeRV, onde, os eventos controlveis so gerados pelo prprio supervisor de acordo com o estado corrente da sequencializao e os eventos no controlveis so gerados atravs de estmulos da cena grfica (eventos gerados pela sensibilizao de sensores).

Figura 41: Funo executeControlableEvent. Como padro de eventos (controlveis de no controlveis) adotado pela CeRV, utilizou-se os eventos apresentados na Tabela 5, ou seja, mesma descrio de eventos utilizada na Clula de Manufatura Real, obtida do trabalho de Curzel e Leal, 2006. Esta caracterstica foi padronizada, pois, assim como na Clula de Manufatura Real indispensvel adoo de um padro para a descrio de eventos, estados e a relao entre estes de forma a possibilitar que usurios (configuradores de projetos de sequencializao) e

81 sistema (CeRV) interajam. Logo, para a alterao do padro de descrio utilizado pela CeRV necessria a recompilao da classe Eventos de forma a alterar o dicionrio de eventos e a relao destes com os seus respectivos equipamentos grficos.

Figura 42: Funo executeEvent.

A classe Eventos controla todos os eventos controlveis atravs da funo executeControlableEvent, que pode ser visualizada na Figura 41. Essa funo executada atravs do envio de uma varivel que identifica todos os possveis eventos (controlveis e no controlveis) que podem ser executados em um determinado estado (possibleEvents) logo, a funo executeControlableEvent identifica se existe algum evento controlvel. Caso exista

82 atualiza o novo estado corrente na CeRV e aciona a funo responsvel pela execuo do evento controlvel processado, ou seja, a funo executeEvent, na chamada desta funo passado como parmetro o evento a ser executado. A funo executeEvent, conforme pode ser vista na Figura 42, recebe como parmetro o evento controlvel a ser executado, identifica o equipamento e/ou trajetria (no caso dos robs manipuladores) que este evento deve ser executado e o inicia na cena grfica atravs das classes dos equipamentos (cada uma delas sero detalhadas no subtpico 5.1.4). As classes responsveis pelos equipamentos (Robo; Esteira e; MesaGiratoria) so instanciadas na classe Eventos, onde seu evento grfico (trajetria) disparado atravs da funo start() que inicia uma nova Thread que ir gerar a respectiva ao na CeRV. A instanciao dos robs manipuladores na cena grfica possu uma caracterstica particular que no ocorre para nenhum outro equipamento, como a classe Robo pode ser instanciada tanto para rob 1 quanto para o rob 2 na execuo dos eventos controlveis T_S (trajetria de retirada de peas boas), T_R (trajetria de retirada de peas ruins) e T_M (trajetria de transporte da pea da esteira para a mesa), a instanciao da mesma deve ser efetuada em cada um destes momentos. Portanto, a trajetria (T_S, T_R ou T_M) e o equipamento (rob 1 ou rob 2) que executar o evento so identificados atravs dos parmetros roboDescription e trajetoryDescription, respectivamente. Aes de equipamentos na cena grfica podem ser finalizadas atravs da funo stop(), ou seja, esta funo responsvel pela interrupo da Thread. Existe uma singularidade nesta classe que a execuo do evento I_teste (inicia teste), que representado pelo equipamento sensor fotoeltrico da cena grfica. Devido a simplicidade do tratamento deste evento o mesmo tratado diretamente na classe Eventos. Onde, atravs da chamada do evento I_teste simulado um teste que retorna os eventos no controlveis T_OK (teste ok) e T_NOK (teste no ok) atravs de uma gerao aleatria para estes dois eventos no controlveis (sensor simulado). J o tratamento de eventos no controlveis um pouco mais simples, pois estes no precisam executar nenhuma ao imediata na cena grfica, ou seja, este tipo de ao (por exemplo, ligar esteira) somente gerada atravs da funo que gerencia os eventos controlveis, logo, para o tratamento de eventos no controlveis necessrio somente atualizar o estado corrente da sequencializao. A atualizao de eventos no controlveis na cena grfica feita atravs da classe executeUncontrolabileEvent, que recebe como parmetro o evento no controlvel que foi enviado por um dos equipamentos da cena grfica (por

83 exemplo, fim de trajetria do rob manipulador) e a lista de possveis eventos do estado corrente (possibleEvents, obtida a partir do estado corrente e do supervisor configurado para a sequencializao). Logo, atravs da lista dos possveis eventos possvel identificar se o evento no controlvel pode ser executado, caso este evento no possa ser executado porque no foi previsto no supervisor (para o estado corrente) detectado um erro, que informado ao usurio via interface para que o mesmo possa fazer as devidas correes no projeto de sequencializao (supervisor). O detalhamento da implementao desta funo pode ser observado na Figura 43.

Figura 43: Funo executeUncontrolableEvent. A forma como so processados (transformados em trajetrias), tanto os eventos controlveis (eventos de sada enviados pela classe supervisor a cena grfica) como os eventos no controlveis (emitidos pela cena grfica ao supervisor atravs dos equipamentos), ser apresentada no subtpico a seguir, onde ser descrito o funcionamento de cada uma das classes responsveis pelos equipamentos atuadores da cena grfica (Robo; Esteira e; MesaGiratoria) e a forma como so tratados os sensores nestas classes (ou seja, gerao de eventos no controlveis). 5.1.4. Classes Equipamentos Robo, Esteira e, Mesa Giratria. Conforme apresentado anteriormente, fazem parte do subgrupo de classes responsveis pelos equipamentos atuadores as classes: Robo, Esteira e, MesaGiratoria. J os equipamentos sensores, ou seja, equipamentos responsveis pelo envio de estmulos da cena grfica para a classe Supervisor, so implementados diretamente nas classes dos seus

84 respectivos atuadores, por exemplo, na prpria classe Esteira implementado o comportamento dos sensores de presena que podem estar dispostos na mesma, ou seja, durante a execuo das Threads de cada uma destas classes, verificada a ocorrncia de estmulos. Por exemplo, no momento em que a pea que efetua a trajetria na esteira atinge o ponto coberto por um sensor de presena, este ligado, ou seja, enviado um estmulo para a classe Supervisor. Como pde ser observado anteriormente no diagrama da Figura 38, as classes Esteira e MesaGiratoria se relacionam unicamente com a classe Eventos, ou seja, eventos controlveis so enviados diretamente para estas classes e os eventos no controlveis so gerados por estas classes para que possam ser processados pela classe Supervisor. O mesmo comportamento tambm valido para a classe Robo, porm como os equipamentos controlados por esta classe apresentam mais de um grau de liberdade (robs manipuladores), h a necessidade de relacionamento desta classe com as diversas trajetrias possveis de serem executadas por cada um dos robs, logo, o gerenciamento de cada uma destas trajetrias efetuado pela classe TrajetoriaRobo.

a) Classe Esteira De acordo com o que foi ilustrado anteriormente atravs da Figura 44, o cdigo desenvolvido para a classe Esteira (Thread), aps o acionamento do evento E_liga (responsvel por ligar a esteira) atravs da funo start da classe Eventos, acionada a Thread responsvel por gerenciar a trajetria da Esteira na cena grfica. Logo no incio desta Thread, atribuda a referncia do equipamento grfico esteira (do cdigo, conveyor) para a varivel set_translation, responsvel pela translao da esteira (trajetria) na cena grfica atravs do envio de novos pontos de translao. Nesta classe verificado se existem peas que esto sujeitas a trajetria da esteira, esta verificao feita atravs de um vetor que armazena a definio das peas que estejam compondo a sequencializao grfica e suas respectivas posies (PartsAndPositions), ou seja, se for identificado que a posio na qual se encontra uma determinada pea for uma posio onde existe a atuao da esteira, esta mesma pea ser manipulada pelo equipamento. Logo, caso existam peas na cena grfica que possam sofrer a atuao da esteira, os pontos de translao iro atuar diretamente sobre estas peas (atualizando suas posies na cena grfica), o que d a sensao de movimentao da esteira, adicionado a rotao simulada de cada um dos dois eixos de suas extremidades. Caso

85 no existam peas sobre a esteira, a movimentao desta visualizada apenas pela rotao dos eixos, ou seja, a mesma no atua sobre nenhuma pea da cena grfica.

Figura 44: Cdigo desenvolvido Classe Esteira.

A cada atualizao de localizao das peas verificado se alguma delas esta na rea de cobertura do sensor de presena. Caso haja alguma pea nesta rea finalizada a atualizao de pontos de trajetria para todas as peas e para os eixos da esteira, devido ao envio imediato do evento no controlvel S_liga (sensor liga) cena grfica. O trmino da execuo d trajetria da esteira se da atravs do evento controlvel E_desl (esteira desliga), ou seja, quando este evento controlvel executado finalizada (funo stop) a Thread responsvel pela movimentao da esteira.

b) Classe MesaGiratoria

Figura 45: Cdigo desenvolvido Classe Mesa Giratria.

86

Na Figura 45 apresentada a funo run da classe MesaGiratoria, classe esta responsvel por gerenciar os movimentos da mesa giratria e peas sujeitas a sua movimentao na cena grfica. Assim como na classe Esteira, primeiramente efetuada a atribuio do equipamento Mesa Giratria (RotaryTable) da cena grfica a uma varivel de referencia na CeRV, esta varivel (set_rotationRotaryTable) responsvel por definir os pontos de rotao para a mesa giratria em cada um dos tempos de movimentao (giro). Caso existam peas sobre influncia da trajetria de rotao da mesa giratria, estas so adicionadas a mesma, atravs da funo addPartsToRotaryTable, o que permite que as peas acompanharem a trajetria de rotao da mesa giratria. Aps um giro de 180 esta trajetria finalizada resultando no evento no controlvel F_giro (fim de giro) que enviado a classe Supervisor para processamento. c) Classe Robo Por fim, na Figura 46, pode ser observada a classe Robo, o funcionamento desta classe o seguinte: Em um primeiro momento, efetuada a busca pelo primeiro ponto de trajetria que deve ser percorrido pelo rob, este ponto de trajetria esta diretamente ligado ao evento controlvel que foi enviado a esta classe, por exemplo, o evento controlvel T_M representa a trajetria da esteira para a mesa giratria e o evento controlvel T_S representa a trajetria de retirada de peas da mesa giratria. Estes pontos de trajetria so obtidos atravs da classe gerenciadora de trajetrias TrajetoriaRobo, que ser exemplificada nos prximos pargrafos. Aps a aquisio do primeiro ponto de trajetria, existe um lao de repetio que tem como critrio de parada a no existncia de mais pontos. Neste lao de repetio so executados os seguintes procedimentos (de acordo com as informaes obtidas da classe TrajetoriaRobo): fechamento de garra (com ou sem pega de pea, dependendo do contexto); abertura de garra (soltando ou no peas, dependendo do contexto) e; movimentao para um determinado ponto de trajetria, esta ltima, decorre atravs da funo setMove definida na classe Robo (desenvolvida nos trabalhos anteriores de Redel e Hounsell, 2004). Aps a execuo de uma ao (abrir garra, fechar garra ou ponto de trajetria), uma nova ao obtida (caso exista) com base na trajetria que est sendo executada. A ao de fechamento de garra executada pela funo openCloseGrip (tambm utilizada para a abertura de garra), pode gerar o evento no controlvel S_desl (sensor desliga), caso a operao de fechamento da

87 garra resulte na remoo de alguma pea (por exemplo, uma pea situada no sensor da esteira). Este evento no controlvel enviado imediatamente a classe Supervisor para processamento.

Figura 46: Cdigo desenvolvido Classes Robo.

Figura 47: Ilustrao do Funcionamento da Classe TrajetoriaRobo (Rob 1 e 2).

88

Na Figura 47 ilustrada a principal funo da classe TrajetoriaRobo, ou seja, nesta funo que so gerenciados os pontos de movimentao dos robs de acordo com a trajetria que est sendo recuperada. A classe TrajetoriaRobo pode retornar as seguintes informaes para a classe Robo: abertura de garra; fechamento de garra e; ponto de trajetria (composto por ngulos e coordenadas) e; informao de fim de trajetria. Todas estas informaes so organizadas na prpria funo em uma estrutura seqencial lgica que deve ser respeitada pela classe Robo de forma a executar corretamente uma determinada trajetria. No h limites para a incorporao de trajetrias nesta classe, sendo necessrio informar somente as aes e pontos que devem ser executadas (seguindo o padro estipulado pela classe) e a seqncia de execuo destas. Porm, para a utilizao de uma nova trajetria definida na classe TrajetoriaRobo necessria a recompilao da mesma.

5.1.5. Classe Layout A classe Layout a nica classe do diagrama exibido na Figura 38 que se relaciona somente com a classe SistemaCeRV, ou seja, a sequencializao grfica em termos de implementao independe do layout que ser utilizado pelo supervisor que coordena a sequencializao (classe Supervisor). Porm, em termos de sequencializao dos eventos no contexto geral de um projeto da CeRV, o layout da cena grfica est diretamente ligado ao supervisor, ou seja, o supervisor deve ser projetado com base em um layout pr definido (em termos de equipamento e disposio dos mesmos). O relacionamento da classe SistemaCeRV com a classe Layout se da atravs da seleo do layout desejado pelo usurio que esta configurando um novo projeto de sequencializao. Como j comentado anteriormente, so previamente disponibilizado para a configurao de projetos trs layout, compostos atravs da disposio dos seguintes equipamentos: dois robs; uma esteira; uma mesa giratria; dois sensores de presena (um na esteira e outro na mesa giratria) e; um sensor fotoeltrico (na mesa giratria). Estes mecanismos de configurao so disponibilizados com o intuito de provar a

reconfigurabilidade do sistema em termos de layout (equipamentos e suas respectivas posies). A insero de novos layout e/ou equipamentos (que no estejam previamente disponibilizados) na CeRV possvel atravs da recompilao da classe Layout e/ou gerao da classe de um novo equipamento, respectivamente.

89 Na Figura 48 pode ser visualizado o Layout 1. Da lista total de equipamentos que compem a CeRV fazem parte deste layout: 1 esteira; 2 sensores de presena (1 localizado na esteira e outro na mesa giratria); 1 rob manipulador e; 1 mesa giratria.

Figura 48: Visualizao grfica Layout 1. Uma possvel sequencializao de eventos para o layout apresentado na Figura 48 : Inicia com a ligao do motor da esteira de forma a transportar peas at o rob 1 (sensor de presena da esteira). Assim, quando uma pea detectada pelo sensor de presena posicionado no final da esteira, esta deve ser desligada e o rob 1 deve levar a pea at a mesa giratria. O rob 1 coloca a pea na mesa giratria (posio P1) e volta sua posio

inicial, gerando ento um sinal para a classe Supervisor informando o final de sua operao. A mesa d um giro de 180 levando a pea at a posio P2. Da posio P2 aps um novo giro de 180 da mesa giratria a pea retornaria a posio P1, onde o rob 1 faria a retirada desta pea para uma rea de armazenamento de peas processadas. Em termos de configurao do ambiente grfico da sequencializao, a escolha do layout 1 definida atravs dos botes de configurao de layout apresentados na Figura 37, ou seja, aps a escolha do layout pelo usurio a classe SistemaCeRV aciona a classe Layout passando por parmetro o layout selecionado. J na classe Layout, conforme pode ser observado na Figura 49, existem pontos de localizao previamente configurados para todos os equipamentos que compem o layout, onde, atravs destes pontos configurada a posio de cada equipamento (dos listados para o layout) atravs da funo setTranslation.

90

Figura 49: Cdigo desenvolvido Layout 1. Na Figura 50 pode ser visualizado o Layout 2 da CeRV, so equipamentos que compem este layout: 2 robs manipuladores; 1 esteira; 1 mesa giratria e; 2 sensores de presena (posicionados na esteira e na mesa giratria respectivamente).

Figura 50: Visualizao grfica Layout 2.

Uma possvel sequencializao de eventos para o layout apresentado na Figura 50 descrita a seguir: a simulao inicia com a ligao do motor da esteira de forma a transportar peas at o rob 1. Assim, quando uma pea detectada pelo sensor de presena posicionado no final da esteira, esta deve ser desligada e o rob 1 deve levar a pea at a mesa giratria. O rob 1 coloca a pea na mesa giratria (posio P1) e volta sua posio inicial, gerando ento um sinal para a classe Supervisor informando o final de sua operao. Aps o

91 acionamento do sensor de presena localizado na posio P1 da mesa giratria, a mesma d um giro de 180 levando a pea at a posio P2. Da posio P2 o rob 2 envia a pea para a rea de peas processadas do layout.

Figura 51: Cdigo desenvolvido Layout 2.

A Figura 51 o cdigo da classe Layout responsvel pela definio do Layout 2 da CeRV. A funcionamento deste cdigo semelhante ao funcionamento do cdigo responsvel pela configurao do Layout 1, sendo diferenciado apenas por conter mais 1 equipamento (mais 1 rob). Por fim, a Figura 52 ilustra o Layout 3 disponibilizado no sistema CeRV, este composto por um equipamento a mais que o Layout 2, ou seja, 1 sensor fotoeltrico localizado na posio P2 da mesa giratria. Este sensor fotoeltrico permite detectar peas boas ou ruins (atravs do evento controlvel I_teste). Uma possvel sequencializao de eventos para este layout descrita a seguir: A simulao inicia com a ligao do motor da esteira de forma a transportar peas at o rob 1. Assim, quando uma pea detectada pelo sensor de presena posicionado no final da esteira, esta deve ser desligada e o rob 1 deve levar a pea at a mesa giratria. O rob 1 coloca a pea na mesa giratria (posio P1) e volta sua posio

inicial, gerando ento um sinal para a classe Supervisor informando o final de sua operao. Aps o acionamento do sensor de presena localizado na posio P1 da mesa giratria, a mesma d um giro de 180 levando a pea at a posio P2. Na posio P2 acionado o sensor fotoeltrico que far a identificao atravs de um processo simulado (aleatrio) de

92 peas boas ou ruins. Assim, caso um pea seja considerada boa pela CeRV est removida para a posio X1 (posio de peas boas). Caso ela seja considerada ruim, ser levada para a posio X2 (posio de peas ruins).

Figura 52: Visualizao grfica Layout 3. Conforme pode ser observado na Figura 53 o funcionamento do cdigo da classe Layout responsvel pela definio do layout 3 semelhante aos cdigos de definio dos Layouts 1 e 2, contando apenas com um item a mais, ou seja, o sensor fotoeltrico.

Figura 53: Cdigo desenvolvido Layout 3.

93

Como pode ser observado na Figura 49, Figura 51 e Figura 53, que ilustram o funcionamento da classe Layout quanto ao processo de disposio dos equipamentos na cena grfica, uma nova distribuio do layout, levando em considerao os equipamentos previamente disponibilizados pela CeRV pode ser efetuada atravs da simples incorporao de novos pontos de localizao para cada um dos equipamentos, na rea do cdigo responsvel pela definio de pontos de localizao. Sendo necessria apenas a reconfigurao da classe Layout.

5.2. Resultados
Nesta seo sero apresentados os testes e os respectivos resultados obtidos para cada um dos layouts da CeRV (apresentados no subtpico 5.1.5) durante o uso de diversos programas de controle (supervisores). Ou seja, para cada um dos layouts foi necessrio projetar um supervisor especfico, devido as diferentes caractersticas de cada um dos layouts da CeRV. No Anexo A, pode ser visualizado cada um dos supervisores projetados relacionados aos seus respectivos layouts. O comportamento da CeRV quando submetida a sequencializao atravs de cada um destes supervisores/layouts foi apresentado no subtpico 5.1.5, onde exemplificou-se possveis sequencializaes para cada um dos layouts (seqncia de ocorrncia dos eventos). Logo, essas possveis sequencializaes foram obtidas atravs de testes efetuados na CeRV que serviram para demonstrar o comportamento dos elementos apresentados no Anexo A. Embora sejam apresentados somente estes 3 supervisores, a CeRV possibilita a correta utilizao de qualquer supervisor que seja projetado seguindo o dicionrio de eventos apresentado na Tabela 5 (captulo 4). SUBSISTEMA
Esteira Sensor da esteira Mesa giratria Rob 1

EVENTO CLASSIFICAO DESCRIO DO EVENTO


E_liga E_desl S_liga S_desl I_giro F_giro T_M Controlvel Controlvel No controlvel No controlvel Controlvel No controlvel Controlvel Liga a esteira. Desliga a esteira. Chegada de pea na esteira. Sada de pea da esteira. Liga a mesa giratria. Fim de giro da mesa. Inicia a operao do rob 1 para envio de peas da esteira para mesa giratria. Incio de operao do rob 1 para retirada de peas da mesa giratria. Fim de operao do rob 1.

T_S F_rb1

Controlvel No controlvel

Tabela 6: Eventos utilizados no Supervisor / Layout 1.

94 Conforme pode ser visto no Anexo A, para projetar o supervisor para o Layout 1 foram utilizados os eventos exemplificados na Tabela 6, nesta exemplificao cada um dos eventos relacionado ao seu respectivo equipamento e ao tipo de eventos gerado (controlvel ou no controlvel). Juntamente com cada evento, tem-se a descrio do comportamento de sua execuo. J para o Layout 2, devido a incorporao de um novo rob manipulador na cena grfica, foram utilizados 3 novos eventos que esto atrelados a este equipamento, estes eventos podem ser visualizados na Tabela 7: SUBSISTEMA Rob 2 EVENTO CLASSIFICAO DESCRIO DO EVENTO T_R Controlvel Incio de operao do rob 2 para retirada de pea ruim. T_S Controlvel Incio de operao do rob 2 para retirada de pea boa. F_rb2 No controlvel Fim de operao do rob 2 Tabela 7: Eventos utilizados no Supervisor / Layout 2.

E por fim, para projetar o Supervisor utilizado no Layout 3, devido a incorporao de um novo equipamento (sensor fotoeltrico), alm dos eventos apresentados na Tabela 6 e Tabela 7, foram adicionados tambm os eventos apresentados na Tabela 8. Os 3 supervisores projetados e apresentados anteriormente, quando submetidos a CeRV demonstraram no conter nenhum erro. Ou seja, a CeRV, alm de permitir a sequencializao de eventos atravs de um ambiente reconfigurvel, possibilita tambm a deteco de erros de sequencializao, estes podem ser detectados de forma visual atravs da sequencializao grfica de eventos e tambm atravs do prprio sistema CeRV, que exibe a ocorrncia de erros detectados pela classe Supervisor. SUBSISTEMA Estao de teste EVENTO I_teste T_OK T_NOK CLASSIFICAO Controlvel No controlvel No controlvel DESCRIO DO EVENTO Inicio do teste de pea. Resultado teste pea boa. Resultado do teste pea ruim

Tabela 8: Eventos utilizados no Supervisor / Layout 3. No Quadro 3, pode ser visualizado um trecho de um supervisor testado para o layout 1 em que houve um erro de projeto no estado 2, ou seja, com o acionamento do sensor da esteira (evento no controlvel S_liga) a esteira deveria ser desligada para que a pea permanecesse posicionada no sensor de forma que o rob 1 pudesse lev-la at a mesa

95 giratria, como no estado 2 (prximo estado) no foi previsto o evento de desligamento da esteira (eventos E_desl), a pea no permaneceu na posio de transporte para a mesa, o que resultou em um erro visual de sequencializao. O comportamento deste erro de sequencializao pode ser visualizado na Figura 54. (START) |- 0 0 E_liga 1 1 S_liga 2 2 T_M 4 4 S_desl 5 5 F_rb1 6 5 E_liga 7 ... Quadro 3: Supervisor contendo erro visual.

Figura 54: Erro de Sequencializao que pode ser observado na CeRV. Outro tipo de erro detectvel pela CeRV a no previso de eventos no controlveis em determinado estado que necessite deste tipo de evento, um exemplo da ocorrncia desta situao pode ser observado no exemplo de um trecho de um supervisor testado no layout 1 (Quadro 4).

96 (START) |- 0 0 E_liga 1 1 E_desl 2 2 T_M 4 4 S_desl 5 5 F_rb1 6 5 E_liga 7 ... Quadro 4: Supervisor contendo erro lgico. Conforme pode ser analisado na Quadro 4, a no previso do evento controlvel S_desl no estado sucessor ligao da esteira far com que quando o sensor seja acionado na cena grfica, ele envie este evento no controlvel para a classe Supervisor (conforme apresentada anteriormente, classe responsvel pela coordenao de eventos controlveis e no controlveis). Como a classe Supervisor no encontrar o evento no controlvel S_liga no estado corrente (estado 2), ser detectado uma situao de erro de evento no controlvel no encontrado no supervisor, logo este erro informado ao usurio via interface, conforme pode ser observado na Figura 55.

Figura 55: Erro evento no controlvel no encontrado. Outro aspecto relevante analisado durante os testes efetuados na CeRV foi a performance do sistema. Devido ao fato de que o ambiente CeRV inicializado a partir de um browser web e foi desenvolvido atravs da linguagem de programao Java, o aspecto performance um fator de ateno, que ganhou ainda mais importncia quanto identificada a necessidade de utilizao de Threads para o gerenciamento de cada um dos equipamentos da

97 cena grfica. Logo, os testes efetuados na CeRV focaram principalmente em analisar o nmero de Threads e peas existentes em cada uma das simulaes, analisando a taxa de frames por segundo (fps). Na Tabela 9 so exibidos os resultados dos testes levando em considerao estas 3 variveis. Estes testes foram efetuados em um computador com um processador Intel Centrino Core2Duo 1.6 Ghz com 1 giga byte de memria RAM e uma placa de vdeo Geforce 5200 (fps). Nr Peas / Nr de Threads 1 2 3 1 68fps 68fps 68fps 2 63fps 63fps 63fps 3 x 61fps 61fps 4 x x 59fps

Tabela 9: Peas X Threads X Frames Por Segundo (FPS). Conforme pode ser observado na Tabela 9, o nmero mnimo de Threads em dado momento na cena grfica 1, quando da existncia de 1, 2, 3 ou mais peas em sequencializao, e o nmero mximo de Threads detectadas foram 4, ou seja, todos os equipamentos em funcionamento em determinado instante de tempo. Este nmero de Threads somente alcanado quando 3 ou mais peas so postas em sequencializao simultaneamente. Para o nmero mnimo de Threads em execuo simultnea (1), identificouse uma taxa de 68 FPS e para o nmero mximo de Threads em execuo simultnea (4), identificou-se uma taxa de 59 FPS por segundo, ou seja, no houve queda exponencial da taxa de FPS em relao ao nmero de Threads simultneas em execuo no sistema. Fator este que possibilitou a CeRV interao com o usurio com uma boa performance de processamento da sequencializao de eventos.

98

6 CONCLUSO
Neste trabalho foi realizado um levantamento de Clulas de Manufatura Virtuais 3D. Atravs do estudo destes ambientes, de aspectos tericos de Sistemas de Eventos Discretos/ Sistemas de Manufatura e da Clula de Manufatura Real, foi possvel traar estratgias para a concepo do projeto da CeRV de forma a atender ao objetivo inicial proposto neste trabalho, ou seja, desenvolver um ambiente grfico 3D que possibilitasse a configurao de diferentes cenrios de clulas de manufatura, executando vrias estratgias e/ou programaes distintas de sequenciamento, baseado em programas de controle supervisrio reais (programao de alto nvel) e, permitindo a visualizao de toda a movimentao de objetos pela clula. Logo, a CeRV pode assumir o importante papel de planejamento de configuraes, testes de solues (otimizadas ou no) ou at mesmo como ferramenta de auxlio na aprendizagem (educao e/ou treinamento). O projeto de software da CeRV foi feito com base na linguagem UML, o que possibilitou um melhor aproveitamento das vantagens que a programao orientada a objetos fornece, tais como reuso de cdigo, possibilidade do uso de Threads, clareza de documentao, facilidade de integrao com outras tecnologias, entre outras. Isto foi possvel tambm devido ao uso das tecnologias de programao Java e VRML, integradas atravs de uma interface de autoria externa (EAI). Alm destes fatores, embora o ambiente CeRV seja inicializado a partir de um browser web e desenvolvido atravs da linguagem de programao Java, utilizando tambm o recurso de MultiThreads, o sistema apresentou nveis aceitveis de performance durante os testes. Nestes testes de performance, focou-se principalmente a relao do nmero de Threads ativas no sistema em dado momento com relao a taxa de frames por segundo (fps), em todos os casos analisados, os resultados foram satisfatrios. O requisito de reconfigurabilidade da CeRV foi comprovado pela possibilidade de configurao de sequencializaes que contemplem layouts e programas de controle variados, mediante os testes executados no sistema, alm destes aspectos, a CeRV tambm contemplou a possibilidade de se configurar os tipos de trajetria (com ou sem interpolao) que so utilizados pelos robs manipuladores no ambiente grfico. Estes robs manipuladores apresentaram caractersticas distintas dos demais equipamentos, no que se refere ao gerenciamento de suas trajetrias, devido a maior complexidade das mesmas (mais graus de liberdade). Esta caracterstica da CeRV, no que tange o gerenciamento de trajetrias dos robs, possibilita que novas trajetrias sejam adicionadas ao sistema ou simplesmente seja

99 feita a alterao das trajetrias j existentes, isto possvel atravs da recompilao da classe TrajetriaRobo. A incluso de novas trajetrias teria sua principal finalidade na diversificao da manipulao de peas nos layouts da CeRV. Atualmente, esto configuradas no sistema 3 trajetrias de manipulao de peas pelos robs, so estas: Transporte de peas da esteira para a mesa giratria (descrita pelo evento T_M); Trajetria de retirada de peas boas situadas na mesa giratria (descrita pelo evento T_S) e; Trajetria de retirada de peas ruins situadas na mesa giratria (descrita pelo evento T_R). Outro importante aspecto de reconfigurabilidade da CeRV remete aos layouts previamente disponibilizados no sistema, no total so 3 layouts que podem ser selecionados pelos usurios durante a configurao de projetos, entretanto, novos layouts podem ser incorporados. Este tipo de configurao possvel atravs da recompilao da classe Layout de forma a alterar a disposio dos equipamentos na cena grfica utilizando as funes de configurao de Layout. A nica restrio de que os novos layouts contemplem apenas os equipamentos que compem a CeRV (robs, esteira, mesa giratria e sensores). A incluso de mais equipamentos requer uma maior modificao da arquitetura do sistema, desta forma necessria tambm a definio das novas classes para gerenciar os novos equipamentos e o comportamento destes na cena grfica. Quanto aos equipamentos manipuladores disponveis nativamente na CeRV (robs 1 e 2, esteira e mesa giratria), o funcionamento destes quando da manipulao de peas independe da disposio dos mesmos no layout, ou seja, a manipulao das peas por estes equipamentos relativa a posio deles nos layouts da CeRV. O principal aspecto que permite essa independncia que a partir da adio de uma pea a qualquer um destes equipamentos, esta passa a fazer parte do corpo do respectivo equipamento. Por exemplo, quando a pea pega pelo rob, existe a adio da pea a garra do equipamento, o que da a impresso visual de que a pea foi efetivamente pega, a mesma caracterstica de funcionamento se aplica a esteira e a mesa giratria. Esta caracterstica da CeRV fundamental para que haja a possibilidade de reconfigurao de layouts simplesmente alterando a classe que define a posio de cada um destes equipamentos na cena grfica, ou seja, Classe Layout. E por fim, o fator de maior relevncia para a reconfigurabilidade da CeRV a possibilidade de se incluir qualquer supervisor para a sequencializao de eventos, sendo necessrio apenas que estes supervisores sigam o padro de eventos adotado pela CeRV (apresentado na Tabela 5) e a utilizao do padro Grail (Raymond, 1999). Desta forma, temse uma modelagem de alto nvel para a orquestrao dos eventos que sero sequencializados

100 na cena grfica. Uma das principais caractersticas desta sequencializao a possibilidade de ocorrncia de aes simultneas na cena grfica. Ou seja, embora a execuo de eventos no seja simultnea (cada evento executado em um instante de tempo discreto) a arquitetura de MultiThreads desenvolvida na CeRV, permitiu que uma nova ao seja iniciada na cena grfica mesmo havendo uma outra ao ocorrendo no mesmo instante de tempo, desta forma, todos os equipamentos da CeRV puderam executar suas aes paralelamente. Por aes da cena grfica entende-se a trajetria de equipamentos (por exemplo, esteira em funcionamento). Esta caracterstica permite o correto funcionamento de qualquer supervisor projetado no padro Grail e que utilize as bibliotecas de eventos da CeRV. O levantamento de trabalhos relacionados da literatura possibilitou a incorporao de estratgias que permitissem atender aos objetivos iniciais da CeRV. Conforme apresentado no subtpico 3.6, so as principais caractersticas destes trabalhos e que foram reutilizados na CeRV: Possibilidade de reprogramao do programa de controle; Exibio de feedback na interface grfica quando detectados erros no programa de sequencializao; Utilizao de linguagem de alto nvel para modelagem do programa de controle; Possibilidade de alterao do layout e; Possibilidade de alterao da trajetria dos equipamentos. Dentre estes aspectos, a CeRV se caracteriza por ser o nico sistema que tratou todos conjuntamente em um nico sistema. A maior deficincia da CeRV se relaciona ao no uso de Base de Dados, fator que remete a impossibilidade de se armazenar projetos no sistema, de forma que estes pudessem ser acessados e resgatados em um uso posterior (outra seo do navegador). Outras deficincias remetem a no possibilidade de reconfigurao das trajetrias para os robs manipuladores e tambm dos layouts para os equipamentos que compem a cena grfica, conforme fora planejado e projetado no captulo 4, ou seja, estes podem ser apenas alterados, mas para isto deve-se utilizar os modelos pr disponibilizados pelo sistema. Entretanto, estas deficincias no impactaram na obteno dos objetivos propostos, logo, como sugestes para trabalhos futuros que visem o aprimoramento da CeRV, sugere-se: O desenvolvimento da funcionalidade de configurao de pontos de trajetrias para os equipamentos manipuladores (robs) diretamente no sistema, assim ser possvel a utilizao de ilimitadas trajetrias. Outro aspecto que pode ser melhorado se refere a configurao de layouts (contemplando tambm a incorporao de novos

equipamentos) durante a configurao de projetos de sequencializao, sem que haja a necessidade de recompilao de classes, conforme j exemplificado. Para que seja

101 possvel o desenvolvimento destas funcionalidades, necessrio alterar a tecnologia na qual foram desenvolvidos os equipamentos da cena grfica (estes foram desenvolvidos em VRML devido ao reuso de trabalhos anteriores (Redel e Hounsell, 2004)). O suporte a aplicaes de Banco de Dados deve ser requisito bsico para esta nova tecnologia, de forma a atingir as novas e melhores caractersticas de reconfigurabilidade da CeRV. Outra sugesto a utilizao da linguagem de CLP Ladder para a sequencializao de eventos na CeRV. Desta forma, os mesmos programas de sequencializao utilizados na CeRV podero ser utilizados na Clula de Manufatura Real. Atravs da migrao das tecnologias que compem o sistema CeRV para tecnologias mais robustas, que permitam tambm a integrao com outros sistema, seria importante tambm a criao de uma interface direta com o CLP real, de forma a possibilitar que as configuraes efetuadas neste dispositivo, sejam testadas previamente na CeRV de forma direta atravs do uso desta interface (composta de hardware e software). Esta interface possibilitaria maior eficcia na identificao e correo de erros de sequencializao, antes que estes sejam submetidos a Clula de Manufatura Real, evitando assim imprevistos, tais como danos aos equipamentos que compem esta clula. Recurso este importante durante a instruo de aprendizes inexperientes, dando desta forma maior confiabilidade a configuraes de sequencializao, pois estas j seriam previamente testadas em um ambiente virtual idntico ao ambiente real. A explorao dos recursos de educao e/ou treinamento que o sistema CeRV pode proporcionar, de forma a melhorar os aspectos de feedback do sistema e interao com o usurio durante o ajuste de configuraes (auxlios do sistema na correo de erros), de forma a melhor atender estes aspectos especficos (educao e treinamento). A identificao de erros de sequencializao provocados pela incorporao de supervisores incorretos poderia acarretar em sugestes do sistema para contornar determinado problema, como por exemplo, incorporao de um estado inexistente no supervisor ou ajuste do layout, de forma a facilitar ao usurio (aprendiz) a correo do erro detectado.

102

REFERNCIAS
ARBIB, M. A. Theories of Abstract Automata. Ed. Pratice-Hall. 412 pgs. 1965.

BANERJEE, A., CECIL, J. A Virtual Reality Based Decision Support Framework For Manufacturing Simulation. Proceedings of DETC03 ASME 2003 Design Engineering Technical Conferences and Computers and Information in Engineering Conference. pp 1-7. September, 2003. Chicago.

BARAD, M., SIPPER, D. Flexibility Hierarchy in FMS: Concepts and Petri Nets Evaluation. IEEE International Conference on Systems, Man, and Cybernetics. pp 753-756. 1988. New York.

BERGER, H. Automating with SIMATIC: Integrated Automation with SIMATIC S7300/400. Ed. Wiley-VCH. 221 pgs. 2003. BOGDAN, S., KOVACIC, Z., SMOLIC-ROCAK, N., BIRGMAJER, B.. A Matrix Approach to an FMS Control Design. IEEE Robotics & Automation Magazine. pp 92-109. December, 2004.

BRUTZMAN, D. The Virtual Reality Modeling Language & Java. Communications of the ACM. pp. 57-64. June, 1998.

BURDEA, G. E COIFFET, P. Virtual Reality Technology. Nova York: John Wiley & Sons. 400 pgs. ISBN 0-471-08632-0. 1994.

BUZACOTT, J. A. The fundamental principles of flexibility in manufacturing systems. International Conference on FMS. pp13-22. Brighton. U. K. 1982.

CARDOSO, J., VALETTE, R. Redes de Petri. Ed. Universidade Federal do Estado de Santa Catarina. 212 pgs. Florianpolis, 1997.

103 CAREY, R., BELL, G. The annotated VRML 2.0 reference manual. Ed. Addison-Wesley Developers Press, ISBN 0-201- 41974-2. 504 pgs. 1997.

CASSANDRAS, C. G., LAFORTUNE, S. Introduction to Discrete Event Systems. United States of America. Ed. Kluwer Academic Publishers. 822 pgs. 1999.

CINCLAIR, E. Introduction to Stochastic Processes. Prentice-Hall, Inc., Englewood Cliffs, N.J., USA. pp 573-575. 1975.

CHAWLA, R., BANERJEE, A. A Virtual Environment For Simulating Manufacturing Operations In 3D. Proceedings of the Winter Simulation Conference. pp 991-998. 2001. Arlington.

CIOI, D., VATAU, S., MANIU, I. Virtual Reality Laboratory for Robotic Systems. SACI Romanian-Hungarian Joint Symposium on Applied Computational Intelligence. pp 1-8 2006. Timisoara.

COSTA, G. O. Uma Plataforma Computacional de Suporte ao Ciclo de Desenvolvimento de Sistemas Automatizados de Manufatura. Dissertao de mestrado apresentada ao Programa de Ps-Graduao em Engenharia de Produo e Sistemas da Pontifcia Universidade Catlica do Paran. 79 pgs. 2005.

CURY, J. E. R., GARCIA, R. T (2006). Grail para Controle Supervisrio de Sistemas a Eventos Discretos. UFSC Universidade Federal de Santa Catarina. Disponvel em: <http://www.das.ufsc.br/~cury/grail/grail_seds.pdf>. 13 pg. Acessado em: Junho, 2006.

CURY, J. E. R. Teoria de Controle Supervisrio de Sistemas a Eventos Discretos. V Simpsio Brasileiro de Automao Inteligente. Canela, RS. 82 pgs. 2001.

CURZEL, L. J. HOUNSELL, M. da S. LEAL, A. B. Uso da Realidade Virtual para Ensino de Automao da Manufatura. International Conference on Engineering and Computer Education. pp. 773-778. March, 2007. 5 pgs. So Paulo.

104 CURZEL, J. L., LEAL, A. B. Implementao de Controle Supervisrio em Linguagem LADDER para uma Clula Flexvel de Manufatura Didtica. Anais do XVI Congresso Brasileiro de Automtica, Salvador, BA. pp. 2700-2705. 2006.

CURZEL, J. L., SILVA, F. T., LEAL, B. A., AMARAL. Concepo de uma Clula Flexvel de Manufatura Didtica para o Ensino de Engenharia. COBENGE - Congresso Brasileiro de Ensino de Engenharia. pp 1-11. 2006.

DCIO, O. C. XML: Guia de Consulta Rpida. [S.l.]: So Paulo. Novatec Editora Ltda, 96 pgs. 2000.

DIEHL, D. C. Ambiente Virtual para Manipulao de uma Clula Robotizada. Trabalho de Concluso de Curso (Bacharelado em Cincia da Computao) Pontifcia Universidade Catlica do Rio Grande do Sul, 61 pgs. 2004.

ERICKSON, K. T. Programmable logic controllers. IEEE POTENTIALS. volume 1, edio 2. pp 14-18.1996.

FESTO. An Introduction to Statement List Programming. Festo Corporation. New York, USA. 117 pgs. 1999.

FREUND, E., ROSSMANN, J. Projective Virtual Reality: Bridging the Gap between Virtual Reality and Robotics. IEEE Transactions on Robotics and Automation. Pp 411422.1999.

GUNNAR, B. Robot simulation: an industrial viewpoint from selected case studies. PhD thesis, Lund University, Department of Mechanical Enginering, Division of Robotics. Sweden. 230 pgs. 2002.

HAAGE, M. E NILSSON, K. On the scalability of visualization in manufacturing. IEEE Emerging Technologies in Factory Automation. volume 2. edio 3. pp 43-51. 1999.

105 INUKAI, T., HIBINO, H., FUKUDA, Y. Simulation Environment Synchronizing Real Equipment for Manufacturing Cell. Journal of Advanced Mechanical Design, Systems, and Manufacturing. pp 238-249. vol. 1, no. 2, 2007.

JO, J., KIM, Y. PODGURSKI, A., NEWMAN, W. S. Virtual Testing of Agile Manufacturing Software Using 3D Graphical Simulation. Proceedings of the 1997 IEEE International Conference on Robotics and Automation. pp 1223-1228. April, 1997.

LANDERS, R., MIN, B.K., AND KOREN, Y. Reconfigurable Machine Tools. CIRP Annals, vol. 49, no. 1, pp. 269-274, July 2001.

LARVA (2007). http://www.joinville.udesc.br/larva. Acessado em: outubro de 2007.

LEWIS, F. L., GREL, A., BOGDAN, S., DOGANALP, A., PASTRAVANU, O. C. Analysis of deadlock and circular waits using a matrix model for flexible manufacturing system, Automatica, vol. 34, no. 9, pp. 10831100, 1998.

LI, W. Z., ZHOU, M. Two-Stage Method for Synthesizing Liveness-Enforcing Supervisors for Flexible Manufacturing Systems Using Petri Nets. IEEE Transactions on Industrial Informatics, vol. 2, no. 4. pp 313-325. 2006.

LIN, M., FU, L. A virtual factory based approach to on-line simulation and scheduling for an FMS and a case study. Journal of Intelligent Manufacturing. volume 8. no 16. pp. 269-279. 2001.

KLEINROCK, L. Queueing Systems.Volume I: Theory. John Wiley & Sons, Canada. 512 pgs. 1975.

KOREN, Y., JOVANE, F., HEISEL, U., MORIWAKI,, T., PRITSCHOW G., ULSOY G., AND VANBRUSSEL H. Reconfigurable Manufacturing Systems. A Keynote paper. CIRP Annals, Vol. 48, No. 2, pp. 6-12, November 1999.

106 KROGH, B. H. E., HOLLOWAY, L. E. Synthesis of Feedback Control Logic for Discrete Manufacturing Systems. Automatica. volume 5. no 13 pp. 641-651. 1991.

MONTGOMERY, E. Introduo dos Sistemas a Eventos Discretos e Teoria de Controle Supervisrio. Rio de Janeiro. Ed. Alta Books. 122 pgs, 2004

MURATA, T. Petri Nets: Properties, Analysis and Aplications. Proceedings of the IEEE. volume 3. no 12. pp. 541-580. 1989.

NETTO, A. V., MACHADO, L., OLIVEIRA, M. C. F. Realidade Virtual: Fundamentos e Aplicaes. Florianpolis: Visual Books, 94 pgs. 2002.

QUEIROZ, M.H., SANTOS, E. A. P., CURY, J. E. R. Sntese modular do controle supervisrio em diagrama escada para uma clula de manufatura. Anais do V Simpsio Brasileiro de Automao Inteligente, vol. 5, pp. 1-6. 2001.

RAMADGE, P. J. E., WONHAM, W. M. The Control of Discrete Event Systems. Proceedings of IEEE, 77(1), pp. 81-98. 1989. RAYMOND, D., WOOD, D. Grail: A c++ library for automata and expressions. Journal of Symbolic Computation, pp 341350, 1994. REDEL R. E., HOUNSELL M. DA S. Implementao de Simuladores de Robs com o Uso da Tecnologia de Realidade Virtual. 6 pgs. CBCOMP, 2004. So Luis.

SCOTT B. Simulations: More Than Just a Robot Tool. Robotics Online, March 2004.

THE GRAIL PROJECT (2002). Disponvel em: <http://www.csd.uwo.ca/Research/grail/>. Acessado em setembro 2007.

WAZLAWICK, R. S. Anlise e Projeto de Sistemas de Informao Orientados a Objetos. Ed. ELSEVIER. 298 pgs. 2004.

107 VERMEULEN, H., VAN NIEKERK, T., HUANG, J., HATTINGH, D. Virtual Reality Modeling of Flexible Manufacturing Systems. IEEE AFRICON. volume 4. no 6. pp. 420428. 1999.

ZELENOVIC, D. M. Flexibility a condition for effective production systems. International Journal of Production Research, vol 20, pp 319-337. 1982.

108

ANEXO A Supervisores Layout 1


(START) |- 0 0 E_liga 1 0 S_liga 2 0 S2_liga 3 1 S_liga 4 1 S2_liga 5 2 S_desl 0 2 S2_liga 6 3 E_liga 5 3 S_liga 6 3 S2_desl 0 4 E_desl 7 4 S_desl 1 4 S2_liga 8 5 S_liga 8 5 S2_desl 1 6 S_desl 3 6 S2_desl 2 7 T_M 9 7 S_desl 10 7 S2_liga 11 8 E_desl 11 8 S_desl 5 8 S2_desl 4 9 F_rb1 12 9 S_desl 13 9 S2_liga 14 10 E_liga 15 10 S_liga 7 10 S2_liga 16 11 S_desl 16 11 S2_desl 7 12 S_desl 17 12 S2_liga 18 13 F_rb1 17 13 E_liga 19 13 S_liga 9 13 S2_liga 20 14 F_rb1 18 14 S_desl 20 14 S2_desl 9 15 S_liga 21 15 S2_liga 22 16 E_liga 22 16 S_liga 11 16 S2_desl 10 17 E_liga 23 17 I_giro 24 17 S_liga 12 17 S2_liga 25 18 I_giro 26 18 S_desl 25 18 S2_desl 12 19 F_rb1 23 19 S_liga 27 19 S2_liga 28 20 F_rb1 25 20 E_liga 28 20 S_liga 14 20 S2_desl 13 21 T_M 27 21 S_desl 15 21 S2_liga 29 22 S_liga 29 22 S2_desl 15 69 F_giro 83 69 S_desl 85 69 S2_desl 53 70 I_giro 84 70 S_liga 86 70 S2_liga 87 71 E_liga 87 71 I_giro 85 71 S_liga 56 71 S2_desl 55 72 S_desl 57 72 S2_liga 60 73 T_S 88 73 E_liga 78 73 S_liga 60 73 S2_desl 57 74 F_rb1 6 74 S_desl 88 74 S2_desl 89 75 F_rb1 86 75 S_desl 61 75 S2_liga 90 76 F_rb1 87 76 S_liga 90 76 S2_desl 61 77 E_desl 91 77 S_desl 63 77 S2_liga 92 78 T_S 93 78 S_liga 92 78 S2_desl 63 79 F_giro 91 79 S_desl 94 79 S2_liga 95 80 E_desl 95 80 F_giro 92 80 S_desl 65 80 S2_desl 64 81 F_rb1 96 81 S_desl 97 81 S2_liga 98 82 E_liga 99 82 I_giro 94 82 S_liga 66 82 S2_liga 100 83 I_giro 95 83 S_desl 100 83 S2_desl 66 84 F_giro 99 84 S_liga 101 84 S2_liga 102 85 E_liga 102 85 F_giro 100 85 S_liga 69 85 S2_desl 68 86 S_desl 70 86 S2_liga 103 87 I_giro 102 87 S_liga 103 87 S2_desl 70 88 F_rb1 3 88 E_liga 93 88 S_liga 74 88 S2_desl 104 89 F_rb1 2 136 S_liga 149 136 S2_liga 150 137 E_desl 151 137 S_desl 124 137 S2_liga 152 138 I_giro 150 138 S_liga 152 138 S2_desl 124 139 E_liga 148 139 S_liga 153 139 S2_liga 154 140 F_giro 153 140 S_desl 125 140 S2_liga 127 141 E_liga 150 141 F_giro 154 141 S_liga 127 141 S2_desl 125 142 T_S 155 142 S_desl 154 142 S2_desl 153 143 F_rb1 151 143 S_desl 156 143 S2_liga 157 144 F_rb1 152 144 E_desl 157 144 S_desl 129 144 S2_desl 128 145 T_S 158 145 S_desl 132 145 S2_desl 131 146 F_rb1 22 146 S_liga 158 146 S2_desl 159 147 F_rb1 10 147 E_liga 159 147 S_liga 134 147 S2_liga 133 148 S_liga 160 148 S2_liga 161 149 E_desl 162 149 F_giro 160 149 S_desl 136 149 S2_liga 163 150 F_giro 161 150 S_liga 163 150 S2_desl 136 151 S_desl 164 151 S2_liga 165 152 E_desl 165 152 I_giro 163 152 S_desl 138 152 S2_desl 137 153 S_desl 139 153 S2_liga 142 154 T_S 166 154 E_liga 161 154 S_liga 142 154 S2_desl 139 155 F_rb1 36 155 S_desl 166 155 S2_desl 167 156 F_rb1 164 156 E_liga 168 156 S_liga 143

109
23 I_giro 30 23 S_liga 31 23 S2_liga 32 24 E_liga 30 24 F_giro 33 24 S_liga 34 24 S2_liga 35 25 E_liga 32 25 I_giro 35 25 S_liga 18 25 S2_desl 17 26 F_giro 36 26 S_desl 35 26 S2_desl 34 27 F_rb1 31 27 E_desl 37 27 S_desl 19 27 S2_liga 38 28 F_rb1 32 28 S_liga 38 28 S2_desl 19 29 S_desl 22 29 S2_desl 21 30 F_giro 39 30 S_liga 40 30 S2_liga 41 31 E_desl 42 31 S_desl 23 31 S2_liga 43 32 I_giro 41 32 S_liga 43 32 S2_desl 23 33 E_liga 39 33 I_giro 44 33 S_liga 45 33 S2_liga 46 34 F_giro 45 34 S_desl 24 34 S2_liga 26 35 E_liga 41 35 F_giro 46 35 S_liga 26 35 S2_desl 24 36 I_giro 47 36 S_desl 46 36 S2_desl 45 37 F_rb1 42 37 S_desl 48 37 S2_liga 49 38 F_rb1 43 38 E_desl 49 38 S_desl 28 38 S2_desl 27 39 I_giro 50 39 S_liga 51 39 S2_liga 52 40 E_desl 53 40 F_giro 51 40 S_desl 30 40 S2_liga 54 41 F_giro 52 41 S_liga 54 41 S2_desl 30 42 S_desl 55 42 S2_liga 56 43 E_desl 56 43 I_giro 54 43 S_desl 32 43 S2_desl 31 44 E_liga 50 44 F_giro 57 44 S_liga 58 44 S2_liga 59 45 S_desl 33 45 S2_liga 36 89 S_desl 104 89 S2_liga 74 90 F_rb1 103 90 S_desl 76 90 S2_desl 75 91 S_desl 105 91 S2_liga 106 92 T_S 107 92 E_desl 106 92 S_desl 78 92 S2_desl 77 93 F_rb1 5 93 S_liga 107 93 S2_desl 108 94 E_liga 109 94 F_giro 105 94 S_liga 79 94 S2_liga 110 95 F_giro 106 95 S_desl 110 95 S2_desl 79 96 S_desl 111 96 S2_liga 112 97 F_rb1 111 97 E_liga 113 97 S_liga 81 97 S2_liga 114 98 F_rb1 112 98 S_desl 114 98 S2_desl 81 99 I_giro 109 99 S_liga 115 99 S2_liga 116 100 E_liga 116 100 I_giro 110 100 S_liga 83 100 S2_desl 82 101 F_giro 115 101 S_desl 84 101 S2_liga 117 102 F_giro 116 102 S_liga 117 102 S2_desl 84 103 I_giro 117 103 S_desl 87 103 S2_desl 86 104 F_rb1 0 104 E_liga 108 104 S_liga 89 104 S2_liga 88 105 E_liga 118 105 S_liga 91 105 S2_liga 119 106 T_S 120 106 S_desl 119 106 S2_desl 91 107 F_rb1 8 107 E_desl 120 107 S_desl 93 107 S2_desl 121 108 F_rb1 1 108 S_liga 121 108 S2_liga 93 109 F_giro 118 109 S_liga 122 109 S2_liga 123 110 E_liga 123 110 F_giro 119 110 S_liga 95 110 S2_desl 94 111 E_liga 124 111 I_giro 125 111 S_liga 96 111 S2_liga 126 112 I_giro 127 156 S2_liga 169 157 F_rb1 165 157 S_desl 169 157 S2_desl 143 158 F_rb1 29 158 S_desl 146 158 S2_desl 170 159 F_rb1 15 159 S_liga 170 159 S2_liga 146 160 E_desl 171 160 S_desl 148 160 S2_liga 172 161 T_S 173 161 S_liga 172 161 S2_desl 148 162 F_giro 171 162 S_desl 174 162 S2_liga 175 163 E_desl 175 163 F_giro 172 163 S_desl 150 163 S2_desl 149 164 E_liga 176 164 I_giro 174 164 S_liga 151 164 S2_liga 177 165 I_giro 175 165 S_desl 177 165 S2_desl 151 166 F_rb1 46 166 E_liga 173 166 S_liga 155 166 S2_desl 178 167 F_rb1 45 167 S_desl 178 167 S2_liga 155 168 F_rb1 176 168 S_liga 179 168 S2_liga 180 169 F_rb1 177 169 E_liga 180 169 S_liga 157 169 S2_desl 156 170 F_rb1 21 170 S_desl 159 170 S2_liga 158 171 S_desl 181 171 S2_liga 182 172 T_S 183 172 E_desl 182 172 S_desl 161 172 S2_desl 160 173 F_rb1 52 173 S_liga 183 173 S2_desl 184 174 E_liga 185 174 F_giro 181 174 S_liga 162 174 S2_liga 186 175 F_giro 182 175 S_desl 186 175 S2_desl 162 176 I_giro 185 176 S_liga 187 176 S2_liga 188 177 E_liga 188 177 I_giro 186 177 S_liga 165 177 S2_desl 164 178 F_rb1 33 178 E_liga 184 178 S_liga 167 178 S2_liga 166 179 F_rb1 187

110
46 E_liga 52 46 I_giro 59 46 S_liga 36 46 S2_desl 33 47 F_giro 60 47 S_desl 59 47 S2_desl 58 48 F_rb1 55 48 E_liga 61 48 S_liga 37 48 S2_liga 62 49 F_rb1 56 49 S_desl 62 49 S2_desl 37 50 F_giro 63 50 S_liga 64 50 S2_liga 65 51 E_desl 66 51 S_desl 39 51 S2_liga 67 52 I_giro 65 52 S_liga 67 52 S2_desl 39 53 F_giro 66 53 S_desl 68 53 S2_liga 69 54 E_desl 69 54 F_giro 67 54 S_desl 41 54 S2_desl 40 55 E_liga 70 55 I_giro 68 55 S_liga 42 55 S2_liga 71 56 I_giro 69 56 S_desl 71 56 S2_desl 42 57 E_liga 63 57 S_liga 72 57 S2_liga 73 58 F_giro 72 58 S_desl 44 58 S2_liga 47 59 E_liga 65 59 F_giro 73 59 S_liga 47 59 S2_desl 44 60 T_S 74 60 S_desl 73 60 S2_desl 72 61 F_rb1 70 61 S_liga 75 61 S2_liga 76 62 F_rb1 71 62 E_liga 76 62 S_liga 49 62 S2_desl 48 63 S_liga 77 63 S2_liga 78 64 E_desl 79 64 F_giro 77 64 S_desl 50 64 S2_liga 80 65 F_giro 78 65 S_liga 80 65 S2_desl 50 66 T_M 81 66 S_desl 82 66 S2_liga 83 67 E_desl 83 67 I_giro 80 67 S_desl 52 67 S2_desl 51 68 E_liga 84 68 F_giro 82 112 S_desl 126 112 S2_desl 96 113 F_rb1 124 113 S_liga 128 113 S2_liga 129 114 F_rb1 126 114 E_liga 129 114 S_liga 98 114 S2_desl 97 115 T_M 128 115 S_desl 99 115 S2_liga 130 116 I_giro 123 116 S_liga 130 116 S2_desl 99 117 F_giro 130 117 S_desl 102 117 S2_desl 101 118 S_liga 131 118 S2_liga 132 119 T_S 133 119 E_liga 132 119 S_liga 106 119 S2_desl 105 120 F_rb1 11 120 S_desl 133 120 S2_desl 134 121 F_rb1 4 121 E_desl 134 121 S_desl 108 121 S2_liga 107 122 F_giro 131 122 S_desl 109 122 S2_liga 135 123 F_giro 132 123 S_liga 135 123 S2_desl 109 124 I_giro 136 124 S_liga 137 124 S2_liga 138 125 E_liga 136 125 F_giro 139 125 S_liga 140 125 S2_liga 141 126 E_liga 138 126 I_giro 141 126 S_liga 112 126 S2_desl 111 127 F_giro 142 127 S_desl 141 127 S2_desl 140 128 F_rb1 137 128 E_desl 143 128 S_desl 113 128 S2_liga 144 129 F_rb1 138 129 S_liga 144 129 S2_desl 113 130 I_giro 135 130 S_desl 116 130 S2_desl 115 131 S_desl 118 131 S2_liga 145 132 T_S 146 132 S_liga 145 132 S2_desl 118 133 F_rb1 16 133 E_liga 146 133 S_liga 120 133 S2_desl 147 134 F_rb1 7 134 S_desl 147 134 S2_liga 120 135 F_giro 145 135 S_desl 123 179 S_desl 168 179 S2_liga 189 180 F_rb1 188 180 S_liga 189 180 S2_desl 168 181 E_liga 190 181 S_liga 171 181 S2_liga 191 182 T_S 192 182 S_desl 191 182 S2_desl 171 183 F_rb1 67 183 E_desl 192 183 S_desl 173 183 S2_desl 193 184 F_rb1 39 184 S_liga 193 184 S2_liga 173 185 F_giro 190 185 S_liga 194 185 S2_liga 195 186 E_liga 195 186 F_giro 191 186 S_liga 175 186 S2_desl 174 187 S_desl 176 187 S2_liga 196 188 I_giro 195 188 S_liga 196 188 S2_desl 176 189 F_rb1 196 189 S_desl 180 189 S2_desl 179 190 S_liga 197 190 S2_liga 198 191 T_S 199 191 E_liga 198 191 S_liga 182 191 S2_desl 181 192 F_rb1 83 192 S_desl 199 192 S2_desl 200 193 F_rb1 51 193 E_desl 200 193 S_desl 184 193 S2_liga 183 194 F_giro 197 194 S_desl 185 194 S2_liga 201 195 F_giro 198 195 S_liga 201 195 S2_desl 185 196 I_giro 201 196 S_desl 188 196 S2_desl 187 197 S_desl 190 198 T_S 203 198 S_liga 202 198 S2_desl 190 199 F_rb1 100 199 E_liga 203 199 S_liga 192 199 S2_desl 204 200 F_rb1 66 200 S_desl 204 200 S2_liga 192 201 F_giro 202 201 S_desl 195 201 S2_desl 194 202 T_S 205 202 S_desl 198 202 S2_desl 197 203 F_rb1 116 203 S_liga 205 203 S2_desl 206

111
68 S_liga 53 68 S2_liga 85 135 S2_desl 122 136 F_giro 148 204 F_rb1 82 204 E_liga 206 204 S_liga 200 204 S2_liga 199 205 F_rb1 130 205 S_desl 203 205 S2_desl 207 206 F_rb1 99 206 S_liga 207 206 S2_liga 203 207 F_rb1 115 207 S_desl 206 207 S2_liga 205 197 S2_liga 202 0 -| (FINAL) 10 -| (FINAL) 17 -| (FINAL) 55 -| (FINAL) 33 -| (FINAL) 82 -| (FINAL) 57 -| (FINAL) 105 -| (FINAL) 111 -| (FINAL) 164 -| (FINAL) 139 -| (FINAL) 181 -| (FINAL)

Layout 2
0 E_liga 1 1 S_liga 2 2 E_desl 3 3 T_M 4 4 S_desl 5 5 F_rb 6 5 E_liga 7 6 E_liga 8 6 I_giro 9 7 F_rb 8 7 S_liga 10 8 I_giro 11 8 S_liga 12 9 E_liga 11 9 F_giro 13 10 F_rb1 2 10 E_desl 14 11 F_giro 15 11 S_liga 16 12 E_desl 17 12 I_giro 16 13 E_liga 15 13 T_S 28 14 F_rb17 14 S_desl 5 15 T_S 28 15 S_liga 19 16 E_desl 21 16 F_giro 19 17 I_giro 21 18 E_liga 20 19 E_desl 24 19 T_S 28 20 S_liga 25 21 F_giro 24 22 T_S 28 22 E_liga 26 23 T_R 28 23 E_liga 27 24 T_S 28 25 E_desl 29 26 T_S 32 26 S_liga 30 27 T_R 32 27 S_liga 31 28 F_rb2 0 28 E_liga 32 29 T_M 33 30 T_S 36 30 E_desl 34 31 T_R 36 31 E_desl 35 32 F_rb2 1 32 S_liga 36 33 S_desl 39 34 T_M 37 34 T_S 40 35 T_M 38 35 T_R 40 36 F_rb2 2 36 E_desl 40 37 T_S 41 37 S_desl 42 38 T_R 41 38 S_desl 43 39 F_rb 44 39 E_liga 45 40 T_M 41 40 F_rb2 3 41 F_rb2 4 41 S_desl 46 42 T_S 46 42 F_rb 47 42 E_liga 48 43 T_R 46 43 F_rb 49 43 E_liga 50 44 E_liga 51 45 F_rb 51 45 S_liga 52 46 F_rb 53 46 F_rb2 5 46 E_liga 54 47 T_S 53 47 E_liga 55 48 T_S 54 48 F_rb 55 48 S_liga 56 49 T_R 53 49 E_liga 57 50 T_R 54 50 F_rb 57 50 S_liga 58 51 S_liga 59 52 F_rb 59 52 E_desl 60 53 F_rb2 6 53 E_liga 61 54 F_rb 61 60 F_rb 67 60 S_desl 39 61 F_rb2 8 61 S_liga 68 62 F_rb 68 62 F_rb2 10 62 E_desl 69 63 T_S 68 63 E_desl 70 64 T_S 69 64 F_rb 70 64 S_desl 42 65 T_R 68 65 E_desl 71 66 T_R 69 66 F_rb71 66 S_desl 43 68 F_rb2 12 68 E_desl 72 69 F_rb 72 69 F_rb2 14 69 S_desl 46

112
70 T_S 72 70 T_R 72 72 F_rb2 17

Layout 3
0 E_liga 1 1 S_liga 2 2 E_desl 3 3 T_M 4 4 S_desl 5 5 F_rb 6 5 E_liga 7 6 E_liga 8 6 I_giro 9 7 F_rb 8 7 S_liga 10 8 I_giro 11 8 S_liga 12 9 E_liga 11 9 F_giro 13 10 F_rb1 2 10 E_desl 14 11 F_giro 15 11 S_liga 16 12 E_desl 17 12 I_giro 16 13 E_liga 15 13 T_S 28 14 F_rb17 14 S_desl 5 15 T_S 28 15 S_liga 19 16 E_desl 21 16 F_giro 19 17 I_giro 21 18 E_liga 20 19 E_desl 24 19 T_S 28 20 S_liga 25 21 F_giro 24 22 T_S 28 22 E_liga 26 23 T_R 28 23 E_liga 27 24 T_S 28 25 E_desl 29 26 T_S 32 26 S_liga 30 27 T_R 32 27 S_liga 31 28 F_rb2 0 28 E_liga 32 29 T_M 33 30 T_S 36 30 E_desl 34 31 T_R 36 31 E_desl 35 32 F_rb2 1 32 S_liga 36 33 S_desl 39 34 T_M 37 34 T_S 40 35 T_M 38 35 T_R 40 36 F_rb2 2 36 E_desl 40 37 T_S 41 37 S_desl 42 38 T_R 41 38 S_desl 43 39 F_rb 44 39 E_liga 45 40 T_M 41 40 F_rb2 3 41 F_rb2 4 41 S_desl 46 42 T_S 46 42 F_rb 47 42 E_liga 48 43 T_R 46 43 F_rb 49 43 E_liga 50 44 E_liga 51 45 F_rb 51 45 S_liga 52 46 F_rb 53 46 F_rb2 5 46 E_liga 54 47 T_S 53 47 E_liga 55 48 T_S 54 48 F_rb 55 48 S_liga 56 49 T_R 53 49 E_liga 57 50 T_R 54 50 F_rb 57 50 S_liga 58 51 S_liga 59 52 F_rb 59 52 E_desl 60 53 F_rb2 6 53 E_liga 61 54 F_rb 61 60 F_rb 67 60 S_desl 39 61 F_rb2 8 61 S_liga 68 62 F_rb 68 62 F_rb2 10 62 E_desl 69 63 T_S 68 63 E_desl 70 64 T_S 69 64 F_rb 70 64 S_desl 42 65 T_R 68 65 E_desl 71 66 T_R 69 66 F_rb71 66 S_desl 43 68 F_rb2 12 68 E_desl 72 69 F_rb 72 69 F_rb2 14 69 S_desl 46 70 T_S 72 70 T_R 72 72 F_rb2 17

Você também pode gostar