15.16 관성 행렬의 구성
1. 개요
라그랑주 역학에서 매니퓰레이터의 관성 행렬은 운동 에너지로부터 직접 구성된다. 관성 행렬의 정확한 구성은 동역학 방정식의 정확성을 결정한다. 본 절에서는 라그랑주 방법으로 매니퓰레이터의 관성 행렬을 구성하는 방법을 다룬다.
2. 운동 에너지로부터의 정의
2.1 운동 에너지의 일반 형식
매니퓰레이터의 운동 에너지는 일반화 속도의 이차 형식으로 표현된다.
T(\mathbf{q}, \dot{\mathbf{q}}) = \frac{1}{2}\dot{\mathbf{q}}^T \mathbf{M}(\mathbf{q})\dot{\mathbf{q}}
여기서 \mathbf{M}(\mathbf{q})가 관성 행렬이다.
2.2 행렬의 추출
운동 에너지를 일반화 속도의 곱에 대해 정리하면 관성 행렬의 성분이 결정된다.
M_{ij}(\mathbf{q}) = \frac{\partial^2 T}{\partial \dot{q}_i \partial \dot{q}_j}
이는 운동 에너지를 일반화 속도에 대해 두 번 편미분하는 것이다.
3. 링크별 운동 에너지
3.1 단일 링크의 운동 에너지
매니퓰레이터의 링크 i의 운동 에너지는 병진 운동 에너지와 회전 운동 에너지의 합이다.
T_i = \frac{1}{2}m_i \mathbf{v}_{c,i}^T\mathbf{v}_{c,i} + \frac{1}{2}\boldsymbol{\omega}_i^T\mathbf{I}_i\boldsymbol{\omega}_i
여기서
- m_i: 링크의 질량
- \mathbf{v}_{c,i}: 링크 질량 중심의 선속도
- \boldsymbol{\omega}_i: 링크의 각속도
- \mathbf{I}_i: 링크의 관성 텐서(질량 중심 기준, 본체 좌표계)
3.2 자코비안의 활용
링크의 질량 중심 속도와 각속도는 자코비안을 통해 일반화 속도와 관련된다.
\mathbf{v}_{c,i} = \mathbf{J}_{v,i}(\mathbf{q})\dot{\mathbf{q}}
\boldsymbol{\omega}_i = \mathbf{J}_{\omega,i}(\mathbf{q})\dot{\mathbf{q}}
여기서 \mathbf{J}_{v,i}는 선속도 자코비안이고 \mathbf{J}_{\omega,i}는 각속도 자코비안이다.
3.3 운동 에너지의 행렬 표현
자코비안을 운동 에너지에 대입하면
T_i = \frac{1}{2}\dot{\mathbf{q}}^T(m_i\mathbf{J}_{v,i}^T\mathbf{J}_{v,i} + \mathbf{J}_{\omega,i}^T\mathbf{I}_i^{(0)}\mathbf{J}_{\omega,i})\dot{\mathbf{q}}
여기서 \mathbf{I}_i^{(0)} = \mathbf{R}_i\mathbf{I}_i\mathbf{R}_i^T는 관성 좌표계에서 표현된 관성 텐서이고 \mathbf{R}_i는 링크의 회전 행렬이다.
4. 관성 행렬의 구성
4.1 링크의 합
매니퓰레이터의 총 운동 에너지는 모든 링크의 운동 에너지의 합이다.
T = \sum_{i=1}^{n}T_i
따라서 관성 행렬은 각 링크의 기여의 합이다.
\mathbf{M}(\mathbf{q}) = \sum_{i=1}^{n}(m_i\mathbf{J}_{v,i}^T(\mathbf{q})\mathbf{J}_{v,i}(\mathbf{q}) + \mathbf{J}_{\omega,i}^T(\mathbf{q})\mathbf{R}_i(\mathbf{q})\mathbf{I}_i\mathbf{R}_i^T(\mathbf{q})\mathbf{J}_{\omega,i}(\mathbf{q}))
4.2 행렬의 성분
M_{ij}의 성분은 다음과 같이 표현된다.
M_{ij}(\mathbf{q}) = \sum_{k=1}^{n}(m_k\mathbf{J}_{v,k}^{(i)}\cdot\mathbf{J}_{v,k}^{(j)} + \mathbf{J}_{\omega,k}^{(i)T}\mathbf{R}_k\mathbf{I}_k\mathbf{R}_k^T\mathbf{J}_{\omega,k}^{(j)})
여기서 \mathbf{J}_{v,k}^{(i)}는 자코비안의 i번째 열이다.
5. 자코비안의 계산
5.1 회전 관절의 경우
회전 관절 i에 의한 링크 k의 자코비안 열은 다음과 같다.
\mathbf{J}_{v,k}^{(i)} = \mathbf{z}_{i-1} \times (\mathbf{r}_{c,k} - \mathbf{r}_{i-1}), \quad \text{if } i \leq k
\mathbf{J}_{\omega,k}^{(i)} = \mathbf{z}_{i-1}, \quad \text{if } i \leq k
여기서 \mathbf{z}_{i-1}은 관절 i의 회전축이고 \mathbf{r}_{i-1}은 관절 i의 위치이다.
5.2 직선 관절의 경우
직선 관절 i에 의한 자코비안 열은 다음과 같다.
\mathbf{J}_{v,k}^{(i)} = \mathbf{z}_{i-1}, \quad \text{if } i \leq k
\mathbf{J}_{\omega,k}^{(i)} = 0, \quad \text{if } i \leq k
5.3 관절의 영향
관절 i가 링크 k 이후에 있으면(i > k) 그 관절의 운동은 링크 k에 영향을 주지 않으므로 자코비안 열은 0이다.
6. 관성 행렬의 성질
6.1 대칭성
관성 행렬은 대칭이다.
M_{ij} = M_{ji}
이는 운동 에너지가 일반화 속도의 곱에 대해 대칭이라는 점에서 유도된다.
6.2 양정성
관성 행렬은 양정행렬이다.
\dot{\mathbf{q}}^T\mathbf{M}(\mathbf{q})\dot{\mathbf{q}} > 0, \quad \forall \dot{\mathbf{q}} \neq 0
6.3 자세 의존성
관성 행렬은 일반화 좌표 \mathbf{q}의 함수이며, 자세에 따라 변한다.
7. 응용 예시: 2자유도 평면 매니퓰레이터
7.1 운동학
2자유도 평면 매니퓰레이터에서 링크 1의 질량 중심 위치는
\mathbf{r}_{c,1} = (l_{c1}\cos q_1, l_{c1}\sin q_1)
링크 2의 질량 중심 위치는
\mathbf{r}_{c,2} = (l_1\cos q_1 + l_{c2}\cos(q_1 + q_2), l_1\sin q_1 + l_{c2}\sin(q_1 + q_2))
7.2 운동 에너지의 계산
각 링크의 운동 에너지를 계산하고 더하여 총 운동 에너지를 얻는다.
7.3 관성 행렬
이로부터 다음의 관성 행렬이 얻어진다.
M_{11} = m_1 l_{c1}^2 + I_1 + m_2(l_1^2 + l_{c2}^2 + 2l_1 l_{c2}\cos q_2) + I_2
M_{12} = M_{21} = m_2(l_{c2}^2 + l_1 l_{c2}\cos q_2) + I_2
M_{22} = m_2 l_{c2}^2 + I_2
여기서 I_1, I_2는 각 링크의 질량 중심 기준 관성이다.
8. 본 절의 의의
본 절은 라그랑주 방법으로 매니퓰레이터의 관성 행렬을 구성하는 방법을 다루었다. 관성 행렬의 정확한 구성은 동역학 방정식의 정확성과 시뮬레이션, 제어의 성능을 결정한다.
9. 참고 문헌
- Spong, M. W., Hutchinson, S., & Vidyasagar, M. (2020). Robot Modeling and Control (2nd ed.). Wiley.
- Murray, R. M., Li, Z., & Sastry, S. S. (1994). A Mathematical Introduction to Robotic Manipulation. CRC Press.
- Featherstone, R. (2008). Rigid Body Dynamics Algorithms. Springer.
- Siciliano, B., Sciavicco, L., Villani, L., & Oriolo, G. (2010). Robotics: Modelling, Planning and Control. Springer.
version: 1.0