ขั้นตอนที่ 1: เตรียมพื้นที่ทำงานให้พร้อม
หามุมสงบๆ สะอาดๆ ที่นั่งทำงานได้สบายๆ หน่อยนะน้อง
เตรียมอุปกรณ์ให้ครบก่อนเริ่มงาน:
- [Arduino](https://s.shopee.co.th/7fUgFAWSki) UNO
- Ultrasonic [Sensor](https://s.shopee.co.th/7VBG2rX65j) (HC-SR04)
- [Servo](https://s.shopee.co.th/7fUgFAWSki) Motor 9g
- Breadboard
- Piezo [Buzzer](https://s.shopee.co.th/6pvZFdZdRf) (หรือจะเปลี่ยนเป็น [Relay](https://s.shopee.co.th/3fyXTmWPbL) สำหรับสั่งงานอะไรหนักๆ แทนก็ได้นะ)
- สายจัมเปอร์อีกนิดหน่อย
ขั้นตอนที่ 2: ต่อวงจรตามไดอะแกรมให้แน่นหนา
- Ul Trigger ต่อที่ D3
- Ul Echo ต่อที่ D2
- [Servo](https://s.shopee.co.th/7fUgFAWSki) pin ต่อที่ D9
- [Buzzer](https://s.shopee.co.th/6pvZFdZdRf) Toggle ต่อที่ D4
อย่าลืมติดเซ็นเซอร์ไว้บนหัว [Servo](https://s.shopee.co.th/7fUgFAWSki) นะ ใช้กาวปืนหรือกาวอะไรก็ได้ที่ติดแน่น (พี่ใช้กาวปืน) ไม่งั้นมันจะโยกเยกเวลาหมุน
กำลังติดเซ็นเซอร์ด้วยกาว
ขั้นตอนที่ 3: อัพโหลดโค้ดให้เรียบร้อย
อัพโหลดโค้ดลง [Arduino](https://s.shopee.co.th/7fUgFAWSki) Board ด้วย Arduino IDE จากนั้นเปิดโปรแกรม Processing ขึ้นมา ดาวน์โหลดโค้ดที่พี่เตรียมไว้ให้ อย่าลืมเปลี่ยน COM port ให้ตรงกับที่เราใช้ด้วยล่ะ

อัพโหลดโค้ดลง [Arduino](https://s.shopee.co.th/7fUgFAWSki)


PREVIOUSNEXT
- 1
- 2
ขั้นตอนที่ 4: ทดสอบของวิเศษ
ต่อ [Arduino](https://s.shopee.co.th/7fUgFAWSki) เข้ากับ PC เปิด Processing แล้วรันโค้ด เราจะเห็นข้อมูลจากเซ็นเซอร์แสดงผลเป็นภาพกราฟิกสวยงามเลย
ถ้ามี error ขึ้น ลองเปลี่ยนความละเอียดหน้าจอในโค้ด Processing หรือเปลี่ยน COM port ดู (พี่ใช้ Com 3) จัดการให้เรียบร้อยแล้วรันใหม่
ขั้นตอนที่ 5: เก็บงานให้สวยงาม
ห่อหุ้มโปรเจกต์ของเราให้ดูดี อาจจะใส่กล่องหรือโหล (ใช้จินตนาการกันเต็มที่เลย) พี่ใช้โหลไอศกรีมแล้วทาสีดำ ติด [Arduino](https://s.shopee.co.th/7fUgFAWSki) กับ Breadboard ไว้ด้านในด้วยกาวปืน แล้วต่อ Arduino กับสวิตช์และแบตเตอรี่ภายนอก
ถ้ามีปัญหาหรือสงสัยตรงไหน ก็คอมเมนต์ถามไว้ด้านล่างได้เลย
รายละเอียดเทคนิคเพิ่มเติม
2D Spatial Visualization Hub
โปรเจกต์นี้เลียนแบบการทำงานของระบบ SONAR/RADAR แบบมืออาชีพ โดยแสดงตำแหน่งวัตถุบนอินเทอร์เฟซกราฟิกใน PC
- Synchronized Sweep Logic: Arduino จะควบคุม SG90 servo ให้หมุน Ultrasonic Sensor จาก 0 ถึง 180 องศา ทุกๆ 1 องศาที่หมุน จะอ่านค่าระยะทางแล้วส่งข้อมูลผ่าน Serial
- Processing Graphical Engine: สคริปต์ Processing ที่เขียนขึ้นมารับคู่ข้อมูล (มุม, ระยะทาง) แล้วแสดงผลเป็นภาพเรดาร์สวยงาม มีเอฟเฟกต์แสงติดทนเพื่อแสดง "เงา" ของวัตถุที่เคลื่อนที่
ความแม่นยำ
- Angular-to-Cartesian Translation: สคริปต์ Processing จะคำนวณตรีโกณมิติ ($X = D \times \cos(A)$, $Y = D \times \sin(A)$) เพื่อวางตำแหน่งวัตถุบนหน้าจอเรดาร์ทรงกลมได้อย่างแม่นยำ