#include <Servo.h>
Servo myservo; // membuat objek servo
int pos = 0; // variabel untuk posisi servo
// Definisikan pin LED
const int led1 = 3;
const int led2 = 4;
const int led3 = 5;
void setup() {
Serial.begin(9600);
myservo.attach(6); // menghubungkan servo pada pin 9
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
}
void loop() {
// Anggap kita mengubah posisi servo di sini
// Misalkan kita memiliki cara untuk mengubah posisi servo
// misalnya, menggunakan sensor, potensiometer, atau input dari serial
// Contoh perubahan posisi servo secara bertahap
for (pos = 0; pos <= 135; pos += 45) {
myservo.write(pos); // mengatur servo ke posisi 'pos'
delay(1000);
Serial.print("posis servo: "); // tunggu 1 detik untuk melihat pergerakan
Serial.println(pos);
if (pos == 45) {
digitalWrite(led1, HIGH); // hidupkan LED 1
digitalWrite(led2, LOW); // matikan LED 2
digitalWrite(led3, LOW); // matikan LED 3
Serial.println("ON, OFF, OFF");
}
else if (pos == 90) {
digitalWrite(led1, HIGH); // hidupkan LED 1
digitalWrite(led2, HIGH); // hidupkan LED 2
digitalWrite(led3, LOW); // matikan LED 3
Serial.println("ON, ON, OFF");
}
else if (pos == 135) {
digitalWrite(led1, HIGH); // hidupkan LED 1
digitalWrite(led2, HIGH); // hidupkan LED 2
digitalWrite(led3, HIGH); // hidupkan LED 3
Serial.println("ON, ON, ON");
}
else {
digitalWrite(led1, LOW); // matikan LED 1
digitalWrite(led2, LOW); // matikan LED 2
digitalWrite(led3, LOW); // matikan LED 3
Serial.println("OFF, OFF, OFF");
}
}
delay(1000);
myservo.write(0);
delay(1000);
}