Kontrol Servo SG90 Pakai Arduino + Potensiometer: Dasar Robot Lengan 07 Jul 2026

Kontrol Servo SG90 Pakai Arduino + Potensiometer: Dasar Robot Lengan

Tutorial Arduino Servo SG90: Kontrol Motor 180° Pakai Potensiometer

Apa Itu Servo SG90? Otot Kecil yang Gerakannya Presisi

Kalau sensor HC-SR04 tadi "mata" nya Arduino, maka Servo SG90 ini "otot" nya Arduino.

Bedanya sama motor DC biasa: Motor DC muter terus. Servo? Dia bisa disuruh "berhenti di sudut 90 derajat". "Oke sekarang ke 45 derajat". Presisi banget.

Makanya servo dipake di: Lengan robot, Pintu otomatis, Kamera CCTV yang bisa nengok kiri-kanan, Sayap pesawat RC.

SG90 ini servo paling murah dan paling populer. Harga 25ribu. Tenaganya kecil, tapi buat belajar udah paling pas.

Alat & Bahan yang Dibutuhkan

  • 1x Arduino UNO R3
  • 1x Servo SG90 - Perhatikan warna kabelnya:
    Merah = 5V,
    Coklat/Hitam = GND,
    Oranye/Kuning = Sinyal ke Pin 9
  • 1x Potensiometer 10K - Ini "tombol putar" buat ngatur sudut. Kayak volume di speaker.
  • Kabel Jumper - Secukupnya

PENTING: Jangan colok servo langsung ke pin 5V Arduino kalau servonya banyak. Dia bisa nyedot arus gede dan bikin Arduino restart. Buat 1 servo SG90 masih aman.

Skema Kabel / Wiring Diagram

Komponen Kabel Colok ke Arduino
Servo SG90 Merah 5V
Servo SG90 Coklat GND
Servo SG90 Oranye Pin 9
Potensiometer Kaki Tengah Pin A0
Potensiometer Kaki Kanan 5V
Potensiometer Kaki Kiri GND

Kode Program Lengkap + Penjelasan

Copy kode ini ke Arduino IDE. Library `Servo.h` udah bawaan, gak perlu install.

#include  // Panggil library servo

Servo myservo; // Bikin objek servo namanya "myservo"

int potPin = A0;    // Potensiometer di pin Analog A0
int servoPin = 9;   // Kabel sinyal servo di pin Digital 9
int potValue;       // buat nyimpen nilai dari potensiometer 0-1023
int angle;          // buat nyimpen sudut servo 0-180

void setup() {
  myservo.attach(servoPin); // "Nempelin" servo ke pin 9
  Serial.begin(9600); // buat debugging di Serial Monitor
}

void loop() {
  // 1. BACA NILAI POTENSIOMETER
  potValue = analogRead(potPin); // hasilnya 0 sampai 1023
  
  // 2. UBAH 0-1023 MENJADI 0-180
  // Ini fungsi ajaibnya. map(nilai, dari_min, dari_max, ke_min, ke_max)
  angle = map(potValue, 0, 1023, 0, 180);
  
  // 3. SURUH SERVO GERAK KE SUDUT TADI
  myservo.write(angle); // suruh muter ke 'angle' derajat
  
  // 4. TAMPILIN DI SERIAL MONITOR
  Serial.print("Sudut: ");
  Serial.print(angle);
  Serial.println(" derajat");
  
  delay(15); // jeda dikit biar servo gak geter
}

Cara Kerja Kode: Fungsi `map()` Adalah Kuncinya

Ini bagian yang paling bikin bingung pemula.

Potensiometer itu ngeluarin angka 0 sampai 1023. Tapi servo cuma ngerti perintah 0 sampai 180 derajat.

Nah `map()` tugasnya jadi "penerjemah":
map(0, 0, 1023, 0, 180) = Kalau potensiometer di kiri mentok, servo ke 0°
map(1023, 0, 1023, 0, 180) = Kalau potensiometer di kanan mentok, servo ke 180°
map(512, 0, 1023, 0, 180) = Kalau di tengah, servo ke 90°

