Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

BraAng Arw14

Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/264212870

An Analytical Solution of the Inverse Kinematics Problem of Industrial Serial


Manipulators with an Ortho-parallel Basis and a Spherical Wrist

Conference Paper · May 2014

CITATIONS READS

19 8,387

3 authors:

Mathias Brandstötter Arthur Angerer


Carinthian University of Applied Sciences Private University for Health Sciences, Medical Informatics and Technology GmbH
57 PUBLICATIONS   317 CITATIONS    5 PUBLICATIONS   38 CITATIONS   

SEE PROFILE SEE PROFILE

Michael Hofbaur
Joanneum Research Forschungsgesellschaft mbH
82 PUBLICATIONS   936 CITATIONS   

SEE PROFILE

Some of the authors of this publication are also working on these related projects:

Cleaning View project

SUSPICION - Robot Failure Prediction in Spot Welding Applications Using Industrial AI-Methods View project

All content following this page was uploaded by Mathias Brandstötter on 25 July 2014.

The user has requested enhancement of the downloaded file.


An Analytical Solution of the Inverse Kinematics Problem of Industrial
Serial Manipulators with an Ortho-parallel Basis and a Spherical Wrist
Mathias Brandstötter1 , Arthur Angerer1 , and Michael Hofbaur1

Abstract— An efficient and generic method to compute the ze ze


inverse kinematics of common serial manipulator arms up to E=Oe
6 DoF is shown in this work. The main focus lies on using only
E=Oe
essential design dimensions provided in most manufacturing xe ye

c4
data sheets instead of tediously deriving the Denavit-Hartenberg
parameter set. The simplest description of manipulators with C C
an ortho-parallel basis with offsets and a spherical wrist can
be accomplished by 7 geometrical parameters. We show how to a2
compute all possible joint angles analytically from a given end-

c3
effector pose. A fast and general algorithm has been established
based on this slim parameter set.

I. INTRODUCTION
Serial 6R manipulators have at most 16 solutions to the z0 z0

c2
inverse kinematics problem to ensure a desired position and b
orientation of the end-effector. If the last three axes intersect
in a point, the manipulator is characterized as decoupled and
thereby the maximum number of solutions is reduced to 8.
To position this point (denoted by C in Fig. 1) of a decoupled a1
manipulator in space there are up to 4 different postures of

c1
the first three axes. For each positioning solution there exist
two possible solutions for the last three axes for a specified O0 O0
end-effector orientation. [1] x0 y0
In this work we confine ourselves to industrial robots
(a) Side view (b) Back view
with 3R ortho-parallel basis structure and spherical wrists.
This type of robot structure is by far the most common Fig. 1. The two typical views in data sheets of serial robot manipulators
one for industrial serial manipulators. A scheme of the 6R and our defined home position in this work with the 7 essential geometrical
parameters. The coordinate system for the basis and the end-effector are
manipulator with an ortho-parallel substructure is shown in predefined.
Fig. 1. By definition of ortho-parallel 3R manipulators (see
Fig. 2) and [2], axes g1 and g2 are orthogonal to each other
when a1 is set to zero and axis g2 is parallel to axis g3 . The
inverse kinematics are based on the notation of the Denavit-
joint with axis g2 is the so-called shoulder and the joint with
Hartenberg parameters (DH-parameters) and thus on matrix
axis g3 is referred to as elbow. Robots with a spherical wrist
multiplications (see e.g., [5], [6], [7]). Küçük and Bingül [8]
are decoupled manipulators due to the property that their last
derived the closed solution of sixteen types of industrial
three axes intersect in point C. A spherical wrist is shown
manipulators in a geometrical form, however, they do not
in Fig. 5 and the wrist axes are denoted by g4 , g5 and g6 .
include offsets in the robot structures. Craig solved the
Pieper [3] showed that the position and the orientation
inverse kinematics of the Puma 560 algebraically and the
problem of the end-effector of this type of articulated robots
Motoman L-3 partially algebraic and partially geometric [9].
(decoupled manipulators) can be independently solved. Thus
the inverse kinematics calculation can be split up into a
However, using DH-parameters for inverse kinematics cal-
position and an orientation problem which simplifies the
culation in practice can be inconvenient. The DH-parameter
calculation [1].
notation is not unique and different DH-parameters can be
The conventional method to describe the structure of a
found for the same robot structure which makes it difficult
serial manipulator was introduced by Denavit and Harten-
to compare robots to each other. The coordinate frame
berg [4]. Hence, most of the calculation methods for the
orientation of the base and the end-effector and the joint
1 Mathias Brandstötter, Arthur Angerer, and Michael Hofbaur are angle offsets are also not known in many cases and the
with the Department of Biomedical Computer Science & Mecha- relation of the robot structure and the corresponding DH-
tronics, Institute of Automation and Control Engineering, UMIT,
6060 Hall in Tirol, Austria. {mathias.brandstoetter &
parameters has to be derived tediously.
arthur.angerer & michael.hofbaur}@umit.at In the following sections we describe how the inverse
TABLE I
OPW-PARAMETER COLLECTION

