Tabla de contenido:
Video: Detección de color con LED RGB: 4 pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:45
¿Alguna vez ha querido una forma automatizada de detectar el color de un objeto? Al hacer brillar una luz de cierto color sobre el objeto y observar cuánta luz se refleja, puede saber de qué color es el objeto. Por ejemplo, si enciende una luz roja sobre un objeto rojo, esa luz se reflejará. Si ilumina con una luz azul un objeto rojo, el objeto absorberá parte de esa luz y menos se reflejará.
Paso 1: Piezas necesarias
Usé un microcontrolador PIC 16F887, pero casi cualquiera con capacidad de modulación de ancho de pulso funcionará. 1 LED RGB1 Microcontrolador1 LED rojo estándar1 Resistencia de 1k ohmios 1 Fotorresistor (cambia la resistencia dependiendo de la cantidad de luz que brille) Algunos cables Solo necesito el microcontrolador y el LED RGB para tener una amplia gama de detectores de color, pero si solo quieres un circuito que detecta un color, no necesita un microcontrolador, solo necesita un LED brillante del color que desea detectar. El LED rojo estándar es el "LED indicador": se enciende cuando se detecta el color correcto.
Paso 2: construye el circuito
El esquema es bastante simple y, en forma general, se muestra a continuación. El LED RGB es alimentado externamente por una señal PWM. Pongo cinta aislante alrededor del fotorresistor para que la luz ambiental no entre, solo se detectará la luz directamente encima de él.
Paso 3: el código
Este código fue escrito para un Microchip PIC 16F887, pero es de esperar que pueda hacerse una idea general. Usé el potenciómetro incorporado en mi placa de desarrollo para variar el espectro de color del LED RGB (y no atraviesa todo el espectro porque no tengo 3 módulos PWM, pero es lo suficientemente bueno) Comentarios incluidos. #include #include #include "delay.c" #include #include #use delay (clock = 4000000) #FUSES INTRC, NOWDT, NOPUT, NOMCLR, NOPROTECT, NOCPD, NOBROWNOUT, NOIESO, NOFCMEN, NOLVP # byte CCP1CON = 0x17 byte CCP2CON = 0x1D # byte PWM1CON = 0x9Bint valor = 128; int p1 = 0; int p2 = 0; void my_setup_ccp1 (valor int8) {salida_bajo (PIN_C2); CCP1CON = valor; PWM1CON = 0;} void my_setup_ccp2 {salida_bajo (PIN_C1); CCP2CON = valor;} // ================================= Void principal () {// A4 = fuente de energía para fotodiodooutput_high (PIN_A4); output_high (PIN_B1); setup_adc (ADC_CLOCK_INTERNAL); set_adc_channel (0); setup_adc_ports (sAN0); // Temporizador / Interrupción setupenable_interrupts_ccPWM_TIM () my_setup_ccp2 (CCP_PWM); setup_timer_2 (T2_DIV_BY_1, 128, 1); // setup_compare (2, COMPARE_PWM | COMPARE_TIMER2); while (1) {// Evita que PIC entre en reposo.//SET PWM DUTY CYCLE output_high; (PIN_PWM | COMPARE_TIMER2) // El pin A3 es la conexión del fotodiodo if (input (PIN_A3) == 1) output_high (PIN_A4); else output_low (PIN_A4); // Leer el valor del potenciómetro para cambiar el color del LED value = read_adc (); cambiar (valor) {caso 0: p1 = valor; salida_bajo (PIN_C0); p2 = valor; rotura; caso 50: p1 = valor; salida_alto (PIN_C0); p2 = valor; rotura; caso 100: p1 = valor; salida_alto (PIN_C0); p2 = valor; rotura; caso 150: salida_alta (PIN_C0); p1 = 50; p2 = valor; rotura; caso 200: salida_bajo (PIN_C0); p1 = 0; p2 = valor; rotura; caso 250: p1 = 0; p2 = valor; salida_bajo (PIN_C0); rotura; } p1 = valor; p2 = 128 - p1; set_pwm1_duty (p1); set_pwm2_duty (p2);}}
Paso 4: ¡Aplicaciones
Un detector de color simple como este se puede usar en robótica o para proyectos geniales como separar legos por color, clasificar M&M o como ayuda para el daltonismo. ¡Esperamos que este instructivo haya sido útil para mejorar un proyecto que tenía en mente!:) Los LED son buenos para muchas cosas….
Recomendado:
Máquina de pintura con detección de color: 4 pasos
Máquina de pintura con detección de color: la máquina de pintura con detección de color copia los colores a tu alrededor y te permite dibujar con ellos. Si tiene la pintura de colores primarios, puede usar el sensor de color RGB para detectar el color que desea y mezclarlo. Pero recuerde, use el objeto de color brillante
Detección de color simple usando OpenCV: 6 pasos
Detección de color simple usando OpenCV: ¡Hola! Hoy voy a mostrar un método simple para detectar un color de un video en vivo usando OpenCV y Python Básicamente solo probaré que el color requerido está presente en el marco de fondo o no y usando módulos OpenCV enmascararé esa región y
Detección de color en Python usando OpenCV: 8 pasos
Detección de color en Python usando OpenCV: ¡Hola! Este instructivo se usa para guiar sobre cómo extraer un color específico de una imagen en Python usando la biblioteca openCV. Si eres nuevo en esta técnica, no te preocupes, al final de esta guía podrás programar tu propio color
Seguimiento de objetos basado en detección de color: 10 pasos
Seguimiento de objetos basado en detección de color: historia Hice este proyecto para aprender a procesar imágenes usando Raspberry PI y abrir CV. Para hacer este proyecto más interesante, utilicé dos servomotores SG90 y monté una cámara en él. Un motor se usa para moverse horizontalmente y el segundo motor se usa para moverse verticalmente
Sombrero parlante con detección de sacudidas con Circuit Playground Express: 12 pasos (con imágenes)
Shake Detecting Talking Hat con Circuit Playground Express: ¡Este sencillo y rápido tutorial te enseña cómo hacer un sombrero parlante! Respondería con una respuesta cuidadosamente procesada cuando "hicieras" una pregunta, y tal vez podría ayudarte a decidir si tienes alguna preocupación o problema. En mi clase de Wearable Tech, yo