Arduino Radar with Led diode and encoding data onto an image
การแสดงผลเสมือน: การสร้างแผนที่ด้วย Arduino Radar
เซ็นเซอร์ HC-SR04 sonar เพียงตัวเดียวสามารถวัดระยะทางได้เฉพาะในทิศทางที่อยู่ตรงหน้าเท่านั้น โปรเจกต์ Arduino Radar จำลองการทำงานของเรือดำน้ำหรือหอควบคุมการจราจรทางอากาศ ด้วยการกวาดเซ็นเซอร์ไปทั่วห้องและเชื่อมโยงข้อมูลเข้ากับแอปพลิเคชัน Java คุณจะสามารถสร้างแผนที่ 2D รอบตัวคุณได้อย่างสมบูรณ์

กลศาสตร์ Servo และการส่งข้อมูล
กลไกฮาร์ดแวร์กำหนดจังหวะเวลาของซอฟต์แวร์
- HC-SR04 Ultrasonic Sensor ถูกติดด้วยปืนกาวร้อนไว้บนเขาของ SG90 Micro Servo โดยตรง
- ลูปการกวาด (The Sweep Loop): Arduino จะรันลูป
for(pos = 0; pos <= 180; pos++)สำหรับทุกๆ หนึ่งองศา, Servo จะหยุดชั่วครู่, sonar จะส่งสัญญาณ ping และวัดระยะทาง (เช่น ที่องศา 45, วัตถุอยู่ห่างออกไป 10cm) - แพ็คเก็ตข้อมูลการสื่อสาร (The Communication Payload): Arduino จะบีบอัดตัวแปรทั้งสองนี้ให้อยู่ในรูปแบบสตริงอนุกรมที่คั่นด้วยคอมมาและส่งออกผ่าน USB:
45,10.0\n
การแปลงความเป็นจริงสู่การแสดงผลแบบดิจิทัล (Processing)
สตริงของ Serial Monitor นั้นไร้ประโยชน์สำหรับผู้ใช้งาน คุณต้องใช้ Processing IDE บนคอมพิวเตอร์ของคุณ
- สคริปต์ Java จะเปิด COM port และรับแพ็คเก็ตข้อมูล
45,10.0 - มันใช้คณิตศาสตร์ตรีโกณมิติ Polar-to-Cartesian ที่ซับซ้อนอย่างไม่น่าเชื่อ (
cos(),sin()) เพื่อคำนวณว่าวัตถุนั้นอยู่ที่ใดบนหน้าจอคอมพิวเตอร์อย่างแม่นยำ - มันจะวาด "เส้นเรดาร์" สีเขียวที่กวาดไปมาเป็นมุม 180 องศา
- เมื่อตรวจพบวัตถุ, มันจะวาดจุด "Red blip" ที่ชัดเจนตรงตำแหน่งที่วัตถุนั้นอยู่ในห้องจริง! การแสดงผลจะอัปเดตได้อย่างไร้ที่ติแบบ real-time ขณะที่เรดาร์ทางกายภาพกวาดไปมา!
องค์ประกอบของระบบ
- Arduino Uno/Nano: ตัวกระตุ้นทางกายภาพและตัวรวมข้อมูล
- SG90 Servo Motor และ HC-SR04 Sensor
- โครงเครื่องพิมพ์ 3D ที่มีน้ำหนักมาก (การเคลื่อนที่อย่างรวดเร็วของ Servo จะทำให้โครงเครื่องพลิกคว่ำได้หากไม่ยึดให้แน่น!)
- Processing 3 or 4 IDE ที่รันโค้ดแสดงผลกราฟิกบน PC/Mac