72
UNIVERSIT ´ E DE MONTR ´ EAL INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND INTRINSICALLY REDUNDANT TASKS LIGUO HUO D ´ EPARTEMENT DE G ´ ENIE M ´ ECANIQUE ´ ECOLE POLYTECHNIQUE DE MONTR ´ EAL RAPPORT PR ´ ESENT ´ E EN VUE DE L’EXAMEN DE SYNTH ` ESE ORAL (G ´ ENIE M ´ ECANIQUE) NOVEMBER 2006 c Liguo Huo, 2006.

UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

UNIVERSITE DE MONTREAL

INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND

INTRINSICALLY REDUNDANT TASKS

LIGUO HUO

DEPARTEMENT DE GENIE MECANIQUE

ECOLE POLYTECHNIQUE DE MONTREAL

RAPPORT PRESENTE EN VUE DE L’EXAMEN DE

SYNTHESE ORAL

(GENIE MECANIQUE)

NOVEMBER 2006

c© Liguo Huo, 2006.

Page 2: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

iii

ABSTRACT

The research objective of this proposal is to take advantage of the functional redun-

dancy for optimizing the inverse kinematic solution. This proposal is comprised of

four sections.

Section 1 introduces the concept of functionally-redundant tasks, which is ignored

by most of researchers until now. Then it presents the commonly existence of the

functionally-redundant tasks in the industrial robotic field.

In Section 2, the related research on kinematic redundancy resolution is reviewed,

including the local and global optimization approaches, and the application of

intelligent control techniques. The developed functional redundancy resolutions,

including the twist decomposition approach, are also introduced in this section.

Section 3 proposes the research direction and methodology in the following two

years. The numerical robustness and comparison of the twist decomposition ap-

proach (TDA), the generalization of TDA, and the application of TDA to different

cases are discussed in the section.

Finally, the conclusion and time schedule is presented in Section 4.

Page 3: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

iv

CONTENTS

ABSTRACT : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : iii

CONTENTS : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : iv

LIST OF FIGURES : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : vii

LIST OF NOTATIONS AND SYMBOLS : : : : : : : : : : : : : : : : : : : viii

LIST OF TABLES : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : x

SECTION 1 INTRODUCTION : : : : : : : : : : : : : : : : : : : : : 1

1.1 Background and Basic Terminology . . . . . . . . . . . . . . . . . 4

1.1.1 Degrees of Freedom of a Mechanical System . . . . . . . . 4

1.1.2 Degrees of Freedom of the End-Effector . . . . . . . . . . . 5

1.1.3 Kinematic Redundancy . . . . . . . . . . . . . . . . . . . 6

1.2 Problem Formulation . . . . . . . . . . . . . . . . . . . . . . . . 7

1.3 Research Objective . . . . . . . . . . . . . . . . . . . . . . . . . 12

SECTION 2 LITERATURE REVIEW : : : : : : : : : : : : : : : : : 13

2.1 Level of Kinematic Analysis . . . . . . . . . . . . . . . . . . . . 13

2.1.1 Direct and Inverse Kinematic Problem . . . . . . . . . . . 13

2.2 Differential Kinematics and Redundancy . . . . . . . . . . . . . . 15

2.2.1 Geometric and Analytical Jacobian Matrices . . . . . . . . 16

2.2.2 Classification of Redundancy-Resolution Schemes . . . . . 21

2.3 Local Optimization Algorithms . . . . . . . . . . . . . . . . . . . 23

2.3.1 Schemes Using the Generalized Inverse . . . . . . . . . . . 24

2.3.1.1 Inverse Kinematic Solutions Considering the Order

of Priority . . . . . . . . . . . . . . . . . . . . . 26

Page 4: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

v

2.3.1.2 Schemes Using the Weighted Generalized Inverse . 28

2.3.2 Scheme Using Householder Reflection . . . . . . . . . . . 29

2.4 Global Optimization Algorithms . . . . . . . . . . . . . . . . . . 31

2.4.1 Schemes Using the Pontrygain’s Maximum Principle . . . . 31

2.4.2 Schemes Using the Calculus of Variations . . . . . . . . . . 33

2.5 Redundancy-Resolution in Intelligent Control . . . . . . . . . . . 35

2.5.1 Fuzzy-Based Redundancy-Resolution Approach . . . . . . . 36

2.5.2 Neural Networks-Based Redundancy-Resolution Approach . 36

2.5.3 Genetic Algorithms-Based Redundancy-Resolution Approach 37

2.5.4 Pros and Cons of Intelligent Controls . . . . . . . . . . . . 38

2.6 Functional Redundancy-Resolution . . . . . . . . . . . . . . . . . 38

2.6.1 Elimination Method . . . . . . . . . . . . . . . . . . . . . 40

2.6.2 Virtual Joint Method . . . . . . . . . . . . . . . . . . . . 41

2.6.3 Twist-Decomposition Method . . . . . . . . . . . . . . . . 43

SECTION 3 PROPOSED RESEARCH : : : : : : : : : : : : : : : : : 46

3.1 Numerical Robustness of TDA . . . . . . . . . . . . . . . . . . . 46

3.2 Generalization the Kinematic Redundancy Resolution . . . . . . . 47

3.3 Global TDA Optimization . . . . . . . . . . . . . . . . . . . . . 48

3.4 Study of Other Functionally Redundant Tasks . . . . . . . . . . . 49

3.4.1 3P-2R Tasks . . . . . . . . . . . . . . . . . . . . . . . . 49

3.4.2 3P-Positioning Tasks . . . . . . . . . . . . . . . . . . . . 50

3.4.3 2P-2R Tasks . . . . . . . . . . . . . . . . . . . . . . . . 50

3.5 Numerical Simulations . . . . . . . . . . . . . . . . . . . . . . . 50

3.5.1 Different Secondary Tasks . . . . . . . . . . . . . . . . . . 51

3.5.1.1 Joint-limits Avoidance . . . . . . . . . . . . . . . 51

3.5.1.2 Singularities Avoidance . . . . . . . . . . . . . . 51

3.5.1.3 Minimum-time/energy Consumption . . . . . . . 51

3.5.2 Different Manipulators . . . . . . . . . . . . . . . . . . . 52

Page 5: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

vi

3.5.2.1 Five-Axis Manipulators . . . . . . . . . . . . . . 52

3.5.2.2 Six-Axis Manipulators . . . . . . . . . . . . . . 52

3.5.2.3 Seven-Axis Manipulators . . . . . . . . . . . . . 52

SECTION 4 CONCLUSION AND TIME SCHEDULE : : : : : : : : : 54

4.1 Potential Original Contribution . . . . . . . . . . . . . . . . . . . 54

4.2 Time Schedule . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

REFERENCES : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 56

Appendix : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 63

Page 6: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

vii

LIST OF FIGURES

Figure 1.1 The six lower kinematic pairs . . . . . . . . . . . . . . . . . . 2

Figure 1.2 Classification of the kinematic chains . . . . . . . . . . . . . . 3

Figure 1.3 A Classification of the robotic manipulators: (a) PA10-6C from

MITSUBISHI[2]; (b) Agile Eye from Laval University[3]; (c)SARAH

Robotic Hand from Laval University[4]; (d)COMET-II from Chiba

University[5]. . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

Figure 1.4 Intrinsic and functional redundancies of serial robotic tasks . . . 9

Figure 1.5 Kinematic redundant manipulator: Robot 1 . . . . . . . . . . 10

Figure 1.6 Arc welding task (left) and laser cutting task (right) . . . . . . 11

Figure 1.7 Pick-up task (left) and milling task (right) . . . . . . . . . . . . 12

Figure 2.1 Mapping between joint space and operational space . . . . . . . 14

Figure 2.2 General n axis manipulator[1] . . . . . . . . . . . . . . . . . . 19

Figure 2.3 Classification of RR schemes . . . . . . . . . . . . . . . . . . . 22

Figure 2.4 Classification of functional redundancy-resolution schemes . . . 40

Page 7: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

viii

LIST OF NOTATIONS AND SYMBOLS

DH: Denavit-Hartenberg;

DKP: direct kinematics problem;

DOF: degrees of freedom;

EE: end-effector;

GI: generalized inverse;

GPM: gradient projection method;

GS: graphics simulation;

IKP: inverse kinematics problem;

RR: redundancy-resolution;

FRR: functional redundancy resolution;

TDA: twist decomposition approach;

NN: neural networks;

GAs: genetic algorithms;

FL: fuzzy logic;

FRMRA: fuzzy resolved motion rate algorithm;

MRRA: motion-rate resolving algorithm;

MOM: measure of manipulability;

DKP: function solving DKP;

IKP: function solving IKP;

J : joint space;

T : task space;

O: operational space;

n: dimension of the joint space;

o: dimension of the operational space;

t: dimension of the task space;

rI : degree of intrinsic redundancy;

Page 8: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

ix

rF : degree of functional redundancy;

rK : degree of kinematic redundancy;

Fi: frame attached to body i;

FA: frame attached to the base;

FB: frame attached to the EE;

p: position vector of the origin of FB with respect to FA;

Q: rotation matrix of FB with respect to FA;;

ω: angular velocity vector of the EE;

t: twist array expressing the end-effector velocity as t ≡[

ωT pT

]T

;

FjAFi: homogeneous transformation expressing the pose of Fi with respect to frame

Fj;

vect: function transforming a 3× 3 rotation matrix into axial vector;

J: Jacobian matrix;

A: the upper three rows of J pertaining to the angular velocity;

B: the lower three rows of J pertaining to the translational velocity;

θ: joint position vector;

θ: joint velocity vector;

W: positive-definite weighting matrix;

M: projector;

P: plane projector;

L: line projector;

T: twist projector;

Page 9: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

x

LIST OF TABLES

Table 1.1 Classification of the kinematic chains. (Ci is the degree of connec-

tivity of link i, while Cmax is the maximum degree of connectivity

of all links) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

Table 4.1 Time schedule . . . . . . . . . . . . . . . . . . . . . . . . . . 55

Page 10: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

1

SECTION 1

INTRODUCTION

A manipulator is a device that helps human beings to perform manipulating tasks.

A robotic manipulator is to be distinguished from the previous for its ability to lead

itself through computer control. Once programmed, it can implement the same

task repeatedly. In general, robotic manipulators can be studied using the concept

of kinematic chain. A kinematic chain is a set of rigid bodies, also called links,

coupled by kinematic pairs. A kinematic pairs is the coupling of two rigid bodies so

as to constrain their relative motion. There are two basic types of kinematic pairs,

namely, upper and lower kinematic pairs. An upper kinematic pair is obtained

through either line contact or point contact, and thus, appear in cam-and-follower,

gear trains, and roller bearings, for example. A lower kinematic pair occurs when

contact takes place along a surface common to the two bodies[1]. As shown in

Fig. 1.1, there are six lower kinematic pairs, namely, (E) Planar, (S) Spherical, (C)

Cylindrical, (R) Revolute, (P) Prismatic, and (H) Helicoidal.

As shown in Fig. 1.2 and classified in Table 1.1, kinematic chains are termed either

simple or complex; and either open or closed. Simple chains are those having links

with a degree of connectivity1 of less than or equal to two, while complex chains

are those having at least one link with a degree of connectivity greater than two.

Open and closed simple kinematic chains occur in serial manipulators and linkages,

respectively. Open complex kinematic chains are sets of open kinematic chains in a

tree-type structure, and occur therefore in tree-type manipulators. Closed complex

kinematic chains are termed either parallel or hybrid depending on whether the

1The degree of connectivity of a body is defined as the number of bodies directly connected tothe said body through kinematic pairs.

Page 11: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

2

Figure 1.1 The six lower kinematic pairs

(E) Planar pair: DOF=3 (S) Spherical pair: DOF=3

(C) Cylindrical pair: DOF=2 (R) Revolute pair: DOF=1

(P) Prismatic pair: DOF=1 (H) Helicoidal pair: DOF=1

kinematic loops lie in parallel arrays or not. Closed complex kinematic chains with

loops in parallel arrays occur in parallel manipulator, while all the other kinematic

chains are classified in hybrid manipulators, i.e., those containing either more than

two links with a degree of connectively greater than two, and those containing both

closed and open kinematic chains. Figure 1.3 presents four examples of different

types of manipulators, which include a serial manipulator, a parallel manipulator,

a robotic hand and a walking machine. Clearly, both the robotic hand and the

walking machine can be classified as tree-type manipulators.

In this report, we focus on serial manipulators, i.e., simple open kinematic chains.

In such manipulators, there are exactly two bodies with a degree of connectivity

of one, called end-bodies, and all the other bodies with a degree of connectivity

Page 12: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

3

Figure 1.2 Classification of the kinematic chains

(a) Serial (b) Linkage

(C) Tree-type (d) Parallel

(e) Hybrid

of two. One end-body is arbitrary regarded as fixed and is called the base, while

the other end-body is regarded as movable and is called the moving body, or the

end-effector (EE) of the manipulator.

Page 13: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

4

Open ClosedSimple Serial Manipulator Linkage

Cmax ≤ 2 Ci = 1, i = 1; 2 Ci = 2Ci = 2, i > 2

Complex Tree-type manipulator Parallel manipulatorCmax > 2 Cmax > 2 Ci > 2, i = 1; 2

with no loop Ci = 2, i > 2Hybrid manipulator

all other cases

Table 1.1 Classification of the kinematic chains. (Ci is the degree of connectivityof link i, while Cmax is the maximum degree of connectivity of all links)

1.1 Background and Basic Terminology

1.1.1 Degrees of Freedom of a Mechanical System

In general, the minimum number of variables (also called coordinates) to completely

specify the configuration of a mechanical system is called the degrees of freedom

(DOF) for that system. For a serial manipulator, each independent variables is

typically associated with a joint i, e.g., µi. Since, the DOF related to a serial

manipulator is the sum of DOF of each joint. The combination of the joint positions

of a manipulator is referred to as a posture. We can combine the joint position into

a joint vector, namely θ, given by

θ ≡ [µ1 · · · µn]T ∈ J n; (1.1)

where J is the Joint space in which θ is defined, and its dimension n is given as,

n = dim(J ), therefore n is the DOF of the manipulator.

Page 14: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

5

Figure 1.3 A Classification of the robotic manipulators: (a) PA10-6C fromMITSUBISHI[2]; (b) Agile Eye from Laval University[3]; (c)SARAH Robotic Handfrom Laval University[4]; (d)COMET-II from Chiba University[5].

a. Serial manipulator b. Parallel manipulator

c. Robotic hand d. Walking machine

1.1.2 Degrees of Freedom of the End-Effector

The combination of the position and the orientation of a rigid body is referred to

as the pose of the corresponding body. For a rigid body freely moving in three-

dimensional space, a minimum of six coordinates are required to completely define

its mobility or degrees of freedom (DOF). At the displacement level, the pose of

a rigid body can be defined by the position of a point of the body together with

the orientation of the body around that point. The position of a point of the body

Page 15: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

6

can be defined by specifying its three Cartesian coordinates in some convenient

coordinate frame, e.g., px, py and pz. Similarly, the orientation of the body around

that point can be defined by three angles in some convenient coordinate frame, i.e.,

µx, µy and µz. We can combine the six elements into one array, namely x, given as

x ≡[

µx µy µz px py pz

]T

: (1.2)

The motion of the EE can be defined by the motion of x. The space in which the

EE undergoes its motion is usually called the operational space, denoted by O, and

its dimension o is given as o = dim(O).

For a specific task, the motion of the EE may require the whole operational space

O or only a subspace of O. In both cases, we call the space in which the task is

undergoing, the task space T , its dimension t is given as t ≤ o, since dim(T ) ≤dim(O). In all cases, we must have n ≥ o ≥ t with T ⊆ O, otherwise the task can

not be performed by the manipulator.

1.1.3 Kinematic Redundancy

The domain of this research proposal is limited to kinematic redundancy.

Definition 1.1: Kinematic redundancy

A pair made of a serial manipulator and a task is said to be kinematically redundant

when the dimension of the joint space J , denoted by n = dim(J ), is greater than the

dimension of the task space T of the EE, denoted by t = dim(T ) ≤ 6, while the task

space being totally included into the resulting operation space of the manipulator,

i.e., T ⊆ O, and hence, n > t. The degree of kinematic redundancy of a pair of

Page 16: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

7

serial manipulator-task, namely rK, is computed as

rK = n− t: (1.3)

In a system with kinematic redundancy, it is possible to change the internal struc-

ture or configuration of the mechanisms without changing the position and orien-

tation of the EE[6]. In this proposal, the term “redundancy” refers to “kinematic

redundancy”.

A typical example of a redundant manipulator is the human arm, which has ap-

proximately seven DOF from the shoulder to the wrist. If the base and the hand

position and orientation are both fixed, requiring six DOF; the elbow can still be

moved, due to the additional mobility associate with the redundant DOF. Thus,

it becomes possible to avoid obstacles in the workspace. Furthermore, if a joint of

a redundant manipulator reaches its mechanical limit, there might be other joints

that allow execution of the same prescribed EE motion.

1.2 Problem Formulation

Many redundant manipulators have been developed so far. Some were developed

for research purposes, while others have already been used in real applications.

However, the control of a redundant manipulator is more challenging, since there

are infinitely many joint trajectories that exist for a given task. The operator

must evaluate the best one according to a performance criterion. The solution

strategy, which effectively exploits the potential advantages of kinematically re-

dundant mechanisms, is called: Redundancy Resolution (RR) scheme. Since there

is no general RR scheme solution, RR scheme has attracted the attention of many

researchers for three decades.

Page 17: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

8

Redundancy is a concept related to the definition of the task instead the intrinsic

feature of the robot’s structure. Even if a manipulator is kinematically redundant

for a specific task, it may not be redundant for another one. Hence, according to

the relation among joint space, operational space and task space, kinematic redun-

dancy can be classified into two groups, i.e., functional redundancy and intrinsical

redundancy.

Definition 1.2: Intrinsic redundancy

A serial manipulator is said to be intrinsically redundant when the dimension of

the joint space J , denoted by n = dim(J ), is greater than the dimension of the

resulting operational space O of the EE, denoted by o = dim(O) ≤ 6, i.e., n > o.

The degree of intrinsic redundancy of a serial manipulator, namely rI , is computed

as

rI = n− o (1.4)

Definition 1.3: Functional redundancy

A pair made of a serial manipulator and a task is said to be functionally redundant

when the dimension of the operational space O of the EE, denoted by o = dim(O) ≤6, is greater than the dimension of the task space T of the EE, denoted by t =

dim(T ) ≤ 6, while the task space being totally included into the operation space

of the manipulator, i.e., T ⊆ O, and hence, o > t. The degree of functional

redundancy of a serial manipulator-task pair, namely rF , is computed as

rF = o− t: (1.5)

Apparently from eqs.(1.4) and (1.5), the kinematic redundancy of eq.(1.3) can be

rewritten as

rK = rI + rF ; (1.6)

Page 18: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

9

Figure 1.4 Intrinsic and functional redundancies of serial robotic tasks

rI

rF

which makes clear that kinematic redundancy comes from two different sources:

the functional redundancy and the intrinsic redundancy. The distinction among

the different redundant manipulators is shown in Fig. 1.4. When n = o, these are

non-redundant manipulators; when n > o, intrinsic redundancy occurs. In the case

of n < o, the manipulator does not exist because it can not fulfill the motion in

operational space. For example, let us consider a PRRRR serial manipulator as

shown in Fig. 1.5. For this manipulator, J is of dimension 5, i.e., dim(J ) = n = 5,

the resulting O is only of dimension 4 (positioning a point of the EE in 3D space

and orienting the EE around a vertical axis), i.e., dim(O) = o = 4, and hence, this

manipulator has a degree of intrinsic redundancy of one, i.e., rI = n−o = 5−4 = 1.

For the positioning task in 3D space without considering its orientation , T is

only of dimension 3, i.e., dim(T ) = t = 3, and hence, the degree of functional

Page 19: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

10

redundancy of the pair of manipulator-task is one, i.e., rF = o − t = 4 − 3 = 1.

Finally, the kinematic redundancy of this pair of manipulator-task is two because

rK = rI +rF = 1+1 = 2, and not one. In the literature, most of the research works

on redundancy-resolution of serial manipulators study only the case of rF = 0, and

thus, rK = rI . In this proposal, we rather study the opposite case, i.e., rF 6= 0 and

thus, rK = rF + rI .

Figure 1.5 Kinematic redundant manipulator: Robot 1

P1

µ2

µ3 µ4 µ5

x

yz

In 3D space, seven-axes serial manipulators are intrinsically redundant, e.g., the

Canadarm2. For intrinsically redundant manipulator, the scheme of using the null

space2 of the Jacobian matrix can be directly used to select an optimized solution.

Six-axes serial manipulators are the most well known and popular robots because

2Null space: If T is a linear transformation of Rn, then the null space Null(T) is the set ofall vectors x such that T(x) = 0, i.e., Null(T) ≡ {x : T(x) = 0}.[7]

Page 20: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

11

they are multipurpose. In fact, they can produce any position and orientation of the

EE in their workspace. These manipulators are able to be functionally redundant

when the tasks require less than the full six-DOF mobility of the EE. As shown

in Figs. 1.6 and 1.7, arc-welding, laser cutting and milling tasks that require only

5-DOF (t = 5). For all these tasks, there exist an axis around which a rotation of

the EE is irrelevant to the task. In these cases, the tasks and the manipulators are

functionally-redundant. A similar situation occurs for the pick and place operation

of axis-symmetric objects (t = 4 or 5).

Figure 1.6 Arc welding task (left) and laser cutting task (right)

Most of the redundancy resolutions (RR) focus on the solution of intrinsically-

redundant manipulators, and use the null-space of the Jacobian matrix. However,

the RR schemes that use the null space of the Jacobian matrix can not directly

be used to solve the functionally-redundant problem. In this cases, the Jacobian

matrix is a full rank square matrix, and hence the dimension of its null space is

zero. That is to say, the well known RR schemes that use the null space of the

Jacobian matrix are not able to solve the functionally-redundant problem directly.

Page 21: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

12

Figure 1.7 Pick-up task (left) and milling task (right)

@@Iirrelevant axesof symmetry

­­

­­

­­­Á

1.3 Research Objective

Many industrial tasks, such as arc-welding, milling, deburing, laser-cutting, and

many others, require less than six-DOF, because of the presence of a symmetry

axis of the EE. The EE rotation around the symmetry axis is irrelevant, and thus

functional redundancy occur as these tasks are performed by the manipulators with

DOF greater or equal to six, i.e., n ≥ 6. Hence, the main research objective of

the thesis is to study how to take advantage of the functional redundancy when

solving the inverse kinematic problem.

Page 22: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

13

SECTION 2

LITERATURE REVIEW

2.1 Level of Kinematic Analysis

The kinematic analysis of serial manipulators comprises the study for three aspects

of such mechanical systems[1]:

1. the relations between joint positions and Cartesian positions of the EE, known

as displacement analysis;

2. the relations between the time-rates of change of the joint positions, referred

to as the joint rates, and the twist of the EE, known as velocity analysis;

3. the relations between the second time-derivatives of the joint positions, re-

ferred to as the joint accelerations, with the time-rate of change of the twist

of the EE, known as acceleration analysis.

2.1.1 Direct and Inverse Kinematic Problem

Figure 2.1 shows the mapping between joint space and operational space at the

displacement level. The direct kinematic problem (DKP) is the mapping from

joint space to operational space, i.e., determining the pose of the EE for a given

manipulator in a given posture. This problem is straightforward and admits a single

solution, which can be determined by simple matrix and vector multiplications.

The inverse kinematic problem (IKP) is the inverse problem as expressed by its

name, i.e., the mapping from operational space to joint space, i.e., determining

Page 23: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

14

J O

Figure 2.1 Mapping between joint space and operational space

the posture of a given manipulator for a given pose of its EE. At the displacement

level, a point in operational space may map onto a set of points in the joint space,

while a point in joint space represents a unique pose of the EE. Accounting for

the dependence of position and orientation of the EE with the joint positions, the

DKP can be written as the following nonlinear algebraic system, i.e.,

x = DKP(θ); (2.1)

where θ is a point in J and x the corresponding point in O. The function DKP(·)allows the computation of the operational space variables x from the knowledge of

the joint space variables θ.

Alternatively, the IKP is also written as the following nonlinear algebraic system,

i.e.,

θ = IKP(x): (2.2)

Page 24: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

15

In general, the IKP is much more complex and challenging than the DKP for the

following reasons[8]:

• the equations to be solved are nonlinear, and thus it is rarely possible to find

a closed-form solution;

• multiple solutions may exist;

• an infinite number of solutions may exist as well, e.g., in the case of a kine-

matically redundant manipulator;

• there might be no admissible solutions, in view of the manipulator kinematic

structure. One may ask a pose of the EE outside of the reachable workspace

of the manipulator.

At the displacement level, inverse kinematics requires the solution of a highly non-

linear algebraic system, for which no analytical closed-form solution exist for a

general 6-R manipulator[9]. Pieper[10] showed that a 6-R manipulator, with three

succeeding revolute joint axes intersecting at a point, termed as decoupled manip-

ulator, always has closed-form solutions. Tsai and Morgan[11] found that although

the number of real-significant solutions changes from case to case, the total number

of significant solutions (real and complex) is 16 for all the 6-R manipulators except

for the decoupled cases where there are eight significant solutions. The existence

of mechanical joint limits may eventually reduce the number of reachable solutions

for the given manipulator.

2.2 Differential Kinematics and Redundancy

Differential kinematics of robot manipulators were introduced by Whitney[12] in

1969. He proposed to use differential relationships to solve the joint space motion

Page 25: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

16

from a given Cartesian space motion of the EE. The relationship between the

EE velocity and the joint velocity is represented by a linear algebraic equation.

The coefficient of the linear equation is the Jacobian matrix, which is a nonlinear

function of joint angles. Whitney named this method the resolved-motion rate

control.

Although the computation of closed-form nonlinear solution, if available, is gener-

ally less than that for resolved-motion rate control, the linearity of the equation at

the velocity level allows the development of general discussion, whereas the compu-

tation of closed-form solution depends on the specific design of a robotic manipu-

lator. Particularly, the differential kinematics are natural and unique in Cartesian

trajectory control when the manipulator dynamics are considered because rigid-

body dynamics and kinematics are naturally connected at the acceleration level.

The relationship between the EE acceleration and the joint acceleration becomes a

similar linear one, with the Jacobian matrix as a coefficient. This scheme is named

resolved acceleration control as an extension of resolved motion rate control. It is

noteworthy that differential kinematics are also related to EE force control[6].

2.2.1 Geometric and Analytical Jacobian Matrices

Suppose that the following relation holds between a k-dimensional vector ξ =

[»1; »2; : : : ; »k]T and an l-dimensional vector η = [·1; ·2; : : : ; ·l]

T :

·j = fj(»1; »2; : : : ; »k); j = 1; 2; : : : ; l: (2.3)

Page 26: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

17

Then the l × k matrix

Jη(ξ) =

∂η1

∂ξ1

∂η1

∂ξ2::: ∂η1

∂ξk

∂η2

∂ξ1

∂η2

∂ξ2::: ∂η2

∂ξk

......

...

∂ηl

∂ξ1

∂ηl

∂ξ2::: ∂ηl

∂ξk

=@η

@ξ(2.4)

is called the Jacobian matrix[13] of η with respect to ξ. Furthermore, suppose that

η and ξ are functions of time, then differentiating eq.(2.3) with respect to time

and substituting eq.(2.4) yields

η = Jη(ξ)ξ: (2.5)

Using the Jacobian matrix, we can express the relation between the EE velocity

and the joint velocity of a manipulator in a compact form as follows:

x = J(θ)θ: (2.6)

If define t ≡ x, then eq.(2.6) is written as

t = J(θ)θ: (2.7)

The translational velocity of the EE, i.e., P, can naturally be expressed by the time

derivative of the position vector P, however, there are many methods for expressing

the rotation velocity of the EE as follows:

Method I: Select a vector AφB consisting of three variables for expressing the

orientation (e.g., Euler angle, or roll, pitch and yaw angles), and use its time

derivative AφB =dAφB

dtto express the rotation velocity of the object frame. (The

Page 27: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

18

superscript A and the subscript B of AφB indicate that φ describes the orientation

of FB with respect to FA.)

Method II: The motion of FB with respect to FA at each instant of time is a

rotation about an axis passing through the origin. This means that the rotation

velocity of FB can be described by the vector AωB, which has the same direction as

the instantaneous axis of rotation and a magnitude proportional to the rotational

speed about this axis. The vector AωB is called the angular velocity vector.

From the viewpoint of the physical meaning of the vector expressing the velocity,

AωB is superior to AφB. The three components of AωB represent the orthogonal

angular velocity components about the X, Y , and Z axes of FA. In contrast, those

of AφB generally represent non-orthogonal components about the three axes of a

skew coordinate system whose coordinate axes vary depending on the present value

of AφB. It has been shown that the mapping between AφB and AωB introduces

singularity into the linear algebraic system if AφB is used, while no singularity is

added if AωB is used.

Corresponding to the two methods of expressing the rotation velocity, there are two

kinds of Jacobian matrix, termed as geometric and analytical Jacobian respectively.

When method I is used for expressing the rotational velocity of the EE, the equation

of reaching the analytic Jacobian Ja is as follows:

Ja(θ) =@f

@θ∈ R6×n: (2.8)

Whitney[12] in 1969 computes θ in this way with method I.

However, it would be computationally inefficient to try to evaluate the analytic

jacobian matrix. In 1972, Whitney[14] proposed another method of the Jacobian

matrix, i.e., geometric Jacobian matrix for method II.

Page 28: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

19

Figure 2.2 General n axis manipulator[1]

From Fig. 2.2, the angular velocity vector of the EE, namely ω, is readily computed

as

ω =n∑

i=1

(µi ei); (2.9)

where µi and ei are respectively defined as a joint rate and a unit vector associated

with revolute axis of joint i.

Moreover, the translational velocity of the origin of the frame Fn attached to the

EE, namely p, is readily computed as

p =n∑

i=1

(µi ei × ri); (2.10)

where vector ri is defined as the position vector of the origin of Fn with respect

to the origin of Fi and expressed in F0, i.e.,

ri ≡ ai + ai+1 + ::: + an; (2.11)

Page 29: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

20

and ai is defined as

ai ≡

licos(µi)

lisin(µi)

ri

: (2.12)

Therefore, the velocity relationship involving the geometric Jacobian matrix as

t = Jg(θ)θ; (2.13)

where the geometric Jacobian matrix is defined as

Jg =

A

B

; (2.14)

where

A ≡[

e1 e2 ::: en

]∈ R3×n; (2.15)

B ≡[

e1 × r1 e2 × r2 ::: en × rn

]∈ R3×n: (2.16)

and

t ≡[

ωT PT

]T

; (2.17)

θ ≡[

µ1 · · · µn

](2.18)

If the Euler angles are used as φ, i.e., there is

φ =[

fi fl °]T

; (2.19)

where fi, fl and ° are the rotation angles about the Z, Y and X axis respectively.

Page 30: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

21

ω and φ are obtained from each other by the following mapping, i.e.,

ω = Kφ; (2.20)

where

K ≡

0 − sin fi cos fi sin fl

0 cos fi sin fi sin fl

1 0 cos fl

: (2.21)

Therefore the analytical Jacobian Ja(θ) and the geometric Jacobian Jg(θ) are

related to each other by

Jg(θ) ≡ K 0

0 1

Ja(θ); (2.22)

where 1 ∈ R3×3 is an identity matrix. The coefficient matrix on the right-hand side

of equation eq.(2.22) becomes singular when sin fl = 0. This means that although

any rotational velocity can be described by AωB, there are rotational velocities

that can not be described by AφB when sin fl = 0. Orientations of this kind are

called representation singularities of AφB.

In general, it is anticipated that the geometric Jacobian will be adopted whenever

it is necessary to refer to quantities of clear physical meaning, while the analytical

Jacobian will be applied whenever it is necessary to refer to differential quantities

of variables defined in the operational space.

2.2.2 Classification of Redundancy-Resolution Schemes

Redundant manipulators attracted the attention of many researchers in recent

years, because of their extra DOF allowing more sophisticated motions than their

Page 31: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

22

Figure 2.3 Classification of RR schemes

non-redundant counterparts. Hence, the redundant manipulators have widely been

used on avoidance tasks for obstacles, joint-limits and singularities. Many re-

search works focused on the theoretical aspects of the RR schemes. For example,

Baillieul[15][16] used redundancy for obstacle avoidance by using an extended Jaco-

bian technique. Klein [17] solved redundancy for maximum dexterity of a manipu-

lator. However, most of the reported works have been tested on simulations, while

only a few implementations on real robots have been reported as Honegger and

Codourey[18].

The RR schemes can be classified into local methods and global methods. The

global optimal control methods need all the required data before the movement

is realized. The local optimal control methods give a solution for every instant

and can also use the available sensory data. Thus, the locally optimal control

approach is suitable for real-time applications, such as sensor-based obstacle avoid-

ance strategies. The globally optimal control approach is limited only on the off-line

Page 32: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

23

trajectory planning for tasks requiring strict optimality, such as obstacle avoidance

in a complicated but time invariant workspace and energy minimization[6]. There-

fore, these two frameworks should be properly used, depending on the situation.

Most of the RR schemes use local methods since their performance index depends

on the instantaneous robot posture.

The RR problem has been solved at both joint-position level[19][20] and joint-rate

level[16][21] using different methods. At the joint-position level, the RR problem is

nonlinear, whereas it is linear at the joint-rate level. Figure 2.3 shows the clas-

sification of RR schemes discussed above. The shaded part is the most popular

research domain, i.e., RR scheme in local method at joint-rate level.

During the last two decades, more and more researchers have applied the artificial

intelligent technique on the redundant manipulator control. But their development

are still based on the RR schemes shown in Fig. 2.3.

2.3 Local Optimization Algorithms

Now a day, most of the RR researchers worked on the joint-rate level, and used

the Moore-Penrose Generalized Inverse1 (GI) or the Weighted Generalized Inverse

(WGI) of the Jacobian matrix.

1[22]Given an m×n matrix B, the Moore-Penrose generalized matrix inverse is a unique n×mmatrix pseudoinverse B†. The Moore-Penrose inverse satisfies

BB†B = B

B†BB† = B†

(BB†)T = BB†

(B†B)T = B†B.

It is also true thatz = B†c

Page 33: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

24

2.3.1 Schemes Using the Generalized Inverse

The Moore-Penrose pseudo-inverse can be used to find the joint-rate vector that has

the smallest Euclidean norm, usually called the minimum-norm solution computed

as

J† = JT (JJT )−1; (2.23)

and hence eq.(2.7) becomes

θ = J†t: (2.24)

Klein and Huang (1983)[23] showed that such a solution may lead to noncyclic

motions in joint space. At the cost of giving up the minimum-norm solution, an

homogeneous component can be added to eq.(2.24) in order to optimize a secondary

task into an additional criterion. Thus, this non-minimum-norm general inverse

kinematic solution can be written as:

θ = (J†)t︸ ︷︷ ︸minimum−norm solution

+ (1− J†J)h︸ ︷︷ ︸homogeneous solution

; (2.25)

where the first part of eq.(2.25) is the minimum-norm solution, known as the base

solution, and the second part is an arbitrary vector from the null space of the Jaco-

bian. Equation (2.25) is used widely by many researchers such as Angeles(1998)[24],

and Siciliano(1992)[21] in order to solve redundant tasks. Vector h of eq.(2.25) is

an optimized performance criterion. Different selection of h give different perfor-

mances.

Liegeois[25] developed the Gradient projection method (GPM), which minimizes a

is the shortest length solution to the problem

Bz = c.

Page 34: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

25

position-dependent scalar performance index p(θ) and takes its gradient as vector

h, i.e.,

h = w@p

@θ= w

[@p

@µ1

@p

@µ2

· · · @p

@µn

]T

; (2.26)

where w is a positive scalar coefficient. Liegeois introduced a p that helps joint-limit

avoidance, in the form

p =1

n

n∑i=1

(µi − µmid

i

µmidi − µmax

i

)2; (2.27)

where µmidi = (µmin

i + µmaxi )=2, µmin

i and µmaxi are lower and upper joint limits,

respectively.

Other researchers developed different performance index related to various appli-

cations of RR schemes.

Yoshikawa(1984)[26] suggested a scaler value ! to be the measure of manipulability

(MOM), namely,

! =

√det(JJT ); (2.28)

and used ! as performance index p to avoid singularities. Yoshikawa also introduced

a performance index for obstacle avoidance, namely,

p =(θ − θr)

TH(θ − θr)

2; (2.29)

where H is a diagonal matrix with constant entries greater than zero and θr a

given arm posture.

If using SVD for Jacobian, J = UΣV T , eq.(2.28) becomes

! =

√det(ΣΣT ) = ¾1¾2 · · · ¾m: (2.30)

Thus, MOM is nothing but the product of singular values. When the Jacobian

Page 35: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

26

matrix degenerates, one or more singular values becomes zero, and so does MOM.

The condition number of the Jacobian matrix is

• =¾1

¾m

: (2.31)

As described by Nakamura[6], the relationship between MOM and the condition

number is clear when they are physically interpreted using the manipulability el-

lipsoid. MOM is proportional to the volume of the ellipsoid, whereas the condition

number is the ratio of the lengths of the longest and shortest principal axes. In

other words, MOM is related to the magnitude of the ellipsoid, whereas the con-

dition number concerns the shape of the ellipsoid. Therefore, MOM prefers large

ellipsoids, and the condition number prefers ellipsoids with spherical shape.

Yoshikawa’s manipulability measure has been used extensively. However, the de-

terminant cannot be a measure of how close a matrix is to singularity, as pointed

out by Golub and Van Loan (1989)[27]. Therefore, Kosuge and Furuta (1985)[28]

suggested to take the reciprocal (in order to have a number between 0 and 1) of

the condition number of the Jacobian matrix as a controllability measure.

2.3.1.1 Inverse Kinematic Solutions Considering the Order of Priority

Nakamura et al.[31] found it exists a lot of tasks which are composed of subtasks with

different levels of significance, and call them tasks with the order of priority. For

the tasks with the order of priority, if it is impossible to perform all of the subtasks

completely because of the degeneracy or the shortage of the DOF, they proposed to

perform the most significant subtask preferentially and the less important subtask

using the remaining DOF. In the case of a task with two subtasks. The subtask

with the first priority is specified using the first manipulation variable, r1 ∈ Rm1 ,

Page 36: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

27

and the subtask with the second priority is specified using the second manipulation

variable, r1 = 2 ∈ Rm2 . The kinematic relationships between the joint variable

µ ∈ Rn and the manipulation variables are expressed as follows:

ri = fi(θ); (2.32)

with i = 1; 2. Their differential relationships are expressed as follows:

ri = Ji(θ)θ; (2.33)

where Ji(θ) ∈ Rmi×n is the Jacobian matric for the ith manipulation variable.

The general solution of eq.(2.33) for i = 1 is obtained using pseudoinverses as

follows:

θ = J†1(θ)r1 + (I− J†1(θ)J1(θ))y: (2.34)

Substituting eq.(2.34) into eq.(2.33) for i = 2, we get the following equation:

J2(I− J†1(θ)J1(θ))y = r2 − J2J†1r1; (2.35)

where and y ∈ Rn is an arbitrary vector. If the exact solution of y exists for

eq.(2.35), it means that the second manipulation variable can be realized. However,

the exact solutions does not generally exist. We get y, which minimizes ‖r2 −J2(θ)θ‖, in the same way as eq.(2.34). That is,

y = J†2(r2 − J2J†1r1) + (I− J†2J2)z; (2.36)

where J2 = J2(I− J†1(θ)J1(θ)), and z ∈ Rn is an arbitrary vector.

Page 37: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

28

The solution θ is obtained from eqs.(2.34) and (2.36) as follows:

θ = J†1r1 + (I− J†1J1)J†2(r2 − J2J

†1r1) + (I− J†1J1)(I− J†2J2)z: (2.37)

Equation (2.37) represents the inverse kinematic solution considering task priority.

2.3.1.2 Schemes Using the Weighted Generalized Inverse

The WGI solution to eq.(2.7) is

θ = J†wt; (2.38)

where

J†w = W−1JT (JW−1JT )−1; (2.39)

and W is a positive-definite weighting matrix. Whitney (1969)[12] applied priorities

through the weighted matrix. Park, Chung and Youm (1996)[29] used the WGI and

introduced the weight not only in the generalized inverse, but also in the Jacobian

matrix and in the joint velocity, which they called weighted Jacobian and weighted

joint velocity, respectively. Hence, they solved the equation

Jwθw = t; (2.40)

where Jw and θw are the weighted Jacobian and weighted joint velocity, respec-

tively.

Chan and Dubey (1993)[30] compared WGI with GPM in the case of joint limits

avoidance problem, and found WGI reached a more accessible joint trajectory than

GPM.

Page 38: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

29

2.3.2 Scheme Using Householder Reflection

Arenson, Angeles and Slutski(1998)[24] proposed to use Householder reflection in

RR scheme. For the sake of brevity, we name it as AA householder reflection

algorithm.

The algorithm is developed as follows. At first, equation (2.25) can be rewritten

as:

θ = k + h; (2.41)

where k is shown as:

k = J†(t− Jh): (2.42)

Equation (2.42) can be rewritten as:

Jk = t− Jh: (2.43)

For solving eq.(2.43), Householder reflection is used for the Jacobian matrix J. The

matrix H and U are reached, and they have a relation with J in the form

HJT =

U

0

; (2.44)

where U is a (o× o) upper-triangular matrix, H is an orthogonal matrix (n× n),

and n > o for intrinsic redundancy. Hence, there is

HTH = 1; (2.45)

Rewriting eq.(2.43) to,

JHTHk = t− Jh: (2.46)

Page 39: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

30

Because of:

JHT = (HJT )T =[

UT 0T

]; (2.47)

equation (2.46) is equal to

[UT 0T

]H k = t− Jh: (2.48)

Then, k can be reached as follows:

k = HT

(UT )−1(t− Jh)

0

: (2.49)

Substituting eq.(2.49) into eq.(2.41) and yields

θ = HT

(UT )−1(t− Jh)

0

+ h: (2.50)

If we define:

y ≡ (UT )−1(t− Jh)

0

; (2.51)

Equation (2.50) can be rewritten as:

θ = HTy + h: (2.52)

The AA algorithm avoid the direct calculation of the generalized inverse of the

Jacobian matrix, as with eq.(2.23) and even worst with eq.(2.25). Hence, the

squaring of the condition number of the J is avoided and the round-off error of

the algorithm is not amplified. It is an interesting solution for the calculation of

ill-condition postures because here the Jacobian matrix J may have a very high

condition number.

Page 40: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

31

2.4 Global Optimization Algorithms

Although the local optimal control approach requires a small amount of compu-

tation, it lacks a guarantee of global optimality. The globally optimal control

approach is better for off-line trajectory planning for tasks requiring strict opti-

mality, such as obstacle avoidance problem in more complicated working spaces

and energy minimizing problems.

There are much less papers published on the topic of globally optimal control than

local optimal control. Whitney[14] first suggested the integrated value of kinetic

energy, which is approximated to square joint velocities, be as a global criterion for

redundancy utilization

The global optimal control methods are based either on the variational calculus

with constraints or on Pontryagin’s maximum principle.

2.4.1 Schemes Using the Pontrygain’s Maximum Principle

Nakamura and Hanafusa[31][32] have solved the global optimal control problem with

Pontryagin’s maximum principle.

The optimal control problem of redundancy is represented as follows:

θ = J†r1(t) + (I− J†J)y = g(θ; t; y): (2.53)

r2 =

∫ t1

t0

p(θ; t)dt: (2.54)

where r1 ∈ Rm1 represents the constrained variable such as the position and the

orientation of the end effector; r2 ∈ Rm2 , m2 = 1, represents the performance index

of the integral type, which evaluates the performance of redundancy utilization.

Page 41: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

32

Equation(2.53) can be regarded as a system equation of a time-variant, non-linear,

dynamical system by considering θ as a state vector and y as an input vector,

thus eqs.(2.53) and (2.54) can be regarded as an ordinary optimal control with

a variable left-hand endpoint and a free right-hand endpoint, then Pontryagin’s

maximum principle can be applied to the problem.

The Hamiltonian function for a fixed-time problem with a fixed left-hand endpoint

and a free right-hand endpoint is as follows:

H(ψ; θ; t; y) = −p + ψTg; (2.55)

where ψ ∈ Rn is an adjoint vector. y(t) is the independent control variation

and can be arbitrary. If a y∗(t) maximizing the Hamiltonian of eq.(2.55) at every

moment t is chosen, there is

(@H

@y)∗ = 0: (2.56)

The optimal joint trajectory θ∗(t) is yielded by solving the following differential

equations:

θ∗

= (@H

@ψ)∗: (2.57)

ψ∗

= −(@H

@θ)∗: (2.58)

where eq.(2.57) is equivalent to eq.(2.53).

One example of the representative performance index in the work of Nakamura and

Hanafusa is given as :

r2 =

∫ t1

t0

(kp0(θ) + θTθ)dt (2.59)

where k is a nonnegative scalar. If k = 0, there is the simplest case of eq.(2.59):

r2 =

∫ t1

t0

θTθdt: (2.60)

Page 42: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

33

The integrand of the criterion is considered as a pseudo-kinetic energy, and eq.(2.60)

is used as the performance index to minimizing the integral of pseudo-kinetic en-

ergy.

In order to plan the joint trajectory farthest from singular points, the measure of

manipulability ! proposed by Yoshikawa[26] is taken into account, ! is calculated as

eq.(2.28). Then the corresponding performance index to plan the joint trajectory

farthest from singular points is given as follows:

r2 =

∫ t1

t0

(1√

det(JJT )+ θ

Tθ)dt (2.61)

If the trajectory approaches the singularity, the first term of the integrant of

eq.(2.61) increases infinitely.

2.4.2 Schemes Using the Calculus of Variations

Hollerbach and Suh[33] offered a solution for the global torque optimization based

on the calculus of variations. Kazerounian and Wang[34][35] also used the calculus of

variations to develop global solutions for the least square joint rates and the least

kinetic energy.

In the method of Kazerounian and Wang, a global optimization problem is firstly

set up to minimize

I =

∫ tf

to

(qT q)dt (2.62)

subject to

Gk(q; t) = 0; k = 1 to m (2.63)

Page 43: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

34

The augmented objective function I∗ is defined as

I∗ =

∫ tf

t0

g(q; q; t)dt (2.64)

where

g = qT q +∑

„(t)Gk: (2.65)

Then by using the Euler-Lagrange equation, the necessary condition for q to be an

optimal of the functional I∗ given by eq.(2.64) is

@g

@q−

d( ∂g∂q

)

dt= 0: (2.66)

Because@g

@q= (

@G

@q)T µ(t) = JT µ; (2.67)

d( ∂g∂q

)

dt= 2q: (2.68)

Therefore, eq.(2.67) can be rearranged as

JT µ− 2q = 0; (2.69)

i.e., there is

q = 0:5JT µ: (2.70)

There is the acceleration relation between the EE and joints as

Jq = x− Jq: (2.71)

By substituting eq.(2.70) into eq.(2.71), µ is reached as follows:

µ = 2(JJT )−1(x− Jq): (2.72)

Page 44: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

35

By substituting eq.(2.72) into eq.(2.70), the acceleration vector q is reached as

follows:

q = JT (JJT )−1(x− Jq): (2.73)

Hence, eq.(2.73) is the local minimization of the joint acceleration and will result

in the global minimization of joint velocities.

Although the global optimization provides a more meaningful and stable solution

than local optimization, the disadvantages of global optimization is the amount of

computations involved in the global optimization process often makes the on-line

scheme prohibitive.

2.5 Redundancy-Resolution in Intelligent Control

Intelligent control is a new research direction making control systems to have more

intelligence and higher degree of autonomy. With proper development, intelligent

control systems may have great potential for solving today’s and tomorrow’s com-

plex control problems. Owing to this motivation, a number of realistic intelligent

control approaches have been proposed and justified for their feasible applications

to robotic systems and other complex systems. The most common intelligent con-

trol methods applied on the Redundancy-Resolution include neural networks (NN),

fuzzy logics (FL) and genetic algorithms (GAs). These techniques eliminate some

or all of the modelling of the manipulator kinematics and/or dynamics that is

usually needed to implement conventional control techniques. This characteris-

tic of intelligent control algorithms is significant considering the complexity of the

mathematical models of the robotic system.

Page 45: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

36

2.5.1 Fuzzy-Based Redundancy-Resolution Approach

Recently, some researchers[36][37][38][39] solved the inverse kinematics problem using

FL. However, most of them do not propose a systematic method for generating and

adjusting membership functions of fuzzy sets.

Graca[40] proposed an intelligent control algorithm, namely as Fuzzy Learning Con-

trol, for non-redundant robotic manipulators to track specified trajectories in Carte-

sian space. This algorithm consisted of treating the robotic kinematic equation as a

linear possibility system with fuzzy coefficients, which was then solved for the fuzzy

coefficients using Fuzzy Regression[41] to obtain a fuzzy version of the Jacobian in-

verse matrix, as opposed to symbolically determining the Jacobian. Graca[42] also

extended this algorithm to redundant manipulator for optimizing the secondary

task.

Kim and Lee[37][36] proposed a fuzzy resolved-motion rate algorithm (FRMRA) for

a 3-DOF planar redundant manipulator, in order to replace the pseudo-inverse

of the Jacobian matrix by the fuzzy reasoning. They designed a new motion-

rate resolving algorithm (MRRA) based on the gradient method, then converted

MRRA to FRMRA by fuzzifying the differential relationship between dx and dθ

for reaching the more accurate solution.

2.5.2 Neural Networks-Based Redundancy-Resolution Approach

In recent years, new interests in NN research have been generated due to the low

complexity in implementation and the fast computational time of motion planning

and control for manipulators ([43] — [51]). Various NN have been applied for kine-

matic/dynamic control and path planning of manipulators. Many of NN for robot

kinematic control are feedforward networks or its variants.

Page 46: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

37

Recurrent NN [46][49] have also been applied for kinematic control. Unlike feedfor-

ward neural networks, most recurrent NN do not need offline supervised learning

and thus are more suitable for real-time robot control in uncertain environments.

In order to effectively handle the physical limit constraints, Wang et al.[50][51] pro-

posed a dual NN for kinematic resolution problems. The simulation results of this

network are discussed on control the 7-DOF PA10 robot arm and show that its

applications are successful. However, the disadvantage of the dual network is that

an inverse matrix operation is required. Moreover, as pointed out by Wang[50], the

exponential convergence of the dual network can not be guaranteed when it is not

full rank or physical limit constraints are considered.

2.5.3 Genetic Algorithms-Based Redundancy-Resolution Approach

GAs are a particular class of evolutionary algorithms that use techniques inspired

by evolutionary biology such as inheritance, mutation, selection, and crossover

(also called recombination). The use of GAs for solving the inverse kinematics

of redundant robots was introduced by Parker et al.[52]. The GAs were used to

position the end-effector of a robot at a target location with minimum position error

while minimizing the maximum rotational displacement from the initial position.

Davidor[53] proposed a technique to apply GAs to the problem of robot trajectory

generation in environment free of obstacles. Nearchou[54] [56] used GAs to solve the

inverse kinematics problem in environments with obstacles, and also presented five

reasons that makes GAs well suited for use in RR as the following:

• GAs generally find nearly global optima in complex spaces;

• GAs do not require any form of smoothness;

• GAs do not need the computation of the Jacobian matrix, and need only the

Page 47: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

38

forward kinematics equations;

• GAs allow additional constraints to be easily specified;

• GAs work with the joint variables represented as digital values that is more

suitable for computer controlled robot systems.

In the GAs technique, the final position accuracy is not satisfactory, since it gen-

erates a large final positioning error. However, GAs combined with other heuristic

methods seems to be able to reach desired solutions of the inverse kinematics prob-

lem.

2.5.4 Pros and Cons of Intelligent Controls

There are many researches that want to replace the physical kinematic and dynamic

modelling of related manipulators by a learning process of an intelligent control

algorithm which then be used to control the manipulator. There are also many

researchers who believe that this approach is not a good use of intelligent control

algorithms and should keep as much physical modelling as possible, and let the

intelligent control algorithm to handle the uncertainties and the unknown physical

phenomenon of the mechanical system at hand.

2.6 Functional Redundancy-Resolution

Redundancy is a concept related to the definition of the task instead of the intrinsic

feature of the robot’s structure. Although this fact is still not well understood in

practice, it has been recognized by several researchers. Samson[57] clearly presented

the redundancy depends on the task and may change with time; siciliano[8] said

the manipulator can be functionally redundant when only a number of components

Page 48: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

39

of dimensional operational space are of concern for the specific task, even if the

dimension of operational space and joint space are equal.

As the well known, most of the researchers use the generalize inverse together

with the projection onto the null space of Jacobian matrix J of the manipulator

for solving the inverse kinematic problem (IKP) of the redundant manipulators.

However, in the case of functional redundancy, J often are full rank square matrix,

i.e., its null space doesn’t exist.

Thus, a new algorithm corresponding to the cases of full rank J becomes necessary.

Although Siciliano proposed the concept of functional redundancy, he didn’t devel-

oped the corresponding solution. In 2000, Baron[58] proposed to add a virtual joint

to the manipulator so that a column is added to J, rendering it underdetermined.

This virtual joint method to solve redundant robotic tasks suffers from the potential

ill-conditioning of the augmented J, namely Jv, and the additional computation

cost required to solve Jv.

In 2005, Huo and Baron[59] proposed the twist decomposition algorithms (TDA) to

solve the functional redundancy as the symmetric axis of EE existing. Instead of us-

ing the projection onto the null space of Jacobian matrix, the TDA is based on the

orthogonal decomposition of the required twist into two orthogonal subspaces in in-

stantaneous tool frame. The TDA has great difference with the task-decomposition

approach proposed by Nakamura[60] on the theoretical base. Both of them consider

the order of task priority, but the TDA projects the task from the robot base frame

to the EE frame, and the motion of the secondary task is always constant in the

EE frame, e.g., the rotation around the symmetry axis of EE, while this secondary

motion may or may not be constant in the base frame. Thus, TDA classifies the

order of task priority in instantaneous EE frame instead of in robot base frame

by the task-decomposition approach, and the TDA is directly developed from the

Page 49: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

40

minimum-norm solution without considering the projection onto the null space

of J, while the development of the task-decomposition approach is basing on the

general equation using the null space of J.

In the case of functional redundant tasks, J in eq.(2.7) is square, and the dimension

of null-subspace of J is zero, so the intrinsic RR schemes working on null-subspace

of J can not be directly used. In order to change eq.(2.7) to an under-determined

system, there are two possibilities. One is augmenting the dimension of joint-rate

µ, another one is reducing the dimension of twist t. Corresponding to the two

possibilities, the functional RR schemes can be classified into two groups, i.e.,

augmented approach and reduced approach, as shown in Fig. 2.4. Virtual joint

method follows the augmented approach. Reduced approach includes elimination

method and twist decomposition method. The three different methods are reviewed

as follow.

Functional RedundancyResolution

¡¡

¡µ

@@

@R

AugmentedApproach

¡¡¡µ

HHHj

Virtual Joint Method[58]

?

ReducedApproach

¡¡¡µ

-@

@@R

Elimination Method

Twist Decomposition Method[59]

?

Figure 2.4 Classification of functional redundancy-resolution schemes

2.6.1 Elimination Method

In some specific cases, the redundant velocity in operational space can be identified

and directly eliminated, and hence the functionally-redundant task is transformed

to an intrinsically-redundant task. This method is called elimination method.

Page 50: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

41

For example, Baron[61] proposed to use an elimination method to optimize the

surfacing operation implemented by 5-axes CNC milling machine with a half-ball

EE. In the case of end-point surface milling, the orientation of EE is irrelevant to

the task, and the angular velocities can be eliminated from twist t. Thus, eq.(2.7)

can be rewritten as

p = Bθ; (2.74)

where B is lower part of J as defined in eq.(2.16), i.e., a 3 × 5 matrix, while

p and θ are 3 and 5−dimensional vectors, respectively. Hence, the well known

non-minimum-norm solutions to eq.(2.74) can be written as

θ = (B†)p + (1−B†B)h; (2.75)

with h being a secondary task and B† the right generalized inverse of B, i.e.,

B† = BT (BBT )−1. Obviously the orientation of the milling tool is not totally

irrelevant, and hence, the preferred orientation is specified by h as a secondary

task onto which we accept some deviation to accommodate other criteria.

However, the redundant velocity of the EE in operational space is not always

constant in the base frame, and hence, it is sometime impossible to identify the

redundant velocity in the base frame. Thus, the elimination method can not always

be applied to solve functional redundancy.

2.6.2 Virtual Joint Method

The functional redundant space is always constant in the EE frame, while may or

may not be constant in the base frame. When the functional redundant space is

constant in the base frame, elimination method using the null-space can be used.

However, when it is not constant, we must use non-traditional technics as virtual

Page 51: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

42

joint or twist decomposition method.

Virtual joint method changes a functionally-redundant pair of manipulator-task

into an intrinsically-redundant manipulator by adding a virtual joint. Although

the virtual joint does not exist, it is added into the joint vector in order to obtain

an under-determined linear algebraic system with at least one DOF of redundancy.

In the case of arc-welding, a virtual joint around the symmetric axis of the electrode

is added. The Jacobian augmented by the virtual joint-rate µn+1, namely Jv, maps

the augmented joints-rate θv into the twist t of the EE as

t = Jvθv; (2.76)

where θv is defined as

θv ≡ θ

µn+1

: (2.77)

The control of this virtual (n + 1)-DOF robot along a fully constrained n-DOF

task with t = Jvθv is equivalent to the control of the previous n-DOF manipulator

along the (n − 1)-DOF task with t = Jθ. In both cases, there is one DOF of

redundancy.

Hence, based on eq.(2.25), the non-minimum-norm solutions to eq.(2.76) can be

written as

θv = J†vt + ( 1− J†vJv)h; (2.78)

where 1 denotes the (n + 1)× (n + 1) identity matrix, h is the secondary task and

J†v is the right generalized inverse of Jv, i.e.,

J†v = JTv (JvJ

Tv )−1 (2.79)

Page 52: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

43

2.6.3 Twist-Decomposition Method

The TDA is developed based on the orthogonal decomposition of vectors and twists.

Any twist array ( · ) of 2× IR3 can be decomposed into two orthogonal parts, [ · ]T ,

the component lying on the task subspace, T , and [ · ]T ⊥ , the component lying on

the orthogonal task subspace (also designated as the redundant subspace), T ⊥,

using the twist projector T and an orthogonal complement of T, namely T⊥, as

follows:

( · ) = [ · ]T + [ · ]T ⊥ = T( · ) + T⊥( · ) = (T + T⊥)( · ) (2.80)

T and T⊥ are projectors of twists that are defined as block diagonal matrices of

projectors of IR3, i.e.,

T ≡ Mω O

O Mv

; T⊥ ≡ 1−T =

1−Mω O

O 1−Mv

; (2.81)

where Mω and Mv are projectors of IR3 which allow the projection of the angular

and translational velocity vectors, respectively. Finally, eq.(2.80) becomes

t = tT + tT ⊥ = Tt + (1−T)t: (2.82)

For functionally-redundant manipulators, it is possible to decompose the twist of

the EE into two orthogonal parts, one lying into task subspace and another one

lying into the redundant subspace. Substituting eq.(2.82) into eq.(2.24) yields

∆θ = (J†T)∆t︸ ︷︷ ︸task displacement

+ J†(1−T)Jh︸ ︷︷ ︸redundant displacement

; (2.83)

where h is an arbitrary vector of J allowing to satisfy a secondary task. Clearly,

eq.(2.83) does not require the projection onto the null-space of J as most of the

redundancy-resolution algorithms do, but rather requires an orthogonal projection

Page 53: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

44

based on the instantaneous geometry of the task to be accomplished. We have

shown that a resolved-motion rate based on eq.(2.83) has a much lower computa-

tional cost and a much lower roundoff amplification ration than the same algorithm

based on eq.(2.25) (projection onto the nullspace of J)[59].

As shown in Algorithm 3.1, eq. (2.83) is used within a resolved-motion rate method.

At lines 1-3, the joint position θ and the desired EE pose {pd; Qd} are first initial-

ized, then the actual EE pose {p; Q} is computed with the direct kinematic model

DK(θ). At lines 4-6, an EE displacement ∆t is computed from the difference

between the desired and actual EE poses. The vect( · ) at line 6 is the function

transforming a 3 × 3 rotation matrix into an axial vector as defined in [1] (page

34). At lines 7-8, the instantaneous orthogonal twist projector T is computed from

DK(θ). At line 9, the orthogonal decomposition method is used to compute the

corresponding joint displacement ∆θ. Finally, the algorithm is stop whenever the

norm of ∆θ is smaller than a certain threshold †. By the numerical comparison, the

twist decomposition approach can reach smaller joint motion range and is more ef-

fective relative to the virtual joint approach and the non-redundant approaches for

the functional redundant tasks. The TDA is applicable to other redundant tasks

requiring less than six DOF, but it needs more verification on different application

cases.

Page 54: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

45

Algorithm 3.1: Twist Decomposition Algorithm

1 θ ←− initial joint position;

2 {pd; Qd} ←− desired EE position and orientation;

3 {p; Q} ⇐ DK(θ)

4 ∆Q ⇐ QTQd

5 ∆p ⇐ pd − p

6 ∆t ← Qvect(∆Q)

∆p

7 DK(θ) ⇒

e ⇒ Mω

f ⇒ Mv

J

;

8 T ⇐ Mω O

O Mv

;

9 ∆θ ⇐ J†T∆t + J†(1−T)Jh

10 if ‖∆θ‖ < † then stop;

else

11 θ ⇐ θ + ∆θ, and go to 3.

Page 55: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

46

SECTION 3

PROPOSED RESEARCH

In Section 2, functional redundancy resolution has been presented. Since the func-

tionally redundant tasks are very popular in industry, it needs a robust and effective

approach to solve them. We have proposed TDA[59] to meet this requirement in

2005.

Although we have some good examples of numerical robustness of TDA for one

type of functional redundancy, there are many other types of such redundancy

that we have not studied yet.

As a new optimization approach, TDA still needs additional development along

different different direction. Among them, we propose to study the following four

issues:

1. Numerical robustness of TDA;

2. Generalization of the kinematic redundancy resolution;

3. Global TDA optimization;

4. Study of other of functionally redundant tasks.

3.1 Numerical Robustness of TDA

The numerical robustness of TDA needs to be studied and properly characterized.

The condition number can be used as the round-off-error/noise amplification factor

Page 56: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

47

while solving numerical the TDA. Robust algorithms that is able to solve eq.(2.25)

with Householder Reflection will be studied in order to keep this amplification factor

as a minimum. We recall that a straightforward computation of the generalized

inverse squares the condition number of the original linear algebraic system.

Numerical simulations of several different trajectories and tasks will be conducted.

These new tasks will be more complex and realistic than before. Moreover, instead

of arc-welding application, the different tasks with symmetric operation will be con-

sidered in this step, such as end-milling, laser-cutting. Real industrial manipulators

from Fanuc and Kuka will be used to replace the PUMA560, which is generally

used in academic environment. Finally, the optimization results reached by the

TDA and other approaches will be compared on the aspects of the smoothness of

joint-space trajectories, accuracy and computation time, etc.

3.2 Generalization the Kinematic Redundancy Resolution

When both intrinsic and functional redundancy exist, it is possible to combine the

TDA and the projection onto the null space of J in order to take advantage from

both types of redundancy at the same time. For example, supposing a 7-R serial

manipulator performing 5-DOF task in 3D operational space. There is 1-DOF of

intrinsic-redundancy and 1-DOF of functional-redundancy. Obviously, we can use a

non-minimum norm general inverse solution as in eq.(2.25) to solve the intrinsically

redundant part. After decomposing the twist into two components with the twist

projector, and substituting the two components into eq.(2.25), a possible resolution

of the generalized redundancy resolution of the redundant manipulator could be

written as

θ = J†Tt + J†(1−T)h1 + (1− J†J)h2; (3.1)

Page 57: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

48

where h1 and h2 are the two possible criteria of the redundant task. In some cases,

h1 and h2 could be the same. Clearly, criterion h1 is projected onto the functional

redundancy, while criterion h2 is projected onto the intrinsic redundancy. To our

knowledge, eq.(3.1) has not yet been proposed in the literature.

3.3 Global TDA Optimization

We also propose to integrate the TDA into a global optimization method based on

Pontryagin’s maximum principle.

The optimal control problem of redundancy proposed by Nakamura[6] is presented

as in eqs.(2.53) and (2.54). We propose to replace eq.(2.53) by eq.(2.83) in order

to describe the optimal problem of the functional redundant tasks, i.e.:

∆θ = (J†T)∆t + J†(1−T)Jh ≡ g(θ(t); h(t); t); (3.2)

r2 =

∫ t1

t0

p(θ(t); t)dt: (3.3)

Equation (3.2) represents the kinematic relationship between θ(t) and t, it can be

regard as a non-linear time-varying dynamic system by considering θ as a state vec-

tor and h as an input vector. Equation (3.3) represents a performance index which

evaluates the performance of redundancy utilization. Thus, regarding eqs.(3.2) and

(3.3) as an ordinary optimal control problem of a dynamical system. The problem

is to find the joint trajectory θ(t), t0 ≤ t ≤ t1, that minimize r2. We apply Pon-

tryagin’s maximum principle to the problem. According to Pontryagin’s maximum

principle, the Hamiltonian function is formed as:

H(θ(t); h(t); λ(t); t) = −p(θ(t); t) + λ(t)T g(θ(t); h(t); t); (3.4)

Page 58: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

49

where λ ∈ Rn is an adjoint vector. If we choose such a h(t) that maximizes the

Hamiltonian eq.(3.4) at every moment t, the optimal joint trajectory θ(t) is yielded

by solving the following differential equations:

θ =

(@H

); (3.5)

λ = −(

@H

): (3.6)

3.4 Study of Other Functionally Redundant Tasks

3.4.1 3P-2R Tasks

Since, there exist many industrial applications with axis-symmetric operations,

where the rotation around this symmetry axis is irrelevant to fulfill the task. This

task only requires to specify the position along three axes, i.e., 3P, and the rotation

around the two axes, i.e., 2R. Such 5-DOF tasks are called 3P-2R and include arc-

welding, end-milling, gluing, painting, etc.

Among all the so-called functional 3P-2R tasks, we have not yet studied, the

handling of axis symmetric objects. For example, when a cylindrical object is

handled by a robot, the orientation around the axis of the cylinder do not affect

the handling operation, i.e., the rotation around the axis of the cylinder is an

irrelevant motion for the handling operation. Hence, it is also a 5-DOF task of

type 3P-2R.

Page 59: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

50

3.4.2 3P-Positioning Tasks

Some kind of tasks only need a positioning, such as placing a ball on a specified

position without considering its orientation. Obviously, a preferred orientation

can be specified as a secondary task, since we can accommodate other orientation

around our preferred one.

3.4.3 2P-2R Tasks

Recently, Kuka Inc.[55] has developed a compact robotic cell for flexible laser cutting

and welding. By using an autofocus cutting/welding laser gun, laser cutting and

welding operation can accommodate very large variation of distance between the

gun and the part (from 70 mm to 200 mm).

For this laser cutting/welding task, it is only necessary to position the laser gun

along a line pointing toward the point on the part, and the translation and rotation

of the gun along and around that line are irrelevant to the task to be accomplished.

Obviously, the translation limits will be counted in a secondary tasks in order to

position the gun along the require line in space. Therefore, this 4-DOF task is of

type 2P-2R.

3.5 Numerical Simulations

In order to develop these proposed subjects in this Section, different tasks imple-

mented with different manipulators are applied in our proposed research. Besides

the various main tasks described in Section 3.4, different secondary tasks are con-

sidered too. The manipulators with five to seven axis are used to implement these

tasks.

Page 60: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

51

3.5.1 Different Secondary Tasks

According to the different application cases, different secondary tasks can be cho-

sen, including joint-limit, singularity or obstacle avoidance, minimum-time or en-

ergy consumption, etc. Corresponding to these different secondary tasks, various

criterion functions will be created as discussed below.

3.5.1.1 Joint-limits Avoidance

We have discussed the secondary task of avoiding joint-limits[58][59]. The same

criterion function will be keep in our next step research, as the efficiency of the

function has been proven.

3.5.1.2 Singularities Avoidance

If the secondary task is to avoid singularities, the MOM proposed by Yoshikawa[26]

or/and condition number of Jacobian matrix may been used into the criterion

function.

According the review in Section 2.3.1, a criterion function maximizing the MOM

and minimizing the condition number could be able to ”drive” the manipulators

to avoid their singularities.

3.5.1.3 Minimum-time/energy Consumption

If a task is required to be completed with the minimum-time/energy consumption,

it is a fully global optimization problem. As TDA only limits on the local optimiza-

tion presently, the application on this kind of tasks depends on the development of

Page 61: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

52

Global TDA optimization described in Section 3.3.

3.5.2 Different Manipulators

3.5.2.1 Five-Axis Manipulators

There is also the possibility to be redundant for the 5-axis robots existing in in-

dustrial in some specific cases, such as the cases of implementation of 3P tasks.

Unlike the industrial robots, most of CNC machining center have only 5-axis, and

include three prismatic axes usually. It still need more research on applying FRR

on 5-axis CNC machining center.

3.5.2.2 Six-Axis Manipulators

As most of industrial robots are six-rotation-axis manipulators, our FRR are imple-

mented in this kind of manipulators generally. These kind of manipulators imple-

menting the functionally-redundant tasks including at least PUMA560, Fanuc M16iB

and one KUKA robot.

3.5.2.3 Seven-Axis Manipulators

The seven-axis manipulators should be intrinsic redundant, however, it also be

possible to apply the hybrid intrinsic and functional redundancy resolution. The

best example of this kind of manipulator is CANADARM2 with seven-rotating-

axis.

When the six-axis industrial manipulators cooperating with a one-axis rotation

table, it becomes a seven-axis manipulator. The application of hybrid intrinsic and

Page 62: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

53

functional redundancy resolution should be able to improve the flexibility of the

manipulators.

Page 63: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

54

SECTION 4

CONCLUSION AND TIME SCHEDULE

4.1 Potential Original Contribution

This proposal of doctoral thesis is a direct continuing of my master’s thesis, where

we proposed the TDA as an efficient mean to solve the inverse kinematic of func-

tionally redundant serial manipulators.

Although we obtained a few good results on numerical robustness of TDA, we have

not yet properly study this issue for many different manipulators, trajectories and

tasks.

The TDA allows for taking advantages of functional redundancy. However, when

functional and intrinsic redundancies are both presented, TDA alone can not take

advantage of both redundancies without generalizing the TDA as we propose.

Moreover, the Nakamura’s global optimization technic will be modified to incorpo-

rate TDA in order to reach a global optimization using the maximum Pontryagin’s

principle.

Finally, the generalization of functionally-redundant tasks will be done toward

other types than 3P-2R, such as types 3P and 2P-2R tasks.

Page 64: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

55

4.2 Time Schedule

The schedule for realizing this research project is listed as follows:

Seminar TaskAutumn 2006 Numerical robustness of TDA and

documentation of the result

Winter 2007 Hybridization of intrinsic andSummer 2007 function redundancy resolution

Autumn 2007 Hybridization of global optimization and TDA.Winter 2008

Summer 2008 Generalization of the Application of FRR:Documentation of the result, writing of the Ph.D thesis.

Table 4.1 Time schedule

Page 65: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

56

REFERENCES

[1] Angeles, J., Fundamentals of robotic mechanical systems: theory, methods and

algorithms, Springer, New York, 521 pages, 2003.

[2] Mitsubishi Heavy Industries, LTD., http://www.sdia.or.jp/

mhikobe e/products/mechatronic/specfi/specfi e.html.

[3] Laval University, http://wwwrobot.gmc.ulaval.ca/recherche/theme01 a.html.

[4] Laval University, http://wwwrobot.gmc.ulaval.ca/recherche/theme04 a.html.

[5] COMET-II, Chiba University, http://mec2.tm.chiba-u.jp/%7Enonami.

[6] Nakamura, Y., Advanced robotics: redundancy and optimization, Addison-

Wesley Pub. Co., Massachusetts, 337 pages, 1991.

[7] Eric W. Weisstein. Null Space. MathWorld–A Wolfram Web Resource.

http://mathworld.wolfram.com/NullSpace.html.

[8] Sciavicco, L. and Siciliano, B., Modelling and control of robot manipulators,

Springer, London, 377 pages.

[9] Mavroidis, C. and Roth, B., 1992 Structural parameters which reduce the num-

ber of manipulator configurations. Proc. ASME 22nd Biennial Mechanisms

Conference, pp.359-366, Sep. 1992.

[10] Pieper, D.L., The Kinematics of Manipulators under Computer Control, Ph.D.

thesis, Stanford University, 1968.

[11] Tsai, L. W. and Mrogan, A. P., Solving the kinematics of the most general

six- and five-degree-of-freedom manipulators by continuation methods. ASME

J. Mechanisms, Transm., and Auto. in Design, pp. 189–200, 1985.

Page 66: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically
Page 67: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

58

[21] Siciliano, B., Solving manipulator redundancy with the augmented task space

methode using the constraint Jacobian transpose, IEEE Intern. Conf. on

Robotics and Automation, Tutorial M1, pp. 5.1–5.8, 1992.

[22] Weisstein, E.W., Moore-Penrose Matrix Inverse. MathWorld–A Wolfram Web

Resource, http://mathworld.wolfram.com/Moore-PenroseMatrixInverse.html.

[23] Klein, C. and Huang, C.H., Review of pseudoinverse control for use with kine-

matically redundant manipulators, IEEE Trans. on Systems, Man, and Cyber-

netics, Vol. SMC-13, No. 3, pp. 245–250, 1983.

[24] Arenson, N., Angeles, J. and Slutski, L., Redundancy-resolution algorithms

for isotropic robots, Advances in Robot Kinematics: Analysis and Control,

pp. 425–434, 1998.

[25] Liegeois, A., Automatic Supervisory Control of the Configuration and Behav-

ior of Multibody Mechanisms, IEEE Trans. Syst., Man, Cybern., vol. SMC-7,

pp. 245–250, Mar. 1977.

[26] Yoshikawa, T., Analyais and control of robot manipulators with redundancy,

Robotics Research: The First International Symposium, pp. 735–747, 1984.

[27] Golub, G.H. and Van Loan, C.F., Matrix computations, The Johns Hopkins

University Press, Baltimore and London, 1989.

[28] Kosuge, K. and Furuta, K., Kinematic and dynamic analysis of robot arm,

IEEE Int. Conf. on Robotics and Automation, pp. 1039–1044, 1985.

[29] Park, J., Chung, W. and Youm, Y., Weighted decomposition of kinematics

and dynamaics of kinematically redundant manipulators, IEEE International

Conference on Robotics and Automation, Vol. 1, pp. 480–486, 1996.

Page 68: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

59

[30] Chang, T.-F. and Dubey, R.-V., A weighted least-norm solution based scheme

for avoiding joints limits for redundant manipulators, IEEE Trans. Robot.

Automat.,vol. 11, pp. 286–292, Apr. 1995.

[31] Nakamura, Y. and Hanafusa, H., Task priority based redundancy control of

robot manipulators, MIT Press, pp. 155–162, 1985.

[32] Nakamura, Y. and Hanafusa, H., Optimal redundancy control of robot ma-

nipulators, International Journal of Robotics Research, Vol. 6, No. 1, Spring,

pp. 32–42, 1987.

[33] Suh, K.C., Hollerbach, J.M., Local versus global torque optimization of redun-

dant manipulators, Proceedings of the 1987 IEEE International Conference on

Robotics and Automation (Cat. No.87CH2413-3), pp. 619–24 vol.2, 1987.

[34] K. Kazerounian and Z. Wang, Global versus local optimazation in redundancy

resolution of robotic manipulators, The International Journal of Robotics Re-

search, VOL.7, Oct.1988, pp. 3-12.

[35] Z. Wang, K. Kazerounian, An efficient algorithm for global optimization in

redundant manipulators, Journal of Mech. Trans. and Auto. in Design, 1988.

[36] Kim, Sung-Woo and Lee, Ju-Jang, Resolved motion rate control of redundant

robots using fuzzy logic, IEEE International Conference on Fuzzy Systems,

pp. 333–338, 1993.

[37] Kim, Sung-Woo, Lee, Ju-Jang, andSugisaka, Masanori, Inverse kinematics

solution based on fuzzy logic for redundant manipulators, Int. Conf. Intell.

Rob. Syst., pp. 904–910, 1993.

[38] Xu, Y. and Nechyba, M. C., Fuzzy inverse kinematic mapping : rule genera-

tion, efficiency, and implementation, Int. Conf. Intell. Rob. Syst., pp. 911–918,

1993.

Page 69: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

60

[39] Ramos, M.C. and Koivo, A.J., Fuzzy logic-based optimization for redundant

manipulators, IEEE Transactions on Fuzzy Systems, vol. 10, no. 4, August,

2002, pp. 498–509.

[40] Graca, Randy A. and Gu, You liang, A fuzzy learning algorithm for kinematic

control of a robotic system, Proceedings of the IEEE Conference on Decision

and Control, Vol. 2, pp. 1274–1279, 1993.

[41] Teraco, T., Asai, K. and Sugeno, M., Fuzzy systems theory and its applications,

Boston; Toronto : Academic Press, 269 pages, 1992.

[42] Graca, Randy A. and Gu, You-Liang, Application of the fuzzy learning algo-

rithm to kinematic control of a redundant manipulator with subtask optimiza-

tion, IEEE International Conference on Fuzzy Systems, Vol. 2, pp. 843–848,

1994.

[43] Kung, S. Y. and Hwang, J.N., Neural network architectures for robotic appli-

cation, IEEE Trans. Robot. Automat., vol. 5, pp. 641–657, 1989.

[44] Guo, J., and Cherkassky, V., A solution to the inverse kinematic problem in

robotics using neural network processing, Proc. IEEE Int. Joint Conf. Neural

Networks, Washington, DC, 1989, vol. 2, pp. 299–304.

[45] Gardner, J. F. et al., Applicaitons of neural networks for coordinate transfor-

mations in robotics, J. Intell. Robot. Syst., vol. 8, pp. 361–373, 1993.

[46] Lee, S. and Kil, R. M., Redundant arm kinematic control with recurrent loop,

Neural Networks, vol. 7, pp. 643–659, 1993.

[47] Mao, Z. and Hsia, T. C., Obstacle avoidance inverse kinematics solution of

redundant robots by neural networks, Robotica, vol. 15, pp. 3–10, 1997.

Page 70: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

61

[48] Ding, H. and Tso, S. K., Redundancy resolution of robotic manipulators with

neural computation, IEEE Trans. Ind. Electron., vol. 46, pp. 199–202, Feb.

1999.

[49] Ding, H. and Wang, J., Recurrent neural networks for minimum infinity-

norm kinematic control of redundant manipulators, IEEE Trans. Syst., Man,

Cybern. A, Syst. Humans, vol. 29, no. 3, pp. 269–276, May 1999.

[50] Xia, Y. S. and Wang, J., A dual neural network for kinematic control of

redundant robot manipulators, IEEE Trans. Syst., Man, Cybern. B, Cybern.,

vol. 31, no. 1, pp. 147–154, Feb. 2001.

[51] Zhang, Y., Wang, J. and Xia, Y. S., A dual neural network for redundancy

resolution of kinematically redundant manipulators subject to joint limits and

joint velocity limits, IEEE Trans. Neural Netw., vol. 14, no. 3, pp. 658–667,

May 2003.

[52] Parker, J. K., Khoogar, A. R. and Goldberg, D. E., Inverse kinematics

of redundant robots using genetic algorithms, IEEE Int. Conf. Rob. Autom,

pp. 271–276, 1989.

[53] Davidor, Y., Genetic algorithms and robotics – A heuristic strategy for opti-

mization, World Scientific Publishing Co. Pte. Ltd., pp. 164, 1991.

[54] Nearchou, A.C., Aspragathos, N.A., Application of genetic algorithms to point-

to-point motion of redundant manipulators, Mechanism and Machine Theory,

v. 31, n 3, pp. 261–270, April, 1996.

[55] KUKA RoboCell: A compact robotic cell for flexible laser cutting and welding

http://www.kuka.de/kuka sa/pdf/185 robocell e.pdf.

Page 71: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

62

[56] Nearchou, A.C., Solving the inverse kinematics problem of redundant robots

operating in complex environments via a modified genetic algorithm Mechanism

& Machine Theory, v. 33, n. 3, pp. 273–292, April 1998.

[57] Samson, C., Le Borgne, M. and Espiau, B., Robot control: the task function

approach, Oxford [Angleterre]: Clarendon Press, 364 pages, 1991.

[58] Baron, L. A joint-limits avoidance strategy for arc-welding robots, Interna-

tional Conference on Integrated Design and Manufacturing in Mechanical En-

gineering, Montreal, Canada, May 2000.

[59] Huo, L., and Baron, L., Kinematic inversion of functionally-redundant serial

manipulators: application to arc-welding, Transactions of the Canadian Soci-

ety for Mechanical Engineering, 2005, Canada.

[60] Nakamura, Y., Hanafusa, H. and Yoshikawa, T., Task-priority based redun-

dancy control of robot manipulators, Int. J. Robotics Research, Vol. 6, No. 2,

1987.

[61] Baron, L. An Optimal Surfacing Post-Processor Module for 5-Axes CNC

Milling Machines, Third International Conf. on Industrial Automation,

Montreal, Canada, June 1999.

Page 72: UNIVERSITE DE MONTR¶ EAL¶ INVERSE KINEMATICS OF ROBOTIZED FUNCTIONALLY AND · 2013-04-12 · universite de montr¶ eal¶ inverse kinematics of robotized functionally and intrinsically

63

APPENDIX A

Kinematic Inversion of Functionally-Redundant

Serial Manipulators: Application to Arc-Welding