NHG Lecture Robotics 5 Inverse Kinematics
NHG Lecture Robotics 5 Inverse Kinematics
CONTENTS
5.1 INVERSE KINEMATICS PROBLEM
R p 0
T = = An (q )
000 1
• Generalized formulation: inverse kinematics for a given value of task variables
p
r = = f r (q )
• The equations to solve are in general nonlinear, and thus it is not always possible to find
a closed-form solution.
• Multiple solutions may exist.
• Infinite solutions may exist, e.g., in the case of a kinematically redundant manipulator.
• There might be no admissible solutions, in view of the manipulator kinematic structure.
5.1 INVERSE KINEMATICS PROBLEM
❖ Primary workspace WS1: set of all positions p that can be reached with at least one
orientation (𝜽 or R)
• Out of WS1 there is no solution to the problem
• When p ∈ WS1, there is a suitable 𝜽 (or R) for which a solution exists
❖ Secondary (or dexterous) workspace WS2: set of positions p that can be reached with
any orientation (among those feasible for the robot direct kinematics)
When p ∈ WS2, there exists a solution for any feasible 𝜽 (or R)
❖ WS2 ⊆ WS1
5.1 INVERSE KINEMATICS PROBLEM
❖ SOLUTION METHODS
ANALYTICAL solution (in closed form) NUMERICAL solution (in iterative form)
• Preferred, if it can be found* • Certainly needed if n>m (redundant
• Use ad-hoc geometric inspection case), or at/close to singularities
• Algebraic methods (solution of • Slower, but easier to be set up
polynomial equations) • In its basic form, it uses the (analytical)
• systematic ways for generating a reduced Jacobian matrix of the direct kinematics
set of equations to be solved map
𝜕𝑓𝑟 (𝑞)
* Sufficient conditions for 6-dof arms 𝐽𝑟 (𝑞) =
𝜕𝑞
• 3 consecutive rotational joint axes are
• Newton method, Gradient method, and so
incident (e.g., spherical wrist), or
on…
• 3 consecutive rotational joint axes are
parallel
5.2 INVERSE KINEMATICS SOLUTIONS: THREE-LINK PLANAR ARM
❖ ALGEBRAIC SOLUTION
c123 − s123 0 a1c1 + a2c12 + a3c123
s c123 0 a1s1 + a2 s12 + a3 s123
0
T3 = 123
𝜃3 0 0 1 0
𝜑 0 0 0 1
Link 𝑎𝑖 𝛼𝑖 𝑑𝑖 𝜃𝑖 pWx
2
+ pWy
2
= a12 + a22 + 2a1a2c2
1 𝑎1 0 0 𝜃1
2
pWx + pWy
2
− a12 − a22
c2 = ; s2 = 1 − c22
2 𝑎2 0 0 𝜃2 2a1a2 c2
3 𝑎3 0 0 𝜃3 2 = ATAN 2( s2 , c2 )
5.2 INVERSE KINEMATICS SOLUTIONS: THREE-LINK PLANAR ARM
❖ ALGEBRAIC SOLUTION
From (2), (3):
𝜃2 1 = ATAN 2( s1 , c1 )
𝛽
3 = − 1 − 2
𝛼 𝜃1 If 𝜑 is not specified, then the arm is redundant and
there exist infinite solutions to the inverse kinematics
problem.
5.2 INVERSE KINEMATICS SOLUTIONS: THREE-LINK PLANAR ARM
❖ GEOMETRIC SOLUTION
𝜑 2
pWx + pWy
2
= a12 + a22 − 2a1a2 cos( − 2 )
2
pWx + pWy
2
− a12 − a22
c2 = ; s2 = 1 − c22
2a1a2 c2
𝜃2
2 = ATAN 2( s2 , c2 )
𝛽
𝛼 𝜃1
5.2 INVERSE KINEMATICS SOLUTIONS: THREE-LINK PLANAR ARM
❖ GEOMETRIC SOLUTION
𝜃2
c 2
pWx + pWy
2
= a1 + a2c2
𝛽 p2 + p2 + a2 − a2
= cos −1 Wx Wy 1 2
2a1 pWx2
+ p 2
𝛼 𝜃1 Wy
1 = 3 = − 1 − 2
5.2 INVERSE KINEMATICS SOLUTION OF MANUPULATOR WITH SPHERICAL WRIST
Solution:
• Compute wrist position 𝑃𝑊= 𝑃𝑒 − 𝑑6 𝑎𝑒
• Solve inverse kinematics for 𝑞1 , 𝑞2 , 𝑞3
• Compute R3 ( q1 , q2 , q3 )
0
• Compute R6 ( q4 , q5 , q6 ) = R3 R
3 0 T
pWx
2
+ pWy
2
+ pWz
2
= a22 + a32 + 2a2 a3c3
Link 𝑎𝑖 𝛼𝑖 𝑑𝑖 𝜃𝑖
1 0 𝜋/2 0 𝜃1
2
pWx + pWy
2
+ pWz
2
− a22 − a32
c3 =
2 𝑎2 0 0 𝜃2 2a2 a3
3 𝑎3 0 0 𝜃3
3 = ATAN 2( s3 , c3 )
( Condition : a2 − a3 2
pWx + pWy
2
+ pWz
2
a2 + a3 )
5.2 INVERSE KINEMATICS SOLUTIONS: ARTICALUATED ARM
pWx
2
+ pWy2
( a2 + a3c3 ) + pWz a3 s3
c2 =
a22 + a32 + 2a2 a3c3
2
pWx + pWy2
a3 s3 + pWz ( a2 + a3c3 )
s2 =
a2
2
+ a 3 + 2a2 a3c3
2
2 = ATAN 2( s2 , c2 )
5.2 INVERSE KINEMATICS SOLUTIONS: ARTICALUATED ARM
pWy = s1 pWx
2
+ pWy
2
3 nx 3
sx 3
ax
3
3
T6 = n y 3
sy 3
ay
3 nz 3
sz 3
az
Link 𝑎𝑖 𝛼𝑖 𝑑𝑖 𝜃𝑖
4 = ATAN 2 ( 3 a y , 3 ax )
4 0 −𝜋/2 0 𝜃4
5 = ATAN 2 ( 3 ax ) + ( 3 a y ) , 3 az , for 5 (0, )
2 2
5 0 𝜋/2 0 𝜃5
6 0 0 𝑑6 𝜃6 = ATAN 2 ( 3 s , − 3 n )
6 z z