Monday, April 6, 2026

Implementasi ESP32 sebagai Web Server Nirkabel

Implementasi ESP32 sebagai Web Server Nirkabel

Esensi dari Internet of Things adalah kemampuan perangkat untuk berinteraksi melalui jaringan. Pada modul ini, kita akan mengeksplorasi kapabilitas ESP32 dalam menjalankan protokol HTTP (Hypertext Transfer Protocol) untuk membuat antarmuka kendali berbasis web.

I. Konsep Dasar Web Server pada Mikrokontroler

Dalam arsitektur ini, ESP32 berfungsi sebagai Server yang menampung file HTML statis, sementara perangkat pengguna (Smartphone/PC) berfungsi sebagai Client. Komunikasi terjadi melalui pertukaran paket data pada port standar 80.

Dua Mode Wi-Fi ESP32:
  • Station Mode (STA): ESP32 terhubung ke router Wi-Fi yang sudah ada (seperti ponsel terhubung ke Wi-Fi rumah).
  • Access Point Mode (AP): ESP32 memancarkan sinyal Wi-Fi sendiri sehingga perangkat lain bisa terhubung langsung ke ESP32.

II. Implementasi Kode: Kendali LED via Browser

Program berikut akan menginstruksikan ESP32 untuk membuat server lokal. Pengguna dapat mengakses alamat IP ESP32 untuk menyalakan atau mematikan LED melalui tombol visual.

WebServerControl.ino
#include #include const char* ssid = "Wokwi-GUEST"; // SSID khusus simulator Wokwi const char* password = ""; WebServer server(80); const int ledPin = 2; // Fungsi untuk menangani tampilan utama (Root) void handleRoot() { String html = "

ESP32 Web Control

"; html += ""; html += ""; server.send(200, "text/html", html); } void setup() { Serial.begin(115200); pinMode(ledPin, OUTPUT); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println("\nIP Address: " + WiFi.localIP().toString()); server.on("/", handleRoot); server.on("/on", { digitalWrite(ledPin, HIGH); server.send(200, "text/html", "

LED NYALA

Kembali"); }); server.on("/off", { digitalWrite(ledPin, LOW); server.send(200, "text/html", "

LED MATI

Kembali"); }); server.begin(); } void loop() { server.handleClient(); // Menangani permintaan masuk dari browser }

III. Prosedur Pengujian di Wokwi

Langkah Operasional:
  1. Salin kode di atas ke editor Wokwi.
  2. Klik tombol Play. Perhatikan Serial Monitor hingga muncul alamat IP (biasanya 192.168.1.x).
  3. Pada Wokwi, Anda akan melihat simulasi "Virtual Browser". Masukkan alamat IP tersebut.
  4. Klik tombol pada layar browser virtual dan amati LED pada board ESP32.

IV. Analisis Keamanan dan Skalabilitas

Meskipun metode ini sangat efektif untuk kendali lokal, terdapat batasan keamanan karena data dikirimkan tanpa enkripsi (HTTP, bukan HTTPS). Untuk implementasi industri yang lebih luas, disarankan untuk menggunakan protokol MQTT (Message Queuing Telemetry Transport) yang akan kita bahas pada bab selanjutnya.

Penting: Pastikan perangkat kendali (HP) dan ESP32 berada dalam jaringan Wi-Fi yang sama (satu segmen IP), jika tidak, Client tidak akan dapat menemukan Server.

V. Tugas Pengembangan

Integrasikan materi sebelumnya dengan materi ini: Buatlah halaman web yang tidak hanya memiliki tombol kendali LED, tetapi juga menampilkan nilai sensor potensiometer secara otomatis saat halaman di-refresh.

No comments:

Post a Comment