กลับไปหน้ารวมไฟล์
scaling-an-image-in-processing-with-ultrasonic-sensor-a9f593.md

ชื่อโปรเจกต์: ย่อ-ขยายรูปภาพตามระยะมือด้วย 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 รอไว้ งานนี้หล่อเท่แน่นอน สู้งานนะน้อง!

ข้อมูล Frontmatter ดั้งเดิม

title: "Scaling an Image in Processing with Ultrasonic Sensor"
description: "In this project, we are taking the distance value from an ultrasonic sensor and scaling the dimension of an image accordingly."
author: "najad"
category: ""
tags:
  - "communication"
  - "processing"
views: 10129
likes: 15
price: 299
difficulty: "Intermediate"
components:
  - "1x Ultrasonic Sensor - HC-SR04 (Generic)"
  - "1x Arduino UNO"
tools: []
apps:
  - "1x Processing"
downloadableFiles:
  - "https://gist.github.com/onajad/e53b1bccac30cf43645eeb90ae964a6a#file-ultrasonic_processing-pde"
  - "https://gist.github.com/onajad/e53b1bccac30cf43645eeb90ae964a6a#file-ultrasonic_processing-pde"
documentationLinks: []
passwordHash: "cdb786f616b4ea9b2cc9adcc38490d409cfccf570ecff15ba3cb68c684f4383d"
encryptedPayload: "U2FsdGVkX19gB2arHqyZ08IWBAluuaIFwCxQ/vU2zdkhuoqcp2xVzK71+zgRndkj2gUtTREO6pq/rPBxeaH/wLjHJY9bw0YP8NqhirqtBTQ="
seoDescription: "Scale images in Processing using real-time distance data from an Ultrasonic Sensor."
videoLinks:
  - "https://www.youtube.com/embed/WDUCyJpbbM0"
heroImage: "https://cdn.jsdelivr.net/gh/bigboxthailand/arduino-assets@main/images/projects/scaling-an-image-in-processing-with-ultrasonic-sensor-a9f593_cover.gif"
lang: "th"