//Libraries
#include <DHT.h>;
//Constants
#define DHTPIN 11 // what pin we're connected to
#define DHTTYPE DHT22 // DHT 22 (AM2302)
DHT dht(DHTPIN, DHTTYPE); // Initialize DHT sensor for normal 16mhz Arduino
const int TempAlarm = 12; // Alarm LED for Temperature (RED LED)
const int HumidityAlarm = 13; // Alarm LED for Humidity (GREEN LED)
// Defining Variables
double Humidity = 0;
double TemperatureC = 0;
void setup() {
Serial.begin(9600); // Initialize the Serial
dht.begin(); // Initialize the DHT22 Sensor
pinMode(TempAlarm, OUTPUT); // Initialize the PIN related to the TempAlarm LED as OUTPUT
pinMode(HumidityAlarm, OUTPUT); // Initialize the PIN related to the HumidityAlarm LED as OUTPUT
}
void loop() {
//Read data and store it to variables hum and temp
Humidity = dht.readHumidity();
TemperatureC= dht.readTemperature();
//Print temp and humidity values to serial monitor
Serial.print("Humidity: ");
Serial.print(Humidity);
Serial.print("%, Temperature: ");
Serial.print(TemperatureC);
Serial.println(" Celsius");
// Setting Up Control functions for the alarms
//IF the Temperature exceeds 20 Celsius, the red alarm activates
if (TemperatureC >= 20) {
digitalWrite(TempAlarm, HIGH);
} else {
digitalWrite(TempAlarm, LOW);
}
//IF the Humidity exceeds 30%, the green alarm activates
if (Humidity >= 30) {
digitalWrite(HumidityAlarm, HIGH);
} else {
digitalWrite(HumidityAlarm, LOW);
}
delay(1000);
}