Cómo funciona el sensor PIR HC-SR501 y cómo conectarlo a Arduino

Si estás buscando una forma simple y efectiva de detectar movimiento en tus proyectos de Arduino, el sensor PIR HC-SR501 es la solución perfecta. En este artículo, te explicaremos detalladamente cómo funciona este sensor de movimiento y cómo puedes conectarlo fácilmente a tu placa de Arduino. ¡Descubre todo lo que necesitas saber para incorporar esta poderosa herramienta a tus creaciones electrónicas!

Ya sea que desee construir una alarma antirrobo, una cámara de seguimiento o desee despertar accesorios animados de Halloween cuando haya gente pidiendo dulces en su puerta, definitivamente debería considerar comprar un infrarrojo pasivo (PIR) HC-SR501. sensor en sí.

El sensor PIR le permite detectar cuando una persona o animal entra o sale del alcance del sensor. Este sensor se puede encontrar en la mayoría de los sistemas de seguridad modernos, interruptores automáticos de luz, abridores de puertas de garaje y aplicaciones similares en las que queremos reaccionar al movimiento.

Antes de entrar en detalles, primero comprendamos cómo funciona realmente un sensor PIR.

¿Cómo funciona un sensor PIR?

Todos los objetos, incluido el cuerpo humano, emiten energía térmica en forma de radiación infrarroja a temperaturas superiores al cero absoluto (0 Kelvin / -273,15 °C). Cuanto más caliente está un objeto, más radiación emite. Esta radiación no es visible para el ojo humano porque se emite en el rango de longitud de onda infrarroja. El sensor PIR está diseñado específicamente para detectar dichos niveles de radiación infrarroja.

Un sensor PIR consta de dos partes principales:

  1. Un sensor piroeléctricoque puedes ver en la imagen de abajo como un metal redondo con un cristal rectangular en el medio.
  2. Una lente especial llamada lente de Fresnel que enfoca las señales infrarrojas en el sensor piroeléctrico.
Cómo funciona el sensor PIR HC-SR501 y cómo conectarlo a Arduino

El sensor piroeléctrico

Un sensor piroeléctrico consta de una ventana con dos rendijas rectangulares y está fabricado de un material (normalmente recubierto de silicio) que deja pasar la radiación infrarroja. Hay dos electrodos sensores de infrarrojos separados detrás de la ventana, uno de los cuales es responsable de generar la señal de salida positiva y el otro de generar la señal de salida negativa.

Los dos electrodos están conectados para anularse entre sí. Esto se debe a que buscamos cambios en los valores de IR, no valores de IR en el área circundante. Es por eso que obtenemos el resultado cuando una mitad ve más o menos radiación IR que la otra.

Cómo funciona el sensor PIR HC-SR501 y cómo conectarlo a Arduino

Cuando no hay movimiento alrededor del sensorAmbas ranuras detectan la misma cantidad de radiación infrarroja, lo que da como resultado una señal de salida cero.

Pero cuando aparece un cuerpo cálido como el de un humano o un animal, inicialmente intercepta la mitad del sensor. Esto da como resultado un cambio de diferencia positivo entre las dos mitades. Cuando el cuerpo caliente intercepta la otra mitad del sensor (abandona el rango de detección), sucede lo contrario y el sensor produce un cambio diferencial negativo. Al leer este cambio de voltaje, se detecta movimiento.

Cómo funciona el sensor PIR HC-SR501 y cómo conectarlo a Arduino

La lente de Fresnel

Es posible que sienta que la lente Fresnel utilizada aquí realmente no hace nada. En realidad, esto aumenta el alcance y el campo de visión del sensor PIR. Su diseño delgado y liviano y su excelente capacidad de captación de luz lo hacen extremadamente útil para hacer PIR pequeños pero potentes.

Una lente de Fresnel consta de una serie de ranuras concéntricas grabadas en el plástico. Estos contornos actúan como superficies de refracción individuales y recogen rayos de luz paralelos en un punto focal. Esto permite que una lente Fresnel, aunque más pequeña, enfoque la luz de manera similar a una lente óptica tradicional.

Cómo funciona el sensor PIR HC-SR501 y cómo conectarlo a Arduino

Para aumentar el alcance y el campo de visión del sensor PIR, la lente en realidad se divide en múltiples secciones facetadas, cada sección de las cuales es una lente Fresnel separada.

Cómo funciona el sensor PIR HC-SR501 y cómo conectarlo a Arduino

Las diferentes facetas y sublentes crean una serie de áreas/zonas de detección que están anidadas entre sí. Esta es la razón por la que los centros de las lentes en la imagen de arriba son «inconsistentes»: cada segundo apunta a una mitad diferente del elemento del sensor PIR.

Cómo funciona el sensor PIR HC-SR501 y cómo conectarlo a Arduino

