#include <DHT.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd (0x27,20,4);
#define DHTPIN1 2
#define DHTPIN2 3
#define DHTTYPE1 DHT22
#define DHTTYPE2 DHT22
#define relay 4
DHT dht1 (DHTPIN1,DHTTYPE1);
DHT dht2 (DHTPIN2,DHTTYPE2);
int mos1=A0;
int mos2=A1;
int mos3=A2;
int mos4=A3;
int valuemos1;int valuemos2;int valuemos3;int valuemos4;
void setup() {
pinMode(relay, OUTPUT);
Serial.begin(115200);
dht1.begin();
dht2.begin();
lcd.init();
lcd.backlight();
lcd.setCursor(3,1);
lcd.print("Selamat Datang");
delay(1000);
lcd.clear();
}
void loop() {
valuemos1=analogRead(mos1);
int val1=map(valuemos1,0,1023,0,100);
valuemos2=analogRead(mos2);
int val2=map(valuemos2,0,1023,0,100);
valuemos3=analogRead(mos3);
int val3=map(valuemos3,0,1023,0,100);
valuemos4=analogRead(mos4);
int val4=map(valuemos4,0,1023,0,100);
Serial.print("Moisture 1 : ");
Serial.println(val1);
Serial.print("Moisture 2 : ");
Serial.println(val2);
Serial.print("Moisture 3 : ");
Serial.println(val3);
Serial.print("Moisture 4 : ");
Serial.println(val4);
int suhu1=dht1.readTemperature();
int suhu2=dht2.readTemperature();
Serial.print("Temperature 1 : ");
Serial.println(suhu1);
Serial.print("Temperature 2 : ");
Serial.println(suhu2);
Serial.println("");
delay(1000);
if (suhu1 >=30 && val1 <=40){
digitalWrite(relay, HIGH);
}
else digitalWrite(relay,LOW);
lcd.setCursor(0,0);
lcd.print("Temperature : ");
lcd.setCursor(0,1);
lcd.print(suhu1);
lcd.print("C & ");
lcd.print(suhu2);
lcd.print("C");
lcd.setCursor(0,2);
lcd.print("Moisture :");
lcd.setCursor(0,3);
lcd.print(val1);
lcd.print("RH ");
lcd.print(val2);
lcd.print("RH ");
lcd.print(val3);
lcd.print("RH ");
lcd.print(val4);
lcd.print("RH ");
}