Módulo sensor de movimiento digital tipo piroeléctrico infrarrojo (PIR), rango 3 m a 7 m, ajustable, con lente fresnel, alimentación 4.5 V a 20 V.
- Sensor piroeléctrico (Pasivo) infrarrojo (También llamado PIR)
- El módulo incluye el sensor, lente, controlador PIR BISS0001, regulador y todos los componentes de apoyo para una fácil utilización
- Rango de detección: 3 m a 7 m, ajustable mediante trimmer (Sx)
- Lente fresnel de 19 zonas, ángulo < 100º
- Salida activa alta a 3.3 V
- Tiempo en estado activo de la salida configurable mediante trimmer (Tx)
- Redisparo configurable mediante jumper de soldadura
- Consumo de corriente en reposo: < 50 μA
- Voltaje de alimentación: 4.5 VDC a 20 VDC
Aplicaciones:
- Productos de seguridad
- Iluminación automática
- Automatización y control industrial
- Puertas y timbres automáticos
- Juguetes
- Entre otros
Rango
Ahora prestemos atención al PIR, podemos ajustar... la sensibilidad en la parte izquierda y el delay en la parte derecha
El delay
(104) Si movemos el potenciómetro todo hacia la izquierda (posición máxima) permanecerá el led encendido durante 20 segundos
(104) Si movemos el potenciómetro todo hacia la derecha (posición mínima) permanecerá el led encendido durante 3 segundos
La sensibilidad
(105) Si movemos el potenciómetro todo hacia la izquierda (posición máxima) permanecerá MAS sensible y pequeñas cantidad de movimientos activará el sensor. Se detectará movimientos de hasta 10 pasos.
(105) Si movemos el potenciómetro todo hacia la izquierda (posición máxima) permanecerá MENOS sensible y necesitará tomar medidas muchos más grandes. Aproximadamente unos 4 pasos
El delay se puede ajustar
Código
int led = 3; // pin for the LED
int input = 2; // input pin for PIR sensor
int pirState = LOW; // initial state - assuming no motion detected
int val; // variable for reading the pin status
void setup() {
Serial.begin(9600);
pinMode(led, OUTPUT); // declare LED as output
pinMode(input, INPUT); // declare sensor as input
}
void loop(){
val = digitalRead(input); // read input value
if (val == HIGH) { // check if the input is HIGH
digitalWrite(led, HIGH); // turn LED ON
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(led, LOW); // turn LED OFF
if (pirState == HIGH){
// we have just turned of
Serial.println("Motion ended!");
// We only want to print on the output change, not state
pirState = LOW;
}
}
}
Fuente: arduinobasics
No hay comentarios:
Publicar un comentario