Descripción general del hardware del sensor PIR HC-SR501

Para la mayoría de nuestros proyectos Arduino que requieren detectar si alguien ha entrado o salido del área, el sensor PIR HC-SR501 es una buena opción. Es energéticamente eficiente, económico, fácil de conectar y extremadamente popular entre los aficionados.

Este sensor PIR en sí es bastante simple y funciona desde el primer momento. Simplemente aplique un voltaje de 5V – 12V y conéctelo a tierra. La salida del sensor pasa a ALTA cuando se detecta movimiento y a BAJA cuando está inactivo (no se detecta movimiento).

Al conectar esta salida al microcontrolador, puede responder al movimiento encendiendo o apagando las luces, activando un ventilador, activando un accesorio de Halloween o quizás tomando una foto de un intruso.

Y lo mejor es que consume menos de 2 mA de energía y puede detectar movimiento hasta 7 metros (21 pies) con control de sensibilidad.

Controlador PIR BISS0001

El corazón del módulo es un controlador de infrarrojos pasivo IC (PIR) – BISS0001. Debido a su inmunidad a las interferencias, el BISS0001 es uno de los controladores PIR más estables del mercado.

Este chip toma la señal de salida del sensor piroeléctrico y la procesa ligeramente para generar un pulso de salida digital.

Cómo funciona el sensor PIR HC-SR501 y cómo conectarlo a Arduino

Puede obtener más información sobre BISS0001 en ficha de datos.

Actuación

El módulo cuenta con un regulador de voltaje de precisión de 3,3 V, por lo que puede funcionar con cualquier voltaje de CC de 4,5 a 12 voltios, aunque comúnmente se usa 5 V.

El módulo está equipado con un diodo de protección (también llamado diodo de seguridad) para proteger el módulo contra voltaje y corriente inversa. Incluso si accidentalmente conecta la alimentación con la polaridad incorrecta, su módulo no se dañará.

Cómo funciona el sensor PIR HC-SR501 y cómo conectarlo a Arduino

Ajuste de sensibilidad

El sensor PIR tiene un potenciómetro en la parte trasera para ajustar la sensibilidad.

Cómo funciona el sensor PIR HC-SR501 y cómo conectarlo a Arduino

El rango máximo de detección se establece con este potenciómetro. La sensibilidad se puede ajustar dentro de un rango de aproximadamente 3 a 7 metros (9 a 21 pies). Sin embargo, la topología de su habitación puede afectar el alcance real. Girar el potenciómetro en el sentido de las agujas del reloj aumenta la sensibilidad y, por tanto, el alcance y viceversa.

Ajuste de retardo de tiempo

En la parte posterior del sensor PIR hay otro potenciómetro para ajustar el retardo de tiempo.

Cómo funciona el sensor PIR HC-SR501 y cómo conectarlo a Arduino

Este potenciómetro determina cuánto tiempo la salida permanece ALTA después de que se detecta movimiento. Se puede configurar desde 1 segundo hasta aproximadamente 3 minutos. Girar el potenciómetro en el sentido de las agujas del reloj aumenta el retraso, mientras que girarlo en el sentido contrario a las agujas del reloj disminuye el retraso.

Puente de selección de disparador

Hay dos modos de disparo que determinan cómo reacciona el sensor cuando se detecta movimiento.

Modo de disparo único: El movimiento constante activa un único gatillo.

Modo de disparo múltiple: El movimiento constante desencadena una serie de factores desencadenantes.

La placa viene con un puente de montaje (algunos módulos tienen un puente de soldadura) para que puedas elegir entre dos modos:

Cómo funciona el sensor PIR HC-SR501 y cómo conectarlo a Arduino

l – Al seleccionar esta opción se establece el modo de disparo único. En este modo, la salida pasa a ALTA tan pronto como se detecta movimiento y permanece ALTA durante un período de tiempo determinado por el potenciómetro de retardo de tiempo. Se bloquea una mayor detección hasta que la salida vuelve a BAJA una vez transcurrido el tiempo de retardo. Si todavía hay movimiento, la salida vuelve a ser ALTA. Como puede ver en la imagen a continuación, la solicitud n.° 3 se ignora por completo.

Cómo funciona el sensor PIR HC-SR501 y cómo conectarlo a Arduino

h – Al seleccionar esta opción se configura el modo de disparo múltiple. En este modo, la salida pasa a ALTA tan pronto como se detecta movimiento y permanece ALTA durante un período de tiempo determinado por el potenciómetro de retardo de tiempo. A diferencia del modo de disparo único, la detección adicional no se bloquea, por lo que el retardo se restablece cada vez que se detecta movimiento. Tan pronto como se detiene el movimiento, la salida vuelve a BAJA sólo después de un retraso de tiempo. De ahí el nombre de modo de disparo múltiple.

