Ch. 3: Forward and Inverse Kinematics: KON 318E: Introduction To Robotics
Ch. 3: Forward and Inverse Kinematics: KON 318E: Introduction To Robotics
Of Control Engineering
0 Forward
T n kinematics
Cartesian
Joint Space
Space
(q1,q2,…,qN)
(x,y,z,,,)
Inverse
kinematics
T n
0 1
(arm solution)
R o
H T n
0
SE 3
0 1
Problem Definition : For a given position and orientation find q1, q2, …, qn
• R60 q1 , q2 qn R
o60 q1 , q2 qn o
Origin of the tool frame
Spherical
wrist
0 0
o o60 oco d 6R 0 oco o60 d 6 R 0
1 1
xc ox d 6 r13
Value of the first 3 y o d r
joints c y 6 23
zc oz d 6 r33
• [xc yc zc]T are determined from the first three joint variables (q1,q2,q3),
• Kinematic decoupling allows us to solve for the first three joint
angles decoupled from the final three.
R R
3
6 0 1
3 R R R0 T
3
Since the last three joints for a spherical wrist, we can use a set
of Euler Angles to solve for them
Inverse position
y
atan x 0, y 0
x
p atan y x 0, y 0
x
atan 2 y, x y
p atan y 0, x 0
x
atan y y 0, x 0
x
undefined y 0, x 0
1 -
atan 2 xc , yc atan 2 r 2 d 2 , d
atan 2 xc , yc atan 2 xc yc d 2 , d
2 2
y1, y2
2
s
2 a3
r
3
a2
Joint 3
2 x1, x2
c 2 a 2 b 2 2ab. cos
c
b p
c 2 a 2 b 2 2ab. cos
a
r 2 s 2 a22 a32 s zc d1
Cos 3
2a2 a3
xc yc zc d1 a22 a32
2 2 2
D
2a2 a3
Sin 3 1 D 2
2 Solutions :
3 A tan 2 D, 1 D 2 •Elbow Down (with “+”)
•Elbow Up (with “-”)
y1, y2
2
s
2 a3
r
3
a2
Joint 3
2 x1, x2
2
(1) (3)
(2) (4)
s zc d1
Inverse Orientation
• Geometric solutions of inverse position problem gives 1 , 2 and 3
(with respect to the position of the wrist center)
• Final 3 joint variables (4, 5 and 6 ) are found by solving inverse
orientation problem
c 4c5c6 s4s6 c 4 c 5 s6 s 4 c 6 c 4 s5 c 4 s5 d 6
s c c c s s 4 c 5 s6 c 4 c 6 s 4 s5 s4s5d 6
T63 A4 A5 A6 4 5 6 4 6
s5 c 6 s5 c 6 c5 c5d 6
0 0 0 1
c5 r33 , s5 1 r33
2
Using the first value for 5 (s5 > 0): Using the second value for 5 (s5 < 0):
Thus for the nonsingular case, there are two solutions for the inverse
orientation kinematics
KON 318E : Introduction to Robotics 47
47
İTÜ-EEF Dept. Of Control Engineering
oco o d 6R 0
kinematics
1
inverse orientation
R R
3
6 0 1
3 R R R0 T
3
kinematics
link ai i di i
1 0 90 d1 1
2 a2 0 0 2
3 a3 0 0 3
4 0 -90 0 4
5 0 0 0 5
• we are given H = T60 such that: 6 0 0 d6 3
o x r11 r12 r13
o oy , R r21 r22
r23
oz r31 r32 r33
zc oz d 6 r33
3 atan2 D, 1 D 2
• Where d is the shoulder offset (if any) and D is given by:
xc y c d 2 zc d1 a2 a3
2 2 2 2 2
D
2a2a3
R R
3
6 R
0 T
3
0 0 1 d3 d 4
0 0 0 1
link ai i di i
1 a1 0 0 1
2 a2 180 0 2
3 0 0 d3 0
4 0 0 d4 4
c2
2a1a2
• This gives two solutions for 2: 2 atan2 c2 , 1 c2 2
• Once 2 is known, we can solve for 1:
1 atan2ox , oy - atan2a1 a2c2, a2s2
• 4 is now give as: 4 1 2 atan2r11, r12
• Finally, it is easy to see that d3 = oz + d4
Questions ??