Robot Cockpit เป็นโปรแกรมที่จะจำลอง Cockpit ที่สามารถควบคุมหุ่นยนต์ของจริงได้ ผ่าน MQTT Server และส่งข้อมูลไปยัง Real Robot โลกจริง
Scenario
Scenario 1: เปิดอุปกรณ์
User Action: ผู้ใช้เปิดระบบของหุ่นยนต์ Jet Rover รอ Boot เสร็จจากนั้นทำการเปิด Program “Robot Controller for Cockpit” และเปิดการทำงานของ Oculus Quest 2 สวมใส่แว่นหลังจากนั้นทำการเปิดแอปพลิเคชัน “Robot Cockpit”
System Response: รอหุ่นยนต์ Jet Rover เข้าโปรแกรมให้สำเร็จเรียบร้อย จากนั้นใน VR เมื่อเข้าสู่โปรแกรมจะขึ้นหน้าต่างให้ทำการเชื่อมต่อกับหุ่นยนต์ JetRover ให้เรียบร้อย
Scenario 2: เชื่อมต่ออุปกรณ์
User Action: ผู้ใช้เลื่อนตัวควบคุมใน VR ไปกดปุ่ม “Connect to Robot” ที่แสดงบนหน้าต่าง
System Response: ระบบทำการเชื่อมต่อกับ Robot ผ่าน Network (ROS/MQTT) เมื่อเชื่อมต่อสำเร็จหน้าจอกลางจะเริ่ม Stream ภาพสด (Live Feed) จากกล้องของหุ่นยนต์ JetRover แบบ Realtime และระบบสร้างสภาพแวดล้อมเสมือน เป็นห้องควบคุมหุ่นยนต์ โดยมีจอหลักอยู่ด้านหน้า และมีอุปกรณ์ควบคุมแบบ Orb ใช้ Joy Controllerของ VR Oculus Quest 2 ในการควบคุมการเคลื่อนที่
Status: ระบบพร้อมควบคุม (Ready State)
Scenario 3: การควบคุมเคลื่อนที่และดูภาพ (Operational Control)
User Action: ผู้ใช้ทำการหมุนหรือขยับ Orb Controller ไปตามทิศทางที่ต้องการ (เดินหน้า, ถอยหลัง หรือสไลด์ออกข้างตามลักษณะล้อ Mecanum)
System Response: ระบบคำนวณค่า Velocity และส่งคำสั่งไปที่หุ่นยนต์ ทำให้หุ่นยนต์เริ่มเคลื่อนที่ตามทิศทางที่ขยับ
User Action: ผู้ใช้ขยับ Orb อีกข้างเพื่อเปลี่ยน Mode การควบคุม
System Response: บนหน้าจอ HUD (Heads-up Display) ใน VR จะแสดงค่าความเร็ว (Speed) และสถานะแบตเตอรี่ที่ดึงมาจาก Sensor ของหุ่นยนต์แบบ Real-time

รูปภาพจาก : https://www.deviantart.com/techan/art/GBF-Battle-Control-System-FWD-451297117
Scenario 4: การจัดการระบบเมื่อเลิกใช้งาน
User Action: ผู้ใช้งานเลือกเมนู Logout
System Response: ระบบทำการปิดสภาพแวดล้อมเสมือนของห้องควบคุมหุ่นยนต์
User Action: ผู้ใช้เลื่อนตัวควบคุมใน VR ไปกดปุ่ม “Disconnect to Robot” บนหน้าต่าง
System Response: ระบบจะทำการยกเลิกการเชื่อมต่อของ VR Oculus Quest 2 กับ JetRover
Scenario 5: การจัดการเมื่อเกิดเหตุขัดข้อง (Safety/Exception)
Event: หุ่นยนต์เคลื่อนที่ไปในจุดที่อับสัญญาณ Wi-Fi หรือแบตเตอรี่ต่ำกว่าที่กำหนด
System Response:
ในโลก VR: หน้าจอ Cockpit จะกะพริบไฟสีแดง และเปลี่ยน Cockpit สีฟ้าเป็นสีแดง เตือน (Warning Light) และมีเสียงแจ้งเตือน “Connection Weak” หรือ “Low Battery”
ในโลกจริง: ระบบ Fail-safe สั่งให้หุ่นยนต์หยุดนิ่งทันที (Emergency Brake) เพื่อป้องกันการชนหรือสูญหาย
User Action: ผู้ใช้กดปุ่ม “Return to Home” (ถ้ามีระบบ Auto และสร้าง Map ไว้) หรือถอดแว่นเพื่อไปแก้ไขหุ่นยนต์ในโลกจริง
System Overview

Developer Member
65340500004 Kraiwich Vichakhot
- Mobile Robot Development
- Unity Development
- Network
65340500005 Khanapon Kattanyakit
- Unity Development
