(Parte 1 de 8)

Renato Gonçalves de Freitas Victor Anselmo Silva

São Paulo 2006

Renato Gonçalves de Freitas Victor Anselmo Silva

Monografia apresentada à Escola Politécnica da Universidade de São Paulo relacionado à disciplina PMR2550 – Projeto de Conclusão de Curso I.

Curso de Graduação: Engenharia Mecatrônica

Orientador: Prof. Dr. Paulo Eigi Miyagi

São Paulo 2006

Freitas, Renato Gonçalves de

Ferramenta gráfica baseada em rede de Petri para modela- gem, simulação, programação e supervisão de sistemas de automação / R.G. de Freitas, V.A. Silva. -- São Paulo, 2006. 84 p.

Trabalho de Formatura - Escola Politécnica da Universidade de São Paulo. Departamento de Engenharia Mecatrônica e de Sistemas Mecânicos.

1.Controladores programáveis 2.Redes de Petri 3.Softwares

(Modelagem; Simulação) I.Silva, Victor Anselmo I.Universidade de São Paulo. Escola Politécnica. Departamento de Engenharia Mecatrônica e de Sistemas Mecânicos I.t.

Aos meus pais e minha irmã, que sempre me incentivaram nos meus trabalhos.

Renato Gonçalves de Freitas

Ao meu avô, Samuel Anselmo, e à minha mãe, Marisa Anselmo, que desde os meus primeiros dias de vida têm me dado suporte, força e têm aguardado por esse momento. E ao meu irmão Heitor, um filho e um irmão exemplar.

Victor Anselmo Silva

Ao nosso orientador, Prof. Dr. Paulo Eigi Miyagi, pelo direcionamento e atenção dados ao longo do desenvolvimento deste trabalho de formatura.

Ao Eng. doutorando Marcosiris Amorim de Oliveira Pessoa que nos auxiliou, na fase final deste trabalho, na realização dos estudos de caso.

À Verônica, minha namorada, pela paciência, apoio e carinho demonstrados por mim nestes últimos três anos (Victor).

Aos nossos professores, que contribuíram para nossa formação na Escola Politécnica da Universidade de São Paulo.

“Não existe trabalho ruim. O ruim é ter que trabalhar.” Seu Madruga (Don Ramon)

Os chamados sistemas a eventos discretos (SEDs), isto é, sistemas cuja dinâmica é dirigida essencialmente pela ocorrência de eventos instantâneos e estados discretos, apresentam características como concorrência, sincronismo, assincronismo e conflitos entre processos e podem ser modelados e analisados por meio de uma ferramenta gráfica e matemática chamada Rede de Petri (RdP).

Tendo como foco a implementação de sistemas de automação de SEDs com controladores programáveis (CPs), o objetivo do presente trabalho é a construção de uma ferramenta baseada em RdP para modelagem, simulação, programação e supervisão destes sistemas.

Por meio de uma interface gráfica, a ferramenta permite ao usuário criar modelos em RdP ou editar modelos existentes. Como formato de intercâmbio entre softwares que trabalham com RdP, esses modelos são traduzidos pela ferramenta para a notação XML (eXtensible Markup Language), a qual baseiase em tags que estabelecem um procedimento para identificar, categorizar e organizar informações.

Esta ferramenta também é utilizada para traduzir o modelo em RdP de uma estratégia de controle para um programa escrito em linguagem adequada à implementação em CPs. Assim, este programa pode ser carregado e executado diretamente em um CP, responsável pela automação do sistema. Além disso, durante a operação efetiva do sistema, os sinais de entrada e de saída tratados pelo CP podem ser monitorados pela ferramenta de modo que é possível acompanhar a dinâmica do sistema, indicada pela evolução dos estados da RdP apresentada na interface.

Palavras-chave: Controladores programáveis, Redes de Petri, modelagem, simulação.

Discrete events systems (DES) are systems whose dynamic is essentially driven by the occurrence of instantaneous events and discrete states. They present characteristics as concurrency, synchronism, asynchronism and conflicts among processes, and can be modeled and analyzed through a graphical and mathematical tool called Petri Net (PN).

Considering as focus the implementation of automation systems of DESs with programmable controllers (PCs), the objective of the present work is the development of a tool based on PN for modeling, simulation, programming and supervision of these systems.

Through a graphical interface, the tool allows the user to create models in PN or edit existing models. As a format of data interchange among softwares that work with PN, the models are translated by the tool into XML (eXtensible Markup Language) notation, which is based on tags that establish a procedure to identify, categorize and organize information.

This tool is also used to translate the PN model of a control strategy for a

PC program written in suitable language. Thus, this program can be directly loaded and executed in a PC, responsible for the automation of the modeled system. Throughout the effective operation of the system, the tool can monitor input and output signals treated by the PC, then, it is possible to follow/visualize the dynamics of the system, indicated by the evolution of the states of the PN presented in the interface.

Keywords: Programmable controllers, Petri Nets, modeling, simulation.

