#include <Servo.h>;
Servo servo;
int angle = 4;
int trig = 9;
int echo = 7;
long duration;
int distance;
int ledmerah = 13;
int ledhijau = 12;
void setup() {
pinMode(ledmerah, OUTPUT);
pinMode(ledhijau, OUTPUT);
Serial.begin(9600);
pinMode(echo, INPUT);
pinMode(trig, OUTPUT);
servo.attach(4);
servo.write(angle);
}
void loop() {
digitalWrite(trig, LOW);
delayMicroseconds(2);
digitalWrite(trig, HIGH);
delayMicroseconds(10);
digitalWrite(trig, LOW);
duration = pulseIn(echo, HIGH);
distance = duration / 50;
Serial.print("Jarak: ");
Serial.println(distance);
if (distance < 150) {
digitalWrite(ledmerah, LOW);
digitalWrite(ledhijau, HIGH);
servo.write(0); // Posisi terbuka
delay(1000);
} else {
digitalWrite(ledmerah, HIGH);
digitalWrite(ledhijau, LOW);
servo.write(90); // Posisi tertutup
}
}