Go Down

Topic: sensor pir (Read 1 time) previous topic - next topic

tazma

hola miniduino el sensor que yo uso es parecido al que tu comentas
yo tengo montada una mini alarma con este codigo   lo cuelgo aquipor si lo quieres utilizar
el codigo no es mio jeje que mas quisiera yo

int ledPin = 13; // choose the pin for the LED
int inputPin = 2; // choose the input pin (for PIR sensor)
int pirState = LOW; // we start, assuming no motion detected
int val = 0; // variable for reading the pin status
int pinSpeaker = 10; //Set up a speaker on a PWM pin (digital 9, 10, or 11)
void setup() {
pinMode(ledPin, OUTPUT); // declare LED as output
pinMode(inputPin, INPUT); // declare sensor as input
pinMode(pinSpeaker, OUTPUT);
Serial.begin(9600);
}
void loop(){
val = digitalRead(inputPin); // read input value
if (val == HIGH) { // check if the input is HIGH
digitalWrite(ledPin, HIGH); // turn LED ON
playTone(300, 160);
delay(150);
// playTone(300, 120);
// delay(150);
if (pirState == LOW) {
// we have just turned on
Serial.println("Motion detected!");
// We only want to print on the output change, not state
pirState = HIGH;
}
} else {
digitalWrite(ledPin, LOW); // turn LED OFF
playTone(0, 0);
delay(300);
if (pirState == HIGH){
// we have just turned off
Serial.println("Motion ended!");
// We only want to print on the output change, not state
pirState = LOW;
}
}
}
// duration in mSecs, frequency in hertz
void playTone(long duration, int freq) {
duration *= 1000;
int period = (1.0 / freq) * 1000000;
long elapsed_time = 0;
while (elapsed_time < duration) {
digitalWrite(pinSpeaker,HIGH);
delayMicroseconds(period / 2);
digitalWrite(pinSpeaker, LOW);
delayMicroseconds(period / 2);
elapsed_time += (period);
}
}

y la verdad que va muy bien el unico problema que le voe es que al momento de conectar ya suena la bozina y me gustaria que fuese a si pero nose modificarlo

miniduino

Siempre puedes probar en poner un delay en el void setup para darte tiempo a salir corriendo.

Gracias por el codigo lo probaré.
http://arduinadas.blogspot.com/

tazma

gracias por el consejo lo probare a versi me sale bien
salu2

Go Up