32.6 기하학적 자코비안(Geometric Jacobian)의 유도

32.6 기하학적 자코비안(Geometric Jacobian)의 유도

기하학적 자코비안(geometric Jacobian)은 관절 속도 \dot{\vec{q}}로부터 엔드 이펙터의 물리적 선속도 \vec{v}와 각속도 \vec{\omega}를 직접 매핑하는 자코비안 표현이다. 이는 방향 매개변수의 선택(오일러 각, RPY 각 등)에 의존하지 않으며, 각 관절의 기하학적 속성—관절 축의 방향 벡터와 관절 원점의 위치—만을 이용하여 열별로 구성된다. 본 절에서는 기하학적 자코비안의 학술적 정의, 관절별 열 벡터의 유도 원리, 필요한 기하학적 정보의 추출, 그리고 체계적 유도 절차를 다룬다.

1. 기하학적 자코비안의 학술적 정의

직렬 매니퓰레이터의 엔드 이펙터 선속도 \vec{v}와 각속도 \vec{\omega}를 수직 결합한 6차원 속도 벡터를 \vec{V}_e라 할 때, 기하학적 자코비안 \mathbf{J}_g(\vec{q}) \in \mathbb{R}^{6 \times n}은 다음 선형 관계를 정의하는 행렬이다.

\vec{V}_e = \begin{bmatrix} \vec{v} \\ \vec{\omega} \end{bmatrix} = \mathbf{J}_g(\vec{q}) \, \dot{\vec{q}}

기하학적 자코비안은 선속도 부분 \mathbf{J}_v(\vec{q}) \in \mathbb{R}^{3 \times n}과 각속도 부분 \mathbf{J}_\omega(\vec{q}) \in \mathbb{R}^{3 \times n}의 수직 결합으로 분해된다.

\mathbf{J}_g(\vec{q}) = \begin{bmatrix} \mathbf{J}_v(\vec{q}) \\ \mathbf{J}_\omega(\vec{q}) \end{bmatrix}

기하학적 자코비안의 핵심적 학술적 특징은 엔드 이펙터의 회전 속도를 방향 매개변수의 시간 미분이 아닌 물리적 각속도 벡터로 직접 표현한다는 점이며, 이로 인해 매개변수 표현의 특이점(representation singularity)에서 자유롭다.

2. 열 벡터 관점과 관절별 기여

자코비안의 i번째 열 \vec{J}_i(\vec{q}) \in \mathbb{R}^6은 관절 i만이 단위 속도로 동작할 때의 엔드 이펙터 6차원 속도이다. 이에 따라 엔드 이펙터 속도는 자코비안 열 벡터들의 관절 속도를 계수로 하는 선형 결합으로 표현된다.

\vec{V}_e = \sum_{i=1}^{n} \vec{J}_i(\vec{q}) \, \dot{q}_i

각 열 벡터는 다음과 같은 6차원 구조를 가진다.

\vec{J}_i(\vec{q}) = \begin{bmatrix} \vec{J}_{v,i}(\vec{q}) \\ \vec{J}_{\omega,i}(\vec{q}) \end{bmatrix} \in \mathbb{R}^6

관절 i의 유형(회전 관절 또는 직동 관절)에 따라 \vec{J}_{v,i}\vec{J}_{\omega,i}의 구체적 형태가 결정된다. 이러한 열 벡터 기반 유도는 강체 운동학의 기본 공식으로부터 자연스럽게 도출된다.

3. 유도의 기본 원리: 인접 링크의 상대 운동

기하학적 자코비안의 열 벡터 유도는 직렬 매니퓰레이터의 기구 구조와 강체의 순간 속도 공식에 근거한다. 관절 i가 링크 i-1과 링크 i를 연결할 때, 관절 i의 동작은 링크 i-1에 대한 링크 i의 상대 운동을 결정한다.

관절 i의 축 방향 단위 벡터를 기저 좌표계에서 \hat{z}_{i-1}(\vec{q}) \in \mathbb{R}^3로 표기하고, 관절 i의 원점 위치를 \vec{p}_{i-1}(\vec{q}) \in \mathbb{R}^3로 표기한다. 엔드 이펙터의 원점 위치를 \vec{p}_n(\vec{q}) \in \mathbb{R}^3로 표기한다. 강체 운동학의 기본 공식

\vec{v}_P = \vec{v}_O + \vec{\omega} \times (\vec{p}_P - \vec{p}_O)