LISTA DE FIGURAS10
LISTA DE TABELAS1
1. INTRODUÇÃO12
1.1. MOTIVAÇÃO E JUSTIFICATIVA12
1.2. OBJETIVO13
2. CONCEITOS FUNDAMENTAIS14
2.1. SISTEMA A EVENTOS DISCRETOS (SED)14
2.2. SISTEMA DE MANUFATURA (SM)15
2.3. REDE DE PETRI (RDP)16
2.4. CONTROLADORES PROGRAMÁVEIS (CPS) E SUAS LINGUAGENS DE PROGRAMAÇÃO24
2.5. EXTENSIBLE MARKUP LANGUAGE (XML) E PETRI NET MARKUP LANGUAGE (PNML)29
2.6. ORIENTAÇÃO A OBJETOS32
2.7. ANÁLISE DE REQUISITOS34
2.8. CASOS DE USO35
2.9. QUALIDADE DE SOFTWARE36
2.10. TESTE DE SOFTWARE37
DE SISTEMAS DE AUTOMAÇÃO39
3.1. ESCOLHA DAS LINGUAGENS DE PROGRAMAÇÃO39
3.1.1. Linguagem para a implementação da ferramenta39
3.1.2. Linguagem de programação do CP41
3.2. LEVANTAMENTO DE REQUISITOS42
3.2.1. Requisitos dos Algoritmos43
3.2.2. Requisitos da Interface43
3.3. ESTRUTURAS DE DADOS4
3.3.1. Modelagem da RdP segundo a orientação a objeto4
3.3.2. Estrutura dos modelos em RdP descritos segundo a notação XML46
3.4. ALGORITMO “JOGADOR DE MARCAS”46
3.5. GERAÇÃO DE PROGRAMAS DE CONTROLE DE CPS A PARTIR DE SIPN48
3.6. DESENVOLVIMENTO DA INTERFACE GRÁFICA52
3.7. TESTES54
3.7.1. Criação e edição de RdPs54
3.7.2. Descrição da RdP em XML56
3.7.3. Geração de programa de CP a partir de um SIPN56
4. ESTUDOS DE CASO58
4.1. MODELAGEM E SIMULAÇÃO - MINICIM58
4.2. PROGRAMAÇÃO DA ESTAÇÃO DE MONTAGEM DO MINICIM61
4.3. SUPERVISÃO REMOTA63
5. CONCLUSÃO6
6. TRABALHOS FUTUROS69
7. REFERÊNCIAS BIBLIOGRÁFICAS70
ANEXO A – ESTRATÉGIA DE CONTROLE DESCRITA EM NOTAÇÃO XML73

3. FERRAMENTA PARA MODELAGEM, SIMULAÇÃO, PROGRAMAÇÃO E SUPERVISÃO

FERRAMENTA7
ANEXO C – CÓDIGO EM IL GERADO PELA FERRAMENTA81

ANEXO B – PROGRAMA DE CONTROLE EM INSTRUCTION LIST GERADO PELA 9

FIGURA 2.1: COMPORTAMENTO DE UMA VARIÁVEL DE UM SED14
FIGURA 2.2: REPRESENTAÇÃO PARA UM SISTEMA DE MANUFATURA16
FIGURA 2.3: EXEMPLO DE UMA RDP CE19
DISPARO NÃO OCORRE21
FIGURA 2.5: REPRESENTAÇÃO DO SISTEMA23
FIGURA 2.6: CONTROLADOR MODELADO EM SIPN24
FIGURA 2.7: ESTRUTURA SIMPLIFICADA DE UM CP25
FIGURA 2.8: REPRESENTAÇÕES EM LINGUAGENS TEXTUAIS DE UMA OPERAÇÃO BOOLEANA27
FIGURA 2.9: EXEMPLO DE UM PROGRAMA ESCRITO EM LD28
FIGURA 2.10: FBD28
FIGURA 2.1: EXEMPLO DE UM PROGRAMA EM SFC29
FIGURA 2.12: (A) ESTRUTURA EM XML. (B) TRECHO DE UM DOCUMENTO EM XML30
FIGURA 2.13: (A) RDP. (B) DESCRIÇÃO EM PNML31
FIGURA 3.1: DIAGRAMA UML DO PACOTE “CORE”45
FIGURA 3.2: ALGORITMO PARA O “JOGADOR DE MARCAS” DE UMA RDP47
FIGURA 3.3: MODELO EM SIPN E CÓDIGO EM IL GERADO PARA O MODELO49
FIGURA 3.4: FERRAMENTA EM EXECUÇÃO53
FIGURA 3.5: RDP SIMPLES54
FIGURA 3.6: RDP COM CONFLITO E ARCOS COM PESO5
FIGURA 3.7: RDP QUE MODELA UM BOTÃO LIGA / DESLIGA5
FIGURA 3.8: RDP QUE MODELA UM SENSOR DE PRESENÇA5
FIGURA 3.9: DESCRIÇÃO DA RDP EM XML56
FIGURA 3.10: RDP DE MAIOR PORTE DESCRITA EM XML57
FIGURA 4.1: MINICIM59
FIGURA 4.2: MINICIM MODELADO NA FERRAMENTA DESENVOLVIDA60
FIGURA 4.3: MINICIM MODELADO NO HPSIM60
FIGURA 4.4: RDP QUE CONTROLA A MOVIMENTAÇÃO DO MANIPULADOR62
FIGURA 4.5: SIMULAÇÃO DO MODELO EM RDP PARA CONTROLE DA ESTAÇÃO DE MONTAGEM63
FIGURA 4.6: SIMULAÇÃO DO MODELO EM SIPN DO ACUMULADOR64
FIGURA 4.7: SOFTWARE COM O SISTEMA MODELADO65
FIGURA 4.8: SOFTWARE COM ACESSO REMOTO65

