#include <Stepper.h>
const int stepsPerRevolution = 200; // Jumlah langkah pada satu putaran motor stepper
const int trigPin = 2; // Pin trigger sensor ultrasonik
const int echoPin = 3; // Pin echo sensor ultrasonik
Stepper myStepper(stepsPerRevolution, 8, 9, 10, 11); // Inisialisasi objek motor stepper dengan pin kontrol
void setup() {
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
myStepper.setSpeed(300); // Mengatur kecepatan motor stepper (sesuaikan dengan kebutuhan Anda)
myStepper.step(stepsPerRevolution); // Menggerakkan motor stepper ke posisi awal (0 derajat)
}
void loop() {
long duration, cm;
// Mengirimkan sinyal ultrasonik
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
// Menerima sinyal ultrasonik dan menghitung jarak
duration = pulseIn(echoPin, HIGH);
cm = (duration / 2) / 29.1;
// Jika jarak kurang dari 15 cm, motor stepper bergerak 360 derajat dan kembali ke titik 0 derajat
if (cm < 15) {
myStepper.step(stepsPerRevolution); // Bergerak 360 derajat searah jarum jam
delay(1000); // Delay 1 detik (sesuaikan dengan kebutuhan Anda)
myStepper.step(-stepsPerRevolution); // Kembali ke titik 0 derajat (bergerak 360 derajat berlawanan jarum jam)
delay(1000); // Delay 1 detik (sesuaikan dengan kebutuhan Anda)
}
}