Câmpus Itajaí - Departamento de Engenharia Elétrica - Bacharelado em Engenharia Elétrica

Sistema de Visão Computacional para Esteira Transportadora

Alunos: Bernardo Santiago de Souza e Vinicius A. dos Santos Couto.

Orientador: Prof. Sergio A. B. Petrovcic, Dr. Eng.

Introdução

A procura por métodos de automatização de processos e sensoriamento possuem destaque na atualidade, devido a crescente demanda de produção e qualidade dos produtos. Por esta razão, associada também ao desenvolvimento tecnológico, a estratégia de utilizar de processamento de imagens e vídeos para obter resultados em tempo real tornou-se tecnologicamente acessível, dando origem aos sistemas de visão.

Os sistemas de visão são um ramo aplicado da visão computacional, que consiste em sistemas que se utilizam de imagens, para realizar a automatização de algum processo. Usualmente encontrados no setor de controle de qualidade, é geralmente composto por uma câmera que realiza a conversão da imagem para dados multidimensionais processáveis pelos computadores.

Apesar de já serem comercializadas diversas soluções de sistemas de visão, estas podem apresentar um custo elevado, por conta da subutilização das configurações dos equipamentos. Ou seja, aplicações que não precisariam de sensores com grandes resoluções e taxa de quadros, tornam-se inviáveis, pela falta de personalização do equipamento à aplicação.

A biblioteca de processamento de imagens e vídeo OpenCV, é uma alternativa gratuita tanto para utilização educacional quanto industrial. Entre as suas aplicações mais usuais estão a detecção de cores, contornos e movimento, tanto quanto reconhecimento facial, de gestos e objetos.

O presente trabalho desenvolverá um protótipo de uma esteira transportadora rolante, a qual possuirá uma câmera instalada em um suporte a cima da esteira. Essa câmera irá captar imagens em tempo real que serão processadas, e com o uso da biblioteca OpenCV, uma solução de contagem por cor e detecção de tamanho será desenvolvida.

Objetivo geral

Implementar um sistema de visão computacional em uma esteira transportadora microcontrolada.

Objetivos específicos

  1. Montar um protótipo físico de esteira transportadora rolante;

  2. Projetar a lógica de controle da esteira transportadora.

  3. Implementar um algoritmo de detecção de cores utilizando OpenCV;

  4. Produzir um algoritmo de contagem e rastreamento de peças utilizando OpenCV;

Metodologia

O desenvolvimento do presente trabalho está dividido em três etapas distintas. A primeira refere-se a montagem da estrutura física da esteira transportadora, a segunda etapa, o ajuste da automação, sensores e programação do microcontrolador e a terceira remete-se à programação do sistema de visão computacional.

Etapa 1: Montagem da Estrutura Física

Primeiramente, é projetada a estrutura completa com o posicionamento dos sensores e atuadores, ajustando a estrutura necessária para o posicionamento destes.

Para a estrutura da esteira, a construção será feita por meio de estrutura metálica de perfilados, estes fariam o suporte da esteira.

A esteira é um sistema composto por 5 roletes, 4 adquiridos por fornecedor externo e um produzido pelos discentes, adaptado a um eixo de motor CC. Os roletes devem ser espaçados igualmente por toda a estrutura horizontal, para oferecer suporte aos objetos durante o percurso.

A malha transportadora, que envolve os roletes, será razoavelmente menor que o comprimento da esteira, para que ambas extremidades estejam sempre em tensão.

Desta forma, diminuindo a influência do peso dos objetos, é possível aproveitar ao máximo a potência do motor no movimento rotacional.

Figura 1 - Projeto da estrutura da esteira e posicionamento dos sensores, com câmera (1), sensor (2) e motor CC (3)

Fonte: Autor

Etapa 2: Ajuste da automação

A segunda etapa do projeto remete-se ao ajuste da lógica de automação da esteira e dos pontos de sensoriamento/atuação dos módulos a serem inseridos na estrutura.

Entre os atuadores, serão utilizados dois motores CC com redução no eixo (Figura 2), para acoplar no rolete produzidos pelos discentes.

Entre os sensores, será utilizado um sensor ultrassônico e uma câmera webcam centralizada em um suporte acima da esteira.

A programação será realizada de forma que a esteira só irá rodar quando as peças forem inseridas na esteira. Para isso, o sensor ultrassônico, posicionado no início da esteira, acionará os motores da esteira quando indicar uma peça no início. Depois de um tempo, considerado mais que o suficiente para a passagem das peças, irá interromper o acionamento dos motores.

De forma adicional, também há a possibilidade de complementar o sensoriamento da câmera, com um sensor ultrassônico medindo a altura dos objetos e por medição indireta, obtém-se o volume do objeto.

Figura 2 e 3 - Acima um Motor CC de 6v com redutor e abaixo um módulo de sensor ultrassônico para arduino

Etapa 3: Programação do sistema de visão

A última etapa do projeto esta relacionada a programação do algoritmo de visão computacional, utilizando a biblioteca de processamento de imagens e vídeos OpenCV, onde serão construídos pelo menos dois códigos de programação. O primeiro algoritmo realiza a contagem de peças por cor, e um segundo, realiza a medição da área das peças.

Na rotina de teste do código de contagem por cor, as peças serão produtos reais, que possuem cores distintas em sua composição. Essas peças serão inseridas na esteira de forma aleatória. Conforme a esteira transporta os objetos para o campo de visão da câmera, a detecção da cor e o rastreamento das peças serão indicados na janela da supervisão.

Na rotina de teste do código de contagem por tamanho, as peças serão produtos reais e de tamanhos diferentes, divididas em peças médias e pequenas. Conforme a esteira transporta os objetos para o campo de visão da câmera, a área medida dos objetos e contagem de peças por tamanhos serão indicadas na janela de supervisão.

A contagem das peças ocorrera por meio de um dashboard, uma janela que conterá a gravação em tempo real da câmera, junto com a identificação das peças.

Os algoritmos serão escritos na linguagem de programação Python, no ambiente de desenvolvimento integrado (IDE) PyCharm. Entre as bibliotecas de programação auxiliares, serão utilizadas as bibliotecas NumPy e Math, a primeira sendo para a operação com dados multidimensionais e a segunda para auxiliar em operações aritméticas.

Figura 4 e 5 - Exemplo de detecção e rastreamento por cor de peça azul e exemplo de detecção e rastreamento de peça por tamanho.

Cronograma

Cronograma

Lista de materiais

Lista de materiais

Unidades curriculares envolvidas

  • Automação Industrial;

  • Programação I & II;

  • Microcontroladores;

  • Computação Científica.

  • Materiais Elétricos