오늘 끝나면
로보틱스 기초
- ✓로보틱스 기초의 핵심 문제를 한 문장으로 설명한다
- ✓오른쪽 실습에서 로보틱스이 어떻게 움직이는지 관찰한다
- ✓다음 강의와 이어지는 한계를 말할 수 있다
실습 미션
좌표·운동학 — 로봇이 공간을 다루는 법 이 문장이 실제로 무슨 뜻인지 실습에서 한 번 손으로 확인한다.
성공 조건
- □실습의 기본값을 먼저 관찰
- □입력값이나 모드를 한 번 이상 바꿔 결과 비교
- □왜 결과가 바뀌었는지 한 문장으로 설명
Physical AI · 11
로보틱스
기초
로봇은 결국 공간 위에서 좌표를 다루는 기계다.
관절 각도를 넣으면 손끝이 어디로 가는지 나온다. 이게 순운동학이다.
거꾸로 가고 싶은 자리에서 각도를 푸는 건 역운동학이다.
로봇은 좌표로 생각한다
로봇은 위치를 숫자로만 안다. “저기 컵 잡아” 같은 말은 통하지 않는다.
공간의 한 점은 좌표로 적는다. 평면이면 (x, y), 3차원이면 (x, y, z)다.
기준점(원점)과 축 방향을 정한 한 세트를 좌표계(frame)라 한다.
베이스에 박힌 원점에서 몇 cm 오른쪽, 몇 cm 위. 이렇게 자리가 정해진다.
손끝이 어디 있냐는 위치고, 그릇을 어느 방향으로 기울였냐는 자세(orientation)다.
둘을 합친 위치와 자세를 포즈(pose)라 부른다.
그래서 로봇 일은 좌표 계산으로 환원된다.
가고 싶은 좌표를 정하고, 거기 가려면 관절을 얼마나 돌릴지 푼다.
원점에서 x로 3칸, y로 2칸. 한 점이 두 숫자로 딱 정해진다. 로봇은 위치를 이렇게만 안다.
순운동학, 각도에서 손끝 위치로
관절 각도를 알면 손끝이 어디 있는지 계산할 수 있다. 이게 순운동학(forward kinematics)이다.
팔은 링크(뼈대)와 관절(joint)이 번갈아 이어진 사슬이다.
어깨를 θ1만큼, 팔꿈치를 θ2만큼 돌리면 각 링크 끝이 어디로 가는지 삼각함수로 따라간다.
어깨에서 팔꿈치, 팔꿈치에서 손끝으로 한 마디씩 좌표를 더해 가면 마지막에 손끝 위치가 나온다.
핵심은 방향이 한쪽이라는 것이다. 각도를 넣으면 위치는 딱 하나로 정해진다.
같은 각도면 항상 같은 자리고, 답이 갈리지 않는다.
그래서 순운동학은 계산이 쉽고 늘 풀린다.
손끝에 달린 도구(엔드이펙터)가 지금 어디 있는지 알 때 매번 쓰는 계산이다.
방향은 한쪽뿐이다. 각도를 넣으면 위치가 하나로 정해져 늘 풀린다.
역운동학, 가고 싶은 자리에서 각도로
실제로 시키는 건 거꾸로다. “여기로 가” 하고 좌표를 주면 각도를 알아내야 한다. 이게 역운동학(inverse kinematics)이다.
순운동학이 각도에서 위치를 구한다면, 역운동학은 위치에서 각도를 구한다.
목표 좌표를 정해 놓고 “그 점에 손끝이 닿으려면 θ1, θ2가 얼마여야 하나”를 푸는 것이다.
근데 답이 깔끔하지 않다.
한 점에 닿는 자세가 여럿일 수 있다. 팔꿈치를 위로 굽히든 아래로 굽히든 손끝은 같은 자리에 온다.
팔이 안 닿는 먼 점은 아예 답이 없다.
그래서 역운동학은 순운동학보다 어렵고 무겁다.
여러 해 중 하나를 고르거나, 못 풀면 가까운 자세로 근사한다. 로봇 팔 제어의 진짜 난관이다.
같은 손끝 점에 닿는 자세가 둘이다. 팔꿈치를 위로 굽혀도, 아래로 굽혀도 된다. 답이 하나가 아니다.
2관절 팔을 직접 굴려 보기
슬라이더 두 개가 어깨 각도 θ1과 팔꿈치 각도 θ2다.
각도를 정하면 손끝 자리는 항상 하나로 정해진다. 같은 θ1, θ2면 언제나 같은 (x, y)가 나온다. 이 한쪽 방향이 순운동학의 성격이다.
거꾸로 손끝을 어떤 좌표에 두고 싶을 때 그걸 만드는 θ1, θ2를 찾는 게 역운동학이다. 답이 하나가 아닐 수 있다.
(74, 122)
팔꿈치 (74, 52) → 손끝 (74, 122)
각도 두 개를 정하면 손끝 자리가 딱 한 점으로 정해진다. 이게 순운동학이다.
자유도(DOF), 관절 수가 자유를 만든다
관절이 많을수록 로봇은 더 자유롭게 움직인다. 그 자유의 개수가 자유도(DOF, degrees of freedom)다.
독립적으로 움직일 수 있는 축의 수가 자유도다.
2관절 팔은 2자유도다. 평면 위 한 점에는 닿지만 손끝 방향까지 마음대로 잡지는 못한다.
공간에서 위치(3)와 자세(3)를 다 잡으려면 6자유도가 필요하다. 산업용 로봇 팔이 보통 6축인 이유다.
자유도가 모자라면 못 가는 자세가 생기고, 남으면(여유 자유도) 같은 손끝 위치를 여러 자세로 만들 수 있다.
여유가 있으면 장애물을 피해 돌아가는 길이 생긴다. 사람 팔이 7자유도라 손목을 유연하게 쓰는 것과 같다.
좌표로 목표를 잡고(좌표계), 각도에서 위치를 계산하고(순운동학), 위치에서 각도를 풀고(역운동학), 그걸 받쳐줄 관절 수를 자유도로 맞춘다. 이 네 가지가 공간을 다루는 로봇의 기본 문법이다.
Q. 관절 각도를 넣어 손끝(엔드이펙터) 위치를 구하는 계산을 뭐라 하나?
순운동학(forward kinematics)이다.각도에서 위치를 구하는 방향이고, 각도를 정하면 손끝 자리가 딱 하나로 정해져서 늘 쉽게 풀린다.
반대로 가고 싶은 위치에서 각도를 거꾸로 푸는 건 역운동학(inverse kinematics)이다. 답이 여럿이거나 없을 수 있어 더 어렵다.
| DOF | 할 수 있는 것 |
|---|---|
| 1자유도관절 1개 | 원호 위만, 직선 한 줄의 자유 |
| 2자유도관절 2개 (이 강의 팔) | 평면 한 점엔 닿지만 방향은 못 잡는다 |
| 6자유도관절 6개 · 산업용 팔 | 위치(3)와 자세(3)를 다 잡는다 |
| 7자유도관절 7개 · 사람 팔급 | 여유가 있어 장애물 피해 돌아간다 |
관절이 늘수록 자유가 늘어난다. 모자라면 못 가고, 남으면 같은 위치를 여러 자세로 만든다.