Pada artikel kali ini akan membahas tentang kalibrasi sensor
warna TCS 3200, sensor warna TCS 3200 terkadang perlu dikalibrasi supaya
mendeteksi warna dengan akurat, untuk pemasangan sensor warna ke arduino dapat
dilihat pada artikel sebelumnya atau klik disini.
- Untuk kalibrasi sensor warna kalian copy program dibawah ini dan pastekan ke arduino ide kalian kemudian upload
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() {
//baca merah
digitalWrite(S2,LOW);
digitalWrite(S3,LOW);
frequency = pulseIn(sensorOut, LOW);
Serial.print("M= ");
Serial.print(frequency);
Serial.print(" ");
delay(100);
//baca hijau
digitalWrite(S2,HIGH);
digitalWrite(S3,HIGH);
frequency = pulseIn(sensorOut, LOW);
Serial.print("H= ");
Serial.print(frequency);
Serial.print(" ");
delay(100);
//baca biru
digitalWrite(S2,LOW);
digitalWrite(S3,HIGH);
frequency = pulseIn(sensorOut, LOW);
Serial.print("B= ");
Serial.print(frequency);
Serial.println(" ");
delay(100);
}
- Pada serial monitor akan muncul nilai dari setiap warna yang terdeteksi
- Catat seluruh nilai yang terdeteksi kemudian upload program sensor warna dibawah ini
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() {
//baca merah
digitalWrite(S2,LOW);
digitalWrite(S3,LOW);
frequency = pulseIn(sensorOut, LOW);
frequency = map(frequency, Nilai_minimal,Nilai_maksimal,255,0);
Serial.print("M= ");
Serial.print(frequency);
Serial.print(" ");
delay(100);
//baca hijau
digitalWrite(S2,HIGH);
digitalWrite(S3,HIGH);
frequency = pulseIn(sensorOut, LOW);
frequency = map(frequency, Nilai_minimal,Nilai_maksimal,255,0);
Serial.print("H= ");
Serial.print(frequency);
Serial.print(" ");
delay(100);
//baca biru
digitalWrite(S2,LOW);
digitalWrite(S3,HIGH);
frequency = pulseIn(sensorOut, LOW);
frequency = map(frequency, Nilai_minimal,Nilai_maksimal,255,0);
Serial.print("B= ");
Serial.print(frequency);
Serial.println(" ");
delay(100);
}
- Ganti nilai program pada bari void loop > frequency = map (frequency, nilai minimal, nilai maksimal, 255, 0); , atau baris program yang diberi warna merah.
- Upload program sensor warna dan uji coba dengan mendekatkan warna ke sensor kemudian lihat hasilnya pada serial monitor
Itulah cara mengkalibrasi sensor warna dengan mudah,
terimakasih dan selamat mencoba