Tutorial ESP32 32/55 - Peringatan Jarak Mundur Mobil dengan LCD dan buzzer | Kit Pembelajaran IoT SunFounder
Dalam tutorial ini, kita akan membuat sistem bantuan mundur menggunakan mikrokontroler ESP32, sensor jarak ultrasonik, layar LCD, dan buzzer. Proyek ini akan memberi tahu Anda jarak dari rintangan saat mundur, dengan frekuensi bunyi buzzer yang berubah berdasarkan seberapa dekat rintangan tersebut. Anda akan belajar cara merangkai komponen, menulis kode, dan memahami fungsionalitas sistem agar bekerja efektif untuk kendaraan Anda.
Saat kita mengimplementasikan proyek ini, ESP32 akan menangani pembacaan sensor dan mengontrol buzzer serta layar LCD. Sensor ultrasonik akan mengukur jarak ke rintangan apa pun, sementara buzzer akan memberikan umpan balik audio berdasarkan jarak tersebut. LCD akan menampilkan jarak yang diukur, memungkinkan Anda melihat pembacaan secara real-time. Untuk pemahaman yang lebih jelas tentang pengaturannya, pastikan untuk menonton video (di video pada 00:00).
Penjelasan Perangkat Keras
Komponen utama dalam proyek ini termasuk mikrokontroler ESP32, sensor jarak ultrasonik, layar LCD, dan buzzer. ESP32 adalah mikrokontroler yang kuat dengan kemampuan Wi-Fi dan Bluetooth bawaan, menjadikannya ideal untuk proyek IoT. Sensor ultrasonik mengukur jarak dengan memancarkan gelombang suara dan menghitung waktu yang dibutuhkan untuk gema kembali. LCD akan menampilkan jarak yang diukur, sementara buzzer memberikan peringatan audio berdasarkan kedekatan.
Setiap komponen memainkan peran penting dalam memastikan bantuan mundur berfungsi dengan benar. Memahami bagaimana bagian-bagian ini bekerja bersama akan membantu Anda memecahkan masalah apa pun yang mungkin timbul selama proses pembuatan. Proyek ini memanfaatkan kekuatan pemrosesan ESP32 untuk mengelola data sensor dan mengontrol keluaran secara efektif.
Detail Datasheet
| Produsen | Espressif Systems |
|---|---|
| Nomor bagian | ESP32 |
| Tegangan logika/IO | 3,3 V |
| Tegangan suplai | 5 V (maks) |
| Arus keluaran (per saluran) | 40 mA |
| Arus puncak (per saluran) | 160 mA |
| Panduan frekuensi PWM | 1 kHz - 40 kHz |
| Ambang logika masukan | 0,3 VCC (rendah), 0,7 VCC (tinggi) |
| Penurunan tegangan / RDS(on) / saturasi | 0,2 V (khas) |
| Batas termal | Suhu operasi: -40°C hingga 85°C |
| Kemasan | QFN48 |
| Catatan / varian | Berbagai modul ESP32 tersedia |
- Pastikan suplai daya yang tepat untuk menghindari kerusakan.
- Gunakan resistor dengan buzzer untuk membatasi arus.
- Jaga kabel sinyal tetap pendek untuk mengurangi interferensi.
- Gunakan resistor pull-up jika perlu untuk input digital.
- Berhati-hatilah dengan jangkauan maksimum sensor ultrasonik.
Instruksi Perangkaian

