MH-SR602是一种紧凑的PIR(被动红外)运动传感器,用于检测其范围内的运动。它的尺寸很小,功耗低和可调延迟,非常适合运动激活的照明,警报和物联网项目。在本教程中,我们将指导您通过将MH-SR602与Arduino接口。
你需要什么
- MH-SR602 PIR运动传感器
- Arduino董事会(例如Uno,Mega,Nano)
- 面包板和跳线电线
- 安装了带有Arduino IDE的计算机
步骤1:了解MH-SR602传感器
MH-SR602通过传感周围环境的红外辐射变化来检测运动。当检测到运动时,它会输出高信号。否则,它仍然很低。
MH-SR602 PINOUT
别针 | 功能 |
---|---|
VCC | 电源(3.3V-5V) |
出去 | 数字输出信号 |
gnd | 地面 |
可调节功能
- 延迟时间: 车载电位计调整了检测到运动后的输出时间(约2-100秒)。
步骤2:将MH-SR602接线到Arduino
这是将传感器连接到Arduino的方法:
MH-SR602引脚 | Arduino Pin |
---|---|
VCC | 5V |
出去 | 引脚2 |
gnd | gnd |
步骤3:上传代码
这是一个示例草图,用于监视运动检测并在串行监视器上显示状态:
const int pirPin = 2; // Connect MH-SR602 OUT to pin 2
void setup() {
pinMode(pirPin, INPUT);
Serial.begin(9600);
Serial.println("MH-SR602 PIR Motion Sensor Test");
}
void loop() {
int motionStatus = digitalRead(pirPin); // Read the sensor output
if (motionStatus == HIGH) {
Serial.println("Motion detected!");
} else {
Serial.println("No motion detected.");
}
delay(500); // Update every 500ms
}
步骤4:测试设置
- 通过USB将Arduino连接到您的计算机。
- 打开Arduino IDE并选择正确的 木板 和 港口 在 工具 菜单。
- 单击将代码上传到Arduino 上传.
- 打开串行监视器(工具 > 串行监视器)并将波特率设置为
9600
. - 在传感器范围内移动,并观察串行显示器上打印的运动状态。
可选:通过运动控制LED
您可以在检测到运动时修改代码以打开LED:
接线LED
LED PIN | Arduino Pin |
---|---|
阳极(+) | 引脚13 |
阴极( - ) | gnd |
修改的代码
const int pirPin = 2; // Connect MH-SR602 OUT to pin 2
const int ledPin = 13; // Connect LED to pin 13
void setup() {
pinMode(pirPin, INPUT);
pinMode(ledPin, OUTPUT);
Serial.begin(9600);
Serial.println("MH-SR602 PIR Motion Sensor Test");
}
void loop() {
int motionStatus = digitalRead(pirPin); // Read the sensor output
if (motionStatus == HIGH) {
digitalWrite(ledPin, HIGH); // Turn on LED
Serial.println("Motion detected!");
} else {
digitalWrite(ledPin, LOW); // Turn off LED
Serial.println("No motion detected.");
}
delay(500); // Update every 500ms
}
MH-SR602的应用
- 运动激活的照明
- 入侵者警报
- 智能家庭自动化
- 接近触发的IoT设备
故障排除
- 未检测到运动: 确保传感器正确供电,并且延迟电位器不会设置得太高。
- 错误的触发器: 减少环境噪声(例如,移动热源),并将传感器屏蔽到直射的阳光下。
- 不稳定的读数: 确保稳定的功率并避免过度振动。
结论
您已成功将MH-SR602 PIR运动传感器与Arduino连接起来。该多功能传感器非常适合在各种项目中进行运动检测。尝试其他功能,例如调整延迟时间或将其与其他组件集成以进行更高级的应用程序!