Alat Pendeteksi Warna Menggunakan Sensor LDR Berbasis Arduino Unop

LAMPIRAN
#include
// initialize the library with the numbers of the interface pins
LiquidCrystal lcd(7, 6, 5, 4, 3, 2);

int sensorPin = A0;
int LedBiru =8; // Led warna biru digital pin 8
int LedHijau=9; // Led warna hijau digital pin 9
int LedMerah=10; // Led warna merah digital pin 10
int hasil,hasilb,hasilm,hasilh;
int k=15; // toleransi warna

void setup() {
// declare the ledPin as an OUTPUT:
pinMode(LedBiru,OUTPUT);
pinMode(LedMerah,OUTPUT);
pinMode(LedHijau,OUTPUT);
digitalWrite(LedBiru,LOW);
digitalWrite(LedMerah,LOW);
digitalWrite(LedHijau,LOW);
lcd.begin(16,2);

lcd.setCursor(0,0);
lcd.print(" Yenita Sari STMG");
lcd.setCursor(0,1);
lcd.print("132411041");
delay(300);
for (int positionCounter = 0; positionCounter < 16; positionCounter++) {
// scroll one position right:
lcd.scrollDisplayRight();
// wait a bit:
delay(200);
}
for (int positionCounter = 0; positionCounter < 40; positionCounter++) {
// scroll one position left:

Universitas Sumatera Utara

lcd.scrollDisplayLeft();
// wait a bit:
delay(300);
}


}

void loop() {
lcd.clear();
// nyalakan LedMerah
digitalWrite(LedMerah,HIGH);
//delay 150 ms agar LDR baca stabil
delay(150);
// baca data sensor
hasil= analogRead(sensorPin);
hasilm=map(hasil,0,1023,0,255);
lcd.print("R,G,B");
lcd.print(hasilm);
digitalWrite(LedMerah,LOW);
delay(150);

// nyalakan LedHijau
digitalWrite(LedHijau,HIGH);
//delay 150 ms agar LDR baca stabil

delay(150);
// baca data sensor
hasil= analogRead(sensorPin);
hasilh=map(hasil,0,1023,0,255);
lcd.print(",");
lcd.print(hasilh);
digitalWrite(LedHijau,LOW);
delay(150);

// nyalakan LedBiru
digitalWrite(LedBiru,HIGH);

Universitas Sumatera Utara

//delay 150 ms agar LDR baca stabil
delay(150);
// baca data sensor
hasil= analogRead(sensorPin);
hasilb=map(hasil,0,1023,0,255);
lcd.print(",");

lcd.println(hasilb);
digitalWrite(LedBiru,LOW);
delay(150);

// cek warna dibandingkan dengan nilai hasil kalibrasi
if(abs(hasilm-145)