En este proyecto vamos a conectar el sensor de color TCS3200 con Arduino UNO. TCS3200 es un sensor de color que puede detectar cualquier número de colores con la programación correcta. TCS3200 contiene matrices RGB (rojo, verde, azul). Como se muestra en la figura a nivel microscópico, se pueden ver las cajas cuadradas dentro del ojo en el sensor. Estas cajas cuadradas son matrices de matriz RGB. Cada una de estas cajas contiene tres sensores, uno para detectar la intensidad de la luz ROJA, uno para detectar la intensidad de la luz VERDE y el último para detectar la intensidad de la luz AZUL.
Cada una de las matrices de sensores de estas tres matrices se selecciona por separado según los requisitos. De ahí que se le conozca como sensor programable. El módulo se puede presentar para detectar el color particular y dejar los demás. Contiene filtros para ese propósito de selección. Hay un cuarto modo que no es un modo de filtro. Sin modo de filtro, el sensor detecta luz blanca.
Componentes requeridos
Hardware: ARDUINO UNO, fuente de alimentación (5v), LED, JHD_162ALCD (16 * 2LCD), sensor de color TCS3200.
Software: ARDUINO IDE (ARDUINO todas las noches).
Diagrama de circuito y explicación de trabajo
En LCD de 16x2 hay 16 pines en total si hay luz de fondo, si no hay luz de fondo, habrá 14 pines. Uno puede encender o dejar los pines de luz de fondo. Ahora en los 14 pines hay 8 pines de datos (7-14 o D0-D7), 2 clavijas de alimentación de alimentación (1 y 2 o VSS y VDD o GND y + 5V), 3 rd PIN para el control de contraste (Vee-controla cómo de espesor los caracteres deben estar se muestra) y 3 pines de control (RS & RW & E)
En el circuito, pueden observar que solo he tomado dos pines de control. El bit de contraste y READ / WRITE no se utilizan con frecuencia, por lo que pueden cortocircuitarse a tierra. Esto coloca a la pantalla LCD en el modo de mayor contraste y lectura. Solo necesitamos controlar los pines ENABLE y RS para enviar caracteres y datos en consecuencia.
Las conexiones que se realizan para LCD se dan a continuación:
PIN1 o VSS a tierra
PIN2 o VDD o VCC a + 5v de potencia
PIN3 o VEE a tierra (ofrece el mejor contraste máximo para un principiante)
PIN4 o RS (Selección de registro) a PIN8 de ARDUINO UNO
PIN5 o RW (lectura / escritura) a tierra (pone la pantalla LCD en modo lectura facilita la comunicación para el usuario)
PIN6 o E (habilitado) a PIN9 de ARDUINO UNO
PIN11 o D4 a PIN7 de ARDUINO UNO
PIN12 o D5 a PIN11 de ARDUINO UNO
PIN13 o D6 a PIN12 de ARDUINO UNO
PIN14 o D7 a PIN13 de ARDUINO UNO
Las conexiones que se realizan para el sensor de color se indican a continuación:
VDD a + 5V
GND a TIERRA
OE (habilitación de salida) a GND
S0 al pin 2 de UNO
S1 al pin 3 de UNO
S2 al pin 4 de UNO
S3 al pin 5 de UNO
SALIDA al pin 10 de UNO
El color que necesita ser detectado por el sensor de color se selecciona mediante dos pines S2 y S3. Con estos dos pines de control lógico podemos decirle al sensor qué intensidad de luz de color se va a medir.
Digamos que necesitamos sentir la intensidad del color ROJO, necesitamos configurar ambos pines en BAJO. Una vez hecho esto, el sensor detecta la intensidad y envía el valor al sistema de control dentro del módulo.
S2 |
S3 |
Tipo de fotodiodo |
L |
L |
rojo |
L |
H |
Azul |
H |
L |
Claro (sin filtro) |
H |
H |
Verde |
El sistema de control dentro del módulo se muestra en la figura. La intensidad de luz medida por matriz se envía a la corriente al convertidor de frecuencia. Lo que hace es emitir una onda cuadrada cuya frecuencia está en relación con la corriente enviada por ARRAY.
Entonces tenemos un sistema que envía una onda cuadrada cuya frecuencia depende de la intensidad de la luz del color que es seleccionado por S2 y S3.
La frecuencia de la señal enviada por el módulo se puede modular según el uso. Podemos cambiar el ancho de banda de la frecuencia de la señal de salida.
S0 |
S1 |
Escala de frecuencia de salida (f 0) |
L |
L |
Corriente cortada |
L |
H |
2% |
H |
L |
20% |
H |
H |
100% |
El escalado de frecuencia se realiza mediante dos bits S0 y S1. Por conveniencia, vamos a limitar la escala de frecuencia al 20%. Esto se hace configurando S0 en alto y S1 en LOW. Esta característica es útil cuando usamos el módulo en un sistema con reloj bajo.
La sensibilidad de la matriz al color se muestra en la siguiente figura.
Aunque los diferentes colores tienen una sensibilidad diferente, para un uso normal no hará mucha diferencia.
El UNO aquí envía una señal al módulo para detectar colores y los datos recibidos por el módulo se muestran en la pantalla LCD de 16 * 2 conectada a él.
El UNO detecta tres intensidades de color por separado y las muestra en la pantalla LCD.
El Uno puede detectar la duración del pulso de la señal mediante la cual podemos obtener la frecuencia de onda cuadrada enviada por el módulo. Con la frecuencia que tenemos a mano, podemos combinarla con el color del sensor.
|
Como en la condición anterior, UNO lee la duración del pulso en el décimo pin de UNO y almacena su valor en un número entero de "frecuencia".
Vamos a hacer esto para los tres colores para el reconocimiento de colores. Las tres intensidades de color se muestran mediante frecuencias en una pantalla LCD de 16x2.