KUKA Katana Schunk Stäubli Unimation Epson ABB Fanuc KUKA Adept
youBot Arm 450 6M180 Powerball TX40 Puma 560 C3 IRB 2400/10 R2000iB/200R KR 6 R700 sixx Viper s650
[mm] [10] [11] [12] [13] [5] [14] [15] [16] [17] [18]
a1 33 0 0 0 0 100 100 720 25 75
a2 0 0 0 0 -20.32 0 -135 -225 -35 -90
b 0 0 0 35 149.09 0 0 0 0 0
c1 147 201.5 205 320 660.4 320 615 600 400 335
c2 155 190 350 225 431.8 250 705 1075 315 270
c3 135 139 305 225 433.07 250 755 1280 365 295
c4 217.5 188.3 75 65 56.25 65 85 235 80 80

kinematics can be calculated using only seven robot design The desired pose of the end-effector in the coordinate
parameters that are provided in most manufacturer’s data system (O0 , x0 , y0 , z0 ) can be specified by a 3×1 position
sheets. With this set any ortho-parallel manipulator with vector u0 = [ux0 , uy0 , uz0 ]T and a 3×3 rotation matrix R0e :
spherical wrist can be described. Almost all industrially  
available serial 6 DoF manipulators show such a kinematic e1,1 e1,2 e1,3
structure. R0e = e2,1 e2,2 e2,3  (1)
e3,1 e3,2 e3,3
II. ORTHO-PARALLEL MANIPULATORS WITH
SPHERICAL WRIST A. COORDINATES OF POINT C
A. Notation of Parameters
For the calculation of the inverse kinematics of the 3R
The schemes in Fig. 1 show a spacial 6 DoF manipulator ortho-parallel substructure the position of point C in the
with the notation of the link and joint parameters in the base coordinate system has to be known. The coordinates of
base coordinate system (O0 , x0 , y0 , z0 ). The end-effector point C are obtained by moving from the desired end-effector
coordinate system can be noted by (Oe , xe , ye , ze ). We call position u0 into the negative ze -direction of the end-effector
the main arm lengths c1 , c2 , c3 , and c4 and the arm- coordinate system (Oe , xe , ye , ze ) for the length c4 :
offsets a1 and a2 . The lateral offset of the third arm in      
y0 -direction is denoted by b, see Fig. 1(b). The six joint cx0 ux0 0
angles are defined as θ1 , . . . , θ6 . The home position of the cy0  = uy0  − c4 R0e 0
manipulator is given by the position of the end-effector E as cz0 uz0 1
ex0 = a1 + a2 , ey0 = b, ez0 = c1 + c2 + c3 + c4 , as can be
seen in Fig. 1. The joint angels are defined as zero in this where R0e is the orientation of the wrist defined in (1).
configuration (θi = 0 for i = 1 . . . 6).
B. 3R ORTHO-PARALLEL SUBSTRUCTURE
B. Examples of Popular Industrial Type Robots
At most four different postures are possible to position
In Tab. I the parameters for ten commonly used industrial
the manipulator end-point C of a spatial 3R manipulator to
manipulators are listed. Only seven parameters are needed
a desired point in space.
to describe the geometry of ortho-parallel manipulators with
The scheme in Fig. 2 shows the 3 DoF manipulator with
spherical wrist (OPW-parameters). The Kuka youBot Arm
the notation of the link and joint parameters in the base
and the Katana 450 6M180 are 5 DoF manipulators lacking
coordinate system (O0 , x0 , y0 , z0 ). Omitting the rotation at
joint axis g4 which results in orientation limitations in the
the manipulator’s base (θ1 = 0), one obtains a partial
workspace. The remaining manipulators provide a 6 DoF
structure of the 3R serial robot manipulator and deals with
structure. All of them geometrically differ only in link
a planar configuration. The kinematics of the projection of
lengths c1 , . . . , c4 , shoulder offsets a1 , elbow offsets a2 or
the substructure in Fig. 3 onto the x1 z1 plane is analogue to
lateral offsets b. The sign of a parameter corresponds to the
a planar 2 DoF manipulator with offset a1 . The axes of the
direction of the respective coordinate axis, e.g., a1 is positive
revolute joints in the side view (Fig. 3) are defined as points
and a2 is negative in Fig. 1(a).
G2 and G3 . The coordinates of point C in (O1 , x1 , y1 , z1 )
III. KINEMATICS are denoted as
The kinematics problem can be solved by numerical or
cx1 = c2 sin θ2 + k sin(θ2 + θ3 + ψ3 ) + a1 (2)
analytic methods. Here we show a geometry based technique
which covers the most popular industrial robot arms. The cy1 = b (3)
arrangement of the links and joints is also named as 321 cz1 = c2 cos θ2 + k cos(θ2 + θ3 + ψ3 ) (4)
kinematic structure with offsets [3]. The special design p
allows to separate the problem into a 3R ortho-parallel and where ψ3 = atan(a2 /c3 ) and k = a22 + c23 .
a 3R wrist subproblem.

