Los detectores de movimiento son sensores PIR. Las siglas PIR significan sensor infrarrojo pasivo (Passive Infrared).
Estos sensores PIR reaccionan a los cambios de temperatura. Si una persona camina a través del campo de visión del sensor PIR, su cuerpo crea un cambio en la temperatura y por lo tanto activa el sensor.
Para simplificar, Arduino dispone de módulos PIR listos para usar que ya tienen la electrónica periférica integrada. Así que podemos trabajar directamente con estos tableros de ruptura. Recomiendo usar los siguientes sensores:
- Sensor de movimiento PIR HC-SR501
- Sensor de movimiento AM312
Materiales
Elementos y componentes
Tabla protoboard
Cable o jumpers
Resistencia de 220Ω (o aproximada)
LED
Sensor de movimiento PIR HC-SR501 (Opción 1)
Sensor de movimiento AM312 (Opción 2)
Software, aplicaciones y servicios online
Arduino IDE
Sensor de movimiento PIR HC-SR501
El HC-SR501 es un sensor de movimiento PIR que tiene dos potenciómetros para ajustar la sensibilidad y el tiempo de activación. Además, puede ser configurado como un interruptor de encendido y apagado por medio de un puente. Está diseñado para un voltaje de funcionamiento de 5V y consume 65mA.
Sensor de movimiento AM312
Significativamente más pequeño que el HC-SR501, el AM312 ofrece menos opciones de configuración. Puede integrarse en configuraciones más pequeñas, funciona en un rango de voltaje entre 2.7 – 12V y consume menos de 1mA, lo que lo hace particularmente interesante para aplicaciones alimentadas por baterías.
Conexión Detector de movimiento – Arduino
El circuito es muy simple para ambos sensores. Sólo están conectados a GND, 5V+ y a una entrada digital. Cuando el sensor detecta algún movimiento entonces el Led encenderá.
Código
const int PIR1_PIN = 3;
const int LED1_PIN = 4;
const int PIR2_PIN = 6;
const int LED2_PIN = 7;
void setup() {
pinMode(PIR1_PIN, INPUT);
pinMode(LED1_PIN, OUTPUT);
pinMode(PIR2_PIN, INPUT);
pinMode(LED2_PIN, OUTPUT);
Serial.begin(9600);
}
void loop() {
digitalWrite(LED1_PIN,digitalRead(PIR1_PIN));
digitalWrite(LED2_PIN,digitalRead(PIR2_PIN));
delay(20);
}
Este código de ejemplo es de lo más sencillo. Básicamente se lee el pin digital y su valor se transmite a otro pin digital. Esto significa que los respectivos LEDs se encienden tan pronto como los detectores de movimiento fallan. Por lo tanto, los PIR deben entenderse como entradas digitales. No necesitan ninguna resistencia de pull-up.
Submit your review | |
AM312 Arduino Arduino UNO HC-SR501 Protoboard Proyecto Sensor