PIR Motion Sensor — เซ็นเซอร์ตรวจจับความเคลื่อนไหว
HC-SR501 เป็นเซ็นเซอร์ตรวจจับการเคลื่อนไหวด้วยอินฟราเรด (Passive Infrared) ตรวจจับการเปลี่ยนแปลงของความร้อนจากร่างกายมนุษย์หรือสัตว์
คุณสมบัติ
- ระยะตรวจจับ: 3-7 เมตร (ปรับได้)
- มุมตรวจจับ: ~120°
- แรงดัน: DC 5V-12V
- Output: Digital HIGH (3.3V) เมื่อตรวจจับได้
- ปรับ Sensitivity และ Time Delay ได้ด้วย Potentiometer
การต่อวงจร
HC-SR501: VCC → Arduino 5V (หรือ 12V ได้) GND → GND OUT → Arduino D3
Source Code — เปิดไฟเมื่อมีการเคลื่อนไหว
const int PIR_PIN = 3;
const int RELAY_LIGHT = 7;
bool motionDetected = false;
unsigned long lastMotionTime = 0;
const long LIGHT_DURATION = 60000; // เปิดไฟ 1 นาที
void setup() {
pinMode(PIR_PIN, INPUT);
pinMode(RELAY_LIGHT, OUTPUT);
digitalWrite(RELAY_LIGHT, HIGH); // ปิดไฟ
Serial.begin(9600);
Serial.println("PIR Sensor Ready...");
}
void loop() {
int pir = digitalRead(PIR_PIN);
if (pir == HIGH) {
if (!motionDetected) {
Serial.println("📡 ตรวจจับการเคลื่อนไหว!");
motionDetected = true;
}
lastMotionTime = millis();
digitalWrite(RELAY_LIGHT, LOW); // เปิดไฟ
}
// ปิดไฟเมื่อไม่มีการเคลื่อนไหวเกินเวลาที่กำหนด
if (motionDetected && (millis() - lastMotionTime > LIGHT_DURATION)) {
digitalWrite(RELAY_LIGHT, HIGH);
motionDetected = false;
Serial.println("🌙 ปิดไฟ (ไม่มีการเคลื่อนไหว)");
}
delay(500);
}
การปรับเซ็นเซอร์
HC-SR501 มี Potentiometer 2 ตัว:
- Sensitivity (ระยะ): หมุนตามเข็ม = เพิ่มระยะ, ทวน = ลดระยะ
- Time Delay (เวลา): ตั้งเวลาที่ Output จะค้าง HIGH เมื่อตรวจจับได้ (5 วินาที - 5 นาที)
Tip: ตั้ง Time Delay ให้น้อยที่สุด (~5 วินาที) แล้วใช้ Arduino จับเวลาอีกที เพื่อควบคุมด้วย Software ได้แม่นยำกว่า
💰 ราคาประมาณการ
| อุปกรณ์ | ราคา |
|---|---|
| Soil Moisture YL-69 | ~20-40 บาท |
| Capacitive Moisture v1.2 | ~50-90 บาท |
| LDR + 10k Resistor | ~5-10 บาท |
| DHT22 | ~80-120 บาท |
| PIR HC-SR501 | ~30-60 บาท |
| Rain Sensor YL-83 | ~25-45 บาท |
| Flow Sensor YF-S201 | ~60-100 บาท |
🔋 ทางเลือกใช้แบตเตอรี่
เซ็นเซอร์ทั้งหมดใช้ไฟ 5V ซึ่ง Arduino จ่ายให้ได้โดยตรง ถ้าใช้แบตเตอรี่ 12V + Buck Converter → 5V เซ็นเซอร์จะทำงานปกติ
สำหรับระบบนอกบ้านที่ไม่มีปลั๊กไฟ ใช้ Solar Cell 10W + แบต 12V 7Ah (~1,000-1,500 บาท) จ่ายไฟทั้งระบบได้ 24 ชม.
⚠️ หมายเหตุ: เนื้อหานี้ค้นคว้าและเรียบเรียงโดย Hermes AI — ข้อมูลทางเทคนิคควรตรวจสอบก่อนนำไปใช้งานจริง