Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Robot usually directly measures its inner kinematic parameters - joint coordinates.
Those coordinates measure the position of joints. We denote them usually as ~q, joint
coordinate of the revolute joint is denoted as , joint coordinate of the prismatic joint
is denoted as d.
User is interested in the position of the end effector or the position of the
manipulated rigid body. It has 6 DOF and it could be described in number of ways,
e.g. by the transformation matrix describing position of the end effector coordinate
system in the world coordinate system.
We are interested in the mapping between those two descriptions of the robot
position.
1 2
3 4
5 6
7 8
9 10
11 12
13 14
15 16
17 18
19 20
21 22
23 24
25
Students often confuse position of the end effector (6 gripper is important for both manipulation or operation (e.g.
DOF) with the position of the center of the gripper (point welding).
- has 3 DOF). This is a crucial error as orientation of the
Slide 1, Page 1
Direct kinematics
Direct (forward) kinematics is a mapping from joint coordinate space to space of
end-effector positions. That is we know the position of all (or some) individual joints
and we are looking for the position of the end effector. Mathematically:
1 2
3 4
5 6
~q T(~q)
7 8
9 10
11 12
13 14
15 16
17 18
19 20
21 22
23 24
25
Slide 2, Page 2
Inverse kinematics
1 2
3 4
5 6
T ~q(T)
7 8
Inverse kinematics is needed in robot control, one knows the required position of the
gripper, but for control the joint coordinates are needed.
9 10
11 12
13 14
15 16
17 18
19 20
21 22
23 24
25
Let us emphasize, that inverse kinematics is mapping, not infinitely many solutions for particular ~q.
a mathematical function. It could have none, one, several, or
Slide 3, Page 3
Slide 4, Page 4
x6
y6
5 6
7 8
l3
x5
x4
9 10
11 12
y4
13 14
y5
15 16
y2
y1
17 18
d2
x3
y3
y0
x2
19 20
21 22
l1
x1
x0
23 24
25
cos() sin() xo
cos(1 ) sin(1 ) 0
R xo
A=
= sin() cos() yo ,
A01 = sin(1 ) cos(1 ) 0 ,
00 1
0
0
1
0
0
1
where is relative rotation of second coordinate system to
1 0 l1
first coordinate system. Inverse matrix is immediately:
A12 = 0 1 0 ,
T
T
R
R xo
0 0 1
A1 =
=
(1)
00
1
cos(2 ) sin(2 ) 0
cos() sin() cos()xo sin()yo
A23 = sin(2 ) cos(2 ) 0 ,
= sin() cos() sin()xo cos()yo ,
(2)
0
0
1
0
0
1
1 0 d2
The simple serial planar manipulator is shown on the figure.
A34 = 0 1 0 ,
The manipulator consist of the revolute joint (joint variable
0 0 1
1 ), link of the length l1 , then there is a prismatic joint with
cos(2 ) sin(2 ) 0
the joint variable d2 , which is tilted by angle 2 . Consequent
A45 = sin(2 ) cos(2 ) 0 ,
joint is revolute 3 . At the end of the link with the length
0
0
1
l3 is gripper. The angle of the gripper to the base coordinate
Slide 5, Page 5
1 2
3 4
5 6
A=B
A=B
B
7 8
9 10
11 12
13 14
coincident lines, both end points of degenerate transversal could be placed to any
point on the line,
parallel lines, transversal could be placed anywhere along the parallel lines,
crossing lines, degenerate transversal is located in the intersection of lines,
15 16
17 18
19 20
21 22
23 24
25
Slide 6, Page 6
Slide 7, Page 7
Slide 8, Page 8
Slide 9, Page 9
13 14
15 16
17 18
19 20
21 22
23 24
25
5-R-1-P manipulator
1 2
3 4
5 6
7 8
9 10
11 12
13 14
15 16
17 18
19 20
21 22
23 24
25
where
cos i sin i 0 0
sin i
cos i 0 0
,
Ai1
int =
0
0
1 di
0
0
0 1
1
0
0
ai
0 cos i sin i 0
.
Aint
=
i
0 sin i
cos i
0
0
0
0
1
sin i sin i
cos i sin i
cos i
0
ai cos i
ai sin i
.
di
1
DenavitHartenberg
Matrix representing transformation from one link to the succesive link
Ai1
i
0
sin i
cos i
di
0
0
0
1
1 2
3 4
5 6
7 8
9 10
11 12
13 14
15 16
17 18
19 20
21 22
23 24
25
5 6
7 8
9 10
11 12
13 14
15 16
17 18
...
19 20
21 22
23 24
25
Inverse kinematics
We call inverse kinematics the task when there is give a matrix
T(q) =
(3)
There are a manipulator structures, which can be solved anaWe design sometimes redundant robots (with more delytically. We call them solvable.
grees
of freedom, e.g. 8), to increase the space Qs , from which
The sufficient condition of solvability is e.g. when the 6
we
select
q to allow more freedom to fulfill above requireDOF robot has three consecutive revolute joint with axes inments.
tersecting in one point.
Think about following:
The other property of inverse kinematics is ambiquity of
solution in singular points. There is often the subspace Qs of
Is it possible to design the robot with prismatic joints
the space Q, which gives the same T.
only which can position arbitrarily the rigid body in 3D
space? Why?
q Q : T(q) = T
s
depth 7.5
205
115
R2
340
78 73
54
85
70
51.5
5 6
61
32
58.5
110
50
3 4
11
77 84
20
37
80
1 2
165
140
200
408
96
102.5
20H7 +0.021
depth 7.5
0
0
-0.039
6.3a (Installation)
6.3a (Installation)
7 8
9 10
90
85
11 12
90
63
85
165
120
162
13 14
15 16
53
100 80.5
280
158
17 18
200
158
Machine cable
19 20
350
8
R9
20
21 22
23 24
B
204
115
140
200
(Maintenance space)
25
Inverse Kinematics
- example
170
170
85
1 2
85
315
Flange downward
limit line(dotted line)
308
238
3 4
Restriction on wide angle
in the rear section Note2)
R2
87
R28
0
R280
100
594
92
135
280
7 8
9 10
11 12
17
179
R611
421
294
R173
76
444
437
13 14
15 16
R331
961
31
R3
350
5 6
258
17 18
19 20
474
21 22
23 24
25
Robot arm
170
170
3 4
5 6
7 8
9 10
R5
02
26
R2
11 12
13 14
15 16
R6
96
R2
58
17 18
19 20
21 22
23 24
170
25
170
85
85
315
Flange downward
limit line(dotted line)
308
R2
87
R28
0
R280
238
135
92
594
17
179
R611
421
294
R173
R331
961
280
100
350
76
444
437
258
474
14 Outside
dimensions
Operating
range diagram
ROBOTICS:
Vladimr
Smutn
J2 axis
Rotation center
type robot, the robot hand end is saved with the position data configured of X, Y, Z, A, B and C.
with the same position data, there are several postures that the robot can change to. The posture
this configuration flag, and the posture is saved with FL1 in the position constant (X, Y, Z, A, B, C)
(2) ABOVE/BELOW
J5 axis rotation in comparison with the plane through both the J3 and the J2
f J5 axis rotation in comparison with the plane through the J2 axis vertical to Q
theisground.
.of
center
RIGHT
LEFT
(Flag )
(Flag )
3 4
ABOVE
J3 axis
Rotation center
1 2
BELOW
Note) "&B" is s
J2 axis
Rotation center
6Appendix
7 8
9 10
J2 axis
Rotation center
5 6
J4 axis
FLIPFig.6-2 Configuration flag (ABOVE/BELOW)
OW
f J5 axis rotation in comparison with the plane through both the J3 and the J2 axis. .
BELOW
ABOVE
J3 axis
Rotation center
(Flag )
NON
FILIP
Note) "&B" is shows the binary
(Flag )
13 14
15 16
17 18
19 20
12
Configura
21 22
23 24
25
3 4
y
1 (double) solution
= singular surface
11
00
00
11
1
0
1
0
0
1
l2
1
0
0
1
5 6
7 8
9 10
l1
11
00
00
11
11 12
1
0
x
Working envelope
13 14
0 solutions
1000
15 16
2 solutions
1 (double) solution
= singular surface
800
17 18
600
[degrees]
1
0
0
1
400
19 20
200
21 22
200
1
0.5
0.5
0.5
0.5
23 24
25
shows the reachable points, green color represent first configuration, red color representing second configuration. The
axis is a singular point, where any orientation is reachable,
the boundary between green and red surface is also singular,
where both solutions meet. Working space is shown here in
the interval < 0, 720o >, the spiral is actually from to
.
It shall be stressed that ideally the working space shall
occupy some compact but dense region, where all orientations
of the end effector could be reached in all locations. Visualisation of six dimensional working space of spatial manipulator
is of course difficult.
1 2
1000
1000
800
800
600
600
[degrees]
[degrees]
3 4
400
400
200
200
200
1
0.5
0.5
0.5
0.5
5 6
7 8
9 10
200
1
0.5
0.5
0.5
11 12
13 14
0.5
15 16
17 18
l2
l2
19 20
21 22
l1
23 24
l1
x
25
PUMA
1 2
3 4
5 6
7 8
9 10
11 12
13 14
15 16
17 18
19 20
21 22
23 24
25
Joints space
joint space
7
1 2
working space
6
3 4
6
4
5 6
5
2
7 8
9 10
11 12
0
6
6
0
x
13 14
working space
6
15 16
4
joint space
4
3.5
17 18
2.5
19 20
1.5
2
1
0.5
21 22
0
0.5
1
3
6
6
0
x
23 24
25
Inverse
Structure
Serial
Hybrid
Parallel
Serial
Hybrid
Parallel
Solutions
1
0, 1, N,
0, 1, N,
0, 1, N,
0, 1, N,
1
Difficulty
Easy
Difficult
Difficult
Difficult
Difficult
Easy
1 2
3 4
5 6
7 8
9 10
11 12
13 14
15 16
17 18
19 20
21 22
23 24
25
equtions have in some cases unique solution, e.g. direct kinematics of the open kinematic chain (serial manipulator) and
are relatively easily solvable. In other cases the task is not
solvable analytically or its solution is not known. Numerical
methods are used in such cases or such structures are avoided
altogether.
13 14
15 16
17 18
19 20
21 22
23 24
The robot controller usually allows using a pendant interactive control of end-effector position in various coordinate
systems:
joint coordinates (standard),
cartezian coordinates in world coordinate system (al-
25
most standard),
cylindrical coordinate system in world coordinate system,
cartesian coordinate system in end-effector coordinates
system,. . .