[ 2 ] Program monitoring dht11 using arduino Pro mini to database mysql


sekarang, ke lanjut ke tahap berikutnya. yaitu memprogram arduino yang telah kita rangkai menggunakan aplikasi arduino IDE. jika kamu belum punya silahkan download di link ini



pada sketch arduino kalian harus mengetik program di bawah ini. kenapa? supaya kalian dapat memahaminya lebih baik :
untuk library DHT11, klik here
admin berharap kalian tidak malas untuk mengetik ulang. namun, jika masih malas admin sediakan linknya dibawah sendiri dari tulisan ini

#include <SoftwareSerial.h> // using library sofwareserial
#include <dht.h>   // using library DHT

#define DHT11_PIN 12  
SoftwareSerial wifi(11, 10 ); // RX, TX

dht sensor;
String ip_host ="192.168.137.103";  // your ip address
int nilai_1, nilai_2;
boolean parsing = false;

#define SSID_WIFI "XXXX" //your SSID name
#define PASSWORD_WIFI "triplemultiple" //your Wifi password

#define DEBUG true

void konek_ke_wifi() {
  String data = "AT+CWJAP=\"";
  data += SSID_WIFI;
  data += "\",\"";
  data += PASSWORD_WIFI;
  data += "\"";
  data += "\r\n";
  kirimPerintah(data, 10000, DEBUG);
}

void setup() {
  // put your setup code here, to run once:
  wifi.begin(9600);
  Serial.begin(9600);
  kirimPerintah("AT+RST\r\n", 2000, DEBUG);
  kirimPerintah("AT+CWMODE=3\r\n", 1000, DEBUG); // Set ke AP / Client
  konek_ke_wifi();
  kirimPerintah("AT+CIPMUX=2\r\n", 1000, DEBUG);
  kirimPerintah("AT+CIFSR\r\n", 500, DEBUG);
  Serial.println("Arduino Kontrol Wifi SIAP !!");
  int chk = sensor.read11(DHT11_PIN);
  nilai_1 = sensor.temperature;
  nilai_2 = sensor.humidity;
  
  pinMode(13, OUTPUT);
}

String data;

void loop() {
  Serial.print("Temperature = ");
  Serial.println(nilai_1 );
  Serial.print("Humidity = ");
  Serial.println(nilai_2);
  delay(2000);
  kirim_data();
}

String kirimPerintah(String perintah, const int waktu, boolean debug) {

  String respon = "";
  wifi.print(perintah);

  long time = millis();
  while ((time + waktu) > millis())
  {
    while (wifi.available())
    {
      char c = wifi.read();
      respon += c;
    }
  }

  if (debug) {
    Serial.print(respon);
  }
  return respon;
}

void kirim_data(){
  String cmd = "AT+CIPSTART=\"TCP\",\"";
  cmd += ip_host;
  cmd += "\",80";
  wifi.println(cmd);
  if (wifi.find("Error")) {
    Serial.println("Koneksi eror");
    return;
  }
  cmd = "GET /learning_php/index.php?temp1="; // sending data to mysql
  cmd += String (nilai_1);
  cmd += "&hum1=";
  cmd += String (nilai_2);

  cmd += "HTTP/1.0/1/\r\n";
  cmd += "\r\n";
  wifi.print("AT+CIPSEND=");
  wifi.println(cmd.length());
  if (wifi.find(">")) {
    Serial.print(">");
  } else {
    wifi.println("AT+CIPCLOSE");
    Serial.println("Koneksi Timeout");
    delay(5000);
    return;
  }
 kirimPerintah(cmd, 2000, DEBUG);
}

ini link program utama klik link

setelah menulis program di atas kalian bisa upload programnya ke arduino menggunakan kabel koneksi arduino ke laptop/PC kalian. jangan lupa untuk mengganti SSID, Password wifi,ip address dan host untuk upload data kalian ke database ( lihat paling bawah ).

langkah selanjutnya adalah membuat script untuk mengupload datanya, kalian bisa lihat di :
namun, kalian juga bisa belajar dasar dari program php disini :  
basic how to make php script for beginner
dari program diatas, terdapat program seperti di bawah ini.

cmd = "GET /learning_php/index.php?temp1="; // sending data to mysql
  cmd += String (nilai_1);
  cmd += "&hum1=";
  cmd += String (nilai_2);

maksudnya adalah bahwa program tersebut hasil penyederhanaan dari link ini

http://localhost/learning_php/index.php?temp1=28&hum1=80

yang mana learning_php adalah folder dari file index.php yang kalian simpan di komputer

0 Response to "[ 2 ] Program monitoring dht11 using arduino Pro mini to database mysql"

Post a Comment

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel