#include <Servo.h>
Servo NurjamanServo;
int ServoPin = 3;
int trig = 6; // membuat varibel trig yang di set ke-pin 6
int echo = 7; // membuat variabel echo yang di set ke-pin 7
long durasi, jarak; // membuat variabel durasi dan jarak
void setup() {
pinMode(trig, OUTPUT); // set pin trig menjadi OUTPUT
pinMode(echo, INPUT); // set pin echo menjadi INPUT
Serial.begin(9600); // digunakan untuk komunikasi Serial dengan komputer
// Servo
NurjamanServo.attach(ServoPin);
NurjamanServo.write(0);
}
void loop() {
// program dibawah ini agar trigger memancarakan suara ultrasonic
digitalWrite(trig, LOW);
delayMicroseconds(2);
digitalWrite(trig, HIGH);
delayMicroseconds(10);
digitalWrite(trig, LOW);
delayMicroseconds(8);
// Setting Durasi dan Jarak
durasi = pulseIn(echo, HIGH); // Menerima suara ultrasonic
jarak = durasi*0.0343/2; // mengubah durasi menjadi jarak (cm)
Serial.println(jarak); // menampilkan jarak pada Serial Monitor
if(jarak <= 200){ //Servo Buka
// Aksi Servo Buka
NurjamanServo.write(90);
Serial.println("Servo Membuka");
}else{ //Servo Tutup
// Aksi Servo Tutup
NurjamanServo.write(0);
Serial.println("Servo Menutup");
}
}