6.87 자코비안의 열 벡터 해석
자코비안 행렬을 열 벡터(column vector)의 관점에서 분석하면, 각 관절이 말단 장치의 작업 공간 속도에 미치는 개별적 기여를 직관적으로 파악할 수 있다. 본 절에서는 기하학적 자코비안의 열 벡터를 관절 유형별로 유도하고, 그 기하학적 의미와 활용을 기술한다.
1. 열 벡터 분해
n 자유도 매니퓰레이터의 기하학적 자코비안 J(\mathbf{q}) \in \mathbb{R}^{6 \times n}를 열 벡터로 분해하면 다음과 같다.
J(\mathbf{q}) = \begin{bmatrix} \mathbf{j}_1 & \mathbf{j}_2 & \cdots & \mathbf{j}_n \end{bmatrix}
여기서 \mathbf{j}_i \in \mathbb{R}^6는 i번째 관절에 대응하는 열 벡터이다. 작업 공간 속도는 각 열 벡터의 가중합으로 표현된다.
\begin{bmatrix} \mathbf{v} \\ \boldsymbol{\omega} \end{bmatrix} = \sum_{i=1}^{n} \mathbf{j}_i \, \dot{q}_i
따라서 \mathbf{j}_i는 i번째 관절만이 단위 속도(\dot{q}_i = 1, \dot{q}_k = 0, k \neq i)로 운동할 때 말단 장치에 유발되는 6차원 작업 공간 속도 벡터이다.
2. 회전 관절의 열 벡터
i번째 관절이 회전 관절(revolute joint)인 경우, 해당 열 벡터는 다음과 같이 구성된다.
\mathbf{j}_i = \begin{bmatrix} \mathbf{j}_{v,i} \\ \mathbf{j}_{\omega,i} \end{bmatrix} = \begin{bmatrix} \mathbf{z}_{i-1} \times (\mathbf{p}_n - \mathbf{p}_{i-1}) \\ \mathbf{z}_{i-1} \end{bmatrix}
2.1 선속도 성분의 기하학적 의미
상부 3차원 벡터 \mathbf{j}_{v,i} = \mathbf{z}_{i-1} \times (\mathbf{p}_n - \mathbf{p}_{i-1})는 관절 i의 회전축 \mathbf{z}_{i-1}을 중심으로 한 회전이 말단 장치 원점에 유발하는 선속도이다. 이 외적의 크기는 다음과 같다.
\|\mathbf{j}_{v,i}\| = \|\mathbf{z}_{i-1}\| \, \|\mathbf{p}_n - \mathbf{p}_{i-1}\| \, \sin\alpha_i
여기서 \alpha_i는 관절 축 \mathbf{z}_{i-1}과 레버 암 벡터 (\mathbf{p}_n - \mathbf{p}_{i-1}) 사이의 각도이다. \|\mathbf{z}_{i-1}\| = 1이므로, 선속도의 크기는 관절 축에 수직인 레버 암의 길이에 비례한다. 레버 암이 길수록, 또한 관절 축과 레버 암이 수직에 가까울수록 선속도 기여가 커진다.
선속도 벡터의 방향은 관절 축과 레버 암 벡터 모두에 수직이며, 이는 해당 관절의 회전이 말단 장치를 이동시키는 접선 방향에 해당한다.
2.2 각속도 성분의 기하학적 의미
하부 3차원 벡터 \mathbf{j}_{\omega,i} = \mathbf{z}_{i-1}은 관절 i의 회전축 방향 단위 벡터이다. 이는 관절 i의 단위 속도 회전이 말단 장치에 직접적으로 관절 축 방향의 각속도를 부여함을 의미한다. 기준 좌표계에서 표현된 \mathbf{z}_{i-1}은 로봇의 형상에 따라 변화한다.
3. 직동 관절의 열 벡터
i번째 관절이 직동 관절(prismatic joint)인 경우, 열 벡터는 다음과 같다.
\mathbf{j}_i = \begin{bmatrix} \mathbf{j}_{v,i} \\ \mathbf{j}_{\omega,i} \end{bmatrix} = \begin{bmatrix} \mathbf{z}_{i-1} \\ \mathbf{0} \end{bmatrix}
직동 관절은 관절 축 방향으로의 순수한 병진 운동만을 생성하므로, 선속도 성분은 관절 축 방향 단위 벡터 \mathbf{z}_{i-1}이고 각속도 기여는 영벡터이다. 직동 관절의 운동은 관절 축에서 말단 장치까지의 거리에 무관하게 일정한 크기의 선속도를 생성한다.
4. 열 벡터의 요약
관절 유형에 따른 열 벡터의 구조를 정리하면 다음과 같다.
| 관절 유형 | 선속도 성분 \mathbf{j}_{v,i} | 각속도 성분 \mathbf{j}_{\omega,i} |
|---|---|---|
| 회전 관절 | \mathbf{z}_{i-1} \times (\mathbf{p}_n - \mathbf{p}_{i-1}) | \mathbf{z}_{i-1} |
| 직동 관절 | \mathbf{z}_{i-1} | \mathbf{0} |
5. 열 벡터와 생성 공간
자코비안의 열 벡터 \{\mathbf{j}_1, \mathbf{j}_2, \dots, \mathbf{j}_n\}이 생성하는 벡터 공간은 현재 형상에서 말단 장치가 즉각적으로 달성할 수 있는 모든 작업 공간 속도의 집합이다. 이를 자코비안의 열 공간(column space) 또는 상 공간(range space)이라 한다.
\mathcal{R}(J) = \left\{ \mathbf{y} \in \mathbb{R}^6 \,\middle|\, \mathbf{y} = \sum_{i=1}^{n} c_i \mathbf{j}_i, \; c_i \in \mathbb{R} \right\}
열 공간의 차원, 즉 자코비안의 랭크 r = \text{rank}(J)는 해당 형상에서 말단 장치가 독립적으로 제어할 수 있는 작업 공간 속도 성분의 수를 나타낸다. 최대 랭크 r = \min(6, n)인 경우를 비특이(non-singular) 형상이라 한다.
6. 열 벡터의 선형 독립성과 특이 형상
특정 형상 \mathbf{q}^*에서 열 벡터들이 선형 종속이 되면 자코비안의 랭크가 감소하며, 이를 특이 형상(singular configuration)이라 한다. 특이 형상에서는 열 공간의 차원이 줄어들어 말단 장치가 특정 방향으로의 속도 생성 능력을 상실한다.
열 벡터의 선형 종속이 발생하는 대표적인 기하학적 조건은 다음과 같다.
-
두 회전 관절의 축이 평행: \mathbf{z}_{i-1} \parallel \mathbf{z}_{j-1}이면 두 관절의 각속도 기여가 동일 방향이 되어, 독립적인 각속도 자유도가 감소한다.
-
관절 축이 말단 장치를 관통: 회전 관절의 축이 말단 장치 원점을 지나면 \mathbf{p}_n - \mathbf{p}_{i-1}이 \mathbf{z}_{i-1}과 평행하게 되어 외적이 영벡터가 된다. 이 경우 해당 관절의 선속도 기여가 소멸한다.
-
팔 완전 신전(arm fully extended): 직렬 매니퓰레이터의 팔이 완전히 펴지면 여러 열 벡터가 동일 평면에 놓여 특정 방향으로의 운동 능력이 사라진다.
7. 열 벡터의 기준 좌표계 변환
기하학적 자코비안의 열 벡터를 구성하는 \mathbf{z}_{i-1}, \mathbf{p}_{i-1}, \mathbf{p}_n은 모두 기준 좌표계에서 표현된 양이다. 이 값들은 순기구학 계산의 중간 결과인 동차 변환 행렬 T_{i-1}^0로부터 추출된다.
\mathbf{z}_{i-1} = R_{i-1}^0 \, \mathbf{e}_3, \quad \mathbf{p}_{i-1} = \mathbf{d}_{i-1}^0
여기서 R_{i-1}^0는 T_{i-1}^0의 회전 부분, \mathbf{d}_{i-1}^0는 병진 부분, \mathbf{e}_3 = [0, 0, 1]^\top은 z축 방향 단위 벡터이다.
자코비안을 다른 좌표계 \{A\}에서 표현하려면 다음의 변환을 적용한다.
{}^AJ = \begin{bmatrix} R_0^A & \mathbf{0} \\ \mathbf{0} & R_0^A \end{bmatrix} J
이 변환은 각 열 벡터의 선속도 성분과 각속도 성분에 동일한 회전 행렬 R_0^A를 적용하는 것에 해당한다.
8. 자유도 평면 매니퓰레이터의 열 벡터 예시
두 개의 회전 관절을 가진 2자유도 평면 매니퓰레이터를 고려하자. 링크 길이를 각각 l_1, l_2라 하면, 말단 장치의 위치는 다음과 같다.
\mathbf{p}_2 = \begin{bmatrix} l_1 \cos q_1 + l_2 \cos(q_1 + q_2) \\ l_1 \sin q_1 + l_2 \sin(q_1 + q_2) \end{bmatrix}
2차원 평면에서의 자코비안은 2 \times 2 행렬이 되며, 열 벡터는 다음과 같다.
\mathbf{j}_1 = \begin{bmatrix} -l_1 \sin q_1 - l_2 \sin(q_1 + q_2) \\ l_1 \cos q_1 + l_2 \cos(q_1 + q_2) \end{bmatrix}
\mathbf{j}_2 = \begin{bmatrix} -l_2 \sin(q_1 + q_2) \\ l_2 \cos(q_1 + q_2) \end{bmatrix}
\mathbf{j}_1은 관절 1의 회전이 유발하는 말단 장치의 선속도로서, 관절 1에서 말단 장치까지의 전체 레버 암에 의한 접선 속도이다. \mathbf{j}_2는 관절 2의 회전에 의한 기여로서, 관절 2에서 말단 장치까지의 레버 암 l_2에 의한 접선 속도이다.
q_2 = 0 또는 q_2 = \pi일 때 두 열 벡터가 평행해져 자코비안의 랭크가 1로 감소하며, 이것이 이 매니퓰레이터의 특이 형상이다. q_2 = 0은 팔이 완전히 펴진 형상에, q_2 = \pi는 완전히 접힌 형상에 해당한다.
9. 열 벡터 해석의 응용
자코비안의 열 벡터 해석은 다음과 같은 로봇 공학 문제에 활용된다.
-
특이점 식별: 열 벡터 사이의 선형 종속 관계를 기하학적으로 판별하여 특이 형상을 식별한다.
-
조작성 분석: 열 벡터들이 생성하는 타원체의 형상으로부터 말단 장치의 속도 생성 능력을 정량적으로 평가한다.
-
관절 기여도 평가: 각 관절의 열 벡터 크기와 방향을 분석하여 말단 장치 속도에 대한 관절별 기여도를 파악하고, 여유 자유도의 효과적 활용 전략을 수립한다.
-
기구학적 설계: 열 벡터의 구조를 분석하여 원하는 작업 공간 특성을 달성하기 위한 링크 길이와 관절 배치를 결정한다.
10. 참고 문헌
- Craig, J. J. (2005). Introduction to Robotics: Mechanics and Control. 3rd ed. Pearson Prentice Hall.
- Siciliano, B., Sciavicco, L., Villani, L., & Oriolo, G. (2009). Robotics: Modelling, Planning and Control. Springer.
- Spong, M. W., Hutchinson, S., & Vidyasagar, M. (2006). Robot Modeling and Control. John Wiley & Sons.
- Yoshikawa, T. (1990). Foundations of Robotics: Analysis and Control. MIT Press.
- Lynch, K. M., & Park, F. C. (2017). Modern Robotics: Mechanics, Planning, and Control. Cambridge University Press.
v 0.1