Bevezetés a TCS3200 RGB színes érzékelőhöz

Próbálja Ki A Műszerünket A Problémák Kiküszöbölésére





A TCS3200 egy színes fény-frekvencia átalakító chip, amely mikrokontrolleren keresztül programozható. A modul használható a fehér fény mind a 7 színének érzékelésére egy integrált mikrovezérlő, például az Arduino segítségével.

Ebben a bejegyzésben megnézzük a TCS3200 RGB színérzékelőt, megértjük, hogyan működik a színérzékelő, és gyakorlatilag tesztelni fogjuk a TCS3200 érzékelőt az Arduino-val, és kivonunk néhány hasznos adatot.



A színfelismerés fontossága

Minden nap látjuk a világot, tele gazdag színekkel, gondoltál már arra, hogy a színek valójában miben különböznek attól, hogy vizuálisan érezd. Nos, a színek különböző hullámhosszúságú elektromágneses hullámok. A vörös, a zöld, a kék hullámhossza különböző, az emberi szemek rá vannak hangolva, hogy felvegyék ezeket az RGB színeket, ami keskeny sáv az elektromágneses spektrumtól.

De többet látunk, mint a vörös, a kék és a zöld, ez azért van, mert agyunk két vagy több színt keverhet és új színt ad ki.



A különböző színek látásának képessége segítette az ősi emberi civilizációt, hogy elkerülje az életet veszélyeztető veszélyeket, például az állatokat, és segített azonosítani az ehető tárgyakat, például a gyümölcsöket a megfelelő növekedésnél, amelyeket kellemes lesz fogyasztani.

A nők jobban felismerik a különböző színárnyalatokat (jobb színérzékenyek), mint az ember, de a férfiak jobban követik a gyorsan mozgó tárgyakat, és ennek megfelelően reagálnak.

Számos tanulmány azt sugallja, hogy ez annak köszönhető, hogy az ősi időszakban a férfiak vadászni szoktak a nőknél erősebb fizikai erejük miatt.

A nőket kevésbé kockázatos feladattal tisztelik meg, mint például gyümölcsök és egyéb ehető tárgyak gyűjtése növényekből és fákból.

Az ehető tárgyak megfelelő növekedésű növényekből történő összegyűjtése (a gyümölcs színének óriási szerepe van) nagyon fontos volt a jó emésztéshez, ami segített az embereknek az egészségi problémáktól.

A férfiak és a nők vizuális képességeinek ezen különbségei a modern időkben is fennmaradnak.

Oké, miért pont a fenti magyarázatok az elektronikus színérzékelőhöz? Nos, mivel a színérzékelők az emberi szem színmodellje alapján készülnek, és nem más állatok szemének színmodelljével.

Például okostelefonok kettős kamerái, az egyik kamera kifejezetten az RGB színek felismerésére készült, és más kamera normál képek készítésére. Ha ezt a két képet / információt óvatos algoritmussal keverjük össze, akkor a valós objektum pontos színei csak a képernyőn fognak megjelenni, amelyet az emberek érzékelhetnek.

Megjegyzés: Nem minden kettős kamera működik ugyanúgy, mint a fent említett, némelyiket optikai zoomolásra, másokat mélységes terephatás stb.

Most nézzük meg, hogyan készülnek a TCS3200 színes érzékelők.

A TCS3200 érzékelő illusztrációja:

TCS3200 érzékelő

4 beépített fehér LED van az objektum megvilágítására. 10 csapos két Vcc és GND csap van (ezek bármelyikét használja). Az S0, S1, S2, S3, S4 és az „out” tű funkcióját rövidesen elmagyarázzuk.

Ha alaposan megnézi az érzékelőt, láthatunk valamit az alábbiak szerint:

