本站搬迁,新网址https://via-dean.com即将涵盖更多内容,敬请访问

Arduino控制PIR运动传感器

 二维码 19
发表时间:2019-01-13 22:59


在这个项目中,我们将了解PIR传感器以及Arduino如何控制PIR传感器作为运动传感器。通过这个项目,您可以了解PIR传感器的工作原理以及如何将PIR传感器连接到Arduino

我们制作了一个使用Arduino,PIR传感器和GSM模块的项目,称为基于GSM的家庭安全系统。如果您了解PIR传感器的工作原理,那么您可以进行许多此类有趣的项目,甚至更复杂的项目。

概述

PIR传感器或无源红外传感器是一种电子设备,可测量物体在其可观察区域内发出的红外(IR)光。PIR传感器中的术语“被动”表示传感器实际上不发射任何红外光,而是被动地检测到其周围物体发射的红外光。

每个对象,在其表面温度高于绝对零度即-273摄氏度时,以红外辐射的形式发射热量。由于辐射处于红外波长,人类无法看到这种辐射。

但PIR传感器会检测这些辐射并将其转换为适当的电信号。

PIR传感器

典型的PIR传感器如下图所示。要连接外部设备,它只有三个引脚,即VCC,数字输出(数据)和GND。

在传感器板的顶部,有一种叫做Fresnal Lens的特殊类型的透镜,它覆盖了实际的热释电传感器。Fresnal镜头的工作是将所有红外辐射聚焦到热释电传感器上。

如果你看一下PIR传感器板的背面,整个电路都安装在那里。PIR传感器模块的大脑是BISS0001 PIR运动检测器IC。在IC附近,我们有两个电位器,一个用于调节灵敏度,另一个用于调节延迟时间。

使用灵敏度调整,您可以控制视野范围,在我们的传感器中,它可以达到7米。使用延迟时间调整,可以保持数字输出持续为高电平,直到移动物体被检测到。

PIR传感器如何工作?

PIR传感器比大多数其他传感器复杂。PIR运动传感器在实施时看起来很简单,因为只要检测到运动,只需要检查传感器数字输出引脚上的高电平信号。

但是,在内部,有很多事情发生,传感器的输入和输出依赖于几个变量。

实际的PIR传感器,即覆盖有透镜的PIR传感器,由两个槽组成,这两个槽都由IR敏感材料制成。在传感器前方没有物体移动时,传感器中的两个插槽都会检测到相同数量的红外辐射。

当传感器前面有物体移动时,如人或猫,它们的辐射首先被其中一个槽解释,两个槽之间的差分输出变为正。

当人离开时,第二个槽检测到辐射,差分输出将变为负值。基于这些输出脉冲检测运动。

测试PIR传感器

由于PIR传感器的数字输出引脚输出高低电平,是根据检测到的物体移动,因此,您可以构建一个简单的电路来测试PIR传感器。

第一个电路由PIR传感器和LED组成。当PIR传感器检测到运动时,LED会亮起。可以在Delay Adjust POT的帮助下调节LED开启的持续时间。

类似的PIR传感器测试电路如下所示,但它由一个蜂鸣器组成。为了驱动蜂鸣器,可以使用像BC547或2N2222这样的NPN晶体管。当传感器检测到任何移动时,蜂鸣器将被激活。  

 

Arduino PIR传感器:使用Arduino的PIR运动传感器

让我们使用Arduino和PIR传感器制作一个小型运动传感器或运动检测器项目。在这个项目中,PIR传感器检测到它前面的任何移动并发出Arduino信号。无论何时检测到任何移动,Arduino都会以蜂鸣器的形式激活警报。

该电路没有实现主要设计,但提供了如何将PIR传感器连接到Arduino的想法以及如何让Arduino使用来自PIR传感器的数据并驱动其他设备或负载,如继电器,GSM模块,蜂鸣器等等  

电路原理图

需要的组件

Arduino ONE

PIR传感器

5V蜂鸣器

面包板

连接线

电源

电路设计

使用Arduino的PIR运动传感器的设计非常简单。PIR传感器模块有三个引脚:VCC,数字输出和GND。将VCC和GND分别连接到+ 5V和GND。然后将PIR传感器的数字输出引脚连接到Arduino的数字I / O引脚8。

由于我们需要指示传感器检测到运动,请将蜂鸣器连接到Arduino的Pin 11。

注意:蜂鸣器直接连接到Arduino。我建议你通过一个晶体管连接它,如测试电路所示。

代码


int buzzer = 11;

int sensor = 8;

int led = 13;

void setup()

{

 pinMode(buzzer, OUTPUT);

 pinMode(sensor, INPUT);

 pinMode(led, OUTPUT);


 digitalWrite(buzzer,LOW);

 digitalWrite(sensor,LOW);


 digitalWrite(led,LOW);


 while(millis()<13000)

 {

   digitalWrite(led,HIGH);

   delay(50);

   digitalWrite(led,LOW);

   delay(50);

 }

 digitalWrite(led,HIGH);


}


void loop()

{

 if(digitalRead(sensor)==HIGH)

 {

  digitalWrite(buzzer,HIGH);

  delay(3000);

  digitalWrite(buzzer,LOW);

  while(digitalRead(sensor)==HIGH);

 }


}




Arduino PIR传感器运动检测器的工作

这个项目的工作非常简单。当系统通电时,Arduino等待PIR传感器进行校准。校准周期设置为10秒,在此期间,PIR传感器前面不应有任何移动。

校准后,PIR传感器将准备好检测其前方的任何移动。如果PIR传感器检测到任何移动,则其数字输出引脚(连接到Arduino的引脚8)将变为高电平。

Arduino将检测到此高电平信号并激活蜂鸣器。


应用

Arduino PIR传感器接口可以在广泛的项目中实现,但重要的是运动检测系统。

使用Arduino和PIR传感器可以实现各种家庭安全系统。




文章分类: 平台创客Arduino
分享到:
联系电话:18112932078
微信号:Via_Dean
邮箱:kiyo84001@163.com
会员登录
登录
我的资料
留言
回到顶部