Como medir cores RGB com Arduino e o sensor TCS34725

  • O sensor TCS34725 mede cores RGB com alta precisão.
  • Usa um filtro infravermelho para eliminar a interferência da luz.
  • Ele se comunica com o Arduino usando o protocolo I2C.

Sensor TCS34725 com Arduino

O sensor TCS34725 é uma ferramenta muito útil para projetos eletrônicos onde é necessário medir cores com precisão. Se você trabalha com Arduino e tem interesse em detecção de cores, este dispositivo é uma ótima opção. É amplamente utilizado para decompor cores em seus componentes RGB (vermelho, verde e azul) e obter medições precisas. O sensor também tem a vantagem de possuir uma interface de comunicação I2C, o que facilita sua integração e leituras.

Neste artigo, exploraremos detalhadamente como funciona o sensor de cores TCS34725 e como você pode usá-lo facilmente em projetos Arduino.

O que é o sensor TCS34725? É um dispositivo óptico que facilita a leitura de cores no formato RGB. É um sensor altamente preciso e moderno, que supera outros modelos mais antigos como o TCS3200. O TCS34725 possui um conjunto de fotodiodos que inclui filtros para as três cores básicas (vermelho, verde e azul), além de um fotodiodo sem filtro ("transparente") que mede a quantidade total de luz incidente.

O sensor se destaca por incorporar filtro infravermelho, que melhora a precisão em ambientes com muita interferência luminosa. Também é bastante adaptável, pois podemos ajustar parâmetros como tempo de integração e ganho através de software. Este dispositivo é sensível o suficiente para funcionar em condições de pouca luz, mesmo com um vidro protetor entre o sensor e o objeto que estamos medindo.

Para facilidade de uso, o sensor TCS34725 normalmente vem integrado em módulos comerciais que incluem um LED de iluminação neutra. O LED pode ser facilmente controlado a partir do Arduino, ajustando-se às necessidades do projeto.

Recursos e benefícios do TCS34725

O TCS34725 se destaca de outros sensores RGB do mercado por vários recursos importantes. Por exemplo, você pode ajustar o ganho e o tempo de exposição para obter leituras mais precisas. Abaixo mostramos algumas das principais vantagens:

  • Filtro infravermelho: Isto permite leituras mais precisas, eliminando grande parte do ruído causado por fontes de luz não visíveis, como a luz solar direta.
  • Alta sensibilidade: Sua faixa dinâmica é impressionante, tornando-o adequado mesmo em ambientes com pouca luz.
  • Controle de LED de iluminação: A maioria dos módulos integra um LED que pode ser controlado pelo próprio Arduino, o que garante iluminação constante para as leituras.

Diagrama de conexão do sensor

Conectar o sensor ao Arduino é muito simples graças à sua interface I2C. O sensor TCS34725 pode operar com alimentação de 3.3 V ou 5 V, tornando-o compatível com uma ampla gama de microcontroladores. Abaixo fornecemos as etapas para conectá-lo corretamente:

  • VCC: Conecte a 5V no Arduino.
  • GND: Conecte-se ao GND.
  • Normas de trânsito: Ele se conecta ao pino A4 do Arduino (em modelos como o UNO).
  • SCL: Ele se conecta ao pino A5 do Arduino.

Observe que alguns módulos podem possuir pinos adicionais como o LED, o que permite controlar seu comportamento a partir do próprio Arduino para economizar energia ou ajustá-lo às condições do seu ambiente de medição.

Bibliotecas e código para TCS34725

Existem diversas bibliotecas disponíveis que facilitam o trabalho com este sensor RGB, mas uma das mais recomendadas e amplamente utilizadas é a biblioteca Adafruit, chamada "Adafruit_TCS34725". Você pode instalá-lo diretamente do gerenciador de biblioteca Arduino IDE.

Para instalá-lo, siga estas etapas:

  • Abra o IDE do Arduino, vá para a aba Ferramentas e selecione Incluir biblioteca -> Gerenciar bibliotecas.
  • Escrever Adafruit TCS34725 e selecione instalar. Dessa forma, a biblioteca estará pronta para uso.

Depois de instalado, você pode usar o seguinte código básico para testar o sensor TCS34725. Este código simplesmente obtém os valores RGB e os exibe na porta serial:

#incluir #include "Adafruit_TCS34725.h"Adafruit_TCS34725 tcs = Adafruit_TCS34725();void setup() { Serial.begin(9600); if (!tcs.begin()) { Serial.println("Sensor não encontrado"); enquanto (1); }}void loop() { uint16_t r, g, b, c; tcs.getRawData(&r, &g, &b, &c); Serial.print("Vermelho: "); Serial.println(r); Serial.print("Verde: "); Serial.println(g); Serial.print("Azul: "); Serial.println(b); atraso(1000); }

Calibração e uso do sensor

É importante observar que o sensor TCS34725 precisa ser calibrado para maior precisão. Isto se deve às limitações de qualquer dispositivo de medição. A calibração geralmente envolve o ajuste dos valores de ganho e tempo de integração para obter leituras precisas nas condições de luz do seu ambiente.

Além disso, lembre-se de que superfícies brilhantes podem causar leituras incorretas devido a reflexos. Se você trabalha com superfícies altamente refletivas, é aconselhável cobrir o sensor com algum material fosco ou colocar um filtro polarizador.

Aplicações do sensor de cores TCS34725

Este sensor é perfeito para projetos onde você precisa detectar cores com precisão. Algumas aplicações do TCS34725 incluem:

  • Classificação dos objetos de acordo com sua cor.
  • Sistemas de luz ambiente, onde a iluminação pode ser ajustada automaticamente com base na cor predominante do ambiente.
  • Duplicação de cores em fitas de LED RGB, como a WS2812B.

Em projetos avançados, esse sensor também pode ser usado para medir a temperatura da cor e a quantidade de luz em uma cena, o que é útil em fotografia ou em projetos de iluminação inteligente.


Seja o primeiro a comentar

Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.