● online
- Push Button Tactile Switch Saklar Tombol Tinggi - ....
- IIC I2C LCD 1602 16x2 2004 20x4 Backpack for LCD A....
- LCD 16x2 / 1602 Display Arduino Raspberry LCD 16 x....
- Kapton Tape Polymide Film 20mm Polimida 20 mm Isol....
- Tilt Sensor SW-520D Module Modul Sensor Kemiringan....
- Sensor Api Flame detector sensor....
- Kabel Jumper 20cm Dupont 20 cm Male to Male Pelang....
- RC Servo ARM Horn M3 Metal 25T MG995 MG946R MG996R....
- 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.
Bikin Alat Monitoring Konsumsi Listrik Rumah Secara Real-Time Berbasis ESP32
Sering kaget pas lihat tagihan listrik di akhir bulan mendadak membengkak? Masalah utamanya ada di kWh meter konvensional rumah kita. Alat tersebut cuma bisa menghitung total akumulasi penggunaan tanpa memberi tahu berapa watt daya yang sedang dipakai secara real-time, apalagi buat memutus arus secara otomatis dari jarak jauh. Nah, solusinya adalah membuat sendiri alat monitoring konsumsi listrik pintar berbasis IoT! Menggunakan kombinasi ESP32, modul sensor PZEM-004T, dan aplikasi Blynk, kita bisa memantau tegangan, arus, daya, hingga estimasi biaya listrik langsung dari smartphone secara real-time.

1. Kenapa ESP32 dan PZEM-004T Jadi Kombinasi Terbaik
Buat kamu yang pernah coba bikin pengukur listrik pakai kombinasi sensor arus ACS712 dan sensor tegangan ZMPT101B, pasti paham betapa rumitnya proses kalibrasi manualnya. Sensor sederhana seperti ACS712 dan ZMPT101B sangat rentan terhadap noise sinyal dan kurang stabil saat mengukur beban berdaya rendah.
Di sinilah modul PZEM-004T hadir sebagai solusi jauh lebih superior. Sensor ini sudah terkalibrasi langsung dari pabrik dan sanggup mengukur 6 parameter listrik AC sekaligus dengan sangat presisi, yaitu tegangan (Voltage), arus (Current), daya aktif (Power), total energi (kWh), frekuensi (Frequency), hingga faktor daya (Power Factor). Tingkat persentase error pengukurannya berada jauh di bawah batas toleransi ±5%, dengan tingkat error maksimum tercatat hanya sekitar 4,3%.
Kombinasi ini makin mantap saat disandingkan dengan mikrokontroler ESP32. Dibekali prosesor Xtensa dual-core yang kencang serta modul Wi-Fi dan Bluetooth bawaan, ESP32 sangat siap mengolah data sensor secara cepat lalu mengirimkannya langsung ke platform cloud IoT.
2. Alat dan Bahan
Berikut adalah daftar komponen hardware dan software yang kita butuhkan untuk merakit sistem monitoring daya listrik ini.
| Komponen | Jumlah | Keterangan |
| Modul ESP32 (ESP-WROOM-32) | 1 unit | Mikrokontroler utama dengan Wi-Fi untuk pemrosesan data |
| Sensor PZEM-004T 100A | 1 unit | Sensor pengukur tegangan, arus, daya, kWh, frekuensi, dan Power Factor |
| Transformatir Arus (CT Sensor Coil) | 1 unit | Ring CT bawaan PZEM-004T untuk mendeteksi arus beban |
| Layar LCD 16×2 dengan Modul I2C | 1 unit | Tampilan lokal parameter listrik (SDA di GPIO21, SCL di GPIO22) |
| Expansion Board ESP32 / Breadboard | 1 unit | Memudahkan wiring koneksi antar komponen |
| Modul Relay 5V DC | 1 unit | Sakelar otomatis untuk pemutus beban saat batas energi tercapai |
| Kabel Jumper Female-to-Female | Secukupnya | Koneksi antarmodul |
| Terminal & Steker Listrik AC | 1 set | Jalur input daya AC dan soket beban (Load) |
3. Skematik Rangkaian

