当前位置:   article > 正文

硬件加油站 | 传感器 - PIR 人体红外传感器_pir传感器检测距离跟温度有关吗?

pir传感器检测距离跟温度有关吗?

什么是 PIR 传感器?

PIR 传感器,全称为“Passive Infrared Sensor”,又称“人体红外线传感器”,是一种可以探测人体热量的电子元件。它通过探测周围环境中的红外线辐射来感知人体的存在,因此通常被用作安防领域中的移动侦测器。

 

PIR 传感器一般由红外线探测器、信号处理器、镜头等部件组成。当有物体(通常是人体)进入传感器感知范围时,红外线探测器会感知到周围环境中的红外线辐射的变化,并将这个信号传递给信号处理器进行处理。如果处理器检测到辐射的变化达到了设定的阈值,它就会触发警报或其他预定的操作。

PIR 传感器广泛应用于各种领域,包括安防、智能家居、自动化控制等。在安防领域,PIR 传感器常常被用于探测入侵者,可以配合其他安防设备,如报警器、监控摄像头等,提高整个安防系统的效能。

PIR 传感器能检测到什么?

PIR 传感器主要用于检测人体的存在,具体来说,它可以检测到发出红外线辐射的物体,包括人体、动物、车辆等。当一个物体进入传感器的感知范围内,它就会感知到这个物体发出的红外线辐射的变化,并据此判断是否有人体或动物等物体进入。

 

需要注意的是,PIR 传感器对红外线辐射的灵敏度非常高,因此它还可以检测到一些在室温下发出的较强的红外线辐射的物体,例如热水器、电视等电器设备。这些设备在运行时会产生较大的热量,PIR 传感器可以通过感知它们发出的辐射来判断它们的状态。

需要注意的是,PIR 传感器并不会直接探测物体的形状、大小或颜色等特征,而是仅仅依靠红外线辐射的变化来判断物体的存在。因此,在使用 PIR 传感器时需要合理安置和调节,以避免误判和漏判。

Grove – mini PIR 人体运动传感器

 

Grove – mini PIR 人体运动传感器是一种紧凑、低功耗且经济高效的 PIR 传感器(尺寸:20mmx20mmx12mm),适用于检测距离要求相对较小的应用场景。

理论检测距离可达3m至5m,但是,推荐最佳检测距离2m,最佳温度25°C。

传感器的灵敏度是可调的,电路板背面有一个预留的引脚,以便您可以焊接滑动变阻器来调整灵敏度。如果您认为灵敏度不够,这里有一个技巧,将塑料盖向上拖动一点将有助于增强灵敏度。

案例:防盗入侵监测

功能介绍:利用Mini IR 运动传感器可以检测特定区域是否有人,如果有人经过则触发警报装置!

硬件清单如下:

Seeeduino Lotus

 Grove - mini PIR motion sensor

 Grove - Piezo Buzzer

Grove - Red LED

第一部分,硬件安装

  • 将Grove-mini PIR 运动传感器连接到 Lotus主控板D2接口上,

  • 将Grove - Red LED 模块连接到 Lotus主控板D4接口上,

  • 将Grove - Piezo Buzzer 模块连接到Lotus主控板D5接口上,如下图所示。

 

第二部分,编写Arduino程序

编写Arduino程序,当有人经过时蜂鸣器和Led灯报警,代码如下:

  1. #define PIR_MOTION_SENSOR 2 //Use pin 2 to receive the signal from the module
  2. int BuzzerPin = 5;     // set D5 as buzzer
  3. int LED_RAD = 4;       // set D4 as LED
  4. void setup() {
  5.     Serial.begin(9600);
  6.     pinMode(PIR_MOTION_SENSOR, INPUT); 
  7.     pinMode(BuzzerPin, OUTPUT); 
  8.     pinMode(LED_RAD, OUTPUT); 
  9. }
  10. void loop() {
  11.     if (digitalRead(PIR_MOTION_SENSOR)) { //判断如果有人经过
  12.         analogWrite(BuzzerPin, 100);  // 让蜂鸣器发声
  13.         digitalWrite(LED_RAD, HIGH);  // 让Led灯为高电平状态,并保持3秒钟
  14.         delay(3000);
  15.         analogWrite(BuzzerPin, 0); // 让蜂鸣器停止发声
  16.         digitalWrite(LED_RAD, LOW); // 让Led灯为低电平状态,并保持4秒钟
  17.         delay(4000);
  18.     }
  19. }

这是一个简单的Arduino程序,使用一个PIR运动传感器来探测运动并使用一个蜂鸣器和LED灯来发出声音和光信号。

#define PIR_MOTION_SENSOR 2 //Use pin 2 to receive the signal from the module

 

此代码,定义PIR运动传感器引脚,常量PIR_MOTION_SENSOR 为2号引脚,

  1. int BuzzerPin = 5;     // set D5 as buzzer
  2. int LED_RAD = 4;       // set D4 as LED

接下来定义了两个输出引脚:一个是变量BuzzerPin,用于连接蜂鸣器,另一个是变量LED_RAD,用于连接LED灯。

  1. void setup() {
  2.     Serial.begin(9600);
  3.     pinMode(PIR_MOTION_SENSOR, INPUT); 
  4.     pinMode(BuzzerPin, OUTPUT); 
  5.     pinMode(LED_RAD, OUTPUT); 
  6. }

在setup()函数中,通过调用pinMode()函数来设置每个引脚的模式。将PIR_MOTION_SENSOR引脚设置为INPUT输入模式,将BuzzerPin和LED_RAD引脚设置为OUTPUT输出模式。

  1. void loop() {
  2.     if (digitalRead(PIR_MOTION_SENSOR)) { //判断如果有人经过
  3.         analogWrite(BuzzerPin, 100);  // 让蜂鸣器发声
  4.         digitalWrite(LED_RAD, HIGH);  // 让Led灯为高电平状态,并保持3秒钟
  5.         delay(3000);
  6.         analogWrite(BuzzerPin, 0); // 让蜂鸣器停止发声
  7.         digitalWrite(LED_RAD, LOW); // 让Led灯为低电平状态,并保持4秒钟
  8.         delay(4000);
  9.     }
  10. }

在loop()函数中,使用digitalRead()函数读取PIR运动传感器引脚的状态。如果引脚状态为HIGH,则表示检测到人的运动。

在这种情况下,程序会执行以下操作:

  • 使用analogWrite()函数向BuzzerPin引脚发送PWM信号,以便控制蜂鸣器的音量(在这里是100)。

  • 将LED_RAD引脚设置为HIGH,点亮LED灯。

  • 使用delay()函数暂停3秒钟。

  • 使用analogWrite()函数将BuzzerPin引脚的PWM信号设置为0,停止蜂鸣器发声。

  • 将LED_RAD引脚设置为LOW,关闭LED灯。

  • 使用delay()函数延时4秒钟,然后重复检测运动。

因此,当检测到运动时,程序将发出声音和光信号,以警示用户。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/651831
推荐阅读
相关标签
  

闽ICP备14008679号