scenario กาารทดลอง
เนื่องจาก HoloLens ที่เกิดความเสียหาย (ไม่สามารถ windows boot ได้ จำเป็นต้องลง windows ใหม่) ทำให้ scenario ของการทดลองมีการเปลี่ยนแปลง ดังนี้
มีการปรับลด user ในการทดสอบให้เหลือครั้งละ 1 คน โดยมีการทดสอบ 2 ครั้ง คือ การทดสอบผ่าน simulation ใน unity และการทดสอบผ่าน HoloLens Application ผู้ทดสอบจะยืนอยู่ประจำหน้ากล้องและสั่งงาน Unitree Go1 ผ่านการใช้ภาษามือผ่านกล้องไปยังหุ่นยนต์ และหุ่นยนต์จะทำการส่งค่าข้อมูลสถานะของตัวหุ่นยนต์กลับมายังผู้ทดสอบ
การทดลองที่ 1: การทดลองการรับค่าข้อมูลใน Unity Game Scene Simulation
วิธีการทดลอง:
ผู้ทดสอบจะยืนอยู่ประจำหน้ากล้องและสั่งงาน Unitree Go1 ผ่านการใช้ภาษามือผ่านกล้องไปยังหุ่นยนต์ และหุ่นยนต์จะทำการส่งค่าข้อมูลสถานะของตัวหุ่นยนต์กลับมายังผู้ทดสอบ โดยในการทดลองครั้งนี้จะเก็บผลผ่าน Debug Log ของ unity engine
สมมุติฐาน: Unity Game Scene Simulation จะสามารถรับค่าจาก Unitree Go1 ได้อย่างถูก้องสมบูรณ์ทุกครั้ง
ผลการทดลอง:
ตารางผลการทดลองการรับค่าจาก Unitree Go1 ผ่าน Unity Game Scene
อภิปรายผลการทดลอง:
การทดลองของผู้ทดสอบคนที่ 1 ไม่สามารถรับค่าได้อย่างถูกต้องใน 2 ท่าทาง คือท่ายืน(stand) และท่านั่ง(sit) เนื่องด้วยความหน่วงของ internet ภายในสถานที่ ในบางครั้งก่อนการทดสอบ internet ที่เชื่องต่ออยู่กับ Unitree Go1 ไม่สามารถใช้งานได้
ผลการทดสอบของผู้ทดสสอบที่ 2 ในรอบที่ 2 เป็นต้นไปนั้นไม่สามารถเก็บผลการทดสอบได้ เนื่องจากเกิดข้อผิดพลาดในการทรงตัวของ Unitree Go1 และทำให้ขาข้างหนึ่งของ Unitree Go1 เกิดการหมุนผิดรูปทรง แต่ไม่เกิดการหักบิ่นของเกียร์และมอเตอร์ภายใน ทำให้ไม่สามารถทำการทดลองต่อได้
การทดลองที่ 2: การทดลอง build HoloLens Application ลงใน HoloLens 2
วิธีการทดลอง:
ทำการ build ผ่านหน้าต่าง build window ของ MRTK Toolkit ชอง Unity โดยมี build setting ดังนี้
สมมุติฐาน: HoloLens Application สามารถ Build ลง HoloLens2 ได้
ผลการทดลอง:
อภิปรายผลการทดลอง:
มี 2 nodes ที่ไม่สามารถ compile ได้ โดยเป็น nodes ที่เกี่ยวข้องกับ OnOutputDataReceived และ DataReceivedEventArgs โดยทั้งสอง nodes นี้เกี่ยวข้องกับการจัดการ Output Data ซึ่งในโปรแกรมที่ทำการเขียนขึ้นมานั้นมีการ Output Data อยู่สองจุดคือ Debug Log และการ Output Text สำหรับการแสดงผล On Screen ซึ่งการแสดงผลทั้งหมดถูกจัดการใน MQTT Client Script จึงอาจเกิด bugs ได้จาก 3 อย่าง คือ
- Debug Log จากการ subscribe topic ใน MQTT Client script
- On Screen Display จากการ subscribe topic ใน MQTT Client script
- Bug จาก Version ของ M2MQTT และ/หรือ Bug จากการจัดการ Subscription order ของ MQTT Client script
การทดลองที่ 1: การทดลองการรับค่าข้อมูลใน HoloLens Application
วิธีการทดลอง:
ผู้ทดสอบจะยืนอยู่ประจำหน้ากล้องและสั่งงาน Unitree Go1 ผ่านการใช้ภาษามือผ่านกล้องไปยังหุ่นยนต์ และหุ่นยนต์จะทำการส่งค่าข้อมูลสถานะของตัวหุ่นยนต์กลับมายังผู้ทดสอบ โดยในการทดลองครั้งนี้จะเก็บผลผ่าน On Screen Display ของ HoloLens Application
สมมุติฐาน: Unity Game Scene Simulation จะสามารถรับค่าจาก Unitree Go1 ได้มีประสิทธิภาพใกล้เคียงกับการทดลองที่ 1
ผลการทดลอง:
ตารางผลการทดลองการรับค่าจาก Unitree Go1 ผ่าน Unity Game Scene
อภิปรายผลการทดลอง:
เนื่องจากผลของการทดลองที่ 2 ที่ติด build failure จาก OnOutputDataReceived และ DataReceivedEventArgs node ทำให้ไม่สามารถเก็บผลข้อมูลได้จาก HoloLens Application