Arduino Controlled Security Lights Also Scary Prop for Halloween
by Abhinandan pal in Circuits > Arduino
3069 Views, 21 Favorites, 0 Comments
Arduino Controlled Security Lights Also Scary Prop for Halloween
If you are lost in a jungle and don't know what to do to notify you about an animal and like i wold do you took your arduino kit then this is a ultrasonic oject ditector which will tell you about any animal near......
Materials Required
The stuffs required are
- arduino
- buzzer(local shop)
- led(local shop)
- switch(local shop)
- bread board
- jumper wire( male to male)
- resistors(according to the leds used)
Connect the Main Parts
- connect the switch in the middle as shown
- connect the led so that they have a common ground keep a pin gap between two leds use 2 green, 2 yellow,4 red.
- connect the buzzer as shown
- connect the proximity sensor according to the pins
Wiring
wire it according to the image....... or according the video......
#define trig 12
#define echo 13
#define power_pin 11
#define buzzerReset A0
#define buzzer 10
int ledS[] = {2,3,4,5,6,7,8,A1};boolean alarmTrig = false;
boolean ledFlash = false; void setup()
{ Serial.begin(9600);
pinMode(trig,OUTPUT);
pinMode(echo,INPUT);
pinMode(power_pin,OUTPUT);
pinMode(buzzerReset , INPUT);
pinMode(buzzer , OUTPUT);
digitalWrite(power_pin,HIGH); // As because there is no external power source so we need the pin 1 as HIGH
for(int i=0;i<8;i++)
pinMode(ledS[i] , OUTPUT);
} void loop()
{
double distance = hc_sr04(trig, echo); // calls hc_sr04() and get the distance form it
Serial.print(distance); // print the distance Serial.println("cms ahead"); int indicate = map(constrain(distance , 1,20) , 1 , 20 , 0 , 8);
if(ledFlash == false)
{
for(int i = 0 ; i<=indicate ; i++) {
digitalWrite(ledS[i] , LOW);
}
for(int i=indicate ; i<=8 ; i++)
{
if(i == 0)
alarmTrig = true;
digitalWrite(ledS[i] , HIGH);
}
} if(alarmTrig == true)
{
activate_alarm();
}
if(digitalRead(buzzerReset) == HIGH)
resetBuzzer(); } void resetBuzzer()
{ alarmTrig = false;
ledFlash = false;
digitalWrite(buzzer , LOW);
}
double hc_sr04(double trigPin , double echoPin)
{
double duration, distance; // This procedure is mentioned in the datasheet of HC-SR04 attached
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH); //Check out the refernce to know about this function......select "pulseIn"
then press Ctrl + Shift + F
distance = ((duration/1000000)*33000)/2; // distance = speed * time/2
return constrain(distance,0,200); // dont know what constrain is just select it and Ctrl + Shift + F
}
void activate_alarm()
{ ledFlash = true; analogWrite(buzzer, 255);
for(int i=0;i<8;i++)
digitalWrite(ledS[i] , HIGH);
delay(100); analogWrite(buzzer , 150);
for(int i=0;i<8;i++)
digitalWrite(ledS[i] , LOW);
delay(100);
}