/**************************************************
// PERCOBAAN MENGGUNAKAN ESP 32 , DHT 22 DAN LED
//PEMBACAAN SUHU, KELEMBAAN RUANGAN DAN KONTROL LAMPU
//************** BY BAMBANG H K ********************
//*************************************************/
// Masuk ke HTTP Blynk
#include <DHT.h> //Baca Librari DHT
#define BLYNK_TEMPLATE_ID "TMPL6cUADbzo5"
#define BLYNK_TEMPLATE_NAME "Kontrol Ruangan dan Lampu"
#define BLYNK_AUTH_TOKEN "muh65TZWR2BrYpyeDMi-_Kqa6XQj_35N"
//Identifikasi PIN yang di gunakan
#define LED 17 // Menetapkan LED di pin 17
#define DHT_SENSOR_PIN 13 // Menetapkan sensor DHT22 di pin 13
#define DHT_SENSOR_TYPE DHT22 // Menetapkan jenis sensor DHT22
DHT dht_sensor (DHT_SENSOR_PIN, DHT_SENSOR_TYPE); //Inisialisasi DHT22 dengan dht_sensor
//Menghubungkan ke HTTP Blynk
#include <BlynkSimpleEsp32.h> //Baca Librari Blynk
#define BLYNK_PRINT Serial // Mengirimkan ke Blynk
BlynkTimer timer;
//Menghubungkan ke WiFi
#include <WiFi.h> //Baca Librari WiFi
char auth[] = BLYNK_AUTH_TOKEN; //Login ke Blynk dengan user dan passwordnya
char ssid[] = "Wokwi-GUEST"; //Login ke Wifi dengan user "Wokwi-GUEST"
char pass[] = ""; //Login ke Wifi tanpa password
void setup()
{
Serial.begin(9600);
dht_sensor.begin(); //Mulai initialize the DHT sensor
Blynk.begin(auth, ssid, pass); //Masuk ke Blynk dengan user dan password
pinMode(LED, OUTPUT); //Pin 17 sebagai output LED
}
void loop()
{
// Membaca kelembaban
float kelembaban = dht_sensor.readHumidity(); //Membaca kelembaban
Serial.print("Kelembaban udara: "); //Tampilkan kalimat Kelembaban Udara
Serial.print(kelembaban); //Tampilkan data pembacaan kelembaban
Serial.print("%"); //Tampilkan notasi satuan "%"
// Memberi tada batas pembacaankelembaban dan suhu
Serial.print(" | "); //Tampilkan tanda garis pemisah
// Membaca suhu
float suhu = dht_sensor.readTemperature(); //Membaca suhu
Serial.print("Suhu ruangan: "); //Tampilkan notasi satuan "%"
Serial.print(suhu); //Tampilkan data pembacaan Suhu
Serial.print("°C ~ "); //Tampilkan notasi satuan "%"
Serial.println(); //Tampilkan satu baris kosong
//mengirimkan data ke Virtual pin di Blynk Cloud
Blynk.virtualWrite(V0, suhu);
Blynk.virtualWrite(V1, kelembaban);
delay(2000); // Wait for a new reading from the sensor (DHT22 has ~0.5Hz sample rate)
Blynk.run();
}