#define ECHO_PIN 5
#define TRIG_PIN 4
#define ledMerah 8
#define ledKuning 7
#define ledHijau 6
#define ledBirutua 13
#define ledUngu 12
#define ledOrange 11
#define ledBirumuda 10
void setup() {
Serial.begin (115200);
pinMode(TRIG_PIN, OUTPUT);
pinMode(ECHO_PIN, INPUT);
pinMode(ledMerah, OUTPUT);
pinMode(ledKuning, OUTPUT);
pinMode(ledHijau, OUTPUT);
}
float readDistanceCM() {
digitalWrite(TRIG_PIN, LOW);
delayMicroseconds(2);
digitalWrite(TRIG_PIN, HIGH);
delayMicroseconds(10);
digitalWrite(TRIG_PIN, LOW);
int duration = pulseIn (ECHO_PIN, HIGH);
return duration * 0.034 / 2;
}
void loop() {
float distance = readDistanceCM();
Serial.print("Measured distance: ");
Serial.println(readDistanceCM());
if(distance <= 50){
digitalWrite(ledMerah, HIGH);
digitalWrite(ledKuning, LOW);
digitalWrite(ledHijau, LOW);
digitalWrite(ledBirutua, LOW);
digitalWrite(ledUngu, LOW);
digitalWrite(ledOrange, LOW);
digitalWrite(ledBirumuda, LOW);
}
else if(distance <= 100){
digitalWrite(ledMerah, LOW);
digitalWrite(ledKuning, HIGH);
digitalWrite(ledHijau, LOW);
digitalWrite(ledBirutua, LOW);
digitalWrite(ledUngu, LOW);
digitalWrite(ledOrange, LOW);
digitalWrite(ledBirumuda, LOW);
}
else if(distance <= 150){
digitalWrite(ledMerah, LOW);
digitalWrite(ledKuning, LOW);
digitalWrite(ledHijau, LOW);
digitalWrite(ledBirutua, HIGH);
digitalWrite(ledUngu, LOW);
digitalWrite(ledOrange, LOW);
digitalWrite(ledBirumuda, LOW);
}
else if(distance <=200){
digitalWrite(ledMerah, LOW);
digitalWrite(ledKuning, LOW);
digitalWrite(ledHijau, LOW);
digitalWrite(ledBirutua, LOW);
digitalWrite(ledUngu, HIGH);
digitalWrite(ledOrange, LOW);
digitalWrite(ledBirumuda, LOW);
}
else if(distance <=250){
digitalWrite(ledMerah, LOW);
digitalWrite(ledKuning, LOW);
digitalWrite(ledHijau, LOW);
digitalWrite(ledBirutua, LOW);
digitalWrite(ledUngu, LOW);
digitalWrite(ledOrange, HIGH);
digitalWrite(ledBirumuda, LOW);
}
else if(distance <= 300){
digitalWrite(ledMerah, LOW);
digitalWrite(ledKuning, LOW);
digitalWrite(ledHijau, LOW);
digitalWrite(ledBirutua, LOW);
digitalWrite(ledUngu, LOW);
digitalWrite(ledOrange, LOW);
digitalWrite(ledBirumuda, HIGH);
}
else{
digitalWrite(ledMerah, LOW);
digitalWrite(ledKuning, LOW);
digitalWrite(ledHijau, HIGH);
digitalWrite(ledBirutua, LOW);
digitalWrite(ledUngu, LOW);
digitalWrite(ledOrange, LOW);
digitalWrite(ledBirumuda, LOW);
}
delay(100);
}