● online
- Raspberry Pi 4 Model B 8GB Original UK E14 Raspi 4....
- Kabel Jumper 20cm Dupont 20 cm Female to Female Pe....
- Modul Sensor Tegangan AC Bolak balik 220V Listrik ....
- ADS1115 16 Bit I2C Module ADC 4 channel with Pro G....
- LM2596 Module Step Down DC-DC Ultra compact in 3-4....
- LM35DZ Sensor Suhu - LM35....
- 10mm Kapton Tape Polymide Film Gold High Temp isol....
- 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.
Jaga Kualitas Udara Kamar Tetap Sehat Pakai ESP32 dan Sensor MQ-135
Halo, Sobat Makers! Pernah nggak sih ngerasa pusing atau pengap pas lagi asyik nyolder project atau eksperimen kimia di kamar/lab? Seringkali kita nggak sadar kalau asap timah atau bahan kimia yang kita pakai itu bikin kualitas udara menurun drastis. Nah, biar paru-paru tetap aman dan produktivitas nggak terganggu, penting banget buat punya sistem monitoring kualitas udara ESP32 di ruangan kita. Sambil nyiapin alatnya, jangan lupa intip juga cara bikin kipas angin pintar sendiri pakai arduino dan algoritma pid biar ruangan makin adem buat referensi tambahan sistem pendingin ruangan kamu.
Kenalan Sama Sistem Monitoring Udara Pintar

Project kali ini bukan sekadar alat pemantau (monitoring) pasif yang cuma kasih info di layar, tapi sudah naik level ke fungsi kontrol (controlling). Konsepnya adalah sebuah sistem tertutup yang mendeteksi polutan dan langsung bertindak secara otomatis jika udara sudah dianggap “Toxic”.
Otak dari sistem ini adalah ESP32. Kita sengaja pilih mikrokontroler ini karena fiturnya yang gahar: dual-core Xtensa LX6. Dengan bantuan FreeRTOS (Real-Time Operating System), kita bisa membagi tugas secara paralel tanpa latency atau bottleneck. Bayangin aja, satu core fokus ngurusin sensor dan kipas secara real-time, sementara core satunya sibuk “ngobrol” sama internet via WiFi/MQTT. Hasilnya? Performa sistem jadi seamless dan nggak ada istilah lag pas kirim data ke cloud.
Alat dan Bahan
Berikut adalah komponen yang kamu butuhkan untuk merakit sistem ini sesuai dengan spesifikasi teknis:
| Komponen | Jumlah | Keterangan |
| ESP32 38-pin | 1 | Mikrokontroler utama (Dual-core 240 MHz) |
| Sensor MQ-135 | 1 | Pendeteksi gas (NH3, NOx, Alkohol, Benzena, CO2, Asap) |
| Sensor DHT11 | 1 | Pengukur suhu dan kelembaban ruangan |
| OLED SSD1306 0.96″ | 1 | Layar I2C untuk menampilkan data lokal |
| Relay 1-Channel 5V | 1 | Saklar elektronik dengan isolasi galvanik (Optocoupler) |
| Kipas DC 5V | 1 | Aktuator exhaust fan untuk membuang polutan |
| Resistor 10kΩ & 20kΩ | @1 | Komponen Voltage Divider (Wajib!) |
| LED (4 Warna) | 4 | Hijau, Kuning, Merah (Status), Biru (Jaringan) |
| Buzzer Aktif | 1 | Alarm audio 5V untuk kondisi udara buruk |
Skematik Rangkaian