Untuk merangkai komponen proyek, mulailah dengan menghubungkan sensor ultrasonik. Hubungkan pin VCC sensor ke jalur daya 5V dan pin GND ke ground. Pin Trig harus dihubungkan ke pin 26 pada ESP32, dan pin Echo harus dihubungkan ke pin 25.
Selanjutnya, rangkai buzzer dengan menghubungkan kabel positifnya ke pin 14 pada ESP32 dan kabel negatif ke ground. Untuk LCD, hubungkan pin VCC ke jalur 5V dan pin GND ke ground. Pin SDA dan SCL dari LCD harus dihubungkan ke pin 21 dan 22, masing-masing. Pastikan semua koneksi aman untuk menghindari putusnya koneksi selama pengoperasian.
Contoh Kode & Panduan
Dalam kode, Anda akan menemukan pengidentifikasi kunci seperti distance, yang menyimpan jarak terukur dari sensor ultrasonik. Variabel ini diperbarui terus-menerus dalam loop untuk mencerminkan jarak saat ini. Pin buzzer didefinisikan sebagai buzzerPin, memungkinkan kontrol mudah atas statusnya.
const int triggerPin = 26; // Pin trigger untuk sensor ultrasonik
const int echoPin = 25; // Pin echo untuk sensor ultrasonik
const int buzzerPin = 14; // Pin buzzer
Konstanta ini didefinisikan di awal kode untuk kejelasan dan kemudahan penyesuaian. Pin trigger dan echo digunakan untuk berkomunikasi dengan sensor ultrasonik, sementara pin buzzer mengontrol keluaran suara.
void setup() {
pinMode(triggerPin, OUTPUT); // Atur pin trigger sebagai output
pinMode(echoPin, INPUT); // Atur pin echo sebagai input
pinMode(buzzerPin, OUTPUT); // Atur pin buzzer sebagai output
}
Dalam fungsi setup(), kita mengonfigurasi mode pin untuk sensor ultrasonik dan buzzer. Ini memastikan bahwa ESP32 dapat berinteraksi dengan benar dengan komponen perangkat keras selama pengoperasian.
void loop() {
distance = readDistance(); // Panggil fungsi untuk membaca jarak
if (distance <= 10) {
beep(100); // Bunyi cepat untuk jarak dekat
} else if (distance <= 20) {
beep(500); // Bunyi sedang untuk jarak moderat
} else {
beep(2000); // Bunyi lambat untuk jarak aman
}
}
Fungsi loop() secara terus-menerus membaca jarak dan menyesuaikan frekuensi bunyi buzzer berdasarkan nilainya. Fungsi beep() dipanggil dengan interval yang berbeda tergantung pada seberapa dekat halangan tersebut.
Demonstrasi / Apa yang Diharapkan
Setelah semuanya terhubung dan kode diunggah, Anda dapat mengharapkan sistem berbunyi pada interval yang berbeda berdasarkan jarak ke halangan. Ketika jarak kurang dari 10 cm, buzzer akan berbunyi dengan cepat, sedangkan jarak lebih dari 50 cm akan menghasilkan bunyi yang lambat. Pastikan untuk menguji sistem dengan meletakkan tangan Anda di depan sensor ultrasonik untuk melihat perubahan pembacaan jarak dan tingkat bunyi yang sesuai (dalam video pada 12:30).
Stempel Waktu Video
- 00:00 Mulai
- 2:08 Pengenalan dan dokumentasi
- 4:12 Penjelasan Kabel
- 13:17 Kode Arduino
- 21:01 Memilih Papan ESP32 dan Port COM di Arduino IDE
- 22:48 Demo di laboratorium
- 24:54 Demo di mobil
Common Course Links
Common Course Files
Hal-hal yang mungkin Anda butuhkan
-
AmazonPurchase LCD1602-I2C from Amazonamzn.to
-
eBayPurchase LCD1602-I2C from eBayebay.us
-
AliExpressPurchase 10pcs LCD1602-I2C from AliExpresss.click.aliexpress.com
-
AliExpressPurchase LCD1602-I2C from AliExpresss.click.aliexpress.com
Sumber daya & referensi
-
DokumentasiESP32 Tutorial 32/55- SunFounder doc page for reversing aiddocs.sunfounder.com
Berkas📁
File Fritzing
-
LCD2004-I2C
LCD2004-I2C.fzpz0.02 MB