Ultrasonic Distance Meter adalah project sederhana untuk mengukur jarak suatu objek menggunakan sensor ultrasonik HC-SR04 dan Raspberry Pi Pico. Project ini cocok untuk pemula yang ingin mempelajari cara menggunakan sensor dengan mikrokontroler serta membaca hasil pengukuran melalui program. Berbeda dengan alat ukur jarak yang menggunakan LCD atau OLED, project ini dibuat lebih sederhana. Hasil pengukuran jarak akan ditampilkan langsung pada Thonny IDE melalui Shell. Dengan begitu, kita tidak membutuhkan LCD/OLED sebagai komponen tambahan. Pada project ini, Raspberry Pi Pico akan membaca waktu yang diperlukan gelombang ultrasonik untuk memantul kembali dari suatu objek. Waktu tersebut kemudian digunakan untuk menghitung jarak objek dari sensor. Output akhir project adalah pembacaan jarak dalam satuan sentimeter yang tampil secara real-time pada Thonny IDE. Contohnya:
Jarak: 25.43 cm
Jarak: 25.61 cm
Jarak: 25.38 cm
Jarak: 25.55 cm
Apa Itu Ultrasonic Distance Meter?
Ultrasonic Distance Meter merupakan sistem pengukur jarak yang menggunakan gelombang ultrasonik untuk mengetahui jarak antara sensor dan objek. Pada project ini digunakan HC-SR04, yaitu sensor ultrasonik yang memiliki dua bagian utama:
- Transmitter untuk mengirim gelombang ultrasonik.
- Receiver untuk menerima gelombang pantulan.
Sensor akan mengirimkan gelombang ultrasonik ke arah objek. Ketika gelombang mengenai objek, sebagian gelombang akan dipantulkan kembali menuju sensor. Raspberry Pi Pico kemudian menghitung waktu perjalanan gelombang tersebut untuk memperkirakan jaraknya.
Cara Kerja HC-SR04
HC-SR04 bekerja dengan memanfaatkan gelombang ultrasonik untuk mengukur jarak suatu objek. Raspberry Pi Pico terlebih dahulu mengirimkan sinyal trigger ke sensor HC-SR04. Setelah menerima sinyal tersebut, HC-SR04 memancarkan gelombang ultrasonik yang kemudian mengenai objek di depannya dan dipantulkan kembali menuju sensor. HC-SR04 akan menerima gelombang pantulan tersebut melalui pin Echo, lalu Raspberry Pi Pico menghitung waktu yang dibutuhkan gelombang untuk pergi dan kembali. Berdasarkan waktu tersebut, Raspberry Pi Pico menghitung jarak antara sensor dan objek, kemudian menampilkan hasil pengukuran pada Thonny IDE.
Komponen yang Dibutuhkan
Untuk membuat project Ultrasonic Distance Meter Raspberry Pi Pico, komponen yang diperlukan relatif sedikit.
Catatan penting: Pin Echo pada HC-SR04 umumnya menghasilkan sinyal hingga sekitar 5 V, sedangkan GPIO Raspberry Pi Pico bekerja pada 3,3 V. Karena itu, gunakan pembagi tegangan pada jalur Echo sebelum menghubungkannya ke GPIO Pico.
Wiring HC-SR04 ke Raspberry Pi Pico
Berikut contoh koneksi yang digunakan:
Untuk jalur Echo, salah satu contoh pembagi tegangan dapat menggunakan:
- R1 = 1 kΩ
- R2 = 2 kΩ
Pembagi tegangan tersebut menurunkan tegangan sinyal Echo sehingga lebih sesuai untuk input GPIO Raspberry Pi Pico. Jangan menghubungkan pin Echo HC-SR04 5 V secara langsung ke GPIO Raspberry Pi Pico.
Persiapan Raspberry Pi Pico
Sebelum membuat program, pastikan Raspberry Pi Pico sudah dapat digunakan dengan MicroPython.
1. Hubungkan Raspberry Pi Pico ke komputer menggunakan kabel USB.
2. Selanjutnya buka Thonny IDE.
3. Pada bagian interpreter, pilih interpreter MicroPython yang sesuai dengan Raspberry Pi Pico.
4. Setelah terhubung, Thonny biasanya akan menampilkan Shell seperti:
MicroPython ...
>>>
Jika tanda >>> muncul, berarti Raspberry Pi Pico sudah siap menerima perintah MicroPython.
Kode Program
Berikut kode MicroPython yang dapat digunakan untuk membaca sensor HC-SR04 dan menampilkan hasilnya pada Thonny Shell.
from machine import Pin, time_pulse_us
import time
# Pin HC-SR04
trigger = Pin(3, Pin.OUT)
echo = Pin(2, Pin.IN)
def ukur_jarak():
# Pastikan trigger LOW
trigger.low()
time.sleep_us(2)
# Kirim pulsa HIGH selama 10 mikrodetik
trigger.high()
time.sleep_us(10)
trigger.low()
# Mengukur durasi pulsa Echo
durasi = time_pulse_us(echo, 1, 30000)
# Jika tidak mendapatkan pantulan
if durasi < 0:
return None
# Menghitung jarak dalam cm
jarak = (durasi * 0.0343) / 2
return jarak
while True:
jarak = ukur_jarak()
if jarak is not None:
print("Jarak: {:.2f} cm".format(jarak))
else:
print("Jarak tidak terdeteksi")
time.sleep(0.5)
Penjelasan Kode Program
1. Mengimpor Library
Program dimulai dengan:
from machine import Pin, time_pulse_us
import time
Pin digunakan untuk mengatur GPIO Raspberry Pi Pico. Sedangkan time_pulse_us() digunakan untuk mengukur durasi pulsa dalam satuan mikrodetik. Library time digunakan untuk memberikan jeda pada program.
2. Menentukan Pin Trigger dan Echo
trigger = Pin(3, Pin.OUT)
echo = Pin(2, Pin.IN)
Pada contoh ini:
- GP3 digunakan sebagai Trigger.
- GP2 digunakan sebagai Echo.
Pin tersebut dapat diubah sesuai wiring, tetapi nomor GPIO pada kode harus disesuaikan dengan koneksi fisiknya.
3. Mengirim Sinyal Trigger
Bagian berikut digunakan untuk memberikan perintah kepada HC-SR04 agar mengirim gelombang ultrasonik.
trigger.low()
time.sleep_us(2)
trigger.high()
time.sleep_us(10)
trigger.low()
Sensor menerima pulsa Trigger selama sekitar 10 mikrodetik. Setelah itu, HC-SR04 mengirimkan gelombang ultrasonik dan menunggu pantulannya.
4. Membaca Sinyal Echo
Program kemudian mengukur durasi sinyal Echo:
durasi = time_pulse_us(echo, 1, 30000)
Nilai tersebut menunjukkan berapa lama sinyal Echo berada dalam kondisi HIGH. Semakin jauh objek dari sensor, semakin lama waktu yang dibutuhkan gelombang untuk pergi dan kembali.
5. Menghitung Jarak
Setelah mendapatkan waktu perjalanan gelombang, program menghitung jarak:
jarak = (durasi * 0.0343) / 2
Angka 0,0343 cm/µs merupakan pendekatan kecepatan suara di udara.
Mengapa Hasil Pengukuran Dibagi 2?
HC-SR04 mengukur waktu yang dibutuhkan gelombang ultrasonik untuk bergerak dari sensor menuju objek dan kembali lagi ke sensor. Artinya, waktu yang diperoleh merupakan waktu perjalanan pulang-pergi, sedangkan jarak yang ingin diketahui hanya jarak antara sensor dan objek. Oleh karena itu, hasil perhitungan perlu dibagi 2 agar diperoleh jarak sebenarnya dari sensor ke objek.
Rumus yang digunakan adalah:
Jarak = (Waktu × Kecepatan Suara) / 2
6. Menampilkan Hasil di Thonny
Pada bagian utama program terdapat:
print("Jarak: {:.2f} cm".format(jarak))
Perintah print() membuat hasil pengukuran muncul di Shell Thonny IDE. Jika objek berada sekitar 20 cm dari sensor, misalnya hasil yang muncul:
Jarak: 20.31 cm
Jarak: 20.27 cm
Jarak: 20.35 cm
Jarak: 20.30 cm
Nilai dapat berubah sedikit karena kondisi lingkungan dan karakteristik sensor.
Langkah-langkah Membuat Ultrasonic Distance Meter
Langkah 1 - Siapkan Komponen
Siapkan:
- Raspberry Pi Pico
- HC-SR04
- Breadboard
- Resistor 1,5 kΩ
- Resistor 2,7 kΩ
- Kabel jumper
- Kabel USB
Pastikan seluruh komponen dalam kondisi baik.
Langkah 2 - Pasang HC-SR04
Tempatkan sensor HC-SR04 pada breadboard. Perhatikan empat pin yang tersedia:
- VCC
- TRIG
- ECHO
- GND
Langkah 3 - Hubungkan VCC dan GND
Hubungkan:
- HC-SR04 VCC → VBUS/5V Pico
- HC-SR04 GND → GND Pico
Pastikan sumber tegangan sesuai dengan modul HC-SR04 yang digunakan.
Langkah 4 - Hubungkan Trigger
Hubungkan:
- HC-SR04 TRIG → GP3 Pico
- GP3 digunakan sebagai output untuk mengirim sinyal Trigger.
Langkah 5 - Hubungkan Echo
Hubungkan pin Echo HC-SR04 ke GP2 Raspberry Pi Pico melalui pembagi tegangan. Pembagi tegangan dapat dibuat menggunakan resistor 1,5 kΩ dan 2,7 kΩ, dengan resistor 1,5 kΩ dipasang dari pin Echo menuju GP2, sedangkan resistor 2,7 kΩ dipasang dari GP2 menuju GND. Pembagi tegangan ini digunakan untuk menurunkan level tegangan dari pin Echo sebelum masuk ke GPIO Raspberry Pi Pico, sehingga membantu menjaga tegangan yang diterima pin GPIO tetap berada pada level yang aman.
Langkah 6 - Hubungkan Pico ke Komputer
Gunakan kabel USB untuk menghubungkan Raspberry Pi Pico dengan komputer. Kemudian buka Thonny IDE.
Langkah 7 - Masukkan Program
Salin kode MicroPython ke editor Thonny. Pastikan nomor GPIO pada program sesuai dengan wiring.
Langkah 8 - Jalankan Program
Klik Run pada Thonny. Jika rangkaian dan program benar, hasil pengukuran akan muncul pada bagian Shell. Contohnya:Jarak: 15.42 cm
Jarak: 15.47 cm
Jarak: 15.39 cm
Jarak: 15.45 cm
Langkah 9 - Uji dengan Objek
Letakkan benda di depan sensor HC-SR04. Kemudian ubah jaraknya.
Misalnya:
- Objek dekat → nilai jarak kecil
- Objek jauh → nilai jarak lebih besar
Coba lakukan pengujian pada beberapa jarak untuk memastikan sensor bekerja dengan baik.
Troubleshooting
1. Hasil Selalu Jarak Tidak Terdeteksi
Jika Shell terus menampilkan "Jarak tidak terdeteksi" periksa beberapa hal berikut:
- Pastikan VCC HC-SR04 terhubung dengan benar.
- Pastikan GND terhubung.
- Periksa koneksi TRIG.
- Periksa koneksi ECHO.
- Periksa kembali pembagi tegangan.
- Pastikan nomor GPIO pada kode sesuai dengan wiring.
2. Nilai Jarak Tidak Stabil
Jika hasil berubah-ubah cukup banyak, pastikan objek berada pada posisi yang relatif tegak terhadap sensor. Selain itu, sensor ultrasonik memang dapat menghasilkan sedikit variasi pembacaan. Untuk mendapatkan hasil yang lebih stabil, program dapat dikembangkan menggunakan beberapa kali pembacaan kemudian mengambil nilai rata-rata.
3. Nilai Jarak Tidak Sesuai
Periksa kembali wiring dan posisi objek. Pastikan juga tidak ada benda lain yang berada terlalu dekat dengan sensor dan ikut memantulkan gelombang ultrasonik.
Kelebihan Project Ultrasonic Distance Meter
Project ini memiliki beberapa kelebihan untuk pembelajaran Raspberry Pi Pico:
- Rangkaian relatif sederhana.
- Tidak membutuhkan motor.
- Tidak membutuhkan motor driver.
- Tidak membutuhkan chassis robot.
- Tidak membutuhkan Bluetooth.
- Hasil dapat langsung dilihat di Thonny.
- Cocok untuk belajar sensor.
- Dapat dikembangkan menjadi project yang lebih kompleks.
Selain itu, project ini memperkenalkan konsep penting seperti GPIO input/output, sensor ultrasonik, timing, perhitungan jarak, dan MicroPython.
Baca juga: GhostBox pada Raspberry Pi Pico: Cara Membuat Proyek Pembaca Sinyal Audio Sederhana
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