Tutorial Pantau Suhu dan Kelembapan dengan DHT11 via Web Server

Assalamualaikum Pembaca sekalian, pada kesempatan kali ini Penulis akan berbagi sedikit mengenai cara untuk memantau suhu dan kelembapan dengan modul DHT11 yang ditampilkan di browser, dimana Ethernet shield sebagai web server nya.

arduino

Perangkat yang digunakan:

  1. Arduino Uno
  2. Ethernet Shield
  3. Breadboard
  4. Resistor 10k (1 buah)
  5. Sensor DHT11
  6. Kabel jumper (3 buah), kabel usb (untuk menyambungkan PC dengan arduino), dan kabel LAN (tipe Straight)

 

 

dht11

 

Tahap koding di arduino :

 

#include <DHT.h> // memanggil library sensor DHT#include <SPI.h> // memanggil library spi

#include <Ethernet.h> // memanggil library Ethernet shield

#define DHTPIN 7     // PIN data yang masuk dari DHT 11 menuju board arduino

// Beri komentar(“//”) disesuaikan dengan pilihan DHT yang anda gunakan!

// Saya menggunakan DHT11 maka yang lain diberi komentar (“//”)

#define DHTTYPE DHT11   // DHT 11

//#define DHTTYPE DHT22   // DHT 22  (AM2302)

//#define DHTTYPE DHT21   // DHT 21 (AM2301)

DHT dht(DHTPIN, DHTTYPE);

byte mac[] = { 0x90, 0xA2, 0xDA, 0x00, 0x23, 0x36 }; //MAC Address pada boks Ethernet shield anda.

// IP address yang digunakan

IPAddress ip(192, 168, 1, 10);

IPAddress gateway(192, 168, 1, 1);

IPAddress subnet(255, 255, 255, 0);

EthernetServer server(80); // port default HTTP adalah 80, inisialisasikan dengan Ethernet server library

void setup() {

// Membuka komunikasi serial dengan arduino

Serial.begin(9600);

while (!Serial) {

; // wait for serial port to connect. Needed for Leonardo only

}

dht.begin();

// start the Ethernet connection and the server:

Ethernet.begin(mac, ip);

server.begin();

Serial.print(“server is at “);

Serial.println(Ethernet.localIP());

}

void loop() {

float h = dht.readHumidity();

float t = dht.readTemperature();

// Pengecekan jika sensor tidak terbaca

if (isnan(t) || isnan(h)) {

Serial.println(“Failed to read from DHT”);

} else {

Serial.print(“Kelembapan: “);

Serial.print(h);

Serial.print(” %\t”);

Serial.print(“Suhu: “);

Serial.print(t);

Serial.println(” *C”);

}

EthernetClient client = server.available();

if (client) {

Serial.println(“new client”);

boolean currentLineIsBlank = true;

while (client.connected()) {

if (client.available()) {

char c = client.read();

Serial.write(c);

if (c == ‘\n’ && currentLineIsBlank) {

// send a standard http response header

client.println(“HTTP/1.1 200 OK”);

client.println(“Content-Type: text/html”);

client.println(“Connection: close”);  // the connection will be closed after completion of the response

client.println(“Refresh: 10”);  // refresh halaman browser tiap 10 detik

client.println();

client.println(“<!DOCTYPE HTML>”);

client.println(“<html>”);

// Dibawah ini adalah kodingan yang ditampilkan di browser

// Bisa anda sesuaikan kembali koding dibawah

client.println(“<title>”);

client.print(“Suhu dan Kelembapan”);

client.println(“</title>”);

client.println(“<table border=’1′ align=’center’>”);

client.println(“<tr>”);

client.println(“<td>”);

client.println(“<H2>”);

client.print(“Kelembapan: “);

client.println(“</H2>”);

client.println(“</td>”);

client.println(“<td>”);

client.println(“<p />”);

client.println(“<H1>”);

client.print(h); // panggil data kelembapan

client.print(” %\t”);

client.println(“</H1>”);

client.println(“<p />”);

client.println(“</td>”);

client.println(“</tr>”);

client.println(“<tr>”);

client.println(“<td>”);

client.println(“<H2>”);

client.print(“Suhu: “);

client.println(“</H2>”);

client.println(“</td>”);

client.println(“<td>”);

client.println(“<p />”);

client.println(“<H1>”);

client.print(t); // panggil data suhu

client.println(” &#176;”);

client.println(“C”);

client.println(“</H1>”);

client.println(“<p />”);

client.println(“</td>”);

client.println(“</tr>”);

client.println(“</table>”);

client.println(“</html>”);

break;

}

if (c == ‘\n’) {

currentLineIsBlank = true;

}

else if (c != ‘\r’) {

currentLineIsBlank = false;

}

}

}

// beri waktu penerimaan data dari serial ke browser

delay(1);

// close the connection:

client.stop();

Serial.println(“client disonnected”);

}

}

 

 Cara setting ip address konfigurasi static pada pc

1. Buka control panel -> klik Network and Internet -> Pilih Network Connection

1

 

2. Klik Properties

2

 

 

3. Pilih dan klik 2 kali Internet Protocol Version 4

3

 

4. Pilih use the following ip address, kemudian isi konfigurasi IP yang disamakan dengan network ip arduino

4

 

Hasil Akhir, buka browser dan ketikkan ip dari arduino 192.168.1.10

web suhu

 

Link download Library sensor DHT:

http://www.mediafire.com/download/0r1b3a3dag6h8h3/DHT11.zip

 

Tentang Penulis

foto sayaAndrew Julian, lahir di Jakarta. Mahasiswa Fakultas Teknologi Informasi Universitas Budi Luhur dan aktif sebagai Asisten Laboratorium ICT Terpadu Universitas Budi Luhur. Bidang keminatan dan keahlian pada cisco networking dan elektronika. Founder dari www.pasarmainan.com dan www.kain123.com. Saya bisa dihubungi melalui email andrewjulian94@gmail.com.

You may also like...