8 x 8 színes érzékelővel rendelkezik, amelyek összesen 64-et tartalmaznak. A fotóérzékelők blokkja piros, kék, zöld érzékelőkkel rendelkezik. A különböző színérzékelők különböző színszűrők alkalmazásával jönnek létre az érzékelőn. A 64-ből 16 kék, 16 zöld, 16 piros érzékelővel rendelkezik, és 16 fotóérzékelő van színszűrő nélkül.

A kék színű szűrő csak a kék színű fényt érheti el az érzékelőn, és elutasítja a többi hullámhosszt (Színek), ez megegyezik a másik két színérzékelővel is.

Ha kék fényt világít egy piros vagy zöld szűrőn, akkor kevésbé intenzív fény halad át a zöld vagy piros szűrőn, mint a kék szűrőn. Tehát a kék szűrt érzékelő több fényt kap, mint a másik kettő.

Tehát az RGB szűrőkkel ellátott színes érzékelőket egy blokkba helyezhetjük, és bármilyen színes fényt megvilágíthatunk, és a megfelelő színérzékelő több fényt fog kapni, mint a másik kettő.

Az érzékelőnél kapott fény intenzitásának mérésével felfedhető a fény színe.

Az érzékelő és a mikrovezérlő közötti jel összekapcsolása fényerősség és frekvenciaváltó között történik.

Áramköri ábra

A „kimenő” tű a kimenet. A kimeneti tű frekvenciája 50% -os munkaciklus. Az S2 és S3 csapok a fotóérzékelő kiválasztott vonalai.

Jobban megérted, ha megnézed a táblázatot:

Az S2 és S3 csapok a fotóérzékelő kiválasztott vonalai.

Alacsony jelek alkalmazásával az S2 és S3 csapok kiválasztják a piros színérzékelőt és megmérik a vörös hullámhossz intenzitását.

Hasonlóképpen, kövesse a fenti táblázatot a többi színhez.

Általában a piros, a kék és a zöld érzékelőket mérik, így az érzékelők szűrők nélkül maradnak.

Az S0 és S1 a frekvencia méretezési csapok:

S0 és S1 a frekvencia méretezési csapok

Az S0 és S1 frekvencia méretező csapok a kimeneti frekvencia méretezéséhez. A frekvencia-skálázás az optimális kimeneti frekvencia kiválasztására szolgál az érzékelőtől a mikrovezérlőig. Arduino esetében 20% ajánlott, S0 ’HIGH’ és S1 ’LOW’.

A kimeneti frekvencia magasra emelkedik, ha az adott érzékelő fényintenzitása magas. A programkód egyszerűsítése érdekében a frekvenciát nem mértük, hanem az impulzus időtartamát mértük, annál nagyobb a frekvencia, kevesebb az impulzus időtartama.

Tehát annak, amelyik a soros monitor leolvasásánál a legkevesebb, annak az érzékelő előtt elhelyezett színnek kell lennie.

Adatok kinyerése a színes érzékelőből

Most próbáljuk meg gyakorlatilag kinyerni az adatokat az érzékelőből:

hogyan lehet adatokat kinyerni a színérzékelőből az Arduino áramkör segítségével

Program kód:

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

Soros monitor kimenet:

A legalacsonyabb érték az érzékelő elé helyezett szín. Írhat kódot bármilyen szín, például sárga felismerésére. A sárga a zöld és a piros keveredésének eredménye, így ha sárga színt helyeznek az érzékelő elé, akkor a vörös és a zöld érzékelő leolvasását is figyelembe kell venni, hasonlóan minden más színhez.

Ha kérdése van az Arduino cikket használó TCS3200 RGB színes érzékelővel kapcsolatban, kérjük, fejtse ki a megjegyzés részben. Gyors választ kaphat.

A fent ismertetett színérzékelő is használható egy külső modult vált ki relén keresztül kívánt művelet végrehajtásához.




Előző: Jelszóval vezérelt váltóáramú hálózati kapcsoló ON / OFF Következő: A TSOP17XX érzékelők használata testreszabott frekvenciákkal