Como Utilizar o Sensor de Cor RGB TCS34725

805 views

Olá pessoal! Existem sensores para diversos tipos de aplicações. Mas já tiveram a experiência de detectar a cor de um objeto utilizando um Arduino? Isto é possível graças aos sensores de cor RGB. Hoje vamos mostrar o sensor de cor tcs34725 com filtro IR.

Características do Sensor de Cor TCS34725

Este módulo possui um circuito integrado TCS34725, que além de detectar os níveis de vermelho, verde e azul, também detecta o nível de claridade. Também possui um filtro de infravermelho, dando uma melhor precisão na leitura da cor.

Sensor de Cor TC34725 com filtro IR
Figura 1 – Sensor de Cor TCS34725 com Filtro IR

A tensão de entrada da placa (Vin) é de 3.3V a 5V. Só que o módulo possui um regulador de tensão 3.3V, que é a tensão de operação do Sensor de Cor TCS34725. Isto possibilita utilizar o sensor com plataformas diversas, como Arduino e Raspberry Pi.

A forma de comunicação deste sensor é I2C, que é um protocolo de comunicação a dois fios. Falaremos deste protocolo a seguir.

Este sensor também possui um led para auxiliar na leitura do nível de cor do objeto. O pino LED pode ser configurado para acender ou apagar este led, conforme necessidade no projeto.

Há um pino de interrupção (INT) neste módulo, mas não faremos uso dele com o Arduino, somente alimentação (Vcc e GND) e comunicação I2C.

Protocolo I2C

I2C é uma sigla do inglês Inter-Integrated Circuit. Possui o formato Mestre-Escravo, onde há um dispositivo (mestre) que se comunica com um ou vários dispositivos (escravos). Um diagrama de funcionamento pode ser visto na próxima imagem:

Protocolo I2C
Figura 2 – Protocolo I2C

Os dois fios onde estão os periféricos possuem os nomes SDA (Serial Data) e SCL (Serial Clock). No Arduino Uno, estes fios estão localizados nos pinos A4 (SDA) e A5 (SCL).

Você tem a possibilidade de colocar n dispositivos I2C nos mesmos pinos e o programa fará a ‘conversa’ com cada dispositivo através de endereços em hexadecimal. Através destes endereços, é possível utilizar mais de um periférico I2C no sketch.

Caso tenha dúvidas sobre qual o endereço de seu dispositivo, consulte o site arduino.cc e veja um sketch para escanear todos os periféricos I2C conectados ao seu Arduino, chamado i2c_scanner.

Neste tutorial, faremos o uso de dois dispositivos com este protocolo: Sensor de Cor TCS34725 e Display LCD com módulo I2C.

Materiais Necessários

Soldagem nos Módulos

Primeiramente, faremos a soldagem dos pinos macho sobre o sensor. Coloque a parte menor dos pinos sobre os orifícios do módulo.

Realize a soldagem encostando o Ferro de Solda (já aquecido) entre a barra de pinos e o módulo. Tenha cuidado para não encostar um pino no outro com solda.

Soldando pinos no módulo
Figura 4 – Soldando pinos no módulo

Ao final, o módulo com pinos soldados fica assim:

Módulo Soldado
Figura 5 – Módulo Soldado

Agora faremos a soldagem do módulo I2C no display. Encaixe-o sobre o display, com os quatro pinos voltados para fora e começando do pino 1. Realize a solda dos pinos do módulo sobre os pinos do display (sem headers), até ficar como na próxima imagem:

Módulo I2C Soldado sobre Display
Figura 6 – Módulo I2C Soldado sobre Display

Circuito Fritzing

Realize as ligações entre Arduino e módulos conforme o circuito abaixo:

Circuito Sensor de Cor TCS34725 e Display I2C
Figura 7 – Circuito Sensor de Cor TCS34725 e Display I2C

Onde estão as ligações entre módulo I2C e display não serão utilizados fios (fios azuis, figura 5), são equivalentes à solda realizada no passo anterior.

Programação

Para este código, realize o download de duas bibliotecas:

Adafruit_TCS34725 e New Liquid CrystalRealize as instalações na IDE Arduino: Menu Sketch => Incluir Biblioteca => Adicionar Biblioteca .zip.

O sketch para este tutorial encontra-se abaixo:

Montagem Final

O projeto Sensor de Cor TCS34725 e Display LCD encontra-se na figura abaixo:

Projeto com Sensor de Cor TCS34725 e Display LCD
Figura 8 – Projeto com Sensor de Cor TCS34725 e Display LCD

Quando ligado, temos uma mensagem inicial configurada no void setup que pode ser modificada conforme o projeto. Após isso, uma animação de bolhas em movimento, conforme figura 8.

Quando colocamos o objeto sobre o sensor, aparecerá o tom predominante no display por alguns segundos e volta a aparecer a animação. Teste com objetos de cores diferentes, nas cores vermelha, verde e azul.

Detectando Cor
Figura 9 – Detectando Cor

Para acrescentar o reconhecimento de outras cores, verifique tabela de cores RGB, disponível neste link e faça adaptações no seu sketch!

A utilização da tabela é muito simples. Basta verificar os valores dados na tabela, em conjuntos de três números. Ex:

Orange 1 (255, 165,0), onde:

255 – tom de vermelho (Red ou R, em inglês)

165 – tom de verde (Green ou G, em inglês)

0 – tom de azul (Blue ou B, em inglês)

Substitua os valores de R, G e B para obter as cores desejadas.

Espero que tenha curtido este tutorial.  Para dúvidas e sugestões, faça seus comentários abaixo! Confira outros produtos em nossa loja!

(Visited 469 times, 5 visits today)