● online
- Motor Servo MG995 TowerPro Metal Gear....
- LM35DZ Sensor Suhu - LM35....
- B0505S-1W 5V to 5V converter DC DC power module co....
- LDR Sensor 5mm Cahaya 5528 Light Dependent Resisto....
- IIC I2C LCD 1602 16x2 2004 20x4 Backpack for LCD A....
- Sensor Api Flame detector sensor....
- Dual Volt Amp Meter Digital Ampere Meter Voltmeter....
- Dimmer AC 4000W 220 Volt 4000 Watt 220V + Casing A....
- 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.
Tutorial Menggerakan Motor Servo sebagai Leher Robot dengan Raspberry Pi
Pada robot elektronik sering kali digunakan motor servo sebagai leher yang bisa bergerak, motor servo adalah perangkat elektromekanis yang dirancang menggunakan sistem kontrol jenis loop tertutup (servo) sebagai penggerak dalam sebuah rangkaian yang menghasilkan torsi dan kecepatan yang berdasarkan arus listrik dan tegangan yang ada.
Sederhananya motor servo ini perangkat listrik mandiri yang dapat mendorong, memutar objek dengan presisi tinggi. Jika ingin memutar suatu objek pada beberapa sudut atau jarak tertentu, maka bisa menggunakan motor servo. Dalam proyek kali ini, kita akan belajar cara menggerakkan motor servo untuk mensimulasikan gerakan leher robot, menggunakan Raspberry Pi.
Dengan memanfaatkan sinyal PWM dari GPIO Raspberry Pi, kita bisa mengatur posisi sudut motor servo secara presisi. Proyek ini cocok sebagai dasar untuk membuat robot yang bisa mengangguk, menoleh, atau bahkan mengekspresikan emosi lewat gerakan leher.
Alat dan Bahan yang Diperlukan
Untuk menjalankan proyek ini, berikut yang kamu butuhkan:
- Raspberry Pi Trainer Kit v2
- Motor Servo
- Breadboard dan kabel jumper
- Software:
- MobaXterm (untuk remote terminal)
- Notepad++ (untuk menulis skrip Python)
Wiring Rangkaian Motor Servo
Susun rangkaian dengan panduan seperti ini:
- Pin merah ke VCC 5v
- Pin cokelat ke GND
- Pin jingga ke GPIO 13 dan 25