에 따라, 관절 i 단독 동작이 엔드 이펙터에 만드는 속도는 관절 원점의 속도와 각속도에 의한 기여의 합으로 결정된다.

32.6.4 회전 관절의 열 벡터 유도

관절 i가 회전 관절이고 관절 변수가 q_i = \theta_i인 경우를 고려한다. 관절 i의 동작은 축 방향 \hat{z}_{i-1} 주위의 회전이며, 이는 링크 i 이후 모든 강체에 동일한 각속도 기여를 생성한다.

각속도 기여는 관절 축 방향과 관절 속도의 곱으로 주어진다.

\vec{J}_{\omega,i}(\vec{q}) = \hat{z}_{i-1}(\vec{q})

선속도 기여는 관절 i의 원점 주위 회전이 엔드 이펙터 원점에 만드는 선속도이다. 관절 원점 \vec{p}_{i-1}은 회전 관절 i의 동작에 의해 이동하지 않으므로, 엔드 이펙터 원점의 속도는 각속도 \hat{z}_{i-1}과 상대 위치 \vec{p}_n - \vec{p}_{i-1}의 외적으로 주어진다.

\vec{J}_{v,i}(\vec{q}) = \hat{z}_{i-1}(\vec{q}) \times (\vec{p}_n(\vec{q}) - \vec{p}_{i-1}(\vec{q}))

따라서 회전 관절의 열 벡터는 다음 형태를 가진다.

\vec{J}_i(\vec{q}) = \begin{bmatrix} \hat{z}_{i-1} \times (\vec{p}_n - \vec{p}_{i-1}) \\ \hat{z}_{i-1} \end{bmatrix}

4. 직동 관절의 열 벡터 유도

관절 i가 직동 관절이고 관절 변수가 q_i = d_i인 경우를 고려한다. 관절 i의 동작은 축 방향 \hat{z}_{i-1}을 따라가는 병진 운동이므로 각속도 기여는 없다.

각속도 기여는 영 벡터이다.

\vec{J}_{\omega,i}(\vec{q}) = \vec{0}

선속도 기여는 직동 축 방향의 단위 속도이다. 직동 관절 i 단독 동작 시 링크 i 이후의 모든 강체는 \hat{z}_{i-1} 방향으로 동일한 병진 속도를 공유한다.

\vec{J}_{v,i}(\vec{q}) = \hat{z}_{i-1}(\vec{q})

따라서 직동 관절의 열 벡터는 다음 형태를 가진다.

\vec{J}_i(\vec{q}) = \begin{bmatrix} \hat{z}_{i-1} \\ \vec{0} \end{bmatrix}

32.6.6 통합된 자코비안 구성 공식

회전 관절과 직동 관절의 열 벡터를 통합하면 관절 유형에 따른 자코비안 열 벡터의 구성 공식이 얻어진다. 관절 유형 지시자 \sigma_i \in \{0, 1\}을 도입하여 \sigma_i = 0이면 회전 관절, \sigma_i = 1이면 직동 관절로 규정하면 다음과 같은 일반화된 공식이 얻어진다.

\vec{J}_i(\vec{q}) = \begin{bmatrix} (1 - \sigma_i) \, \hat{z}_{i-1} \times (\vec{p}_n - \vec{p}_{i-1}) + \sigma_i \, \hat{z}_{i-1} \\ (1 - \sigma_i) \, \hat{z}_{i-1} \end{bmatrix}

이 공식은 관절별 처리의 균일한 구현을 가능하게 하여 수치적 계산에 유리하다.

전체 기하학적 자코비안은 n개 관절의 열 벡터를 가로로 배열하여 구성된다.

\mathbf{J}_g(\vec{q}) = \begin{bmatrix} \vec{J}_1(\vec{q}) & \vec{J}_2(\vec{q}) & \cdots & \vec{J}_n(\vec{q}) \end{bmatrix} \in \mathbb{R}^{6 \times n}

32.6.7 필요한 기하학적 정보와 순기구학과의 연결

기하학적 자코비안의 구성에 요구되는 정보는 다음 세 가지로 요약된다.

  • 관절 축 방향 \hat{z}_{i-1}(\vec{q}): 관절 i의 동작 축을 기저 좌표계에서 표현한 단위 벡터.
  • 관절 원점 위치 \vec{p}_{i-1}(\vec{q}): 관절 i의 좌표계 원점을 기저 좌표계에서 표현한 위치 벡터.
  • 엔드 이펙터 위치 \vec{p}_n(\vec{q}): 엔드 이펙터 원점의 기저 좌표계 위치 벡터.

