32.11 오일러 각 기반 해석적 자코비안 변환
오일러 각(Euler angles) 기반 해석적 자코비안은 엔드 이펙터의 방향을 오일러 각으로 매개변수화할 때 사용되는 해석적 자코비안의 구체적 표현이다. 본 변환의 핵심은 오일러 각의 시간 미분 \dot{\vec{\phi}} = (\dot{\phi}, \dot{\theta}, \dot{\psi})^\top와 엔드 이펙터의 물리적 각속도 \vec{\omega} 사이의 선형 사상을 제공하는 표현 행렬 \mathbf{E}(\vec{\phi})의 구성에 있다. 본 절에서는 대표적 오일러 각 규약에 대한 표현 행렬의 유도, 해석적 자코비안의 구체적 변환, 표현 특이점, 그리고 수치적 구현 절차를 학술적으로 다룬다.
1. 오일러 각 규약과 회전 행렬
오일러 각은 세 축 주위의 순차적 기본 회전(elementary rotation)을 통해 3차원 방향을 매개변수화한다. 회전 순서와 회전 축의 선택에 따라 12가지 오일러 각 규약이 존재하며, 크게 두 부류로 나뉜다.
고유 오일러 각(proper Euler angles): 첫 번째와 세 번째 축이 동일한 6가지 규약(ZYZ, ZXZ, XYX, XZX, YZY, YXY).
타이트-브라이언 각(Tait–Bryan angles): 세 축이 모두 다른 6가지 규약(ZYX, ZXY, XYZ, XZY, YZX, YXZ). 이 중 ZYX 규약은 항공 분야의 RPY(roll–pitch–yaw) 각에 대응하며 별도 절에서 다룬다.
본 절에서는 로봇 공학에서 고전적으로 사용되어 온 ZYZ 규약을 중심 예시로 다루며, 다른 규약에도 동일한 절차가 적용된다.
ZYZ 규약의 오일러 각 (\phi, \theta, \psi)에 의한 회전 행렬은 공간 고정 z축 주위 \phi 회전, 중간 y'축 주위 \theta 회전, 최종 z''축 주위 \psi 회전의 순차 합성으로 정의된다.
\mathbf{R}_{\text{ZYZ}}(\phi, \theta, \psi) = \mathbf{R}_z(\phi) \, \mathbf{R}_y(\theta) \, \mathbf{R}_z(\psi)
전개된 형태는 다음과 같다.
\mathbf{R}_{\text{ZYZ}} = \begin{bmatrix} c_\phi c_\theta c_\psi - s_\phi s_\psi & -c_\phi c_\theta s_\psi - s_\phi c_\psi & c_\phi s_\theta \\ s_\phi c_\theta c_\psi + c_\phi s_\psi & -s_\phi c_\theta s_\psi + c_\phi c_\psi & s_\phi s_\theta \\ -s_\theta c_\psi & s_\theta s_\psi & c_\theta \end{bmatrix}
여기서 c_x = \cos x, s_x = \sin x이다.
2. 오일러 각 시간 미분과 각속도의 관계
엔드 이펙터의 순간 각속도 \vec{\omega}는 세 기본 회전의 각속도 기여의 누적합으로 기술된다. ZYZ 규약에서 세 축은 다음과 같이 배치된다.
- 첫 번째 축: 공간 고정 z축, 즉 \hat{e}_1 = [0, 0, 1]^\top.
- 두 번째 축: 첫 번째 회전 후의 y'축, 즉 \hat{e}_2 = \mathbf{R}_z(\phi) \, [0, 1, 0]^\top = [-\sin\phi, \cos\phi, 0]^\top.
- 세 번째 축: 두 번째 회전 후의 z''축, 즉 \hat{e}_3 = \mathbf{R}_z(\phi) \mathbf{R}_y(\theta) \, [0, 0, 1]^\top = [\cos\phi \sin\theta, \sin\phi \sin\theta, \cos\theta]^\top.
따라서 각속도는 다음과 같이 세 성분의 합으로 표현된다.
\vec{\omega} = \dot{\phi} \, \hat{e}_1 + \dot{\theta} \, \hat{e}_2 + \dot{\psi} \, \hat{e}_3
이를 행렬 형태로 정리하면 오일러 각의 시간 미분과 각속도의 선형 사상 \vec{\omega} = \mathbf{E}(\vec{\phi}) \, \dot{\vec{\phi}}가 다음의 표현 행렬로 얻어진다.
\mathbf{E}_{\text{ZYZ}}(\phi, \theta, \psi) = \begin{bmatrix} 0 & -\sin\phi & \cos\phi \, \sin\theta \\ 0 & \cos\phi & \sin\phi \, \sin\theta \\ 1 & 0 & \cos\theta \end{bmatrix}
이 표현 행렬은 오일러 각의 규약에 종속적이며, 세 기본 회전 축의 공간 표현을 열 벡터로 나란히 배열한 구조를 가진다.
3. 표현 행렬의 행렬식과 가역성
ZYZ 표현 행렬의 행렬식은 공간 고정 z축 벡터 \hat{e}_1과 다른 두 축 벡터 \hat{e}_2, \hat{e}_3가 형성하는 평행육면체의 부피이다. 계산하면 다음과 같다.
\det \mathbf{E}_{\text{ZYZ}}(\phi, \theta, \psi) = \sin\theta
따라서 \theta \in (0, \pi)인 정규 구성에서 \mathbf{E}_{\text{ZYZ}}는 가역이며, 두 번째 오일러 각이 \theta = 0 또는 \theta = \pi인 구성에서 특이해진다. 이 구성에서는 첫 번째 축 \hat{e}_1과 세 번째 축 \hat{e}_3가 서로 평행하거나 반평행하게 되어 \phi와 \psi가 독립적으로 결정되지 않는 자유도 상실이 발생하며, 이를 표현 특이점(representation singularity) 또는 짐벌 잠김(gimbal lock)이라 한다.
32.11.4 해석적 자코비안의 구성
오일러 각 기반 해석적 자코비안 \mathbf{J}_a(\vec{q}) \in \mathbb{R}^{6 \times n}은 위치 블록과 오일러 각 블록의 수직 결합으로 구성된다.
\mathbf{J}_a(\vec{q}) = \begin{bmatrix} \mathbf{J}_p(\vec{q}) \\ \mathbf{J}_\phi(\vec{q}) \end{bmatrix}
위치 블록은 기하학적 자코비안의 선속도 블록과 일치하며
\mathbf{J}_p(\vec{q}) = \mathbf{J}_v(\vec{q}) = \frac{\partial \vec{p}}{\partial \vec{q}}
오일러 각 블록은 표현 행렬의 역사상을 통하여 얻어진다.
\mathbf{J}_\phi(\vec{q}) = \mathbf{E}_{\text{ZYZ}}^{-1}(\vec{\phi}(\vec{q})) \, \mathbf{J}_\omega(\vec{q})
따라서 기하학적 자코비안 \mathbf{J}_g = [\mathbf{J}_v^\top, \mathbf{J}_\omega^\top]^\top와의 관계는 다음의 블록 대각 변환으로 요약된다.
\mathbf{J}_a(\vec{q}) = \begin{bmatrix} \mathbf{I}_3 & \mathbf{0} \\ \mathbf{0} & \mathbf{E}_{\text{ZYZ}}^{-1}(\vec{\phi}) \end{bmatrix} \mathbf{J}_g(\vec{q})
32.11.5 표현 행렬의 역행렬
\mathbf{E}_{\text{ZYZ}}의 역행렬은 \theta \neq 0, \pi인 정규 구성에서 해석적으로 얻어진다. 수반 행렬(adjugate) 관계와 \det \mathbf{E}_{\text{ZYZ}} = \sin\theta를 사용하면 다음의 형태가 도출된다.
\mathbf{E}_{\text{ZYZ}}^{-1}(\phi, \theta, \psi) = \frac{1}{\sin\theta} \begin{bmatrix} -\cos\phi \, \cos\theta & -\sin\phi \, \cos\theta & \sin\theta \\ -\sin\phi \, \sin\theta & \cos\phi \, \sin\theta & 0 \\ \cos\phi & \sin\phi & 0 \end{bmatrix}
이 명시적 형태는 해석적 자코비안의 오일러 각 블록을 \mathbf{J}_\phi = \mathbf{E}_{\text{ZYZ}}^{-1} \mathbf{J}_\omega로 직접 계산할 때 사용된다. 실제 수치 구현에서는 명시적 역행렬을 계산하는 대신 선형 연립 방정식 \mathbf{E}_{\text{ZYZ}} \mathbf{J}_\phi = \mathbf{J}_\omega의 해를 구하는 편이 수치적으로 안정적이다.
분모 \sin\theta에서 명확히 드러나듯이 \theta \to 0 또는 \theta \to \pi에서 \mathbf{E}_{\text{ZYZ}}^{-1}의 성분이 발산하며, 해석적 자코비안의 오일러 각 블록이 수치적으로 불안정해진다.
4. ZYZ 규약의 표현 특이점 분석
ZYZ 규약의 표현 특이점은 두 번째 오일러 각이 \theta = 0 또는 \theta = \pi인 구성에서 발생한다. 기하학적으로 이는 첫 번째 회전 축(공간 z축)과 세 번째 회전 축(중간 좌표계의 z''축)이 평행 또는 반평행하게 되는 상황에 대응한다. 이 구성에서는 다음과 같은 현상이 일어난다.
첫째, 회전 행렬 \mathbf{R}_{\text{ZYZ}}(\phi, 0, \psi) = \mathbf{R}_z(\phi + \psi)가 되어 \phi와 \psi의 합만이 결정되고 둘 각각은 개별적으로 결정되지 않는다. 이는 순기구학 입력으로부터 오일러 각을 추출할 때의 비유일성으로 이어진다.
둘째, 엔드 이펙터에 임의의 각속도 \vec{\omega}를 부여하려 할 때 해당 각속도를 생성하기 위한 (\dot{\phi}, \dot{\theta}, \dot{\psi})가 일의적으로 결정되지 않거나 크기가 발산한다. 이는 표현의 수학적 특이성이지 매니퓰레이터의 물리적 운동 불능이 아니다.
이러한 표현 특이점은 매니퓰레이터의 기구학적 특이점과 구별되어야 한다. 기하학적 자코비안이 완전 계수인 구성에서도 오일러 각 표현 특이점이 발생하면 해석적 자코비안만이 특이해진다.
5. 다른 오일러 각 규약의 표현 행렬
ZYZ 외의 다른 고유 오일러 각 규약에 대해서도 동일한 절차로 표현 행렬이 유도된다. 대표적인 예로 ZXZ 규약 (\phi, \theta, \psi)에서는
\mathbf{E}_{\text{ZXZ}}(\phi, \theta, \psi) = \begin{bmatrix} 0 & \cos\phi & \sin\phi \, \sin\theta \\ 0 & \sin\phi & -\cos\phi \, \sin\theta \\ 1 & 0 & \cos\theta \end{bmatrix}
이고 \det \mathbf{E}_{\text{ZXZ}} = -\sin\theta이다(부호는 규약의 양의 방향 선택에 따라 달라질 수 있다). 일반적으로 고유 오일러 각 규약의 표현 행렬은 중간 각 \theta의 정현함수에 비례하는 행렬식을 가지며, \theta = 0, \pi에서 특이해진다.
이러한 규약 간 유도 절차의 통일성은 오일러 각 기반 해석적 자코비안의 체계적 구성을 가능하게 하며, 응용에 따라 표현 특이점이 작업 공간에서 발생할 가능성이 낮은 규약을 선택하는 설계 지침을 제공한다.
32.11.8 회전 행렬로부터 오일러 각 추출
순기구학 계산에서 얻어지는 회전 행렬 \mathbf{R} = [r_{ij}]로부터 ZYZ 오일러 각을 추출하는 공식은 다음과 같다. 정규 구성(r_{33}^2 < 1)에서:
\theta = \text{atan2}\left(\sqrt{r_{13}^2 + r_{23}^2}, \; r_{33}\right)
\phi = \text{atan2}(r_{23}, \; r_{13}), \qquad \psi = \text{atan2}(r_{32}, \; -r_{31})
특이 구성(r_{33} = \pm 1, 즉 \theta = 0 또는 \pi)에서는 \phi와 \psi가 개별적으로 결정되지 않으므로 관례상 \psi = 0으로 고정하고 \phi를 적절히 선택한다. 이러한 추출 절차는 해석적 자코비안 계산의 전처리 단계에서 수행된다.
32.11.9 수치적 구현 절차
오일러 각 기반 해석적 자코비안의 실시간 계산은 다음 단계로 수행된다.
단계 1: 관절 변수 \vec{q}에 대해 순기구학을 계산하여 동차 변환 {}^0\mathbf{T}_n을 얻는다. 여기서 \vec{p} = {}^0\vec{p}_n, \mathbf{R} = {}^0\mathbf{R}_n을 추출한다.
단계 2: 회전 행렬 \mathbf{R}로부터 ZYZ 오일러 각 (\phi, \theta, \psi)를 추출한다.
단계 3: 기하학적 자코비안의 블록 \mathbf{J}_v, \mathbf{J}_\omega를 계산한다.
단계 4: 표현 행렬 \mathbf{E}_{\text{ZYZ}}(\phi, \theta, \psi)를 구성한다.
단계 5: 위치 블록 \mathbf{J}_p = \mathbf{J}_v를 그대로 사용하고, 오일러 각 블록 \mathbf{J}_\phi는 선형 연립 방정식 \mathbf{E}_{\text{ZYZ}} \mathbf{J}_\phi = \mathbf{J}_\omega의 해로 구한다.
단계 6: 두 블록을 수직으로 결합하여 \mathbf{J}_a = [\mathbf{J}_p^\top, \mathbf{J}_\phi^\top]^\top을 구성한다.
특이 구성 근방에서는 \sin\theta가 작은 값을 가지므로 감쇠 최소 제곱법 등의 정칙화가 요구될 수 있다. 또는 해석적 자코비안 사용을 포기하고 기하학적 자코비안으로 전환하여 각속도 기반 오차 표현을 사용하는 전략이 선택된다.
32.11.10 응용과 실무적 고려
오일러 각 기반 해석적 자코비안은 다음과 같은 응용에서 유용하다. 첫째, 엔드 이펙터의 방향이 오일러 각의 시간 함수로 주어지는 궤적 추종 제어. 둘째, 목표 자세가 오일러 각으로 명시되는 작업 공간 계획. 셋째, 방향 오차를 오일러 각 차로 표현하는 회귀 제어 설계.
반면 다음의 한계는 실무적 선택에 영향을 미친다. 첫째, 표현 특이점에서 수치적 불안정성. 둘째, 오일러 각의 비유일성(동일 회전 행렬에 대해 여러 오일러 각 조합이 대응 가능). 셋째, 방향 각의 랩핑(wrapping) 문제로 인한 추적 궤적의 불연속성.
이러한 한계로 인해 현대적 로봇 제어에서는 기하학적 자코비안과 각속도 또는 사원수 기반 방향 오차 표현이 선호되며, 오일러 각 기반 해석적 자코비안은 특정 응용과 교육적 문맥에서 주로 활용된다.
32.11.11 학술적 의의
본 절에서 정립한 오일러 각 기반 해석적 자코비안 변환은 로봇 공학에서 다음의 학술적 의의를 가진다. 첫째, 순차적 기본 회전의 각속도 기여 누적 원리를 통해 표현 행렬 \mathbf{E}_{\text{ZYZ}}의 체계적 구성 절차를 제공한다. 둘째, 행렬식 \det \mathbf{E}_{\text{ZYZ}} = \sin\theta는 표현 특이점의 명시적 수학적 조건을 제시한다. 셋째, 기하학적 자코비안과의 블록 변환 관계 \mathbf{J}_a = \text{diag}(\mathbf{I}_3, \mathbf{E}_{\text{ZYZ}}^{-1}) \mathbf{J}_g는 수치 구현의 직접적 공식을 제공한다. 넷째, 표현 특이점의 기하학적 해석(첫·세 번째 회전 축의 공선성)은 매개변수 선택의 설계 지침이 된다. 다섯째, 본 절의 내용은 후속 절 RPY 각 기반 변환의 비교 기준을 제공한다.
출처
- Sciavicco, L. and Siciliano, B., Modelling and Control of Robot Manipulators, 2nd edition, Springer, 2000.
- Siciliano, B., Sciavicco, L., Villani, L., and Oriolo, G., Robotics: Modelling, Planning and Control, Springer, 2009.
- 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.
- Murray, R. M., Li, Z., and Sastry, S. S., A Mathematical Introduction to Robotic Manipulation, CRC Press, 1994.
- Shuster, M. D., “A survey of attitude representations”, Journal of the Astronautical Sciences, Vol. 41, No. 4, pp. 439–517, 1993.
- Goldstein, H., Poole, C. P., and Safko, J. L., Classical Mechanics, 3rd edition, Addison-Wesley, 2002.
버전
- 문서 버전: 1.1
- 작성일: 2026-04-19