TemiVR āļāļąāļāļāļēāļāļķāđāļāļĄāļēāđāļāļ·āđāļāđāļŦāđāļāļđāđāđāļāđāļŠāļēāļĄāļēāļĢāļāļāļ§āļāļāļļāļĄāļāļēāļĢāđāļāļĨāļ·āđāļāļāļāļĩāđāļŦāļļāđāļāļĒāļāļāđāļāļĢāļīāļāļēāļĢ (Temi) āļāđāļ§āļĒāļĨāļđāđāļ§āļīāđāļāļĢāļāļāļāļīāļĻāļāļēāļ āļŠāļģāļŦāļĢāļąāļāđāļāļāđāļāđāļĨāļĒāļĩāļ āļēāļāđāļŠāļĄāļ·āļāļ (KAT VR)
āļŠāļēāļĄāļēāļĢāļāļāļąāļāļāļēāļĢāđāļāļĨāļ·āđāļāļāđāļŦāļ§āļāļāļāļĢāđāļēāļāļāļēāļĒāđāļāđāđāļāļ Real-Time āđāļāļ·āđāļāđāļāđāļāļāļ·āđāļāļāļēāļāļŠāļģāļŦāļĢāļąāļāļāļēāļĢāđāļŠāļĢāļīāļĄāļŠāļĢāđāļēāļāļāļĢāļ°āļŠāļāļāļēāļĢāļāđāđāļŦāđāļāļąāļāļāļđāđāđāļāđāļāļēāļ Temi āđāļāļāļēāļĢāļāļ§āļāļāļļāļĄāļĢāļ°āļĒāļ°āđāļāļĨāļāļāļāđāļŦāļāļ·āļāļāļēāļāļāļēāļĢāđāļāđ Web Application āđāļāļĩāļĒāļāļāļĒāđāļēāļāđāļāļĩāļĒāļ§āđāļāđāļēāļāļąāđāļ
āļŠāļĄāļēāļāļīāļāļāļđāđāļāļąāļāļāļģ
āļāļąāļāļĻāļķāļāļĐāļēāļŠāļāļēāļāļąāļāļ§āļīāļāļĒāļēāļāļēāļĢāļŦāļļāđāļāļĒāļāļāđāļ āļēāļāļŠāļāļēāļĄ āđāļāļĢāļāļāļēāļĢ Internship āļāļĩāļāļēāļĢāļĻāļķāļāļĐāļē 2565
- āļāļēāļĢāļļāļ§āļĢāļĢāļ āļ§āļīāļāļīāļāļĢāđāđāļŠāļāļŠāļĩ
- āļĻāļĻāļīāļāļēāļāļāđ āđāļāļāļāļīāļāļąāļāļĐāđāļāļąāļĒ
- āļĻāļļāļ āļāļĢ āļāļēāļĢāļļāļāļļāļāļēāļ§āļāļĻāđ
āļ§āļąāļāļāļļāļāļĢāļ°āļŠāļāļāđ
- āđāļāļ·āđāļāļĻāļķāļāļĐāļēāļāļēāļĢāđāļāđāļāļēāļāđāļĨāļ°āļāļąāļāļāļēāļĢāļ°āļāļāļŠāļģāļŦāļĢāļąāļāļāļ§āļāļāļļāļĄāļŦāļļāđāļāļĒāļāļāđ Temi
- āđāļāļ·āđāļāļĻāļķāļāļĐāļēāļāļēāļĢāđāļāđāļāļēāļ VR Treadmil (KAT Walk Premium)
- āđāļāļ·āđāļāļĻāļķāļāļĐāļēāļāļēāļĢāđāļāđāļāļēāļ MQTT āđāļāļāļēāļĢāļĢāļąāļāļŠāđāļāļāđāļāļĄāļđāļĨ
āđāļāļāļāļēāļĢāļāļģāđāļāļīāļāļāļēāļ
āļāļēāļĢāļāļģāđāļŠāļāļāļāļĨāļāļēāļĢāļāļāļāđāļāļ
āđāļāļāļāļąāļāļāļēāļĢāļāļģāļāļēāļāļāļāļāļĢāļ°āļāļ TemiVR
- āđāļĄāļ·āđāļāļĢāļ°āļāļāđāļĢāļīāđāļĄāļāļģāļāļēāļāļĢāļ°āļāļāļāļ°āļĢāļąāļ Data āļāļāļāļāđāļē Variable āļāđāļēāļ āđ āļāļĩāđ Back sensor āđāļĨāļ° Foot sensor āļāļēāļ KAT VR āđāļāđāļēāļĄāļē āđāļāļĒāļāļ°āļāļķāļāļāđāļēāđāļāđāļēāļĄāļēāđāļāđāļāļēāļ 2 āļāđāļēāļāļ·āļ IsMoving : Boolean āļāļĩāđāđāļŠāļāļāđāļŦāđāđāļŦāđāļāļ§āđāļēāļāļđāđāđāļāđāļāļģāļĨāļąāļāđāļāļīāļāļāļĒāļđāđāļŦāļĢāļ·āļāđāļĄāđ āđāļĨāļ° BodyYaw : Degree āļāļāļĻāļēāļāļēāļĢāļŦāļĄāļļāļāļāļąāļāļāļļāļāļąāļ
- āđāļāļ·āđāļāđāļĄāđāđāļŦāđ Unity Publish āļāđāļāļĒāđāļāļīāļāđāļāļāļ Broker āļāļģāļāļēāļāļŦāļāļąāļ āļāļķāļāļĄāļĩāļāļēāļĢāļŦāļāđāļ§āļāđāļ§āļĨāļēāđāļāļāļēāļĢ Publish āđāļāļĒāļāļ°āļĄāļĩāļāļēāļĢ Publish āļāđāļāđāļāđāļĄāļ·āđāļ Ît >= 0.1f
- Publish MQTT Topic āđāļāļĒāđāļāđ Topic Moving āļŠāļģāļŦāļĢāļąāļāļāđāļē IsMoving āđāļĨāļ° Topic BodyYaw āļŠāļģāļŦāļĢāļąāļāļāđāļē BodyYaw
- āđāļĄāļ·āđāļ Temi āđāļāđāļĢāļąāļāļāđāļē Moving āđāļĨāļ° BodyYaw āļāļēāļ Topic āļāļąāļāļāļĨāđāļēāļ§ āļāļ°āđāļāđāļāļāđāļēāļāļāļ BodyYaw āđāļāļēāđāļ§āđāđāļāļāļąāļ§āđāļāļĢ NowAngle āđāļāļ·āđāļāđāļāđāļāļ§āđāļēāļāļąāļāļāļļāļāļąāļāļāļđāđāđāļāđāļāļģāļĨāļąāļāļāļĒāļđāđāđāļāļāļāļĻāļēāļāļĩāđāđāļāđāļēāđāļŦāļĢāđ
- Temi āļāļ°āļāļģāļāļēāļĢāđāļāđāļāļ§āđāļēāļāļąāļāļāļļāļāļąāļāļāļđāđāđāļāđāļāļģāļĨāļąāļāđāļāļīāļāļāļĒāļđāđāļŦāļĢāļ·āļāđāļĄāđ āļāđāļēāđāļāļīāļāļāļĒāļđāđāļāļ°āļāļģāļāļēāļĢāđāļāļīāļāđāļāļāđāļēāļāļŦāļāđāļē āđāļĄāđāļāļģāļāļēāļĢāļŦāļĄāļļāļāđāļ āđ
- āļŦāļēāļāļāļđāđāđāļāđāļŦāļĒāļļāļāđāļāļīāļ Temi āļāļ°āļāļģāļĄāļļāļĄāļāļāļĻāļēāļāļąāļāļāļļāļāļąāļ (NowAngle) āđāļāđāļāļĩāļĒāļāļāļąāļāļĄāļļāļĄāđāļĢāļāđāļĢāļīāđāļĄ (FirstAngle) āļ§āđāļēāļāļāļ°āļāļĩāđāļŦāļĄāļļāļāļāļēāļāđāļāļīāļĄāđāļāđāļāđāļēāđāļŦāļĢāđ āđāļĨāļ°āļāļ°āļāļģāļāļēāļĢāļŦāļĄāļļāļāļāļēāļĄāļāļāļĻāļēāļāļĩāđāđāļāđ āļāļēāļāļāļąāđāļāļāđāđāļāđāļāļāđāļē FirstAngle āđāļŦāđāđāļāđāļēāļāļąāļ NowAngle āđāļāļ·āđāļāđāļāđāļŠāļģāļŦāļĢāļąāļāđāļāļĩāļĒāļāļĄāļļāļĄāļāđāļāđāļ
āļāļēāļĢāļāļģāļŠāđāļ§āļāļāđāļēāļ āđ āļāļāļāļĢāļ°āļāļ TemiVR
1.āļŠāđāļ§āļāļāļāļ Temi
- āļāļąāļāļāļē Application āļāđāļēāļ Android studio āļĢāđāļ§āļĄāļāļąāļ SDK āļāļāļ Temi
- āđāļāđ Libraly Eclipse Paho āđāļāļāļēāļĢāļāļąāļāļāļēāļāļēāļĢāļĢāļąāļāļāđāļēāļāđāļēāļ MQTT āļāļēāļ HiveMQ Broker
- āđāļĄāļ·āđāļāđāļāđāļĢāļąāļ Data āļāļēāļ MQTT āđāļĨāđāļ§ Temi āļāļ°āļŠāļēāļĄāļēāļĢāļāđāļāļīāļāđāļāļāđāļēāļāļŦāļāđāļēāđāļĨāļ°āļŦāļĄāļļāļāđāļāđāļāļāļīāļĻāļāļēāļāļāļĩāđāļāļģāļŦāļāļāđāļāđ āđāļāļĒāđāļĄāļ·āđāļāļāļģāļĨāļąāļāđāļāļīāļāļāļĒāļđāđ Temi āļāļ°āđāļĄāđāļŠāļēāļĄāļēāļĢāļāļŦāļĄāļļāļāļāļąāļ§āđāļāđāļāļēāļĄāļāđāļāļāļģāļāļąāļāļāļāļāļāļąāļ§āļŦāļļāđāļāļĒāļāļāđ
2.āļŠāđāļ§āļāļāļāļ Temi
- āđāļāđ Unity āļĢāđāļ§āļĄāļāļąāļ SDK āļāļāļ KAT VR āđāļĨāļ° SteamVR āđāļāļāļēāļĢāļāļąāļāļāļēāđāļāļĢāđāļāļĢāļĄāļāļ HTC Vive āđāļāļĒ Unity āļāļ°āđāļāđāļāļāļąāļ§āļĢāļąāļāļāđāļēāļāļēāļ Sensor āļāļāļ KAT VR
- āđāļāđ MQTT āđāļāļāļēāļĢāļŠāđāļ Data āļāļēāļ KAT VR āļāđāļēāļ HiveMQ Broker
āļāļĨāļāļēāļĢāļāļāļāļāļāļĨāļāļ
āļāļēāļĢāļŦāļĄāļļāļāļāļāļ Temi āđāļāđāļāļģāļāļēāļĢāļāļāļĨāļāļāļ§āļąāļāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļāđāļāļāļēāļĢāļŦāļĄāļļāļāļāļēāļāļāđāļēāļāļĩāđāđāļāđāļĢāļąāļāļāļēāļ MQTT āļāļķāđāļāļ§āļąāļāļāļēāļāļāļēāļĢāļāļĩāđ Temi āļŠāļēāļĄāļēāļĢāļāļŦāļĄāļļāļāđāļāđāļāļĄāļļāļĄāļāļāļĻāļēāļāļĩāđāđāļāļĨāđāđāļāļĩāļĒāļāļāļąāļāļāļēāļĢāļŦāļĄāļļāļāļāļāļāļāļđāđāđāļāđāļŦāļĢāļ·āļāđāļĄāđ
- āļāļēāļāļāļēāļĢāļēāļāļāļĨāļāļēāļĢāļāļāļĨāļāļ "āļŠāļĩāđāļāļĩāļĒāļ§" āđāļāļāļāļēāļĢāļŦāļĄāļļāļāļāļĩāđāđāļāļĨāđāđāļāļĩāļĒāļāļāļąāļāļāļēāļĢāļŦāļĄāļļāļāļāļāļāļāļđāđāđāļāđāđāļĨāļ° "āļŠāļĩāđāļāļ" āđāļāļāļāļēāļĢāļŦāļĄāļļāļāļāļĩāđāđāļĄāđāđāļāļĨāđāđāļāļĩāļĒāļāļāļąāļāļāļēāļĢāļŦāļĄāļļāļāļāļāļāļāļđāđāđāļāđ (āļāļāļĻāļēāđāļĄāđāļāļĢāļ,āļŦāļĄāļļāļāļāļīāļāļāļēāļ)
Delay āđāļāļāļēāļĢāļĢāļąāļāļāļģāļŠāļąāđāļ āļāļēāļĢāļāļāļĨāļāļāļŦāļēāļĢāļ°āļĒāļ°āđāļ§āļĨāļēāļāļĩāđāđāļāđāđāļāļāļēāļĢāļŠāđāļāļāđāļēāļāļēāļ KAT VR āđāļ Temi āļāđāļēāļ MQTT āđāļāļ·āđāļāļŦāļēāļĢāļ°āļĒāļ°āđāļ§āļĨāļēāļāļĩāđāđāļāļīāļāļāļēāļĢ Delay āđāļāļĒāđāļāļĨāļĩāđāļĒāđāļĨāļ°āđāļ§āļĨāļēāļāļĩāđāđāļāđāļĄāļēāļāļāļĩāđāļŠāļļāļ
āļŠāļĢāļļāļāļāļĨāļāļēāļĢāļāļāļĨāļāļ
- āļŠāļĢāļļāļāļāļĨāļāļēāļĢāļāļāļĨāļāļāļāļēāļĢāļŦāļĄāļļāļ āļĄāļĩ Accuracy āļāļāļāļāļēāļĢāļŦāļĄāļļāļ 90 āļāļāļĻāļē, 180 āļāļāļĻāļē āđāļĨāļ° 360 āļāļāļĻāļē āļāļĒāļđāđāļāļĩāđ 75% , 50% āđāļĨāļ° 25% āļāļēāļĄāļĨāļģāļāļąāļ āđāļĨāļ°āļĄāļĩ Accuracy āđāļāļĨāļĩāđāļĒāļāļĒāļđāđāļāļĩāđ 50%
- āļŠāļĢāļļāļāļāļĨāļāļēāļĢāļāļāļĨāļāļ Delay āđāļāļāļēāļĢāļĢāļąāļāļāļģāļŠāļąāđāļāļāļēāļ MQTT āđāļāļĒ Delay āļāļēāļāļāļēāļĢāļĢāļąāļāļāļģāļŠāļąāđāļāđāļāļīāļāļŦāļāđāļēāļāļ°āļĄāļĩāļāđāļēāđāļāļĨāļĩāđāļĒāļāļĒāļđāđāļāļĢāļ°āļĄāļēāļ 1.076 āļ§āļīāļāļēāļāļĩ āđāļĨāļ° Delay āļāļēāļāļāļēāļĢāļĢāļąāļāļāļģāļŠāļąāđāļāļŦāļĄāļļāļāļĢāļāļāļāļąāļ§āļāļ°āļĄāļĩāļāđāļēāđāļāļĨāļĩāđāļĒāļāļĒāļđāđāļāļĢāļ°āļĄāļēāļ 1.23 āļ§āļīāļāļēāļāļĩ āđāļĨāļ°āļĢāļ°āļĒāļ°āđāļ§āļĨāļēāļāļĩāđāđāļāđāļĄāļēāļāļāļĩāđāļŠāļļāļāļāļ°āļāļĒāļđāđāļāļĩāđāļāļĢāļ°āļĄāļēāļ 2-3 āļ§āļīāļāļēāļāļĩ āļāļąāđāļāļāļēāļĢāđāļāļīāļāļŦāļāđāļēāđāļĨāļ°āļŦāļĄāļļāļāļĢāļāļāļāļąāļ§āļāļāļ Temi
āļāđāļāđāļŠāļāļāđāļāļ°
- āļāļĢāļąāļāļāļĢāļļāļāļāļ§āļēāļĄāđāļĄāđāļāļĒāļģāđāļāļāļēāļĢāļĢāļąāļāļāđāļēāļāļēāļĢāļŦāļĄāļļāļāļāļąāļ§āļāļāļ Temi āđāļŦāđāļāļĢāļāļāļąāļāļāļāļĻāļēāļāļēāļĢāļŦāļĄāļļāļāļāļāļ KAT VR āđāļŦāđāļĄāļēāļāļĒāļīāđāļāļāļķāđāļ
- āļāļĢāļąāļāļāļĢāļļāļāļĢāļ°āļĒāļ°āđāļ§āļĨāļēāđāļāļāļēāļĢāļŠāđāļāļāđāļēāļāđāļēāļ MQTT āđāļŦāđāđāļāļīāļāļāļēāļĢ Delay āđāļŦāđāļāđāļāļĒāļāļĩāđāļŠāļļāļ āđāļāļ·āđāļāļāļāļēāļāļŦāļēāļāļāļđāđāđāļāđāđāļāđāļĢāļąāļāļ āļēāļāļāļēāļāļāļļāļāļāļĢāļāđ Head-Mounted Display (HMD) āļāđāļēāļāļ§āđāļēāļāļēāļĢāđāļāļĨāļ·āđāļāļāļāļĩāđāļāļĢāļīāļ āļāļēāļāļāļģāđāļŦāđāđāļāļīāļāļ āļēāļ§āļ° Motion Sickness
- āļāļąāļāļāļēāļĢāļ°āļāļāļĢāļąāļāļŠāđāļāļ āļēāļāđāļŦāđāđāļŠāļĢāđāļāļŠāļĄāļāļđāļĢāļāđ
āļāđāļāļĄāļđāļĨāđāļāļīāđāļĄāđāļāļīāļĄ
Source Code (Unity)
Source Code (Temi)