Chapter 10: 다중 접촉 손안 조작 — 손 안에서 다시 배치하기
개요
In-hand manipulation은 단순히 물체를 손 안에서 돌리는 기술이 아닙니다. 제조 수작업에서는 물체를 잡은 뒤 위치를 조금 바꾸고, 다음 접촉을 만들고, 다른 물체를 추가로 잡고, 조립 방향을 맞추는 모든 과정이 in-hand manipulation입니다. Cosmax 문제의 핵심인 active in-hand rearrangement는 이 챕터의 중심 사례입니다 [1].
이 챕터를 읽고 나면... - rolling, sliding, finger gaiting, regrasping의 차이를 설명할 수 있습니다. - multi-contact manipulation에서 tactile feedback이 object pose와 contact mode를 어떻게 보완하는지 이해합니다. - sequential multi-object grasping을 제어 관점에서 분해할 수 있습니다. - model-based MPC와 RL policy가 어떤 역할로 결합되는지 설명할 수 있습니다.
10.1 접촉 유지형 태스크와 접촉 전환형 태스크
Cosmax 자료는 in-hand manipulation을 두 부류로 나눕니다. 첫째는 손가락이 항상 접촉을 유지하는 태스크입니다. 예를 들어 손 안에서 구를 굴리거나 캔을 회전하는 경우입니다. 둘째는 새 접촉이 생기거나 기존 접촉이 떨어지는 태스크입니다. sequential multi-object grasping은 후자입니다. 첫 물체를 안정적으로 잡은 상태에서 손가락을 일부 떼고, 손 안의 물체를 재배치하고, 다음 물체를 잡는 새 접촉을 만들어야 합니다.
접촉 전환형 태스크가 어려운 이유는 세 가지입니다.
- 접촉 mode가 바뀌면 dynamics가 불연속적으로 바뀝니다.
- object pose가 occlusion으로 불확실해집니다.
- 손가락을 떼는 순간 force closure margin이 줄어듭니다.
따라서 tactile feedback은 단순 보조 신호가 아니라, 접촉 전환이 허용되는지 판단하는 안전 gate입니다.
10.2 손안 조작의 네 가지 기본 동작
| 동작 | 의미 | tactile control 포인트 |
|---|---|---|
| Rolling | 접촉을 유지한 채 물체 표면을 굴림 | contact patch 이동, normal force 유지 |
| Sliding | 접촉면에서 의도적 미끄러짐을 만듦 | shear force와 slip velocity 제어 |
| Finger gaiting | 손가락을 떼고 다시 붙여 접촉 조합 변경 | 남은 접촉의 force closure 확인 |
| Palm/finger pivot | 손바닥 또는 특정 손가락을 축으로 회전 | support point와 torque 균형 |
이 네 동작은 서로 배타적이지 않습니다. 실제 태스크에서는 rolling으로 위치를 바꾸고, finger gaiting으로 손가락을 비우고, sliding으로 최종 정렬을 합니다. tactile sensor는 각 단계에서 contact centroid, patch shape, force vector를 제공해 mode transition을 안정화합니다.
10.3 Sequential multi-object grasping pipeline
Cosmax pipeline은 세 단계입니다.
- First grasp: object point cloud conditioned diffusion model로 첫 pre-grasp pose를 샘플링하고, motion planning과 grasp/lift를 수행합니다.
- In-hand rearrangement: 첫 grasp pose에서 second grasp pose로 물체를 손 안에서 이동합니다. 후보 방법은 MPC + residual RL입니다.
- Second grasp: multi-object pre-grasp pose optimization으로 다음 물체를 잡고, RL lifting policy로 전체 안정성을 유지합니다.
이 pipeline에서 tactile signal은 각 단계에 다르게 들어갑니다.
| 단계 | tactile 역할 | 실패 신호 |
|---|---|---|
| First grasp | 접촉 확인, grip force 조정 | 한쪽 finger만 접촉, slip 증가 |
| Rearrangement | contact mode 추정, force redistribution | force closure margin 감소, occluded pose drift |
| Second grasp | 첫 물체 유지 + 두 번째 접촉 검증 | internal force 과다, 손가락 간섭 |
중요한 점은 rearrangement가 grasp planning과 learning 사이의 빈틈을 메우는 별도 모듈이라는 것입니다. 기존 "정적 DoF 분할"은 어떤 손가락이 어떤 물체를 잡을지 미리 정합니다. active rearrangement는 첫 물체를 손 안에서 움직여 동적으로 DoF를 다시 확보합니다.
10.4 MPC 재현에서 드러나는 SE(3) 난이도
2026-06-05 Cosmax 자료는 Jiang 계열 robust model-based in-hand manipulation을 재현한 뒤 SO(3) sphere rotation은 확인했지만, 단순 SE(3) target pose task는 실패했다고 보고합니다 [2] [3]. 이것은 중요한 결과입니다. 손안 조작의 어려움은 "회전"보다 "위치와 방향을 동시에 바꾸는 접촉 전환"에서 급격히 커집니다.
SE(3) rearrangement에서는 다음 문제가 동시에 생깁니다.
- 물체 중심을 이동시키면 중력에 대한 support polygon이 바뀝니다.
- 손가락 하나가 접촉을 잃으면 remaining contact set의 wrench cone이 달라집니다.
- object pose estimator는 occlusion 때문에 위치 오차가 커집니다.
- finger workspace와 collision constraint가 더 빡빡해집니다.
따라서 tactile 기반 multi-contact control은 "좋은 target pose를 주면 MPC가 알아서 간다"가 아니라, 중간 object reference motion trajectory와 contact schedule hint가 필요합니다. Cosmax 자료의 learning-based real-time object reference motion trajectory generation은 이 지점을 정확히 겨냥합니다.
10.5 시뮬레이터와 real hand 이식
다중 접촉 제어는 실제 손에서 바로 실험하기 어렵습니다. 그래서 Cosmax 자료는 Isaac Sim/Isaac Lab 기반 Tesollo DG-5F-M + Franka Panda 환경을 구축하고, single-object grasping부터 trajectory 검증을 시작했습니다 [2]. 이 접근은 S9의 제조 피지컬AI 논지와도 맞습니다. 제조사는 로봇을 산 뒤 곧바로 production에 넣는 것이 아니라, bounded cell의 digital twin, task schema, failure log, evaluation harness를 먼저 만들어야 합니다.
시뮬레이터에서 필요한 구성은 다음과 같습니다.
- hand URDF/MJCF와 actuator limit, torque/current clipping.
- fingertip rubber compliant contact model.
- tactile sensor 또는 proxy force sensor 모델.
- object asset: cube, can, lemon처럼 단순한 물체에서 시작해 실제 SKU로 확장.
- grasp pose generator와 multi-object candidate filter.
- real robot replay를 위한 동일한 logging schema.
이 구조가 없으면 RL은 학습 리소스를 낭비하고, MPC는 실제 손의 마찰/컴플라이언스 차이에서 무너집니다.
요약
다중 접촉 손안 조작은 tactile sensing, contact dynamics, grasp planning, learning policy가 만나는 지점입니다. 특히 제조의 sequential multi-object grasping에서는 첫 물체를 안정적으로 유지하면서 손가락을 비우는 active rearrangement가 핵심입니다. tactile sensor는 이 과정에서 접촉 전환의 안전성을 판단하고, object pose occlusion을 보완하며, residual learning이 학습해야 할 잔차를 줄입니다.
제조 셀 적용 체크포인트
Multi-contact in-hand manipulation은 제조 현장에서 가장 빨리 난이도가 올라가는 영역입니다. 단일 물체를 집는 pick-and-place는 vision과 gripper force로 버틸 수 있지만, 손 안에서 물체를 굴리거나 밀어 다음 손가락을 비우는 순간에는 접촉 수, 접촉 위치, 내부력, 미끄러짐 여유가 모두 바뀝니다. 이때 tactile sensor는 물체 pose를 완벽히 추정하기보다, 어떤 접촉을 유지하고 어떤 접촉을 해제해도 되는지 판단하는 안정성 신호를 줍니다.
현장 실험은 화려한 dexterity benchmark보다 작은 transition set으로 시작하는 것이 낫습니다. 예를 들어 palm support 유지, index release, thumb-index pinch 전환, second-object approach처럼 접촉 전환을 원자 단위로 나누고, 각 전환마다 slip margin과 force closure margin을 기록합니다. 이 데이터가 쌓여야 contact-implicit planning, residual RL, diffusion policy가 어느 구간에서 실패하는지 알 수 있습니다.
실전 적용 메모
이 장의 핵심은 다중 접촉 손안 조작을 하나의 연구 키워드로만 보지 않고, 실제 로봇핸드 시스템에서 어떤 결정을 바꾸는지 묻는 데 있습니다. 실험을 설계할 때는 먼저 관측 가능한 상태를 정해야 합니다. 어떤 센서 값이 contact state, slip margin, force limit, object pose, operator override 중 무엇을 설명하는지 명확하지 않으면, 성공률이 높아도 다음 개선 루프가 막힙니다.
두 번째는 기록 단위입니다. 논문 데모는 성공 장면을 보여주지만, 제조형 연구는 실패를 재현 가능한 record로 남겨야 합니다. attempt id, task phase, hardware configuration, calibration version, tactile summary, policy output, human intervention을 함께 저장해야 다른 장에서 설명한 데이터 표현, 제어, 학습, 전이가 서로 연결됩니다.
마지막으로 이 장의 내용을 적용할 때는 "가장 성능이 좋은 방법"보다 "어떤 실패를 줄이는 방법인가"를 먼저 물어야 합니다. 촉각 로봇핸드의 실용성은 센서, 핸드, 정책, 시뮬레이터가 각각 좋은지보다, 실패 원인을 나누고 다음 실험을 더 싸게 만드는지에서 드러납니다.
장별 구현 프레임워크
다중 접촉 손안 조작을 실제 시스템으로 옮길 때 첫 단계는 상태 정의입니다. 이 장에서 다루는 개념은 추상적인 성능 지표가 아니라, controller와 logger가 함께 읽을 수 있는 state variable이어야 합니다. 예를 들어 contact state, normal force, shear vector, slip margin, object pose, task phase, operator override, product-damage flag가 각각 어느 좌표계와 어느 시간 해상도에서 저장되는지 정해야 합니다. 이 정의가 없으면 정책이 성공하더라도 왜 성공했는지 알기 어렵고, 실패했을 때도 planner, controller, sensor, hardware, operator workflow 중 어느 부분을 고쳐야 하는지 분리할 수 없습니다.
두 번째 단계는 제어 루프를 시간 규모별로 나누는 것입니다. 빠른 루프는 200-1000 Hz에서 force derivative, shear spike, motor current, joint torque를 처리합니다. 중간 루프는 20-100 Hz에서 contact pose, grasp phase, reference finger motion을 갱신합니다. 느린 루프는 1-10 Hz에서 task instruction, object identity, SKU, fixture state, next grasp candidate를 판단합니다. 다중 접촉 손안 조작이 어느 루프에 들어가는지 명확해야 VLA, MPC, tactile reflex, residual policy가 서로 다른 일을 하면서도 같은 목표를 향해 작동합니다. 모든 정보를 하나의 거대 정책에 넣는 방식은 구현은 단순해 보이지만, latency와 failure diagnosis에서 약합니다.
세 번째 단계는 record schema입니다. 최소한 attempt id, robot hand model, sensor layout, calibration version, task phase, object/SKU id, selected grasp, measured contact patch, normal/shear force summary, slip event, action output, safety intervention, final outcome을 저장해야 합니다. 제조 셀에서는 이 record가 곧 QA trace입니다. 연구실에서는 한 번의 성공 영상이 설득력을 가질 수 있지만, 생산 라인에서는 실패가 반복될 때 원인을 좁히는 능력이 더 중요합니다. 따라서 다중 접촉 손안 조작 실험의 결과표는 success rate 하나가 아니라 failure type distribution, retry count, damage rate, cycle time variance, operator intervention frequency를 함께 보여야 합니다.
네 번째 단계는 작은 테스트 프로토콜입니다. 처음부터 모든 물체와 모든 손 동작을 다루면 실패 원인을 해석하기 어렵습니다. 먼저 single contact acquisition, stable hold, controlled release, contact switch, recovery after slip 같은 원자 태스크를 정의합니다. 그 다음 두세 개의 원자 태스크를 묶어 sequential manipulation을 만들고, 마지막에 Cosmax형 first grasp -> in-hand rearrangement -> second grasp 시나리오로 확장합니다. 이렇게 해야 다중 접촉 손안 조작이 실제로 어떤 failure mode를 줄였는지 확인할 수 있습니다. 특히 손안 조작과 다물체 파지는 성공/실패가 한 순간에 결정되지 않고, 여러 contact transition의 누적으로 결정됩니다.
다섯 번째 단계는 하드웨어와 유지보수 조건을 실험 변수로 포함하는 것입니다. 같은 알고리즘도 젤 표면 마모, 패드 오염, 케이블 장력, 센서 교체 후 calibration, 손가락 backlash, 온도, 표면 습도에 따라 다르게 작동합니다. 따라서 실험 로그에는 software version뿐 아니라 pad age, cleaning state, calibration time, replacement event, fault code를 기록해야 합니다. 이 정보가 있어야 모델 성능 저하와 센서/기구 열화를 분리할 수 있습니다. 제조용 tactile robotics는 policy benchmark가 아니라 운영 시스템이기 때문에, maintenance variable은 주변 정보가 아니라 핵심 state입니다.
마지막 단계는 의사결정 기준입니다. 다중 접촉 손안 조작을 도입했을 때 성공률이 올라가는지만 보지 말고, 어떤 실패가 줄었는지를 확인해야 합니다. perception failure가 줄었는지, contact acquisition failure가 줄었는지, force closure 부족이 줄었는지, execution-time slip이 줄었는지, 아니면 operator override가 줄었는지 분리해야 합니다. 이 분해가 가능해야 다음 투자가 정해집니다. 센서를 바꿀지, 손을 바꿀지, controller를 바꿀지, simulator를 보강할지, 데이터 수집을 늘릴지가 명확해집니다.
| 구현 질문 | 확인할 로그 | 통과 기준 |
|---|---|---|
| 상태가 관측되는가 | sensor packet, calibrated value, contact frame | controller와 QA가 같은 값을 읽음 |
| 제어 루프가 분리되는가 | fast reflex, mid-level planner, slow policy timestamp | 빠른 slip 사건과 느린 task decision이 충돌하지 않음 |
| 실패가 분류되는가 | failure type, phase, intervention note | 실패 원인이 3개 이하 후보로 좁혀짐 |
| 유지보수가 기록되는가 | pad age, calibration version, replacement event | 성능 저하와 hardware drift를 분리 가능 |
| 제조 KPI와 연결되는가 | cycle time, damage rate, retry count, downtime | 연구 성공률이 운영 지표로 번역됨 |
검증 프로토콜: 데모에서 반복 가능한 실험으로
이 장의 방법을 검증할 때는 한 번의 성공 장면보다 반복 가능한 실험 단위가 중요합니다. 첫 단계는 reset condition을 고정하는 것입니다. 물체의 시작 위치, 손의 초기 자세, 센서 calibration, 패드 상태, 주변 조명, fixture 상태가 매 trial마다 다르면 tactile feedback의 효과를 분리할 수 없습니다. 두 번째 단계는 disturbance를 의도적으로 넣는 것입니다. 물체를 조금 회전시키거나, 표면 마찰을 바꾸거나, 손가락 하나의 초기 접촉을 늦추면 controller가 진짜로 접촉 정보를 쓰는지 드러납니다.
세 번째 단계는 ablation입니다. tactile 없이, normal force만, shear까지 포함, slip event까지 포함, full tactile summary까지 포함하는 순서로 비교해야 합니다. 이렇게 해야 성능 향상이 taxel 수 때문인지, 전단력 때문인지, 시간 해상도 때문인지, 단순히 더 큰 policy 때문인지 구분할 수 있습니다. 네 번째 단계는 recovery metric입니다. 실패를 완전히 막지 못하더라도, slip 이후 회복 시간이 줄거나 operator override가 줄면 제조 관점에서는 의미 있는 개선입니다.
마지막 단계는 deployment rehearsal입니다. 연구자가 직접 조정하는 실험과 작업자가 절차서대로 수행하는 실험은 다릅니다. 작업자가 센서를 교체하고 calibration을 실행한 뒤 같은 KPI가 유지되는지 봐야 합니다. 이 단계에서 cycle time, damage rate, retry count, downtime, intervention frequency가 함께 유지되어야 제조 적용 가능성을 말할 수 있습니다.
제어 설계 패턴: tactile signal을 action으로 바꾸는 순서
Part III의 네 장은 모두 같은 질문으로 돌아옵니다. 센서가 접촉 정보를 주었을 때, 손가락은 어떤 action을 해야 하는가? 이 질문에 대한 실용적 답은 세 단계입니다. 첫째, tactile signal을 즉시 action으로 쓰지 말고 contact belief로 바꿉니다. contact belief는 접촉 위치, 접촉 방향, 힘의 여유, 미끄러짐 가능성, 다음 접촉 전환 가능성을 포함합니다. 둘째, contact belief를 safety gate와 reference update로 나눕니다. safety gate는 과도한 힘, slip, collision, product damage risk를 막고, reference update는 손가락 위치나 힘 목표를 바꿉니다. 셋째, policy가 이 두 결과를 다시 받아 다음 high-level action을 고르게 합니다.
이 구조는 특히 제조 다물체 태스크에서 중요합니다. 첫 물체를 안정적으로 잡았다는 판단은 단순히 force가 충분하다는 뜻이 아닙니다. 손가락 하나를 떼어도 남은 접촉이 물체를 지지하는지, 손바닥 support가 실제로 생겼는지, 다음 물체 접근 경로가 열리는지, slip margin이 충분한지를 함께 봐야 합니다. tactile sensing은 이 판단을 순간마다 갱신합니다. 따라서 contact controller의 출력은 "grip harder" 하나가 아니라 hold, release, shift, roll, regrasp, abort 같은 discrete mode와 finger-level reference가 함께 있어야 합니다.
실험 설계에서는 policy success rate보다 mode transition의 품질을 봐야 합니다. mode가 바뀔 때 force spike가 생기는지, contact patch가 예상한 방향으로 이동하는지, shear가 friction cone 안에 남는지, object pose estimate가 tactile evidence와 충돌하는지 확인합니다. 이 로그가 있어야 controller가 잘못됐는지, hand morphology가 부족한지, sensor placement가 나쁜지 판단할 수 있습니다.
Operator handoff와 안전 정지 기준
제조 셀에서 촉각 제어는 작업자에게 설명 가능한 절차로 끝나야 합니다. 시스템이 어떤 상태에서 계속 진행하고, 어떤 상태에서 속도를 낮추고, 어떤 상태에서 정지하는지 명확해야 합니다. 예를 들어 slip margin이 낮아지면 먼저 grip force를 제한 범위 안에서 보정하고, contact patch가 예상 영역을 벗어나면 재파지를 시도하며, force limit이나 product-damage risk를 넘으면 즉시 abort mode로 들어가야 합니다. 이 기준은 policy 내부에만 숨어 있으면 안 되고, operator UI와 QA log에 같은 이름으로 표시되어야 합니다.
handoff 절차에는 세 가지 정보가 필요합니다. 첫째, 현재 phase입니다. acquire, hold, shift, release, regrasp, abort 중 어디인지 표시해야 합니다. 둘째, 정지 이유입니다. slip, over-force, lost contact, pose uncertainty, hardware fault를 구분해야 합니다. 셋째, 다음 행동입니다. 자동 retry, 작업자 확인, 센서 청소, calibration 재실행, 물체 제거 중 하나로 이어져야 합니다. 이렇게 설계하면 tactile control은 블랙박스가 아니라 작업자와 함께 운영되는 제조 시스템이 됩니다.
현장 판단 기준의 최소 단위
이 장의 내용을 현장에 적용할 때 최소 판단 단위는 "성공한 grasp"가 아니라 "안전하게 다음 phase로 넘어갈 수 있는 contact state"입니다. 작업자는 결과만 보지만, 시스템은 phase 전환 직전의 force reserve, slip reserve, contact patch, finger availability, product-damage risk를 함께 봐야 합니다. 이 값이 모두 기록되면 실패한 trial도 유용한 데이터가 됩니다. 반대로 이 값이 없으면 성공한 trial조차 재현 가능한 지식으로 남지 않습니다.
따라서 PoC의 첫 목표는 완전 자동화가 아니라 판단 기준을 안정화하는 것입니다. 어떤 값이면 계속 진행하고, 어떤 값이면 retry하고, 어떤 값이면 abort하는지 정해야 합니다. 이 기준이 쌓이면 나중에 더 큰 VLA나 RL policy를 붙여도 평가가 흔들리지 않습니다.
참고문헌
- Cosmax Robotics Meeting. (2026a). Sequential multi-object grasping and active in-hand rearrangement problem statement. Internal meeting PDF, 2026-05-12. [Cosmax, 2026a] private source
- Cosmax Robotics Meeting. (2026b). Model-based approach vs RL-based approach for in-hand manipulation. Internal meeting PDF, 2026-06-05. [Cosmax, 2026b] private source
- Jiang, Z., et al. (2025). Robust model-based in-hand manipulation with integrated real-time motion-contact planning and tracking. arXiv:2505.04978. [Jiang et al., 2025] source
- Yang, L., et al. (2025). Multi-finger manipulation via trajectory optimization with differentiable rolling and geometric constraint. IEEE RA-L. [Yang et al., 2025] source
- Li, Y., et al. (2025). DROP: Dexterous reorientation via online planning. ICRA 2025. [Li et al., 2025] source
- Bansal, A., et al. (2026). EgoScale: Scaling human video to unlock dexterous robot intelligence. NVIDIA GEAR. [Bansal et al., 2026] source