หน้าที่ได้รับมอบหมาย: การสร้างแผนที่เสมือน ใช้ข้อมูลระยะระหว่างหุ่นยนต์และสิ่งกีดขวางเพื่อจำลอง Maze ในคอมพิวเตอร์ และระบุตำแหน่งบล็อกปัจจุบันของหุ่น
ความคืบหน้าในขั้นตอนแรก : การทดสอบผ่านสาย USB
เพื่อให้ง่ายต่อการทดสอบและพิสูจน์แนวคิด (Proof of Concept) ผมได้เริ่มต้นด้วยการเชื่อมต่อระบบผ่านสาย USB (Serial Port) ก่อนที่จะพัฒนาระบบให้เชื่อมต่อแบบไร้สาย (Wi-Fi) ซึ่งหุ่นยนต์ที่หลักที่ใช้โปรแกรมคือ M5stack Lidar Bot

ขั้นตอนการดำเนินงาน:
- การดึงข้อมูล Lidar ผมได้เขียนโค้ดบนตัวหุ่นยนต์ Lidar Bot (M5Stack) ให้อ่านข้อมูลจาก Lidar และส่งข้อมูลดิบนั้นออกมาผ่านทาง Serial (พอร์ต USB)
- การสร้างแผนที่ (Visualization) ผมใช้โปรแกรม Processing (ซึ่งใช้ภาษา Java) บนคอมพิวเตอร์ เพื่อรับข้อมูล Serial ที่หุ่นยนต์ส่งมา และนำค่านั้นมาวาดเป็น “แผนที่” (Map) แบบ Real-time เพื่อใช้ในการตรวจสอบข้อมูล
- องค์ประกอบในแผนที่:ในหน้าจอ Processing ที่ผมสร้างขึ้น มีองค์ประกอบหลักดังนี้
- กล่องสีฟ้า : แทนตัวหุ่นยนต์ Lidar Bot
- จุดสีแดง : ใช้ระบุ “ด้านหน้า” ของหุ่นยนต์ เพื่อให้ทราบทิศทางการหัน
- จุดสีเขียว : คือข้อมูล Lidar ที่สแกนได้ แสดงถึงสิ่งกีดขวางรอบตัว
- ตรรกะการตรวจสอบ “ความตั้งฉาก”:ผมได้เริ่มเขียนตรรกะ (Logic) ในการตรวจสอบว่าหุ่นยนต์ “ตั้งฉาก” หรือไม่ โดยเบื้องต้นได้กำหนดให้โปรแกรมตรวจสอบข้อมูล Lidar ในช่วง +15 , -15 องศา จากด้านหน้าหุ่นยนต์ เพื่อใช้เป็นเกณฑ์ในการตัดสินใจในการทดสอบ ผมได้ตั้งหุ่นไว้กับที่และดูโปรแกรม



สรุป:
ในขั้นตอนนี้ สามารถดึงข้อมูล Lidar จากหุ่นยนต์มายัง PC และสร้างโปรแกรม Visualization เพื่อแสดงผลแผนที่แบบ Real-time ได้สำเร็จ ซึ่งสามารถ “ตรวจสอบความตั้งฉาก” ในเบื้องต้นได้แล้วขั้นตอนต่อไป ยังเหลือการทดสอบบนสนามจริงและปรับแก้โปรแกรมให้เพิ่มรู้เรื่องระยะห่างจากจุดเริ่มต้น

