Hi Guys
I need help with programming code, i have PIR Sensor, LDR sensor and piezo alarm siren.
When the sensor detects motion and is enough light(day) to turn ON only the siren, when is less light(night) I wuld like do turn ON blinking Led and siren. This part i have and work okay but i don't know haw to do when alarm is triggered 10 times to stop or poused for 10min.
My code:
int sensor_1 = 2;// pir sensora pin 2
int led = 6; // led pin 6
int alarm = 7;
int counter = 0;
int sensor_2 = A0; // select the input pin for ldr
int sensorVal = 0; // variable to store the value coming from the sensor
void setup()
{
-
pinMode (sensor_1,INPUT);//sensor_1 (PIR SENSOR)*
-
pinMode (led, OUTPUT);//led*
-
pinMode (alarm, OUTPUT);//alarm*
-
Serial.begin(9600); //sets serial port for communication*
}
void loop ()
{ -
digitalWrite(alarm, LOW);*
-
digitalWrite (led,LOW);*
-
delay(500);*
-
sensorVal = analogRead(sensor_2);// read the value from the sensor:*
-
Serial.println(sensorVal); //prints the values coming from the sensor on the screen*
-
int motion = digitalRead(sensor_1);*
-
if ((motion == HIGH)&&(counter <= 1)&&(sensorVal <= 900)){*
-
for(int i = 0; i <= 15; i++){*
-
digitalWrite(alarm, HIGH);*
-
digitalWrite(led, HIGH);*
-
delay(300);*
-
digitalWrite(led, LOW);*
-
delay(300);*
-
counter++;*
-
}*
-
}*
-
if((motion == HIGH)&&(sensorVal > 900)){*
-
digitalWrite(alarm, HIGH);*
-
delay(2000);*
-
}*
-
if(motion == LOW){*
-
digitalWrite(alarm, LOW);*
-
digitalWrite(led, LOW);*
-
counter = 0;*
-
delay(100);*
-
}*
}