Buka Senin - Jumat jam 08.30 s/d jam 16.30 , Sabtu Jam 8.30 s/d jam 13.00 , Minggu tutup
  • Selamat Datang di Indomaker ❯ Silahkan pesan produk sesuai kebutuhan anda, kami siap melayani.
  • Selamat Datang di Indomaker ❯ Silahkan pesan produk sesuai kebutuhan anda, kami siap melayani.
Beranda » Blog » Tutorial Menggerakkan Motor Servo sebagai Leher Robot Menggunakan Arduino Uno

Tutorial Menggerakkan Motor Servo sebagai Leher Robot Menggunakan Arduino Uno

Diposting pada 19 December 2025 oleh indo maker / Dilihat: 14 kali / Kategori: ,

Motor servo merupakan salah satu aktuator yang paling sering digunakan dalam dunia robotika, terutama untuk gerakan yang membutuhkan ketelitian posisi. Berbeda dengan motor DC yang hanya berputar terus menerus, motor servo mampu bergerak ke sudut tertentu dan mempertahankan posisi tersebut selama masih menerima sinyal kendali.

Karena kemampuannya ini, motor servo sangat cocok digunakan untuk mensimulasikan gerakan leher robot, seperti gerakan mengangguk dan menggeleng. Pada percobaan ini, kamu akan belajar mengendalikan dua buah motor servo menggunakan Arduino Uno untuk menirukan gerakan leher robot secara halus dan alami.

Gambaran Sistem Gerakan Leher Robot dengan Motor Servo

Pada sistem ini, Arduino Uno berperan sebagai pengendali utama yang menghasilkan sinyal PWM untuk mengatur posisi motor servo. Dua motor servo digunakan dengan fungsi yang berbeda:

Servo pertama berfungsi sebagai servo angguk, yang menghasilkan gerakan naik dan turun.
Servo kedua berfungsi sebagai servo geleng, yang menghasilkan gerakan ke kiri dan ke kanan.

Kedua servo diatur agar bergerak secara bertahap, sehingga pergerakan yang dihasilkan terlihat lebih natural dan tidak kaku.

Alat dan Bahan yang Diperlukan

Untuk menjalankan percobaan ini, siapkan komponen berikut:

  • Arduino Uno Trainer Kit
  • Motor servo
  • Kabel jumper
  • Software Arduino IDE

Menulis Program Menggerakkan Motor Servo

Setelah rangkaian terpasang dengan benar, buka Arduino IDE, lalu tuliskan program berikut dan unggah ke papan Arduino Uno.

#include <Servo.h>

Servo servoAngguk;
Servo servoGeleng;

int pinAngguk = 9;
int pinGeleng = 10;

// Kalibrasi sudut
int anggukNetral = 125;
int anggukTurun  = 95;

int gelengTengah = 90;
int gelengKiri   = 45;
int gelengKanan  = 115;

// Fungsi gerak halus
void gerakHalus(Servo &servo, int dari, int ke, int jeda) {
  if (dari < ke) {
    for (int sudut = dari; sudut <= ke; sudut++) {
      servo.write(sudut);
      delay(jeda);
    }
  } else {
    for (int sudut = dari; sudut >= ke; sudut--) {
      servo.write(sudut);
      delay(jeda);
    }
  }
}

void setup() {
  servoAngguk.attach(pinAngguk);
  servoGeleng.attach(pinGeleng);

  servoAngguk.write(anggukNetral);
  servoGeleng.write(gelengTengah);
  delay(1000);
}

void loop() {

  // Gerakan angguk
  gerakHalus(servoAngguk, anggukNetral, anggukTurun, 15);
  gerakHalus(servoAngguk, anggukTurun, anggukNetral, 15);

  delay(300);

  // Gerakan geleng
  gerakHalus(servoGeleng, gelengTengah, gelengKiri, 12);
  gerakHalus(servoGeleng, gelengKiri, gelengKanan, 12);
  gerakHalus(servoGeleng, gelengKanan, gelengTengah, 12);

  delay(500);
}

Penjelasan Kode

  • #include <Servo.h> digunakan untuk memanggil pustaka servo bawaan Arduino
  • Servo servoAngguk dan Servo servoGeleng digunakan untuk membuat objek servo
  • pinAngguk dan pinGeleng digunakan untuk menentukan pin digital Arduino yang terhubung ke masing masing servo
  • anggukNetral dan anggukTurun digunakan untuk mengatur posisi netral dan posisi menunduk pada servo angguk
  • gelengTengah, gelengKiri, dan gelengKanan digunakan untuk mengatur posisi tengah, kiri, dan kanan pada servo geleng
  • gerakHalus() digunakan untuk menggerakkan servo secara bertahap agar pergerakan tidak patah patah
  • attach() digunakan untuk menghubungkan objek servo dengan pin Arduino
  • write() digunakan untuk mengatur sudut motor servo dalam satuan derajat

Hasil Percobaan

Setelah program diunggah dan Arduino diberi catu daya, kedua motor servo akan mulai bergerak sesuai urutan yang telah ditentukan. Pada kondisi awal, servo angguk berada pada posisi netral dan servo geleng berada pada posisi tengah.

Servo angguk kemudian bergerak perlahan ke posisi menunduk dan kembali ke posisi awal. Setelah itu, servo geleng bergerak ke kiri, ke kanan, dan kembali ke tengah dengan pergerakan yang stabil dan tidak patah-patah. Seluruh gerakan berlangsung dengan halus karena sudut servo diubah secara bertahap.

Gambar 2. Hasil Percobaan Menggerakan Motor Servo

Percobaan ini menunjukkan bahwa Arduino Uno mampu mengendalikan dua motor servo secara bersamaan dengan gerakan yang terkontrol. Konsep ini menjadi dasar penting dalam pengembangan robot yang memiliki gerakan leher atau kepala yang lebih ekspresif dan realistis.

Bagikan ke

Tutorial Menggerakkan Motor Servo sebagai Leher Robot Menggunakan Arduino Uno

Saat ini belum tersedia komentar.

Silahkan tulis komentar Anda

Tutorial Menggerakkan Motor Servo sebagai Leher Robot Menggunakan Arduino Uno

Produk yang sangat tepat, pilihan bagus..!

Berhasil ditambahkan ke keranjang belanja
Lanjut Belanja
Checkout
Produk Quick Order

Pemesanan dapat langsung menghubungi kontak dibawah: