Sistema de programação de produção com representação...

32
Sistema de programação de produção Sistema de programação de produção com representação gráfica utilizando com representação gráfica utilizando OpenGL em Java OpenGL em Java OpenGL em Java OpenGL em Java Jaques Douglas Claudino Jaques Douglas Claudino Orientador: Orientador: Prof. Dr. Paulo Cesar Rodacki Gomes Prof. Dr. Paulo Cesar Rodacki Gomes 09/07/2007

Transcript of Sistema de programação de produção com representação...

Page 1: Sistema de programação de produção com representação ...campeche.inf.furb.br/tccs/2007-I/TCC2007-1-17-AP-JaquesDClaudino.pdfRoteiro de Apresentação 11.. Introdução ──

Sistema de programação de produção Sistema de programação de produção com representação gráfica utilizando com representação gráfica utilizando

OpenGL em JavaOpenGL em JavaOpenGL em JavaOpenGL em Java

Jaques Douglas ClaudinoJaques Douglas ClaudinoOrientador:Orientador:

Prof. Dr. Paulo Cesar Rodacki GomesProf. Dr. Paulo Cesar Rodacki Gomes 09/07/2007

Page 2: Sistema de programação de produção com representação ...campeche.inf.furb.br/tccs/2007-I/TCC2007-1-17-AP-JaquesDClaudino.pdfRoteiro de Apresentação 11.. Introdução ──

Roteiro de ApresentaçãoRoteiro de Apresentação

1.1. IntroduçãoIntrodução── Objetivos do TrabalhoObjetivos do Trabalho

2.2. Fundamentação TeóricaFundamentação Teórica3.3. Desenvolvimento do SistemaDesenvolvimento do Sistema3.3. Desenvolvimento do SistemaDesenvolvimento do Sistema

── Requisitos principaisRequisitos principais── EspecificaçãoEspecificação

4.4. ImplementaçãoImplementação── ResultadosResultados

5.5. ConclusãoConclusão── ExtensõesExtensões

Page 3: Sistema de programação de produção com representação ...campeche.inf.furb.br/tccs/2007-I/TCC2007-1-17-AP-JaquesDClaudino.pdfRoteiro de Apresentação 11.. Introdução ──

1. Introdução1. Introdução

�� Competitividade das indústrias;Competitividade das indústrias;�� Planejamento e Controle da Produção Planejamento e Controle da Produção (PCP);(PCP);(PCP);(PCP);

�� Sistemas de programação de produção;Sistemas de programação de produção;�� Gráfico de Gantt;Gráfico de Gantt;�� OpenGL;OpenGL;

Page 4: Sistema de programação de produção com representação ...campeche.inf.furb.br/tccs/2007-I/TCC2007-1-17-AP-JaquesDClaudino.pdfRoteiro de Apresentação 11.. Introdução ──

1. Introdução1. Introdução

�� Disponibilizar o cadastramento de Disponibilizar o cadastramento de processos e recursos da produção;processos e recursos da produção;Permitir a programação de OPs;Permitir a programação de OPs;

ObjetivosObjetivos

�� Permitir a programação de OPs;Permitir a programação de OPs;�� Representar graficamente todas as OPs Representar graficamente todas as OPs programadas, semelhante a um gráfico programadas, semelhante a um gráfico de Gantt;de Gantt;

�� Permitir através do gráfico das Permitir através do gráfico das programações, a manipulação interativa programações, a manipulação interativa das OPs programadas.das OPs programadas.

Page 5: Sistema de programação de produção com representação ...campeche.inf.furb.br/tccs/2007-I/TCC2007-1-17-AP-JaquesDClaudino.pdfRoteiro de Apresentação 11.. Introdução ──

2. Fundamentação Teórica2. Fundamentação Teórica

�� Define quando, como, e com que Define quando, como, e com que recursos, um determinado processo recursos, um determinado processo pode ser feito;pode ser feito;

Planejamento e Controle da Produção (PCP)Planejamento e Controle da Produção (PCP)

pode ser feito;pode ser feito;�� Verifica se o desempenho da produção Verifica se o desempenho da produção está de acordo com o planejado;está de acordo com o planejado;

�� Corrige desvios de planejamento;Corrige desvios de planejamento;

Page 6: Sistema de programação de produção com representação ...campeche.inf.furb.br/tccs/2007-I/TCC2007-1-17-AP-JaquesDClaudino.pdfRoteiro de Apresentação 11.. Introdução ──

2. Fundamentação Teórica2. Fundamentação Teórica

