Introduzione al sensore di colore RGB TCS3200

Prova Il Nostro Strumento Per Eliminare I Problemi





TCS3200 è un chip convertitore da luce a frequenza a colori che può essere programmato tramite un microcontrollore. Il modulo può essere utilizzato per rilevare tutti i 7 colori di luce bianca con l'ausilio di un microcontrollore integrato come Arduino.

In questo post daremo uno sguardo al sensore di colore RGB TCS3200, capiremo come funziona il sensore di colore e testeremo praticamente il sensore TCS3200 con Arduino ed estrarremo alcuni dati utili.



Importanza del riconoscimento del colore

Vediamo il mondo ogni giorno, pieno di colori intensi, ti sei mai chiesto cosa siano effettivamente i colori oltre a percepirli visivamente. Ebbene, i colori sono onde elettromagnetiche con differenti lunghezze d'onda. Il rosso, il verde, il blu hanno lunghezze d'onda diverse, gli occhi umani sono sintonizzati per captare questi colori RGB, che è una banda stretta dallo spettro elettromagnetico.

Ma vediamo più del rosso, del blu e del verde perché il nostro cervello può mescolare due o più colori e ne emette uno nuovo.



La capacità di vedere colori diversi ha aiutato l'antica civiltà umana a fuggire da pericoli potenzialmente letali come gli animali e aiuta anche a identificare elementi commestibili come i frutti alla giusta crescita, che saranno piacevoli da consumare.

Le donne sono più brave a riconoscere le diverse sfumature di colore (più sensibili al colore) rispetto agli uomini, ma gli uomini sono più bravi a seguire gli oggetti in rapido movimento e reagiscono di conseguenza.

Molti studi suggeriscono che ciò sia dovuto al fatto che durante il periodo antico gli uomini vanno a caccia a causa della loro forza fisica che era superiore alle donne.

Le donne sono onorate di compiti meno rischiosi come raccogliere frutta e altri oggetti commestibili da piante e alberi.

Raccogliere gli elementi commestibili dalle piante alla giusta crescita (il colore della frutta gioca un ruolo enorme) è stato molto importante per una buona digestione, che ha aiutato gli esseri umani a superare i problemi di salute.

Queste differenze nelle capacità visive negli uomini e nelle donne persistono anche nei tempi moderni.

Ok, perché le spiegazioni sopra per un sensore di colore elettronico? Bene, perché i sensori di colore sono fabbricati in base al modello di colore dell'occhio umano e non con il modello di colore degli occhi di altri animali.

Ad esempio, la doppia fotocamera negli smartphone una delle fotocamere è specificamente realizzata per il riconoscimento dei colori RGB e l'altra fotocamera per scattare immagini normali. La fusione di queste due immagini / informazioni con un algoritmo accurato riprodurrà colori accurati di oggetti reali sullo schermo che solo gli esseri umani possono percepire.

Nota: non tutte le fotocamere doppie funzionano nello stesso modo di cui sopra, alcune sono utilizzate per lo zoom ottico, altre sono utilizzate per produrre effetti di campo in profondità, ecc.

Ora vediamo come vengono fabbricati i sensori di colore TCS3200.

Illustrazione del sensore TCS3200:

Sensore TCS3200

Dispone di 4 LED bianchi integrati per illuminare l'oggetto. Ha 10 pin due pin Vcc e GND (usane due qualsiasi). La funzione di S0, S1, S2, S3, S4 e il pin 'out' verrà spiegata a breve.

Se osserviamo attentamente il sensore, possiamo vedere qualcosa come illustrato di seguito:

Dispone di 8 x 8 array di sensori di colore per un totale di 64. Il blocco fotosensori ha sensori rosso, blu e verde. I diversi sensori di colore sono formati applicando diversi filtri di colore sul sensore. Su 64, ha 16 sensori blu, 16 verdi, 16 rossi e ci sono 16 sensori fotografici senza filtro colorato.

Il filtro di colore blu consentirà solo alla luce di colore blu di colpire il sensore e respingere il resto delle lunghezze d'onda (Colori), questo è lo stesso per altri due sensori di colore.

