Relatório - Esteira Classificadora de Caixas

Embed Size (px)

Citation preview

INSTITUTO FEDERAL DE EDUCAO, CIENCIA E TECNOLOGIA DO MARANHO DIRETORIA DE ENSINO SUPERIOR DEPARTAMENTO DE ELETRO-ELETRONICA CURSO DE ENGENHARIA ELTRICA INDUSTRIAL DISCIPLINA: INFORMTICA INDUSTRIAL PROF: CLADIO LEO TORRES

PROJETO: ESTEIRA CLASSIFICADORA DE CAIXAS

Alexandre Rosa Carvalho EE0711002-21 lvaro Meton Sousa Perdigo EE0711003-21

SO LUS - MA 2011

ALEXANDRE ROSA CARVALHO LVARO METON SOUSA PERDIGO

PROJETO: ESTEIRA CLASSIFICADORA DE CAIXAS

Relatrio referente ao Projeto da Disciplina de Informtica Industrial do Curso de Engenharia Eltrica Industrial do Instituto Federal de Educao, Cincia e Tecnologia do Maranho, IFMA, com intuito de obter nota para aprovao na disciplina.

So Lus-MA 2011

Resumo

Este relatrio apresentado disciplina de Informtica Industrial aborda o projeto de uma esteira classificadora de caixas. Ele mostra os materiais utilizados para uma montagem em menor escala do processo e detalha os procedimentos tomados por um programa desenvolvido em uma linguagem de programao orientada a objetos. Este projeto consiste em passar caixas por uma esteira para que estas possam ser classificadas em dois tamanhos, pequena ou grande. Ele iniciado pelo usurio indicando a quantidade de caixas a serem contadas, as caixas passam pela esteira e depois o programa retorna quantas dessas caixas so grandes e quantas so pequenas. Para realizar esta tarefa, ser utilizado um sensor infravermelho do controle do vdeo-game Wii da Nintendo, o WiiMote, e como visto anteriormente, um cdigo desenvolvido em uma linguagem de programao orientada a objetos. Aps o trmino da classificao, os dados referentes ao processo recm executado sero salvos em um banco de dados, para que estes possam ser visualizados ou manipulados futuramente caso o usurio tenha necessidade.

Palavras-Chave: Esteira, Classificao, Orientado a objeto, WiiMote, Banco de dados

Abstract

This report presented to the discipline of Industrial Informatics focuses on the design of a classifier belt boxes. It shows the materials used for mounting on a smaller scale of the process and details the procedures taken by a program developed in a programming language object-oriented. This project is to move boxes onto a conveyor so that they can be classified in two sizes, small or large. It is initiated by the user indicating the number of boxes to be counted, the boxes go through the mat and then the program returns how many of these boxes are large and many are small. To accomplish this, an infrared sensor will be used to control video game Nintendo Wii, Wiimote, and as seen above, a code developed in a programming language object-oriented. After the classification, the data for the newly implemented process will be saved in a database, so that they can be viewed or manipulated in the future if the user needs. Keywords: Track, Classification, Object Oriented, WiiMote, Database

Sumrio

1. INTRODUO ...................................................................................................... 6 2. VISO GERAL DO PROCESSO .......................................................................... 7 2.1. Deslocamento ................................................................................................... 7 2.2. Leitura ............................................................................................................... 8 2.3 Classificao e Armazenamento ........................................................................ 8 3. CONFECCO DA ESTEIRA ................................................................................. 9 4. SISTEMA DE LEITURA ......................................................................................... 12 5. CLASSIFICAO E ARMAZENAMENTO ............................................................. 17 CONCLUSO ............................................................................................................ 23 REFERNCIA BIBLIOGRFICA ............................................................................... 24

6

