传感器

您所在的位置:网站首页 地岩热取热原理图解析 传感器

传感器

2023-12-04 18:29| 来源: 网络整理| 查看: 265

HC-SR501 PIR传感器如何工作及其与Arduino接口

每个疯狂的科学家实验室或青少年的秘密室都需要高级保护,以防止流氓特工或兄弟姐妹入侵。如果您是其中之一,则可能应该考虑为您提供被动红外(PIR)传感器。通过PIR传感器,您可以检测不应该有人在房间中的时间。

尽管看起来好像是间谍电影里的东西,但您可能每天都会使用PIR传感器。该传感器与大多数现代安全系统,自动照明开关,车库门开启器以及类似的应用中的传感器相同,在这些应用中,只有在有人在场的情况下才需要操作某些电气设备。

PIR运动传感器如何工作?

如果您不知道,则所有温度高于绝对零温度(0开尔文/ -273.15°C)的物体都会以红外线辐射的形式释放热能,包括人体。一个物体越热,它发出的辐射就越多。

PIR传感器经过专门设计,可检测这种水平的红外辐射。它基本上由两个主要部分组成:一个热释电传感器和一个称为菲涅耳透镜的特殊透镜,它将红外信号聚焦到热释电传感器上。

热释电传感器实际上具有两个矩形狭槽,该狭槽由允许红外辐射通过的材料制成。在它们的后面是两个单独的红外传感器电极,一个负责产生正输出,另一个负责负输出。这样做的原因是我们正在寻找IR级别而不是环境IR级别的变化。两个电极连接在一起,以便彼此抵消。如果一半的红外辐射比另一半多或少,则输出将摆高或摆低。

当传感器闲置时,即传感器周围没有运动;两个插槽检测到的红外辐射量相同,从而导致输出信号为零。

但是当像人类或动物一样温暖的身体经过时; 它首先截取了PIR传感器的一半,这导致两半之间的正差分变化。当温暖的身体离开感应区域时,情况发生相反的变化,从而传感器产生负的差分变化。相应的信号脉冲导致传感器将其输出引脚设置为高电平。

HC-SR501被动红外探测器

对于我们大多数需要检测人员何时离开或进入该区域或接近该区域的Arduino项目,HC-SR501 PIR传感器都是不错的选择。它们功耗低,成本低,坚固耐用,具有宽广的镜头范围,易于连接并且在爱好者中非常受欢迎。

HC-SR501 PIR传感器具有三个输出引脚VCC,输出和接地,如下图所示。它具有内置稳压器,因此可以通过4.5至12伏的任何DC电压(通常使用5V)供电。除此之外,PIR还有两个选项。让我们检查一下。

板上有两个电位器,可调节两个参数:

灵敏度–设置可以检测到运动的最大距离。范围从3米到大约7米。房间的拓扑结构可能会影响您达到的实际范围。时间–设置检测后输出将保持高电平的时间。最少3秒,最多300秒或5分钟。

最后,板上有一个跳线(某些型号的跳线未焊接)。它有两个设置:

H

–这是保持/重复/触发在此位置,只要HC-SR501继续检测到运动,它将继续输出HIGH信号。

L

–这是间歇性的或不重复/不触发的。在此位置,输出将在由TIME电位计调整设置的时间段内保持高电平。

使HC-SR501 PIR传感器更加通用

HC-SR501电路板具有用于两个其他组件的焊盘。这些通常被标记为“ RT”和“ RL”。请注意,在某些板上,标签可能被与组件相对的一侧的“圆顶”透镜覆盖。

RT –用于热敏电阻或温度敏感电阻。除此之外,HC-SR501可以在极端温度下使用,也可以在某种程度上提高检测器的精度。RL –此连接用于光敏电阻(LDR)或光敏电阻。通过添加该组件,HC-SR501将仅在黑暗中运行,这是运动敏感照明系统的常见应用。

可以将其他组件直接焊接到板上,也可以使用电线和连接器将其扩展到远程位置。

HC-SR501 PIR传感器引脚排列

HC-SR501具有3针连接器,可将其与外界连接。连接如下:

VCC 是HC-SR501 PIR传感器的电源,我们连接了Arduino上的5V引脚。

输出量引脚为3.3V TTL逻辑输出。LOW表示未检测到运动,HIGH表示已检测到某些运动。

地线 应该连接到Arduino的地面。

使用PIR传感器作为独立单元

HC-SR501 PIR传感器之所以广受欢迎的原因之一是,HC-SR501是一种用途非常广泛的传感器,完全可以独立发挥作用。通过将其连接到Arduino等某些微控制器,您可以进一步扩展其多功能性。对于我们的第一个实验,我们将单独使用HC-SR501来说明它本身是多么有用。

该实验的接线非常简单。电池连接在传感器的VCC和GND之间,小的红色LED通过220Ω限流电阻连接到输出引脚。而已!

现在,当PIR检测到运动时,输出引脚将变为“高电平”并点亮LED!

这说明了PIR传感器如何在独立应用中使用。

请记住,一旦为电路加电,则需要等待30-60秒,以使PIR适应房间中的红外能量。在此期间,LED可能会闪烁一点。等到LED熄灭,然后挥动手等在LED前面移动,以查看LED点亮!

接线–将PIR传感器连接到Arduino UNO

现在我们已经完全了解了PIR传感器的工作原理,我们可以将其连接到Arduino!

将PIR传感器连接到微控制器非常简单。PIR用作数字输出,因此您需要做的就是侦听输出引脚将HIGH(检测到运动)或LOW(未检测到)翻转。用5V为PIR供电并接地。然后将输出连接到数字引脚2。

您需要将HC-SR501上的跳线设置为H(重新触发)位置,以使其正常工作。您还需要将TIME设置为最少3秒钟,然后将TIME电位计逆时针旋转到底。将灵敏度设置为任意位置,如果不确定,将其设置为中点。

这样,您现在就可以上载一些代码并使PIR正常工作了。

将PIR传感器连接到Arduino UNO

Arduino代码

代码非常简单,基本上只是跟踪引脚2的输入是HIGH还是LOW。

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; } } }

最后,当检测到运动时,我们将在串行监视器上打印一条消息。

串行监视器上的PIR传感器输出

设计基于PIR的应用程序之前需要考虑的事项

与大多数PIR传感器一样,HC-SR501需要一些时间来适应室内的红外能量。首次启动传感器时,这需要30到60秒。

此外,传感器在读取后的“重置”时间约为5或6秒。在此期间,它不会检测到任何运动。

在基于HC-SR501设计系统时,您需要考虑这些延迟时间。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3