390 likes | 1.91k Views
4 장 Inverse Manipulator Kinematics. Http://raic.kunsan.ac.kr. Contents. 1. Introduction 2. Solvability 3. The notion of manipulator subspace when n<6 4. Algebraic vs, geometric 5. Algebraic solution by reduction to polynomial 6. Pieper ’ s solution when three axes intersect
E N D
4장 Inverse Manipulator Kinematics Http://raic.kunsan.ac.kr
Contents 1. Introduction 2. Solvability 3. The notion of manipulator subspace when n<6 4. Algebraic vs, geometric 5. Algebraic solution by reduction to polynomial 6. Pieper’s solution when three axes intersect 7. Examples of inverse manipulator kinematics 8. Standard frames 9. SOLVE-ing a manipulator 10. Repeatability and accuracy 11. Computational considerations
1. Introduction •본 장에서는 역기구학(inverse kinematics)을 다룬다. •작업장을 기준으로 하여 공구의 위치와 방위가 주어진 경우 이 목표한 결과를 이루기 위한 관절각 조합을 어떻게 계산하는가? •공구계{T}를 정지계 {S}에 기준 하여 관절각을 구하는 문제 ①기저계 {B}에 기준 하는 손목계 {W}를 찾는 문제로 계 변환을 수행 ②그 후에 역기구 계산을 하여 관절각을 구함
2. Solvability • Existence of solutions –작업공간? ① 작업공간은 manipulator의 말단효과장치가 도달할 수 있는 공간 ② 해가 존재하기 위해서는 명확한 목적 점이 작업공간 내에 존재 ③ 작업공간의 두 가지 정의를 고려 a) 자유자재(dexterous) 작업영역: robot의 말단효과장치가 어떠한 방위에서도 도달할 수 있는 공간 자유자재 한 작업영역의 어떤 점에서도 말단효과장치는 임의의 방위로 놓여질 수 있음 b) 도달가능(reachable) 작업영역: robot가 최소한 한 개의 방위로 도달할 수 있는 공간 자유자재 작업영역이 도달 가능한 작업영역의 부분 집합
Workspace 2-link manipulator에 대한 작업영역의 고려 If l1=l2: 도달가능 작업영역은 반경은 2l1 자유자재 작업영역은 단 한 개의 점(원점) 자유자재 작업영역은 존재하지 않음 If l1 l2: 도달가능 작업영역은 외경 l1+l2이고, 내경 |l1+l2|인 반지형상 공간 L2 L1 . . . . . . [그림 1] 길이 l1과 l2의 링크를 갖고 있는 2-링크 manipulator 예) by [그림 1] 팔의 1은360도 회전이 가능하지만 0 2 180 경우 : 도달 가능 작업영역은 같은 범위이지만 각 점에 도달하는 방위는 각 점에 대하여 단 한 가지씩 뿐이다. Manipulator가 6자유도 미만일 때에는 3차원 공간에서 일반적 목표의 위치와 방위를 가질 수 없다. 따라서 [그림 1]의 평면 manipulator는 평면 밖으로 도달할 수 없고, Z축의 값이 영이 아닌 어떠한 목표점도 도달 불가능하다. 작업 공간은 또한 공구계 변환에 의해서도 영향을 받음 => 손목계의 위치와 방위가 작업공간 내에 있으면 최소한 한 가지의 해가 존재.
말단효과장치가 똑같은 위치와 방위를 가질 수 있는 제2의 방법 평면팔과 말단효과장치가 어느 일정한 위치와 방위에 놓여있는 경우 • Multiple solutions [그림 2] 3-Link manipulator. (점선은 제2의 해를 표시) • •기구학 방정식: 다수 “해” 존재! • •세 개의 회전 관절을 갖는 평면팔 • 링크 길이와 관절각 범위가 충분한 경우 평면상에 커다란 • 크기의 자유자재 공간을 갖는다. • 이유: 작업공간 내부에 있는 어떤 점도 임의의 방위에서 • 도달 가능하기 때문 • • Manipulator의 다수 해 존재 • 그 중에 한가지 해를 선택해야 하는 문제점 유발 • 선정기준은 바뀔 수 있음 • 매우 타당한 선택은 “최근접 해”
A Obstacle B Case 1 Case 2 • Multiple solutions – Example [그림 3] B점에 도착할 수 있는 두 개의 방법 중 하나는 충돌을 하게 된다. By [그림 3] A점에서 B점으로 이동 시키는 경우 : 각 관절의 이동량을 최소화 최선의 선택 case 1: 방해물이 없는 경우 case 2: 방해물이 존재하는 경우 따라서, ‘근접’해가 충돌을 초래한다면 ‘원거리’해를 택하도록 만들 수도 있으며, 일반적으로는 모든 가능한 해를 다 계산하여야 할 필요가 있다. ※ 해의 숫자는 manipulator의 관절수에 의하여 결정되나, 링크인자와 관절의 허용 운동범위의 함수이기도 하다. (회전관절 manipulator에서 i, ai, di)
•선형식과는 달리 비선형 방정식군을 풀 수 있는 일반적인 알고리즘은 없다. • •주어진 위치 및 방위와 관련된 관절변수의 모든 집합을 결정하는 알고리즘에 의해 관절변수가 • 결정될 수 있다면 manipulator는 ‘가능해(solvable)’라고 한다. • : 다수해의 경우에 모든 해를 계산할 수 있어야 함을 의미 • • Manipulator 해법에 관해 제시된 전략! • 수치해: 반복계산의 특성, 폐형식의 해에 비교해 일반적으로 매우 느림 • 폐형식의 해(closed form solution): 해석적 표현에 의하여 해가 구해지는 것 또는 4차 이하의 • 방정식으로, 반복계산에 의존하지 않고도 충분히 해를 구할 수 있는 방법 • 대수적 방법, 기하학적 방법: 서로 비슷하지만 접근방법만이 다르다. • ※ 현재 거의 모든 산업용 manipulator들이 폐형식 해가 존재할 수 있도록 충분히 간단하게 설계되고 • 있으며, 6회전 관절의 manipulator가 폐형식 해를 갖기 위한 충분조건은 세 개의 이웃하는 관절축이 • 한 점에서 교차하여야 한다. • Method of solution
: 손목 관절의 위치 : 말단 링크의 방위 3. The notion of manipulator subspace when n<6 •도달 가능한 목표계(goal frame)의 집합은 그 manipulator의 도달가능 작업 공간을 구성 • n<6일 때의 n 자유도 manipulator에 대하여 도달 가능 작업공간은 n자유도 부분공간의 한 부분 Ex) [그림 1]의 2-link robot의 부분공간은 평면이 되지만, 작업공간은 이 평면의 부분집합 (l1=l2 인 경우에 반경 l1 + l2의 원) [예제 1] 3-link manipulator의 부분공간 작업공간의 부분집합이 되도록 link 길이와 관절한도가 제한
[예제 3] 2 자유도 극형 manipulator에 대한 의 부분공간? Subspace [그림 4] 2-link 극형 manipulator n<6인 manipulator의 해법 1. 일반적 목표계 가 주어지면, 수정된 목표계 을 manipulator 부분공간 안에 있으며 에 가능한 한 ‘근접’한 것으로 선택하여 계산을 한다. 2. 을 목표로 하고 역기구학을 계산하여 관절각을 찾는다. 목표점이 manipulator 작업공간 안에 있지 않으면 해를 구하는 것이 가능하지 않을 수도 있다.
i i-1 i-1 di i 1 0 0 0 1 2 0 L1 0 2 3 0 L2 0 3 4. Algebraic vs, geometric 1. Algebraic solution (3-link 평면 manipulator 고려) 식(1) [그림 5] 3-link 평면 manipulator와 링크 인자
C2에 관하여 풀면, 2를 구한 후, 1에 관하여 풀 수 있다. 식(2)에서 식(2) 식(7) 식(8) 식(3) 식(9) 식(10) 식(4) 식(5) 식(6) 식(11)
-2 y L1 1 L2 x 2. Geometric solution (3-link 평면 manipulator 고려) 식(12) 식(13) [그림 6] 3-link 평면 robot와 관련된 평면기하 식(14) 코싸인 법칙을 적용하여 2를 구할 수 있다. 식(15) 식(16) 식(17)
식(18) 를 구하기 위하여 코사인 법칙을 다시 적용 식(19) 식(20) (+ : 2<0, - : 2>0) 평면상의 각도는 가감이 가능하므로, 3관절 각들의 합은 마지막 링크의 방위가 된다. 식(21) 여기에서 3를 구하면 모든 해를 구한 것이 된다. 식(22)
5. Algebraic solution by reduction to polynomial • 한 개의 변수만이 존재할 때도 sin 와 cos 등이 나타남 초월함수의 해를 구하기 어려움 : u의 다항식으로 변환하여 해를 구할 수 있다.
6. Pieper’s solution when three axes intersect Pieper : 1. 3개의 연차적인 축이 한 점에서 교차하는 6자유도 manipulator를 다루었다. 2. 미끄럼 관절을 포함한 다른 형상에 대하여도 적용. 3. 상업적으로 나와 있는 대부분의 산업용 robot에 대하여 적용됨. 마지막 3개의 축이 교차하게 되면, 링크계 {4}, {5}, {6}의 원점은 모두 교차점에 놓이게 되며 이 점의 기저좌표계에서의 값은 식(23) i=4일 때 식(24)
의 제곱값에 대한 표현(1소거) 식(25)의 에 식(3.6)을 적용 식(28) 식(25) 식(29) 식(26) Z 요소에 관한 방정식 형태로 표현 같은 방법으로 식(30) 식(27) 식(31)
3에 대한 고려! 1, 2 ,,3 를 푼 후 4, 5 , 6에 대하여 풀 수 있다. 식(29)는 1에의 의존성이 제거되었고, 2에의 의존성은 단순한 형태를 취하고 있으므로 유용하다. 식(32) Z-Y-Z 오일러각의 해를 정확하게 따라감으로써 마지막 3각들을 구할 수 있다.
예제 1] UNIMATION사의 PUMA 560에서 가 수치값으로 주어졌을 때 i푸는 문제 (대수적 해법의 예) 의 역을 취하여 다시 표현하면, 7. Examples of inverse manipulator kinematics 식(33) 식(34) 식(35)
식(36) 식(43) 삼각함수 치환 By, 식(43), 식(36) 식(37) 식(44) 식(37)을 식(36)에 대입 식(38) 식(45) 삼각함수의 차각 공식에 의하여 +, - 부호에 따라서 3은 두 개의 가능한 해를 갖는다. 식(39) 식(40) 식(41) 식(46) 식(42) +, - 부호에 따라서 1은 두 개의 가능한 해를 갖는다.
계산된 네 개 해의 각각에 대하여, 뒤집힌 해는 다음과 같다. 식(53) 식(47) 여덟 개의 해가 모두 계산된 후에, 관절각의 한계를 만족하는가에 따라 그 중의 일부 또는 전부를 버려야 한다. 나머지 유효한 해 중에서 manipulator의 현재 형상에서 가까운 것을 통상 취하게 된다. 식(48) 식(49) 식(50) 앞에서와 같은 방법으로, 식(51) 식(52)
{W} {B} {T} {G} {S} [그림 7] 표준계의 위치 8. Standard frames 계가 일반적 robot system에서 사용되는 방법 1. 정지계 {S}는 기저계 {B}에 기준하여 정의된다. 2. 공구계 {T}는 손목계 {W}에 기준하여 명시한다. 즉, 3. a. 통상 {T}와 {S} 계의 정의는 robot의 몇가지 운동에 대하여는 변하지 않고 일정하게 남아있다. b. 이 경우에 두 계가 정의되면 사용자는 단순히 목표계 {G}의 제원의 일체를 주면 된다. 4. 공구계가 초기 위치로 부터 {T}={G}이 될 때까지 유연한 운동으로 움직여서 운동을 종료하도록 관절들을 움직이게 한다.
; known 1…… n까지를 계산 9. SOLVE-ing a manipulator
10. Repeatability and accuracy 가르친 점: Manipulator가 실제적으로 움직여가는 점으로 이때 관절의 위치 센서가 위치를 읽고 관절각을 기억. Manipulator의 반복성: Robot회사에서 manipulator가 교시된 점으로 얼마나 정밀하게 돌아올 수 있다고 명시 하는때 그것은 manipulator의 반복성을 뜻하는 것이다. 계산된 점: Manipulator가 이제까지 가보지 못한 작업공간 안의 어떤 점으로 갈 수 있는 시스템. Manipulator의 정밀성: 계산된 점에 도달할 수 있는 정확도. ※ 보정기술(calibration)을 개방하여, 특정한 manipulator의 기구인자를 예측함으로써 그들의 정밀도를 향상
11. Computational considerations • 역기구학의 경우 Atan2를 계산하기 위하여 도표를 만들어 읽는(table look-up) 서브루틴이 계산 속도를 높이기 위하여 흔히 사용된다. • 다수해를 계산하는 방법도 중요한 문제가 되며, 일반적으로 그들을 하나씩 직렬로 계산하는 것보다는 모든 다수해를 평행으로 한꺼번에 계산해내는 것이 효과적이다. • 역기구 해를 구하는데 기하적 접근을 취할 때에는 첫 번째 해를 구할 때 계산된 여러가지 각도를 단순 조작함으로 다수해를 구할 수 있다.