1. INTRODUOAtualmente na indstria muitos processos necessitam de automao, e a base para a automao de um processo a Informtica Industrial, que consiste em aplicar tcnicas da informtica nos processos produtivos para retirar o homem de atividades repetitivas e cansativas para coloc-lo em atividades pensantes de anlise e tomada de deciso. Algumas das tcnicas da informtica largamente utilizadas em processos industriais so as linguagens orientadas a objeto e os bancos de dados. As linguagens orientadas a objeto se tornaram praticamente padro devido a sua facilidade de reutilizao, que diminui bastante o custo de desenvolvimento e a agregao de cdigo, que pode expandir e muito a funcionalidade de um programa. J os bancos de dados so vitais para um processo produtivo, pois sendo bem projetados, qualquer informao de qualquer produto produzido a anos pode ser obtida em questo de minutos, a produo de meses pode ser resumida em um relatrio em segundos. Conhecendo esses conceitos e tendo como desafio proposto pelo professor a criao de um processo em que variveis tinham que ser lidas por um sensor e guardadas em um bando de dados para uma posterior verificao foi escolhido um processo de classificao de caixas por tamanhos atravs de dados vindos de um sensor infravermelho, que deveriam ser analisados e guardados em um banco de dados. No Captulo 2 teremos uma viso geral do processo, que pode ser resumido em: Deslocamento, Leitura e Classificao e Armazenamento da Informao. O Captulo 3 mostrar todos os passos e materiais para a confeco da Esteira de Deslocamento. No Captulo 4 ser detalhado o processo de leitura, os dados obtidos pelo sensor e quais os parmetros adotados para a classificao de uma caixa em grande ou pequena Por fim, no captulo 5 ser exposto o cdigo do Programa Orientado a Objeto que far a interpretao dos dados vindos do sensor e o armazenamento no Banco de Dados.

7

2. VISO GERAL DO PROCESSOO processo de classificao de caixas pode ser dividido em trs etapas: Deslocamento, Classificao e Armazenamento da Informao.

Figura 1 Viso Geral

2.1. Deslocamento Em qualquer processo produtivo que se tenham vrias atividades necessrio com que se faa o produto se deslocar por essas atividades, pode ser um envasamento, uma lavagem, secagem, montagem, pintura e no nosso caso leitura para classificao. Para efetuar a leitura era necessrio que as caixas passassem com uma velocidade constante e baixa na frente dos Leds para que pudesse ser identificado quando eles estavam encobertos. Foram feitos vrios testes, tanto com trao direta por engrenagens ao eixo de rolamento da esteira quanto transmisso da fora por correia. Que foi o mtodo mais adequado. Os materiais e o processo de montagem ser completamente apresentado no prximo captulo.

8

2.2. Leitura Para conseguir identificar o tipo de caixa foi utilizada a cmera infravermelha presente no controle do Nintendo Wii, o WiiMote, juntamente com o software GlovePIE, desenvolvido por Carl Kenner, que um software completamente gratuito que utiliza uma linguagem no linear com funes prprias e consegue emular joysticks, mouse ou teclado atravs dos recebido do WiiMote por uma conexo Bluetooth. No Captulo 4 ser mostrado tanto as especificaes para a montagem da coluna de leds que servir de referncia para o controle, quando o cdigo que foi desenvolvido no GlovoPIE para emular em teclas os sinais captados pelo controle vindos desses leds e o software utilizado para fazer a comunicao via Bluetooth com o controle do Nintendo Wii. 2.3 Classificao e Armazenamento Nesse ponto do processo que sero aplicados todos os conhecimentos adquiridos na disciplina de Informtica Industrial, que ser a Programao Orientada a Objeto, que nesse caso foi aplicado linguagem C++, para a interpretao dos dados vindos dos sensores, que de acordo com os padres encontrados ir classificar os tipos de caixas e ir armazenar em um arquivo .TXT, formatado de modo que possa ser aberto no Microsoft Excel tendo todas as informaes organizadas em clulas. No Captulo 5 ser exposto todo o cdigo feito em C++ para a interpretao dos padres obtidos na leitura dos sensores para cada tipo de caixa e a formatao necessria para poder abrir o arquivo .TXT gerado, no Excel.

9

3. CONFECCO DA ESTEIRAMaterial Utilizado

Para a confeco da esteira foram feitos e testados vrios projetos at se chegar ao modelo final. Como trao foi escolhido um Motor Eltrico CC retirado de carrinho de controle remoto, juntamente com a reduo e os eixos que j vieram no carrinho. O Motor alimentado por 4,5V (3 pilhas AA), tem em mdia 7000 rpm com carga mxima, e demanda uma corrente de 70mA.

Figura 2 Motor CC com reduo

Como a velocidade necessitava ser constante por um longo perodo de tempo, seria invivel a utilizao de pilhas para a alimentao do motor, pois iria haver a variao da velocidade de acordo com o descarregamento natural das pilhas. Ento foi definida como alimentao para o motor a porta USB do computador de armazenamento, que possui uma tenso constante de 5V e consegue suprir uma corrente de 500mA por porta, o que atende perfeitamente ao caso.

