#include <LiquidCrystal_I2C.h>
#include <Wire.h>
LiquidCrystal_I2C lcd(0x27, 22 , 4);
#include <DHT.h>
#define dhtPin 18
#define relayPin 17
#define dhttype DHT22
DHT dht(dhtPin, dhttype);
void setup() {
Serial.begin(115200);
pinMode(relayPin, OUTPUT);
lcd.init();
lcd.backlight();
lcd.clear();
dht.begin();
}
void loop() {
float humi = dht.readHumidity();
float temp = dht.readTemperature(); // true จะเปลี่ยนองศา
if (isnan(humi) || isnan(temp)) {
Serial.println("Failed to read from DHT sensor!");
return;
}
/*
Serial.print("Humidity : ");
Serial.print(humi);
Serial.print("%");
Serial.print("/t");
Serial.print("Temperature : ");
Serial.print(temp);
Serial.print(" °C");
*/
lcd.setCursor(0,0);
lcd.print("Humi : ");
lcd.print(humi);
lcd.print(" %");
lcd.setCursor(0,1);
lcd.print("Temp : ");
lcd.print(temp);
lcd.print(" ");
lcd.print((char)223);
lcd.print("C");
if (temp > 25) {
digitalWrite(relayPin, HIGH);
lcd.setCursor(0,2);
lcd.print("Airconditional Open");
}
else{
digitalWrite(relayPin, LOW);
lcd.setCursor(0,2);
lcd.print("Airconditional Off ");
}
}