Motor servo merupakan jenis motor yang dapat kontrol sudutnya (sudut putar motor). Motor servo banyak dipakai untuk system robotika dan Arduino, selain itu motor servo juga dapat diaplikasikan pada banyak hal lainnya. Kali ini kita akan mencoba mengontrol 2 motor servo menggunakan joystick.
1. Alat / Bahan
- Arduino IDE Download
- Library Servo Download
- Arduino Uno 1 Buah
- Motor Servo 2 Buah
- Joystick 1 Buah
- Project board 1 Buah
- Kebel Jumper Secukupnya
Untuk mendapatkan komponen elektronik di atas silahkan temukan disini.
2. Skema Rangkaian
Gambar Rangkaian Kontrol Servo Dengan Joystick
Keterangan:
- 5V – VCC Joystick, VCC Servo 1, VCC Servo 2
- GND – GND Joystick, GND Servo 1, GND Servo 2
- A0 – VRx
- A1 – Vry
- D5 – Pin Data Servo 1
- D6 – Pin Data Servo 2
3. Langkah Kerja
- Siapkan alat dan juga bahan yang akan digunakan
- Kedua Lakukan proses wiring dengan menggunakan Gambar skematik rangkaian sebelumnya
- kemudian Buka software Arduino IDE yang telah terinstal pada laptop/komputer
- Unduh semua library di atas dan juga masukkan libray tersebut dengan cara buka Arduino IDE pilih Sketch->Include Library->Add.Zip Library
- Ketikkan sketch program pada halaman Arduino IDE
- Untuk memahami cara kerja program Servo, pelajari materi berikut:
Dasar Kendali Motor Servo dengan Arduino - Terakhir Lakukan proses uploading program
4. Sketch Program
Dapatkan puluhan ebook gratis dengan registrasi melalui tombol di bawah!
/* Program Kontrol Servo Dengan Joystick dibuat oleh Indobot */ #include <Servo.h> //Library servo Servo Xservo; //Deklarasi nama servo Servo Yservo; int Xpot = 0; //Sumbu x pada pin A0 int Ypot = 1; int Xval; //Variabel penyimpan nilai sudut servo int Yval; void setup() { Xservo.attach(5); //Servo X pada pin D5 Yservo.attach(6); pinMode(Xpot, INPUT); //Setting I/O pinMode(Ypot, INPUT); } void loop() { Xval = analogRead(Xpot); //Baca joystick sumbu X Xval = map(Xval, 0, 1023, 0, 180); //Konversi dari 10bit ke 180* Xservo.write(Xval); //Jalankan servo sesuai input Yval = analogRead(Ypot); Yval = map(Yval, 0, 1023, 0, 180); Yservo.write(Yval); delay(15); }
Kesimpulan:
Program bekerja ketika joystick bergerak ke x-axis maka servo 1 akan bergerak, dan servo 2 mulai bergerak ketika joystick bergerak ke y-axis.
Mau belajar elektronika dasar? Arduino? atau Internet of Things? Ikuti kursus online Indobot Academy!