![]() |
🎬 Video YouTube: |
Pelajari cara mengontrol motor servo menggunakan tombol switch pada proyek berbasis Arduino. Tutorial ini membahas secara lengkap mulai dari komponen yang dibutuhkan, rangkaian skematik, hingga penjelasan kode program. Sangat cocok untuk pemula yang ingin memahami prinsip kerja servo dan bagaimana mengendalikannya secara manual melalui input digital. Artikel dilengkapi gambar pendukung dan penjelasan teknis yang mudah dipahami
Kode ini dibuat untuk WDMC untuk mengontrol kecepatan motor DC utama, servo terhubung ke pot generator sinyal PWM, hubungkan relai paralel lainnya dengan relai kontrol utama, saat relai menyala, servo mengubah sudut secara perlahan dan relai terbuka, ke posisi NC, lalu pot kembali ke posisi semula.
kode di bawah:
#include <Servo.h>
const int servoPin = 9; // Servo signal pin
const int buttonPin = 2; // Push button pin
const int buttonDelay = 50; // Delay to debounce the button (in milliseconds)
const int servoIncrement = 1; // Angle increment for each iteration
const int servoDelay = 5; // Delay between angle increments (in milliseconds)
Servo servo;
int currentAngle = 1; // To change the starting Angle of servo
bool buttonPressed = false;
void setup() {
servo.attach(servoPin);
pinMode(buttonPin, INPUT_PULLUP);
servo.write(currentAngle); // Set initial position to 0 degrees
}
void loop() {
if (digitalRead(buttonPin) == LOW && !buttonPressed) {
buttonPressed = true;
increaseAngle();
}
if (digitalRead(buttonPin) == HIGH && buttonPressed) {
buttonPressed = false;
returnToOriginalPosition();
}
}
void increaseAngle() {
while (digitalRead(buttonPin) == LOW && currentAngle < 180) {
currentAngle += servoIncrement;
servo.write(currentAngle);
delay(servoDelay); // write a servo delay for angle increment for
}
}
void returnToOriginalPosition() {
while (currentAngle > 0) {
currentAngle -= servoIncrement;
servo.write(currentAngle);
delay(servoDelay); // write a servo delay for return servo to 0 insted od servoDelay
}
}
Dengan memahami cara kerja switch button dan motor servo pada proyek Arduino,
Anda telah selangkah lebih maju dalam menguasai dasar-dasar sistem kontrol elektronik.
Proyek sederhana ini dapat dikembangkan lebih lanjut untuk berbagai aplikasi, seperti robotika, pintu otomatis, atau perangkat interaktif lainnya.
Jangan ragu untuk bereksperimen dan modifikasi sesuai kebutuhan Anda.
Semoga tutorial ini bermanfaat, dan terus kunjungi Kalilandak Info untuk berbagai artikel menarik seputar Arduino dan proyek DIY elektronik lainnya!