Pastikan pemasangan kabel kamu rapi dan teliti ya, Sobat. Berikut panduan pinout-nya:
- OLED SSD1306: SDA (GPIO 21), SCL (GPIO 22).
- Sensor DHT11: DATA (GPIO 4).
- Sensor MQ-135: AOUT ke Voltage Divider, lalu ke GPIO 34 (ADC1).
- Relay Kipas: GPIO 13.
- Indikator Visual: Hijau (GPIO 25), Kuning (GPIO 26), Merah (GPIO 27), Biru (GPIO 33).
- Buzzer: GPIO 14.
PRO-TIP: JANGAN “MASAK” ESP32 KAMU! Sensor MQ-135 bekerja pada tegangan 5V dan mengeluarkan output analog hingga 5V juga. Padahal, pin ADC ESP32 cuma toleran maksimal 3.3V. Kamu wajib pasang resistor 10kΩ (R1) dan 20kΩ (R2) sebagai voltage divider untuk menurunkan 5V menjadi sekitar 3.33V. Salah sedikit di sini, pin ADC kamu bisa rusak permanen! Cek detailnya di datasheet MQ-135 untuk memahami kurva sensitivitasnya.
Logika dan Cara Kerja Sistem
Sistem ini dirancang dengan logika yang ketat agar tidak terjadi false alarm. Berikut tahapannya:
- Warmup Phase (30 Detik): Sensor MQ-135 punya heater internal yang butuh waktu buat stabil. Selama 30 detik pertama, sistem akan memblokir semua pembacaan sensor agar data nggak ngaco. OLED akan menampilkan countdown untuk memberitahu kamu kapan sistem siap.
- Division of Labor (Dual-Core):
- Core 0 (Physical/Local): Tugasnya berat di lapangan. Dia yang baca DHT11 & MQ-135, ngitung persentase polutan, update layar OLED, dan ngontrol Relay/Buzzer.
- Core 1 (Virtual/Cloud): Fokus urusan komunikasi. Dia yang jaga koneksi WiFi, konek ke broker MQTT, dan publish data JSON.
- Indikator Jaringan (Blue LED):
- Berkedip (300ms): Lagi usaha cari sinyal WiFi/MQTT.
- Statis Menyala: Mantap, sudah online dan data terkirim!
- Mati: Koneksi gagal atau putus.
- Threshold & Respons Aktuator:
- Kondisi Baik (ADC < 1000): LED Hijau ON. Udara segar!
- Kondisi Sedang (ADC 1000-2000): LED Kuning ON. Ada polusi tipis-tipis.
- Kondisi Buruk (ADC > 2000): LED Merah ON, Buzzer bunyi beep pattern 200ms, dan Relay Kipas Exhaust aktif otomatis.

