검색
← 모듈 로드맵

모던 로보틱스: 역학 · 계획 · 제어

교재 · 입문자 · Kevin M. Lynch · Frank C. Park · 2017 · Cambridge University Press

원제 · Modern Robotics: Mechanics, Planning, and Control

자유도 · 회전 행렬 · 동차 변환 · 2관절 팔 순기구학 · 자코비안 · 역기구학 · PD 제어를 손계산하는 수업

먼저 알아야 할 것

행렬 곱삼각함수편미분벡터

다루는 내용

Lynch · Park 『모던 로보틱스』 2~6장과 11장의 핵심을 직접 해설하는 로봇 기구학 첫 수업입니다. 그뤼블러 공식으로 자유도를 세고, 회전 행렬과 동차 변환을 손으로 계산합니다. 평면 2관절 팔로 순기구학 · 자코비안 · 특이 자세 · 역기구학을 풀고, PD 제어로 학습된 정책의 출력이 실제 움직임이 되는 연결을 보입니다.

해설

로봇 기구학 첫 수업: 자유도 · 회전 · 변환 · 순기구학 · 자코비안 (모던 로보틱스 기반)

로봇 팔이 "관절을 얼마나 돌리면 손끝이 어디에 가는가"를 계산하는 법을 이 페이지 안에서 직접 배웁니다. Lynch · Park 『모던 로보틱스』 2~6장과 11장의 핵심을 따라 자유도 세기, 회전 행렬과 동차 변환, 2관절 팔의 순기구학 · 자코비안 · 역기구학, PD 제어까지 손계산으로 익힙니다.

항목내용
출처Modern Robotics: Mechanics, Planning, and Control · Kevin M. Lynch(노스웨스턴대) · Frank C. Park(서울대) · 2017 · Cambridge University Press · 교재 홈페이지
트랙 · 수준피지컬 AI · 기초
이 수업이 다루는 범위2장(배위 공간 · 자유도), 3장(강체 운동), 4장(순기구학), 5장(속도 기구학 · 자코비안), 6장(역기구학), 11장(로봇 제어)의 핵심 개념. 책의 중심 도구인 곱 지수(PoE) 공식은 소개만 하고, 손계산은 평면 2관절 팔로 합니다. 설명 · 숫자 예는 이 사이트가 직접 만든 것입니다
먼저 알면 좋은 것벡터 · 행렬 곱, 삼각함수(sin⁡\sin, cos⁡\cos), 편미분

들어가기 전에

  • 머신러닝을 위한 수학 — 행렬 곱, 전치, 행렬식, 편미분을 씁니다. 3×3 행렬을 벡터에 곱하는 계산을 할 수 있으면 충분합니다.

한눈에 보기

  • 로봇의 자유도(degrees of freedom)를 그뤼블러 공식으로 직접 셉니다.
  • 회전 행렬과 4×4 동차 변환 행렬로 "좌표계를 돌리고 옮기는" 계산을 손으로 합니다.
  • 평면 2관절 팔에서 관절 각도 → 손끝 위치(순기구학), 관절 속도 → 손끝 속도(자코비안), 손끝 목표 → 관절 각도(역기구학)를 모두 계산합니다.
  • 자코비안의 행렬식이 0이 되는 특이 자세가 왜 위험한지 압니다.
  • PD 제어가 관절을 목표 각도로 데려가는 원리를 숫자로 확인하고, 학습된 로봇 정책의 출력이 실제 움직임이 되기까지의 연결을 이해합니다.

1. 자유도: 자세를 정하는 숫자의 개수

직관(해설용 비유): 책상 위 휴대폰의 자세는 가로 위치, 세로 위치, 돌린 각도 세 숫자로 정해집니다. 공중에 던진 휴대폰은 위치 3개와 방향 3개, 모두 6개가 필요합니다. 이 숫자의 개수가 자유도입니다. 책은 로봇이 취할 수 있는 모든 자세의 집합을 배위 공간(configuration space)이라 부르고, 그 차원이 자유도라고 정의합니다(2장).

