ชื่อโปรเจกต์: ย่อ-ขยายรูปภาพตามระยะมือด้วย Processing และ Ultrasonic Sensor
Introduction
จัดไปวัยรุ่น! วันนี้พี่จะพาน้องๆ มาทำโปรเจกต์ย่อ-ขยายรูปภาพตามระยะมือเรา โดยใช้ค่าระยะทางที่อ่านได้จาก Ultrasonic [Sensor](https://s.shopee.co.th/7VBG2rX65j) รุ่น HC-SR04 ยอดฮิตนี่แหละ หลักการง่ายๆ คือถ้าเอามือเข้าใกล้ Sensor รูปก็จะเล็กลง แต่ถ้าถอยมือห่างออกมา รูปก็จะขยายใหญ่ขึ้น ดูล้ำๆ เหมือนสั่งงานในอากาศเลยน้อง
Construction

มาดูวิธีต่อวงจรกันหน่อยน้อง อย่าต่อผิดจนช็อตล่ะ! ให้ต่อขา Trigger ของ [Sensor](https://s.shopee.co.th/7VBG2rX65j) เข้าที่ Digital Pin 12 ส่วนขา Echo เข้า Pin 11 สำหรับไฟเลี้ยงก็จัดไป VCC เข้า 5V ของ Board และ GND เข้า GND ของ [Arduino](https://s.shopee.co.th/7fUgFAWSki) ตามระเบียบ
- Digital 12 ต่อเข้า Trigger
- Digital 11 ต่อเข้า Echo
- 5V ต่อเข้า VCC
- GND ต่อเข้า GND
เจาะลึกเทคนิค (จะได้ดูเป็นโปร)
Interactive Spatial Graphic Interface
โปรเจกต์นี้เป็นการใช้ระยะทางในอากาศมาควบคุมระดับ "Zoom" ของรูปภาพบน PC ทำให้เราได้หน้าจอโต้ตอบแบบไม่ต้องสัมผัส (Non-touch Interactive) เท่ๆ ไปใช้งาน
- Proximity-to-Scale Mapping: เจ้า Arduino จะคอยอ่านค่าระยะจาก HC-SR04 แล้วยิงข้อมูลผ่าน Serial เข้าคอมพิวเตอร์ จากนั้นโปรแกรม Processing จะรับค่ามาแมพ (Map) เป็นตัวคูณขนาดรูป เช่น ถ้าระยะมืออยู่ที่ 5cm ให้ซูมไป 3.0x หรือถ้าห่างไป 20cm ให้เหลือ 1.0x เป็นต้น
- Smooth Transition Filtering: เพื่อไม่ให้รูปมันสั่นกระตุกเหมือนเจ้าเข้า พี่ใช้เทคนิค Linear Interpolation (LERP) ใน Processing ช่วยกรองสัญญาณรบกวน (Sensor Noise) ทำให้การย่อ-ขยายรูปภาพมันสมูท ลื่นไหลหัวแตกเลยน้อง
Creative Strategy
- Presence-Triggered Interaction: (ลูกเล่นเพิ่มเติม) ถ้าน้องเจ๋งพอ ลองเขียนเพิ่มให้ Sensor ตรวจจับคนในระยะ 1 เมตรดูสิ พอมีคนเดินมาใกล้ หน้าจอก็จะ "ตื่น" ขึ้นมาโชว์รูปและเริ่มเล่นโหมด Interactive แต่พอเดินจากไปก็ให้มันกลับไปเล่นภาพเคลื่อนไหว Standby รอไว้ งานนี้หล่อเท่แน่นอน สู้งานนะน้อง!