PIR Sensor - เซ็นเซอร์ตรวจจับความเคลื่อนไหว

📋 ภาพรวม
PIR (Passive Infrared) Sensor คือเซ็นเซอร์ที่ใช้ตรวจจับการเคลื่อนไหวของสิ่งมีชีวิตผ่านการเปลี่ยนแปลงของรังสีอินฟราเรดที่แผ่ออกมาจากร่างกาย ส่วนใหญ่นิยมใช้ในระบบกันขโมยหรือระบบเปิดไฟอัตโนมัติ
ส่วนประกอบสำคัญ
- Fresnel Lens: ฝาครอบโดมสีขาว ทำหน้าที่รวมแสงอินฟราเรด
- Sensitivity Adjust: ตัวต้านทานปรับค่าได้ (Trimmer) สำหรับปรับระยะการตรวจจับ (3-7 เมตร)
- Time Delay Adjust: ตัวต้านทานปรับค่าได้สำหรับปรับเวลาที่สัญญานจะค้างไว้หลังตรวจจับเจอ (5 วินาที - 5 นาที)
🔌 การต่อสาย
PIR มักจะมี 3 พิน: VCC, OUT, GND
💻 โค้ดตัวอย่าง
Arduino
const int pirPin = 2; // พินต่อ OUT ของ PIR
const int ledPin = 13; // LED บนบอร์ด
void setup() {
pinMode(pirPin, INPUT);
pinMode(ledPin, OUTPUT);
Serial.begin(9600);
Serial.println("PIR Sensor Warm-up...");
delay(30000); // รอเซ็นเซอร์ Warm-up ประมาณ 30-60 วินาที
Serial.println("Ready!");
}
void loop() {
int val = digitalRead(pirPin);
if (val == HIGH) { // ถ้าตรวจเจอการเคลื่อนไหว
digitalWrite(ledPin, HIGH); // เปิดไฟ
Serial.println("Motion Detected!");
delay(500);
} else {
digitalWrite(ledPin, LOW); // ปิดไฟ
}
}
🛠️ โปรเจค DIY
1. ระบบไฟส่องทางเดินอัตโนมัติ
เมื่อเดินผ่านในที่มืด PIR จะสั่งให้ Arduino เปิดรีเลย์เพื่อเปิดไฟ และดับเองหลังจากไม่มีการเคลื่อนไหว
2. สัญญาณกันขโมยพื้นฐาน
แจ้งเตือนผ่าน Line Notify เมื่อมีคนเดินผ่านในขณะที่ตั้งระบบป้องกันไว้
⚠️ ข้อควรระวัง
ช่วงเวลา Warm-up
หลังจากจ่ายไฟครั้งแรก PIR Sensor ต้องการเวลาประมาณ 30-60 วินาทีในการปรับจูนค่าพื้นฐาน (Stabilizing) ในช่วงนี้เซ็นเซอร์อาจส่งสัญญานผิดพลาดได้
การกวนกันของ WiFi
หากใช้ ESP32/ESP8266 ควรวาง PIR ให้ห่างจากเสาอากาศ WiFi อย่างน้อย 10-20 ซม. เนื่องจากสัญญาน WiFi อาจกวนการทำงานของ PIR ทำให้ตรวจจับผิดพลาด (False Trigger)