Proses perakitan komponen harus dilakukan secara teliti. Berikut panduan langkah demi langkah koneksi antar pin komponen.
Koneksi Layar LCD 16×2 I2C ke ESP32
- Pin VCC LCD -> Pin 5V pada Expansion Board / ESP32
- Pin GND LCD -> Pin GND ESP32
- Pin SDA LCD -> Pin GPIO21 (D21) ESP32
- Pin SCL LCD -> Pin GPIO22 (D22) ESP32
Koneksi Modul PZEM-004T ke ESP32
- Pin VCC PZEM -> Pin 5V ESP32
- Pin GND PZEM -> Pin GND ESP32
- Pin RX PZEM -> Pin TX2 / GPIO17 (D17) ESP32
- Pin TX PZEM -> Pin RX2 / GPIO16 (D16) ESP32
Koneksi Modul Relay 5V DC ke ESP32
- Pin VCC Relay -> Pin 5V ESP32 / Expansion Board
- Pin GND Relay -> Pin GND ESP32
- Pin IN Relay -> Pin GPIO4 (D4) ESP32
Koneksi Listrik AC dan CT Sensor Coil
- Lewatkan salah satu kabel fasa (warna merah) dari steker menuju soket beban menembus bagian dalam lubang ring CT Sensor.
- Hubungkan kabel fasa ke terminal nomor 3 dan kabel netral ke terminal nomor 4 pada modul PZEM-004T agar sensor dapat mendeteksi tegangan AC jaringan listrik rumah.
Hindari Crash Guru Meditation Error Saat memrogram komunikasi serial pada ESP32, jangan sekali-kali menggunakan pin bawaan Serial1 (GPIO9 dan GPIO10). Berdasarkan dokumentasi resmi Espressif, pin GPIO9 dan GPIO10 terhubung langsung secara internal ke memori SPI Flash milik ESP32. Jika kita memaksakan penggunaan Serial1 pada pin tersebut, mikrokontroler akan langsung crash dan mengalami pengulangan reset berupa Guru Meditation Error (IllegalInstruction).
Sebagai solusinya, gunakan port UART2 (GPIO16/RX2 dan GPIO17/TX2) atau lakukan remapping pin ke GPIO aman seperti GPIO22 dan GPIO23. Jika kamu juga menggunakan layar SPI TFT dalam proyek ini, pastikan pin Chip Select (TFT_CS) dipindahkan dari GPIO17 ke GPIO14 agar tidak bentrok dengan jalur komunikasi UART.
4. Konfigurasi Dashboard Blynk dan Pemrograman
Untuk memantau data secara jarak jauh, kita memanfaatkan platform Blynk IoT. Langkah awalnya, buka platform Blynk di browser, masuk ke Developer Zone, lalu buat Template baru memilih device ESP32 dengan tipe koneksi Wi-Fi.
Selanjutnya, buat beberapa Datastream menggunakan Virtual Pin berikut:
- V0: Voltage / Tegangan (Volt)
- V1: Current / Arus (Ampere)
- V2: Power / Daya (Watt)
- V3: Total Energy / Energi (kWh)
- V4: Total Cost / Estimasi Biaya (Rupiah)
- V5: Frequency / Frekuensi (Hz)
- V6: Power Factor / Faktor Daya (cos φ)
- V10: Reset Data (Button Widget)
Selain memantau penggunaan daya secara real-time, proyek berbasis IoT seperti ini membuka peluang pengembangan sistem smart home yang lebih luas. Sobat bisa dengan mudah mengintegrasikannya dengan proyek otomasi lain, seperti bikin sistem keamanan pintu berbasis RFID dengan notifikasi Telegram untuk meningkatkan proteksi dan kenyamanan rumah pintar kamu.
Berikut adalah kode berbasis Arduino C++ yang sudah dilengkapi perhitungan estimasi biaya (V4) serta fungsi tombol reset energi (V10) untuk dikirim ke dashboard Blynk:
#define BLYNK_TEMPLATE_ID "YOUR_TEMPLATE_ID"
#define BLYNK_TEMPLATE_NAME "Smart Energy Meter"
#define BLYNK_AUTH_TOKEN "YOUR_AUTH_TOKEN"
#include <WiFi.h>
#include <BlynkSimpleEsp32.h>
#include <PZEM004Tv30.h>
// Konfigurasi koneksi Blynk dan WiFi
char auth[] = BLYNK_AUTH_TOKEN;
char ssid[] = "NamaWiFiKamu";
char pass[] = "PasswordWiFiKamu";
// Definisi pin relay
#define RELAY_PIN 4
// Tarif listrik per kWh (dapat disesuaikan)
float costPerKWh = 1444.70;
// Inisialisasi sensor PZEM004T V3.0 menggunakan UART2
// GPIO16 sebagai RX2 dan GPIO17 sebagai TX2
PZEM004Tv30 pzem(Serial2, 16, 17);
// Inisialisasi timer Blynk
BlynkTimer timer;
// Fungsi untuk membaca sensor dan mengirim data ke Blynk
void sendSensorData() {
float voltage = pzem.voltage();
float current = pzem.current();
float power = pzem.power();
float energy = pzem.energy();
float frequency = pzem.frequency();
float pf = pzem.pf();
// Periksa apakah pembacaan tegangan valid
if (!isnan(voltage)) {
float totalCost = energy * costPerKWh;
// Kirim data sensor ke Virtual Pin Blynk
Blynk.virtualWrite(V0, voltage);
Blynk.virtualWrite(V1, current);
Blynk.virtualWrite(V2, power);
Blynk.virtualWrite(V3, energy);
Blynk.virtualWrite(V4, totalCost);
Blynk.virtualWrite(V5, frequency);
Blynk.virtualWrite(V6, pf);
}
}
// Callback tombol reset energi melalui Virtual Pin V10
BLYNK_WRITE(V10) {
int pinValue = param.asInt();
if (pinValue == 1) {
pzem.resetEnergy();
Serial.println("Data energi kWh berhasil di-reset ke Nol!");
}
}
// Fungsi inisialisasi sistem
void setup() {
Serial.begin(115200);
// Konfigurasi relay
pinMode(RELAY_PIN, OUTPUT);
digitalWrite(RELAY_PIN, HIGH); // Relay aktif secara default
// Hubungkan ESP32 ke Blynk dan jaringan WiFi
Blynk.begin(auth, ssid, pass);
// Kirim data sensor setiap 2 detik
timer.setInterval(2000L, sendSensorData);
}
// Fungsi utama yang berjalan berulang
void loop() {
Blynk.run();
timer.run();
}

