left_tracking 실패). wrist link5/link7 collision 필터를 넣은 3번째 run은 14/14였지만 mesh 재생성으로 finger geometry가 빠져 INVALID 처리, 4번째 재실행본이 최종.FurnitureBench 기본 로봇은 Franka 단일 팔이다. 사용자 요청으로 OpenArm 2.0 양팔 + 기본 pinch gripper가 one_leg 조립을 할 수 있는지 검증하는 계획(.omx/plans/20260918-openarm2-furniturebench-harness.md)을 세웠고, 이 카드는 그 1단계 — 로봇을 FurnitureSim 장면에 올리고 관절이 제어되는지만 다룬다.
furniture_sim_env는 Franka OSC 기반이라 로봇 asset 치환만으로 평가가 완성되지 않는다. FurnitureBench의 asset loader·가구 factory·부품 pose·PhysX 설정은 재사용하고, 로봇 쪽은 joint position drive용 scene adapter로 새로 붙인다.선택 이유: importer의 음수 scale 처리에 의존하지 않도록 부호 있는 scale을 OBJ에 굽고, v2.0은 공식 collision-exclusion 목록이 비어 있어 v1의 wrist 제외 쌍을 가져오지 않았다. INVALID run(로더가 mesh를 재생성) 이후에는 asset 준비를 staging 디렉토리에서 끝내고(--verify-only로 확인) GPU 테스트 중에는 asset을 바꾸지 않도록 절차를 분리했다.
| Run (results/openarm/) | 로봇 | checks | 핵심 수치 / 판정 |
|---|---|---|---|
smoke | v1.0 오른팔 단독 | 7/7 (91 step) | TCP 0.14071 m 이동, 최대 오차 0.02506 rad, 닫힘 폭 0.01543 m → 재열림 0.07 m |
bimanual_initial_import | v1.0 양팔 | 13/14 | left_tracking 실패 |
bimanual_fixed_scale | v1.0 + scale 굽기 | 13/14 | left_tracking 실패 — scale만으로는 해결 안 됨 |
bimanual_wrist_filter | v1.0 + link5/link7 제외 | 14/14 (INVALID) | mesh 재생성으로 일부 finger geometry 누락 → INVALID.txt, 결과로 인정 안 함 |
bimanual | v1.0 최종 | 14/14 | TCP 0.11812 m, 최대 오차 0.00907 rad(0.52°), 닫힘 0.01547 m ⇄ 0.07000 m |
v2 | v2.0 공식 | 14/14 | EE 0.11778 m, 최대 0.00880 rad(0.50°), finger <0.00142 rad(닫힘)·±0.65 rad(열림), 최종 net contact 없음, 96 frame 24 fps 1280×960 |
link5/link7 쌍만 collision filter bit를 공유시켜 해소. cross-arm·가구 충돌은 그대로 활성.bimanual_wrist_filter는 passed=True였지만 로더가 mesh를 재생성해 finger가 누락된 상태였다. passed flag만 보지 않고 mesh/rigid shape 로딩 완전성을 별도로 검증해야 한다는 근거(최종 run은 이 검증 포함).OpenArm 2.0 양팔 18 DOF가 FurnitureSim 물리 안에서 관절 단위로 안정 추종(최대 0.50°)하고 그리퍼를 좌우 독립 제어할 수 있음을 확인 — 이후 단계(Cartesian 제어·파지·양팔 조립, 카드 260921-openarm2_oracle_one_leg_harness)의 기반이다. 반면 이 smoke는 joint 제어만 본다: grasp, assembly, Cartesian 제어, 실물 전이, 카메라 보정은 아무것도 주장하지 않는다.
finger 각도는 관절 운동만 측정하고 jaw aperture는 보정하지 않았다. 손목 카메라는 스모크에서 구현되지 않았다(overview 1개). 실물 납품 사양(손가락 형상, TCP, 카메라 장착)이 미상이라 기본 pinch gripper 프로파일로 진행 중.
URDF FK/IK 기반 Cartesian controller와 scene(부품 pose·공식 scorer 연결) 구현 → 제어 정밀도 gate → 파지 gate 순으로 진행 (하네스 카드 참조). 자산은 assets/openarm_v2/METADATA.json에 upstream commit·license·변환 내역을 고정.