Cómo funciona el sensor PIR HC-SR501 y cómo conectarlo a Arduino

Componentes opcionales: termistor y LDR

El módulo HC-SR501 tiene terminales de soldadura para dos componentes adicionales. Generalmente se denominan “RT” y “RL”. Tenga en cuenta que en algunas placas la etiqueta puede quedar oculta por una lente Fresnel en el lado opuesto de los componentes.

Cómo funciona el sensor PIR HC-SR501 y cómo conectarlo a Arduino

RT – Esta conexión está destinada a un termistor o una resistencia sensible a la temperatura. Esto significa que el HC-SR501 también se puede utilizar a temperaturas extremas. Esto también aumenta en cierta medida la precisión del detector.

RL – Este conector está diseñado para una resistencia dependiente de la luz (LDR) o un fotorresistor. Al agregar este componente, el HC-SR501 también puede funcionar en la oscuridad. Esto es útil para construir sistemas de iluminación sensibles al movimiento.

Estos componentes adicionales se pueden soldar directamente al módulo o expandirse a ubicaciones remotas mediante cables y conectores.

Especificaciones técnicas

Aquí están las especificaciones:

Tensión de funcionamiento 4,5 – 20 V (normalmente 5 V)
Consumo máximo de corriente <2mA
Tiempo de retardo ~ 1 segundo a 3 minutos
Distancia de detección 3 – 7 metros (9 – 21 pies)
Ángulo de detección 120 grados (normalmente)

Asignación de pines del sensor PIR HC-SR501

El HC-SR501 tiene un conector de 3 pines. Las marcas quedan ocultas por la lente de Fresnel. La asignación de pines se puede encontrar en la siguiente imagen.

Cómo funciona el sensor PIR HC-SR501 y cómo conectarlo a Arduino

VCC es la fuente de alimentación para el sensor. Puede conectar un voltaje de entrada entre 5 y 12 V a este pin, pero normalmente se utilizan 5 V.

producción El pin es la salida lógica TTL de 3,3 V. Se pone ALTO cuando se detecta movimiento y BAJO cuando está inactivo (no se detecta movimiento).

Tierra es el pin de tierra.

Uso del sensor PIR como unidad independiente

Una de las razones por las que el sensor PIR HC-SR501 es extremadamente popular es que es un sensor muy versátil y bastante capaz por sí solo. Puedes aumentar aún más la versatilidad conectándolo a un microcontrolador como Arduino.

Para nuestro primer experimento, usaremos el HC-SR501 para mostrar lo útil que es por sí solo.

El cableado para este experimento es muy sencillo. Conecte las baterías al VCC y GND del sensor mediante una resistencia limitadora de corriente de 220 Ω y un pequeño LED rojo al pin de salida. ¡Eso es todo!

Ahora, cuando el PIR detecta movimiento, el pin de salida pasa a “ALTO” y el LED se enciende.

Cómo funciona el sensor PIR HC-SR501 y cómo conectarlo a Arduino
Esto ilustra cómo se puede utilizar un sensor PIR en aplicaciones independientes.

Recuerda que después de encender el circuito, debes esperar entre 30 y 60 segundos para que el PIR se ajuste a la energía infrarroja de la habitación. Durante este tiempo, el LED puede parpadear ligeramente. Espere a que el LED se apague por completo, luego camine frente a él o agite la mano y observe cómo el LED se ilumina en consecuencia.

Esta salida PIR se puede conectar directamente a un módulo de relé si desea encender o apagar algo en función del movimiento.

Cableado de un sensor PIR a un Arduino

Ahora que entendemos completamente cómo funciona el sensor PIR, ¡podemos comenzar a conectarlo a nuestro Arduino!

Conectar el sensor PIR al Arduino es realmente sencillo. Suministre 5 V al PIR y conecte tierra a tierra. El PIR actúa como una salida digital, por lo que sólo necesitas escuchar el pin de salida. Así que conecte la salida al pin digital número 8 de Arduino.

Para que el HC-SR501 funcione correctamente, coloque el puente en la posición H (Modo de disparo múltiple). También debe configurar el retardo de tiempo en al menos 3 segundos y girar el potenciómetro de retardo de tiempo en sentido antihorario hasta que se detenga. Finalmente, configura el potenciómetro de sensibilidad en cualquier posición o si no estás seguro, configúralo en el medio.

La siguiente tabla enumera las conexiones de pines:

Sensor PIR HC-SR501 arduino
VCC 5V
Tierra Tierra
FUERA DE octavo

La siguiente imagen muestra cómo conectar el sensor PIR HC-SR501 al Arduino.

Cómo funciona el sensor PIR HC-SR501 y cómo conectarlo a Arduino
Cableado del sensor PIR a Arduino UNO

Ahora puedes cargar el código y hacer que el PIR funcione.

código de ejemplo de arduino