Gambar 1. Wiring Rangkaian Motor Servo dan Raspberry Pi
Menulis Program Menggerakkan Motor Servo
Setelah semua komponen terpasang, buka Notepad++ dan buat file Python baru. Tulis kode berikut dan simpan file dengan nama servo.py :
import time
from gpiozero import Servo
from time import sleep
servo_angguk_pin = 25
servo_geleng_pin = 13
TITIK_NOL_ANGGUK = 0.95
rentang_angguk = 0.3
rentang_geleng = 1.0 # Nilai ini membuat gerakan menggeleng menjadi lebih luas
servo_angguk = Servo(servo_angguk_pin, min_pulse_width=0.5/1000, max_pulse_width=2.5/1000)
servo_geleng = Servo(servo_geleng_pin, min_pulse_width=0.5/1000, max_pulse_width=2.5/1000)
def gerak_halus(servo, posisi_mulai, posisi_akhir, durasi):
langkah_halus = 200
selisih_posisi = posisi_akhir - posisi_mulai
jeda_waktu = durasi / langkah_halus
for i in range(langkah_halus + 1):
posisi_saat_ini = posisi_mulai + (i / langkah_halus) * selisih_posisi
posisi_saat_ini = max(-1.0, min(1.0, posisi_saat_ini))
servo.value = posisi_saat_ini
sleep(jeda_waktu)
try:
print("Mengatur kedua servo ke posisi awal...")
servo_angguk.value = TITIK_NOL_ANGGUK
servo_geleng.value = 0.0
sleep(1)
print("Memulai gerakan mengangguk dan menggeleng...")
while True:
posisi_depan = TITIK_NOL_ANGGUK - rentang_angguk
gerak_halus(servo_angguk, TITIK_NOL_ANGGUK, posisi_depan, 2.0)
gerak_halus(servo_angguk, posisi_depan, TITIK_NOL_ANGGUK, 2.0)
posisi_kanan = rentang_geleng # Menggunakan nilai 1.0
posisi_kiri = -rentang_geleng # Menggunakan nilai -1.0
gerak_halus(servo_geleng, 0.0, posisi_kanan, 1.5)
gerak_halus(servo_geleng, posisi_kanan, posisi_kiri, 3.0)
gerak_halus(servo_geleng, posisi_kiri, 0.0, 1.5)
except KeyboardInterrupt:
print("Program dihentikan.")
servo_angguk.close()
servo_geleng.close()
Penjelasan Kode
import timedanfrom gpiozero import Servo: Mengimpor library untuk kontrol waktu dan servo.servo_angguk_pin =: Menentukan pin GPIO untuk masing-masing servo.TITIK_NOL_ANGGUK = 0.95: Titik netral untuk servo angguk.rentang_angguk = 0.3: Rentang gerak servo anggukrentang_geleng = 1.0: Rentang maksimum servo geleng.Servo(..., min_pulse_width=..., max_pulse_width=...): Mengatur lebar pulsa PWM agar kompatibel dengan jenis servo.gerak_halus(): Fungsi untuk menggerakkan servo secara halus dengan interpolasi 200 langkah kecil.servo_angguk.value = TITIK_NOL_ANGGUK: Mengatur servo angguk ke posisi awal.servo_geleng.value = 0.0: Mengatur servo geleng ke posisi tengah.while True: Program berjalan terus-menerus hingga dihentikan.except KeyboardInterrupt: Program berhenti dengan aman saat ditekan Ctrl+C.servo.close(): Menutup koneksi servo saat program dihentikan.
Apa yang Akan Terjadi dengan Motor Servo?
Gambar 2. Hasil Percobaan Rangkaian Motor Servo dan Raspberry Pi Trainer Kit
Saat program dijalankan, Raspberry Pi akan menggerakkan dua buah servo yang berperan sebagai leher robot. Servo pertama akan mengangguk perlahan, meniru gerakan kepala menunduk dan kembali tegak. Setelah itu, servo kedua akan menggeleng perlahan dari kanan ke kiri, lalu kembali ke tengah. Seluruh gerakan dibagi ke dalam banyak langkah kecil, Gerakan ini akan berlangsung terus-menerus selama program berjalan.
Tutorial Menggerakan Motor Servo sebagai Leher Robot dengan Raspberry Pi
Secara bawaan, Arduino Uno sebenarnya sudah memiliki pin analog. Tapi pada beberapa proyek, terutama saat jumlah sensor analog semakin banyak,... selengkapnya
IC AtMega328p pada Arduino Uno anda rusak? panas? atau anda ingin membuat sistem minimum sendiri? tenang solusinya adalah dengan... selengkapnya
Melanjutkan tutorial dari postingan sebelumnya tentang cara memulai menggunakan telegram pada NodeMCU, kali kita akan membahas cara membuat notifikasinya... selengkapnya
Limit switch merupakan sebuah saklar yang memiliki tuas sebagai penghubung ataupun pemutus arus litrik. Prinsip kerjanya sama seperti push... selengkapnya
Sensor PIR (Passive Infrared) berfungsi sebagai pendeteksi gerakan berbasis suhu tubuh, khususnya radiasi inframerah yang dipancarkan oleh manusia dan hewan... selengkapnya
Push Button dan LED (Light Emitting Diode) menjadi sebuah komponen yang umum ditemukan pada piranti elektronik sehingga menjadikan... selengkapnya
Sensor Ultrasonik adalah sensor yang bekerja berdasarkan pantulan gelombang suara untuk mendeteksi keberadaan sebuah objek. Sensor ultrasonik terdapat dua bagian... selengkapnya
Pada pembahasan sebelumnya kita sudah pernah membahas tentang penggunaan relay silahkan yang belum bisa lihat di sini. Pada artikel... selengkapnya
Sensor PIR berfungsi untuk mendeteksi benda (manusia/hewan) dengan cara mendeteksi energi panas dalam bentuk radiasi inframerah. Jadi sensor ini... selengkapnya
Sensor getar Piezoelectric Ceramic (Piezo) merupakan sensor getaran sederhana namun sangat sensitif yang mampu menghasilkan tegangan saat terjadi tekanan atau... selengkapnya
This is a set of transmitter and receiver in one of the photoelectric sensor. Detection distance can be adjusted according… selengkapnya
Rp 37.500Kabel Jumper Dupont Pelangi 30cm Male to Female 1 lembar = 40 kabel
Rp 13.500Spesifikasi: 50mm Kapton Tape Polymide Film Gold High Temp isolasi Tahan Panas Harga Tertera: 1 Roll Kapton Tape Polymide Film… selengkapnya
Rp 75.000Kabel jumper Dupont untuk jumper Arduino atau Raspberry Pi 20 cm Male to Male 1 lembar = 40 kabel
Rp 11.300The power supply is isolated industrial power modules, with a temperature protection, overcurrent and short circuit full protection, high and… selengkapnya
Rp 15.900Menerima jasa cetak PCB FR2 (pertinax) / FR4 (double) single / double layer. Silahkan ke web kalkulator biaya cetak pcb… selengkapnya
Rp 1.000TECHNICAL SPECIFICATIONS: – Broadcom BCM2711, Quad core Cortex-A72 (ARM v8) 64-bit SoC @ 1.5GHz – 2GB LPDDR4-2400 SDRAM – 2.4… selengkapnya
Rp 940.000Kabel jumper Dupont untuk jumper Arduino atau Raspeberry Pi 20 cm Female to female 1 lembar = 40 kabel
Rp 11.300ESR meter/LCR meter dengan layar lebar lebih jelas dan mantap dan dengan tempat batre jd lebih rapih batre lebih aman… selengkapnya
Rp 131.000 Rp 134.000Product Name: Tactile Switch; Material: Metal, Plastic Package Content: 30 Pcs x Tactile Switch; Main Color: Black, Silver Tone Total… selengkapnya
Rp 400

Saat ini belum tersedia komentar.