�� Criado por Henry L. Gantt em 1917;Criado por Henry L. Gantt em 1917;�� Ferramenta de controle de produção;Ferramenta de controle de produção;

Gráfico de GanttGráfico de Gantt

�� Ferramenta de controle de produção;Ferramenta de controle de produção;

Fonte: Burbidge (1988, p. 194).

Page 7: Sistema de programação de produção com representação ...campeche.inf.furb.br/tccs/2007-I/TCC2007-1-17-AP-JaquesDClaudino.pdfRoteiro de Apresentação 11.. Introdução ──

2. Fundamentação Teórica2. Fundamentação Teórica

�� Entrega dos produtos na data prevista;Entrega dos produtos na data prevista;�� Tempo de fabricação mínimo;Tempo de fabricação mínimo;

Objetivos da Programação de ProduçãoObjetivos da Programação de Produção

�� Tempo de fabricação mínimo;Tempo de fabricação mínimo;�� Tempo ocioso mínimo (máquinas);Tempo ocioso mínimo (máquinas);�� Tempo ocioso mínimo (empregados);Tempo ocioso mínimo (empregados);�� Tempo de preparação mínimo;Tempo de preparação mínimo;

Page 8: Sistema de programação de produção com representação ...campeche.inf.furb.br/tccs/2007-I/TCC2007-1-17-AP-JaquesDClaudino.pdfRoteiro de Apresentação 11.. Introdução ──

2. Fundamentação Teórica2. Fundamentação Teórica

Objetivos da Programação de ProduçãoObjetivos da Programação de Produção

OPs programadas aleatoriamente:

OPs programadas visando minimizar o tempo de fabricação:

Page 9: Sistema de programação de produção com representação ...campeche.inf.furb.br/tccs/2007-I/TCC2007-1-17-AP-JaquesDClaudino.pdfRoteiro de Apresentação 11.. Introdução ──

2. Fundamentação Teórica2. Fundamentação Teórica

�� JOGL é a implementação de referência;JOGL é a implementação de referência;�� Open source;Open source;

OpenGL em Java: JOGLOpenGL em Java: JOGL

�� Open source;Open source;�� Acesso completo à OpenGL 2.0;Acesso completo à OpenGL 2.0;�� Possui uma biblioteca dependente e Possui uma biblioteca dependente e outra independente de plataforma;outra independente de plataforma;

�� Usa JNI para chamar as funções da Usa JNI para chamar as funções da OpenGL;OpenGL;

Page 10: Sistema de programação de produção com representação ...campeche.inf.furb.br/tccs/2007-I/TCC2007-1-17-AP-JaquesDClaudino.pdfRoteiro de Apresentação 11.. Introdução ──

2. Fundamentação Teórica2. Fundamentação Teórica

�� Volkmann (1998) e Loffi (1999):Volkmann (1998) e Loffi (1999):── Utilizam PERTUtilizam PERT--CPM para programação da CPM para programação da produção;produção;

Trabalhos CorrelatosTrabalhos Correlatos

produção;produção;── Utilizam MRP II para o planejamento da Utilizam MRP II para o planejamento da produção;produção;

── Representação e manipulação das Representação e manipulação das programações é feita em uma grade;programações é feita em uma grade;

Page 11: Sistema de programação de produção com representação ...campeche.inf.furb.br/tccs/2007-I/TCC2007-1-17-AP-JaquesDClaudino.pdfRoteiro de Apresentação 11.. Introdução ──

2. Fundamentação Teórica2. Fundamentação Teórica

�� Preactor:Preactor:── Desenvolvido pela Preactor International;Desenvolvido pela Preactor International;

Trabalhos CorrelatosTrabalhos Correlatos

── Software muito completo;Software muito completo;── Mais de 4500 licenças por todo o mundo;Mais de 4500 licenças por todo o mundo;── Faz integração com outros sistemas;Faz integração com outros sistemas;── Deficiente em recursos gráficos;Deficiente em recursos gráficos;

Page 12: Sistema de programação de produção com representação ...campeche.inf.furb.br/tccs/2007-I/TCC2007-1-17-AP-JaquesDClaudino.pdfRoteiro de Apresentação 11.. Introdução ──

2. Fundamentação Teórica2. Fundamentação Teórica

Page 13: Sistema de programação de produção com representação ...campeche.inf.furb.br/tccs/2007-I/TCC2007-1-17-AP-JaquesDClaudino.pdfRoteiro de Apresentação 11.. Introdução ──

2. Fundamentação Teórica2. Fundamentação Teórica

