0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何将PIR与Arduino集成

454398 来源:网络整理 作者:网络整理 2019-11-26 14:35 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

步骤1:什么是PIR传感器

= 1》

被动红外传感器是一种对象检测传感器。物体检测传感器有两种类型

主动物体检测传感器

被动物体检测传感器

物体存在传感器和接近传感器需要磁场,超声或红外辐射的活动源。被动红外传感器不需要任何此类源,并且对从被检测物体辐射的热量做出被动响应。

步骤2:PIR有什么作用?

通常被称为PIR的被动红外运动传感器检测黑体辐射,所有物体都根据其相对于绝对零温度的温度发射黑体辐射。传感器对以10μm(10微米或10,000nm)为中心的红外辐射作出响应。这是人和动物的大概体温。

“被动红外” 一词中的“被动” 是指人体的行为。探测器,它被动地接收红外辐射。接近传感器必须主动产生自己的红外辐射,该红外辐射会被附近的物体干扰或反射。

步骤3:原理图符号

如何将PIR与Arduino集成

步骤4:PIR的典型应用

1)对运动敏感的室外照明几乎总是基于PIR。类似地,当PIR指示人类活动时,安全系统可能会发出警报或激活摄像机。

2)野生动物监视系统使用PIR启动摄像机,然后摄像机可以运行预设的时间间隔。

3)已开发出使用后向PIR来检测行人的汽车警告系统。

4)工业室内照明可能会使用PIR,当人们进入时自动将灯打开房间,然后在房间中不再检测到人时关闭灯光(经过一定时间延迟后)。目标是防止因员工忘记关灯而浪费能源。

步骤5:PIR的工作原理

PIR模块包含多个组件。最可见的是至少15个小透镜的阵列,这些透镜将来自环境区域的红外光聚焦到热电探测器上,也称为热电传感器。检测器的响应由放大器处理,以便信号可以触发机电继电器或固态继电器。该继电器操作外部设备,例如灯光或警报器。

可能需要附加电路允许用户控制PIR模块的灵敏度以及继电器保持闭合状态的时间。用户还可以设置PIR处于活动状态的时间,或者另外的光电晶体管可以在白天关闭PIR。如果包含光电晶体管,则其灵敏度是可调的。

步骤6:热释电传感器简介

热释电探测器实际上是一种压电器件。它基于钽酸锂晶片,该晶片会响应入射的热辐射而产生较小的电压。

但是,与其他压电元件一样,它对稳态输入也没有响应,因此必须由过渡激活。这与其他类型的光传感器(例如红外光电二极管)不同,后者的响应与温度输入始终相关

步骤7:热释电传感器在一段时间内的响应

热释电传感器的响应如上图所示

步骤8:PIR传感器内部的元件

div》 PIR模块中的热释电检测器安装在密封的金属容器中,如上图A所示。检测器中的矩形窗口通常由硅制成,它对可见波长不透明,但对长波红外辐射透明。

PIR中使用的热释电检测器至少包含两个极性相反的元素,串联连接。如果温度的突然变化对两个元素都产生同等影响,则它们的响应将相互抵消。因此,检测器忽略了环境温度的变化。但是,如果适当波段中的红外辐射源先影响一个元素,则检测器将发出两个极性相反的脉冲

下一步是当辐射落在两个元素上时显示输出效果

步骤9:辐射落在两个热电元件上时输出的影响

顶部:在热释电探测器中,如果温度变化同时影响到两个极性相反的元件,则它们的电压会相互抵消。

底部:如果一个元素先于另一个元素被触发,则检测器会发出信号

步骤10:PIR的变体

PIR传感器模块可安装在小板上,例如上图所示。检测范围是5到10米,由板上的跳线选择。照片中可见的三个引脚分别用于电源(3VDC至6VDC),接地和输出。使用5VDC电源时,输出可提供高达23mA的电流。该模块在空闲状态下的功耗仅为130μA,在活动状态但没有负载时其功耗为3mA。

这种类型的电路板仍需要额外的组件来设置灯的“开启”时间或警报,并在白天关闭PIR。可以将PIR作为包含两个元件和FET晶体管的单个组件来购买,以放大信号。提供表面安装和通孔版本,需要3VDC至15VDC的典型电源。但是,作为“裸机”组件购买的PIR需要使用比较器运算放大器的大量外部电路。电路设计并非易事,会带来一些实际问题,例如运算放大器对由激活共享相同电源的继电器引起的电压尖峰敏感。

步骤11:测量过程中可能出现的问题

温度敏感性

在温暖的天气中,PIR视场中的物体将趋向于温暖,它们与人体皮肤之间的温差将减小。这会降低PIR的性能。

检测器窗口漏洞

检测器上的硅窗口易受污物的影响或油脂。如果没有镜片保护,请避免触摸该组件。

水分易感性

水吸收远红外光。因此,镜头或检测器上的凝结会降低性能,并且PIR在大雨或大雪中可能无法正常工作。

步骤12:Arduino和PIR接口电路用于继电器触发

上图显示了用于继电器触发的Ardunio和PIR接口电路。

步骤13:Arduino代码集成PIR和触发继电器。

int Relay_PIN = 9; // choose the pin for the LED