Proceedings of the Austrian Robotics Workshop 2014. 8


22-23 May, 2014, Linz, Austria. (Revised Version)
xc zc z1
C ψ3
yc C

c3
a2
c3 θ3
c2
θ2
g3 ψ2 G3
θ3

a2 O1 x1
G2
c2 a1 nx1

g2

a1 θ2

c1 g1 c z0 Fig. 3. Side view of the 3R serial ortho-parallel manipulator and its 2R


θ1
z0 substructure.

cx 0 cy0
y0 O0
x0 whereas the second pair shares axis g̃2 . The difference
between the first and the second pair regarding to joint 1 is
Fig. 2. Scheme with parameters of a serial ortho-parallel 3R manipulator. given by θ̃1 . Figure 4(b) shows this geometrical description
by the top view. We also note the simple correlation between
the two posture pairs:
1) Forward Kinematics: The coordinates cx0 , cy0 and cz0
of point C in (O0 , x0 , y0 , z0 ) as a function of the joint angles ñx1 = nx1 + 2 a1 (11)
θ1 , . . . , θ3 can be computed by
cx0 = cx1 cos θ1 − cy1 sin θ1 , (5)
nt)
cy0 = cx1 sin θ1 + cy1 cos θ1 , (6) de r fro
houl
r es (s C
cz0 = cz1 + c1 , (7) ostu g̃ 3
y0
p ai r of p g̃ ’3
y1 first
using (2) to (4). g2
x1
2) Inverse Kinematics: To find all possible joint angles of
the 3R substructure for a given point C in space the following θ1
geometrical correlations are needed. G1 g̃ ’3
The component of the distance G2 C in direction x1 is θ̃ 1 res x0
given by ostu g̃ 3
p )
of !
nx1 = cx1 − a1 , (8) a ir r ba
d p lde
on ou
see Fig. 3. sec (sh
Furthermore, we define s1 as the normal distance between g̃ 2
axis g2 (point G2 in Fig. 3) and point C and calculate it by (a) A schematic top view of an ortho-parallel manipulator.
the Pythagorean theorem and (8): C
y0
q q
nx 1
s1 = n2x1 + c2z1 = (cx1 − a1 )2 + c2z1 (9) y1
ψ1 x1
Substitution of cx1 and cz1 with (2) and (4) and some a1
θ1
simplifications yield θ̃ 1 nx 1
q
b G1 a1+
s1 = c22 + k 2 + 2 c2 k cos (θ3 + ψ3 ) . (10) x0
ñ x 1
If s1 and all design parameters are given, two possible
solutions of θ3 can be found. a1
It is useful for our further considerations to group the four
possible postures of the 3R substructure into pairs. Variables
which belong to the second posture pair are marked with a
tilde in contrast to the first pair. A schematic top view with (b) The geometrical representation of the schematic top view.
all four postures of the manipulator is given in Fig. 4(a).
The first pair of postures shares the same axis g2 for joint 2, Fig. 4. Geometric construction of the two pairs of postures configurations.

Proceedings of the Austrian Robotics Workshop 2014. 9


22-23 May, 2014, Linz, Austria. (Revised Version)
To compute s2 similar to (9) we get the normal distance ye ze
between axis g̃2 and point C for the second possible pair of c4 xe
postures using (11): yc C
zc θ6
q q g6
s2 = ñ2x1 + c2z1 = (nx1 + 2 a1 )2 + c2z1 (12)
xc θ5
Substitution of nx1 in (12) gives g5
q c3 θ4
s2 = (cx1 + a1 )2 + c2z1 . (13) g4
By comparing (9) and (13) it follows that the two distances g3
s1 and s2 are equal for every point C if a1 = 0. z0
The projection of the rotated point C about the z0 -axis a2
to the x0 y0 -plane can also be calculated by the sum of a
constant rotation due to the geometrical structure y0 O0
x0
ψ1 = atan2 (b, nx1 + a1 )
Fig. 5. Scheme with parameters of a 3R spherical wrist.
and the joint angle θ1;i (see Fig. 4(b) again):
atan2 (cy0 , cx0 ) = θ1;i + ψ1
where R0e describes the desired wrist orientation. Rce in-
hence cludes a zc -axis rotation followed by a yc -axis rotation and
a rotation about the new zc -axis:
θ1;i = atan2 (cy0 , cx0 ) − atan2 (b, nx1 + a1 ) .  
c4 c5 c6 − s4 s6 −c4 c5 s6 − s4 c6 c4 s5
From now on, we define the notation of the joint angles by Rce = s4 c5 c6 + c4 s6 −s4 c5 s6 + c4 c6 s4 s5 
θAxis;Solution(s) . The second alternative of θ1 can be found −s5 c6 s5 s6 c5
by
π  where
θ1;ii = θ1;i − θ̃1 = θ1;i − 2 − ψ1 = θ1;i + 2 ψ1 − π .
2 si = sin(θi ), ci = cos(θi ), for i = 1 . . . 6 .
The first element of the set of possible solutions of the joint R0c is represented by a matrix of the form
angle θ2 can be found geometrically with the help of Fig. 3  
(elbow down configuration): c1 c2 c3 − c1 s2 s3 −s1 c1 c2 s3 + c1 s2 c3
R0c = s1 c2 c3 − s1 s2 s3 c1 s1 c2 s3 + s1 s2 c3  .
θ2,i = atan2 (nx1 , cz1 ) − ψ2 (14) −s2 c3 − c2 s3 0 −s2 s3 + c2 c3
where  2 Evaluation of element (3,3) of matrix equation (17) deliv-
s + c22 − k 2

ψ2 = acos 1 (15) ers one joint angle solution for θ5 ; from the elements (1,3)
2 s1 c2 and (2,3) the related joint angle for θ4 can be obtained;
using the cosine formula. The second solution (θ2,ii ) arises and from (3,1) and (3,2) the appropriate joint angle for
from the elbow up configuration, we get θ6 can be calculated. The second solution for the wrist
angles can be easily computed from the previous solution.
θ2,ii = atan2 (nx1 , cz1 ) + ψ2 . (16) In inverse kinematics summary the finally obtained equations
The remaining solutions (θ2;iii and θ2;iv ) result from the other are shown.
pair of postures, i.e., the posture dependent variables have to For solving the orientation part of the forward kinematics
be replaced: s1 → s2 in (15), and nx1 → ñx1 in (14) and problem, matrix R0e can be computed by evaluating R0c and
(16). The same applies to θ3;iii and θ3;iv in (10). Rce in (17).

C. 3R WRIST SUBSTRUCTURE D. SUMMARY


Using the four previously obtained positioning solutions In this subsection, we will merge the partial joint solutions
for the calculation of direct kinematics the resulting ori- previously derived in the subsections 3R Ortho-Parallel
entation of the coordinate frame of point C with respect Substructure and 3R Wrist Substructure. For the calculation
to the base coordinate system can be computed. For each of the inverse kinematics, the elements of the base-end-
positioning solution the three joints of the spherical wrist effector transformation matrix R0e , and the OPW-parameters
(see Fig. 5) have to be adjusted to get the desired orientation are necessary. All eight possible solutions of the joint angles
of the end-effector. Therefore the coordinate frame R0c has are collected in Tab. II on the next page. It can be noted that
to be rotated by an unknown rotation described by rotation the orientation part is independent of OPW-parameters.
matrix Rce which can be computed by composition of the If a serial manipulator with less than 6 DoF is considered,
rotations the absent axes in respect to the 6R manipulator must be
kept constant at zero by choosing a correct input.
T
Rce = R0c R0e (17)

Proceedings of the Austrian Robotics Workshop 2014. 10


22-23 May, 2014, Linz, Austria. (Revised Version)
Positioning Part IV. CONCLUSION
T T
[cx0 cy0 cz0 ] = [ux0 uy0 uz0 ] − c4 R0e [0 0 1] T
Denavit-Hartenberg parameters are a common method to
describe the geometric structure of serial manipulators in
θ1;i = atan2 (cy0 , cx0 ) − atan2 (b, nx1 + a1 )
kinematic calculations. However, the notation of this con-
θ1;ii = atan2 (cy0 , cx0 ) + atan2 (b, nx1 + a1 ) − π vention is not unique. Hence, for identical industrial robots
 2 different DH-parameter sets may be stated. Furthermore,
s + c22 − k 2

θ2;i,ii = ∓acos 1 + atan2 (nx1 , cz0 − c1 ) they cannot be specified intuitively nor verified quickly. We
2 s1 c2 therefore proposed a simplified description of the robots
 2
s2 + c22 − k 2

structure with a strong focus on practicability and applica-
θ2;iii,iv = ∓acos −
2 s2 c2 bility. The presented method allows to map all serial 6R
manipulators with an ortho-parallel basis and a spherical
− atan2 (nx1 + 2 a1 , cz0 − c1 )
wrist (321 kinematic structure with offsets). Based on these
 2
s1 − c22 − k 2

so-called OPW-parameters a generic analytical solution for
θ3;i,ii = ±acos − atan2 (a2 , c3 ) the kinematics problem was given. For an easy and rapid use,
2 c2 k
 2
s − c22 − k 2
 an efficient and straightforward procedure for calculating the
θ3;iii,iv = ±acos 2 − atan2 (a2 , c3 ) forward and inverse kinematics was presented.
2 c2 k
where ACKNOWLEDGMENT
q
nx1 = c2x0 + c2y0 − b2 − a1 This work was supported by Tiroler Standortagentur un-
der the project KineControl of the Translational Research
s21 = n2x1 + (cz0 − c1 )2 program.
s22 = (nx1 + 2 a1 )2 + (cz0 − c1 )2
R EFERENCES
k 2 = a22 + c23
[1] J. Angeles, ”Fundamentals of Robotic Mechanical Systems: Theory,
Orientation Part Methods, and Algorithms,” Mechanical Engineering Series. Springer,
2007.
θ4;p = atan2(e2,3 c1;p − e1,3 s1;p , [2] E. Ottaviano, M. Husty, and M. Ceccarelli, ”A study on workspace
e1,3 c23;p c1;p + e2,3 c23;p s1;p − e3,3 s23;p ) topologies of 3R industrial-type manipulators,” CEAI Journal on
Control Engineering and Applied Informatics, 8(1):33–41, 2006.
θ4;q = θ4;p + π [3] D. L. Pieper, ”The kinematics of manipulators under computer con-
q  trol,” Stanford Artificial Intelligence Report, 1968.
θ5;p = atan2 1 − m2p , mp [4] J. Denavit, R. S. Hartenberg, ”A kinematic notation for lower-pair
mechanisms based on matrices,” ASME Journal of Applied Mechan-
θ5;q = −θ5;p ics, 23:215-221, 1955.
[5] C. S. G. Lee, and M. Ziegler, ”A Geometrical Approach in Solving
θ6;p = atan2(e1,2 s23;p c1;p + e2,2 s23;p s1;p + e3,2 c23;p , the Inverse Kinematics of PUMA Robots,” Department of Electrical
− e1,1 s23;p c1;p − e2,1 s23;p s1;p − e3,1 c23;p ) and Computer Engineering, University of Michigan, 1983.
[6] R. P. Paul, B. Shimano, and G. Mayer, ”Kinematic Control Equations
θ6;q = θ6;p − π for Simple Manipulators,” IEEE Transactions on Systems, Man, and
Cybernetics, 8(11):1398–1406, 1978.
where [7] M. A., Gonzlez-Palacios, ”The unified orthogonal architecture of
mp = e1,3 s23;p c1;p + e2,3 s23;p s1;p + e3,3 c23;p industrial serial manipulators,” Robotics and Computer-Integrated
Manufacturing, 29(1):257–271, 2013.
s1;p = sin(θ1;p ) s23;p = sin(θ2;p + θ3;p ) [8] S. Küçük, Z. Bingül, ”The Inverse Kinematics Solutions of Industrial
Robot Manipulators,” Proceedings of the IEEE International Confer-
c1;p = cos(θ1;p ) c23;p = cos(θ2;p + θ3;p ) ence on Mechatronics (ICM ’04), pp. 274–279, 2004.
p = {i, ii, iii, iv} q = {v, vi, vii, viii} [9] J. J. Craig, ”Introduction to Robotics: Mechanics and Control,”
Addison-Wesley Longman Publishing Co., MA, USA, 1989.
[10] KUKA, Mobile manipulator for research and education - KUKA
youBot,” Kuka Roboter GmbH, 2013.
TABLE II [11] Neuronics, ”Katana 450 Benutzerhandbuch,” Neuronics AG, 2008.
OVERVIEW OF ALL POSSIBLE S OLUTIONS . [12] Schunk, ”Spezifikationen Powerball Leichtbauarm LWA4.6,” Schunk
GmbH & Co. KG.
[13] Stäubli, ”Arm - TX series 40 family – Instruction manual,” Stäubli
Solution
GmbH, 2012.
Joint 1 2 3 4 5 6 7 8
[14] Epson, ”Epson ProSix 6-Axis Robots,” Epson Deutschland GmbH,
θ1 θ1;i θ1;i θ1;ii θ1;ii θ1;i θ1;i θ1;ii θ1;ii 2011.
θ2 θ2;i θ2;ii θ2;iii θ2;iv θ2;i θ2;ii θ2;iii θ2;iv [15] ABB, ”Product Specification IRB 2400,” ABB Robotics Products AB.
θ3 θ3;i θ3;ii θ3;iii θ3;iv θ3;i θ3;ii θ3;iii θ3;iv [16] Fanuc, ”R-2000iBTM Series,” Fanuc Robotics America, Inc., 2009.
θ4 θ4;i θ4;ii θ4;iii θ4;iv θ4;v θ4;vi θ4;vii θ4;viii [17] KUKA, ”KR AGILUS sixx,” KUKA Roboter GmbH, 2013.
θ5 θ5;i θ5;ii θ5;iii θ5;iv θ5;v θ5;vi θ5;vii θ5;viii [18] Adept, ”Adept Viper s650/s850 Robot with MB-60R/eMB-60R User’s
θ6 θ6;i θ6;ii θ6;iii θ6;iv θ6;v θ6;vi θ6;vii θ6;viii Guide,” Adept Technology, 2012.

Proceedings of the Austrian Robotics Workshop 2014. 11


22-23 May, 2014, Linz, Austria. (Revised Version)
View publication stats

You might also like