#define echoPin 2
#define trigPin 3
int buzzer = 7;
int maximumRange = 300;
int minimumRange = 00;
long duration,distance;
void setup() {
Serial.begin(9600);
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
pinMode(buzzer, OUTPUT);
}
void loop() {
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin,HIGH);
distance = duration/58.2;
if (distance >= maximumRange || distance <= minimumRange){
Serial.println("Di luar jangkauan");
}
if(distance <5){
digitalWrite(11, LOW);
digitalWrite(10, LOW);
digitalWrite(9, LOW);
}
if(distance >=5 && distance < 15){
digitalWrite(11, HIGH);
digitalWrite(10, LOW);
digitalWrite(9, LOW);
tone(buzzer, 200);
delay(1000);
tone(buzzer, 250);
delay(2000);
noTone(buzzer);
}
if(distance >=15 && distance < 30){
digitalWrite(11, LOW);
digitalWrite(10, HIGH);
digitalWrite(9, LOW);
}
if(distance >=30 && distance < 40){
digitalWrite(11, LOW);
digitalWrite(10, LOW);
digitalWrite(9, HIGH);
tone(buzzer, 200);
delay(1000);
tone(buzzer, 250);
delay(2000);
noTone(buzzer);
}
if(distance >=40 && distance ){
digitalWrite(11, LOW);
digitalWrite(10, LOW);
digitalWrite(9, LOW);
}
}