Se fai brillare una luce blu su un filtro rosso o verde, la luce meno intensa passerà attraverso i filtri verde o rosso rispetto al filtro blu. Quindi il sensore con filtro blu riceverà più luce rispetto agli altri due.

Quindi, possiamo mettere i sensori di colore con filtri RGB in un blocco e illuminare qualsiasi luce colorata, e il relativo sensore di colore riceverà più luce degli altri due.

Misurando l'intensità della luce ricevuta da un sensore è possibile rivelare il colore della luce.

Per interfacciare il segnale dal sensore al microcontrollore si fa con l'intensità della luce al convertitore di frequenza.

Schema a blocchi del circuito

Il pin 'out' è l'uscita. La frequenza del pin di uscita è del 50% del ciclo di lavoro. I pin S2 e S3 sono linee di selezione per il fotosensore.

Capisci meglio guardando la tabulazione:

I pin S2 e S3 sono linee di selezione per il fotosensore.

Applicando segnali bassi al pin S2 e S3 selezionerà il sensore di colore rosso e misurerà l'intensità della lunghezza d'onda del rosso.

Allo stesso modo, segui la tabella sopra per il resto dei colori.

In generale i sensori rosso, blu e verde vengono misurati lasciando il sensore senza filtri.

S0 e S1 sono i pin di ridimensionamento della frequenza:

S0 e S1 sono i pin di ridimensionamento della frequenza

S0 e S1 sono pin di ridimensionamento della frequenza per scalare la frequenza di uscita. La scala di frequenza viene utilizzata per selezionare la frequenza di uscita ottimale dal sensore al microcontrollore. In caso di Arduino si consiglia il 20%, S0 'HIGH' e S1 'LOW'.

La frequenza di uscita aumenta se l'intensità della luce del relativo sensore è elevata. Per semplicità del codice programma non viene misurata la frequenza, ma viene misurata la durata dell'impulso, maggiore è la frequenza minore è la durata dell'impulso.

Quindi, quello che sulle letture del monitor seriale mostra meno deve essere il colore che si trova davanti al sensore.

Estrazione dei dati dal sensore di colore

Ora proviamo praticamente ad estrarre i dati dal sensore:

come estrarre i dati dal sensore di colore utilizzando il circuito Arduino

Codice programma:

//--------------Program Developed by R.GIRISH--------------//
const int s0 = 4
const int s1 = 5
const int s2 = 6
const int s3 = 7
const int out = 8
int frequency1 = 0
int frequency2 = 0
int frequency3 = 0
int state = LOW
int state1 = LOW
int state2 = HIGH
void setup()
{
Serial.begin(9600)
pinMode(s0, OUTPUT)
pinMode(s1, OUTPUT)
pinMode(s2, OUTPUT)
pinMode(s3, OUTPUT)
pinMode(out, INPUT)
//----Scaling Frequency 20%-----//
digitalWrite(s0, state2)
digitalWrite(s1, state1)
//-----------------------------//
}
void loop()
')
delay(100)
//------Sensing Blue colour----//
digitalWrite(s2, state1)
digitalWrite(s3, state2)
frequency3 = pulseIn(out, state)
Serial.print(' Blue = ')
Serial.println(frequency3)
delay(100)
Serial.println('---------------------------------------')
delay(400)

//--------------Program Developed by R.GIRISH--------------//

USCITA monitor seriale:

Quello di lettura che mostra il più basso è il colore posto davanti al sensore. Puoi anche scrivere codice per riconoscere qualsiasi colore, ad esempio il giallo. Il giallo è il risultato della fusione di verde e rosso, quindi se il colore giallo è posizionato davanti al sensore, devi prendere in considerazione le letture del sensore rosso e verde, in modo simile per qualsiasi altro colore.

In caso di domande su questo sensore di colore RGB TCS3200 utilizzando l'articolo di Arduino, si prega di esprimere nella sezione commenti. Potresti ricevere una rapida risposta.

Il sensore di colore sopra spiegato può essere utilizzato anche per l'attivazione di un gadget esterno tramite un relè per eseguire un'operazione desiderata.




Precedente: Interruttore di rete CA controllato da password Avanti: Utilizzo di sensori TSOP17XX con frequenze personalizzate