● online
- 10X RESISTOR 1K 1KOHM 1/4W 1% METAL FILM....
- Motor servo MG996R TowerPro Metal Gear....
- Kabel Jumper 10cm Dupont Pelangi 10 cm Female to M....
- Max7219 Led Dot Matrix 32x8 Display Module For Ard....
- PWM DC 10A Motor 12V-40V Pulse Width Modulation Sp....
- Modul Sensor Tegangan AC Bolak balik 220V Listrik ....
- TP5100 4.2v 8.4v 1S 2S Single / Double Cell Lithiu....
- IIC I2C LCD 1602 16x2 2004 20x4 Backpack for LCD 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.
Pantau Tandon Air Gak Pake Ribet dengan ESP32 dan Sensor Water Level
Sobat Maker, pernah nggak sih lagi asik-asiknya mandi tiba-tiba air di tandon habis? Atau sebaliknya, tandon malah meluap sampai air terbuang percuma gara-gara kita lupa mematikan keran? Masalah klasik di rumah tangga ini memang bikin repot, belum lagi pemborosan listrik dan air yang bikin kantong jebol.

Nah, daripada harus bolak-balik naik ke atap buat cek tandon secara manual, lebih baik kita buat sistem monitoring air real-time berbasis ESP32. Mirip-mirip kalau kamu bikin sendiri alat pendeteksi hujan pakai Arduino Uno biar nggak kaget pas jemuran basah, alat ini juga bikin hidup Teman-teman makin praktis karena kondisi air bisa dipantau langsung lewat layar LCD maupun secara jarak jauh lewat IoT.
Alat dan Bahan
Untuk memulai proyek ini, Teman-teman perlu menyiapkan beberapa komponen berikut. Semuanya cukup mudah ditemukan di toko komponen elektronik atau marketplace:
| Komponen | Jumlah | Keterangan |
| ESP32 DevKit V1 | 1 | Mikrokontroler utama dengan Wi-Fi terintegrasi |
| Sensor Water Level | 1 | Sensor analog untuk mendeteksi ketinggian air |
| LCD 20×4 I2C | 1 | Layar untuk menampilkan data secara lokal |
| LED (Merah, Kuning, Hijau) | @1 | Indikator visual status ketinggian air |
| Buzzer | 1 | Alarm peringatan suara (Active Buzzer) |
| Kabel Jumper | Secukupnya | Kabel penghubung antar komponen |
Skematik Rangkaian
Menyusun rangkaian ini cukup mudah kalau kita teliti melihat pinout-nya. Berikut adalah panduan koneksi antar komponen ke ESP32:
- Sensor Water Level: Hubungkan pin Signal (S) sensor ke GPIO 34. Pin ini kita pilih karena merupakan kanal ADC yang stabil.
- LCD 20×4 (I2C): Berbeda dengan Arduino yang punya pin I2C tetap, di ESP32 kita bisa definisikan sendiri. Hubungkan pin SDA ke GPIO 33 dan pin SCL ke GPIO 32.
- Indikator LED:
- LED Hijau ke GPIO 25.
- LED Kuning ke GPIO 26.
- LED Merah ke GPIO 27.
- Buzzer: Hubungkan kaki positif (+) buzzer ke GPIO 14.
Pastikan semua kabel GND (Ground) terhubung menjadi satu agar aliran listrik stabil dan tidak ada noise yang mengganggu pembacaan sensor.
Cara Kerja Sistem

Sistem ini bekerja dengan memanfaatkan sifat konduktivitas air. Pada sensor water level, terdapat jalur tembaga (trace) yang sejajar. Saat air menyentuh sensor, resistansinya berubah sehingga menghasilkan tegangan analog yang dibaca oleh ESP32.
Ada dua rahasia teknis agar alat ini akurat dan stabil:
- Kalibrasi ADC yang Presisi: Walaupun ADC ESP32 punya resolusi 12-bit (0-4095), pada praktiknya sensor ini sudah dianggap “penuh” sebelum mencapai nilai maksimal. Berdasarkan kode program, kita mengkalibrasi nilai 98 sebagai kondisi kering (0%) dan 2209 sebagai kondisi terendam penuh (100%).
- Moving Average (Noise Reduction): Agar angka di LCD tidak “loncat-loncat” atau flicker, program akan melakukan pembacaan sensor sebanyak 10 kali dengan jeda sangat singkat, lalu mengambil nilai rata-ratanya. Ini penting banget supaya sistem nggak bingung saat permukaan air sedikit bergoyang.
Pemrograman dan IoT

