Arduino - 人体红外传感器(PIR)模块HC-SR501

人体红外模块非常简单,就是普通的三针(VCC,GND,DATA),数据为高、低电平,也就是只有两种结果:高电平为有活动人体被检测到,低电平为没有检测到活动人体。

需要注意的是模块上有几个可以设置的地方:


一、触发方式:
这里写图片描述
L不可重复,H可重复。可跳线选择,默认为H。
A.不可重复触发方式:即感应输出高电平后,延时时间一结束,输出将自动从高电平变为低电平。
B.可重复触发方式: 即感应输出高电平后,在延时时间段内,如果有人体在其感应范围内活动,其输出将一直保持高电平,直到人离开后才延时将高电平变为低电平(感应模块检测到人体的每一次活动后会自动顺延一个延时时间段,并且以最后一次活动的时间为延时时间的起始点)。


二、可调封锁时间及检测距离调节:
这里写图片描述
1、封锁时间:感应模块在每一次感应输出后(高电平变为低电平),可以紧跟着设置一个封锁时间,在此时间段内感应器不接收任何感应信号。此功能可以实现(感应输出时间和封锁时间)两者的间隔工作,可应用于间隔探测产品;同时此功能可有效抑制负载切换过程中产生的各种干扰。(默认封锁时间2.5S)
2、调节检测距离


三、光敏控制:
这里写图片描述
模块预留有位置,可设置光敏控制,白天或光线强时不感应。光敏控制为可选功能,出厂时未安装光敏电阻。

另外,感应器安装需要注意:
红外线热释电人体传感器只能安装在室内,红外线热释电传感器应离地面2.0-2.2米,红外线热释电传感器不要直对窗口,也不要安装在有强气流活动的地方。
热释电红外传感器对于径向移动反应最不敏感, 而对于横切方向 (即与半径垂直的方向)移动则最为敏感。

接线图如下:
这里写图片描述

代码如下:
【对库文件、针脚,无要求】

int Sensor= 2; //data针接口为任意I/O口即可
void setup() {
   Serial.begin(9600);
   pinMode(Sensor, INPUT);
}
void loop() {
   int SensorState = digitalRead(Sensor);
   Serial.println(SensorState);
   delay(100);      
}
  • 11
    点赞
  • 60
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

卢光庆

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值