๐XRoboToolkit ๋ฆฌ๋ทฐ
๐ Ping. ๐ Ring. โ๏ธ Dig. A tiered review series: quick look, key ideas, deep dive.
๐ Ping Review
๐ Ping โ A light tap on the surface. Get the gist in seconds.
XRoboToolkit์ Vision-Language-Action (VLA) ๋ชจ๋ธ ํ์ต์ ์ํ ๋๊ท๋ชจ, ๊ณ ํ์ง ๋ก๋ด ์์ฐ ๋ฐ์ดํฐ์ ์ ๊ธด๊ธํ ํ์์ฑ์ ํด๊ฒฐํ๊ธฐ ์ํด ๊ฐ๋ฐ๋ ํฌ๋ก์ค-ํ๋ซํผ Extended Reality (XR) ๊ธฐ๋ฐ ๋ก๋ด ์๊ฒฉ ์กฐ์(teleoperation) ํ๋ ์์ํฌ์ ๋๋ค. ๊ธฐ์กด ์๊ฒฉ ์กฐ์ ๋ฐฉ์์ ์ ํ๋ ํ์ฅ์ฑ, ๋ณต์กํ ์ค์ , ๊ทธ๋ฆฌ๊ณ ๋ถ๊ท ์ผํ ๋ฐ์ดํฐ ํ์ง ๋ฌธ์ ๋ฅผ ๊ทน๋ณตํ๋ ๊ฒ์ ๋ชฉํ๋ก ํฉ๋๋ค.
์ด ํ๋ ์์ํฌ๋ OpenXR ํ์ค์ ์ฑํํ์ฌ XR ์ฅ์น(์: PICO 4 Ultra, Meta Quest 3)์ ๋ก๋ด ์ปจํธ๋กค๋ฌ ๊ฐ์ ํ์คํ๋ ๋ฐ์ดํฐ ํ์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ์ผ๋ฐํ๋ ์ธํฐํ์ด์ค ๋ ์ด์ด๋ฅผ ์ ๊ณตํฉ๋๋ค. ๋ก๋ด ์ธก๋ฉด์์๋ ๋ชจ๋ํ๋ Python ๋ฐ C++ ์ธํฐํ์ด์ค๋ฅผ ํตํด ๋ค์ํ ๋ก๋ด ํ๋ซํผ(์ ๋ฐ ๋งค๋ํฐ๋ ์ดํฐ, ๋ชจ๋ฐ์ผ ๋ก๋ด, ๋ฑ์คํฐ๋ฌ์ค ํธ๋) ๋ฐ ์๋ฎฌ๋ ์ด์ ํ๊ฒฝ(MuJoCo)๊ณผ์ ์ํํ ํตํฉ์ ๊ฐ๋ฅํ๊ฒ ํฉ๋๋ค.
ํต์ฌ ๋ฐฉ๋ฒ๋ก ๋ฐ ๊ธฐ์ ์ ์ธ๋ถ ์ฌํญ:
- ๋ฐ์ดํฐ ์คํธ๋ฆฌ๋ฐ (Data Streaming):
XRoboToolkit-PC-Service๋ VR ํ๋์จ์ด์์ ํด๋ผ์ด์ธํธ ์ ํ๋ฆฌ์ผ์ด์ ์ผ๋ก ์ค์๊ฐ ๋ฐ์ดํฐ๋ฅผ ์คํธ๋ฆฌ๋ฐํ๊ธฐ ์ํ ๋น๋๊ธฐ์, ์ฝ๋ฐฑ ๊ธฐ๋ฐ ์ํคํ ์ฒ๋ฅผ ์ฌ์ฉํฉ๋๋ค.- XR ๋ฐ์ดํฐ ํ์: OpenXR ์ปจ๋ฒค์
์ ๋ฐ๋ผ ๋ชจ๋ ์์น ๋ฐ ํ์ ๋ฐ์ดํฐ๋ X์ถ์ด ์ค๋ฅธ์ชฝ, Y์ถ์ด ์, Z์ถ์ด ๋ค๋ฅผ ํฅํ๋ ์ค๋ฅธ์ ์ขํ๊ณ๋ฅผ ์ฌ์ฉํฉ๋๋ค. ์์ ์ ์ ํ๋ฆฌ์ผ์ด์
์์ ์ ์ฌ์ฉ์์ ๋จธ๋ฆฌ ์์น์ ์ค์ ๋ฉ๋๋ค. 6-์์ ๋(DOF) ์์ธ ๋ฐ์ดํฐ๋
[x, y, z]์ 3D ์์น ๋ฒกํฐ์ ์ฟผํฐ๋์ธ[qx, qy, qz, qw]๋ก ๊ตฌ์ฑ๋ 7๊ฐ์ ๋ถ๋ ์์์ ์ซ์๋ก ํฌ๋งท๋ฉ๋๋ค. - ๋ชจ๋ ์ค์๊ฐ ํธ๋ํน ๋ฐ์ดํฐ๋ ๋จ์ผ JSON ๊ฐ์ฒด๋ก 90Hz๋ก ์ ์ก๋ฉ๋๋ค. ์ด๋ ํด๋ผ์ด์ธํธ ์ธก ํ์ฑ์ ๋จ์ํํ๊ณ ํ์ฑํ๋ ํธ๋ํน ๊ธฐ๋ฅ์ ๊ด๊ณ์์ด ์ผ๊ด๋ ๋ฐ์ดํฐ ๊ตฌ์กฐ๋ฅผ ๋ณด์ฅํฉ๋๋ค.
- ํธ๋ํน ๋ชจ๋ฌ๋ฆฌํฐ ์ง์:
- Head Tracking: ํค๋์ ์์ธ, ํธ๋ํน ์ ๋ขฐ๋, ์ ๋ ฅ ๋ชจ๋(์ปจํธ๋กค๋ฌ, ์)๋ฅผ ํฌํจํฉ๋๋ค.
- Controller Tracking: ์ข์ฐ ์ปจํธ๋กค๋ฌ ์์ธ์ ๋ฒํผ(primaryButton, secondaryButton, menuButton), ์กฐ์ด์คํฑ(
axisX,axisY), ์๋ ๋ก๊ทธ ์ ์ด(grip, trigger) ์ํ๋ฅผ ์บก์ฒํฉ๋๋ค. - Hand Gesture Tracking: XR ํค๋์ ์ ์์ฒด ์ ํธ๋ํน ์๊ณ ๋ฆฌ์ฆ์ ํตํด 26๊ฐ์ ์ ๊ด์ ์์ธ(์์ง 4๊ฐ, ๋๋จธ์ง ์๊ฐ๋ฝ๋น 5๊ฐ, ์๋ฐ๋ฅ ๋ฐ ์๋ชฉ ๊ด์ )๋ฅผ ์ป์ต๋๋ค. ๊ฐ ๊ด์ ์ 6-DOF ์์ธ์ ํธ๋ํน ์ํ, ๊ด์ ๋ฐ๊ฒฝ์ ํฌํจํฉ๋๋ค. ๋ฐ์ดํฐ๋ 90Hz๋ก ์ ์ก๋์ง๋ง ์นด๋ฉ๋ผ ํ๊ณ๋ก ์ธํด 60Hz๋ก ์ ๋ฐ์ดํธ๋ฉ๋๋ค.
- Whole-Body Motion Capture: 24๊ฐ์ ์ฃผ์ ์ธ์ฒด ๋ชจ๋ธ ๊ด์ ์ ํด๋นํ๋ ํคํฌ์ธํธ ๋ฐ์ดํฐ๋ฅผ ํฌํจํ๋ฉฐ, ๊ฐ ํญ๋ชฉ์ ๊ด์ ์์ธ, ์๋ ๋ฐ ๊ฐ์๋๋ฅผ ํฌํจํฉ๋๋ค.
- Motion Tracker: PICO 4 Ultra์ ๊ฒฝ์ฐ ๋ณด์กฐ ๋ชจ์ ํธ๋์ปค์ ๊ฐ์ฒด ํธ๋ํน ๋ชจ๋๋ฅผ ์ง์ํ๋ฉฐ, ์์ธ, ์๋, ๊ฐ์๋, ์๋ฆฌ์ผ ๋ฒํธ๋ฅผ ์ ๊ณตํฉ๋๋ค.
- ๋ก๋ด ์ ์ด (Robot Control):
- XR ํธ๋ํน ์ํ๋ฅผ ๋ก๋ด ๋ช ๋ น์ผ๋ก ๋งคํํ๋ ์ฌ๋ฌ ์ ์ด ๋ชจ๋(IK, ๋ฑ์คํฐ๋ฌ์ค ํธ๋ ๋ฆฌํ๊ฒํ , ํค๋ ํธ๋ํน, ๋ชจ๋ฐ์ผ ๋ฒ ์ด์ค ์ ์ด)๋ฅผ ํฌํจํฉ๋๋ค.
- ์ญ๊ธฐ๊ตฌํ (Inverse Kinematics, IK): ๋งค๋ํฐ๋ ์ดํฐ ์ ์ด๋ฅผ ์ํด PlaCo [19] ๊ธฐ๋ฐ์ QP(Quadratic Programming)-๊ธฐ๋ฐ IK ์๋ฒ๋ฅผ ๊ตฌํํฉ๋๋ค.
- QP ๋ฌธ์ ๋ ๋ค์๊ณผ ๊ฐ์ด ์ ์๋ฉ๋๋ค: \min_{\dot{q}} \sum_{i=1}^{N} w_i \|J_i(q) \dot{q} + e_i(q)\|^2 \text{s.t.} \quad l \le C(q) \dot{q} \le u ์ฌ๊ธฐ์ q๋ ๋งค๋ํฐ๋ ์ดํฐ ๊ตฌ์ฑ, e_i(q)๋ ๊ฐ์ค์น w_i๋ฅผ ๊ฐ์ง ์์ฐจ ํจ์๋ก ์ ์๋ ๊ฐ ํ์คํฌ i, J_i(q)๋ ํ์คํฌ ์์ฝ๋น์, C(q)๋ ์ถ๊ฐ ์ ์ฝ ์กฐ๊ฑด ํ๋ ฌ์ ๋๋ค.
- ํน์ด์ (singularities) ๊ทผ์ฒ์์ ๋ก๋ด ์์ ์ฑ์ ํฅ์์ํค๊ธฐ ์ํด ์กฐ์์ฑ(manipulability)์ ์ต๋ํํ๋ ์ ๊ทํ ํญ์ด ์ฌ์ฉ๋ฉ๋๋ค: m = \sqrt{\det(J(q)J(q)^\top)}
- XR ์ปจํธ๋กค๋ฌ ์ฌ์ฉ ์, ์ฌ์ฉ์๊ฐ ๊ทธ๋ฆฝ ๋ฒํผ์ ๋๋ฅผ ๋ ๋ง๋จ ํจ๊ณผ๊ธฐ(end-effector) ํธ๋ํน์ด ํ์ฑํ๋๋ฉฐ, ์ปจํธ๋กค๋ฌ์ ์๋์ ์์ง์์ ๋ก๋ด์ ๋ง๋จ ํจ๊ณผ๊ธฐ์ ๋งคํํฉ๋๋ค.
- ๋ณด์กฐ ๋ชจ์ ํธ๋์ปค(์: ํ๊ฟ์น์ ๋ถ์ฐฉ)๋ ์ถ๊ฐ์ ์ธ IK ์ ์ฝ ์กฐ๊ฑด์ ์ ๊ณตํ์ฌ ๋ก๋ด์ ์ ์ ์์ธ๋ฅผ ๋ฏธ๋ฌํ๊ฒ ์ ์ดํ๊ณ , Null-space redundancy๋ฅผ ํด๊ฒฐํ๋ฉฐ, ์ธ๊ฐ๊ณผ ์ ์ฌํ ์์ง์์ ๋ฌ์ฑํฉ๋๋ค.
- ๋ฑ์คํฐ๋ฌ์ค ํธ๋ ๋ฆฌํ๊ฒํ
(Dexterous Hand Retargeting):
- OpenXR ์ ํธ๋ํน ๋ชจ๋ธ์ ํคํฌ์ธํธ ์์น๋ฅผ ๋ก๋ด ํธ๋ ๊ด์ ๊ณต๊ฐ์ผ๋ก ๋งคํํฉ๋๋ค.
- ์ด๋ ๋ค์ ์ต์ ํ ๋ฌธ์ ๋ฅผ ํตํด ์ด๋ฃจ์ด์ง๋๋ค: \min_{q_t} \sum_{i=1}^{N} \left\|\alpha v_i^t - f_i(q_t)\right\|^2 + \beta \|q_t - q_{t-1}\|^2 \text{s.t.} \quad q_l \le q_t \le q_u ์ฌ๊ธฐ์ q_t๋ ์๊ฐ t์์์ ๋ก๋ด ํธ๋ ๊ด์ ๊ตฌ์ฑ, v_i^t๋ ์ธ๊ฐ ์ ๋ชจ๋ธ์ i-๋ฒ์งธ ํคํฌ์ธํธ ์์น, f_i(q_t)๋ ํด๋น ๋ก๋ด ํธ๋ ์์น๋ฅผ ๊ณ์ฐํ๋ฉฐ, \alpha๋ ๋ค๋ฅธ ์ ํฌ๊ธฐ์ ๋ํ ์ค์ผ์ผ๋ง ์ธ์, \beta๋ ๋ถ๋๋ฌ์ด ์์ง์์ ์ํ ์ ๊ทํ ๊ฐ์ค์น์
๋๋ค.
dex retargeting[12]์ ์ฌ์ฉํ์ฌ ๊ตฌํ๋ฉ๋๋ค.
- ๋ชจ๋ฐ์ผ ๋ฒ ์ด์ค ์ ์ด (Mobile Base Control): ์ด๋๋๋ ์ ๋ ํ๋ซํผ์ ๊ฐ์ง ๋ชจ๋ฐ์ผ ๋งค๋ํฐ๋ ์ดํฐ์ ๊ฒฝ์ฐ, XR ์ปจํธ๋กค๋ฌ ์กฐ์ด์คํฑ์ผ๋ก ๋ชจ๋ฐ์ผ ๋ฒ ์ด์ค๋ฅผ ์ ์ดํฉ๋๋ค.
- ์คํ
๋ ์ค ๋น์ ํผ๋๋ฐฑ (Stereoscopic Visual Feedback):
- PICO 4 Ultra ํค๋์ ์ ์จ๋ณด๋ ์นด๋ฉ๋ผ ๋๋ ์ธ๋ถ ZED Mini ์นด๋ฉ๋ผ๋ฅผ ํตํด ์คํ ๋ ์ค ๋น๋์ค ์คํธ๋ฆฌ๋ฐ์ ์ง์ํฉ๋๋ค.
- ์ฌ์ฉ์ ์ง์ ์ ฐ์ด๋๋ฅผ ์ฌ์ฉํ์ฌ ๋๊ณต ๊ฐ ๊ฑฐ๋ฆฌ(interpupillary distance)๋ฅผ ์กฐ์ ํ๊ณ ์ด์ ์ ์ฝ 3.3ํผํธ์ ์ค์ ํ์ฌ ์กฐ์ ์์ ์ ์ ํฉํ 3์ฐจ์ ๊น์ด ์ธ์์ ์ ๊ณตํฉ๋๋ค. PICO 4 Ultra๋ ZED Mini์ ๋นํด ์ฐ์ํ ์๊ฐ์ ํ์ง๊ณผ ๊ท ํ ์กํ ์์ผ(FOV)๋ฅผ ์ ๊ณตํฉ๋๋ค.
์ ์ฉ ๋ฐ ์์ฐ:
XRoboToolkit์ ๋์ผ UR5 ๋ฐ ARX R5 ๋งค๋ํฐ๋ ์ดํฐ, Galaxea R1-Lite ๋ชจ๋ฐ์ผ ๋งค๋ํฐ๋ ์ดํฐ, Shadow ๋ฑ์คํฐ๋ฌ์ค ํธ๋์ ๊ฐ์ ๋ค์ํ ๋ก๋ด ํ๋ซํผ๊ณผ MuJoCo ์๋ฎฌ๋ ์ด์ ํ๊ฒฝ์์ ๊ฒ์ฆ๋์์ต๋๋ค.
- XR ์ปจํธ๋กค๋ฌ ๊ธฐ๋ฐ ์๊ฒฉ ์กฐ์: ๋์ผ ์ ๋งค๋ํฐ๋ ์ดํฐ ๋ฐ ๋ชจ๋ฐ์ผ ๋งค๋ํฐ๋ ์ดํฐ ์ ์ด์ ์ฌ์ฉ๋ฉ๋๋ค.
- ์ ๋ฐ ์กฐ์๊ณผ ์กํฐ๋ธ ์คํ ๋ ์ค ๋น์ : 2-DOF ์กํฐ๋ธ ํค๋(yaw, pitch)์ ์คํ ๋ ์ค ๋น์ ์ ๊ฐ์ถ ๋์ผ UR5 ์ค์ ์์ 3mm ๋๋ผ์ด๋ฒ๋ฅผ 4mm ๊ตฌ๋ฉ์ ์ฝ์ ํ๋ ๊ณ ์ ๋ฐ ์์ (0.5mm ๊ณต์ฐจ)์ ์ฑ๊ณตํ์ต๋๋ค.
- redundant ๋งค๋ํฐ๋ ์ดํฐ ์ ์ด๋ฅผ ์ํ ๋ชจ์ ํธ๋์ปค: Unitree G1 ์์ฒด ๋ชจ๋ธ์ ๋ณด์กฐ ๋ชจ์ ํธ๋์ปค๋ฅผ ์ฌ์ฉํ์ฌ 7-DOF ๋ก๋ด ํ๊ฟ์น ์ ์ด์ ํ์ฉ๋๋ฉฐ, ์ธ๊ฐ์ ์์ฐ์ค๋ฌ์ด ํ ๊ตฌ์ฑ์ ๋ชจ๋ฐฉํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
- MuJoCo์์์ ๋ฑ์คํฐ๋ฌ์ค ํธ๋ ์ ์ด: ํค๋์ ์ ์ ํธ๋ํน ๋ชจ๋๋ฅผ ์ฌ์ฉํ์ฌ MuJoCo ์๋ฎฌ๋ ์ด์ ์์ Shadow Hand์ ํค๋ค๋งํฑ ๊ตฌ์กฐ๋ก ๋งคํํ์ฌ ๋ฏธ์ธ ์กฐ์ ์์ ์ ์ํํฉ๋๋ค.
์ฑ๋ฅ ํ๊ฐ:
- ๋น๋์ค ์คํธ๋ฆฌ๋ฐ ์ง์ฐ ์๊ฐ ๋น๊ต: Open-TeleVision๊ณผ ๋น๊ตํ์ฌ XRoboToolkit์ ZED Mini - PICO 4 Ultra ๊ตฌ์ฑ์์ 82.00ms์ ๊ฐ์ฅ ๋ฎ์ ํ๊ท ์ง์ฐ ์๊ฐ์ ๋ฌ์ฑํ์ต๋๋ค. ZED Mini - Quest 3 ๊ตฌ์ฑ์์๋ Open-TeleVision(121.50ms)๋ณด๋ค 27ms(22%) ํฅ์๋ 94.50ms๋ฅผ ๊ธฐ๋กํ์ต๋๋ค. PICO 4 Ultra - PICO 4 Ultra ๊ตฌ์ฑ์ 3.12ms๋ก ๊ฐ์ฅ ๋ฎ์ ๊ฐ๋ณ์ฑ์ ๋ณด์์ต๋๋ค.
- VLA ๋ฏธ์ธ ์กฐ์ ๋ฐ์ดํฐ ์์ง: XRoboToolkit์ ์ฌ์ฉํ์ฌ ARX R5 ๋์ผ ์ ์์คํ ์ผ๋ก ์ํ ์นดํซ ์ ๊ธฐ(bimanual carpet folding) ์์ ์ 100ํ ์์ฐํ์ฌ ๊ณ ํ์ง ๋ฐ์ดํฐ๋ฅผ ์์งํ์ต๋๋ค. ์ด ๋ฐ์ดํฐ๋ก \pi^0 ๋ชจ๋ธ [3]์ ๋ฏธ์ธ ์กฐ์ ํ์ฌ 100%์ ์ฑ๊ณต๋ฅ ๊ณผ ์์จ์ ์ธ ๋ฆฌ๊ทธ๋์คํ ๋ฐ ์ฌ๋ฐฐ์น ๋์์ ๋ณด์ด๋ ๊ฐ๋ ฅํ ์ ์ฑ ์ ๋ฌ์ฑํ์ต๋๋ค.
๊ฒฐ๋ก :
XRoboToolkit์ ๋ฎ์ ์ง์ฐ ์๊ฐ์ ์คํ ๋ ์ค ํผ๋๋ฐฑ, ์ต์ ํ ๊ธฐ๋ฐ ์ ์ด ๋ฐ ๋ชจ๋์ ์ํคํ ์ฒ๋ฅผ ํตํด ๊ธฐ์กด ์์คํ ์ ํ๊ณ๋ฅผ ๊ทน๋ณตํ๋ XR ๊ธฐ๋ฐ ๋ก๋ด ์๊ฒฉ ์กฐ์์ ์ํ ํฌ๋ก์ค ํ๋ซํผ ํ๋ ์์ํฌ์ ๋๋ค. ์ด ํ๋ ์์ํฌ๋ ๋ค์ํ ๋ก๋ด ํ๋ซํผ์์ ๊ทธ ๋ค์ฉ์ฑ์ ์ ์ฆํ์ผ๋ฉฐ, ์ ๋ฐ ์กฐ์ ์์ ๊ณผ VLA ๋ชจ๋ธ ํ๋ จ์ ํตํด ๊ทธ ํจ๊ณผ๋ฅผ ๊ฒ์ฆํ์ต๋๋ค.
ํฅํ ์ฐ๊ตฌ:
- ์ ์๋(underactuated) ์์คํ ์ ์ํ ์ ๋ฆฌํ๊ฒํ ์๊ณ ๋ฆฌ์ฆ ๊ฐ์ .
- Roboverse [23]์ ๊ฐ์ ํ๋ซํผ์ ํตํด ์๋ฎฌ๋ ์ด์ ์ง์ ํ๋.
- ๊ฒ์ฆ๋ ์ ์ ๋ชจ์ ๋ฆฌํ๊ฒํ [24]์ ํตํ ํด๋จธ๋ ธ์ด๋ ์๊ฒฉ ์กฐ์ ๊ธฐ๋ฅ ๊ฐ๋ฐ.
- OpenXR ํ์คํ ๋ ธ๋ ฅ์ ๊ธฐ์ฌํ์ฌ ๋์ฑ ์ผ๊ด๋ ํฌ๋ก์ค ํ๋ซํผ ํธํ์ฑ ํ๋ณด.
๐ Ring Review
๐ Ring โ An idea that echoes. Grasp the core and its value.
1. ์๋ก : VLA ์๋์ ๋ฐ์ดํฐ ์์ง ํจ๋ฌ๋ค์ ๋ณํ
1.1 ์ฐ๊ตฌ ๋ฐฐ๊ฒฝ๊ณผ ๋๊ธฐ
Vision-Language-Action(VLA) ๋ชจ๋ธ์ ๊ธ๊ฒฉํ ๋ฐ์ ์ ๋ก๋ด ๊ณตํ ๋ถ์ผ์ ์๋ก์ด ํจ๋ฌ๋ค์์ ์ ์ํ๊ณ ์์ต๋๋ค. Physical Intelligence์ ฯโ, Google DeepMind์ RT-2, OpenVLA ๋ฑ ๋๊ท๋ชจ ๊ธฐ๋ฐ ๋ชจ๋ธ๋ค์ด ๋ฑ์ฅํ๋ฉด์, ๋ก๋ด์ด ์์ฐ์ด ์ง์๋ฅผ ์ดํดํ๊ณ ๋ณต์กํ ์กฐ์ ์์ ์ ์ํํ๋ ๊ฒ์ด ์ ์ ํ์คํ๋๊ณ ์์ต๋๋ค. ๊ทธ๋ฌ๋ ์ด๋ฌํ ๋ชจ๋ธ๋ค์ ์ฑ๋ฅ์ ๊ฒฐ๊ตญ ํ์ต์ ์ฌ์ฉ๋๋ ์์ฐ ๋ฐ์ดํฐ์ ํ์ง๊ณผ ๊ท๋ชจ์ ํฌ๊ฒ ์์กดํฉ๋๋ค.
ํ์ฌ ๋ก๋ด ์์ฐ ๋ฐ์ดํฐ ์์ง์ ์ฃผ๋ฅ ๋ฐฉ๋ฒ์ ํ ๋ ์คํผ๋ ์ด์ (Teleoperation)์ ๋๋ค. ์ธ๊ฐ ์กฐ์์๊ฐ ๋ก๋ด์ ์๊ฒฉ์ผ๋ก ์ ์ดํ์ฌ ์์ ์ ์ํํ๊ณ , ์ด ๊ณผ์ ์์ ์์ฑ๋๋ ์ํ-ํ๋ ์์ ๋ฐ์ดํฐ๋ก ์ ์ฅํ๋ ๋ฐฉ์์ ๋๋ค. ๊ทธ๋ฌ๋ ๊ธฐ์กด์ ํ ๋ ์คํผ๋ ์ด์ ์์คํ ๋ค์ ๋ค์๊ณผ ๊ฐ์ ๊ทผ๋ณธ์ ์ธ ํ๊ณ๋ฅผ ๊ฐ์ง๊ณ ์์ต๋๋ค:
ํ์ฅ์ฑ์ ํ๊ณ: ALOHA, GELLO ๊ฐ์ ๋ฆฌ๋-ํ๋ก์(Leader-Follower) ์์คํ ์ ์ ๋ฐํ ์ ์ด๋ฅผ ์ ๊ณตํ์ง๋ง, ํน์ ๋ก๋ด ํ๋์จ์ด์ ์ข ์๋์ด ์์ด ๋ค์ํ ํ๋ซํผ์ผ๋ก์ ํ์ฅ์ด ์ด๋ ต์ต๋๋ค. ALOHA ๋์ผ ์ ์์คํ ์ ๊ฒฝ์ฐ $50,000 ์ด์์ ๋น์ฉ์ด ๋ค๋ฉฐ, GELLO์กฐ์ฐจ๋ ๋จ์ผ ์๋น $270 ์ด์์ BOM ๋น์ฉ์ด ํ์ํฉ๋๋ค.
๋ณต์กํ ์ค์ ์ ์ฐจ: ๊ธฐ์กด VR/XR ํ ๋ ์คํผ๋ ์ด์ ์๋ฃจ์ ๋ค์ Unity SDK๋ WebXR ํ๋ซํผ์ ์์กดํ์ฌ ์ถ๊ฐ์ ์ธ ์ง์ฐ ์๊ฐ๊ณผ ํธํ์ฑ ๋ฌธ์ ๋ฅผ ์ผ๊ธฐํฉ๋๋ค. ๋ํ XR ์ฅ์น์ ๋ก๋ด ์ปจํธ๋กค๋ฌ ๊ฐ์ ํ์คํ๋ ๋ฐ์ดํฐ ํฌ๋งท์ด ๋ถ์ฌํ์ฌ, ์๋ก์ด ์ฅ์น๋ ๋ก๋ด ํ๋ซํผ์ ํตํฉํ ๋๋ง๋ค ์๋นํ ์์ง๋์ด๋ง ์์ ์ด ํ์ํฉ๋๋ค.
๋ฐ์ดํฐ ํ์ง ๋ฌธ์ : ๋น์ ๊ธฐ๋ฐ ํ ๋ ์คํผ๋ ์ด์ ์์คํ (DexCap, UMI, AnyTeleop ๋ฑ)์ ์ฌ์ฉ์ด ํธ๋ฆฌํ์ง๋ง, ์ด๋ํ์ ํน์ด์ (kinematic singularity) ๋ฌธ์ , ๋ก๋ด ์์ ๊ณต๊ฐ ์ด๊ณผ, ์ ๋ฐ๋ ๋ถ์กฑ ๋ฑ์ ๋ฌธ์ ๋ก ์ธํด ์์ง๋ ๋ฐ์ดํฐ์ ํ์ง์ด ์ ํ๋ ์ ์์ต๋๋ค.
1.2 XRoboToolkit์ ํต์ฌ ๊ธฐ์ฌ
XRoboToolkit์ ์ด๋ฌํ ๋ฌธ์ ๋ค์ ํด๊ฒฐํ๊ธฐ ์ํด OpenXR ํ์ค์ ๊ธฐ๋ฐ์ผ๋ก ํ ํฌ๋ก์ค ํ๋ซํผ ํ ๋ ์คํผ๋ ์ด์ ํ๋ ์์ํฌ๋ฅผ ์ ์ํฉ๋๋ค. ์ด ํ๋ ์์ํฌ์ ์ฃผ์ ๊ธฐ์ฌ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค:
- OpenXR ๊ธฐ๋ฐ ํ์คํ: ์ ๊ณ ํ์ค์ธ OpenXR์ ์ฑํํ์ฌ ๋ค์ํ XR ํค๋์ (PICO 4 Ultra, Meta Quest 3 ๋ฑ)์์ ๋์ํ๋ ํฌ๋ก์ค ํ๋ซํผ ํธํ์ฑ์ ํ๋ณดํ์ต๋๋ค.
- ์ ์ง์ฐ ์คํ ๋ ์ค์ค์ฝํฝ ๋น์ : ์ต์ ํ๋ ๋น๋์ค ์คํธ๋ฆฌ๋ฐ ํ์ดํ๋ผ์ธ์ ํตํด ์ ์ง์ฐ ์์ ์๊ฐ ํผ๋๋ฐฑ์ ์ ๊ณตํ์ฌ ๋ชจ์ ์ํฌ๋์ค๋ฅผ ์ต์ํํ๊ณ ์ง๊ด์ ์ธ ์กฐ์ ๊ฒฝํ์ ์ ๊ณตํฉ๋๋ค.
- ์ต์ ํ ๊ธฐ๋ฐ ์ญ์ด๋ํ(IK) ์๋ฒ: Quadratic Programming(QP) ๊ธฐ๋ฐ์ IK ์๋ฒ๋ฅผ ํตํด ํน์ด์ ๊ทผ์ฒ์์๋ ๋ถ๋๋ฝ๊ณ ์์ ์ ์ธ ๋ก๋ด ๋ชจ์ ์ ์์ฑํฉ๋๋ค.
- ๋ค์ํ ํธ๋ํน ๋ชจ๋ฌ๋ฆฌํฐ ์ง์: ํค๋, ์ปจํธ๋กค๋ฌ, ํธ๋, ๋ณด์กฐ ๋ชจ์ ํธ๋์ปค ๋ฑ ๋ค์ํ ํธ๋ํน ๋ฐฉ์์ ํตํฉ ์ง์ํฉ๋๋ค.
- ๋ชจ๋๋ฌ ์ํคํ ์ฒ: UR5, ARX R5, Galaxea R1-Lite ๋ฑ ๋ค์ํ ๋ก๋ด ํ๋ซํผ๊ณผ MuJoCo ๊ฐ์ ์๋ฎฌ๋ ์ด์ ํ๊ฒฝ์ ์ฝ๊ฒ ํตํฉ๋ ์ ์๋ ๋ชจ๋๋ฌ ์ค๊ณ๋ฅผ ์ฑํํ์ต๋๋ค.
2. ์์คํ ์ํคํ ์ฒ ์์ธ ๋ถ์
2.1 ์ ์ฒด ์์คํ ๊ฐ์
XRoboToolkit์ ์ํคํ ์ฒ๋ ํฌ๊ฒ XR ์ธก(ํด๋ผ์ด์ธํธ)๊ณผ ๋ก๋ด ์ธก(์๋ฒ)์ผ๋ก ๊ตฌ๋ถ๋ฉ๋๋ค. ์ด ๋ ์ธก๋ฉด์ ๋คํธ์ํฌ๋ฅผ ํตํด ์ค์๊ฐ์ผ๋ก ํต์ ํ๋ฉฐ, ๊ฐ๊ฐ ๊ณ ์ ํ ์ญํ ์ ์ํํฉ๋๋ค.
XR ์ธก ์ปดํฌ๋ํธ:
- XRoboToolkit-Unity-Client: XR ํค๋์ ์ ๋ฐฐํฌ๋๋ Unity ์ ํ๋ฆฌ์ผ์ด์ ์ผ๋ก, ํฌ์ฆ ํธ๋ํน ๋ฐ์ดํฐ ์บก์ฒ์ ์คํ ๋ ์ค์ค์ฝํฝ ์๊ฐ ์ธํฐํ์ด์ค๋ฅผ ๋ด๋นํฉ๋๋ค.
- ํฌ์ฆ ํธ๋ํน ๋ฐ์ดํฐ: ํค๋, ํธ๋, ์ปจํธ๋กค๋ฌ, ์ ์ , ์ค๋ธ์ ํธ ํธ๋ํน(๋ชจ์ ํธ๋์ปค๋ฅผ ํตํ) ๋ฐ์ดํฐ๋ฅผ ์์งํฉ๋๋ค.
๋ก๋ด ์ธก ์ปดํฌ๋ํธ:
- XRoboToolkit-PC-Service: C++๋ก ๊ตฌํ๋ PC ์๋น์ค๋ก, XR ํค๋์ ์ผ๋ก๋ถํฐ ํฌ์ฆ ํธ๋ํน ๋ฐ์ดํฐ๋ฅผ ์์ ํฉ๋๋ค.
- XRoboToolkit-PC-Service-Pybind: Python์์ XR ํธ๋ํน ๋ฐ์ดํฐ์ ์ง์ ์ ๊ทผํ ์ ์๊ฒ ํด์ฃผ๋ ๋ฐ์ธ๋ฉ ๋ ์ด์ด์ ๋๋ค.
- XRoboToolkit-Robot-Vision: PICO ํค๋์ ์ ์จ๋ณด๋ ์นด๋ฉ๋ผ ๋๋ ์ธ๋ถ ZED Mini ์นด๋ฉ๋ผ๋ฅผ ํตํ ์คํ ๋ ์ค ๋น์ ๋ชจ๋์ ๋๋ค.
- XRoboToolkit-Teleop-Sample-Python: IK ๋ฐ ๋ฑ์คํฐ๋ฌ์ค ๋ฆฌํ๊ฒํ ์๋ฒ๊ฐ ๊ตฌํ๋ ํ ๋ ์คํผ๋ ์ด์ ๋ชจ๋์ ๋๋ค.
2.2 OpenXR ๋ฐ์ดํฐ ํฌ๋งท๊ณผ ์ขํ๊ณ
XRoboToolkit์ OpenXR ์ปจ๋ฒค์ ์ ๋ฐ๋ผ ๋ชจ๋ ์์น ๋ฐ ํ์ ๋ฐ์ดํฐ๋ฅผ ์ฐ์ ์ขํ๊ณ(right-handed coordinate system)๋ก ํํํฉ๋๋ค. ์ขํ์ถ์ X์ถ์ด ์ค๋ฅธ์ชฝ, Y์ถ์ด ์์ชฝ, Z์ถ์ด ๋ค์ชฝ์ ํฅํฉ๋๋ค.
6-DOF ํฌ์ฆ ๋ฐ์ดํฐ ํฌ๋งท:
- 7๊ฐ์ ๋ถ๋์์์ ์ซ์๋ก ๊ตฌ์ฑ: 3D ์์น ๋ฒกํฐ(x, y, z) + ํ์ ์ฟผํฐ๋์ธ(qx, qy, qz, qw)
- ์ฝค๋ง๋ก ๊ตฌ๋ถ๋ ๋ฌธ์์ด ํํ๋ก ์ ์ก
์์ ์ค์ :
- ์ ํ๋ฆฌ์ผ์ด์ ์์ ์ ์ฌ์ฉ์์ ํค๋ ์์น๊ฐ ์์ ์ผ๋ก ์ค์ ๋ฉ๋๋ค.
- ์ด๋ฅผ ํตํด ์ฌ์ฉ์์ ์๋์ ์์ง์์ด ๋ก๋ด ์ ์ด์ ์ง๊ด์ ์ผ๋ก ๋งคํ๋ฉ๋๋ค.
2.3 XRoboToolkit-PC-Service์ ๋น๋๊ธฐ ์ํคํ ์ฒ
PC ์๋น์ค๋ VR ํ๋์จ์ด๋ก๋ถํฐ ํด๋ผ์ด์ธํธ ์ ํ๋ฆฌ์ผ์ด์ ์ผ๋ก์ ์ค์๊ฐ ๋ฐ์ดํฐ ์คํธ๋ฆฌ๋ฐ์ ์ํด ๋น๋๊ธฐ, ์ฝ๋ฐฑ ๊ธฐ๋ฐ ์ํคํ ์ฒ๋ฅผ ์ฑํํ์ต๋๋ค. ์ด๋ฌํ ์ค๊ณ ์ ํ์ ์ด์ ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค:
- ๋ ผ๋ธ๋กํน I/O: ๋ฐ์ดํฐ ์์ ๊ณผ ์ฒ๋ฆฌ๊ฐ ๋ ๋ฆฝ์ ์ผ๋ก ์ํ๋์ด ์์คํ ์๋ต์ฑ์ด ํฅ์๋ฉ๋๋ค.
- ์ด๋ฒคํธ ๊ธฐ๋ฐ ์ฒ๋ฆฌ: ์๋ก์ด ๋ฐ์ดํฐ๊ฐ ๋์ฐฉํ ๋๋ง๋ค ์ฝ๋ฐฑ์ด ํธ์ถ๋์ด ์ฆ๊ฐ์ ์ธ ์ฒ๋ฆฌ๊ฐ ๊ฐ๋ฅํฉ๋๋ค.
- ๋ฆฌ์์ค ํจ์จ์ฑ: ํด๋ง ๋ฐฉ์ ๋๋น CPU ์ฌ์ฉ๋ฅ ์ ๋ฎ์ถ๋ฉด์๋ ์ ์ง์ฐ ์ฑ๋ฅ์ ์ ์งํฉ๋๋ค.
3. ํต์ฌ ๊ธฐ์ ์์ ์ฌ์ธต ๋ถ์
3.1 ์คํ ๋ ์ค์ค์ฝํฝ ๋น์ฃผ์ผ ํผ๋๋ฐฑ ์์คํ
ํ ๋ ์คํผ๋ ์ด์ ์์ ์๊ฐ ํผ๋๋ฐฑ์ ํ์ง์ ์กฐ์์์ ์ํฉ ์ธ์๊ณผ ์์ ์ํ ๋ฅ๋ ฅ์ ์ง์ ์ ์ธ ์ํฅ์ ๋ฏธ์นฉ๋๋ค. XRoboToolkit์ ๋ ๊ฐ์ง ์คํ ๋ ์ค ๋น์ ์ต์ ์ ์ ๊ณตํฉ๋๋ค:
PICO 4 Ultra ์จ๋ณด๋ ์นด๋ฉ๋ผ:
- ์ํ FOV: ์ฝ 76.35ยฐ, ์์ง FOV: ์ฝ 61.05ยฐ
- ๊ท ํ ์กํ ์์ผ๊ฐ์ผ๋ก ํ ๋ ์คํผ๋ ์ด์ ์์ ์ ์ต์ ํ
- ์ฐ์ํ ํค ์ฌํ, ๋ฐ๊ธฐ, ์์ ์ ํ๋, ๋ค์ด๋๋ฏน ๋ ์ธ์ง
ZED Mini ์ธ๋ถ ์นด๋ฉ๋ผ:
- ์ํ FOV: 82ยฐ, ์์ง FOV: 52ยฐ
- ๋ ๋์ ์ํ ์์ผ๊ฐ ์ ๊ณต
- ์๊ฑฐ๋ฆฌ ๊น์ด ์ ํ๋์์ ์ผ๋ถ ํธ๋ ์ด๋์คํ
์ฐ๊ตฌํ์ ๊ฒฝํ์ ๊ด์ฐฐ์ ๋ฐ๋ฅด๋ฉด, PICO 4 Ultra๊ฐ ์ ๋ฐ์ ์ธ ์๊ฐ ํ์ง ์ธก๋ฉด์์ ZED Mini๋ณด๋ค ์ฐ์ํ ์ฑ๋ฅ์ ๋ณด์์ต๋๋ค. ํนํ ํ ๋ ์คํผ๋ ์ด์ ์์ ์ ์ต์ ์ด๋ผ๊ณ ํ๋จ๋๋ ๊ฑฐ๋ฆฌ์์ ํฅ์๋ 3์ฐจ์ ๊น์ด ์ธ์์ ์ ๊ณตํฉ๋๋ค.
์ ์ง์ฐ ํต์ ํ๋กํ ์ฝ:
- ๊ณ ํจ์จ ๋น๋์ค ์คํธ๋ฆฌ๋ฐ ํ์ดํ๋ผ์ธ ์ต์ ํ
- ๋ชจ์ ์ํฌ๋์ค ์ต์ํ๋ฅผ ์ํ ์ง์ฐ ์๊ฐ ๊ฐ์
- ๋คํธ์ํฌ ์กฐ๊ฑด์ ์ ์ํ๋ ๋์ ํ์ง ์กฐ์
3.2 ์ต์ ํ ๊ธฐ๋ฐ ์ญ์ด๋ํ(Inverse Kinematics) ์๋ฒ
๋ก๋ด ํ ๋ ์คํผ๋ ์ด์ ์์ IK ์๋ฒ๋ ์ธ๊ฐ ์กฐ์์์ end-effector ํฌ์ฆ๋ฅผ ๋ก๋ด์ ๊ด์ ๋ช ๋ น์ผ๋ก ๋ณํํ๋ ํต์ฌ ์ญํ ์ ํฉ๋๋ค. XRoboToolkit์ Quadratic Programming(QP) ๊ธฐ๋ฐ์ IK ์๋ฒ๋ฅผ ์ฑํํ์ฌ ๊ธฐ์กด ๋ฐฉ์์ ํ๊ณ๋ฅผ ๊ทน๋ณตํฉ๋๋ค.
๊ธฐ์กด IK ๋ฐฉ์์ ๋ฌธ์ ์ :
- ํด์์ (Analytical) IK: ๋น ๋ฅด์ง๋ง ํน์ ๋ก๋ด ๊ธฐ๊ตฌํ์๋ง ์ ์ฉ ๊ฐ๋ฅํ๋ฉฐ, ํน์ด์ ์ฒ๋ฆฌ๊ฐ ์ด๋ ต์ต๋๋ค.
- ์์น์ (Numerical) IK (Jacobian ๊ธฐ๋ฐ):
- ํน์ด์ ๊ทผ์ฒ์์ Jacobian ํ๋ ฌ์ ์กฐ๊ฑด์(condition number)๊ฐ ๊ธ๊ฒฉํ ์ฆ๊ฐ
- ๊ด์ ์๋/ํ ํฌ๊ฐ ๊ธ๋ฑํ์ฌ ๋ถ์์ ํ ์์ง์ ๋ฐ์
- ๊ณ ์ ๋ ๋์คํ์ด์ค(nullspace) ํ ๋น์ผ๋ก ์ธํ ์ ์ฐ์ฑ ๋ถ์กฑ
QP ๊ธฐ๋ฐ IK์ ์ฅ์ :
QP ๊ธฐ๋ฐ IK ์๋ฒ๋ ๋ค์๊ณผ ๊ฐ์ ์ต์ ํ ๋ฌธ์ ๋ก ์ ์ํ๋ฉ๋๋ค:
minimize ||Jยทฮq - ฮx||ยฒ + ฮป||ฮq||ยฒ
subject to q_min โค q + ฮq โค q_max
|ฮq| โค ฮq_max
- J: Jacobian ํ๋ ฌ
- ฮq: ๊ด์ ์๋
- ฮx: end-effector ์๋
- ฮป: ์ ๊ทํ ๊ณ์
- q_min, q_max: ๊ด์ ํ๊ณ
- ฮq_max: ๊ด์ ์๋ ํ๊ณ
์ด ์ ์ํ์ ์ด์ :
- ํน์ด์ ํํผ: ์ ๊ทํ ํญ(||ฮq||ยฒ)์ด ํน์ด์ ๊ทผ์ฒ์์ ๊ด์ ์๋ ํญ์ฃผ๋ฅผ ๋ฐฉ์งํฉ๋๋ค.
- ์ ์ฝ ์กฐ๊ฑด ๋ง์กฑ: ๊ด์ ํ๊ณ, ์๋ ํ๊ณ, ์ฌ์ง์ด ์๊ธฐ ์ถฉ๋ ํํผ๊น์ง ๋ถ๋ฑ์ ์ ์ฝ์ผ๋ก ์์ฐ์ค๋ฝ๊ฒ ํฌํจํ ์ ์์ต๋๋ค.
- ๋ถ๋๋ฌ์ด ๋ชจ์ : ์ต์ ๋ ธ๋ฆ ์๋ฃจ์ ์ ์ฐพ์ผ๋ฏ๋ก ์์ง์์ด ๋ถ๋๋ฝ๊ณ ์์ธก ๊ฐ๋ฅํฉ๋๋ค.
- ์ฌ์ ์์ ๋ ํ์ฉ: 7-DOF ์ด์์ ์ฌ์ ์์ ๋๋ฅผ ๊ฐ์ง ๋ก๋ด์ ๊ฒฝ์ฐ, ๋์คํ์ด์ค ์ต์ ํ๋ฅผ ํตํด ๋ถ๊ฐ ๋ชฉํ(์: ์กฐ์์ฑ ์ต๋ํ, ๊ด์ ์ค์๊ฐ ์ ์ง)๋ฅผ ์ถ๊ตฌํ ์ ์์ต๋๋ค.
์๋ณด์ฐ ํธ๋ํน์ ํตํ ์ฌ์ ์์ ๋ ์ ์ด:
XRoboToolkit์ 7-DOF ์์ ๊ฒฝ์ฐ ๋ณด์กฐ ๋ชจ์ ํธ๋์ปค๋ฅผ ์กฐ์์์ ํ๊ฟ์น์ ๋ถ์ฐฉํ์ฌ ์ถ๊ฐ์ ์ธ IK ์ ์ฝ์ผ๋ก ํ์ฉํฉ๋๋ค. ์ด๋ฅผ ํตํด:
- ์ด๋ํ์ ์ฌ์ ๋๋ฅผ ์ธ์ฒด ๊ณตํ์ ๋ฐฉ์์ผ๋ก ํด๊ฒฐ
- ์กฐ์์๊ฐ ๋ ์์ฐ์ค๋ฌ์ด ์ ๊ตฌ์ฑ์ ์ ์งํ๋ฉด์ end-effector ํธ๋ํน ์ํ
- ์ง๊ด์ ์ธ ์ ์ด ๊ฒฝํ ์ ๊ณต
3.3 ๋ฑ์คํฐ๋ฌ์ค ํธ๋ ๋ฆฌํ๊ฒํ
์ ๋ฐ ์กฐ์ ์์ ์ ์ํด XRoboToolkit์ ์ธ๊ฐ ์ ๋์์ ๋ก๋ด ํธ๋๋ก ๋ฆฌํ๊ฒํ ํ๋ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค. ์ด ๊ณผ์ ์์ OpenXR์ 26-๊ด์ ํธ๋ ๋ชจ๋ธ์ Shadow Hand์ ๊ฐ์ ๋ก๋ด ํธ๋์ ์ด๋ํ์ ๊ตฌ์กฐ๋ก ๋งคํํฉ๋๋ค.
OpenXR ํธ๋ ๋ชจ๋ธ (26 ๊ด์ ):
- ์๋ชฉ(Wrist): 1 ๊ด์
- ์๋ฐ๋ฅ(Palm): ์ฐ๊ฒฐ ๊ตฌ์กฐ
- ๊ฐ ์๊ฐ๋ฝ(Thumb, Index, Middle, Ring, Pinky): 5๊ฐ ร 5 ๊ด์ = 25 ๊ด์
๋ฆฌํ๊ฒํ ์๊ณ ๋ฆฌ์ฆ:
ํธ๋ ๋ฆฌํ๊ฒํ ์ ์ผ๋ฐ์ ์ผ๋ก ๋ค์ ๋จ๊ณ๋ฅผ ๊ฑฐ์นฉ๋๋ค:
- ์๊ฐ๋ฝ ๋ ์์น ์ถ์ถ: OpenXR์์ ๊ฐ ์๊ฐ๋ฝ ๋(Tip)์ 3D ์์น๋ฅผ ์ถ์ถ
- ์๋ชฉ ๊ธฐ์ค ์ ๊ทํ: ์๋ชฉ ์ขํ๊ณ ๊ธฐ์ค์ผ๋ก ์๋ ์์น ๊ณ์ฐ
- ์ค์ผ์ผ ์กฐ์ : ์ธ๊ฐ ์๊ณผ ๋ก๋ด ํธ๋์ ํฌ๊ธฐ ์ฐจ์ด ๋ณด์
- ์ญ์ด๋ํ ํด๊ฒฐ: ๋ก๋ด ํธ๋์ ๊ฐ ์๊ฐ๋ฝ์ ๋ํด IK๋ฅผ ํ์ด ๊ด์ ๊ฐ๋ ๊ณ์ฐ
- ๊ด์ ํ๊ณ ํด๋ฆฌํ: ๋ก๋ด ํธ๋์ ๋ฌผ๋ฆฌ์ ํ๊ณ ๋ด๋ก ๊ด์ ๊ฐ๋ ์ ํ
ํ๊ณ์ : ๋ ผ๋ฌธ์์ ๋ช ์์ ์ผ๋ก ์ธ๊ธ๋ ํ๊ณ๋ก, ํ์ฌ ํธ๋ ๋ฆฌํ๊ฒํ ํ๋ ์์ํฌ๋ ๊ฐ ๊ด์ ์ด ๊ฐ๋ณ์ ์ผ๋ก ์ ์ด ๊ฐ๋ฅํ๋ค๊ณ ๊ฐ์ ํฉ๋๋ค. ๋ฐ๋ผ์ INSPIRE Hands์ ๊ฐ์ด ๊ด์ ์์ง์์ด ๊ธฐ๊ณ์ ์ผ๋ก ๊ฒฐํฉ๋(coupled) ๋ก๋ด ํธ๋์๋ ์ ํํ ๋ฆฌํ๊ฒํ ์ด ์ด๋ ต์ต๋๋ค.
4. ์ง์ ํ๋ซํผ ๋ฐ ์์ฉ ์๋๋ฆฌ์ค
4.1 ์ง์ ๋ก๋ด ํ๋ซํผ
XRoboToolkit์ ๋ชจ๋๋ฌ ์ํคํ ์ฒ๋ ๋ค์ํ ๋ก๋ด ํ๋ซํผ๊ณผ์ ํตํฉ์ ์ฉ์ดํ๊ฒ ํฉ๋๋ค:
์ ๋ฐ ๋งค๋ํฐ๋ ์ดํฐ:
- UR5: Universal Robots์ 6-DOF ํ๋ ๋ก๋ด. ์ฐ์ ํ์ค์ผ๋ก ๋๋ฆฌ ์ฌ์ฉ๋จ.
- ARX R5: ๋์ผ ์ ๊ตฌ์ฑ์ด ๊ฐ๋ฅํ ๊ฒฝ๋ ๋งค๋ํฐ๋ ์ดํฐ.
๋ชจ๋ฐ์ผ ๋งค๋ํฐ๋ ์ดํฐ:
- Galaxea R1-Lite: ์ด๋ ๊ธฐ๋ฐ๊ณผ ๊ฒฐํฉ๋ ์กฐ์ ํ๋ซํผ์ผ๋ก, ํ์ฅ๋ ์์ ๊ณต๊ฐ ์ ๊ณต.
๋ฑ์คํฐ๋ฌ์ค ํธ๋:
- Shadow Dexterous Hand: 24-DOF์ ์ธ๊ฐ๊ณผ ์ ์ฌํ ๋ก๋ด ํธ๋๋ก, ์ ๋ฐ ์กฐ์ ์์ ์ ์ ํฉ.
์๋ฎฌ๋ ์ด์ ํ๊ฒฝ:
- MuJoCo: ๋ฌผ๋ฆฌ ๊ธฐ๋ฐ ์๋ฎฌ๋ ์ด์ ํ๊ฒฝ์ผ๋ก, ์ ์ฑ ํ์ต ๋ฐ ํ๊ฐ์ ํ์ฉ.
- MeshCat: ์๊ฐํ ๋๊ตฌ๋ก, ์ค์๊ฐ ๋ก๋ด ์ํ ๋ชจ๋ํฐ๋ง์ ์ฌ์ฉ.
4.2 ์์ฉ ์๋๋ฆฌ์ค
๋ ผ๋ฌธ์์ ์ ์๋ ์ฃผ์ ์์ฉ ์๋๋ฆฌ์ค๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค:
์๋๋ฆฌ์ค (a): ๋์ผ ์ ์กฐ์ ๋ฐ ๋ชจ๋ฐ์ผ ๋งค๋ํฐ๋ ์ด์
- XR ์ปจํธ๋กค๋ฌ๋ฅผ ์ฌ์ฉํ ์ํ ๋์ ์ ์ด
- ๋ชจ๋ฐ์ผ ๋งค๋ํฐ๋ ์ดํฐ์ ์ด๋๊ณผ ์กฐ์ ํตํฉ
์๋๋ฆฌ์ค (b): 2-DOF ํค๋ ํธ๋ํน๊ณผ ์คํ ๋ ์ค ๋น์
- ๋์ผ UR5 ๋งค๋ํฐ๋ ์ดํฐ ์ค์
- ์กฐ์์์ ๋จธ๋ฆฌ ์์ง์์ ๋ฐ๋ฅธ ์นด๋ฉ๋ผ ์์ ์กฐ์
- ๋ชฐ์ ํ ์๊ฒฉ ์กฐ์ ๊ฒฝํ
์๋๋ฆฌ์ค (c): ๋ณด์กฐ ๋ชจ์ ํธ๋์ปค๋ฅผ ํตํ ์๋ณด์ฐ ์ ์ด
- 7-DOF ์์ ์ฌ์ ์์ ๋ ์ ์ด
- MeshCat์ ํตํ ์ค์๊ฐ ์๊ฐํ
- ์ธ์ฒด ๊ณตํ์ ์ ๊ตฌ์ฑ ์ ์ง
์๋๋ฆฌ์ค (d): MuJoCo ์๋ฎฌ๋ ์ด์ ์์์ ๋ฑ์คํฐ๋ฌ์ค ํธ๋ ํธ๋ํน
- ํค๋์ ์ ํธ๋ ํธ๋ํน ๋ชจ๋ ํ์ฉ
- ์๊ฐ๋ฝ ๋ฐ ์ ์ ์ค์ฒ ์ง์ ์บก์ฒ
- Shadow Hand๋ก์ ๋ฆฌํ๊ฒํ
5. VLA ๋ชจ๋ธ ํ์ต์ ํตํ ๋ฐ์ดํฐ ํ์ง ๊ฒ์ฆ
5.1 ์คํ ์ค์
XRoboToolkit์ ๋ฐ์ดํฐ ์์ง ํ์ดํ๋ผ์ธ์ด VLA ํ์ต์ ์ ํฉํ ๊ณ ํ์ง ์์ฐ ๋ฐ์ดํฐ๋ฅผ ์์ฑํ ์ ์๋์ง ๊ฒ์ฆํ๊ธฐ ์ํด, ์ฐ๊ตฌํ์ ์ํ ์นดํซ ์ ๊ธฐ ์์ (bimanual carpet folding task)์ ๋ํ ์คํ์ ์ํํ์ต๋๋ค.
ํ๋์จ์ด ๊ตฌ์ฑ:
- ๋ก๋ด: ARX R5 ๋์ผ ์ ์์คํ
- ์๋ชฉ ์นด๋ฉ๋ผ: Intel RealSense D405i ร 2
- ์ค๋ฒํค๋ ์นด๋ฉ๋ผ: Intel RealSense D435i ร 1
์์ ์ํ์ค:
- ์นดํซ์ ์งง์ ๊ฐ์ฅ์๋ฆฌ๋ฅผ ๋ฐ๋ผ ๋ฐ์ผ๋ก ์ ๊ธฐ
- ๊ธด ๊ฐ์ฅ์๋ฆฌ๋ฅผ ๋ฐ๋ผ ๋ค์ ํ ๋ฒ ์ ๊ธฐ
- ์ค๋ฅธ์ชฝ ํ๋ก ์นดํซ์ ์์ผ๋ก ๋น๊ธฐ๊ธฐ
๋ฐ์ดํฐ ์์ง ์ธ๋ถ์ฌํญ:
- ์ด ์์ฐ ์: 100๊ฐ
- ๊ธฐ๋ก ์ฃผํ์: 50 FPS
- ํ๋ ์ ๋น ๋ฐ์ดํฐ:
- 14์ฐจ์ ๋ก๋ด ๊ด์ ์ํ (์ํ ๊ฐ 7-DOF)
- 14์ฐจ์ ์์น ์ ์ด ๋ช ๋ น
- 424ร240 RGB ์ด๋ฏธ์ง (3๊ฐ ์นด๋ฉ๋ผ)
- ํ๊ท ์์ ์๋ฃ ์๊ฐ: 20์ด
- ๊ด์ฐฐ๋ ํ๋: ์ฌํ์ง(regrasping), ์ฌ๋ฐฐ์น(repositioning) ๋ฑ
5.2 VLA ํ์ต ๋ฐ ๊ฒฐ๊ณผ
์์ง๋ ๋ฐ์ดํฐ์ ์ผ๋ก ฯโ ๋ชจ๋ธ์ ๋ํ Low-Rank Adaptation(LoRA) ํ์ธํ๋์ ์ํํ์ต๋๋ค.
ํ์ต ํ๋ผ๋ฏธํฐ:
- ํ์ต ์คํ : 80,000
- ๋ฐฐ์น ํฌ๊ธฐ: 16
- ์ก์ ํธ๋ผ์ด์ฆ: 50 ํ๋ ์
๊ฒฐ๊ณผ:
- 30๋ถ ์ฐ์ ์ด์ ๋์ 100% ์ฑ๊ณต๋ฅ ๋ฌ์ฑ
- ํ๊ท ์์ ์๋ฃ ์๊ฐ: 30์ด (ํ ๋ ์คํผ๋ ์ด์ ๋๋น ์ฝ 50% ์ฆ๊ฐ)
๊ด์ฐฐ๋ ์ ์์ ํ๋:
ํ์ต๋ ์ ์ฑ ์ ๋ค์๊ณผ ๊ฐ์ ์ ์์ ํ๋์ ๋ณด์์ต๋๋ค:
- ์์จ์ ์ฌํ์ง: ๊ทธ๋ฆฌํผ๊ฐ ์นดํซ์ ํ์คํ ์ก์ง ๋ชปํ์ ๋ ์ค์ค๋ก ๋ค์ ์ก๊ธฐ ์๋
- ์ง๋ฅ์ ์ฌ๋ฐฐ์น: ์นดํซ์ด ์ค์์์ ๋ฒ์ด๋ฌ์ ๋ ์์น ์กฐ์
์ด๋ฌํ ๊ฒฐ๊ณผ๋ XRoboToolkit์ผ๋ก ์์ง๋ ๋ฐ์ดํฐ๊ฐ ๋จ์ํ ๋ชจ๋ฐฉ์ ๋์ด ์ผ๋ฐํ ๋ฅ๋ ฅ์ ๊ฐ์ถ ์ ์ฑ ํ์ต์ ์ถฉ๋ถํ ํ์ง์ ๊ฐ์ถ๊ณ ์์์ ์์ฌํฉ๋๋ค.
6. ๊ธฐ์กด ํ ๋ ์คํผ๋ ์ด์ ์์คํ ๊ณผ์ ๋น๊ต ๋ถ์
6.1 ๋ฆฌ๋-ํ๋ก์ ์์คํ ๊ณผ์ ๋น๊ต
ALOHA / ALOHA 2:
- ์ฅ์ : ์ง์ ์ ์ธ ๊ด์ ๋งคํ์ผ๋ก ์ ๋ฐํ ์ ์ด, ํน์ด์ ๋ฌธ์ ํํผ
- ๋จ์ : ๋์ ๋น์ฉ($50,000+), ํน์ ํ๋์จ์ด์ ์ข ์, ํ์ฅ์ฑ ์ ํ
GELLO:
- ์ฅ์ : 3D ํ๋ฆฐํ ๊ฐ๋ฅ, ๋ค์ํ ๋ก๋ด ๊ตฌ์ฑ ์ง์
- ๋จ์ : Dynamixel ๋ชจํฐ ๋น์ฉ($270+/arm), ์ค์ ๋ณต์ก์ฑ
U-ARM:
- ์ฅ์ : ์ด์ ๊ฐ($50-57), ๋น ๋ฅธ ์ ์์ฑ
- ๋จ์ : ์ค๋ ฅ ๋ณด์ ๋ถ์ฌ, ์ ๋ฐ๋ ์ ํ
XRoboToolkit์ ์ฐจ๋ณ์ :
- XR ํค๋์ ๋ง์ผ๋ก ํ ๋ ์คํผ๋ ์ด์ ๊ฐ๋ฅ (์ถ๊ฐ ํ๋์จ์ด ์ต์ํ)
- ํฌ๋ก์ค ํ๋ซํผ ํธํ์ฑ
- ์คํ ๋ ์ค์ค์ฝํฝ ํผ๋๋ฐฑ์ผ๋ก ํฅ์๋ ์ํฉ ์ธ์
- ํธ๋ ํธ๋ํน์ผ๋ก ๋ฑ์คํฐ๋ฌ์ค ์กฐ์ ์ง์
6.2 VR ๊ธฐ๋ฐ ์์คํ ๊ณผ์ ๋น๊ต
Open-TeleVision:
- ์ฅ์ : ์คํ ๋ ์ค์ค์ฝํฝ ํผ๋๋ฐฑ, ์๊ฒฉ ํ ๋ ์คํผ๋ ์ด์ (๋๋ฅ ๊ฐ ๊ฐ๋ฅ)
- ๋จ์ : ํน์ ํ๋์จ์ด ์ค์ ํ์, ํตํฉ ๋ณต์ก์ฑ
AV-ALOHA (Active Vision ALOHA):
- ์ฅ์ : ๋ฅ๋์ ์๊ฐ ์์คํ , 6๊ฐ ์นด๋ฉ๋ผ ํตํฉ
- ๋จ์ : ALOHA ํ๋์จ์ด ์์กด์ฑ
XRoboToolkit์ ์ฐจ๋ณ์ :
- OpenXR ํ์ค ๊ธฐ๋ฐ์ผ๋ก ๋ค์ํ XR ํค๋์ ์ง์
- ๋ชจ๋๋ฌ ์ํคํ ์ฒ๋ก ์ฌ์ด ํ๋ซํผ ํตํฉ
- QP ๊ธฐ๋ฐ IK๋ก ์์ ์ ์ธ ๋ชจ์ ์์ฑ
6.3 ์์์ค์ผ๋ ํค ์์คํ ๊ณผ์ ๋น๊ต
ACE (Cross-platform Visual-Exoskeletons):
- ์ฅ์ : VisionPro ์์ด ํ ๋ ์คํผ๋ ์ด์ ๊ฐ๋ฅ, ์ฅ์๊ฐ ์์ ์ ์ ํฉ
- ๋จ์ : ๋ฌผ๋ฆฌ์ ์ฐฉ์ฉ ํ์, ์ค์ ์๊ฐ
AirExo, HOMIE:
- ์ฅ์ : ์ฐฉ์ฉํ ์ธํฐํ์ด์ค, ์ง๊ด์ ์ ์ด
- ๋จ์ : ํ๋์จ์ด ๋ณต์ก์ฑ, ๋น์ฉ
XRoboToolkit์ ์ฐจ๋ณ์ :
- ์๋น์์ฉ XR ํค๋์ ํ์ฉ์ผ๋ก ์ ๊ทผ์ฑ ํฅ์
- ๋ฌผ๋ฆฌ์ ์ฐฉ์ฉ ์ฅ๋น ์ต์ํ
- ์๊ฒฉ ํ ๋ ์คํผ๋ ์ด์ ์ฉ์ด
6.4 ๋น์ ๊ธฐ๋ฐ ์์คํ ๊ณผ์ ๋น๊ต
DexCap, UMI:
- ์ฅ์ : ์ฌ์ฉ ํธ์์ฑ, ์ ๋น์ฉ
- ๋จ์ : ํน์ด์ ๋ฌธ์ , ์ ๋ฐ๋ ๋ถ์กฑ, ํ์ฒ๋ฆฌ ํ์
ARCap:
- ์ฅ์ : AR ์ธํฐํ์ด์ค, ์ถฉ๋ ํํผ
- ๋จ์ : ํน์ ์ค์ ์๊ตฌ
XRoboToolkit์ ์ฐจ๋ณ์ :
- QP ๊ธฐ๋ฐ IK๋ก ํน์ด์ ๋ฌธ์ ์ํ
- ์ค์๊ฐ ์คํ ๋ ์ค ํผ๋๋ฐฑ์ผ๋ก ์ ๋ฐ ์์ ์ง์
- ํ์คํ๋ ๋ฐ์ดํฐ ํฌ๋งท
7. ๊ธฐ์ ์ ๊ณ ์ฐฐ ๋ฐ ์ฌ์ธต ๋ถ์
7.1 OpenXR ํ์ค ์ฑํ์ ์์
OpenXR์ Khronos Group์์ ๊ด๋ฆฌํ๋ ๊ฐ๋ฐฉํ XR ํ์ค์ผ๋ก, XR ์ ํ๋ฆฌ์ผ์ด์ ๊ณผ ๋ฐํ์ ๊ฐ์ ์ธํฐํ์ด์ค๋ฅผ ์ ์ํฉ๋๋ค. XRoboToolkit์ด OpenXR์ ์ฑํํ ๊ฒ์ ๋ค์๊ณผ ๊ฐ์ ์ ๋ต์ ์๋ฏธ๋ฅผ ๊ฐ์ง๋๋ค:
ํฌ๋ก์ค ํ๋ซํผ ํธํ์ฑ:
- ๋จ์ผ ์ฝ๋๋ฒ ์ด์ค๋ก PICO, Meta Quest, Valve Index ๋ฑ ๋ค์ํ ํค๋์ ์ง์ ๊ฐ๋ฅ
- ํฅํ ์ถ์๋ ์๋ก์ด XR ์ฅ์น์๋ ์ต์ํ์ ์์ ์ผ๋ก ๋์ ๊ฐ๋ฅ
ํ์คํ๋ ๋ฐ์ดํฐ ํฌ๋งท:
- ์ผ๊ด๋ ์ขํ๊ณ ๋ฐ ๋ฐ์ดํฐ ๊ตฌ์กฐ
- ํ๋ซํผ ๊ฐ ๋ฐ์ดํฐ ํธํ์ฑ
- ํตํฉ ์์ ๊ฐ์ํ
์์ฝ์์คํ ์ ๊ทผ:
- ๊ธฐ์กด OpenXR ํ์ฅ ๊ธฐ๋ฅ ํ์ฉ ๊ฐ๋ฅ
- ์ปค๋ฎค๋ํฐ ์ง์ ๋ฐ ์ง์์ ์ธ ๊ฐ์
ํ๊ณ:
- ํ์ฌ ์ ์ ํธ๋ํน์ PICO์ 24-๊ด์ ๋ชจ๋ธ์ ์์กด
- OpenXR์ ํ์คํ๋ ์ ์ ์ ์๊ฐ ๋ถ์ฌํ์ฌ ๋ค๋ฅธ XR ๋ธ๋๋์์ ํธํ์ฑ ๋ฌธ์ ๊ฐ๋ฅ์ฑ
7.2 QP ๊ธฐ๋ฐ IK์ ์ด๋ก ์ ๋ฐฐ๊ฒฝ
Quadratic Programming์ IK์ ์ ์ฉํ๋ ๊ฒ์ ๋ก๋ด ์ ์ด ๋ถ์ผ์์ ํ๋ฐํ ์ฐ๊ตฌ๋์ด ์จ ์ฃผ์ ์ ๋๋ค. ์ด ์ ๊ทผ๋ฒ์ ์ด๋ก ์ ๊ธฐ๋ฐ์ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
์ผ๋ฐ์ ์ธ QP ๋ฌธ์ ์ ์ํ:
minimize (1/2)x'Hx + f'x
subject to Ax โค b
Aeqยทx = beq
IK์์ ์ ์ฉ:
๊ธฐ๋ณธ IK ๋ชฉํ(end-effector ์ถ์ข )์ ๋ถ๊ฐ ๋ชฉํ(๊ด์ ํ๊ณ, ํน์ด์ ํํผ ๋ฑ)๋ฅผ ๊ฒฐํฉ:
H = J'J + ฮปI
f = -J'ฮx + ฮป(q - q_ref)
์ฌ๊ธฐ์ q_ref๋ ์ ํธํ๋ ๊ด์ ๊ตฌ์ฑ(์: ๊ด์ ์ค์๊ฐ)
ํน์ด์ ๊ทผ์ฒ์ ํ๋:
ํน์ด์ ์์ Jacobian J์ ํ๋ ฌ์์ด 0์ ๊ฐ๊น์์ง๋ฉด:
- JโJ์ ์กฐ๊ฑด์๊ฐ ๊ธ๊ฒฉํ ์ฆ๊ฐ
- ์์ Jacobian ๊ธฐ๋ฐ ๋ฐฉ๋ฒ์ ||ฮq|| โ โ
QP์ ์ ๊ทํ ํญ ฮปI๊ฐ ์ด๋ฅผ ๋ฐฉ์ง:
- ํฐ ||ฮq||์ ํ๋ํฐ๋ฅผ ๋ถ๊ณผ
- ํน์ด์ ๊ทผ์ฒ์์ ์ถ์ข ์ ํ๋๋ฅผ ํฌ์ํ๊ณ ์์ ์ฑ ํ๋ณด
- ฮป ์กฐ์ ๋ก ์ ํ๋-์์ ์ฑ ํธ๋ ์ด๋์คํ ์ ์ด
7.3 ํธ๋ ๋ฆฌํ๊ฒํ ์ ๊ธฐ์ ์ ๊ณผ์
์ธ๊ฐ ์์์ ๋ก๋ด ํธ๋๋ก์ ๋ฆฌํ๊ฒํ ์ ๋ค์๊ณผ ๊ฐ์ ๊ธฐ์ ์ ๊ณผ์ ๋ฅผ ์๋ฐํฉ๋๋ค:
์ด๋ํ์ ์ฐจ์ด:
- ์ธ๊ฐ ์: 27 ๋ผ, 29 ๊ด์ , ๋ณต์กํ ๊ทผ์ก-๊ฑด ์์คํ
- ๋ก๋ด ํธ๋: ๋ค์ํ ๊ตฌ์กฐ (Shadow Hand 24-DOF, Allegro Hand 16-DOF ๋ฑ)
- ๊ด์ ๋ฐฐ์น, ์์ง์ ๋ฒ์, ์์ ๋๊ฐ ์์ด
์ค์ผ์ผ ๋ถ์ผ์น:
- ์ธ๊ฐ ์๊ณผ ๋ก๋ด ํธ๋์ ํฌ๊ธฐ ์ฐจ์ด
- ๋จ์ ์ค์ผ์ผ๋ง์ ๋ฌผ๋ฆฌ์ ์ผ๋ก ๋ถ๊ฐ๋ฅํ ํฌ์ฆ ์์ฑ ๊ฐ๋ฅ
์ปคํ๋ง๋ ๊ด์ :
- ์ผ๋ถ ๋ก๋ด ํธ๋(INSPIRE Hands ๋ฑ)๋ ๊ธฐ๊ณ์ ์ผ๋ก ๊ฒฐํฉ๋ ๊ด์ ๋ณด์
- ๊ฐ ๊ด์ ๋ ๋ฆฝ ์ ์ด ๊ฐ์ ์ ๋ฆฌํ๊ฒํ ์๊ณ ๋ฆฌ์ฆ ์ ์ฉ ๋ถ๊ฐ
์ค์๊ฐ ์ ์ฝ:
- ํ ๋ ์คํผ๋ ์ด์ ์ ์ค์๊ฐ ์๊ตฌ์ฌํญ ์ถฉ์กฑ ํ์
- ๋ณต์กํ ์ต์ ํ๋ ์ง์ฐ ์๊ฐ ์ฆ๊ฐ
XRoboToolkit์ ์ ๊ทผ๋ฒ:
- OpenXR 26-๊ด์ ๋ชจ๋ธ์ ๊ธฐ๋ฐ์ผ๋ก ํ ํ์คํ๋ ์ ๋ ฅ
- ํ๊ฒ ๋ก๋ด ํธ๋์ ๋ง์ถคํ๋ ๋ฆฌํ๊ฒํ ๋ชจ๋
- ํ์ฌ๋ ๋ ๋ฆฝ ๊ด์ ์ ์ด ๋ก๋ด์ ์ต์ ํ
7.4 ๋ฐ์ดํฐ ํ์ง๊ณผ VLA ์ฑ๋ฅ์ ๊ด๊ณ
๋ ผ๋ฌธ์ ์คํ ๊ฒฐ๊ณผ๋ XRoboToolkit์ผ๋ก ์์ง๋ ๋ฐ์ดํฐ๊ฐ VLA ํ์ต์ ํจ๊ณผ์ ์์ ๋ณด์ฌ์ค๋๋ค. ์ด ๊ฒฐ๊ณผ๋ฅผ ๋ฐ์ดํฐ ํ์ง ๊ด์ ์์ ๋ถ์ํด ๋ณด๊ฒ ์ต๋๋ค.
๋์ ํ๋ ์ ๋ ์ดํธ (50 FPS):
- ์ฐ์์ ์ด๊ณ ๋ถ๋๋ฌ์ด ๊ถค์ ์บก์ฒ
- ๊ธ๊ฒฉํ ์์ง์ ๋ณํ๋ ์ ํํ ๊ธฐ๋ก
- Flow Matching ๊ธฐ๋ฐ VLA(ฯโ)์ ์ฐ์ ์ก์ ์์ฑ์ ์ ํฉ
๋ค์ค ์นด๋ฉ๋ผ ๊ตฌ์ฑ:
- ์๋ชฉ ์นด๋ฉ๋ผ 2๊ฐ + ์ค๋ฒํค๋ ์นด๋ฉ๋ผ 1๊ฐ
- ๋ค์ํ ์์ ์ ์๊ฐ ์ ๋ณด ์ ๊ณต
- ๊ฐ๋ฆผ(occlusion) ๋ฌธ์ ์ํ
๊ด์ ์ํ + ์ ์ด ๋ช ๋ น ๋์ ๊ธฐ๋ก:
- 14์ฐจ์ ๊ด์ ์ํ: ์ค์ ๋ก๋ด ์ํ
- 14์ฐจ์ ์์น ์ ์ด ๋ช ๋ น: ์๋๋ ํ๋
- ๋ ์ ๋ณด์ ์ฐจ์ด์์ ๋ก๋ด ์ญํ ํ์ต ๊ฐ๋ฅ
์์ฐ์ค๋ฌ์ด ์ธ๊ฐ ํ๋ ์บก์ฒ:
- ์ฌํ์ง, ์ฌ๋ฐฐ์น ๋ฑ ์ ์์ ํ๋ ํฌํจ
- ๋ค์ํ ์ ๋ต์ ํ์ต ๋ฐ์ดํฐ์ ํฌํจ
- ์ ์ฑ ์ ์ผ๋ฐํ ๋ฅ๋ ฅ ํฅ์
100% ์ฑ๊ณต๋ฅ ์ ์๋ฏธ:
- 100๊ฐ ์์ฐ๋ง์ผ๋ก๋ robustํ ์ ์ฑ ํ์ต ๊ฐ๋ฅ
- ๋ฐ์ดํฐ ํจ์จ์ฑ ๋์
- ์ ์์ ํ๋ ์๋ฐ์ ๋ฐํ = ์ง์ ํ ์ผ๋ฐํ
8. ํ๊ณ์ ๋ฐ ํฅํ ์ฐ๊ตฌ ๋ฐฉํฅ
8.1 ํ์ฌ ์์คํ ์ ํ๊ณ
๋ ผ๋ฌธ์์ ๋ช ์์ ์ผ๋ก ์ธ์ ํ ํ๊ณ์ ๋ค์ ๋ถ์ํฉ๋๋ค:
1. ์ ์ ํธ๋ํน์ ํ๋ซํผ ์์กด์ฑ
ํ์ฌ XRoboToolkit์ ์ ์ ํธ๋ํน์ PICO์ 24-๊ด์ ๋ชจ๋ธ์ ์์กดํฉ๋๋ค. OpenXR์ ํ์คํ๋ ์ ์ ํธ๋ํน ์ ์๊ฐ ๋ถ์ฌํ๊ธฐ ๋๋ฌธ์, ๋ค๋ฅธ XR ๋ธ๋๋(Meta, Valve ๋ฑ)์ ํค๋์ ๊ณผ ํธํ์ฑ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค.
์ํฅ:
- ํฌ๋ก์ค ํ๋ซํผ ์ ์ ํ ๋ ์คํผ๋ ์ด์ ์ ํ
- ํด๋จธ๋ ธ์ด๋ ๋ก๋ด ์ ์ด์ ์ด๋ ค์
์ ์ฌ์ ํด๊ฒฐ์ฑ :
- ํตํฉ ์ ์ ์ค์ผ๋ ํค ๋ชจ๋ธ ์ ์
- ๋ค์ํ ํ๋ซํผ ๊ฐ ๋งคํ ๋ ์ด์ด ๊ฐ๋ฐ
- OpenXR ํ์ค์ ์ ์ ํ์ฅ ์ ์
2. ํด๋จธ๋ ธ์ด๋ ์ ์ ํ ๋ ์คํผ๋ ์ด์ ๋ฏธ๊ฒ์ฆ
์ ์ ํธ๋ํน ๋ฐ์ดํฐ๋ ์ ๊ณต๋์ง๋ง, ์ค์ ํด๋จธ๋ ธ์ด๋ ๋ก๋ด์ผ๋ก์ ๋ฆฌํ๊ฒํ ์ ํตํ ์ ์ ํ ๋ ์คํผ๋ ์ด์ ์ ์์ง ๊ฒ์ฆ๋์ง ์์์ต๋๋ค.
์ํฅ:
- ํด๋จธ๋ ธ์ด๋ ๋ก๋ด ์์ฉ ์ ํ
- TWIST, SONIC ๊ฐ์ ์ต์ ํด๋จธ๋ ธ์ด๋ ํ ๋ ์คํผ๋ ์ด์ ์ฐ๊ตฌ์์ ํตํฉ ๋ฏธํ์ธ
์ ์ฌ์ ํด๊ฒฐ์ฑ :
- Unitree H1, Fourier Intelligence GR-1 ๋ฑ๊ณผ์ ํตํฉ ๊ฒ์ฆ
- ์ ์ ๋ฆฌํ๊ฒํ ์๊ณ ๋ฆฌ์ฆ ๊ฐ๋ฐ ๋ฐ ๊ณต๊ฐ
3. ์ปคํ๋ง๋ ๊ด์ ์ ๊ฐ์ง ๋ก๋ด ํธ๋ ์ง์ ๋ถ๊ฐ
ํ์ฌ ํธ๋ ๋ฆฌํ๊ฒํ ํ๋ ์์ํฌ๋ ๊ฐ ๊ด์ ์ด ๋ ๋ฆฝ์ ์ผ๋ก ์ ์ด ๊ฐ๋ฅํ๋ค๊ณ ๊ฐ์ ํฉ๋๋ค. INSPIRE Hands์ ๊ฐ์ด ๊ธฐ๊ณ์ ์ผ๋ก ๊ด์ ์ด ๊ฒฐํฉ๋ ๋ก๋ด ํธ๋์๋ ์ ํํ ๋ฆฌํ๊ฒํ ์ด ์ด๋ ต์ต๋๋ค.
์ํฅ:
- ์ง์ ๊ฐ๋ฅํ ๋ก๋ด ํธ๋ ์ข ๋ฅ ์ ํ
- ์ ๋น์ฉ ๋ก๋ด ํธ๋(์ฃผ๋ก ์ปคํ๋ง๋ ์ค๊ณ) ํ์ฉ ์ด๋ ค์
์ ์ฌ์ ํด๊ฒฐ์ฑ :
- ์ปคํ๋ง ์ ์ฝ์ ๊ณ ๋ คํ ์ต์ ํ ๊ธฐ๋ฐ ๋ฆฌํ๊ฒํ
- ๋ก๋ด ํธ๋๋ณ ๋ง์ถค ๋ฆฌํ๊ฒํ ๋ชจ๋
8.2 ์ถ๊ฐ์ ์ธ ํ๊ณ ๋ฐ ๊ฐ์ ๋ฐฉํฅ
๋ ผ๋ฌธ์์ ๋ช ์์ ์ผ๋ก ์ธ๊ธํ์ง ์์์ง๋ง ๊ณ ๋ คํด์ผ ํ ์ถ๊ฐ์ ์ธ ํ๊ณ์ ๋ค:
1. ๋คํธ์ํฌ ์ง์ฐ ๋ฐ ์์ ์ฑ
์๊ฒฉ ํ ๋ ์คํผ๋ ์ด์ ์๋๋ฆฌ์ค(์: Open-TeleVision์ ๋๋ฅ ๊ฐ ์ ์ด)์ ๋ํ ์ฑ๋ฅ ํ๊ฐ๊ฐ ๋ถ์กฑํฉ๋๋ค.
๊ฐ์ ๋ฐฉํฅ:
- ๋คํธ์ํฌ ์ง์ฐ ๋ณด์ ์๊ณ ๋ฆฌ์ฆ ๋์
- ์์ธก ์ ์ด(Predictive Control) ํตํฉ
- ์ง์ฐ ์ํฉ์์์ ์์ ๋์ ์ ์
2. ํ ํฑ ํผ๋๋ฐฑ ๋ถ์ฌ
ํ์ฌ ์์คํ ์ ์๊ฐ ํผ๋๋ฐฑ์๋ง ์์กดํ๋ฉฐ, ์ด๊ฐ/ํ ํผ๋๋ฐฑ์ ์ ๊ณตํ์ง ์์ต๋๋ค.
๊ฐ์ ๋ฐฉํฅ:
- XR ์ปจํธ๋กค๋ฌ์ ํ ํฑ ๊ธฐ๋ฅ ํ์ฉ
- ํ ์ผ์ ๋ฐ์ดํฐ์ ํ ํฑ ๋ณํ
- ๊ฐ์ ํ ํฑ ๋ ๋๋ง
3. ํ์ต ๊ณก์ ๋ฐ ์ฌ์ฉ์ ์ฐ๊ตฌ
์กฐ์์์ ์๋ จ๋์ ๋ฐ๋ฅธ ๋ฐ์ดํฐ ํ์ง ๋ณํ์ ๋ํ ์ฒด๊ณ์ ๋ถ์์ด ๋ถ์กฑํฉ๋๋ค.
๊ฐ์ ๋ฐฉํฅ:
- ์ด๋ณด์/์๋ จ์ ๊ฐ ๋น๊ต ์ฐ๊ตฌ
- ์ธ์ฒด๊ณตํ์ ์ต์ ํ
- ํ๋ จ ํ๋กํ ์ฝ ๊ฐ๋ฐ
4. ๋๊ท๋ชจ ๋ฐ์ดํฐ ์์ง ์ธํ๋ผ
100๊ฐ ์์ฐ์ผ๋ก ๊ฒ์ฆํ์ง๋ง, VLA์ ์ง์ ํ ์ ์ฌ๋ ฅ์ ์ํด์๋ ์์ฒ~์๋ง ๊ฐ ์์ฐ์ด ํ์ํฉ๋๋ค.
๊ฐ์ ๋ฐฉํฅ:
- ๋ถ์ฐ ๋ฐ์ดํฐ ์์ง ์์คํ
- ํด๋ผ์ฐ๋ ๊ธฐ๋ฐ ๋ฐ์ดํฐ ๊ด๋ฆฌ
- ํ์ง ์๋ ๊ฒ์ฆ ์์คํ
8.3 ํฅํ ์ฐ๊ตฌ ๋ฐฉํฅ ์ ์
XRoboToolkit์ ๋ฐ์ ๊ณผ ๋ก๋ด ํ์ต ์ํ๊ณ ํ์ฅ์ ์ํ ํฅํ ์ฐ๊ตฌ ๋ฐฉํฅ์ ์ ์ํฉ๋๋ค:
1. ํด๋จธ๋ ธ์ด๋ ๋ก๋ด ํตํฉ
์ต๊ทผ ํด๋จธ๋ ธ์ด๋ ๋ก๋ด(Unitree H1, Tesla Optimus, Figure ๋ฑ)์ ๊ธ๊ฒฉํ ๋ฐ์ ์ ๋ง์ถฐ, XRoboToolkit์ ์ ์ ํ ๋ ์คํผ๋ ์ด์ ๊ธฐ๋ฅ์ ํด๋จธ๋ ธ์ด๋ ํ๋ซํผ์ผ๋ก ํ์ฅํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค.
2. ๋ฉํฐ๋ชจ๋ฌ ํผ๋๋ฐฑ ์์คํ
์๊ฐ ์ธ์ ์ฒญ๊ฐ(๋ก๋ด ์๋ฆฌ), ์ด๊ฐ(ํ/์ ์ด ์ ๋ณด), ๊ณ ์ ์์ฉ๊ฐ๊ฐ(proprioception) ํผ๋๋ฐฑ์ ํตํฉํ์ฌ ๋์ฑ ๋ชฐ์ ๊ฐ ์๊ณ ์ ๋ฐํ ํ ๋ ์คํผ๋ ์ด์ ๊ฒฝํ์ ์ ๊ณตํ ์ ์์ต๋๋ค.
3. AI ์ด์์คํดํธ ํตํฉ
ํ ๋ ์คํผ๋ ์ด์ ์ค AI ์ด์์คํดํธ๊ฐ ์กฐ์์๋ฅผ ๋ณด์กฐํ๋ Shared Autonomy ์ ๊ทผ๋ฒ์ ํตํฉํ๋ฉด:
- ์กฐ์์ ํผ๋ก ๊ฐ์
- ๋ฐ์ดํฐ ์์ง ํจ์จ ํฅ์
- ์ผ๊ด๋ ๋ฐ์ดํฐ ํ์ง ์ ์ง
4. ํ์คํ๋ ๋ฐ์ดํฐ ํฌ๋งท ๋ฐ ๋ฒค์น๋งํฌ
๋ก๋ด ํ์ต ์ปค๋ฎค๋ํฐ์ Open X-Embodiment, DROID ๊ฐ์ ๋ ธ๋ ฅ๊ณผ ์ฐ๊ณํ์ฌ:
- ํ์ค ๋ฐ์ดํฐ ํฌ๋งท ์ ์
- ๋ฒค์น๋งํฌ ํ์คํฌ ์ค์
- ๋ฐ์ดํฐ ๊ณต์ ์ธํ๋ผ ๊ตฌ์ถ
5. ์๋ฎฌ๋ ์ด์ -์ค์ ํตํฉ
XRoboToolkit์ MuJoCo ์ง์์ ํ์ฅํ์ฌ:
- ์๋ฎฌ๋ ์ด์ ์์์ ์ฌ์ ํ๋ จ
- Sim-to-Real ์ ์ด ํ์ดํ๋ผ์ธ
- ์์ ํ ์ ์ฑ ๊ฒ์ฆ
9. ์ค๋ฌด์ ๊ณ ๋ ค์ฌํญ
9.1 ์์คํ ๊ตฌ์ถ ๊ฐ์ด๋
XRoboToolkit์ ์ค์ ๋ก ๊ตฌ์ถํ๊ณ ์ ํ๋ ์ฐ๊ตฌ์/๊ฐ๋ฐ์๋ฅผ ์ํ ์ค๋ฌด์ ๊ฐ์ด๋์ ๋๋ค.
์ต์ ์๊ตฌ์ฌํญ:
XR ์ธก:
- PICO 4 Ultra ํค๋์ (User OS 5.12 ์ด์)
- ์ํฐํ๋ผ์ด์ฆ ๋ฒ์ ํน๋ณ ๊ถํ (VST ์นด๋ฉ๋ผ ์ ๊ทผ์ฉ)
PC ์ธก:
- Ubuntu 22.04 (Linux x86)
- ์ถฉ๋ถํ USB 3.0 ํฌํธ (๋ก๋ด ์ฐ๊ฒฐ์ฉ)
- ๋คํธ์ํฌ ์ฐ๊ฒฐ (ํค๋์ ๊ณผ ํต์ )
์ค์น ๋จ๊ณ:
PC ์๋น์ค ์ค์น:
ํค๋์ ์ฑ ์ค์น:
Python ํ ๋ ์คํผ๋ ์ด์ ์ํ ์คํ:
ํธ๋ฌ๋ธ์ํ ํ:
- ํค๋์ ์ฐ๊ฒฐ ์คํจ: ๊ฐ์ ๋คํธ์ํฌ ํ์ธ, ๋ฐฉํ๋ฒฝ ์ค์ ๊ฒํ
- ์ง์ฐ ์๊ฐ ์ฆ๊ฐ: ๋คํธ์ํฌ ๋์ญํญ ํ์ธ, ๋ค๋ฅธ ํธ๋ํฝ ์ต์ํ
- IK ์คํจ: ๋ก๋ด ๋ชจ๋ธ ํ๋ผ๋ฏธํฐ ํ์ธ, ์ด๊ธฐ ์์ธ ์กฐ์
9.2 ๋ฐ์ดํฐ ์์ง ๋ฒ ์คํธ ํ๋ํฐ์ค
๊ณ ํ์ง ์์ฐ ๋ฐ์ดํฐ ์์ง์ ์ํ ๊ถ์ฅ ์ฌํญ:
ํ๊ฒฝ ์ค์ :
- ์ผ๊ด๋ ์กฐ๋ช ์กฐ๊ฑด ์ ์ง
- ๋ฐฐ๊ฒฝ ํด๋ฌํฐ ์ต์ํ
- ๋ช ํํ ์์ ๊ณต๊ฐ ์ ์
์กฐ์์ ํ๋ จ:
- ์์คํ ์์ง ์๊ฐ ํ๋ณด (์ต์ 30๋ถ ๊ถ์ฅ)
- ์ฌ์ด ์์ ๋ถํฐ ์์ํ์ฌ ์ ์ง์ ๋์ด๋ ์ฆ๊ฐ
- ์ ๊ธฐ์ ํด์์ผ๋ก ํผ๋ก ๋ฐฉ์ง
๋ฐ์ดํฐ ๋ค์์ฑ:
- ๋ค์ํ ์ด๊ธฐ ์กฐ๊ฑด์์ ์์ฐ ์์ง
- ์๋์ ์ผ๋ก ๋ค์ํ ์ ๋ต ์ฌ์ฉ
- ์คํจ ๋ณต๊ตฌ ํ๋ ํฌํจ
ํ์ง ๊ฒ์ฆ:
- ์์ง ์ฆ์ ๋ฐ์ดํฐ ํ์ธ
- ๋ถ๋ ์์ฐ ์ ๊ฑฐ/์ฌ์์ง
- ํต๊ณ์ ๋ถํฌ ํ์ธ
9.3 VLA ํ์ต ํ์ดํ๋ผ์ธ ํตํฉ
XRoboToolkit ๋ฐ์ดํฐ๋ฅผ VLA ํ์ต์ ํ์ฉํ๊ธฐ ์ํ ๊ฐ์ด๋:
๋ฐ์ดํฐ ํฌ๋งท ๋ณํ:
- HDF5 ๋๋ TFRecord ํ์์ผ๋ก ๋ณํ
- LeRobot, Open X-Embodiment ํฌ๋งท ํธํ์ฑ ํ๋ณด
์ ์ฒ๋ฆฌ:
- ์ด๋ฏธ์ง ํฌ๊ธฐ ์กฐ์ (VLA ๋ชจ๋ธ ์๊ตฌ์ฌํญ์ ๋ง์ถค)
- ์ ๊ทํ ์ ์ฉ
- ๋ฐ์ดํฐ ์ฆ๊ฐ (์ ํ์ )
ํ์ต ์ค์ :
- ฯโ LoRA ํ์ธํ๋: batch_size=16, steps=80,000
- OpenVLA: ํ์ค ์ค์ ํ์ฉ
- RT-X: ๋ฐ์ดํฐ ํผํฉ ์ ๋ต ๊ณ ๋ ค
10. ๊ด๋ จ ์ฐ๊ตฌ ๋ฐ ์ํ๊ณ
10.1 ํ ๋ ์คํผ๋ ์ด์ ํ๋ ์์ํฌ ๋น๊ตํ
| ์์คํ | ์ ์ด ๋ฐฉ์ | XR ์ง์ | ๋น์ฉ | ํ๋ซํผ ํธํ์ฑ | ํน์ง |
|---|---|---|---|---|---|
| XRoboToolkit | End-effector + QP IK | โ (OpenXR) | ์ค | ๋์ | ํฌ๋ก์ค ํ๋ซํผ, ์คํ ๋ ์ค ๋น์ |
| ALOHA | Joint Mapping | โ | ๊ณ ($50k+) | ๋ฎ์ | ์ ๋ฐ ์ ์ด, ๋์ผ ์ |
| GELLO | Joint Mapping | โ | ์ค ($270+/arm) | ์ค | 3D ํ๋ฆฐํ , ๋ค์ํ ๊ตฌ์ฑ |
| Open-TeleVision | End-effector + IK | โ (VisionPro) | ๊ณ | ์ค | ๋ชฐ์ ํ, ์๊ฒฉ ์ ์ด |
| ACE | End-effector + IK | โ (VisionPro) | ๊ณ | ์ค | ์์์ค์ผ๋ ํค, ํ ํฑ |
| U-ARM | Joint Mapping | โ | ์ ($50-57) | ๋์ | ์ด์ ๊ฐ, ๋น ๋ฅธ ์ ์ |
10.2 VLA ๋ชจ๋ธ ์ํ๊ณ
XRoboToolkit์ผ๋ก ์์ง๋ ๋ฐ์ดํฐ๋ ๋ค์ VLA ๋ชจ๋ธ๋ค๊ณผ ํธํ๋ ์ ์์ต๋๋ค:
ฯโ (Physical Intelligence):
- Flow Matching ๊ธฐ๋ฐ ์ฐ์ ์ก์ ์์ฑ
- 50Hz ์ ์ด ์ฃผํ์
- 3B ํ๋ผ๋ฏธํฐ VLM ๋ฐฑ๋ณธ
OpenVLA:
- ์คํ์์ค VLA
- Llama 2 ๊ธฐ๋ฐ
- ๋ค์ํ ๋ก๋ด ๋ฐ์ดํฐ ํ์ต
RT-2 (Google DeepMind):
- PaLM-E ๋ฐฑ๋ณธ
- ์ธ์ด-๋น์ -์ก์ ํตํฉ
- ์ ๋ก์ท ์ผ๋ฐํ
Octo:
- ํธ๋์คํฌ๋จธ ๊ธฐ๋ฐ
- ๋ค์ค ๋ก๋ด ๋ฐ์ดํฐ ํ์ต
- ํจ์จ์ ํ์ธํ๋
10.3 ๋ฐ์ดํฐ ํ์คํ ๋ ธ๋ ฅ
XRoboToolkit์ ๋ฐ์ดํฐ๋ ๋ค์ ํ์ค๊ณผ์ ํธํ์ ๊ณ ๋ คํด์ผ ํฉ๋๋ค:
Open X-Embodiment:
- Google DeepMind ์ฃผ๋
- ๋ค์ํ ๋ก๋ด ๋ฐ์ดํฐ ํตํฉ
- ํ์ค ๋ฐ์ดํฐ ํฌ๋งท ์ ์
DROID:
- ๋ถ์ฐ ๋ก๋ด ๋ฐ์ดํฐ ์์ง
- ํ์คํ๋ ํ์คํฌ ์ ์
- ํ์ง ๊ฒ์ฆ ํ๋กํ ์ฝ
LeRobot (Hugging Face):
- ์คํ์์ค ๋ก๋ด ํ์ต ํ๋ ์์ํฌ
- ํ์ค ๋ฐ์ดํฐ ํฌ๋งท
- ์ปค๋ฎค๋ํฐ ๊ธฐ๋ฐ ๋ฐ์ดํฐ ๊ณต์
11. ๊ฒฐ๋ก
11.1 ์ข ํฉ ํ๊ฐ
XRoboToolkit์ VLA ์๋์ ๋๊ท๋ชจ ๋ก๋ด ์์ฐ ๋ฐ์ดํฐ ์์ง์ด๋ผ๋ ์์์ ์ ํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํ ์ฒด๊ณ์ ์ธ ์ ๊ทผ๋ฒ์ ์ ์ํฉ๋๋ค. OpenXR ํ์ค ์ฑํ์ ํตํ ํฌ๋ก์ค ํ๋ซํผ ํธํ์ฑ, QP ๊ธฐ๋ฐ IK๋ฅผ ํตํ ์์ ์ ์ธ ๋ก๋ด ์ ์ด, ๊ทธ๋ฆฌ๊ณ ๋ชจ๋๋ฌ ์ํคํ ์ฒ๋ฅผ ํตํ ํ์ฅ์ฑ์ ์ด ํ๋ ์์ํฌ์ ํต์ฌ ๊ฐ์ ์ ๋๋ค.
ํนํ ฯโ ๋ชจ๋ธ ํ์ธํ๋ ์คํ์์ 100๊ฐ ์์ฐ๋ง์ผ๋ก 100% ์ฑ๊ณต๋ฅ ์ ๋ฌ์ฑํ๊ณ , ํ์ต๋ ์ ์ฑ ์ด ์ ์์ ํ๋์ ์๋ฐ์ ์ผ๋ก ๋ฐํํ ๊ฒ์ XRoboToolkit์ ๋ฐ์ดํฐ ํ์ง์ด VLA ํ์ต์ ์ถฉ๋ถํจ์ ์ ์ฆํฉ๋๋ค.
11.2 ๊ฐ์ ์์ฝ
- OpenXR ๊ธฐ๋ฐ ํ์คํ: ๋ค์ํ XR ํค๋์ ์ง์์ผ๋ก ์ ๊ทผ์ฑ ํฅ์
- ์ ์ง์ฐ ์คํ ๋ ์ค์ค์ฝํฝ ๋น์ : ๋ชฐ์ ๊ฐ ์๊ณ ์ง๊ด์ ์ธ ํ ๋ ์คํผ๋ ์ด์ ๊ฒฝํ
- QP ๊ธฐ๋ฐ IK: ํน์ด์ ๊ทผ์ฒ์์๋ ์์ ์ ์ธ ๋ก๋ด ๋ชจ์ ์์ฑ
- ๋ค์ํ ํธ๋ํน ๋ชจ๋ฌ๋ฆฌํฐ: ์ปจํธ๋กค๋ฌ, ํธ๋, ์ ์ ํธ๋ํน ํตํฉ
- ๋ชจ๋๋ฌ ์ํคํ ์ฒ: ๋ค์ํ ๋ก๋ด ํ๋ซํผ๊ณผ ์๋ฎฌ๋ ์ดํฐ ์ง์
- ์คํ์์ค ๊ณต๊ฐ: ์ปค๋ฎค๋ํฐ ์ฐธ์ฌ ๋ฐ ๋ฐ์ ๊ฐ๋ฅ
11.3 ์ฝ์ ๋ฐ ๊ฐ์ ํ์ ์์ญ
- ์ ์ ํธ๋ํน์ ํ๋ซํผ ์์กด์ฑ: OpenXR ํ์คํ ๋ถ์ฌ
- ํด๋จธ๋ ธ์ด๋ ๊ฒ์ฆ ๋ถ์กฑ: ์ ์ ํ ๋ ์คํผ๋ ์ด์ ๋ฏธ๊ฒ์ฆ
- ์ปคํ๋ง ๊ด์ ๋ฏธ์ง์: ํน์ ๋ก๋ด ํธ๋ ํธํ์ฑ ์ ํ
- ํ ํฑ ํผ๋๋ฐฑ ๋ถ์ฌ: ์ด๊ฐ ์ ๋ณด ํ์ฉ ๋ถ๊ฐ
- ๋๊ท๋ชจ ๋ฐ์ดํฐ ์์ง ์ธํ๋ผ ๋ฏธ๋น: ๋ถ์ฐ ์์ง ์์คํ ํ์
11.4 ํฅํ ์ ๋ง
XRoboToolkit์ ๋ก๋ด ํ ๋ ์คํผ๋ ์ด์ ๊ณผ VLA ํ์ต์ ๊ต์ฐจ์ ์์ ์ค์ํ ์์น๋ฅผ ์ฐจ์งํฉ๋๋ค. ํด๋จธ๋ ธ์ด๋ ๋ก๋ด์ ๊ธ๊ฒฉํ ๋ฐ์ , ๊ธฐ๋ฐ ๋ชจ๋ธ์ ์ฑ์, ๊ทธ๋ฆฌ๊ณ ๋๊ท๋ชจ ๋ฐ์ดํฐ์ ๋ํ ์์ ์ฆ๊ฐ๋ ์ด๋ฌํ ํ๋ ์์ํฌ์ ์ค์์ฑ์ ๋์ฑ ๋ถ๊ฐ์ํฌ ๊ฒ์ ๋๋ค.
PICO(ByteDance)๊ฐ ์ฃผ๋ํ๊ณ ํ๊ณ(Georgia Tech, George Mason University)๊ฐ ํ๋ ฅํ๋ ์ด ํ๋ก์ ํธ๋ ์ฐํ ํ๋ ฅ์ ์ข์ ์์์ด๋ฉฐ, ์คํ์์ค ๊ณต๊ฐ๋ฅผ ํตํด ์ปค๋ฎค๋ํฐ์ ๋ฐ์ ์ ๊ธฐ์ฌํ๊ณ ์์ต๋๋ค. SII 2026 ์ฑํ์ ์ด ์ฐ๊ตฌ์ ํ์ ์ ๊ฐ์น๋ฅผ ์ธ์ ๋ฐ์ ๊ฒ์ด๋ฉฐ, ํฅํ ๋ ๋ง์ ์ฐ๊ตฌ์์ ๊ฐ๋ฐ์๊ฐ ์ด ํ๋ ์์ํฌ๋ฅผ ํ์ฉํ์ฌ ๋ก๋ด ํ์ต์ ๋ฐ์ ์ ๊ธฐ์ฌํ ๊ฒ์ผ๋ก ๊ธฐ๋๋ฉ๋๋ค.
์ฐธ๊ณ ๋ฌธํ
- Zhao, Z., Yu, L., Jing, K., & Yang, N. (2025). XRoboToolkit: A Cross-Platform Framework for Robot Teleoperation. arXiv:2508.00097.
- Black, K., et al. (2024). ฯโ: A Vision-Language-Action Flow Model for General Robot Control. Physical Intelligence.
- Zhao, T., et al. (2023). Learning Fine-Grained Bimanual Manipulation with Low-Cost Hardware (ALOHA). RSS 2023.
- Wu, P., et al. (2024). GELLO: A General, Low-Cost, and Intuitive Teleoperation Framework for Robot Manipulators. CoRL 2024.
- Cheng, X., et al. (2024). Open-TeleVision: Teleoperation with Immersive Active Visual Feedback. CoRL 2024.
- Kim, M. J., et al. (2024). OpenVLA: An Open-Source Vision-Language-Action Model. arXiv:2406.09246.
- Wang, X., et al. (2024). ACE: A Cross-platform Visual-Exoskeletons System for Low-Cost Dexterous Teleoperation. CoRL 2024.
- He, Z., et al. (2024). TWIST: Teleoperated Whole-Body Imitation System. arXiv:2505.02833.
โ๏ธ Dig Review
โ๏ธ Dig โ Go deep, uncover the layers. Dive into technical detail.
์๊ฐ (๋ฐฐ๊ฒฝ๊ณผ ํ์์ฑ)
๋ก๋ด์ ์์จ์ฑ ํฅ์์ ์ํ ์ธ๊ณต์ง๋ฅ ์ฐ๊ตฌ์๋ ๋๊ท๋ชจ ๊ณ ํ์ง ๋ก๋ด ์์ฐ ๋ฐ์ดํฐ์ ์ ํ๋ณด๊ฐ ํ์์ ์ ๋๋ค. ํนํ Vision-Language-Action (VLA) ๋ชจ๋ธ ๋ฑ ์ต์ ๋ก๋ด ํ์ต ๊ธฐ๋ฒ๋ค์ ๋ฐฉ๋ํ ์์ ์ธ๊ฐ ์์ฐ ๋ฐ์ดํฐ๋ฅผ ํ์๋ก ํฉ๋๋ค. ์ด๋ฌํ ๋ฐ์ดํฐ๋ฅผ ์์งํ๋ ์ฃผ์ ์๋จ ์ค ํ๋๊ฐ ์๊ฒฉ ์กฐ์(teleoperation)์ธ๋ฐ, ๊ธฐ์กด ์๊ฒฉ์ ์ด ๋ฐฉ๋ฒ๋ค์ ๊ฐ๊ฐ ํ๊ณ๋ฅผ ๊ฐ์ง๊ณ ์์ต๋๋ค:
- ๋ฆฌ๋-ํ๋ก์(Leader-Follower) ๋ฐฉ์: ์ธ๊ฐ ๋์์ ๋ก๋ด์ ๊ธฐ๊ณ์ ์ผ๋ก ๋ฐ๋ผํ๊ฒ ํ๋ ๋ฐฉ์์ผ๋ก ๋ฎ์ ์ง์ฐ๊ณผ ์ง๊ด์ ์ ์ด๊ฐ ์ฅ์ ์ด์ง๋ง, ํน์ ๋ก๋ด์ ๋ง์ถ ์ ์ฉ ํ๋์จ์ด๊ฐ ํ์ํ์ฌ ํ์ฅ์ฑ๊ณผ ์ ๊ทผ์ฑ์ด ๋จ์ด์ง๋๋ค.
- ๋น์ ๊ธฐ๋ฐ ์๊ฒฉ์กฐ์: ์นด๋ฉ๋ผ ์์์ ๋ณด๋ฉฐ ์กฐ์ด์คํฑ ๋ฑ์ผ๋ก ์กฐ์ํ๋ ๋ฐฉ์์ผ๋ก ๋ค์ํ ๋ก๋ด์ ์ ์ฐํ๊ฒ ์ ์ฉํ ์ ์์ง๋ง, ๋ถ์์ ํ ์ถ์ ์ฑ๋ฅ๊ณผ ๋์ ์ง์ฐ(latency)์ผ๋ก ์ธํด ์ ์ด ์ ํ๋์ ๋ฐ์ดํฐ ํ์ง์ด ์ ํ๋๋ ๋ฌธ์ ๊ฐ ์์ต๋๋ค.
- ๊ฐ์ํ์ค(VR/XR) ๊ธฐ๋ฐ ์๊ฒฉ์กฐ์: ์์ฉ HMD(Headset)๋ฅผ ํ์ฉํด ์ ์ฒด์ ์๊ฐ ํผ๋๋ฐฑ๊ณผ ์ง๊ด์ ์ธ ์ ์ค์ฒ ์ ์ด๊ฐ ๊ฐ๋ฅํ์ฌ ๋ค์ ๋ก๋ด ํ๋ซํผ์ ์ผ๋ฐํํ ์ ์๋ ์ ๋งํ ๋์์ ๋๋ค. ๊ทธ๋ฌ๋, ๊ธฐ์กด XR ์๊ฒฉ์ ์ด ์๋ฃจ์ ๋ค์ ์ค์ ์ด ๋ณต์กํ๊ณ ๊ฐ๋ณ HMD์ฉ Unity SDK๋ WebXR ํ๋ซํผ์ ์์กดํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ ํธํ์ฑ ๋ฌธ์ ์ ์ถ๊ฐ ์ง์ฐ์ ์ด๋ํ๋ ๋จ์ ์ด ์์ต๋๋ค. ๋ํ XR ๋๋ฐ์ด์ค์ ๋ก๋ด ์ ์ด๊ธฐ ์ฌ์ด์ ํ์คํ๋ ๋ฐ์ดํฐ ํฌ๋งท์ด ๋ถ์ฌํด, ์๋ก์ด XR ๊ธฐ๊ธฐ๋ ๋ก๋ด์ ์ฐ๊ฒฐํ๋ ค๋ฉด ์๋นํ ํตํฉ ์์ ์ด ํ์ํ์ต๋๋ค.
์ด๋ฐ ํ๊ณ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ByteDance PICO ์ฐ๊ตฌ์ง์ OpenXR ํ์ค ๊ธฐ๋ฐ์ ํฌ๋ก์คํ๋ซํผ ์๊ฒฉ์ ์ด ํ๋ ์์ํฌ์ธ XRoboToolkit์ ๊ฐ๋ฐํ์ต๋๋ค. XRoboToolkit์ XR ๊ธฐ๊ธฐ์ ๋ก๋ด ํ๋ซํผ/์๋ฎฌ๋ ์ดํฐ๋ฅผ ์์ฐ๋ฅด๋ ๋ชจ๋์ ์ํํธ์จ์ด ํคํธ๋ก, ์ ์ง์ฐ ์คํ ๋ ์ค ๋น๋์ค ํผ๋๋ฐฑ, ์ต์ ํ ๊ธฐ๋ฐ ์ญ๊ธฐ๊ตฌํ(IK), ๊ทธ๋ฆฌ๊ณ ๋จธ๋ฆฌ/์/์ปจํธ๋กค๋ฌ/๋์ํธ๋์ปค ๋ฑ ๋ค์ํ ์ถ์ ๋ชจ๋ฌ๋ฆฌํฐ ์ง์์ด ํน์ง์ ๋๋ค. ์ด ๊ธ์์๋ XRoboToolkit ๋ ผ๋ฌธ์ ๋ฐํ์ผ๋ก, ๋ก๋ด๊ณตํ์์ ๊ด์ ์์ XRoboToolkit์ ์ ์ฒด ์ํคํ ์ฒ, ๊ตฌ์ฑ ์์๋ณ ์ญํ , ์ธ๋ถ ๊ธฐ์ ๊ณผ์ ํตํฉ ๋ฐฉ์(ROS, Unity, WebRTC ๋ฑ), ๋ฉํฐํ๋ซํผ ์ง์ ๊ตฌ์กฐ, ์ค๊ณ์์ ๊ฐ์ ๊ณผ ํ๊ณ, ๊ธฐ์กด ํ๋ ์์ํฌ์์ ๋น๊ต, ๊ทธ๋ฆฌ๊ณ ํ์ฉ ๊ฐ๋ฅ์ฑ ๋ฐ ํฅํ ๋ฐ์ ๋ฐฉํฅ์ ์ฌ์ธต์ ์ผ๋ก ์ดํด๋ณด๊ฒ ์ต๋๋ค.
XRoboToolkit ์ํคํ ์ฒ ๊ฐ์
๊ทธ๋ฆผ 1. XRoboToolkit ํ๋ ์์ํฌ์ ์ ์ฒด ์ํคํ ์ฒ ๊ฐ์. Green ์ ๋ธ๋ก์ XR ๋๋ฐ์ด์ค ์ธก ๊ตฌ์ฑ ์์๋ค (ํด๋จผ ์ธํฐํ์ด์ค), Blue ์ ๋ธ๋ก์ ๋ก๋ด PC ์ธก ๊ตฌ์ฑ ์์๋ค์ ๋ํ๋ธ๋ค. ์ค์์ XRoboToolkit ๋ชจ๋๋ค์ด XR ์ฅ์น์ ๋ก๋ด ์์คํ ์ ์ฐ๊ฒฐํ๋ฉฐ, ์ค์๊ฐ ์๊ฒฉ์กฐ์๊ณผ ์คํ ๋ ์ค ๋น์ ์ ํต์ฌ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ค.
XRoboToolkit์ ํฌ๊ฒ XR ๋๋ฐ์ด์ค ์ธก๊ณผ ๋ก๋ด ์ธก์ผ๋ก ๋๋์ด ๋์ํฉ๋๋ค. XR ๋๋ฐ์ด์ค ์ธก์๋ Unity ๊ธฐ๋ฐ XR ํด๋ผ์ด์ธํธ ์ ํ๋ฆฌ์ผ์ด์ ์ด VR/AR ํค๋์ (์: PICO 4, Meta Quest 3)์ ์ค์น๋์ด ์คํ๋ฉ๋๋ค. ์ฌ์ฉ์์ ๋จธ๋ฆฌ ์์น/์์ธ, ์์ ์ปจํธ๋กค๋ฌ ๋ฐ ์๊ฐ๋ฝ ๊ด์ ์์ง์, ์ ์ ๋์(์ถ๊ฐ ๋ชจ์ ํธ๋์ปค ํ์ฉ ์) ๋ฑ์ OpenXR ์ธํฐํ์ด์ค๋ฅผ ํตํด ์ค์๊ฐ์ผ๋ก ์์งํ๋ฉฐ, ์ฌ์ฉ์์๊ฒ ์ ์ฒด์ ์๊ฐ ํผ๋๋ฐฑ(stereoscopic visual feedback)์ ์ ๊ณตํฉ๋๋ค.
๋ก๋ด ์ธก์๋ PC(Service) ๋ชจ๋๊ณผ ๋ก๋ด ์ ์ด ๋ชจ๋(IK/๋๋ ์คํฐ๋ฆฌํ๊ฒํ )์ด ์กด์ฌํฉ๋๋ค. XR ํค๋์ ์์ ์์ง๋ ์์ธ/์ ๋ ฅ ๋ฐ์ดํฐ ์คํธ๋ฆผ์ ๋คํธ์ํฌ๋ฅผ ํตํด PC ์๋น์ค(XRoboToolkit-PC-Service)๋ผ๋ C++ ๊ธฐ๋ฐ ์๋ฒ๋ก ์ ์ก๋๊ณ , ์ด ์๋น์ค๋ ๋์ฐฉํ ๋ฐ์ดํฐ๋ฅผ ํด๋ผ์ด์ธํธ(๋ก๋ด ์ ์ด ์ ํ๋ฆฌ์ผ์ด์ )์ ์ ๋ฌํฉ๋๋ค. ๊ฐ๋ฐ์๋ C++ ์๋น์ค์ ์ง์ ์ฐ๊ฒฐํ๊ฑฐ๋, Pybind ๊ธฐ๋ฐ Python ์ธํฐํ์ด์ค(XRoboToolkit-PC-Service-Pybind)๋ฅผ ํตํด ๋ณด๋ค ์ฝ๊ฒ ์ด ๋ฐ์ดํฐ๋ฅผ ๊ตฌ๋ ํ ์ ์์ต๋๋ค. ์ด๋ ๊ฒ ๋ฐ์ ์ฌ์ฉ์ ์ถ์ ๋ฐ์ดํฐ๋ฅผ ํ์ฉํ์ฌ ์ญ๊ธฐ๊ตฌํ IK solver์ ์๋์ ๋งคํ(๋ฑ์คํฐ๋ฌ์ค ๋ฆฌํ๊ฒํ ) ์๊ณ ๋ฆฌ์ฆ์ด ๋ก๋ด ์ ์ด ๋ช ๋ น์ ์ฐ์ถํฉ๋๋ค. ์ด ๋ถ๋ถ์ XRoboToolkit-Teleop-Sample-Python ๋ฑ์ผ๋ก ์ ๊ณต๋๋ฉฐ, UR5, ARX R5 ๊ฐ์ ๋ก๋ด ํ, Galaxea R1-Lite์ ๊ฐ์ ๋ชจ๋ฐ์ผ ๋งค๋ํฐ๋ ์ดํฐ, Shadow ๋ก๋ด ์ ๋ฑ ๋ค์ํ ๋ก๋ด ํ๋ซํผ๊ณผ, MuJoCo ์๋ฎฌ๋ ์ด์ ํ๊ฒฝ๊น์ง ์ฐ๋ ๊ฐ๋ฅํ๋๋ก ๊ตฌํ๋์์ต๋๋ค. ํํธ, ๋ก๋ด ์ธก์๋ Robot Vision ๋ชจ๋์ด ์กด์ฌํ์ฌ ๋ก๋ด์ ์ฅ์ฐฉ๋ ์คํ ๋ ์ค ์นด๋ฉ๋ผ (์: PICO ํค๋์ ์นด๋ฉ๋ผ ๋๋ ์ธ๋ถ ZED Mini ์นด๋ฉ๋ผ)๋ก๋ถํฐ ์์์ ๋ฐ์๋ค์ธ ๋ค, ์ด๋ฅผ ์ค์๊ฐ ์คํธ๋ฆผ์ผ๋ก ์ธ์ฝ๋ฉํ์ฌ XR ๋๋ฐ์ด์ค ์ธก Unity ํด๋ผ์ด์ธํธ๋ก ์ ์กํ๋ ์ญํ ์ ํฉ๋๋ค.
์์ฝํ๋ฉด XRoboToolkit ์ํคํ ์ฒ๋ XR HMD & ์ปจํธ๋กค๋ฌ โ๏ธ Unity XR ํด๋ผ์ด์ธํธ โ๏ธ PC ํต์ ์๋น์ค โ๏ธ ๋ก๋ด ์ ์ด/์๋ฎฌ๋ ์ดํฐ์ ๊ณ์ธต์ ๊ตฌ์กฐ๋ฅผ ๊ฐ์ง๋ฉฐ, ๊ฐ ๋ชจ๋์ด ํ์คํ๋ ๋ฐ์ดํฐ ํฌ๋งท๊ณผ ์ธํฐํ์ด์ค๋ก ์ํธ ์์ฉํจ์ผ๋ก์จ ์ ์ฐํ๊ณ ํ์ฅ์ฑ ์๋ ์๊ฒฉ์ ์ด ํ๋ ์์ํฌ๋ฅผ ๋ฌ์ฑํ์ต๋๋ค.
๊ตฌ์ฑ ์์๋ณ ์ญํ (Control, Communication, Robot Abstraction Layer)
XRoboToolkit์ ๊ฐ ๊ตฌ์ฑ ์์๋ ์ ์ด, ํต์ , ๋ก๋ด ์ถ์ํ๋ผ๋ ๊ณ์ธต์ ์ญํ ์ ๋๋์ด ๋ด๋นํฉ๋๋ค. ์๋์์๋ ์ด๋ฌํ ๊ณ์ธต๋ณ ํต์ฌ ๊ธฐ๋ฅ๊ณผ ์ญํ ์ ์ดํด๋ด ๋๋ค.
์ ์ด ๊ณ์ธต: ์ฌ์ฉ์ ์ ๋ ฅ ์ฒ๋ฆฌ์ ๋ก๋ด ๋ช ๋ น ์์ฑ
์ ์ด ๊ณ์ธต์ ์ฌ์ฉ์์ ๋์์ ๋ก๋ด ์ ์ด ๋ช ๋ น์ผ๋ก ๋ณํํ๋ ๋ชจ๋ ๊ธฐ๋ฅ์ ํฌ๊ดํฉ๋๋ค. XRoboToolkit์์๋ ์ฌ๋ฌ ๊ฐ์ง ์ ์ด ๋ชจ๋๋ฅผ ์ง์ํ๋๋ฐ, ํฌ๊ฒ ๋งค๋ํฐ๋ ์ดํฐ ์ ์ด๋ฅผ ์ํ ์ญ๊ธฐ๊ตฌํ(IK), ์ ๋์์ ๋ก๋ด ์์ผ๋ก ๋งคํํ๋ ๋ฑ์คํฐ๋ฌ์ค ํธ๋ ๋ฆฌํ๊ฒํ , ๋จธ๋ฆฌ ์์ง์์ ๋ก๋ด ์นด๋ฉ๋ผ ์ ์ด์ ๋ฐ์ํ๋ ํค๋ ํธ๋ํน, ๋ชจ๋ฐ์ผ ๋ก๋ด ๋ฒ ์ด์ค ์กฐ์ ๋ฑ์ด ์ด์ ํด๋นํฉ๋๋ค.
- ์ญ๊ธฐ๊ตฌํ ๊ธฐ๋ฐ ํ ์ ์ด: ์ฌ์ฉ์๊ฐ VR ์ปจํธ๋กค๋ฌ๋ฅผ ์์ง์ด๋ฉด, ๊ทธ ๋ณ์๋ฅผ ๋ก๋ด ํ ๋ง๋จํจ๊ณผ๊ธฐ(End-Effector)์ ๋ชฉํ ์์น ๋ณํ๋ก ํด์ํฉ๋๋ค. XRoboToolkit์ Quadratic Programming (QP) ๊ธฐ๋ฐ์ IK ์๋ฒ๋ฅผ ํ์ฌํ์ฌ, ๋ก๋ด ๊ด์ ์ ๋ชฉํ ๊ฐ๋๋ฅผ ์ค์๊ฐ ์ต์ ํ๋ก ๊ณ์ฐํฉ๋๋ค. ์ด ์๋ฒ๋ Pinocchio ๋ฌผ๋ฆฌ ์์ง์ ๋ฐํ์ผ๋ก ํ๋ฉฐ, ์ถ๊ฐ์ ์ธ ์ ์ฝ๊ณผ ์ ๊ทํ๋ฅผ ์ฝ๊ฒ ํฌํจ์ํฌ ์ ์์ด ํน์ด์ ๊ทผ์ฒ์์๋ ์์ ์ ์ธ ๋์์ ๋ณด์ฅํฉ๋๋ค. ์์ปจ๋ Manipulator์ ์กฐ์ ๊ฐ๋ฅ๋(manipulability)๋ฅผ ๋์ด๋ ์ ๊ทํ ํญ์ ์ถ๊ฐํ์ฌ, ํน์ด์ ๋ถ๊ทผ์์ ๊ด์ ์์ง์์ด ๊ฐ์๊ธฐ ๋ถ์์ ํด์ง์ง ์๋๋ก ํฉ๋๋ค. ๋ํ ์ปจํธ๋กค๋ฌ ๊ทธ๋ฆฝ ๋ฒํผ์ ๋๋ฌ์ผ๋ง ๋ก๋ด ํ์ด ๋ฐ๋ผ ์์ง์ด๋๋ก ํ์ฌ, ์ฌ์ฉ์๊ฐ ๊ทธ๋ฆฝ์ ์ก์ ์์ ์ ๊ธฐ์ค์ผ๋ก ํ ์๋ ์์ง์(relative motion) ์ ์ด๋ฅผ ๊ตฌํํ์ต๋๋ค. ์ด๋ฅผ ํตํด VR ํ๊ฒฝ์์ ์์ ์์ง์ผ ๋ ๋ก๋ด์ด 1:1๋ก ์ฆ๊ฐ ๋ฐ๋ผ์ค๋ ๊ฒ์ด ์๋๋ผ, ์ก์ ์๊ฐ์ ์์ธ ๋๋น ๋ณํ๋ง ๋ฐ๋ผ์ค๊ฒ ํด ์์ ์ ์ด๊ณ ์ง๊ด์ ์ธ ์กฐ์๊ฐ์ ์ค๋๋ค. ๋ ๋์๊ฐ, ๋ณด์กฐ ํธ๋์ปค(์: ํ๊ฟ์น์ ๋ถ์ฐฉ)๋ฅผ ์ฌ์ฉํ๋ฉด ์ธ๊ฐ ํ๊ฟ์น์ ์์น๋ฅผ ์ถ์ ํด IK ๊ณ์ฐ์ ์ถ๊ฐ ์ ์ฝ์ผ๋ก ํ์ฉํ ์ ์์ต๋๋ค. ์ด๋ 7์์ ๋ ์ด์์ ์ฌ์ ์์ ๋(์์ฌ, redundant)๋ฅผ ๊ฐ์ง๋ ๋ก๋ดํ์ ์ฌ๋์ด ํ๊ฟ์น๋ฅผ ์์ง์ฌ ์์ฐ์ค๋ฌ์ด ์์ธ๋ฅผ ์ง์ ํ ์ ์๊ฒ ํด์ฃผ๋ฉฐ, ์์ ๊ณต๊ฐ ๋ด์์ ์ธ์ฒด๊ณตํ์ ์ธ ํ ์์ง์์ ๋ก๋ด์ด ๋ณด์ด๋๋ก ํฉ๋๋ค.
- ๋ฑ์คํฐ๋ฌ์ค ์ ๋ฆฌํ๊ฒํ : VR ํค๋์ ์ ์ ์ถ์ ๊ธฐ๋ฅ(์: PICO ํค๋์ ์ ์นด๋ฉ๋ผ ๊ธฐ๋ฐ ์ ์ถ์ )์ผ๋ก ์ป์ ์์์ 26๊ฐ ๊ด์ ๋ฐ์ดํฐ๋ฅผ ๋ก๋ด ์์ ๊ด์ ๊ณต๊ฐ์ ๋งคํํ์ฌ, ์ ๋ฐ ์กฐ์์ ํ์ฉํ๋ ๊ธฐ๋ฅ์ ๋๋ค. XRoboToolkit์ OpenXR ํ์ค์ ์ ๋ชจ๋ธ ๊ด์ ์ขํ(์์ง 4๊ด์ , ๋๋จธ์ง ์๊ฐ๋ฝ ๊ฐ 5๊ด์ , ์๋ฐ๋ฅ+์๋ชฉ ๋ฑ ์ด 26๊ฐ)๋ฅผ ์ฌ์ฉํ๋ฉฐ, ๊ฐ ํ๋ ์๋ง๋ค ์๊ฐ๋ฝ์ 6-์์ ๋ ์์ธ ์ ๋ณด๋ฅผ ์ป์ต๋๋ค. ์ด ๋ฐ์ดํฐ๋ฅผ ๋ก๋ด ํธ๋(Shadow Hand ๋ฑ)์ ํคํฌ์ธํธ ์์น์ ์ค์๊ฐ ๋์์์ผ, ์ธ๊ฐ ์์ ์์ธ๋ฅผ ๋ก๋ด ์๊ฐ๋ฝ ๊ฐ๋๋ก ๋ณํํฉ๋๋ค. ๊ตฌ์ฒด์ ์ผ๋ก, ์๊ฐ t์์ ์ธ๊ฐ ์ ๋ชจ๋ธ์ i๋ฒ์งธ ๊ด์ ์์น๋ฅผ , ๋ก๋ด ์์ ๋์ ์ง์ ์์น๋ฅผ ๋ผ ํ ๋, ** ๋ฅผ ์ต์ํํ๋ ๋ก๋ด ์ ๊ด์ ๊ตฌ์ฑ ๋ฅผ ๊ณ์ฐํ๋ ์ต์ ํ๋ฅผ ์ํํฉ๋๋ค. ์ ํฌ๊ธฐ ์ฐจ์ด๋ฅผ ๋ณด์ ํ๊ธฐ ์ํ ์ค์ผ์ผ๋ง ์ธ์๋ ํด๊ฐ ๋ถ์์ ํ ๋๋ฅผ ๋๋นํ ์ ๊ทํ ํญ๋ ํฌํจ๋์ด ์์ต๋๋ค. ์ด ๋ฐฉ์์ ํตํด ๋ณ๋ ์ฅ๋น ์์ด HMD ํ๋๋ง์ผ๋ก ์ฌ์ธํ ์๋์ ํ ๋ ์ต์ด ๊ฐ๋ฅํด์ก์ผ๋ฉฐ, ์ค์ Shadow Robot ์** ์๋ฎฌ๋ ์ด์ ์ ํตํด VR ์์ง์ผ๋ก ๋ฌผ์ฒด๋ฅผ ์ก๊ณ ์กฐ์ํ๋ ์คํ์ ์ฑ๊ณต์ ์ผ๋ก ์ํํ์ต๋๋ค.
- ํค๋ ํธ๋ํน ๋ฐ ์์ ์ ์ด: ์ฌ์ฉ์์ ๋จธ๋ฆฌ ์์ง์(ํ์ /์์น ์ถ์ )์ ๋ก๋ด์ ์๊ฐ ์ผ์ ๋ฐฉํฅ ์ ์ด์ ํ์ฉํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด XRoboToolkit์ ๋์ผ UR5 ๋ก๋ดํ์ ์ ์ฉํ ์ฌ๋ก์์, 2์์ ๋(์ข์ฐ ํ์ , ์ํ ํ์ ) ์ง๋ฒ์ VR ํค๋์ (PICO 4)์ ๋ถ์ฐฉํ๊ณ , ์ด๋ฅผ ๋ก๋ด์ ๋ฅ๋ ์คํ ๋ ์ค ์นด๋ฉ๋ผ๋ก ์ฌ์ฉํ์ต๋๋ค. ์ธ๊ฐ ์ด์์๊ฐ ๋จธ๋ฆฌ๋ฅผ ๋๋ฆฌ๋ฉด ์ง๋ฒ์ด ์ค์๊ฐ์ผ๋ก ๋ฐ๋ผ ๋๋ฉด์, ์๊ฒฉ ๋ก๋ด ํ์ฅ์ ์์ผ ๋ฐฉํฅ์ด ๋์ผํ๊ฒ ๋ณํํฉ๋๋ค. ์ด๋ Roll(์ผ์ชฝ๊ธฐ์ธ์/์ค๋ฅธ์ชฝ๊ธฐ์ธ์) ํ์ ์ถ์ ์ ์ธํ์ฌ, ์๊ฐ ์ ๋ ฅ๊ณผ ์ฌ์ฉ์ ๋ด์ด๊ฐ๊ฐ์ ๋ถ์ผ์น๋ก ์ธํ ๋ฉ๋ฏธ๋ฅผ ๋ฐฉ์งํ์ต๋๋ค. ์ด๋ฌํ ๋จธ๋ฆฌ-์นด๋ฉ๋ผ ์ฐ๋์ผ๋ก ์ฌ์ฉ์๋ ์๊ฒฉ ํ๊ฒฝ์ ์์จ์ ์ผ๋ก ๋๋ฌ๋ณผ ์ ์๊ณ , ํนํ ์ ๋ฐ ์์ ์ ๊น์ด๊ฐ ์๋ ์๊ฐ ์ ๋ณด๋ฅผ ์ป์ด ์์ ์ฑ๋ฅ์ ๋์ผ ์ ์์ต๋๋ค.
- ์ด๋ ํ๋ซํผ ์ ์ด: XR ์ปจํธ๋กค๋ฌ์ ์กฐ์ด์คํฑ ์ ๋ ฅ์ ์ด์ฉํด ์ด๋ํ ๋ก๋ด์ ์ฃผํ์ ์ ์ดํ๋ ๊ฒ๋ ๊ฐ๋ฅํฉ๋๋ค. ์๋ฅผ ๋ค์ด ํ์ชฝ ์ปจํธ๋กค๋ฌ์ ์กฐ์ด์คํฑ ์ถ์ ์ ํ/์ข์ฐ ๋ณ์ง ์ด๋์๋๋ฅผ, ๋ค๋ฅธ ์ปจํธ๋กค๋ฌ์ ์กฐ์ด์คํฑ์ ํ์ ์๋๋ฅผ ๋งคํํจ์ผ๋ก์จ, VR ์์์ ๊ฒ์ํ๋ฏ์ด ์๊ฒฉ์ง์ ๋ก๋ด ์ด๋์ ์กฐ์ํ ์ ์์ต๋๋ค. ์ด๋ฌํ ๊ธฐ๋ฅ์ ํ ์กฐ์๊ณผ ๋ณํํ์ฌ, ์ฌ๋ ํ ๋ช ์ด ๋ชจ๋ฐ์ผ ๋งค๋ํฐ๋ ์ดํฐ๋ฅผ ์์ง์ฌ๊ฐ๋ฉฐ ์์ ํ๋ ๋ณตํฉ ์๋๋ฆฌ์ค๋ ์ง์ํฉ๋๋ค.
ํต์ ๊ณ์ธต: ๋ฐ์ดํฐ ๋ฐ ์์ ์คํธ๋ฆฌ๋ฐ
ํต์ ๊ณ์ธต์ XR ๋๋ฐ์ด์ค์ ์๊ฒฉ ๋ก๋ด ์์คํ ๊ฐ์ ์ค์๊ฐ ๋ฐ์ดํฐ ๊ตํ์ ๋ด๋นํฉ๋๋ค. ํต์ฌ์ ์ฌ์ฉ์ ์ถ์ ๋ฐ์ดํฐ(ํฌ์ฆ, ์ ๋ ฅ)์ ์คํ ๋ ์ค ๋น๋์ค ์คํธ๋ฆผ์ ์ ์ง์ฐ(low-latency)์ผ๋ก ์ฃผ๊ณ ๋ฐ๋ ๊ฒ์ ๋๋ค.
XRoboToolkit์ ์ ์ฉ SDK ๊ธฐ๋ฐ์ ์คํธ๋ฆฌ๋ฐ ์๋น์ค๋ฅผ ํตํด ์ด๋ฌํ ํต์ ์ ๊ตฌํํ์ต๋๋ค. XRoboToolkit-PC-Service(C++)๋ ๋น๋๊ธฐ ์ฝ๋ฐฑ ๊ธฐ๋ฐ ์ํคํ ์ฒ๋ก ๋์ํ์ฌ, VR ํ๋์จ์ด๋ก๋ถํฐ ์์ ํ ๋ฐ์ดํฐ๋ฅผ ์ง์ฐ ์์ด ์ ํ๋ฆฌ์ผ์ด์ ์ ์ ๋ฌํฉ๋๋ค. Unity๋ก ์์ฑ๋ XR ํด๋ผ์ด์ธํธ๋ ์ด PC ์๋น์ค์ ๋คํธ์ํฌ ์์ผ์ผ๋ก ์ฐ๊ฒฐ๋์ด, JSON ํํ๋ก ํจํน๋ ์ถ์ ๋ฐ์ดํฐ๋ฅผ ์ด๋น 90ํ(90 Hz) ์ ์กํฉ๋๋ค. OpenXR์ ์ขํ๊ณ ๊ธฐ์ค์ผ๋ก ๋ชจ๋ ํธ๋ํน ์ขํ๋ฅผ ์ผ๊ด๋๊ฒ ์ ์ํ์ผ๋ฉฐ(Fig.2(a)), JSON ์ค๋ธ์ ํธ ๋ด์ ๋จธ๋ฆฌ, ์์ ์ปจํธ๋กค๋ฌ, ์๊ฐ๋ฝ ๊ด์ , ์ ์ ๊ด์ , ๋ณด์กฐ ํธ๋์ปค ๋ฑ์ ์ ๋ณด๋ฅผ ํ๊บผ๋ฒ์ ๋ด์ ์ ์กํฉ๋๋ค.
์ด๋ฅผํ
๋ฉด ํค๋์
์ ์์น์ ์ฟผํฐ๋์ธ(q)์ [px, py, pz, qx, qy, qz, qw]์ 7๊ฐ ๋ถ๋์์์ ์ผ๋ก ํํํ๊ณ , ๊ฐ ์๊ฐ๋ฝ ๊ด์ ์ 6-DoF ํฌ์ฆ 26๊ฐ ๋ฑ๋ ๋ฐฐ์ด๋ก ํฌํจ๋ฉ๋๋ค. ์ด๋ฌํ ๋จ์ผ JSON ํจํท ๊ตฌ์กฐ ๋๋ถ์ ํด๋ผ์ด์ธํธ ์ธก ํ์ฑ์ด ๋จ์ํด์ก๊ณ , ํ์ฑํ๋ ํธ๋ํน ๋ชจ๋์ ์๊ด์์ด ์ผ๊ด๋ ๋ฐ์ดํฐ ํ๋ ๊ตฌ์ฑ์ ์ ์งํ ์ ์์ต๋๋ค.
๋น๋์ค ์คํธ๋ฆฌ๋ฐ์ ๊ฒฝ์ฐ, XRoboToolkit์ ๋ง์ถค ์ค๊ณํ ์ ์ง์ฐ ์์ ์ ์ก ํ๋กํ ์ฝ์ ์ฌ์ฉํฉ๋๋ค. ๊ตฌ์ฒด์ ์ผ๋ก ์ธ๊ธ๋์ง ์์์ง๋ง, ์์ ์ก์์ ์ ์ํด WebRTC์ ์ ์ฌํ P2P ์คํธ๋ฆฌ๋ฐ ๊ธฐ์ ์ด๋ ํ๋์จ์ด ์ธ์ฝ๋ฉ์ ํ์ฉํ ๊ฒ์ผ๋ก ์ถ์ ๋ฉ๋๋ค. ๋ ผ๋ฌธ์์๋ ์์ฒด ๊ตฌํํ ์๋ฃจ์ ์ด ๊ธฐ์กด Open-TeleVision ๋๋น ์ฐ์ํ ์ง์ฐ ์ฑ๋ฅ์ ๋ณด์๋ค๊ณ ๋ณด๊ณ ํฉ๋๋ค. ์คํ ๊ฒฐ๊ณผ XRoboToolkit์ ์คํธ๋ฆฌ๋ฐ ์ง์ฐ์ ZED Mini ์นด๋ฉ๋ผ โ PICO HMD ๊ตฌ์ฑ์์ ํ๊ท 82.0ms๋ก, Open-TeleVision (ZEDโQuest)์ 121.5ms๋ณด๋ค ํฌ๊ฒ ๊ฐ์ ๋์์ต๋๋ค. ๋ํ PICO ์์ฒด ์นด๋ฉ๋ผ๋ฅผ ์ด์ฉํ ์คํธ๋ฆฌ๋ฐ(ํค๋์ โํค๋์ )์์๋ ์ฝ 100ms ์ง์ฐ์ผ๋ก ๋์ํ์ฌ, ๋ณ๋ PC ์์ด๋ ์์ฉ ๊ฐ๋ฅํ ์ฑ๋ฅ์ ๋ณด์์ต๋๋ค. ์ด๋ ํด์๋ 1280ร720, 60 FPS, 1Mbps ๋นํธ๋ ์ดํธ ์กฐ๊ฑด์ ๋ง์ถ์ด ๊ณต์ ๋น๊ตํ์ผ๋ฉฐ, XRoboToolkit์ ๊ฒฝ์ฐ ์ง์ฐ ํธ์ฐจ๋ ๋ ์์ ์์ ์ ์์ ํ์ธํ์ต๋๋ค (ํ II ์ฐธ์กฐ). ์ด๋ฌํ ๊ฒฐ๊ณผ๋ ๋คํธ์ํฌ ์ง์ฐ๊ณผ ํจํท ์์ค์ ์ต์ํํ๋ ์ต์ ํ ๋๋ถ์ด๋ฉฐ, ์ค์ GitHub ๋ฌธ์์๋ โ<100ms latency, <1% packet lossโ ๋ฌ์ฑ์ ์ธ๊ธํ๊ณ ์์ต๋๋ค.
์ ๋ฆฌํ๋ฉด, XRoboToolkit์ ํต์ ๊ณ์ธต์ ๊ณ ์ฃผํ์ ๋ชจ์ ๋ฐ์ดํฐ ์คํธ๋ฆผ๊ณผ ์คํ ๋ ์ค ์์ ์คํธ๋ฆผ์ ๋ณ๋ ฌ๋ก ์ฒ๋ฆฌํ๋ฉด์, OpenXR ๊ธฐ๋ฐ ํ์คํ ๋ฐ์ดํฐ ํฌ๋งท๊ณผ ๋ง์ถคํ ์ ์ง์ฐ ํ๋กํ ์ฝ๋ก ์๊ฒฉ ํ์ค๊ฐ(telepresence)์ ๊ทน๋ํํ๋ ์ญํ ์ ํฉ๋๋ค.
๋ก๋ด ์ถ์ํ ๊ณ์ธต: ๋ค์ข ๋ก๋ด ๋ฐ ์๋ฎฌ๋ ์ดํฐ ํตํฉ
๋ก๋ด ์ถ์ํ ๊ณ์ธต์ ๋ค์ํ ๋ก๋ด ํ๋ซํผ์ด๋ ์๋ฎฌ๋ ์ด์ ํ๊ฒฝ์ ์์ฝ๊ฒ ์ฐ๊ฒฐํ๊ธฐ ์ํ ์ธํฐํ์ด์ค๋ฅผ ์ ๊ณตํฉ๋๋ค. XRoboToolkit์ ์ค๊ณ ์ฒ ํ์ ๋ก๋ด ์ข ์์ ์ธ ๋ถ๋ถ์ ์ต์ํํ๊ณ , ์๋ก์ด ๋ก๋ด์ ์ถ๊ฐํ ๋ ๋ชจ๋๋ง ๊ต์ฒดํ๊ฑฐ๋ ํ์ฅํ๋ฉด ๋๋๋ก ํ๋ ๋ฐ ์์ต๋๋ค. ์ด๋ฅผ ์ํด ๋ก๋ด ์ธก ์ธํฐํ์ด์ค๋ฅผ Python ๋ฐ C++ ๋ชจ๋๋ก ๊ฐ๋ฐฉํ์ฌ, ๊ฐ๋ฐ์๊ฐ ์์ ์ ๋ก๋ด ์ ์ด ์ฝ๋๋ ์๋ฎฌ๋ ์ดํฐ๋ฅผ XRoboToolkit์ ๋ฐ์ดํฐ ์คํธ๋ฆผ์ ๋ฐ์ธ๋ฉํ๊ธฐ ์ฝ๊ฒ ๋ง๋ค์์ต๋๋ค.
์๋ฅผ ๋ค์ด ์ค์ ๋ก๋ด์ ๊ฒฝ์ฐ, Universal Robots UR5๋ ARX R5 ํ์ ๋ํ ์ ์ด๋ XRoboToolkit-Python ์ํ ์ฝ๋์์ ํด๋น ๋ก๋ด์ API ํธ์ถ๋ก ๊ตฌํ๋์ด ์์ต๋๋ค. UR5์ ๊ฒฝ์ฐ ROS2 ํ๊ฒฝ์์ ํ ์ ์ด ํ ํฝ์ผ๋ก IK ๊ฒฐ๊ณผ๊ฐ(๊ด์ ๊ฐ๋ ๋ช ๋ น)์ publishํ๊ฑฐ๋, UR ์์ฒด ๋ผ์ด๋ธ๋ฌ๋ฆฌ(์: RTDE or MoveIt)๋ฅผ ํธ์ถํ๋๋ก ๊ตฌ์ฑํ ์ ์์ต๋๋ค. ์ค์ XRoboToolkit ํ๋ก์ ํธ์๋ ROS2 ํตํฉ ๋ชจ๋(XRoboToolkit-Teleop-ROS)๋ ๋ณ๋๋ก ์ ๊ณต๋์ด, ROS 2 ์์ฝ์์คํ ์์ PICO XR ์๊ฒฉ์ ์ด๋ฅผ ์์ฝ๊ฒ ํ์ฉํ๋๋ก ๋๊ณ ์์ต๋๋ค. ์ด๋ฌํ ROS ์ฐ๋์ ํตํด, ๊ธฐ์กด ๋ก๋ด ์ด์ ์ํํธ์จ์ด์ XRoboToolkit์ ํ๋ฌ๊ทธ์ธ ํํ๋ก ๋ถ์ฌ ์ธ ์๋ ์์ต๋๋ค.
์๋ฎฌ๋ ์ดํฐ์ ๊ฒฝ์ฐ, ํ์ฌ๋ MuJoCo ๋ฌผ๋ฆฌ ์๋ฎฌ๋ ์ด์ ์ ๋ํ ๋ค์ดํฐ๋ธ ์ง์์ด ์ ๊ณต๋ฉ๋๋ค. ๊ฐ๋ฐ์๋ MuJoCo๋ก ๋ง๋ ๋ก๋ด ๋ชจ๋ธ์ XRoboToolkit Python ์ํ์ ๋ฑ๋กํ์ฌ, VR ์ ์ด ์ ๋ ฅ์ด ์ค๋ฉด MuJoCo ๋ด๋ถ์ ๋ก๋ด ๊ด์ ์ ๋ช ๋ น์ด ๊ฐ๊ณ , ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ํ๋ฉด์ ์ค์๊ฐ ๋ ๋๋งํ๊ฒ ํ ์ ์์ต๋๋ค. ๋ํ MeshCat๊ณผ์ ์ฐ๋ ์์๋ ์กด์ฌํ๋๋ฐ, ์ด๋ 3D ์น ๋น์ฃผ์ผ๋ผ์ด์ ์ด์ ๋๊ตฌ์ธ MeshCat์ ํตํด ํ ๋ ํ๋ ์ฆ์ค UI๋ฅผ ๊ตฌ์ฑํ ์ฌ๋ก์ ๋๋ค. ์์ปจ๋ Unitree G1 ํด๋จธ๋ ธ์ด๋ ์์ฒด๋ฅผ MeshCat์ผ๋ก ๋์๋๊ณ , ์ฌ์ฉ์๊ฐ ํ๊ฟ์น ํธ๋์ปค๊น์ง ํ์ฉํ VR ์กฐ์์ ํ๋ฉด ํด๋น ์์ง์์ด MeshCat ์์ 3D ๋ชจ๋ธ์ ์ค์๊ฐ ๋ฐ์๋๋ ์์ ๋๋ค.
๋ก๋ด ์ถ์ํ ๊ณ์ธต์ ๊ฐ๋ ฅํ ์ ์, ์๋ก์ด ๋ก๋ด์ด๋ ์๋ฎฌ๋ ์ดํฐ๋ ๊ณตํต๋ ๋ฐ์ดํฐ ์ธํฐํ์ด์ค(XR ํธ๋ํน ๋ฐ์ดํฐ โ ๋ก๋ด ๋ช ๋ น)๋ง ๋ง์ถ๋ฉด XRoboToolkit์ ๋๋จธ์ง ๊ธฐ๋ฅ์ ๊ทธ๋๋ก ํ์ฉํ ์ ์๋ค๋ ๊ฒ์ ๋๋ค. ๋๋ถ์ ์ ๋ฐ ์ฐ์ ์ฉ ๋ก๋ดํ, ํด๋จธ๋ ธ์ด๋, ์ด๋ํ ๋ก๋ด, ๋ก๋ด ์, ๊ฐ์ ํ๊ฒฝ ๋ฑ ์ด๊ธฐ์ข ์์คํ ์ ํ๋์ XR ์ธํฐํ์ด์ค๋ก ์กฐ์ข ํ๋ ํตํฉ ํ๊ฒฝ์ด ํ์คํ๋์์ต๋๋ค. ์ฐ๊ตฌํ์ ๋ ผ๋ฌธ์์ UR5, ARX R5, Galaxea R1-Lite, Shadow Hand, MuJoCo ๋ฑ์ ์ฐ๋ ์์ฐํ์์ผ๋ฉฐ, ์์ผ๋ก๋ ์ถ๊ฐ ๋ก๋ด/์๋ฎฌ๋ ์ดํฐ ์ง์์ด ์ฉ์ดํ๋ค๊ณ ๊ฐ์กฐํฉ๋๋ค.
์ธ๋ถ ๊ธฐ์ ๊ณผ์ ํตํฉ (ROS, Unity, WebRTC ๋ฑ)
XRoboToolkit์ ๊ฐ๋ฐ ๋ฐ ํ์ฉ์๋ ์ฌ๋ฌ ์ธ๋ถ ๊ธฐ์ ์คํ์ด ํ์ฉ๋์์ผ๋ฉฐ, ๊ฐ๊ฐ์ ๋ํ ํตํฉ ๋ฐฉ์์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค:
- Unity (OpenXR): XRoboToolkit์ ํ๋ก ํธ์๋ ์ ํ๋ฆฌ์ผ์ด์ ์ Unity ๊ฒ์์์ง์ผ๋ก ๊ตฌํ๋์์ต๋๋ค. Unity๋ ๋ค์ํ ํ๋ซํผ์ผ๋ก์ ๋น๋๋ฅผ ์ง์ํ๋ฏ๋ก, PICO๋ Quest ๋ฑ์ Android ๊ธฐ๋ฐ VR ํค๋์ ์ ๋ค์ดํฐ๋ธ ์ฑ์ผ๋ก ์ค์น๊ฐ ๊ฐ๋ฅํ๊ณ , PC VR ํ๊ฒฝ์ผ๋ก๋ ๋น๋ํ ์ ์์ต๋๋ค. XRoboToolkit Unity ํด๋ผ์ด์ธํธ๋ OpenXR ํ๋ฌ๊ทธ์ธ์ ํตํด ๊ธฐ๊ธฐ ์ ์ด์ ์ผ์ ๋ฐ์ดํฐ๋ฅผ ๋ฐ์์ค๋๋ฐ, OpenXR ํ์ค์ ์ฑํํจ์ผ๋ก์จ ๋จ์ผ ์ฝ๋๋ฒ ์ด์ค๋ก ์ฌ๋ฌ XR ๋๋ฐ์ด์ค์ ๋์ํ ์ ์์ต๋๋ค. ์ฆ, PICO ์ ์ฉ SDK๋ Oculus SDK ๊ฐ๊ฐ์ ์ฌ์ฉํ๋ ๋์ , OpenXR ํตํฉ์ผ๋ก ํธํ์ฑ๊ณผ ํ์คํ๋ฅผ ๋ฌ์ฑํ ๊ฒ์ ๋๋ค. Unity ๋ด์์๋ ๋คํธ์ํฌ ํจ๋ ๋ฑ์ ํตํด PC ์๋น์ค์์ ์ฐ๊ฒฐ(IP, ์ฐ๊ฒฐ ์ํ ๋ฑ)์ ์ค์ ํ๊ณ , ํธ๋ํน ํจ๋์์ ์ด๋ค ๋ฐ์ดํฐ๋ฅผ ์ ์กํ ์ง ์ ํํ ์ ์๊ฒ UI๊ฐ ๊ตฌ์ฑ๋์์ต๋๋ค. ๋ํ ์๊ฒฉ ๋น์ ํจ๋์ ํตํด ์์ ์คํธ๋ฆผ์ ์ํ๋ฅผ ๋ชจ๋ํฐ๋งํ๊ณ , ๋ฐ์ดํฐ ์์ง ํจ๋๋ก ๋ นํ ๊ธฐ๋ฅ๋ ์ ๊ณตํฉ๋๋ค. ์ด๋ฐ UI๋ค์ ๋ชจ๋ Unity ๊ธฐ๋ฐ์ผ๋ก ์ ์๋์ด ์ฌ์ฉ ํธ์์ฑ์ ๋์๊ณ , ๊ฐ๋ฐ์๊ฐ ํ์ ์ Unity ํ๋ก์ ํธ๋ฅผ ์์ ํ์ฌ ์๋ก์ด ๊ธฐ๋ฅ(์: ๋ค๋ฅธ ์นด๋ฉ๋ผ ์์ค ์ถ๊ฐ ๋ฑ)์ ๋ฐ์ํ ์ ์์ต๋๋ค.
- ROS (Robot Operating System): ์์ ์ธ๊ธํ๋ฏ XRoboToolkit์ ROS์๋ ์ฐ๊ณ๊ฐ ๊ฐ๋ฅํฉ๋๋ค. ROS1์
rospy/roscpp๋๋ ROS2์rclpy/rclcpp๋ฅผ ํตํด XRoboToolkit์ผ๋ก๋ถํฐ ๋ฐ์ ์ ์ด ๋ช ๋ น์ ๋ก๋ด ํ ํฝ์ผ๋ก ํผ๋ธ๋ฆฌ์ํ๊ฑฐ๋, ๋ฐ๋๋ก ๋ก๋ด ์ํ๋ฅผ ๊ตฌ๋ ํด ํผ๋๋ฐฑ์ผ๋ก ํ์ฉํ ์ ์์ต๋๋ค. ํนํ XRoboToolkit-Teleop-ROS2 ๋ชจ๋์ PICO XR ํค๋์ ์ ROS2 ๋คํธ์ํฌ์ ์ฐ๊ฒฐํ์ฌ, ์์ปจ๋/joyํ ํฝ์ฒ๋ผ ํค๋์ /์ปจํธ๋กค๋ฌ ๋ฐ์ดํฐ๋ฅผ ROS ๋ฉ์์ง๋ก ๋ณํํด์ฃผ๋ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค. ์ด๋ฅผ ์ด์ฉํ๋ฉด ๊ธฐ์กด ROS ๊ธฐ๋ฐ ์คํ์ ํฐ ๋ณ๊ฒฝ ์์ด XR ์๊ฒฉ์ ์ด ์ธํฐํ์ด์ค๋ฅผ ๋ง๋ถ์ผ ์ ์์ด, ๋ก๋ด ์ฐ๊ตฌ์๋ค์ด ์ต์ํ ROS ํ๊ฒฝ๊ณผ์ ํตํฉ์ด ์ฉ์ดํฉ๋๋ค. ๋ํ ROS ์ํ๊ณ์ ๋ค์ํ ์ผ์ ๋๋ผ์ด๋ฒ๋ ๋ชจ์ ํ๋๋ ํด๊ณผ ์กฐํฉํ์ฌ, XRoboToolkit์ ์๊ฒฉ ์กฐ์ + ์์จ ํ์ด๋ธ๋ฆฌ๋ ์์คํ ์ผ๋ก ํ์ฅํ ์๋ ์์ต๋๋ค (์: ์ฌ๋์ด XR๋ก ์กฐ์ํ๋ค๊ฐ ROS ์์จ์ฃผํ์ผ๋ก ์ ํ ๋ฑ). - WebRTC ๋ฐ ๋คํธ์ํฌ ์คํธ๋ฆฌ๋ฐ: XRoboToolkit์ ์น ๊ธฐ์ (WebRTC)์ ์ ๋ฉด์ ๋ด์ธ์ฐ์ง ์์์ง๋ง, ๊ทผ๋ณธ์ ์ผ๋ก ์ค์๊ฐ ์๋ฐฉํฅ ๋ฏธ๋์ด ์คํธ๋ฆฌ๋ฐ์ ์ํํ๋ค๋ ์ ์์ WebRTC์ ์ ์ฌํ ๊ธฐ๋ฒ์ด ํ์ฉ๋ฉ๋๋ค. WebRTC๋ ์น๋ธ๋ผ์ฐ์ ์์ ์์/์ค๋์ค ์คํธ๋ฆผ์ ์ฃผ๊ณ ๋ฐ์ ๋ ํ์ค์ ์ผ๋ก ์ฐ์ด๋ P2P ํ๋กํ ์ฝ๋ก, ๋ฎ์ ์ง์ฐ๊ณผ ํจํท ์์ค ๋์์ด ๊ฐ์ ์ ๋๋ค. XRoboToolkit ๊ฐ๋ฐํ์ PC์ HMD ๊ฐ ๋คํธ์ํฌ ์ง์ฐ์ ์ต์ํํ๊ธฐ ์ํด ๋ก์ปฌ ๋คํธ์ํฌ P2P ์ฐ๊ฒฐ๊ณผ ํ๋์จ์ด ๊ฐ์ ์ธ์ฝ๋ฉ์ ์ฌ์ฉํ ์ปค์คํ ํ๋กํ ์ฝ์ ๋ง๋ค์์ผ๋ฉฐ, ๊ฒฐ๊ณผ์ ์ผ๋ก 100ms ์ดํ์ ์์ ์ง์ฐ ๋ฐ 1% ๋ฏธ๋ง์ ํจํท ์์ค์ ๋ฌ์ฑํ์ต๋๋ค. ๋ง์ฝ ์ฌ์ฉ์๊ฐ ์น ๋ธ๋ผ์ฐ์ ๊ธฐ๋ฐ์ ๋ทฐ์ด๋ฅผ ๋ง๋ค๊ณ ์ ํ๋ค๋ฉด, XRoboToolkit์ ์์ ์คํธ๋ฆผ์ WebRTC๋ก ๊ฒ์ดํธ์จ์ดํ์ฌ ์ก์ถํ๋ ๊ฒ๋ ๊ฐ๋ฅํ ๊ฒ์ ๋๋ค. ์ค์ ๋ก GitHub ์ ์ฅ์์๋ Jetson Orin์ฉ ์์ ์ก์ ๊ธฐ(XRoboToolkit-Orin-Video-Sender)๊ฐ ์กด์ฌํ๋๋ฐ, ์ด๋ NVIDIA Orin์์ ์นด๋ฉ๋ผ ์์์ ์ธ์ฝ๋ฉํ์ฌ ๋คํธ์ํฌ๋ก ๋ณด๋ด๋ ์ปดํฌ๋ํธ์ ๋๋ค. ์ด๋ฌํ ๋ชจ๋์ ํ์ฅํ๋ฉด ์น ๋์๋ณด๋๋ ์๊ฒฉ ๋ชจ๋ํฐ๋ง ํ์ด์ง์๋ XRoboToolkit์ ์ค์๊ฐ ์์์ ๋์ฐ๋ ๋ฑ, WebRTC๋ฅผ ํฌํจํ ๋ค์ํ ๋คํธ์ํฌ ํ๊ฒฝ์์ ์ฌ์ฌ์ฉํ ์ ์์ต๋๋ค.
๋ฉํฐํ๋ซํผ ์ง์ ๊ตฌ์กฐ
XRoboToolkit์ ํฌ๋ก์คํ๋ซํผ ์ง์์ ๋ ์ธก๋ฉด์ผ๋ก ๋ณผ ์ ์์ต๋๋ค: XR ํด๋ผ์ด์ธํธ ์ธก์ ํ๋ซํผ ๋ค๋ณํ์ ๋ก๋ด ์์คํ ์ธก์ ํ๊ฒฝ ๋ค์ํ์ ๋๋ค.
- XR ํด๋ผ์ด์ธํธ ์ธก ๋ฉํฐํ๋ซํผ: OpenXR ๊ธฐ๋ฐ Unity ํด๋ผ์ด์ธํธ๋ ์คํ ๋์ผ๋ก VR ํค๋์ (์๋๋ก์ด๋ ๊ธฐ๋ฐ) ๋ฟ๋ง ์๋๋ผ PC ๊ธฐ๋ฐ VR ํค๋์ (Windows)์๋ ์ด์ ๊ฐ๋ฅํฉ๋๋ค. ํ์ฌ ๊ณต์์ ์ผ๋ก PICO 4์ Meta Quest 3์์ ํ ์คํธ๋์์ผ๋, OpenXR์ ์ง์ํ๋ HTC Vive, Valve Index, Windows Mixed Reality ๋ฑ๋ ์ด๋ก ์ ์ผ๋ก ํธํ๋ฉ๋๋ค. Unity ํ๋ก์ ํธ๋ฅผ ๋ชจ๋ฐ์ผ(Android)๋ก ๋น๋ํ ์ง ๋ฐ์คํฌํฑ์ผ๋ก ๋น๋ํ ์ง๋ง ์ ํํ๋ฉด ๋๋ฏ๋ก, ํ๋์จ์ด ์ ์ฝ์์ ์์ ๋ก์ด XR ์ธํฐํ์ด์ค๋ฅผ ์ ๊ณตํ๋ ์ ์ ๋๋ค. ํํธ, WebXR๊ณผ ๊ฐ์ ๋ธ๋ผ์ฐ์ ๊ธฐ๋ฐ VR๋ ์ฌ์ฉํ์ง ์์๋๋ฐ, ์ด๋ ์์ ์ธ๊ธํ ๋๋ก ์ถ๊ฐ ์ง์ฐ๊ณผ ํธํ์ฑ ์ด์ ๋๋ฌธ์ ๋๋ค. ๋์ ๋ค์ดํฐ๋ธ ์ฑ ๋ฐฉ์์ ์ทจํ์ฌ, VR/AR HMD ๊ธฐ๊ธฐ์ ์ฑ๋ฅ์ ์ต๋ํ ํ์ฉํ๋ฉด์๋ ๋ค์ํ ๋๋ฐ์ด์ค์ ๋์ํ๋๋ก ํ์ต๋๋ค. ๊ฒฐ๊ณผ์ ์ผ๋ก XRoboToolkit์ ๋ชจ๋ฐ์ผ VR (์: PICO), ์ฝ์ํ VR (์: Quest), PC VR ๋ฑ XR ๋๋ฐ์ด์ค ํ๋ซํผ ์ ๋ฐ์ ํฌ๊ดํ๋ ์ ์ฐ์ฑ์ ๊ฐ์ถ์์ต๋๋ค.
- ๋ก๋ด PC ์ธก ๋ฉํฐํ๋ซํผ: ๋ก๋ด ์ ์ด์ ์์ ์ฒ๋ฆฌ๋ฅผ ๋ด๋นํ๋ PC ์๋น์ค/๋ก๋ด ๋ชจ๋์ Windows, Linux(x86), ์๋ฒ ๋๋ ๋ฆฌ๋ ์ค(Jetson Orin) ๋ฑ ์ฌ๋ฌ ํ๊ฒฝ์์ ๋์ํฉ๋๋ค . ์๋ฅผ ๋ค์ด ZED Mini ์นด๋ฉ๋ผ๋ Windows 11 ๋ฉํฑ์ ์ฐ๊ฒฐํด ์ฐ๊ธฐ๋ ํ๊ณ , Jetson Orin์ ์ฐ๊ฒฐํด ํค๋์ ๊ณผ ์ง์ ํต์ ์ํค๊ธฐ๋ ํ์ต๋๋ค. PICO 4 ํค๋์ ์์ฒด๋ ์๋๋ก์ด๋ OS์ด์ง๋ง ๊ฐ๋ ฅํ SoC๋ฅผ ๊ฐ์ถ ์ผ์ข ์ ์ปดํจํฐ์ด๋ฏ๋ก, ๊ฒฝ์ฐ์ ๋ฐ๋ผ PC ์์ด HMD๋ง์ผ๋ก ์๊ฒฉ์ ์ด๋ฅผ ๊ตฌ์ฑํ ์๋ ์์ต๋๋ค (PICO 4 โ PICO 4 ์คํธ๋ฆฌ๋ฐ ์๋๋ฆฌ์ค). ์ด๋ฌํ ๋ค์ํ ์กฐํฉ์ ์ง์ํ๋ ์ด์ ๋, XRoboToolkit์ด ๋คํธ์ํฌ ํ๋กํ ์ฝ๋ก ๋ชจ๋๋ค์ ๋์จํ๊ฒ ์ฐ๊ฒฐํ๊ณ ์๊ณ , ํ๋ซํผ ๋ ๋ฆฝ์ ์ธ ์ธ์ด(C++, Python)๋ก ์๋น์ค๋ฅผ ๊ตฌํํ๊ธฐ ๋๋ฌธ์ ๋๋ค. ๋ฐ๋ผ์ ๊ฐ๋ฐ์๋ ๋ ธํธ๋ถ-์์ดํ์ด ํ๊ฒฝ์ด๋ ๊ณ ์ ์ํฌ์คํ ์ด์ -์ด๋๋ท ํ๊ฒฝ์ด๋ , ํน์ ROS๊ฐ ๊ตฌ๋๋๋ ๋ก๋ด ์ปดํจํฐ๋ , ์๊ธฐ๊ฐ ์ฒํ ์กฐ๊ฑด์ ๋ง์ถฐ ์์คํ ์ ๊ตฌ์ฑํ๋ฉด ๋ฉ๋๋ค. ๋ ผ๋ฌธ์์ ์์๋ก ๋ ์ด์ค UR5 ํ + ๋ฅ๋ ์คํ ๋ ์ค ํค๋ ๋ฐ๋ชจ์ ๊ฒฝ์ฐ Windows PC๊ฐ ์ฌ์ฉ๋์๊ณ , ๋ชจ๋ฐ์ผ ๋งค๋ํฐ๋ ์ดํฐ Galaxea R1-Lite์ ๊ฒฝ์ฐ Jetson ๊ธฐ๋ฐ์ผ๋ก ๊ตฌ๋ํ ๊ฒ์ผ๋ก ๋ณด์ ๋๋ค. ๊ฒฐ๊ตญ XRoboToolkit์ HMD/PC ์กฐํฉ์ ์ ์ฐ์ฑ์ ๋์ด, ์ฐ๊ตฌ์ค ๋ฐ์คํฌํ๋ถํฐ ํ์ฅ ๋ก๋ด์ ์จ๋ณด๋ ์ปดํจํฐ๊น์ง ์์ฐ๋ฅด๋ ๋ฉํฐํ๋ซํผ ์๊ฒฉ์ ์ด ํ๋ ์์ํฌ๋ฅผ ์คํํ์ต๋๋ค.
์ํคํ ์ฒ ์ค๊ณ์ ๊ฐ์
XRoboToolkit์ ์ค๊ณ์๋ ๊ธฐ์กด ๋๋น ๋๋ณด์ด๋ ์ฅ์ ๋ค์ด ๋ค์ ์กด์ฌํฉ๋๋ค. ํต์ฌ ๊ฐ์ ์ ์ ๋ฆฌํ๋ฉด ๋ค์๊ณผ ๊ฐ์ต๋๋ค:
- ํ์คํ์ ๋ชจ๋ํ: OpenXR ๊ธฐ๋ฐ ์ธํฐํ์ด์ค ์ฑํ์ผ๋ก HMD/์ปจํธ๋กค๋ฌ ์ ๋ ฅ์ด ํ์คํ๋์ด, ์๋ก์ด XR ๊ธฐ๊ธฐ๋ ์ฝ๊ฒ ์ง์ ๊ฐ๋ฅํฉ๋๋ค. ๋ก๋ด ์ธก๋ Python/C++ ๋ชจ๋๋ก ์ถ์ํ๋์ด ๋ค์ํ ๋ก๋ด์ ํ๋ฌ๊ทธ์ธ ๋ฐฉ์์ผ๋ก ์ฐ๊ฒฐํ ์ ์์ต๋๋ค. ์ด๋ฐ ๋ชจ๋์ ์ํคํ ์ฒ ๋๋ถ์ ์์คํ ํตํฉ ๋ถ๋ด์ด ํฌ๊ฒ ๊ฒฝ๊ฐ๋ฉ๋๋ค.
- ์ ์ง์ฐ ์ฑ๋ฅ: ์ต์ ํ๋ ๋คํธ์ํฌ ํ๋กํ ์ฝ๊ณผ ํจ์จ์ ์ธ ๋น๋์ค ์ธ์ฝ๋ฉ/๋์ฝ๋ฉ ํ์ดํ๋ผ์ธ์ผ๋ก 100ms ์์ค์ ๋ฎ์ ์์ ์ง์ฐ์ ๋ฌ์ฑํ์ต๋๋ค. ์ด๋ ์๊ฒฉ ์กฐ์์ ์ฌ์ฉ์ ๋ฉ๋ฏธ ๊ฐ์์ ๋ฐ์์ฑ ํฅ์์ผ๋ก ์ด์ด์ ธ, ๋ฐ์ดํฐ ์์ง ํ์ง๊ณผ ์กฐ์ ์ฑ๊ณต๋ฅ ์ ๋์ฌ์ค๋๋ค. Open-TeleVision ๋๋น ์ฐ์ํ ์ง์ฐ ์ฑ๋ฅ์ ์ด๋ฅผ ์ ๋ณด์ฌ์ค๋๋ค (121ms โ 82ms ๊ฐ์).
- ํ๋ถํ ์ถ์ ๋ชจ๋ฌ๋ฆฌํฐ ์ง์: ๋จ์ํ ์ปจํธ๋กค๋ฌ 6-DoF ์ ๋ ฅ๋ฟ๋ง ์๋๋ผ ์๊ฐ๋ฝ ๊ด์ 26-DoF, ์ ์ 24-๊ด์ ๋ชจ์ ์บก์ฒ, ๋ณด์กฐ ๋ฌผ์ฒด ํธ๋์ปค ๋ฑ ๋ค์ํ ์ ๋ ฅ์ ๋์์ ์์ฉํฉ๋๋ค. ์ด๋ฅผ ํตํด ์ ๊ตํ ์กฐ์(์: ์๋์)๋ถํฐ ํด๋จธ๋ ธ์ด๋ ์ ์ฒด ์์ธ ์ ์ด๊น์ง ํญ๋๊ฒ ๋์ํ ์ ์์ด, ๋ณต์กํ ์ธ๊ฐ ๋์ ์์ฐ์ ์ ํฉํฉ๋๋ค.
- ์๋ฎฌ๋ ์ดํฐ ๋ฐ ์ค์ ๋ก๋ด ๋์ ์ง์: ํ๋์ ํ๋ ์์ํฌ๋ก ๋ฌผ๋ฆฌ ์๋ฎฌ๋ ์ด์ (MuJoCo)๊ณผ ์ค์ ๋ก๋ด ๋ชจ๋ ์ ์ดํ ์ ์์ต๋๋ค. ์ฐ๊ตฌ ๊ฐ๋ฐ ๋จ๊ณ์์ ์๋ฎฌ๋ ์ดํฐ๋ก ์คํํ๊ณ , ๊ณง๋ฐ๋ก ๊ฐ์ ์ฝ๋๋ก ์ค์ ๋ก๋ด์ ์ ์ฉํ๋ ์์ ์๋ฎฌ๋ ์ด์ -ํ์ค ํตํฉ ์ํฌํ๋ก์ฐ๊ฐ ๊ฐ๋ฅํด์ง๋๋ค. ์ด๋ ๊ฐ๋ฐ ์์ฐ์ฑ๊ณผ ์ฌํ์ฑ ํฅ์์ ๊ธฐ์ฌํฉ๋๋ค.
- ๋ฐ์ดํฐ ์์ง ์ต์ ํ: XRoboToolkit Unity ์ฑ์๋ ๋ฐ์ดํฐ ์์ง ํจ๋์ด ์์ด, ์๊ฒฉ์กฐ์ ์ค ๋ชจ์ ๋ฐ์ดํฐ(ํฌ์ฆ ํธ๋ํน ๋ก๊ทธ + ์คํ ๋ ์ค ์์)๋ฅผ ์๋์ผ๋ก ๋ก์ปฌ ์ ์ฅํ๊ณ ํ์์คํฌํ๋ก ์ธ๋ฑ์ฑํ ์ ์์ต๋๋ค. ๋๋ถ์ ์ฐ๊ตฌ์๊ฐ ๋ณ๋ ์คํฌ๋ฆฝํธ ์์ฑ ์์ด๋ ๋ฐ์ดํฐ์ ์ ์์ฝ๊ฒ ์ถ์ ํ ์ ์์ต๋๋ค. ๋ํ ์์ง๋ ์ๆผ ๋ฐ์ดํฐ๋ก ์ค์ VLA ๋ชจ๋ธ์ ํ์ธํ๋ํ ๊ฒฐ๊ณผ, 100% ์ฑ๊ณต๋ฅ ์ ์์จ ์ ์ฑ ์ ํ์ต์ํค๋ ๋ฑ ๋ฐ์ดํฐ ํ์ง์ ์ฐ์์ฑ์ ์ ์ฆํ์ต๋๋ค.
- ๊ฐ๋ฐ์ ์นํ์ฑ๊ณผ ์คํ์์ค: XRoboToolkit์ ๋ ผ๋ฌธ๊ณผ ํจ๊ป ์คํ์์ค๋ก ๊ณต๊ฐ๋์ด GitHub์์ SDK์ ์ํ ์ฝ๋๋ฅผ ์ ๊ณตํฉ๋๋ค. Unity ํด๋ผ์ด์ธํธ, C++ ์๋น์ค, Python ์ํ, ROS2 ํจํค์ง๊น์ง ๋ชจ๋ ์ ๊ทผ ๊ฐ๋ฅํ์ฌ, ๋ก๋ด๊ณตํ ์ฐ๊ตฌ์๋ค์ด ์์ ๋ค์ ํ๊ฒฝ์ ๋ง๊ฒ ์์ ๋ฐ ํ์ฅํ๊ธฐ์ ์ฉ์ดํฉ๋๋ค. ๋ํ Discord ์ปค๋ฎค๋ํฐ์ ๋ฌธ์๋ฅผ ํตํด ํ๋ฐํ ์ง์์ ๋ฐ์ ์ ์์ด, ์คํ ์ปค๋ฎค๋ํฐ ์ฃผ๋ ๋ฐ์ ๊ฐ๋ฅ์ฑ๋ ๋์ต๋๋ค.
ํ๊ณ์ ๋ฐ ๊ฐ์ ํ์ ์์
์๋ฒฝํด ๋ณด์ด๋ XRoboToolkit์๋ ๋ช ๊ฐ์ง ์ ํ์ฌํญ๊ณผ ํฅํ ๋ณด์์ด ํ์ํ ๋ถ๋ถ์ด ์กด์ฌํฉ๋๋ค:
- XR ๋๋ฐ์ด์ค ๊ฐ ์์ ํ ํธํ์ฑ ๋ฌธ์ : OpenXR๋ก ๋ง์ ๋ถ๋ถ ํ์คํํ์ง๋ง, ์ ์ ์ถ์ ์ ๊ฒฝ์ฐ ํ์ฌ PICO 4๊ฐ ์ ๊ณตํ๋ 24 ๊ด์ ๋ชจ๋ธ์ ์์กดํ๊ณ ์์ต๋๋ค. OpenXR์ ์์ง ์ ์ ๋ชจ๋ธ ํ์ค์ด ์์ด์ ๋ฐ์ํ ๋ฌธ์ ์ธ๋ฐ, ๋ง์ฝ ๋ค๋ฅธ HMD ์ ์กฐ์ฌ์ ์ ์ ์ถ์ ์คํ์ด ๋ค๋ฅด๋ฉด ๊ณง๋ฐ๋ก ํธํ๋์ง ์์ ์ ์์ต๋๋ค. ์ฆ, XR ๋๋ฐ์ด์ค๋ง๋ค Skeletal ๋ชจ๋ธ์ด ์์ดํ ์ ์ ํ ์์ ์์ ์ ์ฝ์ ๋๋ค.
- ํด๋จธ๋ ธ์ด๋ ๋ก๋ด์ ๋ํ ๊ฒ์ฆ ๋ถ์กฑ: ์ ์ ํธ๋ํน ๋ฐ์ดํฐ๋ฅผ ํด๋จธ๋ ธ์ด๋ ๋ก๋ด์ ๋งคํํ์ฌ ์๊ฒฉ์กฐ์ํ ์ฌ๋ก๋ ์์ง ์์ต๋๋ค. ์ฌ๋์ ์ ์ ๋์ โ ๋ก๋ด ๋ชจ์ ์ผ๋ก ๋ฆฌํ๊ฒํ ํ๋ ๊ฒ์ ์ถ๊ฐ์ ์ธ ๋ชจ์ ๋ณํ ์๊ณ ๋ฆฌ์ฆ๊ณผ ์์ ํ๊ฐ ํ์ํฉ๋๋ค. ํฅํ์์ผ ์ด ๋ถ๋ถ์ ๊ตฌํยท๊ฒ์ฆํ์ฌ ์ฌ๋ ํํ ๋ก๋ด์ XR ์๊ฒฉ์กฐ์๋ ๊ฐ๋ฅํด์ง ๊ฒ์ผ๋ก ๋ณด์ ๋๋ค.
- ์ ๋ฆฌํ๊ฒํ ์ ํ๊ณ: ํ์ฌ ํธ๋ ๋ฆฌํ๊ฒํ ๊ธฐ๋ฒ์ ๊ฐ ์๊ฐ๋ฝ ๊ด์ ์ด ๋ ๋ฆฝ์ ์ผ๋ก ์์ง์ธ๋ค๋ ์ ์ ๋ฅผ ๋ก๋๋ค. ํ์ง๋ง ์ค์ ๋ก๋ด ์(์: INSPIRE Hand ๋ฑ)์ ๋ค์์ ๊ด์ ์ด ๊ธฐ๊ณ์ ์ผ๋ก ์ฐ์ ๊ตฌ๋๋์ด ์์ง์์ด ๋ฌถ์ฌ์๋ underactuated ๊ตฌ์กฐ์ ๋๋ค. ์ด๋ฐ ๊ฒฝ์ฐ ํ ๋ฐฉ์์ ์ ํํ ๋์์ด ์ ๋๋ฉฐ, ๊ตฌ์ ์กฐ๊ฑด์ ๊ณ ๋ คํ ๋ฆฌํ๊ฒํ ์๊ณ ๋ฆฌ์ฆ ๊ฐ๋ฐ์ด ํ์ํฉ๋๋ค.
- ์๋ฎฌ๋ ์ดํฐ ์ง์ ๋ฒ์ ์ ํ: MuJoCo ์ด์ธ์ ์๋ฎฌ๋ ์ด์ ํ๋ซํผ(PyBullet, Gazebo, IsaacGym ๋ฑ)์ ์์ง XRoboToolkit์ ๊ธฐ๋ณธ ์ง์๋์ด ์์ง ์์ต๋๋ค. ๋ค์ํ ์๋ฎฌ๋ ์ดํฐ๋ฅผ ๋ค๋ฃจ๋ ํตํฉ ์ธํฐํ์ด์ค๊ฐ ์๋ค ๋ณด๋, ๊ฐ๊ฐ ๋ณ๋ ์ฐ๋ ์์ ์ ๊ฑฐ์ณ์ผ ํฉ๋๋ค. ๋คํํ ์คํ์์ค ํ๋ก์ ํธ์ธ Roboverse ๋ฑ์ ํตํด ์ฌ๋ฌ ์๋ฎฌ๋ ์ดํฐ๋ฅผ ์ถ์ํํ๋ ค๋ ์๋๊ฐ ์์ผ๋ฏ๋ก, ์ด๋ฅผ ์์ฉํ๋ฉด ๋ฉํฐ-์๋ฎฌ๋ ์ดํฐ ํธํ์ฑ์ด ํฅ์๋ ๊ฒ์ผ๋ก ๊ธฐ๋๋ฉ๋๋ค.
- ์ฌ์ฉ์ ๊ฒฝํ ์ธก๋ฉด: PICO 4 Ultra์ ๊ฒฝ์ฐ ์์ ํ์ง์ด๋ ์์ผ๊ฐ ์ธก๋ฉด์์ ZED Mini๋ณด๋ค ์ฐ์ํ๋ค๊ณ ํ์ง๋ง, ์์ง VR HMD์ ํด์๋๋ ๊ดํ ์ฑ๋ฅ ํ๊ณ๋ก ์ธํด ์ฅ์๊ฐ ์๊ฒฉ ์์ ์ ์๊ฐ์ ํผ๋ก๊ฐ ์์ ์ ์์ต๋๋ค. ๋ํ HMD๋ฅผ ๋จธ๋ฆฌ์ ์ฐ๋ ๋ถ๋ด ๋๋ฌธ์, ๋ ผ๋ฌธ์์ ์ ์ํ ๊ฒ์ฒ๋ผ ํค๋์ ์ ๋ชฉ์ ๊ฑธ๊ณ ์ปจํธ๋กค๋ฌ๋ง ์ฌ์ฉํ๋ ๋ณํ ์ฌ์ฉ๋ ๊ณ ๋ คํด์ผ ํฉ๋๋ค. ์ด๋ ์์คํ ์ ๋ฌธ์ ๊ฐ ์๋๋ผ ํ๋์จ์ด์ ํ๊ณ์ด์ง๋ง, ์ฅ์๊ฐ ํ ๋ ์ต์ ์ธ์ฒด๊ณตํ์ ๋ฌธ์ ๋ ์ถํ ํด๊ฒฐํด์ผ ์์ฑ๋ ๋์ ํ๋ ์์ํฌ๊ฐ ๋ ๊ฒ์ ๋๋ค.
๊ธฐ์กด ์๊ฒฉ์ ์ด ํ๋ ์์ํฌ์์ ๋น๊ต
XRoboToolkit์ด ์ ์ํ๋ ์ ๊ทผ๋ฒ์, ์์ ์๊ฐํ๋ ๋ค๋ฅธ ์๊ฒฉ์กฐ์ ํจ๋ฌ๋ค์๋ค๊ณผ ๋น๊ตํ๋ฉด ๋ค์๊ณผ ๊ฐ์ต๋๋ค:
- ํ๋์จ์ด ๋ฆฌ๋-ํ๋ก์ ๋ฐฉ์ vs. XRoboToolkit: ๋ฆฌ๋-ํ๋ก์๋ ์๋ฅผ ๋ค์ด ๋ง์คํฐ ๋ก๋ด ํ์ ์ธ๊ฐ์ด ์กฐ์ํ๋ฉด, ์๊ฒฉ ์ฌ๋ ์ด๋ธ ๋ก๋ด ํ์ด ๋๊ฐ์ด ๋ฐ๋ผํ๋ ํํ์ ๋๋ค. ์ง์ฐ์ด ๊ฑฐ์ ์๊ณ ๊ฐ๊ฐ ํผ๋๋ฐฑ(ํ ํฑ ๋ฑ)์ ์ฃผ๊ธฐ๋ ์ฉ์ดํ์ง๋ง, ๋ก๋ด ์ข ๋ฅ๋ณ๋ก ๋ง์ถค ์ค๊ณ๋ ๋ง์คํฐ ์ฅ์น๊ฐ ํ์ํฉ๋๋ค. ๋ฐ๋ฉด XRoboToolkit์ ์์ฉ HMD์ ์ปจํธ๋กค๋ฌ๋ง์ผ๋ก ๋ฒ์ฉ ์ธํฐํ์ด์ค๋ฅผ ์ ๊ณตํ๊ธฐ ๋๋ฌธ์ ํน์ ๋ก๋ด์ ๊ตญํ๋์ง ์๊ณ , ํ๋์ HMD ์ธํธ๋ก ์ฌ๋ฌ ๋ก๋ด์ ์กฐ์ข ํ ์ ์์ต๋๋ค. ๋น์ฉ ์ธก๋ฉด์์๋ ์ ๋ฌธ ํ๋์จ์ด ์์ด ๊ตฌํ ๊ฐ๋ฅํ๋ค๋ ์ฅ์ ์ด ์์ต๋๋ค. ๋ค๋ง ๋ฌผ๋ฆฌ์ 1:1 ๋์ ์ฅ์น๊ฐ ์์ผ๋ฏ๋ก ์ด๊ฐ ํผ๋๋ฐฑ ๋ถ์ฌ๋ ํ๊ณ์ผ ์ ์์ต๋๋ค.
- ์์ ์นด๋ฉ๋ผ+์กฐ์ด์คํฑ ํ ๋ ์ต vs. XRoboToolkit: ๊ธฐ์กด์ ํํ ์ฐ์ด๋ ๋ฐฉ์์ผ๋ก, ๋ก๋ด์ ๋ถ์ฐฉ๋ ์นด๋ฉ๋ผ ์์(2D)์ ๋ชจ๋ํฐ๋ก ๋ณด๋ฉด์ ํค๋ณด๋/์กฐ์ด์คํฑ์ผ๋ก ์๊ฒฉ ์กฐ์ข ํ๋ ์์คํ ์ด ์์ต๋๋ค. ์ด๋ ๊ธฐ์ ๊ตฌํ์ด ๊ฐ๋จํ๊ณ ๋คํธ์ํฌ ๋์ญ๋ ์ ๊ฒ ์ฐ์ง๋ง, ๊น์ด ์ ๋ณด ๋ถ์กฑ๊ณผ ๋ฎ์ ๋ชฐ์ ๊ฐ์ผ๋ก ์ ๋ฐ ์์ ์ ํ๊ณ๊ฐ ์์ต๋๋ค. XRoboToolkit์ ์คํ ๋ ์ค ๋น์ ๊ณผ VR ์ธํฐํ์ด์ค๋ ์ด๋ฌํ ๋จ์ ์ ํด์ํ์ฌ, ์ฌ์ฉ์๊ฐ ๋ง์น ํ์ฅ์ ์๋ ๊ฒ์ฒ๋ผ ์ ์ฒด๊ฐ ์๊ฒ ์ํฉ์ ์ธ์งํ๊ณ ์์ผ๋ก ์ง์ ๋ฌผ์ฒด๋ฅผ ๋ง์ง๋ ๋ฏํ ์กฐ์์ด ๊ฐ๋ฅํฉ๋๋ค. ๋ฐ๋ผ์ ๋ณต์กํ ์ฝ์ ์์ ์ด๋ ๋ฏธ์ธ ์กฐ์์์ ์ฑ๊ณต๋ฅ ๊ณผ ์๋๋ฅผ ๋์ผ ์ ์์์ ์คํ์ผ๋ก ๋ณด์ฌ์ฃผ์์ต๋๋ค (์ง๋ฆ 3mm ๋๋ผ์ด๋ฒ๋ฅผ 4mm ํ์ ๋ผ์ฐ๋ ์์ ์ 0.5mm ์ฌ์ ๋ก ์ํ ์ฑ๊ณต).
- ๊ธฐ์กด XR ๊ธฐ๋ฐ ์๊ฒฉ์ ์ด ์๋ฃจ์ vs. XRoboToolkit: ์ฐ๊ตฌ๊ณ์ ์ฐ์ ๊ณ์์๋ VR์ ํ์ฉํ ์๊ฒฉ์ ์ด ์ฐ๊ตฌ๋ค์ด ์์์ต๋๋ค. ๊ทธ๋ฌ๋ ๋ค์๋ Unity์ฉ ๊ฐ๋ณ HMD SDK(์: Oculus Integration)๋ WebXR์ ์ด์ฉํด ๊ตฌํ๋์ด ๋๋ฐ์ด์ค ์ข ์์ ์ด๊ณ ์ธ๋ถ ํ๋์ด ์ด๋ ค์ ์ต๋๋ค. Open-TeleVision ํ๋ก์ ํธ์ ๊ฒฝ์ฐ ๋ฅ๋ ์คํ ๋ ์ค ๋น์ ์ VR๋ก ์ ๊ณตํ๋ ์ฒด๊ณ๋ฅผ ์ ์ํ์ง๋ง, XRoboToolkit๊ณผ ๋น๊ตํด ๊ตฌํ์ ๋ณต์ก์ฑ์ด๋ ์ง์ฐ ๋ฉด์์ ์์ง ๋ถ์กฑํ๋ ๊ฒ์ผ๋ก ๋ณด์ ๋๋ค. XRoboToolkit์ ์ด๋ค๋ก๋ถํฐ ๊ตํ์ ์ป์ด, OpenXR+๋ค์ดํฐ๋ธ ์ฑ์ด๋ผ๋ ์ ํ๊ณผ ๋ชจ๋ ๊ตฌ์ฑ์์ ์ต์ ํ๋ฅผ ํตํด ํธํ์ฑ๊ณผ ์ฑ๋ฅ ๋ ๋ง๋ฆฌ ํ ๋ผ๋ฅผ ์ก์์ต๋๋ค. ๋ํ ์์ ํ๋ก์ ํธ๋ค์ด ๋ก๋ด ํน์ ์๋๋ฆฌ์ค(์: ํน์ ๊ณต์ ) ์์ฃผ์๋ค๋ฉด, XRoboToolkit์ ๋ฒ์ฉ ํ๋ ์์ํฌ๋ก์ ๋ค์ํ ์ ์ฉ ์์(๋์ผ ์, ๋ชจ๋ฐ์ผ ๋ก๋ด, ์ ์กฐ์ ๋ฑ)๋ฅผ ๋ณด์ฌ์ฃผ์ด ๋ฒ์ฉ์ฑ์ ์ ์ฆํ์์ต๋๋ค.
- ์์ฉ ์๊ฒฉ์ด์ฉ ์ ํ vs. XRoboToolkit: ํน์ ํ ์ฌ๋ผ์ Optimus ์กฐ์ข ์ด๋ ๊ธฐํ ์ฐ์ ์ฉ ์๋ฃจ์ ๊ณผ ๋น๊ตํด๋ณด๋ฉด, XRoboToolkit์ ์คํ์์ค์ด๊ณ ํ์ ๊ฒ์ฆ์ด ๋์๋ค๋ ์ ์์ ์ฐจ๋ณํ๋ฉ๋๋ค. ์์ฉ ์ ํ์ ํ์์ ์ด์ด์ ์ฐ๊ตฌ ํ์ฉ์ ์ ์ฝ์ด ์์ง๋ง, XRoboToolkit์ ์ปค๋ฎค๋ํฐ ์ฃผ๋ ๊ฐ๋ฐ๋ก ์๋ก์ด ๊ธฐ๋ฅ์ ๋น ๋ฅด๊ฒ ๋ฐ์๋ค์ด๊ณ , ์ฐ๊ตฌ์๋ค์ด ์ง์ ์ฝ๋ ๋ ๋ฒจ์์ ๊ฐ์ ์ ์ฐธ์ฌํ ์ ์์ต๋๋ค. ์ด๋ ํ์ -์ฐ์ ํ๋ ฅ์ด๋ ํ๋กํ ํ์ดํ ๊ด์ ์์ ํฐ ์ด์ ์ ๋๋ค.
๋ก๋ด๊ณตํ์ ๊ด์ ์ ํ์ฉ ๊ฐ๋ฅ์ฑ, ํ์ฅ์ฑ, ์ฐ๊ตฌ ๊ธฐํ
XRoboToolkit์ ๋ก๋ด๊ณตํ ์ฐ๊ตฌ์์ ๊ฐ๋ฐ์๋ค์๊ฒ ๋งค๋ ฅ์ ์ธ ๋๊ตฌ๋ก ๋ค๊ฐ์ฌ ์ ์์ต๋๋ค. ๋ช ๊ฐ์ง ํ์ฉ ์๋๋ฆฌ์ค์ ํ์ฅ ๊ฐ๋ฅ์ฑ์ ์ง์ด๋ณด๋ฉด:
- ๋๊ท๋ชจ ์์ฐ ๋ฐ์ดํฐ ์์ง ๋ฐ ํ์ต: ์ธ๊ฐ์ด VR๋ก ํธํ๊ฒ ๋ก๋ด์ ์กฐ์ํ๋ฉฐ ๋ฐ์ดํฐ๋ฅผ ๋ชจ์ ์ ์์ผ๋ฏ๋ก, ๊ธฐ์กด๋ณด๋ค ๋ฐฉ๋ํ ์์ฐ ๋ฐ์ดํฐ์ ์ ํ๋ณดํ๊ธฐ ์ฝ์ต๋๋ค. ํนํ ์ฌ๋ฌ ์ฌ๋์ด HMD๋ง ์ฐ๋ฉด ๋์ผํ ํ๊ฒฝ์์ ๋ฐ์ดํฐ๋ฅผ ๋ชจ์ ์ ์์ผ๋ฏ๋ก ํฌ๋ผ์ฐ๋์์ฑ ์๊ฒฉ์กฐ์๋ ๊ฐ๋ฅํ ๊ฒ์ ๋๋ค. ์ด๋ ๊ฒ ๋ชจ์ ๋ฐ์ดํฐ๋ก ๋ก๋ด ํ์ต(ๆจกๅฃๅญฆ็ฟ)์ ์งํํ๋ฉด, ์ฐ๊ตฌํ์ด ๋ ผ๋ฌธ์์ VLA ๋ชจ๋ธ ์ฑ๋ฅ ํฅ์์ ๋ณด์ธ ๊ฒ์ฒ๋ผ, ๋ณด๋ค ๊ฐ๊ฑดํ ์ ์ฑ ์ ์ป์ ์ ์์ต๋๋ค. ์ด๋ ๊ณง ๋ก๋ด์ ์์จ์ฑ ํฅ์๊ณผ ์ผ๋ฐํ ๋ฅ๋ ฅ ์ ๊ณ ๋ก ์ด์ด์ ธ, ๋ก๋ด ํ์ต ์ฐ๊ตฌ์ ๊ฐ์์ ๊ธฐ๋ํ ์ ์์ต๋๋ค.
- ์๋ก์ด ํด๋จธ๋ ธ์ด๋ ์กฐ์ ์ฐ๊ตฌ: XRoboToolkit์ ์ ์ ์ถ์ ๊ณผ VR ์ธํฐํ์ด์ค๋, ํด๋จธ๋ ธ์ด๋ ๋ก๋ด ์๊ฒฉ์กฐ์ ์ฐ๊ตฌ์ ์๋ก์ด ๊ธธ์ ์ด์ด์ค๋๋ค. ์๋ฅผ ๋ค์ด ์ธ๊ฐ์ด HMD์ ๋ชจ์ ์ํธ(๋๋ ๋ช ๊ฐ์ ํธ๋์ปค)๋ง์ผ๋ก ํด๋จธ๋ ธ์ด๋ ๋ก๋ด์ ์๊ฒฉ์ผ๋ก ์กฐ์ํ๋ฉฐ, ๋์์ ๋ก๋ด์ ์์ ์์์ VR๋ก ๋ณด๋ฉด์ ์๊ฒฉ ์๋ฌด ์ํ์ ์ฐ์ตํ ์ ์์ต๋๋ค. ์ด๋ฅผ ํตํด ํด๋จธ๋ ธ์ด๋์ ์ฌ๋ ๋์, ์ฐ์ฃผ ์๊ฒฉ ์์ ๋ฑ์ ์ฐ๊ตฌ์์ ์ฌ๋์ ๋ชจ์ ์ ์ผ๋ง๋ ๋ก๋ด์ ์ ํฌ์ํ ์ ์๋์ง, ์ฌ๋-๋ก๋ด ๊ณต๋์์ ์ ์ด๋ป๊ฒ ์ต์ ํํ ์ง ๋ฑ์ ์๋ก์ด ์คํ์ด ๊ฐ๋ฅํด์ง๋๋ค. ๋ํ ๊ถ๊ทน์ ์ผ๋ก๋ ์ ์ ํ ๋ ํ๋ ์ฆ์ค ๋ก๋ด ๊ฐ๋ฐ์๋ ๊ธฐ์ฌํ ์ ์์ต๋๋ค (ํฅํ ์ ์ ๋ฆฌํ๊ฒํ ๊ธฐ์ ์ด ์ถ๊ฐ๋๋ฉด).
- ํ๋ ๋ฐ ๋ค์ค ๋ก๋ด ํ ๋ ์ต: ํ๋์ XR ์ธํฐํ์ด์ค๋ก ์ฌ๋ฌ ๋ก๋ด์ ๋์์ ์ ์ดํ๊ฑฐ๋, ์ฌ๋ฌ ์ฌ์ฉ์๊ฐ ํ ๋ก๋ด์ ๊ณต๋ ์ ์ดํ๋ ํ๋ ํ ๋ ์ต ์ฐ๊ตฌ๋ ์๊ฐํด๋ณผ ์ ์์ต๋๋ค. XRoboToolkit์ ๋คํธ์ํฌ ๊ตฌ์กฐ์ด๋ฏ๋ก, ์ด๋ก ์ ์ผ๋ก ํ ๋ก๋ด์ ์ฌ๋ฌ HMD ์ฌ์ฉ์๋ฅผ ์ฐ๊ฒฐํ๊ฑฐ๋ ํ ์ฌ์ฉ์๊ฐ ์ฌ๋ฌ ๋ก๋ด์ ๋ช ๋ น ๋ธ๋ก๋์บ์คํธํ๋ ๊ฒ๋ ๊ฐ๋ฅํฉ๋๋ค. ์์ปจ๋ ํ ์ฌ๋์ ๋ชจ๋ฐ์ผ ๋ก๋ด์ ์ด์ ํ๊ณ ๋ค๋ฅธ ์ฌ๋์ ๋ก๋ด ํ์ ์กฐ์ํ๋ฉฐ, VR ์์์๋ ๊ฐ์ ๊ฐ์ ๊ณต๊ฐ์์ ํ์ ํ๋ ์์ ๋ฉํฐํ๋ ์ด ์๊ฒฉ ์์ ๋ ๋ฏธ๋์ ๊ตฌํํ ์ ์์ ๊ฒ์ ๋๋ค.
- ์ธ๊ฐ-๋ก๋ด ์ํธ์์ฉ(HRI) ์คํ ํ๋ซํผ: ์ฌ๋์ ์์ง์๊ณผ ์๋๊ฐ VR์ ํตํด ๋ก๋ด์ ์ ๋ฌ๋๊ณ , ๋ก๋ด์ ๋ฐ์์ ๋ค์ VR๋ก ํผ๋๋ฐฑ๋๋ ํ๋ฃจํ ์ธํฐํ์ด์ค๋ HRI ์ฐ๊ตฌ์๋ ํ์ฉ๋ ์ ์์ต๋๋ค. ์ฌ๋์ ์กฐ์ ํจํด, ํผ๋ก๋, ๋ชฐ์ ๊ฐ ๋ฑ์ ๋ฐ์ดํฐ๋ฅผ ์์งํ์ฌ ํ ๋ ํ๋ ์ฆ์ค UX๋ฅผ ๊ณ๋ํํ๊ฑฐ๋, ์์จ๋ก๋ด ๊ฐ์ ํ์ด๋ฐ ์ฐ๊ตฌ (shared autonomy) ๋ฑ์ ์ธ ์ ์์ต๋๋ค. ์ค์ ByteDance ์ฐ๊ตฌ์ง์ XRoboToolkit์ ํ์ฉํ ์์จ๋ณด์กฐ ํ ๋ ์ต ์ฐ๊ตฌ๋ ์งํํ์ฌ, VR ์กฐ์ ์ค ํน์ ์ฌ์ธํ ์๋์์ AI๊ฐ ๋์ ์ํํ๋๋ก ํ๋ ์คํ์ ์ ๋ณด์์ต๋๋ค (๋ ผ๋ฌธ Gallery์์ End-to-End Dexterous Arm-Hand VLA Policies ์ฌ๋ก).
- ๊ต์ก ๋ฐ ๊ธฐ์ ํ์ฐ: ๋ก๋ด๊ณตํ์ ๋ฐฐ์ฐ๋ ํ์๋ค์ด XRoboToolkit์ ํตํด, ๊ฐ๋น์ผ ๋ก๋ด ํ๋์จ์ด ์์ด๋ VR๋ก ๊ฐ์์ ๋ก๋ด์ ์ง์ ์กฐ์ข ํด๋ณผ ์ ์์ต๋๋ค. ์ด๋ฅผ ํตํด ๋ก๋ด ์ ์ด ๊ต์ก์ด๋ ํ ๋ ๋ก๋ณดํฑ์ค ๊ฒฝ์ง๋ํ ๋ฑ์ ํ์ฉํ์ฌ ๊ธฐ์ ํ์ฐ์ ์ด์งํ ์ ์์ต๋๋ค. ์คํ์์ค์ด๋ฏ๋ก ํ๊ต๋ ๊ธฐ๊ด์์ ์ปค์คํฐ๋ง์ด์งํ๊ธฐ๋ ์ฉ์ดํฉ๋๋ค.
์์ฝํ๋ฉด, XRoboToolkit์ ๋ฒ์ฉ์ฑ๊ณผ ํ์ฅ์ฑ์ ๊ฐ์ถ ํ ๋ ๋ก๋ณดํฑ์ค ํ๋ซํผ์ผ๋ก์, ์ฐ๊ตฌ์์๊ฒ๋ ์๋ก์ด ์คํ ๊ธฐํ๋ฅผ, ์์ง๋์ด์๊ฒ๋ ์ค์ฉ์ ์๋ฃจ์ ์ ์ ๊ณตํ ์ ์ฌ๋ ฅ์ด ํฝ๋๋ค.
์ ๋ฆฌ ๋ฐ ํฅํ ๋ฐ์ ๋ฐฉํฅ
XRoboToolkit์ ํฌ๋ก์คํ๋ซํผ XR ์๊ฒฉ์กฐ์ ํ๋ ์์ํฌ๋ก์ ํ ์์ ์ ๋ฌธ์ ๋ค์ ์๋น ๋ถ๋ถ ํด๊ฒฐํ ํ์ ์ ์ธ ์ฌ๋ก์ ๋๋ค. OpenXR ํ์ค์ ๊ธฐ๋ฐํ ํตํฉ ์ธํฐํ์ด์ค, ์ฌ๋์ ๋ค์ํ ์์ง์์ ๋ฐ์๋ค์ด๋ ๋ชจ๋ฌ๋ฆฌํฐ ์ง์, ๊ณ ์ฑ๋ฅ์ ์ ์ง์ฐ ์คํธ๋ฆฌ๋ฐ, ๊ทธ๋ฆฌ๊ณ ์ด๋ฅผ ๋ท๋ฐ์นจํ๋ ๋ชจ๋ํ ์ํคํ ์ฒ๋ฅผ ํตํด, ์ ๊ทผ์ฑ๊ณผ ํ์ฅ์ฑ์ ํฌ๊ฒ ํฅ์์์ผฐ์ต๋๋ค. ์ ์๋ค์ด ๋ค์ํ ์คํ์ ํตํด ์ ์ฆํ๋ฏ์ด, ์ด ํ๋ ์์ํฌ๋ฅผ ํตํด ์์ง๋ ๋ฐ์ดํฐ๋ ๋ก๋ด ํ์ต์ ๋ฐ๋ก ํ์ฉ๋ ์ ์์ ์ ๋๋ก ํ์ง๊ณผ ๋ค์์ฑ์ ํ๋ณดํ ์ ์์๊ณ , ์ฌ๋ฌ ํํ์ ๋ก๋ด์ ๋ฒ์ฉ์ ์ผ๋ก ์ ์ฉ๋จ์ ๋ณด์ฌ์ฃผ์์ต๋๋ค.
๋ฌผ๋ก ์์ง ๋จ์ ๊ณผ์ ๋ ์์ต๋๋ค. ํ์ค์ ๋ถ์ฌ๋ก ์ธํ ์ ์ ์ถ์ ๋ฐ์ดํฐ ํธํ ๋ฌธ์ , ๊ธฐ๊ณ์ ์ ์ฝ์ ๊ณ ๋ คํ ์๋์ ๋งคํ ๊ธฐ์ , ์ฌ๋ฌ ์๋ฎฌ๋ ์ดํฐ ์ง์ ๋ฑ์ด ๊ทธ ์์ ๋๋ค. ๋คํํ ์ ์๋ค์ ์ด๋ฌํ ํ๊ณ๋ฅผ ๋ช ํํ ์ธ์งํ๊ณ ์์ผ๋ฉฐ, OpenXR ํ์คํ ์์ ์ฐธ์ฌ๋ฅผ ํตํด XR ๋๋ฐ์ด์ค ๊ฐ ํธํ์ฑ ๊ฐํ๋ฅผ ์ถ์งํ๊ณ , ์ ๋ฐ ์ ์ ๋ฆฌํ๊ฒํ ์๊ณ ๋ฆฌ์ฆ ๊ฐ์ , Roboverse ๊ฐ์ ๋ฉํฐ-์๋ฎฌ๋ ์ดํฐ ์ง์ ๋ฑ์ ํฅํ ์ฐ๊ตฌ ๋ฐฉํฅ์ผ๋ก ์ ์ํ์ต๋๋ค. ๋ํ SII 2026 ํํ์ ์ฑํ๋ ๊ฒ์ ๊ณ๊ธฐ๋ก, ํ๊ณ์ ์ฐ์ ๊ณ์ ํญ๋์ ํผ๋๋ฐฑ๊ณผ ๊ธฐ์ฌ๋ฅผ ๋ฐ์ ๊พธ์คํ ์ ๊ทธ๋ ์ด๋๋ ๊ฒ์ผ๋ก ๊ธฐ๋๋ฉ๋๋ค.
๊ฒฐ๋ก ์ ์ผ๋ก, XRoboToolkit์ ๋ก๋ด๊ณตํ์๋ค์๊ฒ ๊ฐ๋ ฅํ XR ์ธํฐํ์ด์ค ๋๊ตฌ๋ฅผ ์ ๊ณตํ์ฌ, ์๊ฒฉ ๋ก๋ด ์กฐ์๊ณผ ๋ฐ์ดํฐ ์์ง์ ํ๋๋ฅผ ๋ฐ๊พธ๊ณ ์์ต๋๋ค. ์ด ํ๋ ์์ํฌ๋ฅผ ํตํด ์ฌ๋์ ๋ฅ์ํ ์กฐ์ ๋ฅ๋ ฅ์ ๊ฑฐ๋ฆฌ์ ํ๋ซํผ์ ํ๊ณ๋ฅผ ๋์ด ๋ก๋ด์๊ฒ ์ด์ํจ์ผ๋ก์จ, ํฅํ ๋ณด๋ค ๋๋ํ ๋ก๋ด๊ณผ ํจ์จ์ ์ธ ์ธ๊ฐ-๋ก๋ด ํ์ ์ ์คํํ๋ ๋ฐ๊ฑฐ๋ฆ์ด ๋ ๊ฒ์ ๋๋ค. ์์ผ๋ก ์ง์์ ์ธ ๊ฐ์ ๊ณผ ์ปค๋ฎค๋ํฐ ํ์ฅ์ ํตํด, XR-๋ก๋ณดํฑ์ค ์ตํฉ ์ฐ๊ตฌ์ ํ์ฑํ์ ์๊ฒฉ ๋ก๋ด์ ์ด ๊ธฐ์ ์ ์ฑ์์ ํฌ๊ฒ ๊ธฐ์ฌํ๊ธธ ๊ธฐ๋ํฉ๋๋ค.