#include "DHT.h"
#include "Servo.h"
#define DHTPIN 27
#define DHTTYPE DHT22
#define LED_PIN 12
#define PIR_PIN 18
#define SERVO_PIN 14
DHT dht(DHTPIN, DHTTYPE);
Servo servoMotor;
void setup() {
Serial.begin(9600);
dht.begin();
pinMode(LED_PIN, OUTPUT);
pinMode(PIR_PIN, INPUT);
servoMotor.attach(SERVO_PIN);
}
void loop() {
float humidity = dht.readHumidity();
float temperature = dht.readTemperature();
if (isnan(humidity) || isnan(temperature)) {
Serial.println("Failed to read from DHT sensor!");
return;
}
Serial.print("Humidity: ");
Serial.print(humidity);
Serial.print(" %\t Temperature: ");
Serial.print(temperature);
Serial.println(" *C");
int motionDetected = digitalRead(PIR_PIN);
if (motionDetected == HIGH) {
Serial.println("Motion Detected!");
digitalWrite(LED_PIN, HIGH); // Turn on LED
servoMotor.write(90);
delay(5000);
} else {
Serial.println("No Motion Detected.");
digitalWrite(LED_PIN, LOW); // Turn off LED
servoMotor.write(0); // Rotate servo to 0 degrees
}
delay(2000); // Delay before next iteration
}