介绍:PIR传感器与NodeMCU的使用
这是一个简单的指导。
在本教程中,我们将学习如何使用红外传感器/HC-SR501传感器。
目录
步骤1:材料准备
硬件组件
NodeMCU
PIR传感器/ HC-SR501
面包板
跳线
微型USB电缆
LED
* 100欧姆
软件组件
Arduino IDE
步骤2:原理说明
什么是PIR传感器?
Pyroelectric / Passive InfraRed 传感器:红外人体传感器可以感测运动的预提,通常用于检测人是否在红外检测范围内移动。它们体积小巧,价格低廉,功耗低,易于使用,不会磨损。
因此,这个通常用于家庭或企业中的家电使用。它们通常被称为PIR,“被动红外”,“热电”或“红外运动”传感器。
输出:数字脉冲高电平(3V)触发时(运动检测)数字低电平空闲(无运动检测)。脉冲长度由PCB上的电阻和电容决定,传感器与传感器之间不同。灵敏度范围:高达20英尺(6米)的检测范围。
步骤3:电路连接
将PIR传感器连接到NodeMCU非常简单。PIR作为数字输出,所以您需要做的是操作引脚进行电平的翻转高(检测)或低(未检测)。可以查看图片了解线路的连接。
大多数PIR模块在侧面或底部都有三个引脚连接。引脚排列可能因模块而异,因此仔细检查引脚排列!电源通常为3-5v直流输入。
电路连接如下:
HC-SR501的Vcc引脚连接到NodeMCU的+ 3v。
HC-SR501的输出引脚连接到NodeMCU的数字引脚D7。
HC-SR501的GND引脚连接到NodeMCU的接地引脚(GND)。
在这个例子中,我们将LED的阳极引脚连接到数字引脚D6和阴极引脚到NodeMCU的GND引脚。
在开始编码之前,您需要打开Arduino IDE。要下载Arduino IDE和设置好NodeMCU使其可以编译,没配置好开发环境的看前面的内容。
步骤4:开始编程
代码非常简单,基本上只是设置数字引脚D7的输入是高电平还是低电平。程序中还利用Serial.println进行状态的打印,在串口监视器进行状态的跟踪。
以下是这节课的代码:
[scu name=”arduino-ide-post” platform=”esp32:esp32:esp32″]
int Status = 12; // Digital pin D6
int sensor = 13; // Digital pin D7
void setup() {
pinMode(sensor, INPUT); // declare sensor as input
pinMode(Status, OUTPUT); // declare LED as output
}
void loop() {
long state = digitalRead(sensor);
if (state == HIGH) {
digitalWrite (Status, HIGH);
Serial.println("Motion detected!");
delay(1000);
}
else {
digitalWrite (Status, LOW);
Serial.println("Motion absent!");
delay(1000);
}
}
[/scu]
步骤5:上传代码
打开 工具
开发板 > NodeMCU 1.0(ESP – 12E模块)
端口(选择正确的端口)
确保开发板选择了NodeMCU,并勾选正确的串行端口(参见图片)。然后点击上传按钮
步骤6:查看结果
学会了红外传感器,在生活中的很多地方都可以应用!大家可以尝试着想想可以做些啥。
本节课程序下载:
两个代码都不一样