#include "DHT.h"
#define DHTPIN1 2
#define DHTPIN2 3
#define DHTPIN3 4
#define DHTTYPE DHT11 // DHT 11
#define FAN1 5
#define FAN2 6
#define FAN3 7
#define EXHAUST1 8
#define EXHAUST2 9
#define EXHAUST3 10
#define LIGHT 11
int i=0;
DHT dht1(DHTPIN1, DHTTYPE);
DHT dht2(DHTPIN2, DHTTYPE);
DHT dht3(DHTPIN3, DHTTYPE);
void setup() {
Serial.begin(9600);
dht1.begin();
dht2.begin();
dht3.begin();
pinMode(FAN1, OUTPUT);
pinMode(FAN2, OUTPUT);
pinMode(FAN3, OUTPUT);
pinMode(EXHAUST1, OUTPUT);
pinMode(EXHAUST2, OUTPUT);
pinMode(EXHAUST3, OUTPUT);
pinMode(LIGHT, OUTPUT);
}
void loop() {
delay(2000);
float h1 = dht1.readHumidity();
float h2 = dht2.readHumidity();
float h3 = dht3.readHumidity();
// Read temperature as Celsius (the default)
float t1 = dht1.readTemperature();
float t2 = dht2.readTemperature();
float t3 = dht3.readTemperature();
// Read temperature as Fahrenheit (isFahrenheit = true)
float f1 = dht1.readTemperature(true);
float f2 = dht2.readTemperature(true);
float f3 = dht3.readTemperature(true);
// Check if any reads failed and exit early (to try again).
if (isnan(h1) ||isnan(h2) ||isnan(h3) || isnan(t1) || isnan(t2) || isnan(t3) || isnan(f1) || isnan(f2) || isnan(f3)) {
Serial.println(F("Failed to read from DHT sensor!"));
return;
}
float H=(h1+h2+h3)/3;
float T=(t1+t2+t3)/3;
float F=(f1+f2+f3)/3;
if(0<H && H<10){
digitalWrite(FAN1, LOW);
digitalWrite(EXHAUST1, LOW);
digitalWrite(FAN2, LOW);
digitalWrite(EXHAUST2, LOW);
digitalWrite(FAN3, LOW);
digitalWrite(EXHAUST3, LOW);}
if(11<H && H<20){
digitalWrite(FAN1, HIGH);
digitalWrite(EXHAUST1, HIGH);
digitalWrite(FAN2, LOW);
digitalWrite(EXHAUST2, LOW);
digitalWrite(FAN3, LOW);
digitalWrite(EXHAUST3, LOW);}
if(21<H && H<30){
digitalWrite(FAN1, HIGH);
digitalWrite(EXHAUST1, HIGH);
digitalWrite(FAN2, HIGH);
digitalWrite(EXHAUST2, HIGH);
digitalWrite(FAN3, LOW);
digitalWrite(EXHAUST3, LOW);}
if(H>31){
digitalWrite(FAN1, HIGH);
digitalWrite(EXHAUST1, HIGH);
digitalWrite(FAN2, HIGH);
digitalWrite(EXHAUST2, HIGH);
digitalWrite(FAN3, HIGH);
digitalWrite(EXHAUST3, HIGH);}
Serial.print(("Humidity1: "));
Serial.print(H);
/*Serial.print(F("% Temperature: "));
Serial.print(t1);
Serial.print(("°C "));
Serial.print(f1);
Serial.print(("°F "));*/
Serial.println();
}