�� Sistema de produção Multitherm:Sistema de produção Multitherm:── Desenvolvido pela Multitherm Sistemas e Desenvolvido pela Multitherm Sistemas e Automação Ltda;Automação Ltda;

Trabalhos CorrelatosTrabalhos Correlatos

Automação Ltda;Automação Ltda;── Módulo do sistema de gestão;Módulo do sistema de gestão;── Faz comunicação com coletores de dados e Faz comunicação com coletores de dados e controladores de processos;controladores de processos;

── Não possui Não possui zoomzoom;;── Deficiente em recursos gráficos;Deficiente em recursos gráficos;── Lento para renderizar objetos.Lento para renderizar objetos.

Page 14: Sistema de programação de produção com representação ...campeche.inf.furb.br/tccs/2007-I/TCC2007-1-17-AP-JaquesDClaudino.pdfRoteiro de Apresentação 11.. Introdução ──

2. Fundamentação Teórica2. Fundamentação Teórica

Page 15: Sistema de programação de produção com representação ...campeche.inf.furb.br/tccs/2007-I/TCC2007-1-17-AP-JaquesDClaudino.pdfRoteiro de Apresentação 11.. Introdução ──

3. Desenvolvimento do Sistema3. Desenvolvimento do Sistema

�� Cadastro de recursos e processos;Cadastro de recursos e processos;�� Geração de OPs;Geração de OPs;Programação de OPs;Programação de OPs;

Requisitos principaisRequisitos principais

�� Programação de OPs;Programação de OPs;�� Representar graficamente as OPs Representar graficamente as OPs programadas;programadas;

�� Manipulação interativa das programações;Manipulação interativa das programações;�� Localizar graficamente as programações;Localizar graficamente as programações;�� ZoomZoom e e Pan.Pan.

Page 16: Sistema de programação de produção com representação ...campeche.inf.furb.br/tccs/2007-I/TCC2007-1-17-AP-JaquesDClaudino.pdfRoteiro de Apresentação 11.. Introdução ──

3. Desenvolvimento do Sistema3. Desenvolvimento do Sistema

Diagrama de casos de usoDiagrama de casos de uso

Page 17: Sistema de programação de produção com representação ...campeche.inf.furb.br/tccs/2007-I/TCC2007-1-17-AP-JaquesDClaudino.pdfRoteiro de Apresentação 11.. Introdução ──

3. Desenvolvimento do Sistema3. Desenvolvimento do Sistema

Diagrama de pacotesDiagrama de pacotes

Page 18: Sistema de programação de produção com representação ...campeche.inf.furb.br/tccs/2007-I/TCC2007-1-17-AP-JaquesDClaudino.pdfRoteiro de Apresentação 11.. Introdução ──

3. Desenvolvimento do Sistema3. Desenvolvimento do Sistema

Diagrama de classes do pacote Diagrama de classes do pacote “producao.data”“producao.data”

Page 19: Sistema de programação de produção com representação ...campeche.inf.furb.br/tccs/2007-I/TCC2007-1-17-AP-JaquesDClaudino.pdfRoteiro de Apresentação 11.. Introdução ──

3. Desenvolvimento do Sistema3. Desenvolvimento do Sistema

EspecificaçãoEspecificação

Page 20: Sistema de programação de produção com representação ...campeche.inf.furb.br/tccs/2007-I/TCC2007-1-17-AP-JaquesDClaudino.pdfRoteiro de Apresentação 11.. Introdução ──

4. Implementação4. Implementação

Tela principal do SistemaTela principal do Sistema

Page 21: Sistema de programação de produção com representação ...campeche.inf.furb.br/tccs/2007-I/TCC2007-1-17-AP-JaquesDClaudino.pdfRoteiro de Apresentação 11.. Introdução ──

4. Implementação4. Implementação

�� Netbeans 5.5;Netbeans 5.5;�� JOGL;JOGL;Swing;Swing;

Técnicas e ferramentas utilizadasTécnicas e ferramentas utilizadas

�� Swing;Swing;�� Padrões de Projeto:Padrões de Projeto:

── Singleton;Singleton;── Value Object (VO);Value Object (VO);── Data Access Object (DAO);Data Access Object (DAO);── Facade;Facade;── Session Facade.Session Facade.

Page 22: Sistema de programação de produção com representação ...campeche.inf.furb.br/tccs/2007-I/TCC2007-1-17-AP-JaquesDClaudino.pdfRoteiro de Apresentação 11.. Introdução ──

4. Implementação4. Implementação

