๐Open Tech ๋ฆฌ๋ทฐ
- ๐ค OPEN TEACH๋ VR ํค๋์ (์: Meta Quest 3)์ ํ์ฉํ์ฌ ๋ค์ํ ๋ก๋ด(๋ค์ค ์๊ฐ๋ฝ ํธ๋, ์ํ, ๋ชจ๋ฐ์ผ ๋งค๋ํฐ๋ ์ดํฐ)์ ์ง๊ด์ ์ผ๋ก ์ ์ดํ๋ ์คํ ์์ค ๋ฒ์ฉ ํ ๋ ์คํผ๋ ์ด์ ์์คํ ์ ๋๋ค.
- ๐ก ์ด ์์คํ ์ ์ฌ์ฉ์์ ์์ฐ์ค๋ฌ์ด ์๋์์ ์ค์๊ฐ(์ต๋ 90Hz)์ผ๋ก ๋ก๋ด์ ์์ง์์ผ๋ก ๋ณํํ๋ฉฐ, ๊ธฐ์กด ํ ๋ ์คํผ๋ ์ด์ ํ๋ ์์ํฌ๋ณด๋ค ๋ฐ์ด๋ ์ฑ๋ฅ๊ณผ ์ ์ฑ ํ์ต์ ์ํ ๊ณ ํ์ง ๋ฐ์ดํฐ ์์ง ๋ฅ๋ ฅ์ ์ ์ฆํ์ต๋๋ค.
- ๐ ์์ ์คํ ์์ค์ธ OPEN TEACH๋ ์ ๋ ดํ ๋น์ฉ์ผ๋ก ๋ณต์กํ๊ณ ์ฅ๊ธฐ์ ์ธ ๋ก๋ด ์์ ์ ์ํํ ์ ์๊ฒ ํ์ฌ ๋ก๋ด ๊ณตํ ์ฐ๊ตฌ์ ์ ๊ทผ์ฑ๊ณผ ๋ฐ์ ์ ํฌ๊ฒ ์ด์งํฉ๋๋ค.
Brief Review
OPEN TEACH๋ ์ ๋ ดํ VR ํค๋์ (Meta Quest 3)์ ํ์ฉํ์ฌ ๋ก๋ด ์กฐ์์ ์ํ ๋ฒ์ฉ์ ์ด๊ณ ์ฌ์ฉ์ ์นํ์ ์ธ ์๊ฒฉ ์กฐ์ ์์คํ ์ ๋๋ค. ์ด ์์คํ ์ ์ฌ๋ฌ ๋ก๋ด ํ๊ณผ ์, ์ด๋ ์กฐ์(mobile manipulation)์ ์ง์ํ๋ฉฐ, ์บ๋ฆฌ๋ธ๋ ์ด์ ์ด ํ์ ์๊ณ , ์๋ฎฌ๋ ์ด์ ๋ฐ ์ค์ ํ๊ฒฝ ๋ชจ๋์์ ์๋ํฉ๋๋ค.
ํต์ฌ ๋ฐฉ๋ฒ๋ก ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค:
- ๊ฐ์ ํ๊ฒฝ ์ค์ (Placing an Operator in a Virtual World):
- $500 ์๋น์ Meta Quest 3 VR ํค๋์ ์ ์ฌ์ฉํ์ฌ ์ฌ์ฉ์๋ฅผ ๊ฐ์ ์ธ๊ณ์ ๋ชฐ์ ์ํต๋๋ค.
- ํค๋์ ์ 2064 ร 2208 ํด์๋์ 90Hz ์ฃผ์ฌ์จ๋ก ๊ฐ์ ํ๊ฒฝ์ ์ ๊ณตํฉ๋๋ค.
- Quest 3์ ํ ์ปฌ๋ฌ ํจ์ค์ค๋ฃจ(full-color passthrough) ๊ธฐ๋ฅ์ ํตํด ์ฌ์ฉ์๋ ์๊ฒฉ ์กฐ์ ์ค ๋ก๋ด ์ ์ ์ ์ง์ ๋ณผ ์ ์์ด ํธ์ํ๊ณ ์ง๊ด์ ์ธ ์กฐ์์ด ๊ฐ๋ฅํฉ๋๋ค.
- ๋ง์ถคํ ํผํฉ ํ์ค(mixed reality) ์ธ๊ณ๋ฅผ ์์ฑํ์ฌ ๋ก๋ด ์์คํ ๋ฐ ์ง๋จ ํจ๋์ VR ๋ด์์ ์๊ฐํํ ์ ์์ต๋๋ค.
- ์์ธ ์ถ์ (Pose Estimation):
- Quest 3์ ๋ด์ฅ๋ ํธ๋ ํฌ์ฆ ์ถ์ ๊ธฐ(hand pose estimator) [23]๋ฅผ ์ง์ ์ฌ์ฉํฉ๋๋ค. ์ด ์ถ์ ๊ธฐ๋ 2๊ฐ์ ๋จ์(monochrome) ์นด๋ฉ๋ผ๋ฅผ ์ด์ฉํ๋ฉฐ, ๋ด๋ถ์ ์ผ๋ก ์บ๋ฆฌ๋ธ๋ ์ด์ ๋์ด ์์ด ๋ณ๋์ ์บ๋ฆฌ๋ธ๋ ์ด์ ๋ฃจํด์ด ํ์ ์์ต๋๋ค.
- ์ค์๊ฐ์ผ๋ก 90Hz์ ๋์ ์ฃผํ์๋ก ์๊ณผ ์๋ชฉ์ ํฌ์ฆ๋ฅผ ์คํธ๋ฆฌ๋ฐํ์ฌ, ๋์ ์ ํ๋์ ์ฃผํ์๋ก ํฌ์ฆ ๋ฐ์ดํฐ๋ฅผ ์ป์ต๋๋ค.
- ์ธ๊ฐ-๋ก๋ด ํฌ์ฆ ๋ฆฌํ๊ฒํ
(Human to Robot Pose Retargeting):
- VR ํค๋์ ์์ ์ป์ ์ธ๊ฐ์ ์๋ชฉ ๋ฐ ์๊ฐ๋ฝ ๊ด์ ์์น ์ ๋ณด๋ฅผ ์ฌ์ฉํ์ฌ, ๋ค์ํ ๋ก๋ด ํํ์ ๋ง์ถฐ ์ธ๊ฐ์ ์ ํฌ์ฆ๋ฅผ ๋ก๋ด ํฌ์ฆ๋ก ๋งคํํ๋ ๋ํผ(wrapper)๋ฅผ ์ค๊ณํฉ๋๋ค.
- ๋ก๋ด ํ (Robot Arm): ์๋ชฉ ํคํฌ์ธํธ(keypoint)์ ๊ฒ์ง ๋ฐ ์๋ผ์๊ฐ๋ฝ ๋ํด(knuckle) ์ง์ ์ ์ฌ์ฉํ์ฌ 3D ์ขํ๊ณ๋ฅผ ์ค์ ํฉ๋๋ค. ์๋ชฉ ์์น๋ ๋ก๋ด ๋ง๋จ ํจ๊ณผ๊ธฐ(end-effector) ์์น์ ๋งคํ๋๊ณ , 3D ์ขํ๊ณ์ ์๊ฐ๋ณ ๋ณํ์ ๋ง๋จ ํจ๊ณผ๊ธฐ ๋ฐฉํฅ์ ๋ณํ์ ๋งคํ๋ฉ๋๋ค.
- ๋ก๋ด ์ (Robot Hand): ์ธ๊ฐ ์์ ๊ฐ๋ณ ๊ด์ ๊ฐ๋๋ฅผ ๋ก๋ด ์์ ํด๋น ๊ด์ ๊ฐ๋๋ก ์ง์ ๋ช ๋ นํฉ๋๋ค. ํนํ ์์ง์๊ฐ๋ฝ์ ๊ฒฝ์ฐ, Holo-Dex [4]์ ํ๊ณ๋ฅผ ๊ฐ์ ํ์ต๋๋ค. Holo-Dex๋ 3๊ฐ์ ๋ณ๋ ์์ญ์์ 2D ๋ฆฌํ๊ฒํ ์ ์ฌ์ฉํ์ฌ ๋จ๋ฆผ(jitters)๊ณผ ์ ์ฒด(stagnancy)๋ฅผ ์ ๋ฐํ๊ณ , ์์ง์๊ฐ๋ฝ ๋์ ๋์ด๊ฐ ๊ณ ์ ๋์ด ์์์ต๋๋ค. OPEN TEACH๋ ๋จ์ผ์ ๋์ 2D ์์ ๊ณต๊ฐ ์์ญ์ ์ฌ์ฉํ์ฌ ๋จ๋ฆผ ์์ด ์์ง์๊ฐ๋ฝ ๋์ ๋ฆฌํ๊ฒํ ํ๋ฉฐ, ์์ง์๊ฐ๋ฝ์ด ๊ฒฝ๊ณ๋ฅผ ๋ฒ์ด๋ ๊ฒฝ์ฐ ๊ฐ์ฅ ๊ฐ๊น์ด ๊ฒฝ๊ณ ๋ด ์ง์ ์ ์ฌ์ฉํฉ๋๋ค. ๋ํ, ์์ง์๊ฐ๋ฝ์ด ์๋ฐ๋ฅ์ ์์ง์ธ 2D ํ๋ฉด์ ๋ฐ๋ผ ์์ง์ผ ์ ์๋๋ก ํ์ฌ ์ธ๊ฐ ์์ง์๊ฐ๋ฝ ๋์ ๋์ด๋ฅผ ๋ก๋ด ์์ง์๊ฐ๋ฝ ๋์ ์ต๋/์ต์ ๋์ด ๊ฒฝ๊ณ์ ๋ฐ๋ผ ๋งคํํจ์ผ๋ก์จ 3D ์์ง์์ ๊ฐ๋ฅํ๊ฒ ํฉ๋๋ค.
- ๋ ์๊ฐ๋ฝ ๊ทธ๋ฆฌํผ (Two-fingered gripper): ์๋ผ์๊ฐ๋ฝ๊ณผ ์์ง์๊ฐ๋ฝ ์ฌ์ด์ ๊ผฌ์ง์(pinch) ๊ฑฐ๋ฆฌ๋ฅผ ๊ณ์ฐํ๊ณ ์๊ณ๊ฐ์ ์ค์ ํ์ฌ ๊ทธ๋ฆฌํผ์ ์ด๋ฆผ/๋ซํ์ ๊ฐ์งํ๋ฉฐ, ๊ผฌ์ง์ ๋๋ง๋ค ๊ทธ๋ฆฌํผ ์ํ๋ฅผ ํ ๊ธ(toggle)ํฉ๋๋ค.
- ๋ชจ๋ฐ์ผ ๋งค๋ํฐ๋ ์ดํฐ (Mobile manipulator): ๋ก๋ด ํ๊ณผ ๋์ผํ 3D ์ขํ๊ณ๋ฅผ ์ฌ์ฉํ์ฌ ์๋ชฉ ์์ง์์ ๋ชจ๋ฐ์ผ ๋ก๋ด์ ํ๋์ ๋งคํํฉ๋๋ค. ์๋ชฉ์ ์์ผ๋ก ์์ง์ด๋ฉด ๋ก๋ด ํ์ด ํ์ฅ๋๊ณ , ์์ง ์์ง์์ ๋ก๋ด์ ๋์ด๋ฅผ ์กฐ์ ํ๋ฉฐ, ์ธก๋ฉด ์์ง์์ ๋ฐํด๋ฅผ ์ ์ดํ์ฌ ๋ก๋ด์ ์์ผ๋ก ์ด๋์ํต๋๋ค. ์ธ๋ฑ์ค ํ๊ฑฐ์ ์์ง์๊ฐ๋ฝ ์ฌ์ด์ ๊ผฌ์ง์์ผ๋ก ๊ทธ๋ฆฌํผ๋ฅผ ์ ์ดํฉ๋๋ค.
- ๋ก๋ด ์ ์ด (Robot Control):
- ZeroMQ๋ฅผ ํตํ ๋ ธ๋ ๊ฐ ๋คํธ์ํน์ ์ฌ์ฉํ๋ฉฐ, ์๊ฒฉ ์กฐ์์ Detector, Keypoint Transformer, Operator, Controller, Visualizer์ 5๊ฐ์ง ๊ตฌ์ฑ ์์๋ก ๋๋ฉ๋๋ค.
- ๋น๋๊ธฐ์ ์ผ๋ก ROS [59] ํต์ ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํฉ๋๋ค.
- ๋ฆฌํ๊ฒํ ์ ์ฐจ์์ ๊ณ์ฐ๋ ๋ก๋ด ๊ด์ ์์น๋ฅผ ์ฌ์ฉํ์ฌ PD ์ปจํธ๋กค๋ฌ๊ฐ 300Hz ์ฃผํ์๋ก ๋ชฉํ ํ ํฌ๋ฅผ ์ถ๋ ฅํ๋ฉฐ, ์ ์ ์ํ ์ค์ฐจ๋ฅผ ์ํํ๊ธฐ ์ํด ์ค๋ ฅ ๋ณด์ ๋ชจ๋์ ํฌํจํฉ๋๋ค.
- Allegro Hand๋ 60Hz, xArm์ 90Hz, Franka Emika Panda ๋ฐ Kinova Jaco๋ 60Hz, Hello Stretch๋ 5Hz๋ก ์ ์ด๋ฉ๋๋ค. ์ด๋ฌํ ๊ณ ์ฃผํ ์๊ฒฉ ์กฐ์์ ์ค์๊ฐ ๋ก๋ด ์์ง์๊ณผ ์ฆ๊ฐ์ ์ธ ์ค๋ฅ ์์ ์ ๊ฐ๋ฅํ๊ฒ ํฉ๋๋ค.
- ์ผ์์ ์ง(pause) ๊ธฐ๋ฅ๊ณผ ์ ๋ฐ ์์ ์ ์ํ ํด์๋ ์กฐ์ (resolution adjustment) ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค.
OPEN TEACH๋ Franka, xArm, Jaco, Allegro, Hello Stretch์ ๊ฐ์ ๋ค์ํ ํ๋ซํผ์ ์ง์ํ๋ฉฐ, 38๊ฐ์ง ์์ ์ ๋ํ ๊ด๋ฒ์ํ ํ๊ฐ๋ฅผ ํตํด ์์คํ ์ ๋ค์ฉ์ฑ์ ์ ์ฆํ์ต๋๋ค. ์ฌ์ฉ์ ์ฐ๊ตฌ์์๋ AnyTeleop [47] ํ๋ ์์ํฌ๋ณด๋ค ์๊ฒฉ ์กฐ์ ๋ฅ๋ ฅ์์ ์๋นํ ๊ฐ์ ์ ๋ณด์์ผ๋ฉฐ, ์์ง๋ ๋ฐ์ดํฐ๋ 10๊ฐ์ง ์ ๊ตํ๊ณ ์ ์ด์ด ๋ง์ ์กฐ์ ์์ ์์ ์ ์ฑ ํ์ต(policy learning)๊ณผ ํธํ๋จ์ ์ ์ฆํ์ฌ ํ๊ท 86%์ ์ฑ๊ณต๋ฅ ์ ๋ฌ์ฑํ์ต๋๋ค. ์ ์ฒด ํ๋ก์ ํธ๋ ์คํ์์ค์ ๋๋ค.
Detail Review
Open Teach: ์ ์ฐํ ์๊ฒฉ์กฐ์ ์์คํ ์ฌ์ธต ๋ฆฌ๋ทฐ
์๋ก
Open Teach๋ ๊ฐ์ํ์ค(VR) ํค๋์ ์ ์ด์ฉํด ์ฌ์ฉ์๋ฅผ ํผํฉํ์ค ํ๊ฒฝ์ ๋ฐฐ์นํจ์ผ๋ก์จ ์ง๊ด์ ์ธ ๋ก๋ด ์๊ฒฉ์กฐ์์ ๊ฐ๋ฅํ๊ฒ ํ๋ ํ๋ ์์ํฌ์ด๋ค. Meta Quest 3 ๊ฐ์ ์ ๋น์ฉ VR ๊ธฐ๊ธฐ(์ฝ $500)๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๊ตฌ์ถ๋ Open Teach๋ ๋ค์ค ์๊ฐ๋ฝ ํธ๋, ์ํ ๋ก๋ด, ๋ชจ๋ฐ์ผ ๋งค๋ํฐ๋ ์ดํฐ ๋ฑ์ ์ค์๊ฐ(์ต๋ 90Hz)์ผ๋ก ์กฐ์ํ ์ ์์ผ๋ฉฐ, ์ฅ๋ฉด ์ ๊ฒฝ๊ณผ ๋ก๋ด์ ์นด๋ฉ๋ผ ์์์ ์๊ฐ์ ํผ๋๋ฐฑ์ผ๋ก ์ ๊ณตํ๋ค. ๋ ผ๋ฌธ์ ๋ฐ๋ฅด๋ฉด Open Teach๋ ์ด 38๊ฐ์ ๋ค์ํ ๊ณผ์ ๋ฅผ ํตํด ๋ค์์ ๋ก๋ด ํ๋ซํผ์์ ํ๊ฐ๋์๊ณ , AnyTeleop ๊ฐ์ ๊ธฐ์กด ๋ฒ์ฉ ์๊ฒฉ์กฐ์ ์์คํ ์ ๋นํด ์๋ก์ด ์ฌ์ฉ์๋ ์๊ฒฉ์กฐ์ ํจ์จ์ ์ ์๋ฏธํ๊ฒ ํฅ์์ํฌ ์ ์์์ ๋ณด์๋ค. ๋ํ ์์ง๋ ๋ฐ์ดํฐ๋ฅผ ํ์ฉํ ์ ์ฑ ํ์ต ์คํ์์ 10๊ฐ ๊ณผ์ ํ๊ท 86%์ ์ฑ๊ณต๋ฅ ์ ๋ณด์ด๋ฉฐ ๋ฐ์ดํฐ ํ์ง์ ๊ฒ์ฆํ์๋ค. ๋ณธ ๋ฆฌ๋ทฐ์์๋ Open Teach ์์คํ ์ ์ ์ฒด ๊ตฌ์กฐ์ ๊ตฌ์ฑ ์์(ํ ๋ ์คํผ๋ ์ด์ ์ธํฐํ์ด์ค, ๋ฐฑ์๋ ์๋ฒ, ๋ก๋ด ์ ์ด API ๋ฑ)๋ฅผ ์์ธํ ๋ถ์ํ๊ณ , Allegro Hand ํ๋ซํผ์ Open Teach๋ฅผ ์ ์ฉํ์ ๋์ ํธํ์ฑ ๋ฐ ๊ธฐ์ ์ ๊ณ ๋ ค์ฌํญ์ ๋ ผ์ํ๋ค.
๊ด๋ จ ์ฐ๊ตฌ
์๊ฒฉ์กฐ์(teleoperation)์ ์ธ๊ฐ ์กฐ์์๊ฐ ๋ก๋ด์ ์๊ฒฉ์ผ๋ก ์ ์ดํ๋ฉฐ ๋ฐ์ดํฐ๋ฅผ ์์งํ๊ฑฐ๋ ๊ณผ์ ์ ์ํํ๋ ์ค์ํ ์๋จ์ด๋ค. ๊ธฐ์กด์ ์๊ฒฉ์กฐ์ ์ฅ์น๋ก๋ ์กฐ์ด์คํฑ, ์คํ์ด์ค๋ง์ฐ์ค, VR ์ปจํธ๋กค๋ฌ, ์ด๋๋ณด์กฐ(kinesthetic) ๊ธฐ๋ฒ, ์ค๋งํธํฐ ์๊ฒฉ์กฐ์ ๋ฑ์ด ์๋ค. ์ด๋ฌํ ์ฅ์น๋ค์ ์ค์ ์ด ๊ฐ๋จํ๊ณ ๋น์ฉ์ด ์ ๋ ดํ์ง๋ง, ๋ณต์กํ ๋์์ ์ ํํ ์ํํ๊ธฐ ์ํด์๋ ์ฌ์ฉ์์ ์๋ จ๊ณผ ๋ฐ๋ณต์ ํธ๋ ์ด๋์ด ํ์ํ๋ค๋ ๋ฌธ์ ๊ฐ ์๋ค. ์๋ฅผ ๋ค์ด, ALOHA, GELLO, AirExo ๊ฐ์ ์ธ๊ณจ๊ฒฉ(์์์ค์ผ๋ ํค) ๊ธฐ๋ฐ ์์คํ ์ ์ธ๊ฐ ์กฐ์์๊ฐ ๋ก๋ด ์๊ณผ ์ด๋ํ์ ์ผ๋ก ๋ํ(isomorphic)์ธ ๋ณด์กฐ ์ฅ๋น๋ฅผ ์ฐฉ์ฉํ์ฌ ๋ก๋ด์ ์ง๊ด์ ์ผ๋ก ์ ์ดํ๋๋ก ์ค๊ณ๋์์ผ๋, ๊ฐ ๋ก๋ด๋ง๋ค ๋ณด์กฐ ๋ก๋ด์ด๋ ํ๋์จ์ด๊ฐ ํ์ํ๊ณ ์ด๊ธฐ ๊ตฌ์ถ ๋น์ฉ์ด ํฌ๋ฉฐ, ํน์ ๋ก๋ด ํํ์ ํนํ๋๋ค๋ ๋จ์ ์ ์ง๋๋ค. ํนํ ๊ณ ์ฐจ์ ์กฐ์ ํ๊ฒฝ์์๋ ์ผ์ ์ฅ๊ฐ(gloves)์ ์ฌ์ฉํ๊ฑฐ๋ ๋ค์์ ์นด๋ฉ๋ผ๋ก ๋ณด์ ์ ์ํํด์ผ ํ๊ณ , ์์ผ ๊ฐ๋ฆผ(occlusion) ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์๋ค.
์ด์ ๋ฌ๋ฆฌ ๋ค์ํ ๋ก๋ด ํ๋ซํผ์ ์ ์ฉ ๊ฐ๋ฅํ ๋ฒ์ฉ ํ๋ ์์ํฌ์ ๋ํ ์๋๋ ์์๋ค. AnyTeleop ๊ฐ์ ์์คํ ์ ๋ค์์ ๋ก๋ด ์๊ณผ ํธ๋๋ฅผ ์ง์ํ๋ ค ํ์ง๋ง, ๋น์ ๋ฌธ๊ฐ๊ฐ ์ฌ์ฉํ๊ธฐ์ ์ธํฐํ์ด์ค๊ฐ ๋ณต์กํ๊ฑฐ๋ ๊ฐ๋ณ ๋ก๋ด์ ์ ์ฝ์ ์์ ํ ํด์ํ์ง ๋ชปํ๋ค. ๋ํ, ์ด์ ์ฐ๊ตฌ๋ค์ ๋๊ฐ ์์ ์ฉ VR ํค๋์ ์ด๋ ๋ง์ปค ๊ธฐ๋ฐ ์ธ๊ณจ๊ฒฉ, ์ธก๋ฐฉ์(kinect) ํธ๋ํน ๋ฑ ํน์ ์ ๋ ฅ ์ฅ์น์ ๋ก๋ด ์กฐํฉ์ ์์กดํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์๋ค. ์ด์ ๋น๊ตํ์ฌ Open Teach๋ ๊ต์ (calibration) ์์ด ๋ค์ํ ๋ก๋ด ํํ(์ํ ๋ก๋ด, ๋ค์ค ์๊ฐ๋ฝ ํธ๋, ๋ชจ๋ฐ์ผ ๋งค๋ํฐ๋ ์ดํฐ ๋ฑ)๋ฅผ ์ง์ํ๋ฉฐ, ๋ชจ๋ ๊ตฌ์ฑ ์์๋ฅผ ์คํ์์ค๋ก ๊ณต๊ฐํ ์ ์ด ํน์ง์ด๋ค.
์์คํ ์ค๊ณ
Open Teach๋ ํฌ๊ฒ ํ ๋ ์คํผ๋ ์ด์ ์ธํฐํ์ด์ค(VR ์ ํ๋ฆฌ์ผ์ด์ ), ํธ๋ ํฌ์ฆ ์ถ์ ๋ฐ ๋ฆฌํ๊ฒํ ๋ชจ๋, ๋ก๋ด ์ ์ด ๋ชจ๋(๋ฐฑ์๋)๋ก ๊ตฌ์ฑ๋๋ค. ์ฌ์ฉ์๋ Meta Quest 3 ํค๋์ ์ ์ฐฉ์ฉํ๊ณ ๋ก๋ด ํ๊ฒฝ์ 3D ํผํฉํ์ค๋ก ๊ฒฝํํ๋ฉฐ, ์จ๋ณด๋์ ์ ์ถ์ ๊ธฐ๋ฅ์ผ๋ก ์ ์ ์ค์ฒ๋ฅผ ์ด์ฉํด ๋ก๋ด์ ์กฐ์ํ๋ค. ์์คํ ์ ์ฒด ์ํคํ ์ฒ๋ ํฌ๊ฒ ์ฌ์ฉ์-์๋ฒ-๋ก๋ด์ ํ์ดํ๋ผ์ธ์ผ๋ก ๋๋๋ฉฐ, ๊ฐ ๋จ๊ณ์ ๊ตฌ์ฑ ์์๊ฐ ์ ๊ธฐ์ ์ผ๋ก ์ฐ๊ฒฐ๋๋ค.
VR ํ ๋ ์คํผ๋ ์ด์ ์ธํฐํ์ด์ค: Meta Quest 3 ํค๋์ ์ ์ปฌ๋ฌ ํจ์ค์ค๋ฃจ(color passthrough) ๊ธฐ๋ฅ์ ์ ๊ณตํ์ฌ ์ฌ์ฉ์๊ฐ ์ค์ ๋ก๋ด ํ๊ฒฝ์ ์ฌ์ค์ ์ผ๋ก ๋ณผ ์ ์๋๋ก ํ๋ค. ๋์ ํด์๋์ 90Hz์ ์ฃผ์ฌ์จ์ ๋ชฐ์ ๊ฐ์ ๋์ด๋ฉฐ, Unity ๊ธฐ๋ฐ VR ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ก๋ด ์ฅ๋ฉด๊ณผ ์ง๋จ ํจ๋(์ํํ์๊ธฐ, ์นด๋ฉ๋ผ ๋ทฐ ๋ฑ)์ ํผํฉ ํ์ค์ ์๊ฐํํ๋ค. ์ฌ์ฉ์๋ ์์ ์์ง์ด๊ณ ์ง๊ฒ ์ฅ๊ธฐ์ ๊ฐ์ ์ ์ค์ฒ๋ฅผ ์ํํ์ฌ ๋ก๋ด ์ ์ด ๋ช ๋ น์ ๋ฐํํ๊ฒ ๋๋ค. ์ด๋ Meta Quest 3 ํค๋์ ์ ๋ด์ฅ ์ ์ถ์ (hand-pose estimation) ๋ชจ๋์ ์ฌ์ฉํ์ฌ ์ฝ 90Hz ์๋๋ก ์ฌ๋์ ์ ๊ด์ ์์น์ ์์ธ๋ฅผ ๊ฒ์ถํ๋ค. ์ด ๋ชจ๋์ ๋ ๊ฐ์ ํ๋ฐฑ ์นด๋ฉ๋ผ๋ฅผ ์ด์ฉํ๋ฉฐ ๋จ์ผ RGB ์นด๋ฉ๋ผ ๋๋น ์๊ฐ๋ฝ ๊ฐ์ญ(occlusion)์๋ ๋น๊ต์ ๊ฐ๊ฑดํ๊ณ , ๋ด๋ถ ๊ต์ ์ด ๋์ด ์์ด ๋ณ๋์ ์บ๋ฆฌ๋ธ๋ ์ด์ ๊ณผ์ ์ด ํ์์๋ค.
ํธ๋ ํฌ์ฆ ๋ฆฌํ๊ฒํ (Human-to-Robot Mapping): VR ํค๋์ ์ผ๋ก๋ถํฐ ์ป์ ์ธ๊ฐ ์์ ๊ด์ ํฌ์ฆ ์ ๋ณด๋ฅผ ๋ก๋ด์ ์กฐ์ธํธ ๋ช ๋ น์ผ๋ก ๋ณํ(retargeting)ํ๋ ์์ ์ด ํต์ฌ์ด๋ค. Open Teach์์๋ ๋ชจ๋ํ๋ ๋ํผ(wrapper) ํํ๋ก ๋ฆฌํ๊ฒํ ๋ฃฐ์ ์ ์ํ๋ฉฐ, ๋ก๋ด ํํ์ ๋ฐ๋ผ ์ ์ฐํ๊ฒ ์กฐ์ํ ์ ์๋ค. ์๋ฅผ ๋ค์ด, ๋ก๋ด ์์ ๊ฒฝ์ฐ ํด๋จผ ์์ ์๋ชฉ(wrist) ์์น์ ๊ฒ์ง/์๋ผ์๊ฐ๋ฝ ๊ด์ (knuckle) ์์น๋ฅผ ์ด์ฉํด ์ธ๊ฐ ์๋ฐ๋ฅ ๊ธฐ์ค ์ขํ๊ณ๋ฅผ ์ ์ํ๊ณ , ์๋ชฉ ์์น ๋ณํ๋ก ๋ก๋ด ์๋์ดํํฐ(end-effector)์ ์์น๋ฅผ ๋งคํํ๋ค. ๋ฐฉํฅ ๋ณํ ๋ํ ์๋ฐ๋ฅ ํ๋ฉด ์ขํ๊ณ์ ๋ณํ์ ๋ก๋ด ์๋์ดํํฐ ํ์ ์ ๋์์ํจ๋ค.
๋ก๋ด ํธ๋(๋ค์์ ์๊ฐ๋ฝ์ ์ง๋ ๋ก๋ด ์)์ ๊ฒฝ์ฐ, ์ธ๊ฐ ์ ๊ด์ ๊ฐ๋๋ฅผ ๋ก๋ด ์ ๊ด์ ๊ฐ๋๋ก 1:1 ๋์์ํค๋ ์์ง์๊ฐ๋ฝ์ ํน์ ์ฒ๋ฆฌํ๋ค. ๋ค๋ฅธ ์๊ฐ๋ฝ์ ๊ด์ ๊ฐ์ ์ผ๋์ผ๋ก ๋ช ๋ นํ๋, ์์ง๋ ๋จ์ ๋์๋ง์ผ๋ก๋ ์ด์ํ๊ฑฐ๋ ๋ถ๊ฐ๋ฅํ ์์ธ๊ฐ ์๊ธด๋ค. Open Teach๋ ์ด์ ์ฐ๊ตฌ์ธ Holo-Dex์ ์์ง ๋ฆฌํ๊ฒํ ๋ฐฉ์์ ๊ฐ์ ํ์ฌ, ์ธ๊ฐ ์์ง ๋๋ ์ขํ๋ฅผ ๋ก๋ด ์์ง ํ๋ฉด์์ผ๋ก ํฌ์ํ ๋ค ์ญ์ด๋ํ์ผ๋ก ๊ด์ ์ ๊ณ์ฐํ๋ค. ํนํ Open Teach๋ ์์ง์๊ฐ๋ฝ์ ์ ์ฒด ์์ ๊ณต๊ฐ(workspace)์ ์์ฐ๋ฅด๋ ๋จ์ผ ๋ณํ ์์ญ์ ์ฌ์ฉํ์ฌ, ์๊ฐ๋ฝ์ด ์์ญ ๋ฐ์ ๋ฒ์ด๋๋ ๊ฐ๊น์ด ๊ฒฝ๊ณ์ ์ผ๋ก ์์ ์ ์ผ๋ก ๋์ด๋น๊ฒจ ๋งคํํ๋๋ก ํ์ฌ ๋ชจ์ ์ ๋๊น์ ์ค์๋ค. Allegro Hand์ ๊ฒฝ์ฐ ๋ ผ๋ฌธ์์ ์ธ๊ธ๋ ๊ฒ์ฒ๋ผ ๋ก๋ด์ด ์๋ผ์๊ฐ๋ฝ(pinky)์ ์ง์ํ์ง ์์ผ๋ฏ๋ก ์ธ๊ฐ ์์ ์๋ผ์๊ฐ๋ฝ ๊ด์ ์ ๋ณด๋ ๋ฌด์ํ๊ณ ๋งคํํ๋ค. ์ด์ฒ๋ผ ์ ์ฐํ ๋ฆฌํ๊ฒํ ์ค๊ณ๋ฅผ ํตํด ์ฌ์ฉ์๋ ๊ฐ ๋ก๋ด ํํ์ ๋ง์ถ ๋งคํ ํจ์๋ฅผ ์์ฝ๊ฒ ์ ์ํ ์ ์๋ค.
๋ํ ์๊ฐ๋ฝ์ ์ฌ์ฉํ์ง ์๋ 2-ํ์ฒ(two-fingered) ๊ทธ๋ฆฌํผ์ ๊ฐํ๋ ์ธ๊ฐ์ ์์ง์ ์๋ผ์๊ฐ๋ฝ ์ฌ์ด์ ํ์น(pinch) ๋์์ ์ด์ฉํด ์ ์ดํ๋ค. ์์ง์ ์๋ผ์๊ฐ๋ฝ ๋ ์ฌ์ด ๊ฑฐ๋ฆฌ๊ฐ ํน์ ์๊ณ๊ฐ ์ดํ๋ฉด ๊ทธ๋ฆฌํผ๋ฅผ ํ ๊ธ(toggle)์์ผ๋ก ์ด๊ณ ๋ซ๋๋ค. ๋ชจ๋ฐ์ผ ๋งค๋ํฐ๋ ์ดํฐ์ ๊ฒฝ์ฐ ์ธ๊ฐ์ ์๋ชฉ ์์ง์์ ๋ก๋ด ๋ฒ ์ด์ค์ ์์ ๋์์ผ๋ก ๋ณํํ๋ค. ์๋ชฉ์ ์ ์ง์ํค๋ฉด ๋ก๋ด ์์ด ์์ผ๋ก ๋ป๊ณ , ์/ํ ์ด๋์ ๋ก๋ด์ ๋์ด๋ฅผ ์กฐ์ ํ๋ฉฐ, ์ข์ฐ ์์ง์์ ๋ก๋ด์ ์ฃผํ์ผ๋ก ๋ณํ๋๋ค. ์ด ๊ณผ์ ์์๋ ์๋ชฉ ์ขํ๊ณ์ 3์ฐจ์ ๋ณํ์ ๋ก๋ด ์๋์ดํํฐ์ ์ด๋ยทํ์ ์ผ๋ก ๋์์ํจ๋ค. 2-ํ์ฒ์ ๊ฐํ๋ ์ญ์ ์๊ฐ๋ฝ ํ์น๋ก ์กฐ์ํ๋ค.
- ์ ์ด ๋ฐฑ์๋(Backend & ๋ก๋ด API): ๋ฆฌํ๊ฒํ
๋ ๋ก๋ด ๋ชฉํ ์์ธ๋ ๋ก๋ด ์ ์ด ๋ชจ๋๋ก ์ ๋ฌ๋๋ค. ์ ์ฒด ํต์ ์ ZeroMQ(ZMQ) ์์ผ๊ณผ ROS๋ฅผ ํตํด ์ด๋ค์ง๋ฉฐ, ๊ทธ๋ฆผ์ผ๋ก ์ ๋ฆฌํ๋ฉด โ๋ฐ์ดํฐ ์์ง๊ธฐ(Detector) โ ํคํฌ์ธํธ ๋ณํ๊ธฐ(Keypoint Transformer) โ ์คํผ๋ ์ดํฐ(Operator) โ ์ปจํธ๋กค๋ฌ(Controller) โ ๋ก๋ดโ์ ์์๋ก ๋์ํ๋ค. ๊ฐ ๋จ๊ณ์ ์ญํ ์ ๋ค์๊ณผ ๊ฐ๋ค:
- Detector(๊ฐ์ง ๋ชจ๋): Meta Quest 3์์ ์ถ์ ๋ ์ธ๊ฐ ์ ๊ด์ ์ขํ๋ฅผ ๋ฐ์ ZMQ๋ฅผ ํตํด ์๋ฒ๋ก ๋ฐํํ๋ค.
- Keypoint Transformer(ํคํฌ์ธํธ ๋ณํ๊ธฐ): Detector๊ฐ ๋ณด๋ธ ์ธ๊ฐ ์ ํคํฌ์ธํธ๋ฅผ ๊ตฌ๋ ํ ๋ค, ์์ ์ ์ํ ๋ฆฌํ๊ฒํ ๋ฃฐ์ ๋ฐ๋ผ ๋ก๋ด ๋ชฉํ ์์ธ๋ก ๋ณํํ๋ค(์์ ๋ฆฌํ๊ฒํ ๋ก์ง ์ํ).
- Operator(์คํผ๋ ์ดํฐ): ํคํฌ์ธํธ ๋ณํ๊ธฐ๋ก๋ถํฐ ๋ฐ์ ๋ก๋ด ๋ชฉํ ์์ธ์ ํ์ฌ ๋ก๋ด ์ํ(์ผ์/์กฐ์ธํธ ์ํ)๋ฅผ ์ฌ์ฉํ์ฌ ์ต์ข ๋ช ๋ น(actions)์ ์ฐ์ถํ๋ค. ์๋ฅผ ๋ค์ด ๋ชฉํ ๊ด์ ๊ฐ๋์ ํ์ฌ ๊ฐ๋๋ฅผ ๋น๊ตํ์ฌ ์ ์ด ์ ๋ ฅ์ ๊ณ์ฐํ๋ค. ์ฐ์ฐ๋ ๋ช ๋ น์ ZMQ ์์ผ์ผ๋ก ๋ฐํ๋๋ค.
- Controller(์ปจํธ๋กค๋ฌ): Operator์ ์ถ๋ ฅ์ ๋ฐ์ ์ค์ ํ๊ฒฝ์์ ๋ก๋ด์ ๊ตฌ๋ํ๊ณ , ๋ก๋ด์ ์ต์ ์ํ(์กฐ์ธํธ ์์น, ์ผ์๊ฐ ๋ฑ)๋ฅผ ZMQ๋ฅผ ํตํด Operator์๊ฒ ํผ๋๋ฐฑํ๋ค. ์ค์ ๋ก Allegro ํธ๋์ xArm, Franka, Kinova Jaco ๋ฑ์ ๋ก๋ด๋ง๋ค ๋ณ๋์ ์ ์ด๊ธฐ๋ฅผ ์ฌ์ฉํ๋ค. ์๋ฅผ ๋ค์ด Franka๋ Deoxys ์ปจํธ๋กค๋ฌ, Jaco๋ ์ด์ ์ฐ๊ตฌ์์ ๊ณต๊ฐํ ์ปจํธ๋กค๋ฌ๋ฅผ ์ฌ์ฉํ๋ค.
- Visualizer(์๊ฐํ๊ธฐ): ๋ก๋ด ์ฅ์ฐฉ ์นด๋ฉ๋ผ๋ ์๋ฎฌ๋ ์ดํฐ์ RGB ์์์ ๊ตฌ๋ ํ์ฌ VR ์ ํ๋ฆฌ์ผ์ด์ ํ๋ฉด์ ํ์ํจ์ผ๋ก์จ ์ฌ์ฉ์๊ฐ ๋ก๋ด ๊ด์ ์ ์ค์๊ฐ ์์์ ๋ณผ ์ ์๊ฒ ํ๋ค.
- Data Collector(๋ฐ์ดํฐ ์์ง๊ธฐ): ๊ด์ ์ํ, ํฐ์น ์ผ์, RGB-D ์์ ๋ฑ ๊ฐ์ข ์ผ์ ๋ฐ ๋ก๋ด ์ ๋ณด๋ฅผ ๊ธฐ๋กํ์ฌ ํ์ต ๋ฐ์ดํฐ๋ก ์ ์ฅํ๋ค. ๊ฐ ๋ฐ์ดํฐ ์คํธ๋ฆผ์ ํ์์คํฌํ์ ๋ฐ๋ผ ๋๊ธฐํ๋๋ค.
์ด๋ฌํ ๊ตฌ์กฐ๋ก ์ธํด Open Teach๋ ๋ฎ์ ์ง์ฐ(latency)๊ณผ ๊ณ ์ฃผํ์ ์ ์ด(์ต๋ 90Hz)๋ก ๋ก๋ด์ ์ ์ดํ ์ ์๋ค. ํนํ Allegro ํธ๋์ ๊ฒฝ์ฐ ROS๋ฅผ ํตํด ๋น๋๊ธฐ(asynchronous) ์ ์ด๋ฅผ ์ํํ๋ฉฐ, ๋ฆฌํ๊ฒํ ๋ ๊ด์ ๊ฐ๋๋ฅผ PD(PD ๊ฒ์ธ ๊ธฐ๋ฐ) ์ปจํธ๋กค๋ฌ๋ก 300Hz์ ์๋๋ก ํ ํฌ๋ก ๋ณํํด ๊ตฌ๋ํ๋ค. PD ์ ์ด๊ธฐ์๋ ์ค๋ ฅ ๋ณด์(gravity compensation)์ ์ถ๊ฐํ์ฌ ๊ด์ ์ ์๊ตฌ์ค์ฐจ๋ฅผ ์ค์ธ๋ค. XArm ์์ ์ ์กฐ์ฌ ์ ๊ณต Python SDK๋ก, Franka Emika Panda๋ Deoxys ์ปจํธ๋กค๋ฌ๋ก, Kinova Jaco๋ ๊ณต๊ฐ๋ ์ปจํธ๋กค๋ฌ๋ก ๊ตฌ๋ํ๋ฉฐ, ๊ฐ๊ฐ ์ต๋ 90Hz, 60Hz ์์ค์ ์ ์ด ๋น๋๋ฅผ ์ฌ์ฉํ๋ค. Allegro ํธ๋๋ 60Hz๋ก ์คํธ๋ฆฌ๋ฐ๋๋ฉฐ, Hello Stretch ๋ก๋ด์ 5Hz๋ก ์ ์ดํ๋ค. ๋ํ Open Teach๋ ์ฌ์ฉ์๊ฐ ํ์ํ ๋ ์ฆ์ ์๊ฒฉ์กฐ์์ ์ผ์ ์ ์ง(pause)ํ๊ฑฐ๋ ํด์๋(resolution)๋ฅผ ์กฐ์ ํ ์ ์๋ ๊ธฐ๋ฅ์ ์ ๊ณตํ์ฌ ๊ณ ์ ๋ฐ ์์ ์ ์์ ์ฑ์ ๋์ธ๋ค(๋ถ๋ก์ ์์ธ ์ค๋ช ).
์ ์ฒด์ ์ผ๋ก Open Teach์ ์์คํ
์ํคํ
์ฒ๋ VR ์ธํฐํ์ด์ค - ์๋ฒ ์ฒ๋ฆฌ - ๋ก๋ด ์ ์ด์ 3๋จ๊ณ๋ก ๊ตฌ๋ถ๋๋ฉฐ, ๊ฐ ๊ตฌ์ฑ์์(์: Detector, Transformer, Operator, Controller ๋ฑ)๋ ๋คํธ์ํฌ ์์ผ์ผ๋ก ์ฐ๊ฒฐ๋์ด ์ค์๊ฐ ๋ฐ์ดํฐ์ ๋ช
๋ น์ ์ฃผ๊ณ ๋ฐ๋๋ค. Figure 2(์์ฝ ๊ทธ๋ฆผ)์ ์ฐธ๊ณ ํ๋ฉด, ์ฌ์ฉ์ ์ ํฌ์ฆ ๋ฐ์ดํฐ๊ฐ ๋ก๋ด ์๋ฒ๋ก ์ ์ก๋์ด ๋ฆฌํ๊ฒํ
๋ ๋ค ๋ก๋ด์ด ์ ์ด๋๋ฉฐ, ๊ทธ ๊ณผ์ ์์ ๋ก๋ด์ ์์์ด ๋ค์ VR ํ๋ฉด์ผ๋ก ์ ์ก๋๋ค.
์คํ
Open Teach์ ๋ค๋ชฉ์ ์ฑ(versatility)์ ํ๊ฐํ๊ธฐ ์ํด ๋ค์ํ ๋ก๋ด ๊ตฌ์ฑ์์ ์ด 6๊ฐ์ง ์ธํธ์ ์ผ๋ก ์คํ์ ์งํํ๋ค. ๋ค ๊ฐ์ง ์ค์ ํ๊ฒฝ์ ๋ค์๊ณผ ๊ฐ๋ค:
- Franka+Allegro(ํ๋์นด์+์๋ ๊ทธ๋ก ํธ๋): Franka Emika Panda ํ์ 16์์ ๋ Allegro Hand(์ด๊ฐ ์ผ์ Xela ํฌํจ)๋ฅผ ๊ฒฐํฉํ ์กฐํฉ.
- Kinova+Allegro(ํค๋ ธ๋ฐ์+์๋ ๊ทธ๋ก ํธ๋): Kinova Jaco ์์ Allegro Hand(Xela ํฌํจ)๋ฅผ ์ฅ์ฐฉํ ์กฐํฉ.
- ์ํ(Bimanual): ๋ ๋์ xArm7 ์์ผ๋ก ๊ตฌ์ฑ๋ ์ํ ๋ก๋ด(๊ฐ ์ ๋๋จ์๋ 2-ํ์ฒ ๊ทธ๋ฆฌํผ).
- Hello Stretch(์คํธ๋ ์น): ๋ชจ๋ฐ์ผ ๋งค๋ํฐ๋ ์ดํฐ์ธ Hello Stretch(ํ ๊ธฐ๋ฐ ์ด๋ ๋ก๋ด)์ 2-ํ์ฒ ๊ทธ๋ฆฌํผ๋ฅผ ์ฅ์ฐฉํ ๊ตฌ์ฑ.
๋ ๊ฐ์ง ์๋ฎฌ๋ ์ด์ ํ๊ฒฝ์:
- Allegro Sim: ๊ด์ฑํ๋(floating) Allegro Hand๋ง์ผ๋ก ๊ตฌ์ฑ๋ ์๋ฎฌ๋ ์ด์ .
- LIBERO Sim: Franka ์๊ณผ 2-ํ์ฒ ๊ทธ๋ฆฌํผ๋ก ๊ตฌ์ฑ๋๋ฉฐ ๋ค์ํ ์ฅ๋ฉด์์ ๊ฐ์ ์ฉ ์กฐ์ ๊ณผ์ ๋ฅผ ์ํํ๋ ์๋ฎฌ๋ ์ดํฐ(LIBERO ํ๊ฒฝ).
๊ฐ ์ธํธ์ ์์ ์ฌ์ฉ์๋ค์ VR ํค๋์ ์ ํตํด ๋ก๋ด์ ์๊ฒฉ์กฐ์ํ๋ฉฐ ์ด 38๊ฐ์ ๊ณผ์ (๋ฐ์ค ์ด๊ธฐ, ์คํฐ์ง ์ง๊ธฐ, ํ์ ๋ค์ง๊ธฐ ๋ฑ)๋ฅผ ์ํํ๋ค. ์๋ฅผ ๋ค์ด Franka-Allegro ๊ตฌ์ฑ์์๋ ์ ์์ ํ ๊ฐํ, ์ฌ์ ์ง๊ธฐ, ๋ด์ง ํ์ ๋ฑ์ ์์ ์ ์ํํ๋ค. ๊ฐ ์๋๋ฆฌ์ค๋ง๋ค ์นด๋ฉ๋ผ ์ผ์๋ฅผ ์ฌ์ฉํ์ฌ ๋ก๋ด์ ์์ ์์์ ์์งํ๊ณ , Allegro ํธ๋ ์ธํธ์ ์์๋ ์๊ฐ ๋ฐ์ดํฐ์ ํจ๊ป ์ด๊ฐ(Xela) ์ผ์ ๋ฐ์ดํฐ๋ ๊ธฐ๋ก๋์๋ค. ์ด๋ ๊ฒ ์์ง๋ ์๋ฎฌ๋ ์ด์ ๋ฐ ์ค์ ๋ฐ์ดํฐ๋ ์ดํ ํ๋ ํด๋ก๋(behavior cloning)๊ณผ ์ญ๊ฐํํ์ต(inverse RL)์ ์ํด ์ ์ฅ๋์๋ค.
์คํ์ ๋ชฉํ๋ (1) Open Teach์ ๋ค์ํ ๋ก๋ด ๊ตฌ์ฑ ์ง์ ๋ฒ์ ํ๊ฐ, (2) ์์ง ๋ฐ์ดํฐ๋ก ํ์ตํ ์ ์ฑ ์ ์ฑ๊ณต๋ฅ ๊ฒ์ฆ, (3) Open Teach๋ฅผ ํตํ ๋ณต์กยท์ฅ๊ธฐ ๊ณผ์ ์ํ ๊ฐ๋ฅ์ฑ ํ์ธ, (4) ์ ๊ท ์ฌ์ฉ์์ ์ง๊ด์ฑ ๊ฒ์ฆ์ด์๋ค. ํนํ Allegro Hand๊ฐ ํฌํจ๋ ์ธํธ์ (Franka-Allegro, Kinova-Allegro, Allegro Sim)์์๋ 16-DOF ๋ค์ง๋ฅ ์ ์กฐ์ ๋ฐ์ดํฐ์ ์์ง์ด ์ด๋ฃจ์ด์ก๊ณ , ์ด๋ ๊ณ ์ฐจ์ ์๊ฒฉ์กฐ์ ์ฑ๋ฅ ํ๊ฐ์ ์ค์ํ ๊ทผ๊ฑฐ๊ฐ ๋์๋ค.
๊ฒฐ๊ณผ
Open Teach๋ฅผ ํตํด ์์ง๋ ๋ฐ์ดํฐ์ ์ฌ์ฉ์ ํ๊ฐ ๊ฒฐ๊ณผ๋ ๋ค์๊ณผ ๊ฐ๋ค. ๋จผ์ ์์ง๋ ๋ฐ์ดํฐ์ ํ์ง์ ์ ์ฑ ํ์ต ์คํ์ ํตํด ๊ฒ์ฆ๋์๋ค. Frana-Allegro ๊ตฌ์ฑ์์๋ ์๊ฐ ๋ฐ ์ด๊ฐ ๋ฐ์ดํฐ๋ฅผ ์ด์ฉํด TAVI ์๊ณ ๋ฆฌ์ฆ์ผ๋ก ์ ์ฑ ์ ํ์ตํ์๊ณ , Allegro Sim์์๋ FISH(๋น์ ๊ธฐ๋ฐ) ๋ฐฉ์์ผ๋ก ํ์ตํ๋ค. ์ด๋ค ์ ์ฑ ์ 20๋ถ ์ด๋ด์ ํ์ต์ผ๋ก ํ๊ท 82%์ ์ฑ๊ณต๋ฅ ์ ๊ธฐ๋กํ๊ณ , LIBERO Sim์์๋ Behavior Cloning์ผ๋ก 93% ์ฑ๊ณต๋ฅ ์ ๋ณด์๋ค. ๊ฒฐ๊ณผ์ ์ผ๋ก ๋ชจ๋ ๋ก๋ด๊ณผ ๊ณผ์ ์ ๊ฑธ์ณ ํ๊ท 86%์ ์ฑ๊ณต๋ฅ ์ ๋ฌ์ฑํ์ฌ, Open Teach๋ก ์์ง๋ ๊ด์ธก ๋ฐ ํ๋ ๋ฐ์ดํฐ๊ฐ ์ ์ฑ ํ์ต์ ๋งค์ฐ ์ ํฉํจ์ ํ์ธํ๋ค.
์๊ฒฉ์กฐ์์ ํจ์จ์ฑ ๋ฐ ์ ํ๋๋ ์ฐ์ํจ์ ๋ณด์ฌ์ฃผ์๋ค. ์คํ ๊ฒฐ๊ณผ, ์ฌ์ฉ์๋ ๋ก๋ด๋ณ ์ ์ฉ ์๊ฒฉ์กฐ์ ์์คํ ๊ณผ ๋น๊ตํด ๊ฒฌ์ค ๋งํ ์๋๋ก ์กฐ์์ ์ํํ์๊ณ , AnyTeleop ๊ฐ์ ๋ฒ์ฉ ์์คํ ๋ณด๋ค ํจ์ฌ ๋น ๋ฅธ ์กฐ์ ์๋๋ฅผ ๋ฌ์ฑํ๋ค. ์๋ฅผ ๋ค์ด, ๊ณผ์ ์์ฐ ์๋๋ฅผ ์ดํด๋ณด๋ฉด Open Teach๋ ๋ก๋ด ์ ์ฉ์ฅ์น ๋ชป์ง์์ ์์ค์ผ๋ก ๋น ๋ฅด๊ฒ ์กฐ์ํ์ผ๋ฉฐ, AnyTeleop ๋๋น ์ ์ํ๊ฒ ๋์ ์๋๋ฅผ ๊ธฐ๋กํ๋ค.
์ฅ๊ธฐยท๋ณตํฉ ๊ณผ์ ์ํ ๋ฅ๋ ฅ๋ ๊ฒ์ฆ๋์๋ค. ๋ ผ๋ฌธ Fig.4์์๋ ๋ค์ํ ์ค์ ํ๊ฒฝ์์ USB ์ฝ์ , ๋ ธํธ๋ถ ์ฌ๋ซ๊ธฐ, ์ฐจ๊ฐ์ด ์กฐ๋ฆฌ๋๊ตฌ ๋ค๋ฃจ๊ธฐ ๋ฑ ์ ๋ฐ๋๊ฐ ์๊ตฌ๋๋ ์์ ๋ถํฐ ์ฅ๊ธฐ์ ์ธ ์กฐ์๊น์ง, 2-ํ์ฒ ๋ฐ ๋ค์๊ฐ๋ฝ ํธ๋ ๊ตฌ์ฑ ๋ชจ๋์์ Open Teach๊ฐ ์ฑ๊ณต์ ์ผ๋ก ์ํํ๋ ๋ชจ์ต์ด ์ ์๋์๋ค. ์ด๋ Open Teach๊ฐ ๊ณ ์ฐจ์ ์กฐ์์์๋ ์ฌ์ฉ์ ์ ๋ ฅ์ ์ ์ํ ๋ฐ์ํ์ฌ ๋ณต์กํ ์ฐ์ ๊ณผ์ ๋ฅผ ์ํํ ์ ์์์ ์๋ฏธํ๋ค.
์ฌ์ฉ์ ์ฐ๊ตฌ(user study) ๊ฒฐ๊ณผ๋ ๋์ ๋๋ค. 15๋ช ์ ์ ๊ท ์ฌ์ฉ์๋ฅผ ๋์์ผ๋ก Franka-Allegro ์ธํธ์ ์์ Holo-Dex, AnyTeleop, Open Teach๋ฅผ ๋น๊ต ์คํํ ๊ฒฐ๊ณผ, Open Teach ์ฌ์ฉ ์ ์ฑ๊ณต๋ฅ ์ด ๊ฐ์ฅ ๋๊ณ ๊ณผ์ ์๋ฃ ์๊ฐ๋ ๊ฐ์ฅ ์งง์๋ค. ํนํ ํ๋ธ ๋ค์ง๊ธฐ์ ํ์น ์ง๊ธฐ ๊ฐ์ ๊ณผ์ ์์ Open Teach๋ ๋ค๋ฅธ ๋ ์์คํ ๋๋น ์ฑ๊ณต๋ฅ ์ด ๋์๊ณ , ํ๊ท ๋ฏธ๋์ธ ์์ฑ์๊ฐ ๋ํ ์ ์ํ๊ฒ ๊ฐ์ํ๋ค. ์ ๊ท ์ฌ์ฉ์์ ์ฑ๋ฅ์ ์๋ จ์(์ ๋ฌธ๊ฐ)์ ๋นํด ์ฝ 76% ์ ๋์์ง๋ง, ์งง์ ์ฐ์ต๋ง์ผ๋ก๋ ์๋นํ ์ฑ๊ณผ๋ฅผ ๋๋ค. ์ด๋ Open Teach์ ์ธํฐํ์ด์ค๊ฐ ์ง๊ด์ ์ด๋ฉฐ, ๋ฐ๋ณต ํ์ต์ ํตํด ์ถ๊ฐ์ ์ธ ํฅ์์ด ๊ฐ๋ฅํจ์ ์์ฌํ๋ค.
๋ค๋ง ํ๊ณ์ ์ผ๋ก๋ VR ์ ์ถ์ ์ ์ ํ๋์ ๋ํ ์์กด์ฑ์ด ์ง์ ๋์๋ค. Oculus ๊ธฐ๋ฐ ์ถ์ ๊ธฐ๊ฐ ์๊ฐ๋ฝ์ ๊ฐ๋ฆฌ๋ฉด(occlusion) ์๋ชป ์ธ์ํ ์ ์๋๋ฐ, ์ด๋ก ์ธํด ๊ทธ๋ฆฌํผ๋ฅผ ์ฌ๋ซ๋ ๋์์ฒ๋ผ ์ ๋ฐํ ํ์น ์ ์ค์ฒ๊ฐ ์ด์ํด์ง๊ธฐ๋ ํ๋ค. ์ด๋ฌํ ๋ฌธ์ ๋ VR ์์ฒด์ ์ผ์ ํ๊ณ์์ ๊ธฐ์ธํ๋ฏ๋ก, ํฅํ ๋ ์ ๊ตํ ์ ์ถ์ ๊ธฐ์ ์ ๋์ ์ด ํ์ํ๋ค.
๊ฒฐ๋ก ๋ฐ Allegro Hand ์ ์ฉ ๋ ผ์
Open Teach๋ ์ ๋ ดํ VR ์ฅ์น๋ฅผ ํ์ฉํ์ฌ ๋ค์ํ ๋ก๋ด ํํ์ ์๊ฒฉ์กฐ์์ ์คํํ ์ ์ฐํ ์์คํ ์ด๋ค. ๋ฉํ ํ์คํธ3 ๊ธฐ๋ฐ์ ํผํฉํ์ค ์ธํฐํ์ด์ค์ ๊ณ ์ฃผํ ์ ์ด ํ์ดํ๋ผ์ธ ๋๋ถ์ ๋ณ๋์ ์บ๋ฆฌ๋ธ๋ ์ด์ ์์ด ํ๋์นด, xArm, Kinova Jaco, Allegro Hand, Hello Stretch ๋ฑ ์ฌ๋ฌ ๋ก๋ด์ ์ฆ์ ์ ์ดํ ์ ์์์ ๋ณด์๋ค. ์ด ํ๋ ์์ํฌ๊ฐ ๊ณต๊ฐ๋์ด ์์ด ์ฐ๊ตฌ์ ๋๊ตฌ๋ ์ฝ๊ฒ ์ ์ฉยทํ์ฅํ ์ ์๋ค๋ ์ ๋ ์ฅ์ ์ด๋ค.
ํนํ ๋ณธ ์ฐ๊ตฌ์์๋ Allegro Hand ํ๋ซํผ ์ ์ฉ ๊ฐ๋ฅ์ฑ์ด ๊ฒ์ฆ๋์๋ค. ์คํ์ Franka ๋ฐ Kinova ์์ ์ฅ์ฐฉ๋ Allegro Hand๋ฅผ ํฌํจ์์ผฐ์ผ๋ฉฐ, Open Teach๋ก Allegro์ 16๊ฐ ๋ ๋ฆฝ ๊ด์ ์ ์ ์ดํ ์ ์์์ ๋ณด์๋ค. ๊ธฐ๋ฅ์ ์ผ๋ก Allegro๋ 4๊ฐ์ ์๊ฐ๋ฝ(๊ฐ 4DOF)๊ณผ ์ด๊ฐ ์ผ์๋ฅผ ๊ฐ์ถ ์ ๋น์ฉ ํธ๋๋ก, ROS ๊ธฐ๋ฐ API๋ฅผ ํตํด ์ค์๊ฐ ์ ์ด๊ฐ ๊ฐ๋ฅํ๋ค. Open Teach๋ Quest์ ์ ๊ด์ ๋ฐ์ดํฐ๋ฅผ Allegro ๊ด์ ๋ก ์ง์ ๋งคํํ๋ฉฐ, Pinky(์๋ผ์๊ฐ๋ฝ)๊ฐ ์๋ Allegro ๊ตฌ์กฐ๋ Open Teach์ ๋ฆฌํ๊ฒํ ๋จ๊ณ์์ ๋จ์ํ ๋ฌด์ํ๋ค. ์ฆ, ์์คํ ์์ฒด๊ฐ Allegro์ 16DOF ์ํคํ ์ฒ์ ๊ทผ๋ณธ์ ์ผ๋ก ํธํ๋๋๋ก ์ค๊ณ๋์ด ์๋ค. ์ค์ ๋ก ๋ ผ๋ฌธ์์๋ Allegro ํธ๋์ 60Hz ์คํธ๋ฆฌ๋ฐ๊ณผ PD ์ ์ด(300Hz)๋ก ๊ณ ์์ ์๋ต์ฑ์ ๋ฌ์ฑํ๊ณ , ์ด๋ Allegro์ ๊ฐ์ฒด ์ ๊ธฐ๊ตฌ์กฐ์๋ ์์ ์ ์ผ๋ก ์ ์ฉ๋์๋ค.
์ธํฐํ์ด์ค ํตํฉ ๊ด์ ์์ ๋ณผ ๋, Open Teach์ ๋ฐฑ์๋๋ ROS์ ZMQ๋ฅผ ์ฌ์ฉํ๋ฏ๋ก Allegro Hand์ ๊ธฐ์กด ROS ๋๋ผ์ด๋ฒ๋ฅผ ์์ฝ๊ฒ ์ฐ๊ฒฐํ ์ ์๋ค. ์ค์ ์ฝ๋์์๋ Allegro๋ฅผ ROS ๋ ธ๋๋ก ์ค์ ํ๊ณ , Open Teach์ Operator-Controller ํ์ดํ๋ผ์ธ๊ณผ ํตํฉ์์ผ ์ฌ์ฉํ๋ค. ์ด ๊ณผ์ ์์ Allegro ํธ๋๋ ๋จ์ผ ํ ํฌ ์ ์ด๋ชจ๋๋ก ๋์ํ๋ฉฐ, Open Teach๊ฐ ๊ณ์ฐํ ๋ชฉํ๊ด์ ์ ์ฃผ๊ธฐ์ ์ผ๋ก ์ ๋ฐ์ดํธํ๋ค. ๋ฐ๋ผ์ ๋ณ๋์ ๋ณต์กํ ์ธํฐํ์ด์ค ๊ฐ๋ฐ์ด ํ์ ์๊ณ , ์คํ์์ค์ธ Allegro ๋๋ผ์ด๋ฒ์ ์๊ฒฉ์กฐ์ ์๋ฒ๋ฅผ ์ฐ๊ณํ์ฌ ์ค์๊ฐ ์ ์ด๊ฐ ๊ฐ๋ฅํ๋ค.
์ ์ด ์ ๋ฐ๋ ๋ฐ ์์ ์ฑ ์ธก๋ฉด์์๋, PD ์ ์ด์ ์ค๋ ฅ๋ณด์์ ์ ์ฉํ์ฌ ์คํ ๋์คํ ์ดํธ ์ค์ฐจ๋ฅผ ์ค์ด๊ณ ์ ํ์๋ค. Allegro์ ๊ฐ์ด ๋ค์ ๊ด์ ์ ๊ฐ์ง ๋ก๋ด์ ๊ฒฝ์ฐ, ๊ฐ ๊ด์ ์ ์ ์ ํ PD ์ด๋ ํ๋์ด ํ์ํ์ง๋ง, ๋ณธ ์์คํ ์์๋ ์ด๋ฏธ ์ถฉ๋ถํ ์ํ๋ง ๋น๋๋ก(60Hz) ์ฐ์์ ๋ช ๋ น์ ๋ด๋ ค ๋ชจ์ ์ ๋ถ๋๋ฝ๊ฒ ํ์ฌ ์ฌ์ฉ์์๊ฒ ์ค์๊ฐ ํผ๋๋ฐฑ์ ์ ๊ณตํ๋ค. ์ด๋ ๊ฒ ๊ณ ์ฃผํ(300Hz) ์ ์ด๋ฅผ ์ฌ์ฉํ๋ฏ๋ก ์๋ต ์๋์ ์ ๋ฐ๋๋ ์ฐ์ํ๋, ํต์ ์ง์ฐ์ด๋ ๋คํธ์ํฌ ๋ถํ๊ฐ ์ปค์ง๋ฉด ๋ถ์์ ์ฑ์ด ๋ฐ์ํ ์ ์๋ค. ๋ํ VR ๊ธฐ๋ฐ ์ ๋ ฅ์ ์ก์์ด๋ ๊ฐ๋ฒผ์ด ์ค์ฐจ๊ฐ Allegro ๊ด์ ๋ช ๋ น์ผ๋ก ๋ฐ๋ก ๋ฐ์๋๊ธฐ ๋๋ฌธ์, ๊ณ ๊ด์ ์๋ฅผ ๊ฐ์ง Allegro ํธ๋์์๋ ๋์ ์ค์ฐจ์ ๋จ๋ฆผ(jitter)์ ์ฃผ์ํด์ผ ํ๋ค. ์ค์ ํ ์คํธ์์๋ ์๊ฐ๋ฝ ๊ด์ ์ถ์ ์ด ๋ถ์์ ํ๋ฉด ์์ ๋ ธ์ด์ฆ๊ฐ ์๋์ ๊ณผ๋ฏผ๋ฐ์์ผ๋ก ์ด์ด์ง๋ ๋ฌธ์ ๊ฐ ์์๋ค. ๋ฐ๋ผ์ Allegro ์ ์ฉ ์ ์ ์ด ๋ฃจํ์ ํํฐ๋ง, ํ์ํ ๊ฒฝ์ฐ ์ ์ญ ํํฐ ์ ์ฉ ๋ฑ์ ๋ณด์์ด ํ์ํ ๊ฒ์ด๋ค.
์ด์์ ๋ถ์์ ๋ฐํ์ผ๋ก, Open Teach๋ฅผ Allegro Hand์ ์ ์ฉํ ๋์ ์์ ์ฅ์ ๊ณผ ๊ธฐ์ ์ ๊ณผ์ ๋ ๋ค์๊ณผ ๊ฐ๋ค. ์ฒซ์งธ, ์ฅ์ ์ผ๋ก๋ ์ ๋ ดํ ์์คํ ๋น์ฉ($500 VR ์ฅ์น)์ ํตํด Allegro์ ๊ฐ์ ๊ณ ๋ค์์ ๋ ๋ก๋ด์ ์ฌ์ด ๋ฐฉ์์ผ๋ก ์๊ฒฉ์ ์ดํ ์ ์๋ค๋ ์ ์ด๋ค. ๋ณ๋์ ์ธ๊ณจ๊ฒฉ์ด๋ ๊ณ ๊ฐ์ ์ฅ๊ฐ ์์ด ์์ฐ์ค๋ฌ์ด ์ธ๊ฐ ์๋์์ผ๋ก 16DOF Allegro๋ฅผ ์กฐ์ํ ์ ์์ผ๋ฏ๋ก, ์ฐ๊ตฌ์ยท๊ต์ก์๋ค์ด ์์ฌ์ด ๋ฐ๋ชจ ์์ง ํ๊ฒฝ์ ๊ฐ๊ฒ ๋๋ค. ๋์งธ, Open Teach์ ์คํ์์ค ํน์ฑ์ Allegro์ ๋ง์ถ ๋ฆฌํ๊ฒํ ๋ก์ง(์: ์์ง ๋งคํ ๊ฐ์ , ํ๊ฑฐ ๊ฐ์ ์ฐจ์ด ๋ณด์ )์ ์ปค์คํฐ๋ง์ด์ฆํ์ฌ ์ถ๊ฐ ๊ฐ๋ฐ์ด ๊ฐ๋ฅํ๋ค. ์๋ฅผ ๋ค์ด Allegro V5(4F) ๋ชจ๋ธ์๋ ์์ง ๋์ ๋ค ์๊ฐ๋ฝ๋ง ์กด์ฌํ๋ฏ๋ก, ์ธ ์๊ฐ๋ฝ๋ง ๊ฐ์ง ๋ชจ๋ธ์ ๋ง์ถฐ ๋ฆฌํ๊ฒํ ๋ํผ๋ฅผ ์์ ํ ์ ์๋ค.
๋ฐ๋ฉด ๊ณ ๋ คํด์ผ ํ ๊ณผ์ ๋ ์๋ค. Allegro๋ ์๊ฐ๋ฝ์ด ๋ง์ ์ธ๊ฐ ์๋ณด๋ค ๊ตฌ์(kinematic constraint)์ด ๋์จํ๊ณ , ์๊ฐ๋ฝ ํ๋๊ฐ ๋ค๋ฅธ ์๊ฐ๋ฝ์ ์์ง์์ ๋นํด ์๋์ ์ผ๋ก ์๋ฏผํ๊ฒ ์์ง์ผ ์ ์๋ค. ๋ฐ๋ผ์ VR ์ ๋ ฅ์ ์์ ์ค์ฐจ๊ฐ Allegro ์ ์ด์์ ์ฆํญ๋์ด ์์น ์๋ ์์ง์์ ์ ๋ฐํ ์ ์๋ค. ์ด๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ์ฌ์ฉ์๋ ์ก์ ์ ๊ฑฐ ํํฐ, ๊ด์ ์๋ ์ ํ, ๋๋ ์ ๋ฐ๋ ๋ชจ๋ ์ ํ ๊ธฐ๋ฅ(์ ์ ๋ชจ๋ ๋ฑ)์ ํ์ฉํด์ผ ํ๋ค. ๋ํ Allegro์ ๊ฐ ์๊ฐ๋ฝ์ ๋ถ์ฐฉ๋ 360๋ ์ด๊ฐ ์ผ์๋ฅผ ์ ๊ทน ํ์ฉํ ์ ์๋๋ฐ, ์ด๋ฅผ Open Teach์ ํตํฉํ๋ ค๋ฉด ์ด๊ฐ ๋ฐ์ดํฐ์ ์ค์๊ฐ ์คํธ๋ฆฌ๋ฐ๊ณผ ๋๊ธฐํ ๋ฌธ์ ๊ฐ ๋จ๋๋ค. ๋ง์ง๋ง์ผ๋ก, Open Teach๋ ํ์ฌ ๋ก๋ด ์๊ณผ ํธ๋์ ํฌ์ฆ๋ฅผ ๋์ ์ ์ดํ์ง๋ง, Allegro๋ฅผ ์ฅ์ฐฉํ ์ํ ๋ก๋ด๊ณผ ๊ฐ์ ๋ณตํฉ ์์คํ ์์๋ ๊ฐ ์๊ณผ ํ์ ๋ณ๋๋ก ์ ์ดํ ์ ์๋๋ก ๋ฐ์ด๋๋ ์ปจํธ๋กค๋ฌ(bound control)๋ ์ํ ๋จธ์ ์ด ํ์ํ ์ ์๋ค. ์๋ฅผ ๋ค์ด ๋ ํธ๋๋ฅผ ํ VR ํ๊ฒฝ์์ ๋์์ ์กฐ์ํ๊ฑฐ๋, ํ๊ณผ ์์ ์ฐ์ ์์๋ฅผ ์ ํํ๋ ์ ์ด ๋ ผ๋ฆฌ๊ฐ ์ถ๊ฐ๋ ์ ์๋ค.
๊ฒฐ๋ก ์ ์ผ๋ก, Open Teach๋ ๊ธฐ์กด์ Allegro ์ ์ด ๋ฐฉ์์ ๋ณด์ํ๋ฉฐ ๋ณด๋ค ์ง๊ด์ ์ด๊ณ ์ ๋น์ฉ์ ๋ค์ง๋ฅ ๋ก๋ด ์๊ฒฉ์กฐ์์ ๊ฐ๋ฅํ๊ฒ ํ๋ค. ํฅํ Allegro ํธ๋์ฉ ์ฌ์ฉ์ ์ธํฐํ์ด์ค ํ๋, ๋ชจ์ ๋ถํ ์๊ณ ๋ฆฌ์ฆ, ์ด๊ฐ ํผ๋๋ฐฑ ํตํฉ ๋ฑ์ ๊ธฐ์ ๊ฐ๋ฐ์ ํตํด, ํนํ ์ ๋ฐํ ๋ฌผ์ฒด ์กฐ์๊ณผ ์ด๊ฐ ๊ธฐ๋ฐ ์ํธ์์ฉ ๊ฐ์ ์์ญ์์ ๋์ ์ฑ๋ฅ์ ๋ผ ์ ์์ ๊ฒ์ผ๋ก ๊ธฐ๋๋๋ค.