Post on 20-Jul-2022
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁDEPARTAMENTOS ACADÊMICOS DE INFORMÁTICA E DE
ELETRÔNICACURSO DE ENGENHARIA DE COMPUTAÇÃO
ELIS CASSIANA NAKONETCHNEI DOS SANTOSFERNANDO CARVALHO DE SOUZA
FERNANDO CROZATTI
MÁQUINA SEPARADORA DE M&M’S R© POR COR
RELATÓRIO DE PROJETO
CURITIBA2015
ELIS CASSIANA NAKONETCHNEI DOS SANTOSFERNANDO CARVALHO DE SOUZA
FERNANDO CROZATTI
MÁQUINA SEPARADORA DE M&M’S R© POR COR
Relatório de Projeto apresentado para a disciplina deOficina de Integração II, do Curso de Engenharia deComputação dos Departamentos Acadêmicos de In-formática e de Eletrônica da Universidade Tecnoló-gica Federal do Paraná.
Orientador: João Alberto Fabro
CURITIBA2015
AGRADECIMENTOS
Agradecemos aos professores Dr. Heitor Silvério Lopes, Dr. Mário Sérgio Teixeira de
Freitas e o Dr. César Manuel Vargas Benitez da Universidade Tecnológica Federal do Paraná
pelas orientações e apoio no decorrer do desenvolvimento do projeto. Agradecemos em especial
ao professor Dr. João Alberto Fabro da Universidade Tecnológica Federal do Paraná, orientador
deste projeto.
“Imagination is more important thanknowledge...”.
Albert Einstein
RESUMO
Crozatti, Fernando; Santos, Elis Cassiana Nakonetchnei; Souza,Fernando Carvalho . MÁ-QUINA SEPARADORA DE M&M’S R© POR COR. 20 f. Relatório de Projeto – Departamen-tos Acadêmicos de Informática e de Eletrônica, Universidade Tecnológica Federal do Paraná.Curitiba, 2015.
A “MÁQUINA SEPARADORA DE M&M’S R© POR COR” tem por objetivo receber M&M’S R©de diversas cores em um grande recipiente, cores essas cadastradas em um sistema de reconhe-cimento através de um sensor RGB. A partir do reconhecimento dessas cores foi desenvolvidoum mecanismo de separação dos confetes de chocolate em recipientes, podendo cada um conterapenas um tipo de cor, esse sistema foi projetado através da programação de dois servos moto-res de rotação contínua e a confecção de uma base sólida com mecanismos giratórios que tempor meta analisar um M&M’S R© por vez e lançá-los ao seu respectivo local.
Palavras-chave: Servo-motor, rotação-contínua, separador, confetes-de-chocolate, sensor-RGB,programação, mecanismos-giratórios
LISTA DE FIGURAS
–FIGURA 1 Diagrama de Blocos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
–FIGURA 2 Arduino Uno. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–FIGURA 3 IDE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–FIGURA 4 Sensor de reconhecimento de cor TCS3200. . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–FIGURA 5 Diagrama de bloco do TCS3200. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14–FIGURA 6 Servo Motor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
–FIGURA 7 Tabela de Preços . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17–FIGURA 8 Cronograma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
LISTA DE SIGLAS
ACR Arduino Code RepositoryGPS Global Positioning SystemRGB Vermelho (Red), Verde (Green) e Azul (Blue)UNO ”Modelo do Arduino”TCS-3200 Sensor de Cor RGB
SUMÁRIO
1 INTRODUÇÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71.1 MOTIVAÇÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71.2 DESCRIÇÃO DO DISPOSITIVO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71.2.1 Descrição do hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81.2.2 Descrição do software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81.3 OBJETIVOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81.3.1 Objetivo Geral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81.3.2 Objetivos Específicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81.3.3 Relação de dependência entre as tarefas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 FUNDAMENTAÇÃO TEÓRICA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102.1 ARDUINO UNO E ARDUINO IDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102.2 ARDUINO UNO – HARDWARE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102.3 ARDUINO UNO – SOFTWARE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122.4 SENSOR DE RECONHECIMENTO DE COR TCS3200 . . . . . . . . . . . . . . . . . . . . . . . . . 132.5 SERVO MOTOR DE 360◦ GRAUS CONTÍNUO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153 METODOLOGIA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163.1 TAREFAS NECESSÁRIAS PARA EXECUÇÃO DO PROJETO . . . . . . . . . . . . . . . . . . . 164 RESULTADOS E DISCUSSÕES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174.1 TRABALHOS FUTUROS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174.2 ORÇAMENTOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174.3 CONCLUSÕES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184.4 CRONOGRAMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19REFERÊNCIAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
7
1 INTRODUÇÃO
1.1 MOTIVAÇÃO
Com a tecnologia cada dia mais presente em nossas vidas, percebemos que os sensores
cada vez mais fazem parte do nosso cotidiano. Seja no celular, no carro, e até mesmo na rua,
sempre existe um sensor tentando tornar a vida do ser humano mais fácil. Por este motivo,
neste projeto, desenvolveremos uma máquina capaz de separar confetes coloridos através de
sua cor. Para isso, será necessária a utilização de um sensor de cor RGB, que nos permitirá
perceber qual a coloração de cada confete e assim separá-lo corretamente. Ao final, todos
estarão devidamente separados em seus recipientes por suas cores. Este projeto envolve as
áreas de eletrônica, mecânica e programação, gerando desafios interessantes e motivadores.
1.2 DESCRIÇÃO DO DISPOSITIVO
O dispositivo desenvolvido nesse trabalho consiste em um sistema capaz de separar
M&M’s R© por sua cor. A princípio, insere-se confetes como entrada para serem encaminhados
um a um, através de uma base circular rotacionada por meio de um primeiro servo Motor, até o
local onde se encontra o sensor de cor RGB, que fará o reconhecimento de sua cor. Após essa
etapa, o segundo servo Motor será acionado para deslocar o funil de forma que sua saída estará
apontada para o recipiente determinado para aquela cor especifica. Por último, o primeiro servo
Motor rotacionará novamente, derrubando o confete sobre o funil e escorregará até o recipiente.
Esse processo se repete até não existirem mais confetes de entrada.
8
1.2.1 DESCRIÇÃO DO HARDWARE
Os elementos de hardware utilizados no sistema são um Arduino UNO, que controla
toda a parte de software e hardware, um sensor de cor RGB (TCS-3200), que identifica as cores
dos M&M’s R© e dois servo motores de 360 graus com rotação contínua, onde o primeiro fica
responsável por encaminhar o M&M’s R© até o sensor e depois até o funil, e o segundo tem a
função de rotacionar o funil até o recipiente correto.
1.2.2 DESCRIÇÃO DO SOFTWARE
O software desenvolvido é capaz de controlar o sensor de cor RGB, recebendo a leitura
sobre o M&M’s R© feita pelo sensor e classificando-o, e os servo motores, rotacionando-os na
velocidade e direção correta para a realização das suas funções.
1.3 OBJETIVOS
A seguir são descritos, de maneira sucinta, os objetivos gerais e específicos que norte-
aram esse trabalho.
1.3.1 OBJETIVO GERAL
Construção de um dispositivo automatizado através de um microcontrolador, um sen-
sor de cor RGB e dois servo motores, que em conjunto possuem a capacidade de classificar e
separar M&M’s R© a partir de sua cor, comparando-os com as cores já pré-definidas no código
presente no microcontrolador.
1.3.2 OBJETIVOS ESPECÍFICOS
1. Criação da Estrutura Base.
2. Fazer um software capaz de integrar o sensor de cor RGb e fazer um ele reconhecer as
cores.
3. Implementar um software capaz de integrar os servo motores e o sensor de cor RGB,
separando os mms corretamente.
4. Realizar teste e calibrar a maquina para seu correto funcionamento.
9
1.3.3 RELAÇÃO DE DEPENDÊNCIA ENTRE AS TAREFAS
O sistema de rotação, tanto da parte de movimentação do M&M’s R© para o sensor,
quanto o de direcionamento do funil para o recipiente correto, depende do código contido no
Arduino, que também é responsável pelo reconhecimento e classificação de cor que acontece
através do sensor de cor. Todo o projeto está interligado ao Arduino UNO.
Na figura 1, temos o diagrama de blocos, para melhor entendimento do funcionamento
do projeto.
Figura 1: Diagrama de Blocos.
Fonte: Autoria Própria
10
2 FUNDAMENTAÇÃO TEÓRICA
A seguir será apresentada uma visão geral da fundamentação dos assuntos presentes
nesse estudo.
2.1 ARDUINO UNO E ARDUINO IDE
O Arduino é uma plataforma de prototipagem eletrônica, composta por duas partes:
Hardware e Software. Por ter baixo custo e material sobre licença open-source, facilita o acesso
e permite a criação de sistemas interativos. O modelo utilizado neste projeto é o Arduino UNO,
o qual terá algumas características descritas a seguir.
2.2 ARDUINO UNO – HARDWARE
Figura 2: Arduino Uno.
Fonte: http://www.embarcados.com.br/wp-content/uploads/2013/11/ArduinoUnoR3Front. jpg
11
A figura 2 representa a placa do Arduino Uno, que é composta por três partes princi-
pais: núcleo de processamento e entradas/saídas digitais e analógicas e fonte de alimentação.
Núcleo de processamento
Utiliza um micro controlador do tipo ATmega328, da empresa ATMEL, que permite
receber, processar e devolver informações ao ambiente externo.
Entradas/Saídas Digitais e Analógicas
Possui seis saídas analógicas, que possuem a capacidade de medir a tensão aplicada.
Elas permitem a utilização de sensores, que transformam grandezas físicas em valores de ten-
são. Também possui 14 entradas digitais, que podem ser programadas nos estados “HIGH” e
“LOW”, ou seja, o pino pode estar sendo alimentado com zero ou cinco volts.
Fonte de Alimentação
É a parte que recebe a alimentação externa de energia, que variam entre 7 e 35 volts e
corrente de 300mA. Após receber a energia, a fonte transforma a tensão de entrada para alguma
de suas duas saídas (5 ou 3,3 volts).
Há muitas diferentes maneiras de alimentar seu projeto no Arduino. Projetos que de-
mandam baixa potência, podem ser alimentados pela própria entrada USB ou baterias. Proje-
tos que utilizam dispositivos que demandam muita potência como solenoides, servo motores,
muitos LEDs e afins, é melhor utilizar uma fonte externa(transformador) ou uma bateria de
capacidade alta.(Tradução Própria)(OXER; BLEMINGS, 2009)
12
2.3 ARDUINO UNO – SOFTWARE
Figura 3: IDE.
Fonte: Autoria Própria
Os sistemas criados para o Arduino são chamados de sketches, escritos em um ambi-
ente Integrated Development Environment (IDE) próprio para a plataforma Arduino, que per-
mite a transferência dos programas criados para a placa.
Estrutura do Programa
Programas Arduino podem ser divididos em três partes principais: estrutura , valores
(variáveis e constantes), e funções.(ARDUINO, 2015)
Os sketches possuem basicamente duas funções: o setup e o loop, sendo possível criar
funções extras à medida que o desenvolvimento do projeto necessite.
A função setup contém as instruções gerais para inicializar os pinos e bibliotecas utili-
zadas no programa. É executada apenas uma vez, ao inicializar a placa. Já a função loop contém
13
todas as instruções de funcionamento do programa, e é executada até a placa ser reinicializada
ou desligada.
2.4 SENSOR DE RECONHECIMENTO DE COR TCS3200
O sensor representado na figura 4 é composto por 64 fotodiodos, os quais são divididos
por filtros: 16 para a cor vermelha, 16 para a cor verde, 16 para a cor azul e 16 sem filtro algum.
Figura 4: Sensor de reconhecimento de cor TCS3200.
Fonte: http://3.bp.blogspot.com/-KUkMqSRkhNs/Uvzl0gLTENI/AAAAAAAAB5I/0e3IDD-YhIA/s1600/M%25C3%25B3dulo+TCS230.jpg
O sensor combina os fotodiodos de silício configuráveis com um conversor de corrente
para frequência em um único circuito integrado monolítico CMOS. A saída é uma onda qua-
drada (50% ciclo de trabalho) com frequência diretamente proporcional à intensidade da luz
(irradiância). O TCS-3200 lê uma matriz 8x8 de fotodiodos.
14
Figura 5: Diagrama de bloco do TCS3200.
Fonte: Autoria própria
No sistema proposto neste projeto, o sensor será calibrado para detectar o valor de cada
uma das cores e assim separar corretamente os M&M’s R©.
Especificações:
1. Operação Single-de Abastecimento (2.7V a 5.5V);
2. De alta resolução de conversão da intensidade da luz de Frequência;
3. programável a cores e em escala total Frequência de saída;
4. Power Down recurso;
5. Se comunica diretamente com o microcontrolador;
6. S0 S1: entradas de seleção de escala de frequência de saída;
7. S2 S3: tipo fotodiodo Entradas seleção;
8. OUT Pin: Freqüência de saída;
9. OE Pin: Frequência de saída permitir pin (ativo baixo), pode ser iminente ao usar;
10. Suporte lâmpada LED controle suplemento luz;
11. Tamanho: 28.4x28.4mm;
15
2.5 SERVO MOTOR DE 360◦ GRAUS CONTÍNUO
Servo Motores são máquinas constituídas por três partes principais: sistema atuador,
sensor e circuito de controle, que são responsáveis por receber um sinal de controle, verificar a
posição original, e depois atuar no sistema em busca da posição desejada.
Graças à biblioteca Servo.h, que acompanha o IDE do Arduino, é muito fácil controlar
servos.(MCROBERTS, 2011)
O sistema atuador é um motor, geralmente de corrente contínua, e um conjunto de en-
grenagens que formam uma caixa de redução com uma relação longa, pra aumentar o torque.
O sensor é normalmente um potenciômetro acoplado ao eixo do servo que através da sua resis-
tência determina a sua posição. O circuito de controle é um circuito composto de componentes
eletrônicos discretos ou circuitos integrados que tem a capacidade de receber o sinal do sensor
e o sinal de controle e posicionar o motor no eixo da direção desejada.
O Servo Motor AS3103PG, utilizado neste trabalho, é um exemplo de servo motor que
pode ser programado para se deslocar livremente para ambos os lados. Ao programa-lo define-
se simultaneamente uma velocidade e direção, que varia de zero, velocidade máxima para a
direita, a 180, velocidade máxima para a esquerda. Também define-se um delay, que será a
forma de regular o ângulo do servo motor através do tempo que ele rotacionará naquela direção
a uma determinada velocidade.
Figura 6: Servo Motor
Fonte: http://tokobatavia.com/wp-content/uploads/2014/06/servo-4-2kg-180-as3103pg-va-270x0.jpg
16
3 METODOLOGIA
3.1 TAREFAS NECESSÁRIAS PARA EXECUÇÃO DO PROJETO
1. Estudos sobre a parte Mecânica do Projeto - pesquisas sobre a maneira mais eficiente
possível de construir e a base que sustenta todo o sistema, o recipiente, a base circular;
2. Estudos sobre a parte Eletrônica/Programação do Projeto – pesquisas sobre o funciona-
mento do sensor de cor RGB e do servo Motor 360 contínuo utilizando a plataforma
Arduino;
3. Construção da parte Mecânica do Projeto – Construção da base, o funil e o recipiente, e
montou-se o sistema mecânico, integrando junto ao restante os servo Motores, o sensor
de cor RGB e o Arduino UNO.
4. Construção de uma shield – Construção de uma shield para auxiliar na conexão eletrônica
do sistema.
5. Preparação do ambiente de Programação – instalação da biblioteca MD_TCS230, para o
reconhecimento do sensor de cor RGB.
6. Desenvolvimento do código – elaboração do código, calibrando o sensor de cor RGB e
os servo motores.
7. Teste – transferência do código para o Arduino e iniciação dos testes, fazendo os ajustes
finais do sistema.
8. Elaboração da monografia
17
4 RESULTADOS E DISCUSSÕES
Devido a imprevisto encontrados no decorrer da execução do projeto, como a falta de
ferramentas adequadas para o desenvolvimento, criaram-se obstáculos que inpediram a conclu-
são do projeto, tornando inviavel a execução de testes finais que gerariam a taxa de erro do
projeto em execução com todas suas partes integradas.
4.1 TRABALHOS FUTUROS
Fica proposto como trabalho futuro melhorias na estrutura do projeto, utilizando im-
pressão 3D, possibilitando uma melhor calibração do sensor e dos servo motores.
4.2 ORÇAMENTOS
O orçamento deste projeto está descrito na Figura 7.
Figura 7: Tabela de Preços
Fonte: Autoria Própria
18
4.3 CONCLUSÕES
Este trabalho apresentou uma máquina separadora de M&M’s R© por cor empregando
como hardware um Arduino UNO, dois servos motores de rotação continua, um sensor de cor
RGB(TCS-3200), uma fonte externa para o Arduino UNO e a Base do Sistema em madeira. O
software foi criado utilizando as bibliotecas Servo.h e MD_TCS230 que correspondem respec-
tivamente aos servo motores e ao Sensor de Cor RGB(TCS-3200).
Apesar da existência de projetos similares com o desenvolvido, a maioria foi elabo-
rada no exterior, com peças impressas em 3D, facilitando a criação da parte mecânica, porém
elevando seu custo. Como a impressão em 3D da parte mecânica não era algo viável, foi optado
pelo desenvolvimento manual demandando tempo, esforço e gerando um grande desafio para o
grupo, assim como a parte eletrônica.
Após a conclusão da parte mecânica foram feitos vários testes para desenvolver o có-
digo presente no Arduino para que tudo funcione em conjunto, o primeiro passo do sistema é
calibrar o sensor de cor RGB, a partir disto foi possível calibrar os servo motores superior e
inferior. Uma observação importante a ser colocadas é que o maior desafio nosso foi com a
parte mecânica, demandando muito tempo e novas soluções para novos problemas. A inclusão
de 2 servos motores de rotação continua e um sensor de cor RGB(TCS-3200) no Arduino UNO
diretamente demandou uma fonte externa para suportar o funcionamento correto do sistema.
Diversas contribuições para o conhecimento foram adquiridas durante a elaboração do
projeto, mas destaca-se a complexidade da integração mecânica/eletrônica, considerando que
nenhum dos membros da equipe esperava os problemas encontrados e a parcela de tempo gasto
com essa etapa, e a introdução a uma área muito presente na Engenharia de Computação: a
integração software/hardware, que nenhum dos membros havia trabalhado até então.
19
4.4 CRONOGRAMA
As tarefas foram subdividias entre os integrantes do grupo e a execução e o tempo
levado total para realização de todos as tarefas em média por cada participante está apresentado
no cronograma a seguir:
Figura 8: Cronograma
Fonte: Autoria Própria
20
REFERÊNCIAS
ARDUINO. Referência da Linguagem. 2015. Disponível em:<http://www.arduino.cc/en/Reference/HomePage>.
MCROBERTS, M. Arduino Básico. [S.l.: s.n.], 2011.
OXER, J.; BLEMINGS, H. Pratical Arduino. [S.l.: s.n.], 2009.