Gampang kan?

4 Ide Project Keren Setelah Ini

  1. Pintu Otomatis
    Gabungin sama Sensor HC-SR04 artikel sebelumnya. Kalau ada orang <20cm, servo muter 90° buat "buka pintu".
  2. Robot Lengan 1 Axis
    Tempel penggaris ke servo. Udah jadi robot lengan paling dasar.
  3. Jam Analog
    Pake 3 servo buat jarum Jam, Menit, Detik.
  4. Solar Tracker
    Pake 2 LDR + 2 Servo. Biar panel surya selalu ngadep matahari.

3 Masalah Umum & Cara Mengatasinya

  1. Servo Geter-geter / Dengung
    Penyebab: Arus kurang atau delay terlalu kecil.
    Solusi: Kasih `delay(20)` bukan `delay(15)`. Atau pake adaptor 5V 2A eksternal buat servo.
  2. Servo Muternya Gak Full 180°
    Penyebab: Tiap servo beda-beda. Ada yang mentok di 160°.
    Solusi: Ganti kodenya jadi `map(potValue, 0, 1023, 10, 170)`. Biar ada "spasi pengaman".
  3. Arduino Restart Pas Servo Bergerak
    Penyebab: Servo nyedot arus gede.
    Solusi: WAJIB pake power eksternal 5V untuk servo. GND Arduino dan GND power eksternal harus digabung.

Kesimpulan: Kamu Baru Bikin "Sendi" Pertama Robot

Dengan project ini kamu udah bisa ngontrol gerakan. Gabungin sama "mata" dari sensor jarak tadi, dan kamu udah punya robot paling dasar.

Logika `baca sensor > proses > gerakin servo` ini dipakai di 90% project robotika.

Tugas kamu: Coba putar potensiometer pelan-pelan. Liat servo ngikutin gak? Kalau iya, komen "Berhasil" di bawah 👇

Di artikel selanjutnya kita bakal gabungin semua: `Sensor + Servo + Buzzer` jadi "Tempat Sampah Otomatis". Mau? Follow culobo.com biar gak ketinggalan.

Males Ngoding Sendiri?

Tim Culobo siap buatin website, ajarin coding, atau naikin SEO web kamu.

Hubungi Kami
💬

Belum ada diskusi

Jadilah yang pertama bertanya tentang artikel ini

Ada Pertanyaan? Konsultasi Gratis

Tim Culobo jawab dalam 24 jam. Mau belajar coding, bikin website, atau naikin SEO.

*Kami balas maksimal 1x24 jam di hari kerja

Tutorial Culobo Terbaru

Tutorial & Coding

Panduan belajar programming step-by-step dari nol. Mulai dari Laravel, Python, hingga tips praktik pembuatan project nyata.

Cara Menampilkan Data dari Database ke Website dengan Controller dan Blade Laravel 13
30 Jul 2026

Cara Menampilkan Data dari Database ke Website dengan Controller dan Blade Laravel 13

Tujuan Tutorial Part 3 Di Part 1 kita sudah install Laravel 13. Di Part 2 kita sudah konek ke database. Nah di Part 3 i...

Baca Selengkapnya →
Cara Koneksi Laravel 13 ke Database MySQL dan Setting File.env Lengkap
29 Jul 2026

Cara Koneksi Laravel 13 ke Database MySQL dan Setting File.env Lengkap

Mengapa Koneksi Database Penting di Laravel? Setelah berhasil menginstall Laravel 13 di Part 1, langkah selanjutnya ada...

Baca Selengkapnya →
#Part 1: Cara Install Laravel 13 di Composer untuk Pemula Lengkap 2026
29 Jul 2026

#Part 1: Cara Install Laravel 13 di Composer untuk Pemula Lengkap 2026

Apa itu Laravel 13? Laravel 13 adalah versi terbaru dari framework PHP paling populer di dunia. Laravel memudahkan deve...

Baca Selengkapnya →