Web Server merupakan layanan yang berfungsi sebagai penerima permintaan yang di kirimkan melalui browser, kemudian memberikan tanggapan permintaan dalam bentuk halaman situs web (webpage) atau lebih umumnya dalam dokumen HTML. Saat mengambil halaman website, browser akan mengirimkan permintaan ke alamat server yang di tuju, kemudian HTTP request akan di kirimkan ke web server lalu diproses. Setelah itu web server mengirimkan HTTP Respon ke browser dan memprosesnya menjadi halaman situs web. Salah satu contoh pengaplikasian web server yaitu di gunakan untuk mengontrol perangkat IoT seperti kontrol LED web server.
[lwptoc numeration=”none” title=”Daftar Isi”] |
Kontrol LED WebServer NodeMCU ESP8266
NodeMCU ESP8266 adalah board elektronik yang memiliki kemampuan sebagai mikrokontroler sekaligus memiliki koneksi internet melalui jaringan wireless yang memungkinkannya di jadikan board monitoring dalam berbagai proyek IoT
1. Skema Rangkaian
Gambar rangkaian Kontrol LED
2. Alat / Bahan
- NodeMCU ESP8266 : 1 buah
- Breadboard : 1 buah
- LED : 3 buah
Baca Juga Tutorial Mengendalikan Nyala Lampu dengan Telegram
3. Sketch Program
/* Program Kontrol LED Web Server dibuat oleh Indobot */ #include <ESP8266WiFi.h> //Pendeklarasian Library #include <ESP8266WebServer.h> #define LED1 16 // Pemilihan Pin D0 #define LED2 5 // Pemilihan Pin D1 #define LED3 4 // Pemilihan Pin D2 const char* ssid = "Indobot"; // Nama SSID AP/Hotspot const char* password = "123456789"; // Password Wifi ESP8266WebServer server(80); //Menyatakan Webserver pada port 80 String webpage; void setup() { //Pengaturan Pin Serial.begin(115200); delay(10); pinMode(LED1, OUTPUT); pinMode(LED2, OUTPUT); pinMode(LED3, OUTPUT); // Connect ke WiFi Serial.println(); Serial.print("Configuring access point..."); // Mengatur WiFi WiFi.mode(WIFI_AP); // Mode Station WiFi.begin(ssid, password); // Mencocokan SSID dan Password // Print status Connect Serial.println("IP address: "); Serial.println(WiFi.softAPIP()); // Isi dari Webpage webpage += "Web Control LED ESP8266</h1>"; webpage += "<wp-p>LED 1 : "; webpage += "<a href=\"LED1ON\"\"><button>ON</button></a><a href=\"LED1OFF\"\"><button>OFF</button></a></wp-p><wp-br>"; webpage += "<wp-p>LED 2 : "; webpage += "<a href=\"LED2ON\"\"><button>ON</button></a><a href=\"LED2OFF\"\"><button>OFF</button></a></wp-p><wp-br>"; webpage += "<wp-p>LED 3 : "; webpage += "<a href=\"LED3ON\"\"><button>ON</button></a><a href=\"LED3OFF\"\"><button>OFF</button></a></wp-p>"; // Membuat file webpage server.on("/", []() { server.send(200, "text/html", webpage); }); // Bagian ini untuk merespon perintah yang masuk server.on("/LED1ON", []() { server.send(200, "text/html", webpage); digitalWrite(LED1, HIGH); delay(1000); }); server.on("/LED2ON", []() { server.send(200, "text/html", webpage); digitalWrite(LED2, HIGH); delay(1000); }); server.on("/LED3ON", []() { server.send(200, "text/html", webpage); digitalWrite(LED3, HIGH); delay(1000); }); server.on("/LED1OFF", []() { server.send(200, "text/html", webpage); digitalWrite(LED1, LOW); delay(1000); }); server.on("/LED2OFF", []() { server.send(200, "text/html", webpage); digitalWrite(LED2, LOW); delay(1000); }); server.on("/LED3OFF", []() { server.send(200, "text/html", webpage); digitalWrite(LED3, LOW); delay(1000); }); server.begin(); Serial.println("Server dijalankan"); } void loop() { //Perulangan Program server.handleClient(); }
Cek terminal serial untuk mendapatkan IP
Gambar terminal serial
Masukkan IP tersebut ke web browser, kemudian akan muncul tampilan kontrol LED seperti ini :
Kesimpulan :
Dalam project ini NodeMCU ESP8266 berfungsi sebagai sebuah web server yang di gunakan untuk mengontrol LED. Cara kerjanya dengan memanfaatkan NodeMCU sebagai web server, kita dapat memanggil sebuah halaman webpage yang bisa di gunakan untuk menghidupkan dan mematikan LED yang kita pilih.
Jangan lupa tetap upgrade skill kamu di Indobot Academy. Kamu bisa mendapatkan berbagai tutorial project. Selanjutnya tutorial bisa kamu terapkan di dalam kehidupan sehari-hari. Tak hanya itu, Indobot sudah menyediakan semua source coding yang di butuhkan. Sehingga kamu hanya cukup membuka satu website saja. Oleh karena itu penting untuk mempelajari hal itu.
Mau belajar elektronika dasar? Arduino? atau Internet of Things? Ikuti kursus online Indobot Academy!