FIGURA 2.4: (A) TRANSIÇÃO HABILITADA. (B) ESTADO APÓS O DISPARO. (C) SITUAÇÃO EM QUE O 10

TABELA 2.1: : ALGUMAS INTERPRETAÇÕES TÍPICAS PARA LUGARES E TRANSIÇÕES18
TABELA 2.2: CODIFICAÇÃO DOS SINAIS DO CONTROLADOR24
TABELA 2.3: ELEMENTOS PNML31
1997)40
TABELA 5.1: RELAÇÃO DE FUNCIONALIDADES DOS SOFTWARES67

LISTA DE TABELAS TABELA 3.1: COMPARATIVO ENTRE LINGUAGENS ORIENTADAS A OBJETO (ADAPTADO DE CULWIN, 1

1. INTRODUÇÃO

1.1. Motivação e Justificativa

Segundo MIYAGI (1996), man made systems (sistemas feitos pelo homem), como sistemas de manufatura, de transporte, de comunicação, de redes de computadores, etc. podem ser caracterizados por uma dinâmica causada pela ocorrência de eventos discretos e em muitos casos são tratados como objetos de controle de sistemas de automação comandados por controladores programáveis (CPs).

Em linhas gerais, os SEDs são caracterizados por apresentarem comportamento dinâmico governado pela ocorrência de eventos discretos, vinculados a condições pré-estabelecidas, não havendo, necessariamente, uma pré-determinação do instante em que cada evento ocorre. Nesses sistemas, as transições de estados ocorrem em instantes de tempo discretos e assíncronos, em resposta a eventos considerados instantâneos (ARAKAKI, 1993).

Os SEDs incluem desde sistemas relativamente simples e de pequeno porte até sistemas de grande porte, com elementos dispostos geograficamente e com interações e funções de alta complexidade em atendimento a critérios de desempenho, produtividade e qualidade. Observa-se, no entanto, que se alguns desses critérios são mais claros em sistemas de manufatura, o mesmo não acontece em áreas como de automação residencial.

Do ponto de vista de modelagem e análise de SEDs, uma das técnicas de comprovada eficiência é a Rede de Petri (RdP). De fato, além dos vários trabalhos já publicados que exploram a aplicação de RdP na representação e aprimoramento de SEDs, a RdP foi também adotada como a base de uma linguagem de descrição funcional de CPs, o SFC (Sequential Flow Chart).

Existem assim, atualmente, diversas ferramentas de edição e análise de

SEDs baseadas em RdP, bem como trabalhos que estabelecem uma relação entre grafos de RdP e programas de controle de CPs. Um exemplo disso pode ser encontrado em ZHURAWASKI & ZHOU (1994), no qual é apresentada uma comparação entre redes de Petri de Tempo Real (RTPN – Real Time Petri Nets) e diagramas elétricos de relés (LLD – Ladder Logic Diagram).

Contudo, os arquivos gerados por estas ferramentas, em geral, estão em um formato que impossibilita o intercâmbio com outras ferramentas de modelagem e análise de SEDs e que também não é próprio para serem diretamente carregados como programas de CPs.

1.2. Objetivo

Tendo como foco a implementação de sistemas de automação de SEDs comandados por CPs, o objetivo do presente trabalho é a construção de uma ferramenta, baseada em RdP, para modelagem, simulação, programação e supervisão destes sistemas.

Por meio de uma interface gráfica, a ferramenta deve permitir ao usuário a criação de modelos em RdP ou a edição de modelos existentes. Como formato de intercâmbio entre softwares que trabalhem com RdP, esses modelos devem ser traduzidos pelo software para a notação XML (eXtensible Markup Language), a qual baseia-se em tags que estabelecem uma técnica para identificar, categorizar e organizar informações em arquivos de dados.

Esta ferramenta gráfica também deve ser capaz de traduzir o modelo em

RdP de uma estratégia de controle para um programa para CPs, escrito em linguagem adequada à implementação. Assim, este programa poderia ser carregado diretamente em um CP, responsável pela execução do controle do sistema. Além disso, quando da execução, os sinais de entrada e de saída tratados pelo CP também devem ter a possibilidade de serem monitorados através da ferramenta de modo que se possa acompanhar a dinâmica do sistema, por meio da evolução dos estados da RdP apresentada na interface gráfica para o usuário.

(Parte 1 de 8)

Comentários