Figura 3 Identificao dos cabos USB

10

Foi montada uma estrutura de cantoneiras de alumnio fixadas com arrebites nas extremidades com as seguintes dimenses:

Figura 4 Dimenses da estrutura de alumnio

O material da esteira transportadora foi um grande desafio na confeco da esteira, primeiramente foi testado um elstico de 80mm de largura, porm a relao Tenso X Aderncia no foi satisfatria, para se obter uma aderncia suficiente entre o elstico e o eixo do motor para se conseguir fazer a transmisso da trao para movimentar o elstico era necessrio uma tenso muito grande no elstico, o que acabava sobrecarregando o motor DC que no dava nem a partida. Para a soluo do problema foram tomadas duas medidas, primeiro o aumento do dimetro do eixo do motor para aumentar a rea de contato com a esteira e conseqentemente aumentar a trao transmitida, fixando um cano de PVC de 15mm junto ao eixo e a troca do material da esteira, que foi trocado de elstico por um material plstico, que precisa de menos tenso para obter o mesmo nvel de aderncia. No primeiro teste com o eixo de trao ligado diretamente na reduo a velocidade de deslocamento da caixa no foi satisfatria, pois a velocidade da esteira estava muito alta, impossibilitando tanto a estabilidade da caixa sobre a esteira quanto a leitura no instante da passagem da caixa pelo sensor.

11

Figura 5 Moto-redutor Para reduzir ainda mais a velocidade da esteira seria necessrio modificar o tamanho das engrenagens da reduo, porm como no dispnhamos de outras engrenagens foi decido modificar o sistema de transmisso de trao. Foi acoplada uma roldana de dimetro 5 cm ao eixo de trao e confeccionada uma correia com fita isolante para transmitir a trao de um eixo secundrio para a roldana instalada que por ter um dimetro muito maior do que o eixo secundrio diminuir bastante o nmero de rotaes por minuto,

conseqentemente diminuindo a velocidade da esteira.

Figura 6 Sistema de Correa

Com a alterao feita foi obtida uma velocidade satisfatria, que possibilitou a estabilidade da caixa sobre a esteira e tempo suficiente de passagem no sensor para a leitura correta.

12

4. SISTEMA DE LEITURADevido a grande variedades de sensores presentes no controle do vdeogame Nintendo Wii que ele foi escolhido como base para o sistema de classificao das caixas. Alm de trs acelermetros, sistema de vibrao e alto-falante, ele possui uma cmera infra-vermelha na parte frontal, com uma resoluo de 1024x768 pixels e taxa de atualizao de 100Hz que consegue detectar at 4 pontos infravermelhos. Os leds que serviro de referncia para o controle foram fixados em um palito de picol com o espaamento definido de acordo com o tamanho das caixas a serem classificadas. Para alimentao dos leds tambm foi utilizada outra porta USB do computador, s que para os leds foi utilizado um resistor de 120 para limitar a corrente para no ocorrer a queima.

Figura 8 Dimenses das caixas e leds

A luz emitida pelos led infra-vermelha, no visvel a olho nu, mas com qualquer cmera, inclusive de celular, podemos visualizar se realmente o circuito est funcionando.

13

Figura 9 Imagem capturada por cmera de celular

Figura 10 Sistema de leitura

Todas as informaes captadas pelo sensor so enviadas para o computador via Bluetooth. O computador reconhece o controle como um HID (Human Interface Device), que um joystick comum. Para reconhecer o dispositivo necessria a utilizao de um software de gerenciamento de dispositivos Bluetooth, para esse trabalho foi utilizado o BlueSoleil 8.0 na verso para teste, que permite a troca de at 2Mb de dados, mais do que o suficiente para a aplicao, pois os dados enviados pelo controle so muito pequenos. Para poder tratar os dados recebidos pelo sensor e aplic-los de acordo com a nossa necessidade necessrio outro software, o GloviePIE, que possui uma linguagem prpria no linear. A linguagem utilizada pelo software baseada em eventos, independente da ordem em que o programa escrito, os eventos acontecem de acordo o pressionamento dos botes no controle.

14

