GhostBox merupakan salah satu proyek elektronik menarik yang dapat dibuat menggunakan Raspberry Pi Pico. Proyek ini memanfaatkan kemampuan mikrokontroler untuk membaca perubahan sinyal dari sensor atau sumber audio, kemudian mengolahnya menjadi keluaran tertentu. Pada artikel ini akan membahas tentang cara membuat GhostBox menggunakan Raspberry Pi Pico, mulai dari konsep kerja, komponen yang dibutuhkan, wiring, hingga contoh program MicroPython. Penjelasan dibuat sederhana sehingga cocok untuk pemula yang sedang belajar Raspberry Pi Pico dan elektronika dasar.
Catatan: Istilah GhostBox pada proyek elektronik dapat merujuk pada berbagai desain. Dalam konteks artikel ini, GhostBox diperlakukan sebagai proyek eksperimen elektronik/audio untuk mempelajari pembacaan sinyal dan pengolahan input menggunakan Raspberry Pi Pico, bukan sebagai alat yang terbukti dapat berkomunikasi dengan makhluk gaib.
Apa Itu GhostBox?
GhostBox adalah nama yang sering digunakan untuk perangkat eksperimen yang memanfaatkan perubahan sinyal elektronik atau audio sebagai bagian dari suatu sistem interaktif. Pada versi berbasis Raspberry Pi Pico, mikrokontroler dapat digunakan untuk membaca input dari komponen elektronik, memproses data tersebut, kemudian menghasilkan output melalui speaker, buzzer, LED, atau perangkat lainnya. Secara sederhana, alurnya dapat digambarkan sebagai berikut:
Input → Raspberry Pi Pico → Pemrosesan → Output
Misalnya, input berasal dari sensor atau potensiometer. Raspberry Pi Pico kemudian membaca nilai input tersebut melalui GPIO atau ADC. Setelah itu, program menentukan output yang harus diberikan.
Fungsi Raspberry Pi Pico pada GhostBox
Raspberry Pi Pico berfungsi sebagai otak utama proyek. Beberapa tugas yang dapat dilakukan antara lain:
- Membaca nilai sensor.
- Membaca input analog menggunakan ADC.
- Mengolah nilai input.
- Menghasilkan suara menggunakan PWM.
- Mengontrol LED sebagai indikator.
- Mengatur waktu dan pola keluaran.
- Menjalankan program secara otomatis.
Dengan kemampuan tersebut, Raspberry Pi Pico cukup fleksibel untuk digunakan sebagai dasar berbagai proyek elektronika interaktif.
Komponen yang Dibutuhkan
Untuk membuat versi sederhana proyek ini, beberapa komponen yang dapat digunakan adalah:
Potensiometer digunakan sebagai sumber input analog agar perubahan nilai dapat dibaca oleh ADC Raspberry Pi Pico. Jika ingin membuat proyek yang lebih kompleks, input dapat diganti atau ditambahkan menggunakan sensor lain.
Cara Kerja GhostBox dengan Raspberry Pi Pico
1. Potensiometer Menghasilkan Sinyal Analog
Potensiometer memiliki tiga terminal. Dua terminal terhubung ke 3.3V dan GND, sedangkan terminal tengah menghasilkan tegangan yang berubah sesuai posisi knob. Ketika knob diputar, tegangan pada terminal tengah ikut berubah. Tegangan tersebut kemudian dibaca oleh ADC Raspberry Pi Pico.
2. Raspberry Pi Pico Membaca Nilai ADC
Raspberry Pi Pico memiliki pin ADC yang dapat digunakan untuk membaca tegangan analog. Pada contoh ini, Anda dapat menggunakan GP26 / ADC0. Nilai analog kemudian dikonversi menjadi angka yang dapat diproses oleh program. Pada MicroPython, pembacaan ADC dilakukan menggunakan:
adc.read_u16() Nilainya berada pada rentang hingga 65535.
3. Nilai Diproses oleh Program
Program membaca nilai ADC secara terus-menerus. Jika nilai berubah melewati batas tertentu, Raspberry Pi Pico dapat memberikan respons berupa:
- LED menyala.
- Buzzer berbunyi.
- Nada berubah.
- Output tertentu ditampilkan.
Dengan demikian, pengguna dapat melihat hubungan antara input analog dan output elektronik.
4. Buzzer Menghasilkan Suara
Buzzer atau piezo dapat dikendalikan menggunakan PWM (Pulse Width Modulation). Dengan mengubah frekuensi PWM, kita dapat menghasilkan nada yang berbeda. Misalnya:
Frekuensi rendah → Nada rendah
Frekuensi tinggi → Nada tinggi
Ini membuat proyek menjadi lebih interaktif.
Wiring GhostBox Raspberry Pi Pico
Sebelum menjalankan program GhostBox, pastikan semua komponen sudah terhubung dengan benar ke Raspberry Pi Pico. Rangkaian ini terdiri dari potensiometer sebagai input analog, LED sebagai indikator, dan buzzer sebagai output suara.
1. Wiring Potensiometer
Hubungkan salah satu kaki potensiometer ke 3.3V Raspberry Pi Pico, kaki lainnya ke GND, dan kaki tengah potensiometer ke GP26/ADC0. Kaki tengah berfungsi sebagai jalur sinyal analog yang akan dibaca oleh Raspberry Pi Pico. Ketika posisi potensiometer diputar, nilai analog yang diterima Pico akan berubah dan dapat digunakan sebagai bagian dari proses kerja GhostBox.
2. Wiring LED
Hubungkan GP15 Raspberry Pi Pico ke resistor 330Ω, kemudian sambungkan resistor tersebut ke kaki positif LED. Kaki negatif LED selanjutnya dihubungkan ke GND Raspberry Pi Pico. Resistor 330Ω berfungsi sebagai pembatas arus agar LED tidak menerima arus berlebihan. Jangan menghubungkan LED secara langsung ke pin GPIO tanpa resistor, karena dapat menyebabkan arus yang terlalu besar dan berpotensi merusak LED maupun pin GPIO Raspberry Pi Pico.
3. Wiring Buzzer
Untuk buzzer sederhana, hubungkan kaki positif buzzer ke GP14 Raspberry Pi Pico, sedangkan kaki negatif buzzer dihubungkan ke GND. Dengan koneksi tersebut, Raspberry Pi Pico dapat mengontrol buzzer untuk menghasilkan suara sesuai dengan program GhostBox. Jika menggunakan buzzer atau speaker yang membutuhkan arus lebih besar, sebaiknya jangan menghubungkannya langsung ke GPIO.Gunakan transistor atau rangkaian driver yang sesuai agar pin GPIO Raspberry Pi Pico tetap aman.
Program GhostBox dengan MicroPython
Setelah wiring selesai, Raspberry Pi Pico dapat diprogram menggunakan MicroPython melalui Thonny IDE. Berikut contoh program sederhana. Program akan membaca potensiometer, kemudian mengubah pembacaan tersebut menjadi frekuensi suara pada buzzer. LED juga digunakan sebagai indikator.
from machine import Pin, ADC, PWM
from time import sleep
# Input analog dari potensiometer
adc = ADC(26)
# LED indikator
led = Pin(15, Pin.OUT)
# Buzzer
buzzer = PWM(Pin(14))
# Matikan buzzer pada awal program
buzzer.duty_u16(0)
while True:
# Membaca nilai ADC
value = adc.read_u16()
# Mengubah nilai ADC menjadi frekuensi
frequency = 200 + int((value / 65535) * 1800)
# Mengaktifkan buzzer
buzzer.freq(frequency)
buzzer.duty_u16(20000)
# LED sebagai indikator
if value > 32768:
led.on()
else:
led.off()
# Menampilkan nilai ke Shell Thonny
print("ADC:", value, "Frequency:", frequency)
sleep(0.05)
Penjelasan Program
1. Import Library
from machine import Pin, ADC, PWM
from time import sleep
Bagian ini mengimpor beberapa fungsi dari MicroPython.
- Pin digunakan untuk mengontrol GPIO.
- ADC digunakan membaca input analog.
- PWM digunakan menghasilkan sinyal PWM untuk buzzer.
- sleep digunakan memberikan jeda program.
2. Membaca ADC
adc = ADC(26)
Baris tersebut menentukan bahwa GP26 digunakan sebagai input ADC. Potensiometer yang terhubung ke GP26 akan menghasilkan nilai antara sekitar 0 → 65535. Nilai sebenarnya bergantung pada tegangan input yang diterima ADC.
3. Mengatur Buzzer
buzzer = PWM(Pin(14))
Kode tersebut membuat GP14 bekerja sebagai output PWM untuk buzzer. Kemudian buzzer.freq(frequency) digunakan untuk menentukan frekuensi suara.
4. Mengontrol LED
if value > 32768:
led.on()
else:
led.off()
Jika nilai ADC lebih besar dari setengah skala, LED akan menyala. Jika nilainya lebih rendah, LED akan mati.
5. Menampilkan Data
print("ADC:", value, "Frequency:", frequency)
Data akan ditampilkan pada Shell Thonny. Contohnya:
ADC: 12500 Frequency: 543
ADC: 21000 Frequency: 776
ADC: 42000 Frequency: 1353
Dengan demikian, kita dapat melihat perubahan input secara langsung.
Cara Menjalankan Program GhostBox
Langkah 1 — Hubungkan Raspberry Pi Pico
Hubungkan Raspberry Pi Pico ke komputer menggunakan kabel USB. Pastikan komputer dapat mengenali Pico dan Thonny IDE telah terhubung dengan interpreter MicroPython yang sesuai.
Langkah 2 — Buat Rangkaian
Pasang potensiometer, LED, resistor, dan buzzer pada breadboard sesuai wiring yang telah dijelaskan. Periksa kembali koneksi 3.3V dan GND sebelum memberikan daya.
Langkah 3 — Buka Thonny
Buka Thonny IDE, kemudian pilih interpreter MicroPython untuk Raspberry Pi Pico. Buat file baru dan masukkan program GhostBox.
Langkah 4 — Jalankan Program
Klik Run pada Thonny. Jika program berjalan dengan benar, Shell akan menampilkan nilai ADC dan frekuensi. Kemudian coba putar knob potensiometer. Seharusnya perubahan posisi potensiometer menyebabkan perubahan nada buzzer.
Tips Keamanan Saat Merakit
1. Gunakan Tegangan 3.3V
GPIO Raspberry Pi Pico bekerja pada level logika 3.3V. Hindari memberikan tegangan yang melebihi batas yang diperbolehkan pada GPIO.
2. Periksa Polaritas LED
LED memiliki kaki anoda dan katoda. Jika pemasangannya terbalik, LED biasanya tidak menyala.
3. Gunakan Resistor pada LED
Resistor 220–330 Ω dapat digunakan sebagai resistor pembatas arus untuk LED pada rangkaian sederhana.
4. Jangan Membebani GPIO
GPIO Raspberry Pi Pico digunakan untuk sinyal dan kontrol. Jika perangkat membutuhkan arus lebih besar, gunakan transistor, MOSFET, driver, atau rangkaian penguat yang sesuai.
Baca juga: Cara Membuat Ultrasonic Distance Meter dengan Raspberry Pi Pico dan HC-SR04
Dalam praktik, hasil dan kendala yang ditemui bisa berbeda tergantung perangkat, konfigurasi, versi library, dan sistem yang digunakan.
- Diskusi umum dan tanya jawab praktik: https://t.me/edukasielektronika
- Kendala spesifik dan kasus tertentu: http://bit.ly/Chatarduino






0 Komentar