Hola, buenas noches,
Hace poco recibí un sensor PIR de dealextreme, concretamente este:
http://www.dx.com/p/ir-infrared-motion-detection-sensor-module-dc-5v-20v-139624#.VNOiqDVXa00
Es un modelo HC-SR501.
He conectado el positivo al 5v, como indica en el pin de positivo del sensor, y el negativo a tierra y la señal al pin 2.
El programa que uso es el siguiente
byte ledPin = 13;
byte motionPin = 2;
byte senseMotion = 0;
void setup(){
pinMode(ledPin, OUTPUT);
pinMode(motionPin, INPUT);
Serial.begin(9600);
while (!Serial);
Serial.println("Serial inicializado");
}
void loop(){
senseMotion = digitalRead(motionPin);
if (senseMotion == HIGH) {
digitalWrite(ledPin, HIGH);
Serial.println("Movimiento detectado");
} else {
digitalWrite(ledPin, LOW);
}
}
Este programa lo que hace básicamente es detectar si ha habido movimiento si hay movimiento enciende el led que lleva Arduino (que corresponde al pin 13)
El caso es que al cargaro en Arduino UNO el led 13 que es el interno de arduino no para de oscilar, con un intervalo de 1-2 segundos, le paso la mano por delante del sensor y nada.
He leído que cuando se carga el programa es normal que haya este tipo de interferencias ya que se está calibrando, pero es que lo que me pasa a mi es que esas interferencias son continuas y no responde a cuando le pongo la mano delante.
¿Alguna idea o algo estoy haciendo mal?