概述
人体红外传感器是用来检测人或动物身体上发出的红外辐射的模块,最大测量范围为6m。 如果有人在量程内运动,DO引脚将会输出有效信号,板上的蓝色LED会被点亮。 本模块接口是蓝色色标,说明是双数字接口,需要连接到主板上的蓝色标识的接口。
技术规格
● 工作电压: 5V DC
● 工作温度: -20℃~ + 70℃
● 输出电压: 5 V /高电平,0 V /低电平
● 触发信号: 5 V /高电平
● 保持时间: 2秒
● 检测角度: 120度
● 检测距离: 最大6米
● 尺寸: 51 x 24 x 18 mm (长x宽x高)
功能特性
● 模块上有电位器,可以调节灵敏度;
● 内部的双向鉴幅器可有效抑制干扰;
● 模块有两种工作模式,分为可重复触发和不可触发重复;
● 模块的白色区域是与金属梁接触的参考区域;
● 支持Arduino IDE编程, 并且提供运行库来简化编程;
● 支持mBlock图形化编程,适合全年龄用户;
● 使用RJ25接口连线方便;
● 模块化安装,兼容乐高系列;
● 配有接头支持绝大多数Arduino系列主控板。
引脚定义
人体红外传感器模块有四个针脚的接头,每个针脚的功能如下表:
序号 | 引脚 | 功能 |
---|---|---|
1 | GND | 接地 |
2 | 5V | 接电源 |
3 | mode | 检测模式设置引脚 |
4 | DO | 数字信号输出引脚 |
连线方式
● RJ25连接
由于人体红外传感器模块接口是蓝色色标,当使用RJ25接口时,需要连接到主控板上带有蓝色色标的接口。
以Makeblock Orion为例,可以连接到3,4,5,6号接口,如图:
● 杜邦线连接
当使用杜邦线连接到Arduino Uno主板时,Mode 和 DO引脚 需要链接到 DIGITAL(数字)引脚。如下图所示:
编程指导
● Arduino编程
如果使用Arduino编程,需要调用库Makeblock-Library-master 来控制人体红外传感器。本程序通过Arduino编程用模块来判断附近有无人在运动。
函数 | 功能 |
---|---|
MePIRMotionSensor (uint8_t port) | 选定接口 |
isPeopleDetected() | 检测是否有人走动 |
代码功能介绍:读取 DO的检测结果,并判断是否有人,有人输出1,没人输出0,并将结果输出到Arduino IDE 串口监视器, 周期为100ms。 上传代码到Makeblock主板点击Arduino串口监视器,您将看到运行结果如下:
● mBlock编程
人体红外传感器模块支持MBlock 编程环境. 如下是人体红外传感器控制模块简介:
程序说明 | 介绍 |
---|---|
参数:选定接口 功能:读取模块监测结果 (0 或 1) |
以下是如何使用MBlock控制人体红外传感器模块的例子:
当模块没有检测到有人移动时, 小熊猫会说 “Nobody here!”. 反之,小熊猫会说“Somebody here!”. 运行结果如下:
原理解析
模块中运用了热释红外专用芯片BISS0001,是一种能检测人或动物发射的红外线而输出电信号的传感器。它是由运算放大器、电压比较器、状态控制、延迟时间定时器以及封锁时间定时器等构成的数模混合专用集成电路。当人体辐射的红外线通过菲涅尔透镜被聚焦在热释电红外传感器的探测元上时,电路中的传感器将输出电压信号,从而检测出附近有人在移动。结构框图如下:
此模块上有电位器,可以通过其来调节灵敏度。同时可以通过控制Mode引脚的电平来选择工作模式,当Mode引脚为高电平时,允许重复触发,即时感应。当Mode引脚为低电平时,为不可重复触发模式,当有人在量程内移动时,模块被触发并保持一段时间,期间有无人在量程内移动,状态都不会被干扰。