#include <Servo.h>
Servo myservo; // Deklarasi objek Servo
long duration;
int distance;
int servoSudut; // Variabel untuk menyimpan sudut servo
void setup() {
const int pintrig = 12;
const int pinecho = 8;
const int pinservo = 6;
pinMode(pintrig, OUTPUT);
pinMode(pinecho, INPUT);
myservo.attach(pinservo);
Serial.begin(9600); // Inisialisasi Serial
}
void loop() {
// Menghasilkan pulsa ultrasonik
digitalWrite(12, LOW);
delayMicroseconds(2);
digitalWrite(12, HIGH);
delayMicroseconds(10);
digitalWrite(12, LOW);
duration = pulseIn(8, HIGH);
distance = duration * 0.034 / 2;
if (distance < 40) {
myservo.write(50);
servoSudut = 50; // Simpan sudut 50
} else {
myservo.write(90);
servoSudut = 90; // Simpan sudut 90
}
Serial.print("distance = ");
Serial.println(distance);
Serial.print("derajat = ");
Serial.println(servoSudut); // Cetak sudut yang disimpan
delay(500);
}