Aplikasi Monitoring Suhu & Kelembaban IoT – Versi Lengkap (PHP + MySQL + ESP8266/ESP32)
Developer: Annas Technology Pratama
Deskripsi Umum
Aplikasi ini merupakan sistem monitoring dan kontrol berbasis IoT yang berfungsi untuk memantau suhu dan kelembaban ruangan secara real-time, serta mengatur relay (otomatis/manual) menggunakan jadwal atau mode auto control.
Cocok digunakan untuk ruang server, rumah sakit, laboratorium, gudang, ruang penyimpanan makanan, rumah kaca, dan sistem hidroponik.
Aplikasi ini dibangun menggunakan PHP Native + MySQL, serta terintegrasi dengan perangkat ESP8266/ESP32 melalui komunikasi API Key dan JSON Request, sehingga mudah dikembangkan maupun disesuaikan dengan berbagai kebutuhan IoT.
FITUR-FITUR UTAMA
1. Manajemen API Key
Setiap perangkat IoT (ESP8266/ESP32) mendapatkan API Key unik.
API Key hanya dapat digunakan satu kali untuk satu device (keamanan tinggi).
Status penggunaan API Key otomatis berubah menjadi used ketika sudah terhubung ke device.
Dapat membuat, menonaktifkan, dan menghapus API Key langsung dari dashboard admin.
2. Manajemen Device
Tambah, edit, dan hapus device dengan data lengkap:
Nama device
Serial number
Jenis board (ESP8266, ESP32, dll.)
Status aktif/nonaktif
Mode kontrol: Manual / Auto
Jadwal aktif yang dipilih (schedule_id)
Status online/offline otomatis diperbarui berdasarkan heartbeat ESP.
Kolom last_seen mencatat waktu terakhir device terhubung ke server.
Device dapat dikontrol langsung melalui web (toggle relay ON/OFF secara manual).
3. Kontrol Relay Multi Channel (hingga 4 Relay)
Setiap perangkat mendukung 4 channel relay.
Nama relay, pin GPIO, dan status ON/OFF tersimpan di tabel relay_status.
Mode kontrol ganda:
Manual: dikontrol langsung dari web admin.
Otomatis (Auto): berdasarkan jadwal atau sensor.
Status relay tersinkronisasi dengan perangkat secara real-time melalui polling API.
4. Penjadwalan Otomatis (Schedules)
Membuat dan mengelola jadwal aktif untuk setiap relay.
Mendukung hingga 3 slot waktu ON/OFF per hari.
Setiap relay memiliki pengaturan:
Hari aktif (0–6, Minggu–Sabtu)
Jam ON/OFF 1, 2, dan 3
Status aktif/nonaktif jadwal
Jadwal disimpan dalam dua tabel terstruktur:
schedules – Master jadwal
schedule_details – Detail setiap relay di jadwal tersebut
Device otomatis menyesuaikan aksi berdasarkan jadwal terpilih (schedule_id).
5. Monitoring Sensor Data
Pembacaan data suhu dan kelembaban disimpan secara real-time ke tabel sensor_data.
Data diambil dari sensor DHT11/DHT22 pada ESP8266/ESP32.
Fitur meliputi:
Grafik suhu dan kelembaban dari waktu ke waktu.
Data historis dengan timestamp akurat.
Fitur filter data berdasarkan tanggal/device.
Data dapat digunakan untuk analisis tren atau pengambilan keputusan otomatis.
6. Manajemen User
Sistem login aman menggunakan password_hash (bcrypt).
Admin dapat menambahkan beberapa pengguna.
Setiap user memiliki:
Nama lengkap
Alamat
Nomor telepon
Cocok untuk sistem multi-user seperti teknisi, operator, atau pemilik ruangan.
7. Profil Pemilik (Owner Profile)
Menyimpan identitas perusahaan/pemilik sistem:
Nama pemilik
Alamat
Nomor telepon
Foto profil/logo perusahaan
Informasi ini ditampilkan di halaman utama dashboard.
8. Dashboard Real-time
Menampilkan:
Daftar semua device aktif
Status online/offline
Suhu & kelembaban terbaru
Status relay per device
Informasi profil pemilik
Dapat dikembangkan dengan grafik (Chart.js atau Recharts).
9. Keamanan & Integritas Data
Relasi antar tabel menggunakan foreign key dengan cascade update/delete.
Setiap aksi device atau sensor terekam dengan timestamp otomatis.
API Key unik mencegah koneksi ilegal.
Status command relay memiliki flag is_command_pending untuk memastikan sinkronisasi dengan perangkat.
Teknologi yang Digunakan
Backend: PHP 8.2 (Native)
Database: MySQL/MariaDB
Frontend: Bootstrap 5 + jQuery + AJAX
IoT Device: ESP8266 / ESP32
Sensor: DHT11 / DHT22
Communication: HTTP REST API (JSON)
Server: XAMPP / Apache
Kelebihan Produk
Full source code siap pakai (server + firmware)
Sudah terintegrasi dengan ESP8266/ESP32
Real-time monitoring & control
Database relasional dengan integritas tinggi
Tampilan web responsif & ringan
Mudah dikembangkan (open architecture)
Cocok untuk proyek IoT komersial atau edukasi
Cocok Digunakan Untuk
Monitoring suhu & kelembaban rumah sakit, laboratorium, gudang