Program upgrade skill di bidang engineering, dari dasar hingga mahir.
Program khusus melalui platform mitra resmi dokter mekanik academy seperti Udemy, Prakerja, dan Kampus Merdeka.
Sertifikasi BNSP
Pilih pelatihan dan sertifikasi Nasional BNSP di bidang engineering, rekayasa, manufaktur, dan subsetnya
Lihat SemuaSertifikasi Internasional
Pilih pelatihan dan sertifikasi Internasional di bidang engineering, rekayasa, manufaktur, dan subsetnya
Lihat Semua
Temukan inspirasi dari hasil karya dan pengalaman para alumni dr. Mekanik Academy.
dr. Mekanik Academy tersedia di berbagai platform mitra resmi untuk memudahkan akses pelatihan Anda.
Jelajahi produk dan layanan lainnya dari ekosistem dr. Mekanik untuk solusi bisnis yang komprehensif.
Membantu kamu belajar, berkarya, dan membuat proyek engineering secara instan dan presisi!
Oleh: Muhammad Arya Ismail
Pada perkembangan teknologi saat ini salah satunya adalah sistem monitoring terdapat banyak jenis sistem monitoring salah satunya adalah sistem monitoring suhu dan kelembaban, monitoring suhu dan kelembaban merupakan alat yang digunakan untuk mendeteksi suhu serta kelembaban pada sebuah ruangan dengan menggunakan web server. Dengan menggunakan web server kita dapat memonitoring suhu serta kelembaban ruangan atau rumah kita dari handphone.
Web server adalah sebuah software (perangkat lunak) yang memberikan layanan berupa data. Berfungsi untuk menerima permintaan HTTP atau HTTPS dari klien atau kita kenal dengan web browser (Chrome, Firefox). Selanjutnya ia akan mengirimkan respon atas permintaan tersebut kepada client dalam bentuk halaman web.
Seperti yang sudah dijelaskan di atas bahwa teknologi yang satu ini berfungsi menerima permintaan HTTP atau HTTPS dari klien atau kita kenal dengan web browser (Chrome, Firefox). Ia juga akan mengirimkan respon atas permintaan kepada client dalam bentuk halaman web yang umumnya HTML.Jika berbicara secara detail, maka Web Server memiliki peran dalam memproses berbagai data yang diminta oleh klien (web browser). Kemudian ia memberikan hasil atau jawaban berupa dokumen, video, foto, atau beragam bentuk berkas lainnya.
Adapun kita pecah menjadi beberapa bagian fungsi dari web server:
Protokol HTTP dan HTTPS digunakan web server untuk dapat berkomunikasi dengan klien. Dengan protokol HTTP dan HTTPS, komunikasi antar server dengan klien dapat saling terhubung serta dapat dimengerti dengan mudah.
adapun program yang saya gunakan sebagai berikut :
Program
#include <WiFi.h>
#include <WebServer.h>
#include "DHT.h"
const char* ssid = "tempathotspot";
const char* password = "123456789";
const int DHT_PIN = 4; // Pin data sensor DHT11
const int RELAY_PIN = 2; // Pin relay yang terhubungdengan LED
DHT dht(DHT_PIN, DHT11);
WebServerserver(80);
void handleRoot();
void handleData();
void setup() {
Serial.begin(115200);
pinMode(RELAY_PIN, OUTPUT);
digitalWrite(RELAY_PIN, LOW); // LED matisaatawal program dijalankan
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(1000);
Serial.println("KoneksiWiFi...");
}
Serial.println("KoneksiWiFiberhasil!");
Serial.println(WiFi.localIP());
dht.begin();
server.on("/", handleRoot);
server.on("/data", handleData); // Endpoint baruuntuk data real-time
server.begin();
}
void loop() {
server.handleClient();
float temperature = dht.readTemperature();
if (temperature > 30) {
digitalWrite(RELAY_PIN, HIGH); // LED menyalajikasuhu>= 31°C
} else if (temperature <= 30) {
digitalWrite(RELAY_PIN, LOW); // LED matijikasuhu< 30°C
}
}
void handleRoot() {
String webpage = "<html><body>";
webpage += "<h1>Monitoring Suhu dan Kelembaban</h1>";
webpage += "<p id='temperature'>Suhu: </p>";
webpage += "<p id='humidity'>Kelembaban: </p>";
webpage += "<script>";
webpage += "setInterval(function() {";
webpage += "fetch('/data').then(response =>response.json()).then(data => {";
webpage += "document.getElementById('temperature').innerHTML = 'Suhu: ' + data.temperature + ' °C';";
webpage += "document.getElementById('humidity').innerHTML = 'Kelembaban: ' + data.humidity + ' %';";
webpage += "});";
webpage += "}, 2000);"; // Update setiap 2 detik
webpage += "</script>"; // Added the missing closing tag
webpage += "</body></html>";
server.send(200, "text/html", webpage);
}
void handleData() {
float temperature = dht.readTemperature();
float humidity = dht.readHumidity();
String json = "{"temperature": " + String(temperature) + ", "humidity": " + String(humidity) + "}";
server.send(200, "application/json", json);
}
0 Orang Menyukai Karya Ini