Arduino Proximity Alert: ระบบแจ้งเตือนวัตถุเข้าใกล้ด้วยเซ็นเซอร์


ถ้าคุณกำลังทำหุ่นยนต์หลบหลีกสิ่งกีดขวาง หรืออยากทำสวิตช์เปิด-ปิดไฟแบบไร้สัมผัส (Touchless Switch) แต่ไม่อยากปวดหัวกับการเขียนโค้ดแปลงค่าแรงดันไฟฟ้าที่ซับซ้อน โปรเจกต์นี้ตอบโจทย์คุณแน่นอน!

เราจะมาสร้างระบบตรวจจับวัตถุระยะใกล้ (ประมาณ 10 ซม.) โดยใช้เซ็นเซอร์อินฟราเรด Sharp GP2Y0D80Z0F ร่วมกับบอร์ด Arduino Uno และให้แสดงผลสถานะแบบเรียลไทม์ผ่านหน้าจอ I2C LCD (16x2) ความเจ๋งคือเซ็นเซอร์ตัวนี้ส่งค่าออกมาเป็น Digital (LOW/HIGH) ทำให้เราดึงค่าไปใช้งานได้ง่ายสุดๆ


อุปกรณ์ที่ต้องเตรียม (Hardware Components)

  • บอร์ดไมโครคอนโทรลเลอร์ Arduino Uno
  • เซ็นเซอร์วัดระยะทาง (Proximity Sensor) รุ่น GP2Y0D80Z0F
  • หน้าจอแสดงผล DFRobot I2C 16x2 LCD
  • เบรดบอร์ด (Breadboard) สำหรับต่อวงจร
  • สายไฟ Jumper (ประมาณ 12 เส้น) และสาย USB-A to Mini-USB
คลิกเพื่อดูรูปภาพและไดอะแกรมการต่อวงจร (View More)
Project Cover
Components
Wiring Diagram
Working Hardware

หลักการทำงานและการต่อสายไฟ

เซ็นเซอร์จะปล่อยคลื่นอินฟราเรดออกไปตลอดเวลา เมื่อมีวัตถุเข้ามาใกล้ในระยะประมาณ 10 ซม. คลื่นจะสะท้อนกลับมา ทำให้เซ็นเซอร์ส่งค่าสัญญาณเป็น LOW (ตรวจพบวัตถุ) แต่ถ้าไม่มีอะไรอยู่ใกล้ๆ สัญญาณจะยังคงเป็น HIGH (ไม่พบวัตถุ)

วิธีต่อสายไฟ (Wiring Guide): แนะนำให้ใช้สายไฟสีให้ตรงกัน (เช่น แดง=5V, ดำ=GND) เพื่อกันสับสนนะครับ

  • เซ็นเซอร์ GP2Y0D80Z0F: GND ต่อ GND / VIN ต่อ 5V / OUT ต่อเข้า Digital Pin 2
  • หน้าจอ I2C LCD: GND ต่อ GND / VCC ต่อ 5V / SDA ต่อ A4 / SCL ต่อ A5

โค้ดและไลบรารีที่ใช้

เราจะใช้โปรแกรม Arduino IDE ในการอัปโหลดโค้ด โดยตัวโค้ดจะคอยอ่านค่าจากเซ็นเซอร์ ถ้าเป็น LOW จะให้จอ LCD ขึ้นคำว่า "Object Detected" และถ้าเป็น HIGH จะขึ้นว่า "No Object" พร้อมส่งค่าเข้า Serial Monitor เพื่อเช็กการทำงาน

การนำไปใช้จริง & วิธีแก้ปัญหาเบื้องต้น

โปรเจกต์นี้สามารถนำไปดัดแปลงทำ สวิตช์ไร้สัมผัส (Touchless presence switches), เซ็นเซอร์กันชนให้หุ่นยนต์ขนาดเล็ก, หรือระบบแจ้งเตือนความปลอดภัยระยะใกล้ได้เลย

🛠️ ปัญหาที่เจอบ่อย (Troubleshooting Tips)

  • หน้าจอ LCD ว่างเปล่า: ลองเช็ก I2C Address ในโค้ดดูครับ ปกติจะเป็น 0x27 หรือ 0x3F
  • เซ็นเซอร์อ่านค่ามั่ว: ตรวจสอบสายไฟ โดยเฉพาะสาย GND ว่าเสียบแน่นหรือเปล่า สายหลวมจะทำให้สัญญาณรบกวนได้
  • หน้าจอกะพริบแปลกๆ: ปรับโค้ดให้หน้าจอทำงาน (อัปเดตคำ) เฉพาะตอนที่สถานะเซ็นเซอร์เปลี่ยนเท่านั้น

วิดีโอสาธิตการทำงาน (Working Video)


คำเตือน: เนื้อหานี้เป็นการสรุปและเรียบเรียงจากบทความต้นฉบับภาษาอังกฤษ ข้อมูลฉบับภาษาไทยอาจมีความคลาดเคลื่อนบางประการจากการตีความหรือย่อเนื้อหา

อ้างอิงและเรียบเรียงโดย: Globalbyteshop Blog

แหล่งที่มาต้นฉบับ:
- Hackster: Arduino Proximity Alert using GP2Y0D80Z0F Sensor

แท็ก


Blog posts

เข้าสู่ระบบ

ลืมรหัสผ่านใช่ไหม?

ยังไม่มีบัญชีใช่ไหม?
สร้างบัญชี