Lompat ke konten Lompat ke sidebar Lompat ke footer

Tutorial Monitoring DHT11 dengan localhost

Tutorial Monitor DH11 dengan localhost

Kali ini penulis akan memberikan artikel yang berkaitan dengan Arduino nih, Seorang yang sudah terjun di percodingan membuat suatu alat dengan Arduino pastinya sudah mengenal tentang DHT11 itu sendiri dong pastinya, Sekilah penulis paparkan dari DHT 11 ini ialah module sensor yang memiliki fungsi untuk mensensor objek suhu dan juga kelembaban yang memiliki output tegangan analog yang dapat diolah lebih lanjut menggunakan mikrokontroler Arduino itu sendiri tapi tidak hanya Arduino, bisa dengan Nodemcu,dll.

1. Oke, kita lanjut ke bagian skemanya yang pertama :
- Pasangkan Arduino dan Ethernet Shield seperti Gambar berikut
- Lalu pasangkan Arduino dengan DHT11 seperti berikut
- Setelah itu Pasangkan juga Arduino ke i2c LCD
- Jangan sampai ketinggalan Pasangkan juga Kabel LAN dari arduino ke Komputer/Laptop


2. Setelah skema tadi sudah buat lalu Setting IP static di Komputer/Laptop teman-teman yang
- Pertama, aktifkan terlebih dahulu xamppnya
- buat 3 buah file php sebagai berikut, jangan lupa simpan file tersebut di Nama folder yang teman-teman kasih nama dan Simpan di C:/Xampp/htdocs
- Setelah Xampp tadi sudah di nyalakan sekarang tinggal membuat database phpadmin seperti berikut
- Setting IP static terlebih dahulu seperti berikut
3. Setelah Langkah-langkah diatas sudah dilakukan kita langsung Coding untuk Program Arduinonya menggunakan Arduino IDE sebagai berikut.

#include <SPI.h>
#include <Ethernet.h>
#include "DHT.h"
#include <Wire.h>  // i2C Conection Library
#include <LiquidCrystal_I2C.h>  //i2C LCD Library

#define DHTPIN 4     // what digital pin we're connected to
#define DHTTYPE DHT11   // DHT 11

DHT dht(DHTPIN, DHTTYPE);
// Set the LCD address to 0x27 for a 16 chars and 2 line display
LiquidCrystal_I2C lcd(0x27, 16, 2);

int y;
int currx;
String txData="";

byte mac[] = {
  0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
IPAddress ip(192,168,1,99);

EthernetClient client;

void setup() {
  lcd.begin();
  dht.begin();
  Serial.begin(9600);
  while (!Serial) {
    ; //wait for serial port to connect. Needed for Leonardo only
  }
//  if (Ethernet.begin(mac) == 0) {
//    Serial.println("Failed to configure Ethernet using DHCP");
    Ethernet.begin(mac, ip);
//  }
    delay(1000);
    Serial.println("connecting...");
    kirim ();
   

}

void loop()
{
  kirim ();
}


void kirim (){

 float h = dht.readHumidity();
 float t = dht.readTemperature();
 float f = dht.readTemperature(true);

 int hum = h;
 int suhu = t;

  lcd.setCursor(0,0);
  lcd.print("Temp= ");
  lcd.print(suhu);
  lcd.print(" C  ");
  
  lcd.setCursor(0,1);
  lcd.print("Hum= ");
  lcd.print(hum);
  lcd.print(" %  ");
  
  if (isnan(h) || isnan(t) || isnan(f)) {
    Serial.println("Failed to read from DHT sensor!");
    return;
  }

  float hif = dht.computeHeatIndex(f, h);
  float hic = dht.computeHeatIndex(t, h, false);

  Serial.print("Humidity: ");
  Serial.print(h);
  Serial.print(" %\t");
  Serial.print("Temperature: ");
  Serial.print(t);
  Serial.println(" *C ");
  
  EthernetClient client;

   if (client.connect("192.168.1.111", 80)){
    txData = "hum="+ (String (hum)) + "&suhu="+ (String (suhu));
    Serial.println("connected");
    Serial.print(txData);
    client.println("POST /monitoring/update.php HTTP/1.1");
    //jika menggunakan insert pakai client.println("POST /antri/insert.php HTTP/1.1");
    client.println("Host: 192,168,1,111");
    client.println("Connection: close");
    client.print("Content-Type: application/x-www-form-urlencoded\n");
    client.print("Content-Length: ");
    client.print(txData.length());
    client.print("\n\n");
    client.print(txData);
    Serial.println(txData);
    delay (2000);
   
  }   
  else{
    Serial.println("Connection Failed."); 
    Serial.println();
    delay (1500);
  }
}

-  setelah codingan untuk Arduino sudah di compile dan berhasil sekarang mengcoding program pada 3 file yang telah dibuat seperti berikut:

1. config.php

 <?php

$dbhost = 'localhost';

$dbuser = 'root';

//$dbpass = '';    

$dbname = 'monitoring dht11'; //This is the name of your database on the mysql server

$conn = mysql_connect($dbhost,$dbuser) or die ('Error connecting to mysql'); 

mysql_select_db($dbname);

if(!$conn){

     //   echo "database gak konek";

    }else{

     //   echo "database konek";

    }

?>


2. index.php

<html>
<head>
<meta http-equiv="refresh" content="3">
<style>
.bordered { border-style:solid; }
</style>
<link rel="stylesheet" type="text/css" href="latweb.css" />
<title >MONITORING</title>
</head>
<body>
<CENTER>
<p><h2> MONITORING SUHU DAN KELEMBABAN</h2></p>
</CENTER>
<CENTER>
<p><h3>
KELEMBABAN =
<?php
include "config.php";
$tampil = @mysql_query("SELECT * FROM tbl_monitoring WHERE no IN (SELECT MAX(no) FROM tbl_monitoring)");
         
    while ($r=mysql_fetch_array($tampil)){
       echo "$r[lembab]";
   }
?>

%

<br>

SUHU =
<?php
include "config.php";
$tampil = @mysql_query("SELECT * FROM tbl_monitoring WHERE no IN (SELECT MAX(no) FROM tbl_monitoring)");
         
    while ($r=mysql_fetch_array($tampil)){
       echo "$r[suhu]";
   }
?>

C

</CENTER>
</body>
</html>


Di codingan sini teman-teman boleh menambah variasi design tampilan sesuai keinginan teman-teman.


3. update.php

<?php
require("config.php");

$query = "UPDATE tbl_monitoring SET lembab='$_POST[lembab]', suhu='$_POST[suhu]' WHERE no=1";

if(!@mysql_query($query))
{
    echo "&Answer; SQL Error - ".mysql_error();
    return;
}
?>

Setelah semua selesai dilakukan baik dari skema sampai codingan sudah selesai kita masuk ke browser baik Chrome, Mozilla, dan lain-lain. D

- Hasilnya akan tampak seperti berikut ini :

Sekian dari penulis yang bisa di berikan terkait  Moniroting Kelembaban dan Suhu semoga bisa membantu teman-teman yang sedang belajar di Arduino tentunya. Selamat mencoba
JSI-Tech Solution
JSI-Tech Solution Penyedia Jasa Setting alat jaringan di Bandung.

Posting Komentar untuk "Tutorial Monitoring DHT11 dengan localhost"