5. Pengujian Akurasi dan Troubleshooting

Setelah perakitan hardware dan pengunggahan kode selesai, kita bisa melakukan pengujian menggunakan berbagai beban listrik rumah tangga, seperti lampu LED, kipas angin, charger laptop, hingga magic com (rice cooker).
Membaca Indikator LED PZEM-004T Modul PZEM-004T dilengkapi dua indikator LED status untuk memudahkan pengujian:
- LED Atas: Akan berkedip secara kontinu saat modul berhasil mendeteksi adanya tegangan AC dari jaringan listrik.
- LED Bawah: Akan berkedip dengan cepat saat terjadi transmisi data UART aktif antara PZEM-004T dan ESP32. Jika LED bawah ini sama sekali tidak berkedip, segera periksa kembali pemasangan kabel jumper RX dan TX kamu karena kemungkinan posisinya tertukar.
Analisis Respon Relay dan Efisiensi Daya Dengan fitur Energy Limit pada sistem ini, kita dapat menentukan batas harian konsumsi kWh melalui Blynk. Saat batas energi tercapai, ESP32 akan memerintahkan modul relay 5V untuk memutus aliran listrik ke beban.
Secara mekanis, relay Songle 5V memiliki operate time sekitar 10 ms dan release time 5 ms. Namun, hasil pengujian sistem IoT secara keseluruhan menunjukkan rentang waktu respon pemutusan sebesar 0,2 hingga 1,3 detik (paling lambat sekitar 1,396 detik pada pengujian energy limit). Waktu tunda ini bukan disebabkan oleh kelemahan mekanis sakelar, melainkan akumulasi dari jeda pemrosesan data oleh ESP32 serta latensi lalu lintas jaringan Wi-Fi ke platform IoT. Karena itu, ketersediaan sinyal Wi-Fi yang stabil sangat memengaruhi kecepatan eksekusi pemutusan beban.
Pengujian membuktikan bahwa penerapan pembatasan energi ini sangat efektif dalam mengendalikan pemborosan daya, berhasil meningkatkan efisiensi penggunaan listrik hingga 31,01% pada beban lampu LED dan 30,83% pada beban kipas angin.
Bagi kamu yang membutuhkan acuan detail teknis mengenai spesifikasi pinout mikrokontroler, kamu bisa membaca lembar panduan resmi di Espressif ESP32 Datasheet.
6. Kesimpulan
Membangun alat monitoring konsumsi listrik berbasis ESP32 dan sensor PZEM-004T terbukti memberikan tingkat akurasi pengukuran parameter listrik yang sangat presisi dengan persentase error di bawah 5%. Lewat integrasi platform Blynk IoT, kita tidak hanya bisa memantau konsumsi daya rumah secara real-time dari mana saja, tetapi juga mampu mengendalikan penggunaan listrik secara aktif untuk menghemat biaya harian secara efektif. Selamat mencoba perakitan proyek DIY kamu sendiri di rumah!
Bikin Alat Monitoring Konsumsi Listrik Rumah Secara Real-Time Berbasis ESP32
Semangat pagi semua, kali ini kita akan belajar mengenai penggunaan LCD pada Arduino tanpa module I2C. Kenapa perlu belajar... selengkapnya
Hallo kali ini saya akan membahas mengenai relay lagi yaitu relay 2 channel. Di pasaran, relay ini sudah menggunakan... selengkapnya
LDR merupakan sebuah resistor yang nilai resistansinya dapat berubah-ubah sesuai dengan cahaya di sekelilingnya. Untuk pemanfaatan sensor ini sudah... selengkapnya
Android checkbox adalah tipe dari button yang ada di android. Tipe checkbox ini terdiri dari checked or unchecked. Fungsi... selengkapnya
Sensor TDS meter adalah perangkat elektronika yang digunakan untuk mengukur partikel terlarut dalam air, partikel terlarut termasuk zat organik... selengkapnya
Sensor ultrasonik merupakan sensor yang menggunakan gelombang ultrasonik. Gelombang ultrasonik yaitu gelombang yang umum digunakan untuk mendeteksi keberadaan suatu benda... selengkapnya
Pada artikel kali ini saya akan membahas penggunaan sensor DHT11, dimana sensor ini fungsinya untuk mengukur suhu dan kelembaban... selengkapnya
Kebocoran gas LPG di dapur sering kali tidak kita sadari sampai baunya menyengat atau bahkan saat sudah terlambat. Kondisi ini... selengkapnya
Oke kali ini kita akan membahas salah satu board wifi yaitu kakak dari NodeMcu yang memiliki fungsi lebih +... selengkapnya
Ada beberapa jenis view di Android dan kali ini yang kita akan bahas adalah ListView. ListView adalah view yang... selengkapnya
Specifications: 1. supports sampling costs (KHz): 8/11.025/12/16/22.05/24/32/44.1/48 2. 24-bit DAC output, dynamic range aid: 90dB, SNR aid: 85dB 3. fully… selengkapnya
Rp 17.800Penurun tegangan DC-DC ekonomis yang bisa distel tegangan output nya. Cocok untuk pemasangan variasi mobil dan sepeda motor, dijadikan charger… selengkapnya
Rp 9.000Kabel Jumper Dupont Pelangi 10 cm male to male 1 lembar = 40 kabel
Rp 13.000MERK : TOWER PRO MG995 180 derajat Specifications Weight: 55 g Dimension: 40.7 x 19.7 x 42.9 mm approx. Stall… selengkapnya
Rp 36.300Compatibility: USB v2.0 standard Interface: Network: USB Series: RS-485 Port: an independent RS-485 Connector: Network: USB type A connector Series:… selengkapnya
Rp 38.800TILT SENSOR adalah sensor untuk mendeteksi sudut kemiringan / derajat, dimana cara kerja sensor ini adalah dengan menggunakan 2 buah… selengkapnya
Rp 9.800Kabel jumper Dupont untuk jumper Arduino atau Raspeberry Pi 20 cm Female to female 1 lembar = 40 kabel
Rp 11.300Specifications: Operating voltage: DC3-5V Operating current: less than 20mA Sensor Type: Analog Detection Area: 40mmx16mm Production process: FR4 double-sided HASL… selengkapnya
Rp 3.000Spesifikasi: 20mm Kapton Tape Polymide Film Gold High Temp isolasi Tahan Panas Harga Tertera: 1 Roll Kapton Tape Polymide Film… selengkapnya
Rp 219.000Item Deskripsi : This module performance is stable, measure the distance accurately. performance nearly the same as SRF05, SRF02 SRF05,… selengkapnya
Rp 13.900Bikin Alat Monitoring Konsumsi Listrik Rumah Secara Real-Time Berbasis ESP32
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 Sistem Keamanan Pintu Berbasis RFID dengan Notifikasi Telegram
-
Rancang Sistem Penyiram Tanaman Otomatis Berbasis ESP32 dengan Monitoring Smartphone
-
Cara Bikin Sistem Monitoring Getaran Gempa dan Stabilitas Kemiringan Pakai ESP32 dan MPU 6050

Saat ini belum tersedia komentar.