O GlovePIE um emulador capaz de simular teclado, mouse, joystick, mouse 3D e outros perifricos apenas interpretando os dados vindos do controle WiiMote, justamente a funo que utilizada para esse projeto.

Figura 11 Interface GlovePIE

O cdigo muito simples e ser comentado a seguir: var.A = WiiMote.dot2vis var.B = WiiMote.dot1vis

Na primeira parte so declaradas as variveis para poderem ser verificadas no prprio programa e atribudo a elas a funo de visibilidade dos leds, que retornam um valor True se o led estiver visvel e False se o led no estiver visvel.

A = !(WiiMote.dot1vis) B = !(WiiMote.dot2vis)

Na segunda parte so dados os comandos de emulao, com uma sintaxe bem simples e direta o comando simples, quando o segundo led no estiver visvel ser pressionada a tecla B do teclado e quando o primeiro led no estiver visvel ser pressionada a tecla A do teclado, resultando em uma lgica inversa. O controle no consegue distinguir qual dos dois leds vistos o primeiro ou o segundo, por default quando um led deixa de estar visvel, automaticamente ele considerado como o segundo led, e quando o prximo led deixar de estar visvel considerado o primeiro.

15

Ento quando for bloqueada a visualizao de apenas um dos leds, (caso da caixa pequena), ser pressionada a tecla B. Quando os dois leds tiverem a visualizao bloqueada ser pressionada a tecla A. Como teste foi utilizado o Microsoft Word 2010 para verificar os padres criados pela emulao do teclado, obtendo-se o seguinte resultado:

Passagem de Caixa Pequena Bbbbbb Bbbbbbb bbbbbb bbbbbbbbbb bbbbbb bbbb bbbbbbb bbbbbbbb bbbbbb bbbbbbb bbbbb

Passagem de Caixa Grande Baaaa Abbbbb Baaaaa Baaaaaa Baaaaa Baaaaa Baaaaaaa Abbbbb Baaaaaa Baaaaaa Baaaaa

Figura 12 Padres da emulao de teclado

Durante a passagem da caixa pelo sensor a emulao do teclado ocorre vrias vezes. Pode ser observado que na passagem da caixa pequena, onde bloqueada apenas a viso de um dos leds, o padro so apenas teclas B, j na passagem da caixa grande, onde os dois leds so bloqueados, apresentam-se dois tipos de entrada, mas seguindo um padro de aparecer sempre a tecla A, como explicado anteriormente, a linguagem utilizada pelo GlovePIE no linear, ento o programa executa as duas aes aleatoriamente, j que as duas esto acontecendo.

16

Tendo os dois padres definidos o prximo passo o tratamento dessas informaes de entrada para a classificao e armazenamento, que sero detalhados no prximo captulo.

17

5. CLASSIFICAO E ARMAZENAMENTODe acordo com os padres obtidos pela leitura do sensor, o objetivo agora era tratar e fazer com que esses caracteres se transformassem em informaes e fossem armazenadas possibilitando a sua consulta futuramente. Para cumprir tal objetivo foi desenvolvido um software em uma Linguagem Orientada a Objeto, no caso C++, utilizando o CodeBlocks, que salva todas as informaes tratadas em um arquivo .TXT formato de tal maneira que aberto no Microsoft Excel, consegue exibir todos os dados separadamente nas clulas. Todo o cdigo ser mostrado e comentado abaixo: #include #include #include #include #include using namespace std;

Essas

foram todas

as

bibliotecas

que foram necessrias

para

o

funcionamento do programa, com ateno para a namespace, que fundamental para o processo de armazenamento no banco de dados. Void wait ( int seconds ){ clock_t endwait; endwait = clock () + seconds * CLOCKS_PER_SEC ; while (clock() < endwait) {} }

A criao da funo WAIT necessria para limitar a entrada de caracteres durante a leitura do sensor, pois como visto no padro de leitura a quantidade de caracteres no momento da leitura no constante, constante apenas o caractere, A ou B.

18

main(){ int quant; ofstream myfile; time_t rawtime; struct tm * timeinfo; char ch, ch1, ch2, ch3, ch4, chs;

No incio do programa principal feita a declarao das variveis: quant - receber a quantidade de caixas a serem lidas myfile ser o arquivo .TXT de armazenamento ch1, ch2, ch3, ch4 sero os caracteres de amostragem cout