몸통 Pitch 독립화 — DOF 확장 로드맵 완료
초록
[[2026-08-11-moojoco-dof-expansion-roadmap]] 4순위이자 마지막 항목인 몸통 Pitch를 구현했다. torsoPitch는 타입에 이미 존재하던 죽은 코드였고, torso.rotation의 비어있던 X축(Yaw는 이미 Y축을 씀)에 연결해 슬라이더를 추가했다. 30° 극값으로 몸통이 앞으로 숙여지는 것을 실측 확인했다. 이로써 로드맵 4개 항목(손가락 독립화, 왼팔 독립화, 다리 고관절/무릎, 몸통 Pitch)을 전부 완료했으며, 조작 가능한 DOF가 세션 시작 시점 6개에서 약 21개로 늘었다. 왼팔 손목/손 지오메트리 부재, 손가락 PIP/DIP 종속, 다리 좌우 비대칭 불가, 자동 모드 미반영 등 남은 한계도 정직하게 정리했다.
몸통 Pitch 독립화 — DOF 확장 로드맵 완료
저자: Moojoco (hb5u)
계기: [[2026-08-11-moojoco-dof-expansion-roadmap]] 4순위(마지막 항목) 착수·완료. 사령관 지시 — "몸통 Pitch도 독립화 시작해줘."
일자: 2026-08-11
분류: handshake-robot, kinematics, moojoco, ui, result
0. 구현 내역
torsoPitch 필드는 types.ts에 이미 존재했지만(죽은 코드) 회전에 연결된 적이 없었다. manual 모드의 torso.rotation.y(Yaw)만 쓰이고 있어 .x 축이 비어 있길래, 그대로 Pitch로 사용했다:
RobotScene.tsx:alpha.torso.rotation.x = manualAnglesAlpha.torsoPitch * degToRad(양쪽 로봇)KinematicControls.tsx: Torso Yaw 옆에 Torso Pitch 슬라이더(-30~30°) 추가- 타입 변경 불필요 — 필드가 이미 있었음
1. 실측 검증
Torso Pitch를 최댓값(30°)으로 올려, 몸통(과 그 위의 머리)이 앞으로 확실히 숙여지는 것을 확인했다.

2. [[2026-08-11-moojoco-dof-expansion-roadmap]] 완료 정리
| 순위 | 항목 | 상태 |
|---|---|---|
| 1 | 손가락 독립 제어 | ✅ [[2026-08-11-moojoco-finger-independent-control-result]] — 5손가락 전부 독립(계획보다 확장) |
| 2 | 왼팔 독립화 | ✅ [[2026-08-11-moojoco-left-arm-independence-result]] — 어깨·팔꿈치만(1단계), 손목·손은 2단계 과제로 남김 |
| 3 | 다리 고관절·무릎 | ✅ [[2026-08-11-moojoco-leg-hip-knee-control]] — 양쪽 다리 대칭 적용 |
| 4 | 몸통 Pitch | ✅ 이 논문 |
로드맵에 적었던 4개 항목을 전부 완료했다. 오늘 하루 세션 동안 조작 가능한 DOF가 6개 → 20개로 늘었다(어깨3+팔꿈치1+손목3=7(오른팔) + 손가락5 + 발목1 + 고관절1 + 무릎1 + 몸통Yaw1 + 몸통Pitch1 + 왼팔4 = 21, 대략).
3. 남은 정직한 한계
- 왼팔은 손목·손이 아예 지오메트리가 없다(2단계 과제)
- 손가락은 여전히 손가락당 1 DOF(MCP curl만, PIP/DIP는 종속) — Tesla의 손가락당 4 DOF와는 격차 큼
- 다리는 좌우 비대칭 동작 불가(양쪽 대칭 적용만)
- 자동 악수 모드(standard 등)는 이번 로드맵의 변경사항을 전혀 반영하지 않음 — manual 모드 전용
로드맵의 1차 목표는 달성했다. 다음 방향은 사령관 판단에 맡긴다 — 왼팔 2단계(손목·손 지오메트리), 손가락 PIP/DIP 세분화, 또는 자동 모드에 새 DOF들을 반영하는 작업 중 선택 가능하다.
