Sensor de Color de Arduino (4 / 5 paso)

Paso 4: Paso 3: escribir el código

Aquí está mi código de Arduino. Usted tendrá que calibrar los valores const en función de cuánta luz en la habitación - comentario a la parte indicada del método loop() y tenga en cuenta los valores RGB muestra de tarjetas de colores diferentes. Almacenar los valores RGB en el ICOLOR const int [] al principio de la secuencia de comandos. Si hiciste un buen trabajo de corrección de luz de la caja, los mismos valores RGB deben trabajar con distintos niveles de luz de fondo.

/ ** Funciona un sensor de color con el Arduino
* Iniciar el programa al mismo tiempo que muestra la tarjeta blanca. Cuando apaga el LED RGB,
* interruptor (rápidamente) a la tarjeta de negro. Después de que el RGB LED parpadea blanco, está listo.
*/
identificadores de PIN
int azul = A2;
int verde = A1;
int rojo = A0;
redOut int = 9;
int greenOut = 10;
int blueOut = 11;
cuenta el número de bucles - utilizado para eventos
int cuenta = 0;
guarda la actual entrada RGB
int [3];
ICOLOR = RGB entrada de transistor que es ese color.
COLOR = RGB salida mostrar ese color para LED RGB
int IWHITE [3] = {175,48,455}; int blanco [3] = {224,226,243};
int IBLACK [3] = {42,5,20}; int [3] = {0,0,0};
int IRED [3] = {145,15,38}; int rojo [3] = {200,0,0};
int IYELLOW [3] = {175,40,60}; int amarillo [3] = {255,150,0};
int IMAGENTA [3] = {150,16,83}; int MAGENTA [3] = {200,0,200};
int IBLUE [3] = {57,7,160}; int azul [3] = {0,0,200};
int IGREEN [3] = {41,6,50}; int verde [3] = {0,200,0};
int NONE [3];
[0] de ellos es el minuto, [1] es el máximo.
int redConvert [2];
int greenConvert [2];
int blueConvert [2];

lecturas en el color actual
int * readColor() {}
int ret [3];
RET [0] = analogRead(red);
RET [1] = analogRead(green);
RET [2] = analogRead(blue);
Return ret;
}

Verifica que cada elemento en color1 está dentro dev de
el elemento correspondiente en refColor
{} Boolean inRange (color1 de int [], int refColor [], int dev)
volver (abs (color1 [0] - refColor[0]) < = dev) & &
ABS (color1 [1] - refColor[1]) < = dev & &
ABS (color1 [2] - refColor[2]) < = dev;
}

establece el color del RGB LED
void colores (int color[]) {}
analogWrite (redOut, color[0]);
analogWrite (greenOut, color[1]);
analogWrite (blueOut, color[2]);
}

determina los valores de blanco y negro
void calibrate() {}
setColor(RED);
Delay(500);
setColor(GREEN);
Delay(500);
setColor(BLUE);
Delay(500);
setColor(WHITE);
redSum int = 0;
int greenSum = 0;
int blueSum = 0;
para (int i = 1; i < = 5; i ++) {}
redSum += analogRead(red);
greenSum += analogRead(green);
blueSum += analogRead(blue);
Delay(333);
}
int whiteCal [3] = {redSum/5, greenSum/5, blueSum/5};
redSum = blueSum = greenSum = 0;
setColor(OFF);
Serial.Print ("blanco Cal (RGB):");
Serial.Print(whiteCal[0]);
Serial.Print("");
Serial.Print(whiteCal[1]);
Serial.Print("");
Serial.println(whiteCal[2]);
Serial.println ("tarjeta del parte movible negro");
{while(inRange(readColor(),whiteCal,50))}
Delay(1000);
Serial.Print ("rojo verde azul:");
Serial.Print(analogRead(red));
Serial.Print("");
Serial.Print(analogRead(Green));
Serial.Print("");
Serial.println(analogRead(Blue));
setColor(out);
}
Serial.println ("nueva tarjeta detectada - espero que sea negro");
Delay(5000);
para (int i = 1; i < = 5; i ++) {}
redSum += analogRead(red);
greenSum += analogRead(green);
blueSum += analogRead(blue);
Delay(100);
}
int blackCal [3] = {redSum/5, greenSum/5, blueSum/5};
Serial.Print ("negro Cal (RGB):");
Serial.Print(blackCal[0]);
Serial.Print("");
Serial.Print(blackCal[1]);
Serial.Print("");
Serial.println(blackCal[2]);
calcular funciones de conversión de
redConvert [0] = blackCal [0];
redConvert [1] = whiteCal [0];
greenConvert [0] = blackCal [1];
greenConvert [1] = whiteCal [1];
blueConvert [0] = blackCal [2];
blueConvert [1] = whiteCal [2];
}

ejecuta la rutina de calibración y permite que la luz blanca antes de
Inicio de bucle
void setup() {}
Serial.Begin(9600);
Calibrate();
setColor(WHITE);
Delay(1000);
}

void loop() {}
Lee en nuevos valores
[0] = analogRead (rojo); //0-1024
[1] = analogRead(green);
[2] = analogRead(blue);

RGB LED de actualizar e imprimir salida menos frecuentemente
Si (recuento % 5000 == 0) {}
Serial.Print ("rojo verde azul:");
Serial.Print(OUT[0]);
Serial.Print("");
Serial.Print(OUT[1]);
Serial.Print("");
Serial.println(OUT[2]);