El código es muy simple. Básicamente, simplemente rastrea si la entrada en el pin 8 es ALTA o BAJA.

int ledPin = 13;                // choose the pin for the LED
int inputPin = 8;               // 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
 
void setup() {
  pinMode(ledPin, OUTPUT);      // declare LED as output
  pinMode(inputPin, INPUT);     // declare sensor as input
 
  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
	
    if (pirState == LOW) 
	{
      Serial.println("Motion detected!");	// print on output change
      pirState = HIGH;
    }
  } 
  else 
  {
    digitalWrite(ledPin, LOW); // turn LED OFF
	
    if (pirState == HIGH)
	{
      Serial.println("Motion ended!");	// print on output change
      pirState = LOW;
    }
  }
}

Pase su mano sobre el sensor mientras el sensor está hacia arriba. El terminal serie debería mostrar un mensaje de «Movimiento detectado».

Cómo funciona el sensor PIR HC-SR501 y cómo conectarlo a Arduino
Salida del sensor PIR en el monitor serie

Cosas a considerar antes de diseñar aplicaciones basadas en PIR

Al diseñar un sistema basado en el HC-SR501, debe considerar los siguientes tiempos de retardo.

tiempo de bloqueo

Cuando la salida del sensor pasa a BAJA, permanece BAJA durante aproximadamente 2 segundos. La detección de movimiento está bloqueada.

Cómo funciona el sensor PIR HC-SR501 y cómo conectarlo a Arduino

Suponga que ha configurado el sensor para un retraso de 4 segundos y ha configurado el puente en «L». Entonces, cuando mueves la mano frente al sensor, la salida pasa a ALTA durante 4 segundos y luego a BAJA durante aproximadamente 2 segundos. Cualquier solicitud durante este período será completamente ignorada; Como puede ver, la solicitud n.° 2 se ignora aquí.

Retardo de encendido

Como la mayoría de los sensores PIR, el HC-SR501 tarda aproximadamente de 30 a 60 segundos en realizar la secuencia de inicialización después de encenderse. En este punto, aprende la firma infrarroja del entorno circundante. Esencialmente, se calibra con el entorno para determinar qué constituye movimiento.

Durante este período de calibración, es probable que se produzcan activaciones falsas, por lo que se deben ignorar todas las activaciones durante este período. Asegúrese también de que no haya demasiado movimiento delante del sensor durante la autocalibración, ya que esto puede afectar el proceso de calibración.

Error 403 The request cannot be completed because you have exceeded your quota. : quotaExceeded

Cómo funciona en sensor PIR HC-SR501

El sensor PIR HC-SR501 es un sensor de movimiento pasivo de infrarrojos (PIR) que se utiliza en una variedad de aplicaciones, desde alarmas para el hogar hasta cámaras de vigilancia. Funciona detectando radiación infrarroja emitida por objetos que se mueven en su rango de detección, como personas o animales.

¿Cómo funciona un sensor PIR?

Un sensor PIR consta de dos partes principales: un sensor piroeléctrico y una lente fresnel. El sensor piroeléctrico detecta cambios en la radiación infrarroja emitida por los objetos en movimiento, mientras que la lente fresnel enfoca las señales infrarrojas en el sensor.

Componentes del sensor HC-SR501

El sensor HC-SR501 es fácil de usar y se conecta a una microcontroladora como Arduino. Tiene un controlador PIR llamado BISS0001 que procesa la señal del sensor piroeléctrico. Además, cuenta con ajustes de sensibilidad y retardo de tiempo que te permiten personalizar su funcionamiento.

Conexión a Arduino

Conectar el sensor HC-SR501 a Arduino es sencillo. Solo necesitas alimentarlo con 5V, conectar la tierra y el pin de salida a un pin digital de Arduino. Puedes usar el sensor para encender luces, activar dispositivos o crear sistemas de iluminación sensibles al movimiento.

Consideraciones al diseñar aplicaciones basadas en PIR

Al diseñar sistemas basados en el sensor HC-SR501, debes tener en cuenta los periodos de bloqueo y retraso. El sensor tiene un tiempo de bloqueo de aproximadamente 2 segundos después de detectar movimiento y un tiempo de calibración de 30 a 60 segundos al encenderlo. Esto evita falsas alarmas y garantiza un funcionamiento óptimo.

  1. Lockout Time: El sensor tiene un periodo de bloqueo de 2 segundos después de cada detección.
  2. Power On Delay: El sensor necesita tiempo de calibración al encenderse para ajustarse al entorno.

Con el sensor HC-SR501, puedes crear proyectos de detección de movimiento personalizados e innovadores. ¡Explora las posibilidades que ofrece este versátil sensor!

Fuente: losant.com

2 comentarios en «Cómo funciona el sensor PIR HC-SR501 y cómo conectarlo a Arduino»

Deja un comentario