#include "DHT.h"
#include <WiFi.h>
#include <HTTPClient.h>
// const char* ssid = "WIFI_NET";
// const char* password = "alhamdulillah";
DHT dht1(13, DHT22);
DHT dht2(12, DHT22);
DHT dht3(14, DHT22);
DHT dht4(27, DHT22);
void setup() {
Serial.begin(9600);
dht1.begin();
dht2.begin();
dht3.begin();
dht4.begin();
pinMode(5, OUTPUT);
pinMode(18, OUTPUT);
pinMode(19, OUTPUT);
pinMode(21, OUTPUT);
// WiFi.mode(WIFI_STA);
// WiFi.begin(ssid, password);
// int i=0;
// if(WiFi.status() != WL_CONNECTED){
// Serial.print(".");
// delay(1000);
// }
// Serial.println("");
// Serial.println("WiFi connected");
// Serial.println("IP address: ");
// Serial.println(WiFi.localIP());
// Serial.println();
// delay(2000);
}
void loop() {
double kelembaban1 = dht1.readHumidity();
double suhu1 = dht1.readTemperature();
double kelembaban2 = dht2.readHumidity();
double suhu2 = dht2.readTemperature();
double kelembaban3 = dht3.readHumidity();
double suhu3 = dht3.readTemperature();
double kelembaban4 = dht4.readHumidity();
double suhu4 = dht4.readTemperature();
// tampilan di serial arduino ketika ada sensor yang gagal fungsi
// if (isnan(kelembaban1) || isnan(suhu1)) {
// Serial.println(F("gagal baca data sensor DHT1!"));
// return;
// }
// if (isnan(kelembaban2) || isnan(suhu2)) {
// Serial.println(F("gagal baca data sensor DHT2!"));
// return;
// }
// if (isnan(kelembaban3) || isnan(suhu3)) {
// Serial.println(F("gagal baca data sensor DHT3!"));
// return;
// }
// if (isnan(kelembaban4) || isnan(suhu4)) {
// Serial.println(F("gagal baca data sensor DHT4!"));
// return;
// }
// menampilkan data suhu dan kelembaban di serial arduino
Serial.print(F("suhu1:"));
Serial.print(suhu1);
Serial.print(F("°C kelembaban1:"));
Serial.print(kelembaban1);
Serial.println(F("%"));
Serial.print(F("suhu2:"));
Serial.print(suhu2);
Serial.print(F("°C kelembaban2:"));
Serial.print(kelembaban2);
Serial.println(F("%"));
Serial.print(F("suhu3:"));
Serial.print(suhu3);
Serial.print(F("°C kelembaban3:"));
Serial.print(kelembaban3);
Serial.println(F("%"));
Serial.print(F("suhu4:"));
Serial.print(suhu4);
Serial.print(F("°C kelembaban4:"));
Serial.print(kelembaban4);
Serial.println(F("%"));
Serial.println("");
WiFiClientSecure client;
client.setInsecure();
HTTPClient http;
// // mengambil data batas suhu dari host untuk mengatur sensor ketika terhubung ke internet
// String control ="https://warmkeeper.000webhostapp.com/control.php";
// http.begin(client,control);
// int httpResponseCode = http.GET();
// String batas;
// if (httpResponseCode>0) { //Check the returning code
// batas = http.getString(); //mengambil respon http ketika melakukan request GET ke control.php
// }
// else {
// Serial.println("gagal ambil batas suhu");
// }
// http.end();
// mengatur batas suhu sesuai yang dikirim melalui aplikasi HP !!HANYA KETIKA TERHUBUNG KE INTERNET!!
// if (batas.toInt() > 0) {
// if (suhu1 <= batas.toInt()) {
// digitalWrite(14, LOW);
// }
// else {
// digitalWrite(14, HIGH);
// }
// if (suhu2 <= batas.toInt()) {
// digitalWrite(12, LOW);
// }
// else {
// digitalWrite(12, HIGH);
// }
// if (suhu3 <= batas.toInt()) {
// digitalWrite(13, LOW);
// }
// else {
// digitalWrite(13, HIGH);
// }
// if (suhu4 <= batas.toInt()) {
// digitalWrite(16, LOW);
// }
// else {
// digitalWrite(16, HIGH);
// }
// }
// batas suhu default ketika !!TIDAK TERHUBUNG INTERNET!!
// else {
if (suhu1 <= 29) {
digitalWrite(5, HIGH);
}
else {
digitalWrite(5, LOW);
}
if (suhu2 <= 29) {
digitalWrite(18, HIGH);
}
else {
digitalWrite(18, LOW);
}
if (suhu3 <= 29) {
digitalWrite(19, HIGH);
}
else {
digitalWrite(19, LOW);
}
if (suhu4 <= 29) {
digitalWrite(21, HIGH);
}
else {
digitalWrite(21, LOW);
}
// }
// mengirim data suhu dan kelembaban ke database
// if ((WiFi.status() == WL_CONNECTED)) {
// String address;
// address ="https://192.168.0.109/arducoding_tutorial/nodemcu_log/webapi/api/create.php?suhu1=";
// address += String(suhu1);
// address += "&kelembaban1=";
// address += String(kelembaban1);
// // address += "&suhu2=";
// // address += String(suhu2);
// // address += "&kelembaban2=";
// // address += String(kelembaban2);
// // address += "&suhu3=";
// // address += String(suhu3);
// // address += "&kelembaban3=";
// // address += String(kelembaban3);
// // address += "&suhu4=";
// // address += String(suhu4);
// // address += "&kelembaban4=";
// // address += String(kelembaban4);
// http.begin(client,address);
// // int httpResponseCode = http.GET();
// // String payload;
// // if (httpResponseCode>0) { //Check the returning code
// // payload = http.getString(); //Get the request response payload
// // payload.trim();
// // if( payload.length()>0){
// // Serial.println(payload + "\n");
// // }
// // else {
// // Serial.println ("gagal");
// // }
// // }
// // else {
// // Serial.print("Error code: ");
// // Serial.println(httpResponseCode);
// // Serial.println("TIDAK TERHUBUNG INTERNET!!!");
// // Serial.println("");
// // }
// // http.end(); //Close connection
// }
// else{
// Serial.print("tidak terhubung ke wifi!!! <");
// Serial.print(ssid);
// Serial.println(">");
// Serial.println("");
// }
delay(9500); //interval 15s
}