comentar el resto de este bucle sólo valores de pantalla y no utilizar el LED RGB
{if(inRange(out,IWHITE,10))}
Serial.println("White!");
setColor(WHITE);
}
else {} if(inRange(out,IRED,10))
Serial.println("red!");
setColor(RED);
}
else {} if(inRange(out,IBLUE,10))
Serial.println("Blue!");
setColor(BLUE);
}
else {} if(inRange(out,IYELLOW,10))
Serial.println("Yellow!");
setColor(YELLOW);
}
else {} if(inRange(out,IMAGENTA,10))
Serial.println("magenta!");
setColor(MAGENTA);
}
else {} if(inRange(out,IGREEN,10))
Serial.println("Green!");
setColor(GREEN);
}
setColor(OFF) otra cosa;
}
cuenta ++;
}

Artículos Relacionados

Sensor de Color de Arduino DIY

Sensor de Color de Arduino DIY

Como hacer un Sensor de Color de Arduino DIYPaso 1: partes 4 Leds (verde, azul, rojo, amarillo)resistencia de 4 220 ohmios1 LDRresistencia de 10 1 kPasadores hembraPCBPaso 2: Cortar el PCB Su diseño de la PCB de la forma. Entonces cortó él. Usé 3,5 c
Arduino + fischertechnik TX-C - conexion I2C del Sensor verdadero color

Arduino + fischertechnik TX-C - conexion I2C del Sensor verdadero color

lectura del color es un verdadero problema para los modelos industriales.He estado trabajando en él durante más de 12 meses, desde diciembre de 2009.Después de muchos meses de duro trabajo,• a partir del lector estándar de color (temporada 1 ) con un
Sensor de Color del LED simple Arduino para principiantes

Sensor de Color del LED simple Arduino para principiantes

Hay dos tipos de sensores de color.El que se usa en este instructable es un sensor de color "reflexivo" tiene una luz roja luz verde de la fuente de la fuente una fuente de luz azul (funciona un LED de R, G, B) y un sensor de luz. La forma en qu
Su propio Sensor de Color con LED

Su propio Sensor de Color con LED

¿Sabía usted que usted puede hacer un "barato" pero eficaz color sensor utilizando algunos componentes básicos?Esta super fácil instructable le guía para hacer tu propio color sensor usando un montón de LEDs y una LDR.He conseguido hacer un sens
Todo lo que necesitas saber sobre sensores de color

Todo lo que necesitas saber sobre sensores de color

Este instructivo describe un proyecto de la semana en sensores de color, sus propiedades y su interacción con arduino.Los sensores que se trabajó con incluido:Sparkfun ADJD-S311-CR999 (jubilado): https://www.sparkfun.com/products/retired/10701 (dispo
Empezar a trabajar con sensores de distancia y Arduino

Empezar a trabajar con sensores de distancia y Arduino

Se trata de una guía de inicio para el uso de sensores de distancia con Arduino y algunos procesamiento. Hemos utilizado estos sensores:GP2Y0A21YK0F SHARPUnidad de Sensor de medición de distanciaCompuesto por una combinación integrada de PSD (detecto
Sensor de Color DIY

Sensor de Color DIY

Hola a todos!,Había pasado mi semana trasteando con arduino y también compré algunos sensores y módulos para él pero algo faltaba!!. Y es un Sensor de Color!! Después de googlear que encontré muchas maneras de hacerla, he probado muchos y este uno fu
Detección de uso de Sensor de color TCS3200 y LinkIt uno de color

Detección de uso de Sensor de color TCS3200 y LinkIt uno de color

En este Instructable, aprenderemos cómo interfaz sensor de color de TCS3200 con uno de LinkIt para detección de color.El TCS3200 programable color luz-a-convertidores de frecuencia que combina silicio configurable y un convertidor de corriente a frec
Sensor de infrarrojos guiado Arduino controlado L293D Robot (parte 2)

Sensor de infrarrojos guiado Arduino controlado L293D Robot (parte 2)

Aquí está la parte 2 de Arduino controla Robot L293D.Parte 2 incluye infrarrojo Sensors.This es parte de una serie de instructables conduce a un seguidor de línea Robot.QRD1114 Sensor infrarrojo conectado a ArduinoPaso 1: Conectar el Sensor al Arduin
La medición de distancia con sensor ultrasónico y Arduino

La medición de distancia con sensor ultrasónico y Arduino

Hola cada unoConseguí mi primer Aduino recientemente, aquí estoy ver gonne que mi primer proyecto que utiliza la medición de distancia sensor ultrasónico y Arduino, puede utilizar este proyecto muchas aplicaciones comoNivel 1-líquidoDetección de obje
DH11 Temperatura y Sensor de humedad con Arduino

DH11 Temperatura y Sensor de humedad con Arduino

Este es un Tutorial sobre cómo usar el DH11 temperatura y Sensor de humedad con Arduino.Paso 1: Ver este Video (este es un Tutorial completo)Este video muestra el procedimiento completo de cómo usar este Sensor.Paso 2: Instalar la biblioteca DH11.1)
Sensor LED Color

Sensor LED Color

Este proyecto fue hecho para la reasignación dela caridad UK.El objetivo era dar un ciego un dispositivo para ayudarlo Dile el color * de un LED.He añadido un cable de fibra óptica a un caso de smartphone barato, permitiendo que la cámara de los telé
Sensor de color

Sensor de color

este es un sensor de color simple con Atmega16 MCU y puede sentido color rojo, verde y azul.Cómo funciona:el sensor consisten de sensor LDR y LED RGB, por lo que cuando se pone el objeto en el sensor de la luz que emiten de RGB LED había reflejada de
Capturar la imagen mediante sensor ultrasónico con arduino

Capturar la imagen mediante sensor ultrasónico con arduino

Llevo muy pocos meses en el espacio de la IOT y tratar de integrar cosas con placa Arduino, recientemente me encontré con sensor ultrasónico, es interesante. Así que pensé en crear un pequeño proyecto. El objetivo del proyecto es capturar el obstácul