Motor servo SG90 adalah motor servo kecil dan ringan yang biasa digunakan dalam robotika, kendaraan RC, dan proyek lain yang membutuhkan kontrol sudut yang tepat. Dalam tutorial ini, kami akan menunjukkan kepada Anda cara menghubungkan motor servo SG90 dengan Arduino.
Apa yang Anda Butuhkan
- SG90 Servo Motor
- Dewan Arduino (mis., Uno, mega, nano)
- Papan tempat memotong roti
- Kabel jumper
- Catu daya eksternal (opsional untuk beberapa servo)
- Komputer dengan IDE Arduino diinstal
Langkah 1: Memahami motor servo SG90
Motor servo SG90 memiliki tiga pin:
Pin SG90 | Fungsi |
---|---|
Cokelat | Ground (gnd) |
Merah | Power (VCC) |
Oranye | Sinyal (PWM) |
Catatan: Motor servo beroperasi di 4.8V-6V. Jika Anda menyalakan beberapa servo, gunakan catu daya eksternal.
Langkah 2: Kabel SG90 ke Arduino
Inilah cara menghubungkan motor servo SG90 ke Arduino UNO:
Pin SG90 | Pin Arduino |
---|---|
Cokelat | Gnd |
Merah | 5v |
Oranye | Pin 9 |
Langkah 3: Instal Perpustakaan Servo
IDE Arduino menyertakan perpustakaan servo bawaan, jadi Anda tidak perlu menginstal sesuatu yang ekstra.
Langkah 4: Unggah kode
Berikut kode contoh sederhana untuk mengontrol motor servo SG90:
#include <Servo.h>
Servo myServo; // Create a Servo object
void setup() {
myServo.attach(9); // Attach the servo to pin 9
Serial.begin(9600);
Serial.println("SG90 Servo Test");
}
void loop() {
for (int angle = 0; angle <= 180; angle += 1) { // Sweep from 0 to 180 degrees
myServo.write(angle); // Set servo to angle
delay(15); // Wait for the servo to reach the position
}
for (int angle = 180; angle >= 0; angle -= 1) { // Sweep from 180 to 0 degrees
myServo.write(angle); // Set servo to angle
delay(15); // Wait for the servo to reach the position
}
}
Langkah 5: Uji pengaturan
- Hubungkan Arduino Anda ke komputer Anda melalui USB.
- Buka IDE Arduino dan pilih yang benar Papan Dan Pelabuhan dari Peralatan menu.
- Unggah kode dengan mengklik Mengunggah tombol.
- Setelah kode diunggah, motor servo akan mulai menyapu dari 0 hingga 180 derajat dan kembali terus menerus.
Langkah 6: Mengontrol servo secara dinamis
Anda juga dapat mengontrol servo secara dinamis menggunakan monitor serial. Inilah contohnya:
#include <Servo.h>
Servo myServo;
void setup() {
myServo.attach(9);
Serial.begin(9600);
Serial.println("Enter an angle (0-180):");
}
void loop() {
if (Serial.available()) {
int angle = Serial.parseInt(); // Read the angle from Serial Monitor
if (angle >= 0 && angle <= 180) {
myServo.write(angle);
Serial.print("Servo set to: ");
Serial.println(angle);
} else {
Serial.println("Invalid angle. Enter a value between 0 and 180.");
}
}
}
Pemecahan masalah
- Servo tidak bergerak: Periksa kembali kabel dan pastikan pin yang benar didefinisikan dalam kode.
- Servo yang Menjadi Menggosok: Gunakan catu daya eksternal untuk memberikan daya yang stabil.
- Servo Overheating: Hindari memegang servo dalam posisi untuk waktu yang lama di bawah beban.
Aplikasi SG90 Servo
- Lengan robot
- Kamera Pan-and-Tilt Mounts
- Kendaraan RC
- Pembuka Pintu Otomatis
Kesimpulan
Anda telah berhasil menghubungkan motor servo SG90 dengan Arduino dan mengendalikan posisinya. Keserbagunaan dan kemudahan penggunaan SG90 membuatnya ideal untuk berbagai proyek DIY dan robotika. Bereksperimenlah dengan metode kontrol yang berbeda dan buat proyek bertenaga servo Anda sendiri!