int Sensor_Pin = 2; // 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(Relay_PIN, OUTPUT); // declare LED as output

pinMode(inputPin, INPUT); // declare sensor as input

Serial.begin(115200);

}

void loop()

{

val = digitalRead(Sensor_Pin); // read input value

if (val == HIGH) // check if the input is HIGH

{

digitalWrite(Relay_PIN, LOW); // turn Relay ON, Relay is low level triggered

if (pirState == LOW) // we have just turned on

{

Serial.println(“Hey We found you moving!”); // We only want to print on the output change, not state

pirState = HIGH;

}

}

else

{

digitalWrite(Relay_PIN, HIGH); // turn Relay OFF

if (pirState == HIGH)

{

// we have just turned of

Serial.println(“Please stop”);

// We only want to print on the output change, not state

pirState = LOW;

}

}

}
责任编辑:wv

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • PIR
    PIR
    +关注

    关注

    0

    文章

    76

    浏览量

    18612
  • Arduino
    +关注

    关注

    190

    文章

    6515

    浏览量

    195994
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    如何将某个函数或变量放在固定的地址 ?

    如题,如何将某个函数或者变量放在固定的地址?类似于__attribute__( at(绝对地址) ),用的nucleistudio ide, __attribute__( at(绝对地址) )出现警告 at属性被忽视,有类似的属性吗?
    发表于 11-07 06:07

    N9H2x如何将视频转换为 AVI 文件?

    N9H2x如何将视频转换为 AVI 文件?
    发表于 09-01 08:05

    如何将GCC项目导入NuEclipse?

    如何将GCC项目导入NuEclipse?
    发表于 09-01 07:04

    请问使用 NUC505 时如何将代码放入 SRAM 中执行?

    使用 NUC505 时如何将代码放入 SRAM 中执行?
    发表于 08-28 08:25

    请问如何将ISP写入Nuvoton 8051 MCU系列?

    如何将ISP写入Nuvoton 8051 MCU系列?
    发表于 08-18 07:34

    用树莓派实现自动感应照明:PIR传感器教程!

    一个快速项目,PIR传感器与树莓派进行接口连接。本项目所用组件硬件组件树莓派2x1被动红外(PIR)运动传感器x1蜂鸣器(可选)x1面包板(通用型)x1跳线x1项目故事x1开始项目工作原理被动红外
    的头像 发表于 06-21 20:32 1093次阅读
    用树莓派实现自动感应照明:<b class='flag-5'>PIR</b>传感器教程!

    如何将K230 image转成jpg?

    如何将K230image转成jpg,我想获取图片,传回我自己的系统 你好,可以使用img.to_jpeg()来对其进行压缩。
    发表于 06-12 06:41

    技术分享 | 迅为RK3568开发板如何将 Linux 板卡虚拟成U盘

    技术分享 | 迅为RK3568开发板如何将 Linux 板卡虚拟成U盘
    的头像 发表于 06-04 10:57 887次阅读
    技术分享 | 迅为RK3568开发板<b class='flag-5'>如何将</b> Linux 板卡虚拟成U盘

    如何将firware安装到使用MC9S08JS16CWJ的新USBDM中?

    我正在根据您名为 USBDM_SWD_SER_JS16CWJ_V3_1 的文件制作一个 USBDM。 现在,我遇到了一个问题,我不知道如何将 firware 安装到使用 MC9S08JS16CWJ
    发表于 03-24 07:46

    如何将Linux安装包快速转成玲珑包

    本篇将以 motrix 为例为大家展示如何将 Linux 安装包快速转成玲珑包。
    的头像 发表于 03-12 16:01 1267次阅读
    <b class='flag-5'>如何将</b>Linux安装包快速转成玲珑包

    XYC-PIR233C-S0热释电人体传感器

    XYC-PIR233C-S0热释电人体传感器
    发表于 02-26 14:58 1次下载

    如何将项目从IAR迁移到Embedded Studio

    本文描述如何将IAR EWARM项目迁移到SEGGER Embedded Studio(简称SES)中。
    的头像 发表于 02-25 17:11 1070次阅读
    <b class='flag-5'>如何将</b>项目从IAR迁移到Embedded Studio

    如何将RT-Thread移植到NXP MCUXPressoIDE上

    RT-Thread默认支持的IDE只有IAR 和 Keil, 那如何将RT-Thread移植到NXP MCUXPressoIDE上呢?本文内容比较简单但稍有琐碎,希望对有需要的小伙伴有所帮助。
    的头像 发表于 02-13 10:37 2443次阅读
    <b class='flag-5'>如何将</b>RT-Thread移植到NXP MCUXPressoIDE上

    如何将python文件导入到ROS系统中

    本文通过使用myCobot机械臂进行QR码视觉追踪的实践案例分析,介绍如何将 python 文件导入到 ROS 系统中。
    的头像 发表于 02-11 11:08 1207次阅读
    <b class='flag-5'>如何将</b>python文件导入到ROS系统中

    AN3408-如何将12位ADC用于力敏电阻

    电子发烧友网站提供《AN3408-如何将12位ADC用于力敏电阻.pdf》资料免费下载
    发表于 01-21 14:38 0次下载
    AN3408-<b class='flag-5'>如何将</b>12位ADC用于力敏电阻