30.32 자기 충돌(Self-Collision) 회피 역기구학

30.32 자기 충돌(Self-Collision) 회피 역기구학

자기 충돌(self-collision)은 로봇의 서로 다른 부품이 자신과 충돌하는 현상을 의미한다. 본 절에서는 자기 충돌 회피 역기구학을 학술적으로 다룬다.

1. 자기 충돌의 학술적 정의

자기 충돌은 로봇의 한 링크가 다른 링크 또는 자신의 베이스와 충돌하는 현상이다. 외부 장애물 회피와 달리 로봇 내부의 기하학적 관계에 기반한다.

2. 자기 충돌 발생 원인

2.1 극한 관절 구성

관절이 극한 값에 가까울 때 기계적 간섭이 발생할 수 있다.

2.2 긴 링크와 복잡한 구조

다자유도 로봇에서 긴 링크가 서로 접근할 수 있다.

2.3 설계상의 한계

일부 로봇은 설계상 자기 충돌이 가능한 영역을 가진다.

3. 자기 충돌 검사

3.1 쌍별 검사

모든 링크 쌍 (L_i, L_j)에 대해 충돌 여부를 검사한다. \binom{n}{2}의 쌍이 있다.

3.2 인접 링크 무시

인접 링크(관절로 연결된 링크)는 일반적으로 접촉하므로 충돌 검사에서 제외된다.

3.3 허용 쌍 목록

일부 쌍의 접촉은 허용되며(예: 기구학적 구조상 항상 접촉하는 부분), 이는 ACL(allowed collision list)에 등록된다.

3.4 기하학적 근사

각 링크를 단순한 기하 형상(캡슐, 구, 직육면체 등)으로 근사하여 효율적 충돌 검사를 수행한다.

4. 자기 충돌 회피 전략

4.1 여유 자유도 활용

여유 자유도 로봇에서 영공간 투영을 통해 자기 충돌을 회피한다.

4.2 경로 계획

운동 계획 단계에서 자기 충돌 없는 경로를 생성한다.

4.3 제약 기반 제어

제어 단계에서 자기 충돌 제약을 QP 문제에 포함한다.

4.4 포텐셜 필드

링크 쌍 사이의 반발 포텐셜을 설정한다.

5. 자기 충돌 부목적 함수

자기 충돌 회피를 위한 부목적 함수는 다음과 같이 설정된다.

H_{self}(\vec{q}) = \sum_{(i,j)} \frac{1}{d_{ij}(\vec{q})^2}

여기서 d_{ij}는 링크 ij 사이의 최소 거리이다.

30.32.6 거리 산출

링크 사이의 최소 거리 산출에는 다음이 활용된다.

30.32.6.1 캡슐 근사

각 링크를 캡슐로 근사하면, 캡슐 사이의 거리는 선분 사이의 거리에 반경을 뺀 값이다.

30.32.6.2 GJK 알고리즘

일반 볼록 형상 간의 거리는 GJK 알고리즘으로 효율적으로 산출된다.

30.32.6.3 FCL 라이브러리

FCL은 다양한 형상 간의 충돌 검사와 거리 산출을 제공한다.

30.32.7 휴머노이드 로봇의 자기 충돌

휴머노이드 로봇은 많은 링크로 구성되어 자기 충돌 가능성이 특히 높다.

30.32.7.1 팔-몸통 충돌

팔이 몸통에 가까워지거나 접촉할 수 있다.

30.32.7.2 팔-팔 충돌

양 팔이 서로 접근할 수 있다.

30.32.7.3 다리-몸통 충돌

다리가 몸통에 충돌할 수 있다.

30.32.7.4 머리-팔 충돌

일부 구성에서 머리와 팔이 충돌할 수 있다.

30.32.8 실무적 구현

30.32.8.1 URDF와 충돌 메시

URDF의 충돌 메시에 기반한 자동 자기 충돌 검사가 표준이다.

30.32.8.2 SRDF

MoveIt의 SRDF(Semantic Robot Description Format)는 허용 충돌 쌍을 명시한다.

30.32.8.3 운동 계획 통합

OMPL, CHOMP, STOMP 등의 운동 계획자는 자기 충돌 회피를 통합한다.

30.32.9 실시간 성능

자기 충돌 검사는 계산 비용이 높으므로 실시간 적용에는 최적화가 필요하다.

30.32.9.1 BVH (Bounding Volume Hierarchy)

계층적 경계 체적을 활용해 검사를 가속한다.

30.32.9.2 GPU 가속

병렬 처리를 활용한 GPU 가속 기법이 활용된다.

30.32.9.3 사전 계산

정적 관계(허용 쌍, 불가능 구성)를 사전 계산하여 실시간 비용을 감소한다.

30.32.10 학술적 활용

자기 충돌 회피는 다음과 같은 영역에 활용된다. 첫째, 휴머노이드 로봇의 전신 운동. 둘째, 다자유도 매니퓰레이터의 안전 운용. 셋째, 협동 로봇. 넷째, 수술 로봇의 정밀 제어.

30.32.11 학술적 의의

자기 충돌 회피는 로봇의 안전한 운용과 기계적 무결성 보장에 필수적이다. 고자유도 로봇의 발전과 함께 자기 충돌 회피는 현대 로봇 공학의 중심 주제가 되었다.

출처

  • Gilbert, E. G., Johnson, D. W., and Keerthi, S. S., “A fast procedure for computing the distance between complex objects in three-dimensional space”, IEEE Journal on Robotics and Automation, Vol. 4, No. 2, pp. 193–203, 1988.
  • Pan, J., Chitta, S., and Manocha, D., “FCL: A general purpose library for collision and proximity queries”, Proceedings of the IEEE International Conference on Robotics and Automation (ICRA), pp. 3859–3866, 2012.
  • Schwarzer, F., Saha, M., and Latombe, J.-C., “Adaptive dynamic collision checking for single and multiple articulated robots in complex environments”, IEEE Transactions on Robotics, Vol. 21, No. 3, pp. 338–353, 2005.
  • Dietrich, A., Wimböck, T., Albu-Schäffer, A., and Hirzinger, G., “Reactive whole-body control: Dynamic mobile manipulation using a large number of actuated degrees of freedom”, IEEE Robotics & Automation Magazine, Vol. 19, No. 2, pp. 20–33, 2012.
  • Chitta, S., Sucan, I., and Cousins, S., “MoveIt! [ROS topics]”, IEEE Robotics & Automation Magazine, Vol. 19, No. 1, pp. 18–19, 2012.

버전

  • 문서 버전: 1.0
  • 작성일: 2026-04-18