Sommario:
- Passaggio 1: parti necessarie
- Passaggio 2: costruisci il circuito
- Passaggio 3: il codice
- Passaggio 4: applicazioni
Video: Rilevamento del colore tramite LED RGB: 4 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:06
Hai mai desiderato un modo automatizzato per rilevare il colore di un oggetto? Illuminando la luce di un certo colore sull'oggetto e osservando quanta luce viene riflessa indietro, puoi dire di che colore è l'oggetto. Ad esempio, se fai brillare una luce rossa su un oggetto rosso, quella luce verrà riflessa. Se fai brillare una luce blu su un oggetto rosso, l'oggetto assorbirà parte di quella luce e una parte minore verrà riflessa indietro.
Passaggio 1: parti necessarie
Ho usato un microcontrollore PIC 16F887, ma quasi tutti quelli con una capacità di modulazione della larghezza di impulso funzioneranno. 1 LED RGB1 Microcontrollore1 LED rosso standard1 Resistore da 1k ohm1 Fotoresistore (cambia la resistenza a seconda della quantità di luce irradiata su di esso)Alcuni filiMi basta il microcontrollore e il LED RGB per avere una vasta gamma di rilevatori di colore, ma se vuoi solo un circuito che rileva un colore, non è necessario un microcontrollore: è sufficiente un LED luminoso del colore che si desidera rilevare. Il LED rosso standard è il "LED indicatore" - si accende quando viene rilevato il colore giusto.
Passaggio 2: costruisci il circuito
Lo schema è piuttosto semplice e, in forma generale, è mostrato di seguito. Il LED RGB è alimentato esternamente da un segnale PWM. Ho messo del nastro isolante attorno alla fotoresistenza in modo che la luce ambientale non entri - verrà rilevata solo la luce direttamente sopra di essa.
Passaggio 3: il codice
Questo codice è stato scritto per un Microchip PIC 16F887, ma si spera che tu possa avere un'idea generale. Ho usato il potenziometro integrato sulla mia scheda di sviluppo per variare lo spettro dei colori del LED RGB (e non attraversa l'intero spettro perché non ho 3 moduli PWM, ma è abbastanza buono) Commenti inclusi. #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 value = 128;int p1 = 0;int p2 = 0;void my_setup_ccp1(int8 value){output_low(PIN_C2);CCP1CON = value;PWM1CON = 0;}void my_setup_ccp2(int8 value) {output_low(PIN_C1);CCP2CON = valore;}//=================================== vuoto principale (){//A4 = fonte di alimentazione per fotodiodooutput_high(PIN_A4);output_high(PIN_B1);setup_adc(ADC_CLOCK_INTERNAL);set_adc_channel(0));setup_adc_ports(sAN0);//Timer/Interrupt setupenable_interrupts(INT_Pcc1;my_setupCPCP); my_setup_ccp2(CCP_PWM);setup_timer_2(T2_DIV_BY_1, 128, 1);//setup_compare(2, COMPARE_PWM|COMPARE_TIMER2);while(1){ // Impedisci al PIC di andare a dormire.//SET PWM DUTY CYCLE output_high(PIN_A5); //Pin A3 è la connessione del fotodiodo if(input(PIN_A3) == 1) output_high(PIN_A4); else output_low(PIN_A4);//Leggi il valore del potenziometro per cambiare il colore del LED value = read_adc(); switch (valore) { caso 0: p1 = valore; output_low(PIN_C0); p2 = valore; rottura; caso 50: p1 = valore; output_high(PIN_C0); p2 = valore; rottura; caso 100: p1 = valore; output_high(PIN_C0); p2 = valore; rottura; caso 150: output_high(PIN_C0); p1 = 50; p2 = valore; rottura; caso 200: output_low(PIN_C0); p1 = 0; p2 = valore; rottura; caso 250: p1 = 0; p2 = valore; output_low(PIN_C0); rottura; } p1 = valore; p2 = 128 - p1; set_pwm1_duty(p1); set_pwm2_duty(p2);}}
Passaggio 4: applicazioni
Un semplice rilevatore di colori come questo può essere utilizzato in robotica o per progetti interessanti come separare i lego per colore, ordinare M&M o come aiuto per il daltonismo. Spero che questo tutorial sia stato utile per migliorare un progetto che avevi in mente!:) I LED sono buoni per tante cose….
Consigliato:
Tutorial: come utilizzare il sensore di rilevamento del colore RGB TCS230 con Arduino UNO: 3 passaggi
Tutorial: come utilizzare il sensore di rilevamento colore RGB TCS230 con Arduino UNO: Descrizione: questo tutorial ti mostrerà alcuni semplici passaggi su come utilizzare il sensore di rilevamento colore RGB utilizzando Arduino Uno. Alla fine di questo tutorial, otterrai una serie di risultati di confronto tra pochi colori. Il TCS3200 è una det
Macchina per la verniciatura a rilevamento del colore: 4 passaggi
Macchina per la verniciatura a rilevamento del colore: la macchina per la verniciatura a rilevamento del colore copia i colori intorno a te e ti consente di disegnare con loro. Se hai la vernice dei colori primari, puoi utilizzare il sensore di colore RGB per rilevare il colore desiderato e mescolarlo. Ma ricorda, usa l'oggetto dai colori brillanti
Rilevamento semplice del colore utilizzando OpenCV: 6 passaggi
Rilevamento semplice del colore utilizzando OpenCV: Ciao! Oggi mostrerò un metodo semplice per rilevare un colore da un video live usando OpenCV e python. Fondamentalmente proverò solo che il colore richiesto sia presente o meno nel frame di sfondo e usando i moduli OpenCV maschererò quella regione e
Rilevamento del colore in Python utilizzando OpenCV: 8 passaggi
Rilevamento del colore in Python utilizzando OpenCV: Hello! Questo istruibile viene utilizzato per guidare su come estrarre un colore specifico da un'immagine in Python usando la libreria openCV. Se sei nuovo a questa tecnica allora non preoccuparti, alla fine di questa guida sarai in grado di programmare il tuo colore personale
Robot di Halloween con rilevamento del volto e rilevamento del sorriso: 8 passaggi (con immagini)
Monitoraggio del viso e rilevamento del sorriso Robot di Halloween: Halloween sta arrivando! Abbiamo deciso di costruire qualcosa di interessante. Incontra i robot Ghosty e Skully. Possono seguire il tuo viso e sanno quando sorridi per ridere con te! Questo progetto è un altro esempio dell'utilizzo dell'app iRobbie che converte l'iPhone in