�� Programação:Programação:── Adicionar;Adicionar;── Excluir;Excluir;

OperaçõesOperações

── Excluir;Excluir;── Validar;Validar;── Alterar;Alterar;── Executar;Executar;── Finalizar;Finalizar;

�� Localizar:Localizar:── Programações de uma OP;Programações de uma OP;── Programações com data de entrega em atraso;Programações com data de entrega em atraso;

Page 23: Sistema de programação de produção com representação ...campeche.inf.furb.br/tccs/2007-I/TCC2007-1-17-AP-JaquesDClaudino.pdfRoteiro de Apresentação 11.. Introdução ──

4. Implementação4. Implementação

�� Período em que o recurso da produção Período em que o recurso da produção permanece sem executar processos;permanece sem executar processos;

Intervalos não produtivosIntervalos não produtivos

Sem intervalos: Com intervalos:

Page 24: Sistema de programação de produção com representação ...campeche.inf.furb.br/tccs/2007-I/TCC2007-1-17-AP-JaquesDClaudino.pdfRoteiro de Apresentação 11.. Introdução ──

4. Implementação4. Implementação

�� Funções que podem ser aplicadas às Funções que podem ser aplicadas às programações, diretamente no gráfico:programações, diretamente no gráfico:

Manipulação InterativaManipulação Interativa

── Excluir, validar, alterar, executar, finalizar;Excluir, validar, alterar, executar, finalizar;── Localizar programações da OP;Localizar programações da OP;── Drag & dropDrag & drop: Alterar programações de : Alterar programações de seqüência ou de recurso;seqüência ou de recurso;

Page 25: Sistema de programação de produção com representação ...campeche.inf.furb.br/tccs/2007-I/TCC2007-1-17-AP-JaquesDClaudino.pdfRoteiro de Apresentação 11.. Introdução ──

4. Implementação4. Implementação

�� ZoomZoom e e PanPan;;�� Bordas arredondadas;Bordas arredondadas;

Técnicas de visualizaçãoTécnicas de visualização

�� Bordas arredondadas;Bordas arredondadas;�� AntialiasingAntialiasing;;�� Transparência;Transparência;�� Degradê;Degradê;�� Texturas.Texturas.

Page 26: Sistema de programação de produção com representação ...campeche.inf.furb.br/tccs/2007-I/TCC2007-1-17-AP-JaquesDClaudino.pdfRoteiro de Apresentação 11.. Introdução ──

4. Implementação4. Implementação

�� Envio de objetos para a placa gráfica:Envio de objetos para a placa gráfica:── Problema: Muitos comandos eram enviados, o que Problema: Muitos comandos eram enviados, o que tornava lenta a renderização;tornava lenta a renderização;

── Solução: Envia comandos para renderizar apenas Solução: Envia comandos para renderizar apenas

Otimizações de renderizaçãoOtimizações de renderização

── Solução: Envia comandos para renderizar apenas Solução: Envia comandos para renderizar apenas as programações da window.as programações da window.

�� Arredondamento;Arredondamento;── Problema: Lento para renderizar o arredondamento Problema: Lento para renderizar o arredondamento das programações após várias operações de zoom das programações após várias operações de zoom out.out.

── Solução: Após uma quantidade definida de Solução: Após uma quantidade definida de operações de zoom out, o arredondamento é operações de zoom out, o arredondamento é substituído por uma reta.substituído por uma reta.

Page 27: Sistema de programação de produção com representação ...campeche.inf.furb.br/tccs/2007-I/TCC2007-1-17-AP-JaquesDClaudino.pdfRoteiro de Apresentação 11.. Introdução ──

4. Implementação4. Implementação

�� Utiliza o Gráfico das Programações;Utiliza o Gráfico das Programações;�� Utiliza padrões de projeto;Utiliza padrões de projeto;

Sistema de Programação de ProduçãoSistema de Programação de Produção

�� Utiliza padrões de projeto;Utiliza padrões de projeto;�� Persistência em MySQL;Persistência em MySQL;�� Interfaces gráficas em Swing;Interfaces gráficas em Swing;�� Importação de dados do sistema de Importação de dados do sistema de produção Multitherm.produção Multitherm.

Page 28: Sistema de programação de produção com representação ...campeche.inf.furb.br/tccs/2007-I/TCC2007-1-17-AP-JaquesDClaudino.pdfRoteiro de Apresentação 11.. Introdução ──

4. Implementação4. Implementação

