MH-SR602 เป็นเซ็นเซอร์เคลื่อนไหว PIR ขนาดกะทัดรัด (อินฟราเรดแบบพาสซีฟ) ที่ใช้สำหรับการตรวจจับการเคลื่อนไหวภายในช่วง ขนาดเล็กการใช้พลังงานต่ำและการหน่วงเวลาที่ปรับได้ทำให้เหมาะสำหรับแสงที่เปิดใช้งานการเคลื่อนไหวสัญญาณเตือนและโครงการ IoT ในบทช่วยสอนนี้เราจะแนะนำคุณผ่านการเชื่อมต่อ MH-SR602 กับ Arduino
สิ่งที่คุณต้องการ
- MH-SR602 PIR Motion Sensor
- คณะกรรมการ 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 PIN | พิน Arduino |
---|---|
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: ทดสอบการตั้งค่า
- เชื่อมต่อ Arduino กับคอมพิวเตอร์ของคุณผ่าน USB
- เปิด Arduino IDE และเลือกที่ถูกต้อง กระดาน และ ท่าเรือ ภายใต้ เครื่องมือ เมนู.
- อัปโหลดรหัสไปยัง Arduino โดยคลิก อัพโหลด.
- เปิดมอนิเตอร์อนุกรม (เครื่องมือ > จอภาพอนุกรม) และตั้งค่าอัตราการรับส่งข้อมูลเป็น
9600
. - ย้ายภายในช่วงของเซ็นเซอร์และสังเกตสถานะการเคลื่อนไหวที่พิมพ์บนจอภาพอนุกรม
ตัวเลือก: การควบคุม LED ด้วยการเคลื่อนไหว
คุณสามารถแก้ไขรหัสเพื่อเปิด LED เมื่อตรวจพบการเคลื่อนไหว:
เดินสายไฟ LED
พิน LED | พิน 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 Motion กับ Arduino ได้สำเร็จ เซ็นเซอร์อเนกประสงค์นี้เหมาะสำหรับการตรวจจับการเคลื่อนไหวในโครงการต่าง ๆ ทดลองกับคุณสมบัติเพิ่มเติมเช่นการปรับเวลาหน่วงหรือรวมเข้ากับส่วนประกอบอื่น ๆ สำหรับแอปพลิเคชันขั้นสูงเพิ่มเติม!