Introduksjon til RGB fargesensor TCS3200

Prøv Instrumentet Vårt For Å Eliminere Problemer





TCS3200 er en farge-til-frekvens omformerbrikke som kan programmeres via en mikrokontroller. Modulen kan brukes til å oppdage alle de 7 fargene med hvitt lys ved hjelp av en integrert mikrokontroller som Arduino.

I dette innlegget skal vi ta en titt på RGB-fargesensor TCS3200, vi vil forstå hvordan fargesensoren fungerer, og vi vil praktisk talt teste TCS3200-sensoren med Arduino og trekke ut noen nyttige data.



Viktigheten av fargegjenkjenning

Vi ser verden hver dag, fylt med rike farger, har du noen gang lurt på hva som faktisk er farger bortsett fra å føle det visuelt. Vel, farger er elektromagnetisk bølge med forskjellige bølgelengder. Rød, grønn, blå har forskjellige bølgelengder, menneskelige øyne er innstilt for å plukke opp disse RGB-fargene, som er et smalt bånd fra det elektromagnetiske spekteret.

Men vi ser mer enn rødt, blått og grønt, det er fordi hjernen vår kan blande to eller flere farger og gir en ny farge.



Evnen til å se forskjellige farger hjalp den eldgamle menneskelige sivilisasjonen til å flykte fra livstruende farer som dyr, og hjalp også til med å identifisere spiselige gjenstander som frukt ved riktig vekst, noe som vil være hyggelig å konsumere.

Kvinner er flinkere til å gjenkjenne forskjellige fargenyanser (bedre fargefølsomme) enn menn, men menn er flinkere til å spore gjenstander i rask bevegelse og reagere deretter.

Mange studier antyder at dette er på grunn av menn i eldre tid på jakt på grunn av deres fysiske styrke som var overlegen kvinner.

Kvinner blir hedret med en mindre risikabel oppgave som å samle frukt og andre spiselige gjenstander fra planter og trær.

Å samle spiselige gjenstander fra planter med riktig vekst (fruktens farge spiller en enorm rolle) var veldig viktig for god fordøyelse, noe som hjalp mennesker fra helseproblemer i sjakk.

Disse forskjellene i synsevne hos menn og kvinner vedvarer selv i moderne tid.

Ok, hvorfor forklaringene ovenfor for en elektronisk fargesensor? Vel, fordi fargesensorene er produsert basert på menneskets øyes fargemodell og ikke med øyenfargemodell fra andre dyr.

For eksempel er to kameraer i smarttelefoner et av kameraene spesielt laget for å gjenkjenne RGB-farger og annet kamera for å ta normale bilder. Å blande disse to bildene / informasjonen med en forsiktig algoritme vil gjengi nøyaktige farger av ekte gjenstander bare på skjermen som mennesker kan oppfatte.

Merk: Ikke alle dobbeltkameraer fungerer på samme måte som nevnt ovenfor, noen brukes til optisk zooming andre brukes til å produsere dybdefelteffekt etc.

La oss nå se hvordan TCS3200 fargesensorer er produsert.

Illustrasjon av TCS3200 sensor:

TCS3200 sensor

Den har 4 innebygde hvite lysdioder for å belyse objektet. Den har 10 pinner, to Vcc- og GND-pinner (bruk to av disse). Funksjonen til S0, S1, S2, S3, S4 og ‘out’ pin vil snart bli forklart.

Hvis du tar en nærmere titt på sensoren, kan vi se noe som illustrert nedenfor:

Den har 8 x 8 utvalg av fargesensorer til sammen 64. Fotosensorblokken har røde, blå og grønne sensorer. De forskjellige fargesensorene dannes ved å bruke forskjellige fargefiltre på sensoren. Av 64 har den 16 blå, 16 grønne, 16 røde sensorer, og det er 16 fotosensorer uten fargefilter.

Det blå fargefilteret tillater bare blått farget lys å treffe sensoren og avvise resten av bølgelengdene (farger). Dette er det samme for andre to fargesensorer.

Hvis du skinner et blått lys på et rødt filter eller et grønt filter, vil mindre intens lys passere gjennom de grønne eller røde filtrene sammenlignet med blått filter. Så den blåfiltrerte sensoren vil motta mer lys sammenlignet med andre to.

Så vi kan sette fargesensorene med RGB-filtre i en blokk og skinne hvilket som helst farget lys, og den aktuelle fargesensoren vil motta mer lys enn andre to.

Ved å måle intensiteten av lyset som mottas av en sensor, kan du avsløre fargen lyset lyste.

For å interface signalet fra sensor til mikrokontroller gjøres med lysintensitet til frekvensomformer.

Kretsblokkdiagram

“Ut” -tappen er utgangen. Utgangsstiftets frekvens er 50% driftssyklus. S2 og S3-pinner er utvalgte linjer for fotosensor.

Du forstår bedre ved å se på tabellen:

S2 og S3-pinner er utvalgte linjer for fotosensor.

Ved å bruke lave signaler på pinne S2 og S3, velger du den røde fargesensoren og måler intensiteten av rød bølgelengde.

Følg også tabellen ovenfor for resten av fargene.

Generelt måles røde, blå og grønne sensorer, slik at sensorene er uten filter.

S0 og S1 er frekvensskalepinnene:

S0 og S1 er frekvensskalepinnene

S0 og S1 er frekvensskalepinner for å skalere utgangsfrekvensen. Frekvensskalering brukes til å velge optimal utgangsfrekvens fra sensor til mikrokontroller. I tilfelle Arduino anbefales 20%, S0 ‘HIGH’ og S1 ‘LOW’.

Utgangsfrekvensen blir høy hvis lysintensiteten til den aktuelle sensoren er høy. For å gjøre det enkelt for programkoden måles ikke frekvensen, men pulsvarigheten måles, jo høyere frekvens minus pulsvarigheten.

Så den som på seriell skjermavlesning viser minst, må være fargen som er plassert foran sensoren.

Henter ut data fra fargesensoren

La oss nå prøve å hente ut data fra sensoren:

hvordan trekke ut data fra fargesensoren ved hjelp av Arduino-kretsen

Programkode:

//--------------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--------------//

Seriell skjerm UTGANG:

Avlesningen som viser lavest er fargen plassert foran sensoren. Du kan også skrive kode for å gjenkjenne hvilken som helst farge, for eksempel gul. Gul er et resultat av blanding av grønt og rødt, så hvis gul farge plasseres foran sensoren, må du ta hensyn til de røde og grønne sensoravlesningene, på samme måte som andre farger.

Hvis du har spørsmål angående denne RGB-fargesensoren TCS3200 ved hjelp av Arduino-artikkelen, vennligst uttrykk i kommentarseksjonen. Du kan få et raskt svar.

Ovennevnte fargesensor kan også brukes til utløser en ekstern gadget gjennom et stafett for å utføre en ønsket operasjon.




Forrige: Passordstyrt strømnettet PÅ / AV-bryter Neste: Bruke TSOP17XX-sensorer med tilpassede frekvenser