종이 팔로 배우는 로봇공학 입문
스탠퍼드 대학 CS223A 「로봇공학 입문」(Oussama Khatib 교수, 2008년, 16강)을 혼자 공부하려고 한국어로 새로 쓴 교재다. 강의 하나가 장 하나이고, 16장 모두 있다. 책상 위 종이 팔 하나를 예로 들어, 그림과 직접 움직여 보는 그림으로 설명한다.
목차
1장. 로봇 팔은 무엇을 풀어야 하나강의 1강 · 순기구학, 역기구학, 자코비안, 동역학, 제어를 수식 없이 그림으로 2장. 위치와 방향을 숫자로 적기강의 2강 · 자유도, 회전행렬, 동차변환 · 연습문제와 파이썬 확인 코드 3장. 변환을 잇고, 방향을 세 각도로 적기강의 3강 · 변환 곱하기와 변환 고리, 오일러 각과 고정 각, 짐벌 잠금, 오일러 파라미터 · 연습문제와 파이썬 확인 코드 4장. 링크를 숫자 네 개로 적기: DH 파라미터강의 4강 · 링크 길이·비틀림·오프셋·관절 각, 좌표계 붙이는 규칙, 링크 변환과 순기구학 · 연습문제와 파이썬 확인 코드 5장. DH 표로 순기구학 끝까지 계산하기강의 5강 · RPRR 팔과 스탠퍼드 Scheinman 팔의 DH 표, ⁰T₆ 읽기 · 보충: 종이 팔 역기구학 6장. 관절 속도에서 손끝 속도로: 자코비안강의 6강 · 편미분으로 만드는 자코비안, 기본 자코비안, 각속도와 외적, 속도 전파 · 연습문제와 파이썬 확인 코드 7장. 관절 하나에 열 하나: 자코비안 바로 읽기와 특이점강의 7강 · 자코비안의 명시적 형태, 좌표계 바꾸기, 스탠퍼드 팔, 특이점 · 연습문제와 파이썬 확인 코드 8장. 속도는 J로, 힘은 Jᵀ로: 특이점, 손끝 속도 제어, 정적 힘강의 8강 · 손목 특이점, 손끝 점 옮기기, resolved-rate 제어, 가상일과 τ = JᵀF · 연습문제와 파이썬 확인 코드 9장. 로봇의 눈: 카메라로 재고, 찾고, 따라가기강의 9강(초청 강의) · 핀홀 카메라, 스테레오 깊이와 오차, 짝 찾기, 특징점, 추적, 시각 서보 · 연습문제와 파이썬 확인 코드 10장. 부드러운 길: 궤적 만들기강의 10강 · 관절 공간과 작업 공간, 3차 다항식, 경유점 속도, 직선 + 포물선 혼합, 5차 다항식, 장애물 · 연습문제와 파이썬 확인 코드 11장. 힘이 움직임을 만든다: 동역학 첫걸음강의 11강 · 운동 방정식의 모양, 뉴턴·오일러 방정식, 관성 텐서와 평행축 정리, 뉴턴-오일러 알고리즘, 라그랑주 맛보기 · 연습문제와 파이썬 확인 코드 12장. 운동 에너지에서 운동 방정식으로: 질량 행렬, 원심력·코리올리 힘, 중력강의 12강 · 질량 중심 자코비안으로 만드는 질량 행렬, 크리스토펠 기호, 중력 벡터 · 연습문제와 파이썬 확인 코드 13장. 제어의 첫걸음: 용수철, 댐퍼, 그리고 에너지강의 13강 · 열린 루프와 닫힌 루프, 관절 공간 제어와 resolved-rate, 질량–용수철–댐퍼, 고유 진동수와 감쇠비, 에너지로 보는 안정성, PD 제어의 시작 · 연습문제와 파이썬 확인 코드 14장. 이득 고르기와 모델로 돕기: 임계 감쇠, 제어 분할, PID강의 14강 · 고유 진동수와 감쇠비로 PD 이득 고르기, 제어 분할, 궤적 따라가기, 정상 상태 오차와 PID, 기어비와 유효 관성 · 연습문제와 파이썬 확인 코드 15장. 팔 전체를 제어하기: 계산 토크 제어와 작업 공간 제어강의 15강 · PD + 중력 보상의 안정성, 관절 공간의 비선형 동적 분리, 손끝의 질량 Λ와 작업 공간 제어 · 연습문제와 파이썬 확인 코드 16장. 닿으면서 움직이기: 힘 제어, 사람 곁의 로봇, 온몸 제어강의 16강 · 강성과 컴플라이언스, 힘 되먹임과 감쇠, 선택 행렬 Ω, 움직임과 힘의 통합 제어, 매크로-미니 구동, 과제와 자세, 여러 곳이 닿는 전신 제어 · 연습문제와 파이썬 확인 코드이 교재로 공부하는 법
- 장을 먼저 읽는다. 슬라이더가 있는 그림은 직접 움직여 본다.
- 절마다 있는 "영상에서 보기" 링크로 강의의 그 장면을 본다. 강의는 영어이고 유튜브에서 영어 자막을 켤 수 있다.
- "잠깐, 생각해 보기"에서 멈추고 답을 적어 본다.
- 장 끝 문제를 손으로 푼다.
준비물
| 필요한 것 | 처음 나오는 곳 |
|---|---|
| 고등학교 삼각함수 (sin, cos) | 1장 |
| 벡터와 내적 | 2장 (본문에서 설명한다) |
| 행렬 곱하기 | 2장 (본문에서 설명한다) |
| 미분과 편미분 | 6장 (본문에서 설명한다) |
| 외적 | 6장 (본문에서 설명한다) |
| 미분방정식 맛보기 | 13장 (본문에서 설명한다) |
| 파이썬 (없어도 된다) | 장마다 끝의 확인 코드 |
강의와 자료
- 강의 영상: 유튜브 재생목록
- 전사본, 유인물, 숙제와 풀이: Stanford Engineering Everywhere CS223A
- 강의 자료는 스탠퍼드가 Creative Commons Attribution 3.0으로 공개했다. 이 교재는 그 강의를 듣고 한국어로 새로 쓴 독학 정리이며, 스탠퍼드의 공식 자료가 아니다.