Sistem ini menggunakan protokol MQTT untuk mengirim data ke broker HiveMQ. Buat kamu yang ingin memahami lebih jauh cara kerja MQTT dalam komunikasi IoT, kamu bisa melihat dokumentasi MQTT dari HiveMQ sebagai referensi tambahan. Data yang dikirim dikemas dalam format JSON (JavaScript Object Notation) yang ringan dan mudah dibaca oleh berbagai platform dashboard maupun aplikasi smartphone.
Berikut adalah logika utama pengolahan datanya :
// Proses perataan nilai sensor dengan 10x sampling
int adc = bacaSensor();
// Konversi nilai ADC berdasarkan kalibrasi menjadi persentase
int level = map(adc, 98, 2209, 0, 100);
level = constrain(level, 0, 100);
// Menyiapkan data untuk dikirim melalui MQTT dalam format JSON
StaticJsonDocument<200> doc;
doc["level"] = level;
doc["adc"] = adc;
doc["status"] = currentStatus;
// Mengubah data JSON menjadi teks
char buffer[256];
serializeJson(doc, buffer);
// Mengirim data ke topic MQTT
mqtt.publish("waterlevel/sensor", buffer);
Poin Penting Program:
- Fungsi
map(): Mengubah rentang kalibrasi (98-2209) menjadi persentase manusiawi (0-100%). - Non-blocking Logic: Penggunaan
millis()memastikan indikator LED dan buzzer tetap berjalan lancar tanpa mengganggu pengiriman data IoT.
Indikator Kondisi Air