단계: ① 강체 하나의 자유도 mm을 정합니다(평면 3, 공간 6). ② 링크(땅 포함) 수 NN과 관절 수 JJ를 셉니다. ③ 관절은 움직임을 제한합니다. 관절 ii가 허용하는 자유도를 fif_i라 하면, 제한하는 수는 m−fim - f_i입니다. ④ 전체 자유도 = 모든 링크의 자유도 − 관절이 막는 자유도.

dof=m(N−1)−∑i=1J(m−fi)=m(N−1−J)+∑i=1Jfi\text{dof} = m(N - 1) - \sum_{i=1}^{J}(m - f_i) = m(N - 1 - J) + \sum_{i=1}^{J} f_i
기호뜻
mm강체 하나의 자유도(평면 3, 공간 6)
NN링크 수(움직이지 않는 땅도 하나로 셈)
JJ관절 수
fif_i관절 ii가 허용하는 자유도(회전 관절 · 직선 관절은 1)

책은 이 식을 그뤼블러 공식(Grübler's formula)으로 소개하고, 관절이 서로 독립적인 제약을 줄 때 성립한다고 단서를 답니다.

숫자로 해 보기(해설용):

  • 평면 2관절 팔: 땅 + 링크 2개로 N=3N = 3, 회전 관절 J=2J = 2, fi=1f_i = 1. dof=3(3−1−2)+2=2\text{dof} = 3(3 - 1 - 2) + 2 = 2. 두 관절 각도면 자세가 정해집니다.
  • 평면 4절 링크(네 막대가 고리로 연결): N=4N = 4, J=4J = 4. dof=3(4−1−4)+4=1\text{dof} = 3(4 - 1 - 4) + 4 = 1. 손잡이 하나만 돌리면 나머지가 따라 움직입니다.
  • 산업용 6축 팔(공간, 회전 관절 6개가 일렬): m=6m = 6, N=7N = 7, J=6J = 6. dof=6(7−1−6)+6=6\text{dof} = 6(7 - 1 - 6) + 6 = 6. 손끝을 공간에서 원하는 위치와 방향으로 놓을 수 있는 최소 개수입니다.

왜 중요한가: 로봇 사양서의 "6자유도 팔", "7자유도 팔"이 바로 이 숫자입니다. 손끝 자세는 6개 숫자로 정해지므로, 6자유도 팔은 정해진 자세에 보통 유한 개의 관절 해가 있고, 7자유도 팔은 같은 손끝 자세를 무수히 많은 팔꿈치 모양으로 만들 수 있습니다(여유 자유도).

2. 회전 행렬과 동차 변환

직관: 지도를 90° 돌려 보면 북쪽이던 방향이 서쪽이 됩니다. 이 "돌리기"를 행렬 하나로, "돌리고 옮기기"를 4×4 행렬 하나로 씁니다(책 3장).

회전 행렬: zz축을 중심으로 θ\theta만큼 돌리는 행렬은

Rz(θ)=(cos⁡θ−sin⁡θ0sin⁡θcos⁡θ0001),R⊤R=I,det⁡R=1R_z(\theta) = \begin{pmatrix} \cos\theta & -\sin\theta & 0 \\ \sin\theta & \cos\theta & 0 \\ 0 & 0 & 1 \end{pmatrix}, \qquad R^\top R = I, \quad \det R = 1

회전 행렬 전체의 집합을 SO(3)SO(3)이라 부릅니다. 조건 R⊤R=IR^\top R = I는 "길이와 각도를 바꾸지 않는다", det⁡R=1\det R = 1은 "거울상으로 뒤집지 않는다"는 뜻입니다.

동차 변환 행렬: 회전 RR과 이동 pp를 한 행렬에 담습니다.

T=(Rp01)∈SE(3),(qs1)=T(qb1)  ⟺  qs=R qb+pT = \begin{pmatrix} R & p \\ 0 & 1 \end{pmatrix} \in SE(3), \qquad \begin{pmatrix} q_s \\ 1 \end{pmatrix} = T \begin{pmatrix} q_b \\ 1 \end{pmatrix} \;\Longleftrightarrow\; q_s = R\,q_b + p
기호뜻
RR3×3 회전 행렬(물체 좌표계의 방향)
pp3차원 이동 벡터(물체 좌표계 원점의 위치)
TT4×4 동차 변환 행렬. 전체 집합을 SE(3)SE(3)이라 부름
qbq_b, qsq_s같은 점을 물체 좌표계 {b}\{b\}와 고정 좌표계 {s}\{s\}에서 적은 좌표

숫자로 해 보기(해설용): θ=90∘\theta = 90^\circ이면 cos⁡90∘=0\cos 90^\circ = 0, sin⁡90∘=1\sin 90^\circ = 1이라

Rz(90∘)=(0−10100001),Rz(90∘)(100)=(010)R_z(90^\circ) = \begin{pmatrix} 0 & -1 & 0 \\ 1 & 0 & 0 \\ 0 & 0 & 1 \end{pmatrix}, \qquad R_z(90^\circ)\begin{pmatrix}1\\0\\0\end{pmatrix} = \begin{pmatrix}0\\1\\0\end{pmatrix}

xx축 방향이 yy축 방향으로 돌았습니다. 여기에 이동 p=(2,0,0)p = (2, 0, 0)을 더한 TT로 물체 좌표 qb=(1,0,0)q_b = (1, 0, 0)을 바꾸면 qs=(0,1,0)+(2,0,0)=(2,1,0)q_s = (0, 1, 0) + (2, 0, 0) = (2, 1, 0)입니다. "물체가 (2,0,0)(2,0,0)에 있고 90° 돌아 있을 때, 물체 기준 앞쪽 1만큼 떨어진 점은 고정 좌표로 (2,1,0)(2,1,0)"이라는 뜻입니다.

왜 4×4 행렬을 쓰나: 회전과 이동을 따로 다루면 여러 번 이어 붙일 때 식이 길어집니다. 4×4 꼴로 쓰면 변환을 이어 붙이는 것이 그냥 행렬 곱 T1T2T3⋯T_1 T_2 T_3 \cdots가 됩니다. 로봇 팔은 관절마다 변환이 하나씩 붙은 사슬이라 이 성질이 결정적입니다.

3. 순기구학: 관절 각도에서 손끝 위치로

직관: 어깨를 θ1\theta_1만큼, 팔꿈치를 θ2\theta_2만큼 굽혔을 때 손이 어디 있는지는 위팔 끝 위치에 아래팔 방향을 더하면 됩니다.

평면 2관절 팔, 링크 길이 L1L_1, L2L_2, 어깨는 원점에 있습니다.

x=L1cos⁡θ1+L2cos⁡(θ1+θ2),y=L1sin⁡θ1+L2sin⁡(θ1+θ2)x = L_1\cos\theta_1 + L_2\cos(\theta_1 + \theta_2), \qquad y = L_1\sin\theta_1 + L_2\sin(\theta_1 + \theta_2)
기호뜻
θ1\theta_1어깨 관절 각도(xx축 기준)
θ2\theta_2팔꿈치 관절 각도(위팔 방향 기준의 상대 각도)
θ1+θ2\theta_1 + \theta_2아래팔이 xx축과 이루는 절대 각도
(x,y)(x, y)손끝 위치

숫자로 해 보기(해설용): L1=1L_1 = 1, L2=0.5L_2 = 0.5, θ1=30∘\theta_1 = 30^\circ, θ2=60∘\theta_2 = 60^\circ라 하면 θ1+θ2=90∘\theta_1 + \theta_2 = 90^\circ입니다.

  • x=cos⁡30∘+0.5cos⁡90∘≈0.866+0=0.866x = \cos 30^\circ + 0.5\cos 90^\circ \approx 0.866 + 0 = 0.866
  • y=sin⁡30∘+0.5sin⁡90∘=0.5+0.5=1.0y = \sin 30^\circ + 0.5\sin 90^\circ = 0.5 + 0.5 = 1.0

책의 방식 — 곱 지수(PoE) 공식: 책 4장은 위 식처럼 기하로 푸는 대신, 각 관절을 '나사 운동'으로 보고 행렬 지수를 곱하는 일반 공식을 씁니다.

T(θ)=e[S1]θ1 e[S2]θ2⋯e[Sn]θn MT(\theta) = e^{[\mathcal{S}_1]\theta_1}\, e^{[\mathcal{S}_2]\theta_2} \cdots e^{[\mathcal{S}_n]\theta_n}\, M

여기서 MM은 모든 관절이 0일 때 손끝의 자세, Si\mathcal{S}_i는 고정 좌표계에서 적은 관절 ii의 나사 축입니다. 관절 수가 늘어도 같은 꼴로 계산되고, 위치와 방향을 한꺼번에 얻는다는 것이 장점입니다. 위 2관절 예에서 PoE로 계산해도 손끝 위치는 같습니다. 책은 전통적인 데나빗-하텐버그(D-H) 매개변수 방식은 부록 C로 돌립니다.

4. 자코비안: 관절 속도에서 손끝 속도로

직관: 어깨를 조금 빨리 돌리면 손끝이 어느 방향으로 얼마나 빨리 움직일까요? 그 "환율표"가 자코비안(Jacobian)입니다.

순기구학 식을 시간으로 미분하면(연쇄 법칙) 손끝 속도와 관절 속도가 행렬로 이어집니다.

(x˙y˙)=J(θ)(θ˙1θ˙2),J(θ)=(−L1s1−L2s12−L2s12L1c1+L2c12L2c12)\begin{pmatrix}\dot{x}\\ \dot{y}\end{pmatrix} = J(\theta)\begin{pmatrix}\dot{\theta}_1\\ \dot{\theta}_2\end{pmatrix}, \qquad J(\theta) = \begin{pmatrix} -L_1 s_1 - L_2 s_{12} & -L_2 s_{12} \\ L_1 c_1 + L_2 c_{12} & L_2 c_{12} \end{pmatrix}
기호뜻
θ˙i\dot{\theta}_i관절 ii의 각속도
x˙,y˙\dot{x}, \dot{y}손끝의 속도
s1,c1s_1, c_1sin⁡θ1\sin\theta_1, cos⁡θ1\cos\theta_1
s12,c12s_{12}, c_{12}sin⁡(θ1+θ2)\sin(\theta_1+\theta_2), cos⁡(θ1+θ2)\cos(\theta_1+\theta_2)
J(θ)J(\theta)자코비안: 각 칸은 "손끝 좌표 하나를 관절 각도 하나로 편미분한 값"

숫자로 해 보기(해설용): L1=L2=1L_1 = L_2 = 1, θ1=0\theta_1 = 0, θ2=90∘\theta_2 = 90^\circ이면 s1=0s_1 = 0, c1=1c_1 = 1, s12=1s_{12} = 1, c12=0c_{12} = 0이라

J=(−1−110)J = \begin{pmatrix} -1 & -1 \\ 1 & 0 \end{pmatrix}

어깨만 θ˙1=0.1\dot{\theta}_1 = 0.1 rad/s로 돌리면 손끝 속도는 (−0.1, 0.1)(-0.1,\ 0.1)입니다. 이 자세에서 손끝은 (1,1)(1, 1)에 있고, 어깨를 돌리면 원점을 중심으로 왼쪽 위로 움직이니 맞습니다.

특이 자세: 이 팔의 det⁡J=L1L2sin⁡θ2\det J = L_1 L_2 \sin\theta_2입니다. θ2=0\theta_2 = 0(팔을 쭉 폄)이나 180∘180^\circ(완전히 접음)이면 det⁡J=0\det J = 0이 되어, 어떤 관절 속도를 줘도 손끝이 특정 방향(팔을 따라 바깥쪽)으로는 움직이지 못합니다. 이것을 특이 자세(singularity)라 합니다. 책 5장은 자코비안이 힘의 관계도 정한다는 것(관절 토크 τ=J⊤F\tau = J^\top F)까지 다룹니다.

왜 중요한가: 학습된 로봇 정책이 "손끝을 이 방향으로 조금 움직여라"를 내면, 제어기는 자코비안을 거꾸로 써서 관절 속도로 바꿉니다. 특이 자세 근처에서는 이 역변환이 아주 큰 관절 속도를 요구해 위험해집니다.

5. 역기구학: 손끝 목표에서 관절 각도로

직관: 컵을 집으려면 "손을 저기 놓아라"를 "어깨 몇 도, 팔꿈치 몇 도"로 바꿔야 합니다. 순기구학의 반대 방향입니다(책 6장).

2관절 팔은 코사인 법칙으로 답을 바로 구할 수 있습니다.

cos⁡θ2=x2+y2−L12−L222L1L2,θ1=atan2⁡(y,x)−atan2⁡(L2sin⁡θ2, L1+L2cos⁡θ2)\cos\theta_2 = \frac{x^2 + y^2 - L_1^2 - L_2^2}{2L_1L_2}, \qquad \theta_1 = \operatorname{atan2}(y, x) - \operatorname{atan2}\big(L_2\sin\theta_2,\ L_1 + L_2\cos\theta_2\big)
기호뜻
atan2⁡(y,x)\operatorname{atan2}(y, x)점 (x,y)(x, y)의 각도를 사분면까지 구분해 주는 역탄젠트
±θ2\pm\theta_2cos⁡θ2\cos\theta_2가 같아도 팔꿈치를 위로 · 아래로 굽힌 두 해가 있음

숫자로 해 보기(해설용): L1=L2=1L_1 = L_2 = 1, 목표 (1,1)(1, 1).

  • cos⁡θ2=(1+1−1−1)/2=0\cos\theta_2 = (1 + 1 - 1 - 1)/2 = 0 → θ2=+90∘\theta_2 = +90^\circ 또는 −90∘-90^\circ
  • θ2=+90∘\theta_2 = +90^\circ: θ1=45∘−atan2⁡(1,1)=45∘−45∘=0∘\theta_1 = 45^\circ - \operatorname{atan2}(1, 1) = 45^\circ - 45^\circ = 0^\circ
  • θ2=−90∘\theta_2 = -90^\circ: θ1=45∘−atan2⁡(−1,1)=45∘+45∘=90∘\theta_1 = 45^\circ - \operatorname{atan2}(-1, 1) = 45^\circ + 45^\circ = 90^\circ

검산: (0∘,90∘)(0^\circ, 90^\circ)이면 x=1+0=1x = 1 + 0 = 1, y=0+1=1y = 0 + 1 = 1. (90∘,−90∘)(90^\circ, -90^\circ)이면 x=0+1=1x = 0 + 1 = 1, y=1+0=1y = 1 + 0 = 1. 둘 다 맞습니다. 목표가 팔이 닿는 범위 밖이면(x2+y2>(L1+L2)2x^2 + y^2 > (L_1 + L_2)^2) ∣cos⁡θ2∣>1|\cos\theta_2| > 1이 되어 해가 없습니다.

왜 해가 여러 개인가 · 일반적으로는: 6자유도 팔은 같은 손끝 자세에 보통 여러 해가 있고, 이렇게 깔끔한 식이 없는 경우도 많습니다. 책 6장은 해석적 풀이와 함께, 자코비안을 써서 조금씩 다가가는 수치적 방법(뉴턴-랩슨 반복)을 다룹니다.

6. 제어 기초: PD 제어

직관: 문을 손으로 목표 위치까지 밀 때, 멀리 있으면 세게 밀고(비례), 너무 빨리 움직이면 브레이크를 겁니다(미분). 이 두 힘의 합이 PD 제어입니다. 책 11장은 관절 하나의 운동 제어부터 시작해 PID 제어와 계산 토크 제어 등으로 넓혀 갑니다.

τ=Kp(θd−θ)−Kd θ˙\tau = K_p(\theta_d - \theta) - K_d\,\dot{\theta}
기호뜻
τ\tau관절에 주는 토크(모터 명령)
θd\theta_d목표 각도
θ\theta, θ˙\dot{\theta}현재 각도, 현재 각속도
KpK_p비례 이득: 오차가 클수록 세게
KdK_d미분 이득: 빨리 움직일수록 반대로 제동(목표 속도가 0일 때의 꼴)

숫자로 해 보기(해설용): Kp=10K_p = 10, Kd=2K_d = 2, 목표 θd=1.0\theta_d = 1.0 rad, 현재 θ=0.8\theta = 0.8 rad, θ˙=0.5\dot{\theta} = 0.5 rad/s이면

τ=10×0.2−2×0.5=2−1=1.0\tau = 10 \times 0.2 - 2 \times 0.5 = 2 - 1 = 1.0

목표 쪽으로 미는 힘(2)에서 이미 빠르게 다가가는 속도만큼 제동(1)을 뺐습니다. KdK_d가 없으면 목표를 지나쳐 진동하기 쉽고, 너무 크면 느리게 다가갑니다. 중력처럼 늘 작용하는 힘이 있으면 PD만으로는 목표 앞에서 멈추는 오차가 남을 수 있어, 오차를 누적하는 적분 항(I)을 더한 PID를 씁니다.

mermaid
flowchart LR
  A[학습된 정책: 목표 손끝 자세 또는 관절 각도] --> B[역기구학 · 자코비안으로 관절 목표 계산]
  B --> C[PD · PID 제어기: 오차 → 토크]
  C --> D[모터 · 로봇 팔]
  D --> E[센서: 관절 각도 · 속도]
  E --> C
  E --> F[순기구학으로 손끝 자세 확인]

왜 학습 기반 로봇에도 필요한가: VLA나 확산 정책 같은 학습된 정책은 보통 초당 수~수십 번 "목표 관절 각도"나 "목표 손끝 자세"를 냅니다. 그 목표를 실제 모터 토크로 바꿔 부드럽게 따라가게 하는 것은 이 수업의 기구학과 제어기입니다. 정책이 무엇을 출력하는지(관절 공간 vs 손끝 공간) 읽어 내려면 이 연결을 알아야 합니다.

연습 문제

문제 1. 평면에서 회전 관절 3개로 일렬로 이어진 팔(땅 + 링크 3개)의 자유도는?

풀이: m=3m = 3, N=4N = 4, J=3J = 3, fi=1f_i = 1. dof=3(4−1−3)+3=3\text{dof} = 3(4 - 1 - 3) + 3 = 3.

문제 2. Rz(90∘)R_z(90^\circ)로 점 (0,2,0)(0, 2, 0)을 돌리면?

풀이: Rz(90∘)(0,2,0)⊤=(0⋅0−1⋅2, 1⋅0+0⋅2, 0)=(−2,0,0)R_z(90^\circ)(0, 2, 0)^\top = (0\cdot0 - 1\cdot2,\ 1\cdot0 + 0\cdot2,\ 0) = (-2, 0, 0).

문제 3. L1=L2=1L_1 = L_2 = 1인 팔에서 θ1=90∘\theta_1 = 90^\circ, θ2=90∘\theta_2 = 90^\circ일 때 손끝 위치는?

풀이: θ1+θ2=180∘\theta_1 + \theta_2 = 180^\circ. x=cos⁡90∘+cos⁡180∘=0−1=−1x = \cos 90^\circ + \cos 180^\circ = 0 - 1 = -1, y=sin⁡90∘+sin⁡180∘=1+0=1y = \sin 90^\circ + \sin 180^\circ = 1 + 0 = 1. 손끝은 (−1,1)(-1, 1).

문제 4. 같은 팔에서 목표 (2,0)(2, 0)의 역기구학 해와, 그 자세의 det⁡J\det J는?

풀이: cos⁡θ2=(4−2)/2=1\cos\theta_2 = (4 - 2)/2 = 1 → θ2=0\theta_2 = 0, θ1=atan2⁡(0,2)−atan2⁡(0,2)=0\theta_1 = \operatorname{atan2}(0, 2) - \operatorname{atan2}(0, 2) = 0. 팔을 쭉 편 자세이고 det⁡J=sin⁡0=0\det J = \sin 0 = 0이라 특이 자세입니다.

문제 5. 6절 예에서 θ=1.0\theta = 1.0, θ˙=0.3\dot{\theta} = 0.3이면 토크는? 그 뜻은?

풀이: τ=10×0−2×0.3=−0.6\tau = 10 \times 0 - 2 \times 0.3 = -0.6. 목표에 도착했지만 아직 움직이고 있으므로 반대 방향으로 제동을 겁니다.

스스로 점검

  1. 동차 변환 행렬을 쓰면 무엇이 편해지나요?
    • 답: 회전과 이동을 한 행렬에 담아, 여러 변환을 이어 붙이는 것이 행렬 곱 한 줄로 끝납니다.
  2. 자코비안의 행렬식이 0인 자세에서 무엇이 문제인가요?
    • 답: 손끝이 어떤 방향으로는 움직일 수 없고, 그 근처에서 손끝 속도를 관절 속도로 바꾸려 하면 아주 큰 관절 속도가 필요해집니다.
  3. 같은 손끝 위치에 역기구학 해가 둘인 이유는?
    • 답: 팔꿈치를 위로 굽히거나 아래로 굽혀 같은 점에 닿을 수 있기 때문입니다. cos⁡θ2\cos\theta_2가 같아도 θ2\theta_2의 부호가 다른 두 해가 생깁니다.

용어 정리

용어쉬운 뜻
배위 공간(configuration space)로봇이 취할 수 있는 모든 자세의 집합
자유도(degrees of freedom)자세를 정하는 데 필요한 독립된 숫자의 개수
그뤼블러 공식링크 · 관절 수로 자유도를 세는 식
회전 행렬 · SO(3)SO(3)방향을 나타내는 3×3 행렬과 그 집합
동차 변환 · SE(3)SE(3)회전과 이동을 함께 담은 4×4 행렬과 그 집합
순기구학(forward kinematics)관절 값 → 손끝 자세 계산
곱 지수(PoE) 공식관절마다 나사 운동의 행렬 지수를 곱해 순기구학을 구하는 책의 방법
자코비안(Jacobian)관절 속도를 손끝 속도로 바꿔 주는 행렬
특이 자세(singularity)자코비안의 행렬식이 0이 되어 손끝이 어떤 방향으로 못 움직이는 자세
역기구학(inverse kinematics)원하는 손끝 자세 → 관절 값 찾기
PD · PID 제어오차(P) · 속도(D) · 누적 오차(I)로 모터 명령을 정하는 되먹임 제어

더 깊이 보려면

책은 본문 13개 장과 부록 4개로 되어 있습니다(교재 홈페이지 기준). 이 수업은 2~6장과 11장의 입구만 다뤘습니다.

묶음장
기초1 미리 보기, 2 배위 공간, 3 강체 운동
기구학4 순기구학, 5 속도 기구학과 정역학, 6 역기구학, 7 닫힌 사슬의 기구학
동역학 · 운동8 열린 사슬의 동역학, 9 궤적 생성, 10 경로 계획
제어 · 응용11 로봇 제어, 12 파지와 조작, 13 바퀴 달린 이동 로봇
부록A 공식 요약, B 회전의 다른 표현, C 데나빗-하텐버그 매개변수, D 최적화와 라그랑주 승수

홈페이지에는 장별 강의 영상, 코세라 강좌(6개 과정), 풀이가 있는 연습 문제, 파이썬 · MATLAB · Mathematica 교재 소프트웨어가 있습니다. 다음 단계로는 3장의 행렬 지수와 4장의 PoE 공식을 책과 영상으로 보고, 교재 소프트웨어의 순기구학 함수로 이 수업의 2관절 예제를 다시 계산해 보기를 권합니다.

다음에 볼 것

라이선스

인쇄본은 케임브리지 대학 출판부의 저작물이고, 무료 프리프린트 PDF는 개인 용도로만 제공되며 재배포가 금지되어 있습니다. 같은 곳에서 원본 그림은 출처를 밝히면 재사용할 수 있다고 허락합니다. 교재 소프트웨어(GitHub NxRLab/ModernRobotics)는 MIT 라이선스입니다. 이 페이지는 책 본문을 번역하거나 옮기지 않고, 책이 다루는 개념을 이 사이트가 직접 쓴 말과 직접 만든 2관절 팔 예제로 해설합니다.

출처

AI 원리부터 이해하기 · 피지컬 AI 모듈

피지컬 AI 모듈 학습

이 글은 피지컬 AI 모듈의 학습 자료입니다. 전체 26개 자료 중 1번째입니다.

AI 기초 과정은 현재 진도 저장을 지원하지 않습니다.

출처·원문

원문 보기

요약만

프리프린트 PDF 개인 용도만 · 재배포 금지 (소프트웨어 MIT)