Pemrograman dan Dashboard IoT
Kita menggunakan Arduino IDE dengan bantuan library FreeRTOS. Satu hal yang krusial di sini adalah penggunaan Mutex. Karena dua core mengakses data sensor yang sama secara bergantian, Mutex berfungsi mencegah “Race Condition” (tabrakan data) yang bisa bikin ESP32 kamu crash.
// Contoh inisialisasi task FreeRTOS pada ESP32
void setup() {
// Membuat Mutex untuk mencegah konflik akses data antar-core
dataMutex = xSemaphoreCreateMutex();
// Task sensor dan kontrol berjalan pada Core 0
xTaskCreatePinnedToCore(
taskSensor,
"SensorTask",
4096,
NULL,
1,
NULL,
0
);
// Task WiFi dan MQTT berjalan pada Core 1
xTaskCreatePinnedToCore(
taskMQTT,
"MQTTTask",
4096,
NULL,
1,
NULL,
1
);
}
Untuk tampilan lokal, layar OLED akan menampilkan 6 baris info secara detail: Header, Suhu, Kelembaban, Indeks Polusi, Status Udara/Kipas, dan Status MQTT.
Sementara untuk monitoring jarak jauh, kita menggunakan protokol MQTT via broker HiveMQ. Data dikirim dalam format JSON yang kemudian dibaca oleh Web Dashboard. Dashboard ini dibuat menggunakan MQTT.js dan Chart.js supaya tampilannya pro, lengkap dengan animasi kipas yang berputar kalau status di ruangan kamu lagi “Buruk”.
Pengujian dengan Miniatur Rumah
Biar makin realistis, sistem ini diuji dalam miniatur rumah berukuran 30x20x20 cm. Sensor diletakkan di sudut ruangan untuk mendeteksi akumulasi gas, sementara kipas dipasang di dinding sebagai exhaust fan.
Catatan Kalibrasi: Karena ada voltage divider, nilai ADC yang terbaca pasti bergeser. Tips buat kamu: setelah masa warmup 30 detik selesai, cek Serial Monitor di kondisi udara bersih. Jadikan angka tersebut sebagai baseline untuk menentukan threshold (1000/2000) yang paling pas dengan kondisi sensor kamu masing-masing.
Kesimpulan
Bikin sistem monitoring kualitas udara ESP32 itu bukan cuma soal hobi, tapi soal keamanan kerja. Dengan membagi tugas via dual-core, sistem tetap responsif menyalakan kipas saat udara buruk meski WiFi lagi reconnecting. Ruangan jadi lebih aman, sirkulasi udara terjaga, dan kamu pun bisa lanjut berkarya dengan tenang. Yuk, langsung dicoba rakit!
Jaga Kualitas Udara Kamar Tetap Sehat Pakai ESP32 dan Sensor MQ-135
Salah satu proyek pertama yang sering dilakukan oleh pemula dalam dunia Raspberry Pi adalah menyalakan LED. Meskipun terlihat sederhana, proyek... selengkapnya
Pernahkah Anda melihat katalog busana muslimah ataupun lainnya, lalu ada objek orang yang sama dengan mengunakan baju berwarna tetapi... selengkapnya
Hallo pada artikel kali ini, saya akan memberikan cara menampilkan teks pada LCD dengan NodeMCU. Bagi anda yang sudah... selengkapnya
Pernahkah Anda melihat suatu objek foto diatas air, lalu di atas air ada pantulan dari objek foto tersebut, nah... selengkapnya
Motor jadi salah satu komponen elektronik yang seru buat kita pelajari, dengan motor kita bahkan bisa buat mobil mainan yang... selengkapnya
Sudah pernah menyalakan LED menggunakan Python? Atau membaca input dari tombol? Di proyek kali ini, kamu akan menggabungkan dua fungsi... selengkapnya
Sedikit kembali ke awal pembelajaran, pembahasan kali ini diperuntukan untuk anda yang masih bingung untuk belajar Arduino dari mana.... selengkapnya
Bagi anda yang belum tau cara menggunakan LED pada NodeMCU, pada artikel ini akan di bahas cara-caranya. Sebelum melangkah... selengkapnya
Motor DC menjadi salah satu komponen yang sering digunakan dalam proyek berbasis Raspberry Pi, seperti robot sederhana, kendaraan mini, maupun... selengkapnya
Pernah nggak sih kamu lagi asik-asiknya nugas atau belajar pas sore hari, eh tiba-tiba cahaya ruangan jadi redup gara-gara cuaca... selengkapnya
Kabel Jumper Dupont Pelangi 30cm female to Female 1 lembar = 40 kabel
Rp 13.500Spesifikasi : – 16×2 – Warna Biru – Tegangan kerja : 5v Digunakan untuk keperluan display project seperti Arduino, Raspberry,… selengkapnya
Rp 17.000Mini Solderless Breadboard 400 Tie Points adalah breadboard 400 titik lubang, dengan ukuran yang compact sangat cocok untuk anda yang… selengkapnya
Rp 7.800Harga untuk 10pcs Resistance: 1K Ohm Wattage Rating: 0.25 Watt Tolerance: 1% Metal Film
Rp 1.500MERK : TOWER PRO MG995 180 derajat Specifications Weight: 55 g Dimension: 40.7 x 19.7 x 42.9 mm approx. Stall… selengkapnya
Rp 36.30012A 300W DC Buck Step Down Converter CC CV Driver LED charge Battery Spesifikasi: Input Voltage: 5-40V Output Voltage: 1.2-35V… selengkapnya
Rp 39.400Deskripsi Produk “LED Dot Matrix Display dengan 32×8 pixel, berwarna Merah, menggunakan IC MAX7219 sebagai driver dan dapat dikoneksikan ke… selengkapnya
Rp 47.500TILT SENSOR adalah sensor untuk mendeteksi sudut kemiringan / derajat, dimana cara kerja sensor ini adalah dengan menggunakan 2 buah… selengkapnya
Rp 9.800Features: It is of high power density, high efficiency, high-reliability, small size and lightweight. It can isolate unsteady single-way voltage… selengkapnya
Rp 18.500Jaga Kualitas Udara Kamar Tetap Sehat Pakai ESP32 dan Sensor MQ-135
Kategori
Artikel Terkait
-
Cara Bikin Sistem Monitoring Getaran Gempa dan Stabilitas Kemiringan Pakai ESP32 dan MPU 6050
-
Cara Bikin Sistem Monitoring Kelembapan Tanah Berbasis Arduino Uno dan Sensor YL69
-
Bikin Sistem Monitor Volume Air Tandon Otomatis Pakai Arduino Uno dan Sensor Ultrasonik
-
Cara Bikin Kipas Angin Otomatis Berbasis Suhu Pakai Arduino Uno dan Sensor LM35
-
Bikin Smart Medicine Box Otomatis Pakai Arduino Nano dan Sensor Suhu DHT11

Saat ini belum tersedia komentar.