// Security System Project with Ultrasonic Sensor, LEDs, and Buzzer
const int trigPin = 2; // Ultrasonic sensor trig pin
const int echoPin = 3; // Ultrasonic sensor echo pin
const int redLEDPin = 7; // Red LED pin
const int yellowLEDPin = 8; // Yellow LED pin
const int greenLEDPin = 9; // Green LED pin
const int buzzerPin = 4; // Buzzer pin
void setup() {
Serial.begin(9600); // Initialize serial communication for debugging
pinMode(trigPin, OUTPUT); // Set Ultrasonic sensor trig pin as OUTPUT
pinMode(echoPin, INPUT); // Set Ultrasonic sensor echo pin as INPUT
pinMode(redLEDPin, OUTPUT); // Set Red LED pin as OUTPUT
pinMode(yellowLEDPin, OUTPUT); // Set Yellow LED pin as OUTPUT
pinMode(greenLEDPin, OUTPUT); // Set Green LED pin as OUTPUT
pinMode(buzzerPin, OUTPUT); // Set Buzzer pin as OUTPUT
}
void loop() {
long duration, distance;
// Trigger the Ultrasonic sensor
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
// Measure the duration of the echo pulse
duration = pulseIn(echoPin, HIGH);
// Calculate the distance in centimeters
distance = duration * 0.034 / 2;
// Print the distance to the Serial Monitor
Serial.print("Distance: ");
Serial.print(distance);
Serial.println(" cm");
// Check the distance and set security status
if (distance < 50) {
// Motion detected, set security status to ALERT
digitalWrite(redLEDPin, HIGH);
digitalWrite(yellowLEDPin, LOW);
digitalWrite(greenLEDPin, LOW);
digitalWrite(buzzerPin, HIGH);
} else {
// No motion, set security status to OK
digitalWrite(redLEDPin, LOW);
digitalWrite(yellowLEDPin, LOW);
digitalWrite(greenLEDPin, HIGH);
digitalWrite(buzzerPin, LOW);
}
// Wait for a short time before taking the next measurement
delay(500);
}