● online
- DS3231SN DS3231 SN I2C RTC Module & Baterai Mo....
- LM35DZ Sensor Suhu - LM35....
- Kabel Jumper 20cm Dupont 20 cm Female to Female Pe....
- LCD 16x2 / 1602 Display Arduino Raspberry LCD 16 x....
- ADS1115 16 Bit I2C Module ADC 4 channel with Pro G....
- Sensor Ultrasonik HC-SR04 HC SR04 Sensor Jarak Ult....
- Kabel Jumper 20cm Dupont 20 cm Male to Male Pelang....
- Tilt Sensor SW-520D Module Modul Sensor Kemiringan....
- 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
Hallo, kali ini akan membahas bagaimana cara untuk membuat dimmer menggunakan mosfet D4184 module. Mosfet mempunyai fungsi yaitu untuk... selengkapnya
Pada kesempatan ini akan dijelaskan mengenai cara pembuatan export/download berupa file excel berdasarkan range tanggal yang dipilih. Filter ini... selengkapnya
Halo semuanya, pada kesempatan kali ini saya ingin berbagi tutorial tentang simulasi penggunaan sensor PIR (Passive Infra Red) untuk... selengkapnya
Sudah pernah menyalakan LED menggunakan Python? Atau membaca input dari tombol? Di proyek kali ini, kamu akan menggabungkan dua fungsi... selengkapnya
Syarat utama jika anda ingin belajar atau ingin menjadi programmer web sebelum belajar Bahasa pemograman alangkah baiknya memahami dulu... selengkapnya
Sensor sentuh merupakan sebuah saklar yang cara penggunaanya dengan cara disentuh menggunakan jari. Ketika sensor ini disentuh maka sensor... selengkapnya
TM1637 merupakan sebuah komponen elektronika yang terdiri dari 4 digit 7 segment. Pada pembahasan sebelumnya kita sudah mempelajari apa itu... selengkapnya
Pada robot elektronik sering kali digunakan motor servo sebagai leher yang bisa bergerak, motor servo adalah perangkat elektromekanis yang dirancang... selengkapnya
LED adalah singkatan dari Light Emiting Diode, yang merupakan sebuah dioda yang dapat mengubah energi listrik menjadi cahaya, dan... selengkapnya
Jumpa lagi bersama indomaker.com, setelah kemarin kita sudah bisa menampilkan sensor suhu dan kelembaban pada web browser DISINI. Sekarang kita... selengkapnya
Features: It is of high power density, high efficiency, high-reliability, small size and lightweight. It can isolate unsteady single-way voltage… selengkapnya
Rp 18.500Modul sensor tegangan AC bolak balik 3 fasa ini menggunakan optocoupler sehingga tegangan input (AC) tidak akan mengganggu/membahayakan tegangan output… selengkapnya
Rp 57.000TILT SENSOR adalah sensor untuk mendeteksi sudut kemiringan / derajat, dimana cara kerja sensor ini adalah dengan menggunakan 2 buah… selengkapnya
Rp 9.80012A 300W DC Buck Step Down Converter CC CV Driver LED charge Battery Spesifikasi: Input Voltage: 5-40V Output Voltage: 1.2-35V… selengkapnya
Rp 39.400The power supply is isolated industrial power modules, with a temperature protection, overcurrent and short circuit full protection, high and… selengkapnya
Rp 15.900Kinerja Produk: Warnanya coklat (amber), Goldfinger tape sticky baik, patuh, suhu tinggi, pelarut, tidak ada rembesan timah dan tidak ada… selengkapnya
Rp 11.900Spesifikasi : – 16×2 – Warna Biru – Tegangan kerja : 5v – Sudah include module I2C Backpack dan tersolder… selengkapnya
Rp 30.000Kabel Jumper Dupont Pelangi 10 cm female to female 1 lembar = 40 kabel
Rp 9.000Putaran = 180º Specifications • Weight: 55 g • Dimension: 40.7 x 19.7 x 42.9 mm approx. • Stall torque:… selengkapnya
Rp 36.400Menerima jasa cetak PCB FR2 (pertinax) / FR4 (double) single / double layer. Silahkan ke web kalkulator biaya cetak pcb… selengkapnya
Rp 1.000

Saat ini belum tersedia komentar.