이 정보는 순기구학(forward kinematics)의 계산 과정에서 자연스럽게 제공된다. 기저 좌표계에서 링크 i 좌표계로의 동차 변환 행렬을

{}^0\mathbf{T}_i(\vec{q}) = \begin{bmatrix} {}^0\mathbf{R}_i(\vec{q}) & {}^0\vec{p}_i(\vec{q}) \\ \vec{0}^\top & 1 \end{bmatrix} \in SE(3)

로 표기하면, 관절 i의 축 방향 \hat{z}_{i-1}{}^0\mathbf{R}_{i-1}의 3열(또는 관례에 따라 해당 좌표계의 z축)로 추출되며, 관절 원점 \vec{p}_{i-1}{}^0\vec{p}_{i-1}로 직접 주어진다. 엔드 이펙터 위치 \vec{p}_n{}^0\vec{p}_n이다.

5. 체계적 유도 절차

기하학적 자코비안의 구성은 다음의 체계적 단계로 수행된다.

단계 1: 순기구학 계산. 관절 변수 \vec{q}에 대하여 각 링크 좌표계의 동차 변환 {}^0\mathbf{T}_1, {}^0\mathbf{T}_2, \ldots, {}^0\mathbf{T}_n을 계산한다. 이는 일반적으로 데나빗-하르텐버그 표기법 또는 제품 지수 공식(product of exponentials formula)을 통해 수행된다.

단계 2: 기하학적 정보 추출.{}^0\mathbf{T}_{i-1}로부터 관절 축 방향 \hat{z}_{i-1}과 관절 원점 위치 \vec{p}_{i-1}을 추출한다. 관례상 관절 i의 축은 링크 좌표계 i-1z축과 일치하도록 정의된다.

단계 3: 관절별 열 벡터 계산. 각 관절 i에 대하여 관절 유형 지시자 \sigma_i에 따라 열 벡터 \vec{J}_i를 계산한다.

단계 4: 자코비안 조립. 계산된 열 벡터들을 가로로 배열하여 \mathbf{J}_g(\vec{q}) = [\vec{J}_1 \, \vec{J}_2 \, \cdots \, \vec{J}_n] \in \mathbb{R}^{6 \times n}을 구성한다.

이 절차는 기호적 연산과 수치적 연산 모두에서 직접 구현 가능하며, 순기구학 재귀 계산과 결합하여 효율적으로 수행될 수 있다.

6. 기하학적 자코비안 유도 예시

6.1 2자유도 평면 매니퓰레이터

두 개의 회전 관절과 링크 길이 a_1, a_2를 가진 2자유도 평면 매니퓰레이터를 고려한다. 관절 변수를 \theta_1, \theta_2로 놓고 c_i = \cos(\theta_i), s_i = \sin(\theta_i), c_{12} = \cos(\theta_1 + \theta_2), s_{12} = \sin(\theta_1 + \theta_2)로 표기한다. 두 관절 축은 모두 평면에 수직이므로 \hat{z}_0 = \hat{z}_1 = [0, 0, 1]^\top이다. 관절 원점과 엔드 이펙터 위치는

\vec{p}_0 = \vec{0}, \quad \vec{p}_1 = \begin{bmatrix} a_1 c_1 \\ a_1 s_1 \\ 0 \end{bmatrix}, \quad \vec{p}_2 = \begin{bmatrix} a_1 c_1 + a_2 c_{12} \\ a_1 s_1 + a_2 s_{12} \\ 0 \end{bmatrix}

이다. 회전 관절 공식 \vec{J}_{v,i} = \hat{z}_{i-1} \times (\vec{p}_2 - \vec{p}_{i-1})\vec{J}_{\omega,i} = \hat{z}_{i-1}을 적용하면 선속도 부분은 다음과 같이 얻어진다.

\mathbf{J}_v = \begin{bmatrix} -a_1 s_1 - a_2 s_{12} & -a_2 s_{12} \\ a_1 c_1 + a_2 c_{12} & a_2 c_{12} \\ 0 & 0 \end{bmatrix}

각속도 부분은 두 관절 모두 \hat{z} = [0,0,1]^\top로 동일하므로

\mathbf{J}_\omega = \begin{bmatrix} 0 & 0 \\ 0 & 0 \\ 1 & 1 \end{bmatrix}

이다.

32.6.9.2 6자유도 회전 매니퓰레이터