�� Portável, executando com facilidade no Linux e Mac OS;Portável, executando com facilidade no Linux e Mac OS;�� Melhor desempenho em relação ao sistema da Multitherm;Melhor desempenho em relação ao sistema da Multitherm;�� Resultado dos testes efetuados com 3000 programações:Resultado dos testes efetuados com 3000 programações:

Resultados e discussãoResultados e discussão

�� Resultado dos testes efetuados com 3000 programações:Resultado dos testes efetuados com 3000 programações:

Desempenho Multitherm X TCCDesempenho Multitherm X TCC

MultithermMultitherm TCCTCC

CarregamentoCarregamento AlinhamentoAlinhamento CarregamentoCarregamento AlinhamentoAlinhamento

Teste 1Teste 1 38,687 38,687 7,8477,847 1,688 1,688 0,031 0,031

Teste 2Teste 2 39,250 39,250 8,125 8,125 1,484 1,484 0,015 0,015

Teste 3Teste 3 38,954 38,954 7,685 7,685 1,453 1,453 0,016 0,016

MédiaMédia 38,963 38,963 7,885 7,885 1,541 1,541 0,020 0,020

Page 29: Sistema de programação de produção com representação ...campeche.inf.furb.br/tccs/2007-I/TCC2007-1-17-AP-JaquesDClaudino.pdfRoteiro de Apresentação 11.. Introdução ──

5. Conclusão5. Conclusão

�� Sistemas de programação de produção Sistemas de programação de produção são indispensáveis ao PCP;são indispensáveis ao PCP;

�� Oferece o controle de OPs, para que Oferece o controle de OPs, para que sejam produzidas dentro de seu prazo sejam produzidas dentro de seu prazo estimado;estimado;sejam produzidas dentro de seu prazo sejam produzidas dentro de seu prazo estimado;estimado;

�� Facilidade em diminuir tempos ociosos Facilidade em diminuir tempos ociosos dos recursos, o que aumenta a dos recursos, o que aumenta a produtividade;produtividade;

�� O gráfico representa de forma clara as O gráfico representa de forma clara as OPs programadas;OPs programadas;

Page 30: Sistema de programação de produção com representação ...campeche.inf.furb.br/tccs/2007-I/TCC2007-1-17-AP-JaquesDClaudino.pdfRoteiro de Apresentação 11.. Introdução ──

5. Conclusão5. Conclusão

�� Geração do gráfico possui ótimo Geração do gráfico possui ótimo desempenho com a OpenGL;desempenho com a OpenGL;

�� Ótimos gráficos puderam ser gerados Ótimos gráficos puderam ser gerados com os recursos da OpenGL;com os recursos da OpenGL;com os recursos da OpenGL;com os recursos da OpenGL;

�� Possui gráficos superiores aos sistemas Possui gráficos superiores aos sistemas conhecidos;conhecidos;

�� Desenvolvimento complexo, devido a Desenvolvimento complexo, devido a OpenGL oferecer apenas um conjunto de OpenGL oferecer apenas um conjunto de primitivas gráficas;primitivas gráficas;

Page 31: Sistema de programação de produção com representação ...campeche.inf.furb.br/tccs/2007-I/TCC2007-1-17-AP-JaquesDClaudino.pdfRoteiro de Apresentação 11.. Introdução ──

5. Conclusão5. Conclusão

�� JOGL faz ótima integração da OpenGL JOGL faz ótima integração da OpenGL na linguagem Java;na linguagem Java;Ótimas interfaces Swing;Ótimas interfaces Swing;�� Ótimas interfaces Swing;Ótimas interfaces Swing;

�� Portabilidade comprovada;Portabilidade comprovada;�� Netbeans mostrouNetbeans mostrou--se estável e muito se estável e muito eficiente;eficiente;

Page 32: Sistema de programação de produção com representação ...campeche.inf.furb.br/tccs/2007-I/TCC2007-1-17-AP-JaquesDClaudino.pdfRoteiro de Apresentação 11.. Introdução ──

5. Conclusão5. Conclusão

�� Este sistema continuará a ser desenvolvido Este sistema continuará a ser desenvolvido para substituir o atual sistema de produção da para substituir o atual sistema de produção da Multitherm;Multitherm;

ExtensõesExtensões

Multitherm;Multitherm;�� Próximas implementações:Próximas implementações:

── Recuperação e persistência no banco de dados;Recuperação e persistência no banco de dados;── Comunicação com controladores de processo;Comunicação com controladores de processo;── Comunicação com coletores de dados;Comunicação com coletores de dados;── Comunicação entre estações do sistema de Comunicação entre estações do sistema de programação de produção.programação de produção.