Oleh Mohd Qhairul Bakri dalam Tutorial Arduino
Tahap Kesukaran : Baru Mula Belajar

>> Pengenalan <<

TCS3200 merupakan sebuah modul sensor yang mampu mengesan warna sesebuah objek selagi warna tersebut berada pada spektrum cahaya terlihat. Selain membezakan diantara dua warna seperti biru dan merah, sensor ini juga mampu membezakan tona diantara dua warna seperti biru muda dan biru gelap. Sensor ini dilengkapi dengan komponen 8×8 photodiode yang sangat sensitif kepada perubahan cahaya. Photodiode mempunyai 3 jenis penapis warna yang masing-masing terbahagi kepada 16 penapis merah, 16 penapis biru, 16 penapis hijau, dan 16 lagi photodiode tanpa penapis untuk mengesan warna cerah. Komponen penukar arus ke frekuensi pada sensor ini menukarkan bacaan daripada photodiode kepada gelombang persegi yang mana frekuensinya berkadar terus dengan kecerahan cahaya. Seterusnya papan Arduino boleh digunakan untuk membaca output gelombang tersebut dan mendapatkan keputusan warna dalam nilai (R,G,B).

TCS3200

Susunan Array Photodiode Dan Penapis Warna

>> SENSOR WARNA DALAM INDUSTRI AUTOMASI <<

Salah satu aplikasi yang sering menggunakan sensor warna ialah sistem pengasing objek berasaskan warna seperti mengasingkan ubat-ubatan dalam industri farmasi. Selain itu, sensor ini juga banyak digunakan di dalam pertandingan robotik seluruh dunia bagi membolehkan robot mengetahui warna objek dan petak pada gelanggang pertandingan.

>> KOMPONEN YANG ANDA PERLUKAN <<

Tutorial ini akan mengajar anda cara-cara menggunakan sensor warna TCS3200 dengan Arduino Uno. Antara komponen yang anda perlukan ialah:

>> SAMBUNGAN LITAR <<

Pin Arduino Uno Pin TCS3200
5V Vcc
Gnd Gnd
D4 S0
D5 S1
D6 S2
D7 S3
D8 Out
5V LED

>> KOD ARDUINO <<

//Developer: Mohd Qhairul Bakri
//Tarikh: 3 Jan 2019

#define s0 4
#define s1 5
#define s2 6
#define s3 7
#define sensorOut 8

int frequency = 0;

void setup() 
{
  pinMode(s0, OUTPUT);
  pinMode(s1, OUTPUT);
  pinMode(s2, OUTPUT);
  pinMode(s3, OUTPUT);
  pinMode(sensorOut, INPUT);

  digitalWrite(s0, HIGH);
  digitalWrite(s1, LOW);

  Serial.begin(9600);
}

void loop() 
{
//mod bacaan merah
  digitalWrite(s2, LOW);
  digitalWrite(s3, LOW);
  frequency = pulseIn(sensorOut, LOW); //membaca frekuensi pada pin 8
  Serial.print("R=");
  Serial.print(frequency);
  Serial.print(" ");
  delay(100);
  
//mod bacaan hijau
  digitalWrite(s2, HIGH);
  digitalWrite(s3, HIGH);
  frequency = pulseIn(sensorOut, LOW); //membaca frekuensi pada pin 8
  Serial.print("G=");
  Serial.print(frequency);
  Serial.print(" ");
  delay(100);

//mod bacaan biru
  digitalWrite(s2, LOW);
  digitalWrite(s3, HIGH);
  frequency = pulseIn(sensorOut, LOW); //membaca frekuensi pada pin 8
  Serial.print("B=");
  Serial.print(frequency);
  Serial.println(" ");
  delay(1000);
}

TCS3200 mempunyai empat pin pengawal mod iaitu S0, S1, S2, dan S3. Dengan mengubah kombinasi keadaan binari pin-pin ini (High/Low), kita dapat mengubah mod bacaan warna dan skala frekeunsi output. Fungsi pengawalan mod pin-pin tersebut terdapat pada rajah berikut:

S0 S1 Skala Frekuensi Output
L L Nyahkuasa
L H 2%
H L 20%
H H 100%
S2 S3 Mod Bacaan Warna
L L Merah
L H Biru
H L Cerah (tiada penapis)
H H Hijau

Pemasangan TCS3200 Dengan Arduino Uno

Setelah anda selesai membuat penyambungan litar dan memuat naik kod seperti di atas, buka serial monitor dan anda sepatutnya akan mendapat bacaan. Nilai bacaan semestinya akan berbeza bagi setiap orang. Begitu juga ketepatan sensor ini tidaklah begitu sempurna tetapi ianya cukup untuk projek dan eksperimen yang asas dan mudah.

Contoh Bacaan Sensor Pada Permukaan Berwarna Biru

Bacaan Sensor Pada Permukaan Berwarna Hitam

Nilai RGB menurun jika sensor dihadapkan ke permukaan berwarna biru berbanding permukaan hitam dan sensor menunjukkan perubahan bacaan yang sangat signifikan. Kini anda boleh cuba mengesan pelbagai warna lain.

>> TAHNIAH, ANDA HEBAT <<

Kini anda telah menyelesaikan tutorial sensor warna TCS3200 dan Berjaya menggunakan sensor warna dengan Arduino Uno.

Baca tutorial lain yang disediakan oleh penulis Mohd Qhairul Bakri di Arduino Bagaimana Untuk Menggunakan Sensor Pergerakan PIR HC-SR501.

Kunjungi sekarang kedai Arduino Pulau Pinang di

Nadi Eleczone Solutions
Lot 1667, Tingkat 1, Jalan Teluk Air Tawar, Taman Air Tawar Indah, 13050 Butterworth, Penang
019 – 249 3264

TINGGALKAN JAWAPAN BALAS ANDA

Sila masukkan ulasan anda!
Sila masukkan nama anda di sini