Buka Senin - Jumat jam 08.30 s/d jam 16.30 , Sabtu Jam 8.30 s/d jam 13.00 , Minggu tutup
  • 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.
Beranda » Blog » NodeMCU, Monitoring Suhu dan Kelembaban DHT11 pada Web Server

NodeMCU, Monitoring Suhu dan Kelembaban DHT11 pada Web Server

Diposting pada 13 June 2019 oleh farhan / Dilihat: 4.148 kali / Kategori:

 

Pemanfaatan sebuah sensor bisa dijadikan berbagai fungsi, nah kali ini kita akan belajar untuk memonitoring sensor menggunakan WIFI yang kemudian hasilnya akan ditampilkan pada Web Server. Nantinya kita tinggal memasukkan alamat IP pada Web (bisa pada PC maupun HP android) dan hasil sensornya otomatis akan tampil. Sensor yang akan digunakan yaitu DHT11 yang merupakan sensor yang berfungsi untuk mendeteksi suhu dan kelembaban udara.

Oke berikut bahan-bahan yang dibutuhkan :

  • NodeMCU V3, BELI
  • Sensor DHT11, BELI
  • Kabel jumper female to female, BELI
  • Library sensor DHT11, download.

Rangkaian

Keterangan :

  • pin DATA/IN dihubungkan ke pin D1
  • pin VCC dihubungkan ke pin 3.3V
  • pin GND dihubungkan ke GND

Catatan :

Sensor DHT11 mempunyai banyak versi yang letak/konfigurasi pinnya berbeda. Jadi pastikan konfigurasinya sesuai ya, dan tidak terbalik.

Sketch Program

#include <ESP8266WiFi.h>
#include "DHT.h"

#define DHTTYPE DHT11

const char* ssid = "ganti nama wifi";
const char* password = "ganti password wifi";

WiFiServer server(80);

#define DHTPin D1
DHT dht(DHTPin, DHTTYPE);

void setup() {
  Serial.begin(9600);
  delay(20);
  dht.begin();

  Serial.println();
  Serial.print("Menghubungkan ke WIFI... ");
  Serial.println(ssid);

  WiFi.begin(ssid, password);

  while (WiFi.status() != WL_CONNECTED){ 
    delay(300);
    Serial.print(".");
  }
  Serial.println("");
  Serial.println("WiFi terkoneksi");

  server.begin();
  Serial.println("Koneksi Server dimulai");

  Serial.print("Alamat IP : ");
  Serial.print("http://");
  Serial.print(WiFi.localIP());
  Serial.println("/");
}

void loop() {
  WiFiClient client = server.available();
  if (!client) {
    return;
  }

  Serial.println("Koneksi baru");
  while (!client.available())
  {
    delay(5);
  }

  if (client) {

    boolean blank_line = true;
    while (client.connected()) {
      if (client.available()) {
        char c = client.read();

        if (c == '\n' && blank_line) {
          float h = dht.readHumidity();
          float t = dht.readTemperature();
          float f = dht.readTemperature(true);
          if (isnan(h) || isnan(t) || isnan(f)) {
            Serial.println("Failed to read from DHT sensor!");
          }
          else {
            Serial.print("Kelembaban : ");
            Serial.print(h);
            Serial.println("%");

            Serial.print("Suhu : ");
            Serial.print(t);
            Serial.print(" *C ");
            Serial.println(f);
          }
     
          client.println("HTTP/1.1 200 OK");
          client.println("Content-Type: text/html");
          client.println("Connection: close");
          client.println();

          client.println("<!DOCTYPE HTML>");
          client.println("<html>");
          client.println("<head></head><body><h2>Monitoring Sensor DHT11</h2><h3>Suhu Celcius : ");
          client.println(t);
          client.println("*C</h3><h3>Suhu Fahrenheit : ");
          client.println(f);
          client.println("*F</h3><h3>Kelembaban : ");
          client.println(h);
          client.println("%</h3><h3>");
          client.println("</body></html>");
          break;
        }
        if (c == '\n') {
          blank_line = true;
        }
        else if (c != '\r') {
          blank_line = false;
        }
      }
    }
    delay(5);
  }
}

Yang perlu diperhatikan pada sketch program :

  • const char* ssid = “ganti nama wifi”;
    silahkan ganti nama wifi anda.
  • const char* password = “ganti password wifi”;
    silahkan ganti sesuai dengan password wifi anda.
  • #define DHTPin D1
    ini merupakan deklarasi pin DATA DHT11 ke pin NodeMCU. Anda bisa merubahnya ke pin lainnya pada NodeMCU, misalnya D2, D3, D4 dan seterusnya.

Silahkan upload sketch program di atas sampai Done Uploading, jangan lupa untuk mengatur Board dan Port pada menu Tools Arduino IDE.

Hasil

Berikut adalah hasilnya :

Buka Serial monitor dengan baudrate 9600. Alamat IP yang diperoleh saya adalah http://192.168.169.111/. Alamat ini tentu akan berbeda dengan anda, silahkan sesuaikan ya. Setelah itu ketikkan alamat IP nya pada Web browser. Hasilnya seperti gambar di atas.

Selamat mencoba.

Bagikan ke

NodeMCU, Monitoring Suhu dan Kelembaban DHT11 pada Web Server

Saat ini belum tersedia komentar.

Silahkan tulis komentar Anda

NodeMCU, Monitoring Suhu dan Kelembaban DHT11 pada Web Server

Produk yang sangat tepat, pilihan bagus..!

Berhasil ditambahkan ke keranjang belanja
Lanjut Belanja
Checkout
Produk Quick Order

Pemesanan dapat langsung menghubungi kontak dibawah: