I det här projektet ska vi gränssnitt TCS3200 färgsensor med Arduino UNO. TCS3200 är en färgsensor som kan upptäcka valfritt antal färger med rätt programmering. TCS3200 innehåller RGB (rödgrönblå) matriser. Som visas i figuren på mikroskopisk nivå kan man se de fyrkantiga rutorna inuti ögat på sensorn. Dessa fyrkantiga lådor är matriser med RGB-matris. Var och en av dessa lådor innehåller tre sensorer, en är för att känna av RÖD ljusintensitet, en är för att känna av GRÖN ljusintensitet och den sista för att känna av BLÅ ljusintensitet.
Var och en av sensormatrisen i dessa tre matriser väljs separat beroende på behov. Därför är det känt som programmerbar sensor. Modulen kan presenteras för att känna av den specifika färgen och för att lämna de andra. Den innehåller filter för det urvalsändamålet. Det finns fjärde läge som inte är något filterläge. Utan filterläge detekterar sensorn vitt ljus.
Komponenter krävs
Hårdvara: ARDUINO UNO, strömförsörjning (5v), LED, JHD_162ALCD (16 * 2LCD), TCS3200 färgsensor.
Programvara: ARDUINO IDE (ARDUINO nattlig).
Kretsschema och arbetsförklaring
I 16x2 LCD finns det 16 stift överallt om det finns en bakgrundsbelysning, om det inte finns något bakgrundsbelysning kommer det att finnas 14 stift. Man kan driva eller lämna bakljuset. Nu i de 14 stiften finns 8 datastift (7-14 eller D0-D7), 2 effektmatningsstiften (1 & 2 eller VSS & VDD eller GND & + 5v), 3 : e stift för kontrastreglering (VEE-styr hur tjock tecknen bör vara visas) och 3 kontrollstift (RS & RW & E)
I kretsen kan du observera att jag bara har tagit två kontrollstift. Kontrastbiten och LÄS / SKRIV inte ofta så att de kan kortslutas till marken. Detta sätter LCD i högsta kontrast och läsläge. Vi behöver bara kontrollera ENABLE- och RS-stift för att skicka tecken och data i enlighet därmed.
De anslutningar som görs för LCD ges nedan:
PIN1 eller VSS till jord
PIN2 eller VDD eller VCC till + 5v ström
PIN3 eller VEE till marken (ger maximal kontrast bäst för en nybörjare)
PIN4 eller RS (Registrera val) till PIN8 för ARDUINO UNO
PIN5 eller RW (läs / skriv) till marken (sätter LCD i läsläge underlättar kommunikationen för användaren)
PIN6 eller E (Aktivera) till PIN9 för ARDUINO UNO
PIN11 eller D4 till PIN7 för ARDUINO UNO
PIN12 eller D5 till PIN11 för ARDUINO UNO
PIN13 eller D6 till PIN12 för ARDUINO UNO
PIN14 eller D7 till PIN13 för ARDUINO UNO
Anslutningarna som görs för färgsensorn ges nedan:
VDD till + 5V
GND till GRUND
OE (output Enable) till GND
S0 till UNO-stift 2
S1 till UNO-stift 3
S2 till UNO-stift 4
S3 till UNO-stift 5
UT till UNO-stift 10
Färgen som behöver avkännas av färgsensorn väljs med två stift S2 och S3. Med dessa två stift logiska kontroller kan vi berätta sensorn vilken färg ljusintensitet som ska mätas.
Säg att vi måste känna av den RÖDA färgintensiteten vi behöver för att ställa in båda stiften till LÅG. När det är gjort detekterar sensorn intensiteten och skickar värdet till styrsystemet inuti modulen.
S2 |
S3 |
Fotodiodtyp |
L |
L |
Röd |
L |
H |
Blå |
H |
L |
Rensa (inget filter) |
H |
H |
Grön |
Styrsystemet inuti modulen visas i figur. Ljusintensiteten mätt med matrisen skickas till ström till frekvensomvandlare. Vad den gör är att den lägger ut en fyrkantig våg vars frekvens är i förhållande till ström skickad av ARRAY.
Så vi har ett system som skickar ut en fyrkantig våg vars frekvens beror på ljusintensiteten för färg som väljs av S2 och S3.
Signalfrekvensen som sänds av modulen kan moduleras beroende på användning. Vi kan ändra utsignalens frekvensbandbredd.
S0 |
S1 |
Utgångsfrekvensskalning (f 0) |
L |
L |
Strömavbrott |
L |
H |
2% |
H |
L |
20% |
H |
H |
100% |
Frekvensskalningen görs med två bitar S0 och S1. För enkelhets skull kommer vi att begränsa frekvensskalningen till 20%. Detta görs genom att ställa S0 till hög och S1 till LÅG. Denna funktion är till nytta när vi använder modulen på systemet med låg klocka.
Matrisens känslighet för färg visas i figuren nedan.
Även om olika färger har olika känslighet kommer det inte att göra stor skillnad för normal användning.
UNO skickar här signal till modulen för att upptäcka färger och data som mottas av modulen visas i 16 * 2 LCD ansluten till den.
UNO upptäcker tre färgintensiteter separat och visar dem på LCD.
Uno kan detektera signalpulsens varaktighet med vilken vi kan få frekvensen av fyrkantvåg skickad av modulen. Med frekvensen till hands kan vi matcha den med färg på sensorn.
|
Som av ovanstående villkor läser UNO pulslängden på 10: e stift av UNO och lagrar det värdet i "frekvens" heltal.
Vi kommer att göra detta för alla tre färgerna för färgigenkänning. Alla tre färgintensiteter visas med frekvenser på 16x2 LCD.