Arduino alapú színérzékelő színérzékelővel TCS230

ebben a projektben a TCS3200 színérzékelőt az Arduino UNO-val fogjuk összekötni. A TCS3200 egy színérzékelő, amely tetszőleges számú színt képes felismerni a megfelelő programozással. A TCS3200 RGB (piros zöld kék) tömböket tartalmaz. Amint az ábrán látható mikroszkopikus szinten látható a négyzet doboz belsejében a szem érzékelő. Ezek a négyzet alakú dobozok RGB mátrix tömbök. Mindegyik doboz három érzékelőt tartalmaz, az egyik a vörös fény intenzitásának érzékelésére szolgál, az egyik a zöld fény intenzitásának érzékelésére, az utolsó pedig a kék fény intenzitásának érzékelésére szolgál.

TCS230 színérzékelő Pinout

e három tömb mindegyik érzékelő tömbje külön-külön kerül kiválasztásra a követelményektől függően. Ezért programozható érzékelőnek nevezik. A modul szerepelhet az adott szín érzékelésére és a többiek elhagyására. Szűrőket tartalmaz erre a kiválasztási célra. Van forth mód, amely nem szűrő mód. Szűrő üzemmód nélkül az érzékelő fehér fényt érzékel.

szükséges alkatrészek

hardver: ARDUINO UNO, tápegység (5V), LED, JHD_162ALCD (16*2lcd),tcs3200 színérzékelő.

szoftver: ARDUINO IDE (Arduino nightly).

kapcsolási rajz és működési magyarázat

a 16×2 LCD-n 16 tű van, ha van hátsó lámpa, ha nincs hátsó lámpa, akkor 14 tű lesz. Az egyik a hatalom, vagy hagyja el a hátsó lámpa csapok. Most a 14 tűben 8 adatcsap van (7-14 vagy D0-D7), 2 tápegység csap (1&2 vagy VSS&VDD vagy GND&+5V), 3.tű a kontrasztszabályozáshoz (VEE-szabályozza, hogy a karaktereket milyen vastagnak kell megjeleníteni), és 3 vezérlőcsap (RS&RW&E)

az áramkörben megfigyelheti, hogy van-e csak két vezérlőtű volt. A kontrasztbitet és az olvasást / írást nem gyakran használják, így rövidre zárhatók a földre. Ez az LCD-t a legmagasabb kontrasztú és olvasási módba helyezi. Csak az ENABLE és az RS pinek vezérlésére van szükségünk, hogy ennek megfelelően küldjünk karaktereket és adatokat.

az LCD-hez készült csatlakozások az alábbiakban találhatók:

PIN1 vagy VSS a földre

PIN2 vagy VDD vagy VCC a +5V teljesítmény

PIN3 vagy VEE a földre (ad maximális kontraszt legjobb egy kezdő)

PIN4 vagy RS (regiszter kiválasztása) a PIN8 az ARDUINO UNO

PIN5 vagy RW (írás/olvasás) a földre (írás / olvasás) teszi LCD olvasási mód megkönnyíti a kommunikációt a felhasználó)

pin6 vagy e (enable) TOPIN9 az Arduino UNO

pin11 vagy D4 A PIN7 az Arduino Uno

pin12 vagy D5 a pin11 az Arduino UNO

PIN13 vagy D6 a PIN12 az Arduino Uno

pin14 vagy D7 a pin13 az arduino uno

a csatlakozások ami történik a színérzékelő az alábbiakban adjuk meg:

VDD a +5V

GND a földre

OE (kimenet engedélyezése) a GND

S0 UNO pin 2

S1 uno pin 3

S2 uno pin 4

S3 az uno 5-ös tűhöz

ki az UNO tűhöz 10

Arduino alapú színérzékelő áramkör

a színérzékelő által érzékelendő színt két S2 és S3 tű választja ki. Ezzel a két csapos logikai vezérléssel meg tudjuk mondani az érzékelőnek, hogy melyik szín fényintenzitását kell mérni.

tegyük fel, hogy érzékelnünk kell a piros szín intenzitását, hogy mindkét csapot alacsonyra állítsuk. Miután ez megtörtént, az érzékelő érzékeli az intenzitást, és elküldi az értéket a modulon belüli vezérlőrendszernek.

S2

S3

fotodióda Típus

L

L

piros

L

H

Kék

H

L

Clear (nincs szűrő)

H

H

Zöld

a modul belsejében lévő vezérlőrendszer az ábrán látható. A tömb által mért fényintenzitást az áram a frekvenciaváltóhoz továbbítja. Amit csinál, egy négyzethullámot bocsát ki, amelynek frekvenciája a tömb által küldött áramhoz viszonyítva van.

fotodióda tömb

tehát van egy olyan rendszerünk, amely négyzethullámot küld ki, amelynek frekvenciája az S2 és S3 által kiválasztott szín fényintenzitásától függ.

a modul által küldött jelfrekvencia a használat függvényében modulálható. Megváltoztathatjuk a kimeneti jel frekvenciájának sávszélességét.

S0

S1

kimeneti frekvencia méretezés (f0)

L

L

kikapcsolás

L

H

2%

H

L

20%

H

H

100%

a frekvencia skálázást két bit S0 és S1 végzi. A kényelem érdekében a frekvencia méretezését 20% – ra korlátozzuk. Ez úgy történik, hogy az S0 értéket magasra, az S1 értéket pedig alacsonyra állítja. Ez a funkció jól jön, ha a modult alacsony órajelű rendszeren használjuk.

a tömb színérzékenységét az alábbi ábra mutatja.

tömb érzékenység

bár a különböző színek eltérő érzékenységgel rendelkeznek, normál használat esetén ez nem sok különbséget jelent.

az UNO itt jelet küld a modul számára a színek észlelésére, és a modul által kapott adatok a hozzá csatlakoztatott 16*2 LCD kijelzőn jelennek meg.

az UNO három színintenzitást érzékel külön-külön, és azokat LCD-n jeleníti meg.

az Uno képes érzékelni a jelimpulzus időtartamát, amellyel megkaphatjuk a modul által küldött négyzethullám frekvenciáját. A frekvencia kéznél tudjuk egyeztetni azt a színt érzékelő.

  1. Int frekvencia = pulseIn(10, alacsony);

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.