산업용 6자유도 회전 매니퓰레이터의 경우 n = 6이고 모든 관절이 회전 관절이다. 자코비안의 i번째 열은 모두

\vec{J}_i = \begin{bmatrix} \hat{z}_{i-1} \times (\vec{p}_6 - \vec{p}_{i-1}) \\ \hat{z}_{i-1} \end{bmatrix}

의 형태를 가지며, 전체 자코비안은 6 \times 6의 정방 행렬이 된다. 각 \hat{z}_{i-1}\vec{p}_{i-1}은 순기구학의 동차 변환 {}^0\mathbf{T}_{i-1}로부터 추출된다.

6.2 기호적·수치적 유도

현대적 기호 연산 소프트웨어(MATLAB Symbolic Math Toolbox, Mathematica, SymPy 등)를 활용하면 \mathbf{J}_g(\vec{q})를 기호적으로 유도할 수 있으며, 이러한 기호 표현은 이후 수치 대입으로 효율적 계산이 가능하다. 실시간 제어 구현에서는 순기구학과 결합된 재귀 알고리즘(recursive Jacobian algorithm)이 수치적으로 유리하다.

7. 기저 좌표계와 좌표계 선택

기하학적 자코비안은 일반적으로 기저 좌표계에서 표현된다. 그러나 해석의 편의 또는 제어 알고리즘의 요구에 따라 다른 좌표계(엔드 이펙터 좌표계 또는 임의의 작업 좌표계)에서 표현될 수도 있다. 좌표계 \{A\}에서 \{B\}로의 회전 행렬을 {}^B\mathbf{R}_A라 할 때, 자코비안의 좌표계 변환은 다음과 같이 수행된다.

{}^B\mathbf{J}_g = \begin{bmatrix} {}^B\mathbf{R}_A & \mathbf{0} \\ \mathbf{0} & {}^B\mathbf{R}_A \end{bmatrix} {}^A\mathbf{J}_g

이는 선속도와 각속도 블록 각각에 동일한 회전 변환이 적용됨을 의미한다. 공간 자코비안과 물체 자코비안의 구분도 본질적으로 이러한 좌표계 선택의 문제로 해석될 수 있다.

32.6.11 학술적 의의

본 절에서 전개한 기하학적 자코비안의 유도 방법은 로봇 공학에서 다음의 학술적 의의를 가진다. 첫째, 관절 축의 방향과 관절 원점의 위치만으로 자코비안을 구성하는 명료한 기하학적 절차를 제공한다. 둘째, 방향 매개변수의 선택에 독립적이므로 매개변수 특이점의 영향을 받지 않는다. 셋째, 순기구학 계산 결과를 그대로 활용하여 계산적 중복을 최소화한다. 넷째, 스크류 이론 기반 자코비안 유도와 리 군-리 대수 기반 트위스트 표현에 직접적 연결점을 제공한다. 다섯째, 회전 관절과 직동 관절의 열 벡터 공식은 후속 절에서 관절별 상세 해석의 출발점이 된다.

출처

  • Whitney, D. E., “The mathematics of coordinated control of prosthetic arms and manipulators”, Journal of Dynamic Systems, Measurement, and Control, Vol. 94, No. 4, pp. 303–309, 1972.
  • Paul, R. P., Shimano, B., and Mayer, G. E., “Kinematic control equations for simple manipulators”, IEEE Transactions on Systems, Man, and Cybernetics, Vol. 11, No. 6, pp. 449–455, 1981.
  • Orin, D. E. and Schrader, W. W., “Efficient computation of the Jacobian for robot manipulators”, International Journal of Robotics Research, Vol. 3, No. 4, pp. 66–75, 1984.
  • Spong, M. W., Hutchinson, S., and Vidyasagar, M., Robot Modeling and Control, 2nd edition, Wiley, 2020.
  • Craig, J. J., Introduction to Robotics: Mechanics and Control, 4th edition, Pearson, 2018.
  • Siciliano, B., Sciavicco, L., Villani, L., and Oriolo, G., Robotics: Modelling, Planning and Control, Springer, 2009.
  • Lynch, K. M. and Park, F. C., Modern Robotics: Mechanics, Planning, and Control, Cambridge University Press, 2017.
  • Murray, R. M., Li, Z., and Sastry, S. S., A Mathematical Introduction to Robotic Manipulation, CRC Press, 1994.
  • Yoshikawa, T., Foundations of Robotics: Analysis and Control, MIT Press, 1990.

버전

  • 문서 버전: 1.1
  • 작성일: 2026-04-19