Untuk memudahkan pemantauan, kita membagi kondisi air menjadi tiga kategori utama yang tampil di LCD dan indikator fisik:
- Kering (0-39%): Air sudah mulai tipis. LED Hijau akan menyala, dan Buzzer akan berbunyi pendek setiap 2 detik sebagai pengingat lembut agar Sobat Maker segera mengisi tandon.
- Normal (40-89%): Kondisi aman dan ideal. LED Kuning akan berkedip lambat (600ms) dan Buzzer berbunyi dengan irama pelan.
- Penuh (90-100%): Waspada luapan! LED Merah akan berkedip cepat (100ms) dan Buzzer akan berbunyi kencang dengan irama cepat sebagai alarm tanda pengisian harus segera dihentikan.
Kesimpulan
Dengan proyek monitoring water level berbasis ESP32 ini, Sobat Maker nggak perlu lagi khawatir soal drama air tandon habis pas lagi asik mandi. Selain mencegah pemborosan air, proyek ini adalah langkah awal yang seru buat belajar IoT secara mendalam.
Bagi Teman-teman yang ingin eksplorasi lebih jauh, kalian bisa menambahkan modul Relay untuk membuat kontrol pompa otomatis. Jadi, pas status “Kering”, pompa nyala sendiri, dan pas “Penuh”, pompa mati otomatis. Keren, kan? Selamat mencoba dan semangat berkarya!
Pantau Tandon Air Gak Pake Ribet dengan ESP32 dan Sensor Water Level
UI (User Interface) dan UX (User Experience) dalam sebuah pengembangan website dan aplikasi sangat penting dan saling berkaitan. Tetapi... selengkapnya
Oke kali ini saatnya kita mulai running ke mesin CNC router engaraving langsung. Sebelumnya apakah anda sudah mempersiapkan bahan-bahanya?... selengkapnya
MP3 DFPlayer merupakan sebuah modul elektronik yang berfungsi untuk memainkan sebuah suara yang filenya berketensi MP3. Seperti memutar sebuah... selengkapnya
Ada beberapa jenis view di Android dan kali ini yang kita akan bahas adalah ListView. ListView adalah view yang... selengkapnya
Potensiometer merupakan sebuah resistor yang nilainya dapat kita atur sesuai keinginan. Bagaimana cara mengaturnya? nah potensiometer memiliki 3... selengkapnya
Halo Sobat Maker! Kamu lagi cari proyek mekatronika dan IoT yang seru, praktis, dan kepake banget di dunia nyata? Membuat... selengkapnya
Alarm sangat diperlukan untuk keamanan tertentu, misalnya pada rumah, toko, maupun yang berupa barang-barang berharga lainnya dari pencuri. Tentunya... selengkapnya
Setelah kemarin-kemarin sudah sering membahas board esp8266 dengan jenis NodeMCU. Kali ini kita belajar dengan jenis lain yaitu ESP-01,... selengkapnya
Pernah gak sih motor kamu mendadak “loyo” pas dikasih beban? Atau mungkin kamu lagi eksperimen bikin robot, tapi kecepatan motornya... selengkapnya
Sensor PIR (HC-SR501) digunakan untuk mendeteksi pergerakan yang ada di depannya. Sensor PIR (HC-SR501) terbuat dari bahan pyroelectric yang... selengkapnya
Kabel Jumper Dupont Pelangi 30cm female to Female 1 lembar = 40 kabel
Rp 13.500Spesifikasi : – 16×2 – Warna Biru – Tegangan kerja : 5v – Sudah include module I2C Backpack dan tersolder… selengkapnya
Rp 30.000Modul sensor tegangan AC bolak balik 1 fasa ini menggunakan optocoupler sehingga tegangan input (AC) tidak akan mengganggu/membahayakan tegangan output… selengkapnya
Rp 21.000Kabel jumper 20 cm merk Dupont untuk Arduino Female to male 1 lembar = 40 kabel
Rp 11.300Support terus UKM indonesia dengan membeli produk-produk dalam negeri. Untuk kualitas tidak usah diragukan, udah kita tes QC dengan sangat… selengkapnya
Rp 8.500Spesifikasi: 50mm Kapton Tape Polymide Film Gold High Temp isolasi Tahan Panas Harga Tertera: 1 Roll Kapton Tape Polymide Film… selengkapnya
Rp 75.000Buruan dibeli gan….barang murah-berkualitas SIAPA CEPAT DIA DAPAT Spesifikasi: LCD 1602 / 16×2 (16 karakter, 2 baris) merek QAPASS (cek… selengkapnya
Rp 24.500Spesifikasi: 20mm Kapton Tape Polymide Film Gold High Temp isolasi Tahan Panas Harga Tertera: 1 Roll Kapton Tape Polymide Film… selengkapnya
Rp 219.0002000W SCR Electronic Voltage Regulator Speed Controller Dimmer Thermostat Aplikasi : Kontrol temperature heater, kontrol kecepatan fan/bor tangan/gurinda tangan, kompor… selengkapnya
Rp 19.500Kabel jumper Dupont untuk jumper Arduino atau Raspberry Pi 20 cm Male to Male 1 lembar = 40 kabel
Rp 11.300Pantau Tandon Air Gak Pake Ribet dengan ESP32 dan Sensor Water Level
Kategori
Artikel Terkait
-
Bikin Sistem Parkir Otomatis dengan Penghitung Kendaraan dan Indikator Slot Kosong
-
Rancang Sistem Pendeteksi Kebakaran dengan Kipas Otomatis dan Alarm Peringatan
-
Bikin Alat Monitoring Konsumsi Listrik Rumah Secara Real-Time Berbasis ESP32
-
Bikin Sistem Keamanan Pintu Berbasis RFID dengan Notifikasi Telegram
-
Rancang Sistem Penyiram Tanaman Otomatis Berbasis ESP32 dengan Monitoring Smartphone

Saat ini belum tersedia komentar.