Avaliação do Usuário

Estrela inativaEstrela inativaEstrela inativaEstrela inativaEstrela inativa
 

Sistemas de classificação por cores, sistemas de detecção de cores e etc. a imaginação é que manda.

 

 

 

 

 

 

A ligação com o Arduino é simples e o código já está pronto em formato de biblioteca que pode ser importada sem maiores complicações e adaptada para qualquer tipo de aplicação.

 

 

Vamos já para o que interessa:

 

 

Ligue o pino Vcc do sensor em um pino 5V do Arduino. Ligue também o pino GND do sensor a um pino GND do Arduino.

 

 

 

 

 

 

Ligue o pino OE do sensor ao pino digital 8 do Arduino.

 

 

 

 

 

 

Ligue o pino S2 do sensor ao pino digital 12 do Arduino e o pino S3 do sensor ao pino digital 13 do Arduino.

 

 

 

 

 

 

Ligue o pino OUT do sensor ao pino digital 2 do Arduino.

 

 

 

 

 

 

Pronto. Com todas as ligações feitas vamos para a programação.

 

 

Precisaremos de uma biblioteca própria para usar esse sensor, ela pode ser baixada aqui que é o local original e também aqui, uma cópia que fiz no SeuCurso.

 

Após fazer o download da biblioteca copie-a na pasta LIBRARIES no local onde sua IDE Arduino está instalada.

 

Abra a IDE do Arduino, vá ao menu FILE, em seguida em EXAMPLES, ai deve haver uma sub-opção MD_TCS230, selecione o exemplo SIMPLE_NB_TCS230. O código será:

 

 

 

{code}

// TCS230 sensor reading example

//

// This is just to show basic functionality without calibration.

// Utilises the non-blocking version of the reading function.

// Output uses the Serial console.

//

#include

#include >

 

// Pin definitions

#define  S2_OUT  12

#define  S3_OUT  13

#define  OE_OUT   8    // LOW = ENABLED

 

MD_TCS230  CS(S2_OUT, S3_OUT, OE_OUT);

 

void setup()

{

Serial.begin(57600);

Serial.println("[TCS230 Simple NON_BLOCKING Example]");

Serial.println("\nMove the sensor to different color to see the RGB value");

Serial.println("Note: These values are being read in without sensor calibration");

Serial.println("and are likely to be far from reality");

 

CS.begin();

}

 

void readSensor()

{

static  bool  waiting;

 

if (!waiting)

{

CS.read();

waiting = true;

}

else

{

if (CS.available())

{

colorData  rgb;

 

CS.getRGB(&rgb);

Serial.print("RGB [");

Serial.print(rgb.value[TCS230_RGB_R]);

Serial.print(",");

Serial.print(rgb.value[TCS230_RGB_G]);

Serial.print(",");

Serial.print(rgb.value[TCS230_RGB_B]);

Serial.println("]");

 

waiting = false;

}

}

}

 

void loop()

{

readSensor();

}

{/code}

 

 

 

Ligue o Arduino ao computador, você verá que os LEDs do sensor serão acionados assim como o sensor será ligado.

 

 

 

 

 

 

Faça upload desse scketch em seu Arduino e para ver tudo funcionar, basta abrir o Serial Monitor, mas ajuste a taxa de transmissão de dados para 57600 BAUDS.

 

Aproxime seu sensor à objetos coloridos e veja a resposta com codificação decimal RGB.