local dexterity analysis for open kinematic chains

25
1 LOCAL DEXTERITY ANALYSIS FOR OPEN KINEMATIC CHAINS K. A. ABDEL-MALEK AND H. J. YEH Department of Mechanical Engineering and Center for Computer Aided Design, The University of Iowa, Iowa City, IA 52242, U.S.A. Abstract Two methods for determining dexterity of manipulator arms are presented. A numerical method is illustrated for determining all possible orientations of the end-effector of an open kinematic chain based upon a row-rank deficiency of the sub-Jacobian of the kinematic constraint equations. This numerical method has been adapted from a theory for determining the accessible output set for planar and spatial manipulators. Boundaries of regions representing orientation solutions are mapped using continuation algorithms. One dimensional curves in three dimensional space are traced. Orientations of the manipulator end-effector at a point are studied (local dexterity). Only local dexterity solutions can be found. A second analytical method is also presented that determines the global dexterity of the system. This method relies upon determining all singularities of the system and identifying singular surfaces and singular curves. Regions of singular surfaces that are boundary are identified and intersected with a service sphere. This method, however, although analytical and accurate, has many limitations. The two methods are compared via implementation into a six degree of freedom manipulator. 1 . INTRODUCTION Workspaces of robotic manipulators are important characteristics associated with the kinematics of the underlying mechanism. Knowledge of the workspace allows a designer to better understand the manipulator’s functionality. The notion of workspaces has been studied by a number of researchers in the past [1-5]. Analytical conditions were used to obtain the workspace by Tsai and Soni [6], Yang and Lee [7], Lai and Menq [8], Freudenstein and Primrose [9], and Spanos and Kohli [10]. Numerical methods were also used by Haug et al. [11]. The general four degree of freedom revolute manipulator has been studied by Cecarelli and Vinciquerra [12]. Workspace of parallel manipulators has also been studied [13,4,14]. The dexterous workspace has been defined by Kumar and Waldron [15] as the subspace of the workspace within which a vector on the end-effector may assume all orientations. Because of joint limits and geometric constraints (e.g., at workspace boundaries), the dexterous workspace may not include all of the workspace. The subject of dexterity and orientability has also been studied by numerous researchers in the field [15-17]. This paper introduces two methods for determining dexterity. A numerical method based upon criteria for determining the accessible output set [11] was adapted to determine local dexterity. Local dexterity will be further clarified in the following section. Due to its inherent numerical formulation (using continuation methods), it will be shown that this method can only find local dexterity. It will also be shown that this numerical method is dependent upon the determination of a starting point on the one- dimensional curve defining the region of dexterity (called the service region). Therefore, only individual regions can be traced. Another method for determining the workspace of manipulators presented by Abdel-Malek and Yeh [18] will be used to determine global dexterity. This method will be shown to be Abdel-Malek, K. and Yeh, H. J., (2000) "Local Dexterity Analysis for Open Kinematic Chains," Mechanism and Machine Theory, Vol. 35, pp. 131-154.

Upload: others

Post on 22-Jan-2022

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: LOCAL DEXTERITY ANALYSIS FOR OPEN KINEMATIC CHAINS

1

LOCAL DEXTERITY ANALYSIS FOR OPEN KINEMATICCHAINS

K. A. ABDEL-MALEK AND H. J. YEHDepartment of Mechanical Engineering and Center for Computer Aided Design, The University of

Iowa, Iowa City, IA 52242, U.S.A.

AbstractTwo methods for determining dexterity of manipulator arms are presented. A numerical method isillustrated for determining all possible orientations of the end-effector of an open kinematic chain basedupon a row-rank deficiency of the sub-Jacobian of the kinematic constraint equations. This numericalmethod has been adapted from a theory for determining the accessible output set for planar and spatialmanipulators. Boundaries of regions representing orientation solutions are mapped using continuationalgorithms. One dimensional curves in three dimensional space are traced. Orientations of themanipulator end-effector at a point are studied (local dexterity). Only local dexterity solutions can befound. A second analytical method is also presented that determines the global dexterity of the system.This method relies upon determining all singularities of the system and identifying singular surfacesand singular curves. Regions of singular surfaces that are boundary are identified and intersected with aservice sphere. This method, however, although analytical and accurate, has many limitations. The twomethods are compared via implementation into a six degree of freedom manipulator.

1 . INTRODUCTIONWorkspaces of robotic manipulators are important characteristics associated with the kinematics of theunderlying mechanism. Knowledge of the workspace allows a designer to better understand themanipulator’s functionality. The notion of workspaces has been studied by a number of researchers inthe past [1-5]. Analytical conditions were used to obtain the workspace by Tsai and Soni [6], Yang andLee [7], Lai and Menq [8], Freudenstein and Primrose [9], and Spanos and Kohli [10]. Numericalmethods were also used by Haug et al. [11]. The general four degree of freedom revolute manipulatorhas been studied by Cecarelli and Vinciquerra [12]. Workspace of parallel manipulators has also beenstudied [13,4,14].

The dexterous workspace has been defined by Kumar and Waldron [15] as the subspace of theworkspace within which a vector on the end-effector may assume all orientations. Because of jointlimits and geometric constraints (e.g., at workspace boundaries), the dexterous workspace may notinclude all of the workspace. The subject of dexterity and orientability has also been studied bynumerous researchers in the field [15-17].

This paper introduces two methods for determining dexterity. A numerical method based upon criteriafor determining the accessible output set [11] was adapted to determine local dexterity. Localdexterity will be further clarified in the following section. Due to its inherent numerical formulation(using continuation methods), it will be shown that this method can only find local dexterity. It will alsobe shown that this numerical method is dependent upon the determination of a starting point on the one-dimensional curve defining the region of dexterity (called the service region). Therefore, only individualregions can be traced. Another method for determining the workspace of manipulators presented byAbdel-Malek and Yeh [18] will be used to determine global dexterity. This method will be shown to be

Abdel-Malek, K. and Yeh, H. J., (2000) "Local Dexterity Analysis for OpenKinematic Chains," Mechanism and Machine Theory, Vol. 35, pp. 131-154.

Page 2: LOCAL DEXTERITY ANALYSIS FOR OPEN KINEMATIC CHAINS

2

efficient in terms of determining service regions indicating dexterity. Difficulties encountered in bothmethods will be discussed.

2. LOCAL DEXTERITY, PART IDexterity, as used in the context of this paper, is all possible orientations for the end-effector at aspecified point in the workspace. A sphere located at this point may be used to detect all penetrations ofthe end-effector through it. This sphere was called the service sphere by Vinagradov [19]. The set ofpoints on the sphere that are due to these penetrations are collectively called a service region whichrepresents the local dexterity of a manipulator. At a specific point in the workspace, a service spheremay have a number of service regions. Determining all service regions means addressing the globaldexterity of the system at a point.

For example, consider the n-degree-of-freedom manipulator shown in Fig. 1a. At a point

p = x y zT* * * in the workspace, the service sphere is located with radius equal to the dimension

of the nth link. The vector joining the point g with p defines the orientation of the end-effector. Thus,the regions that g assumes on the surface of the sphere provide an indication of the dexterity of themanipulator at p.

The first formulation is aimed at determining the boundary curves to these service regions. For an

assembled configuration, the generalized coordinates q = q qn

T

1,..., satisfy independent holonomic

kinematic constraint equations of the form

Φ Px

y

y

P x

P y

P z

( )

( )

( )

*

*

*

q

q

q

0

−−−

= (1)

where P P Px y z

T( ) ( ) ( )q q q is the position vector of the point p described using the Denavit-

Hartenberg representation [20].

In order to include inequality constraints into the constraint equation, inequalities imposed on joint limitsin the form of

q q qi i im in m ax≤ ≤ (2)

are parametrized asq a bi i i i= + sin λ (3)

where ( )a q qi i i= +max min 2 and ( )b q qi i i= −max min 2 are the mid point and half range of the

inequality constraint. The vector of new generalized coordinates are λ = λ λ1,..., n

T.

A service sphere at p, parametrized in terms of output coordinates u = θ ϕ T can be written as

x u

q

q

qsphere

x

y

z

P r

P r

P r

( )

( ) cos cos

( ) cos sin

( ) sin

=++

+

φ θφ θ

φ(4)

where r is the radius of the service sphere. The vector pg , where g = g g gx y z

T is a point

chosen on the n-th link, can be written in terms of the spherical coordinates as

Page 3: LOCAL DEXTERITY ANALYSIS FOR OPEN KINEMATIC CHAINS

3

g P

g P

g P

r

r

r

x x

y y

z z

( ) ( )

( ) ( )

( ) ( )

cos cos

cos sin

sin

q q

q q

q q

−−−

=

φ θφ θ

φ(5)

The point g can exist on the surface of a sphere rotating with center at p. Since r is a known constant,only two of the three equations (Eq. 5) are needed to determine the spherical coordinates θ φ and .

Combining Eq. (11), two of Eqs. (5), the sphere angle constraints θ φ and , and the parametrized joint

limits, the vector equations of constraint are written as

Φ µ( )

( )

( )

( )

( ) ( ) cos cos

( ) ( ) cos sin

( sin )

( sin )

( sin )

( sin )

*

*

*

=

−−−

− −− −− +

− +

− +

− +

=

P x

P y

P z

g P r

g P r

q a b

q a b

x

y

z

x x

y y

n n n n

q

q

q

q q

q q0

φ θφ θ

θ π π λ

φ π λλ

λ

1

2

1 1 1 3

02

(6)

where µ = λu qT T T T. The constraint vector function Φ µ( ) has 5 2 7+ + = +n n( )

constraints. Define a service region on the sphere as

{ }A for some and ≡ =u 0 q: ( ) ,Φ µ λ (7)

It has been shown [11, 17] that the boundary of the workspace (called the accessible output set) ischaracterized by a row-rank deficiency of the sub-Jacobian of the kinematic constraint Φw . In the

formulation presented in this paper, a similar criteria is used for the boundary curves of service regions.The boundary of the service region is defined as

{ }∂A A Rank for some with ⊂ ∈ < +u w u w 0w: ( ),Φ Φ( , ) =n 7 (8)

where w q= λ Tis n n n+ + = +2 2 2( ) and the Jacobian of the constraint function at an

assembled configuration q0 is the matrix

( )Φ Φw q q( )0 0=

∂∂

i

jw(9)

The criteria for the boundary curve of the service region can be reduced to analytical form by notingthat the matrix is row-rank deficient if and only if its rows are linearly dependent [11]. This can be

done by searching for a solution for the vector γ in Φ =Τγw 0 , where γ has dimension (n+7). A

necessary condition for determining the boundary of the service region is

{ }∂A A: ⊂ ∈ =u 0 u w 0wΦ = Φ( , ) =Τ Τγ γ γ, ,1 (10)

Page 4: LOCAL DEXTERITY ANALYSIS FOR OPEN KINEMATIC CHAINS

4

To project the solution onto a nonlinear one degree of freedom system, the matrix G x*( ) is formed

(Eqs. 6 and 10) such that a solution is computed for

G x

u w

0w* ( ) ≡

=−

Φ( , )Φ Τ

Τ

γγ γ 1

(11)

where x u w= T T T Tγ . The constraint vector function Φ( , )u w has ( )n + 7 equations, ΦΤγw

has ( )2 2n + equations, and γ γΤ −1 has 1 equation. The total number of equations is ( )3 10n + .

The dimension of the new vector of generalized coordinates x is 2 2 2 7 3 11+ + + + = +( ) ( )n n n .

Thus, this is a one degree-of-freedom system.

At an initial configuration having the end-effector point p located at the target position x y zT* * * ,

the initial set of coordinates u qo o o Tλ satisfying the constraints Φ µ( ) of Eq.(6) can be

calculated. In this configuration, the wrist point g q( )o may be located inside the service region. To

compute a point near the boundary, the point g is ‘dragged’ along a direction vector until it reaches theboundary. This dragging procedure can be achieved by iteratively increasing the coordinates θ φ or in

small stepsizes and using the modified Newton-Raphson method with the Moore-Penrose pseudo inverseto obtain a corrected configuration. The pseudo inverse method is used because the dimension of the

vector [ ]µ = λu qT T T T is ( )2 4n + which yields a nonsquare Jacobian matrix.

In order to numerically trace the solution curve of Eq. (11), it is first necessary to find a starting pointon the curve. In order to obtain a solution to

Φ µ Φ)µ ∆ = −( (12)

the problem can be written as

( )∆µ Φ Φ Φ Φ)µ µ µ= −−

T T1

( (13)

and computed as

µ µ µi i i+ = +1 ∆ (14)

where the coefficient ( )Φ Φ Φµ µ µT T

−1

is called the Moore-Penrose pseudo inverse [21]. Thus given an

initial guess q1 , the Moore-Penrose pseudo inverse computes a starting point q* on the boundary

curve. Once a point close to the boundary is computed, the boundary constraints G x*( ) and the new

coordinates x with another modified Newton-Raphson iteration with pseudo inverse are used todetermine a point x on the boundary.

The boundary of the service region is traced using an experimental numerical code (called PITCON)based on the continuation method presented by Rheinboldt [22]. This method can be written as anequation of constraint

G x h x 0x ( ) ( ) = (15)

where h x( ) is uniquely defined by Eq. (15) and

h x h x( ) ( )T = 1 (16)

Page 5: LOCAL DEXTERITY ANALYSIS FOR OPEN KINEMATIC CHAINS

5

Det T

G w

h ww ( )

( )

> 0 (17)

It should be emphasized that only one boundary curve is traced for each starting point. Although wehave been able to determine many starting points through trial and error, we have not been able toanalytically determine all starting points. Neither have we been able to conclude the number of serviceregions.

3. EXAMPLE USING PART IConsider the six degree-of-freedom manipulator depicted in Fig. (2), with the following geometryd1 50= , d3 10= , d4 25= , d6 10= , and a2 20= . The manipulator comprises six revolute joints.

Using the Denavit-Hartenberg representation method [20], the ( )4 4× homogeneous transformation

matrices are formulated for each joint as

01

1 1

1 1

0 0

0 0

0 1 0 50

0 0 0 1

T =−

cos sin

sin cos

q q

q q, 1

2

2 2 2

2 2 2

0 20

0 20

0 1 0 0

0 0 0 1

T =

cos sin cos

sin cos sin

q q q

q q q

23

3 3

3 3

0 0

0 0

0 1 1 10

0 0 0 1

T =−

sin cos

cos sin

q q

q q , 34

4 4

4 4

4

0 0

0 0

0 1 0

0 0 0 1

T =−

cos sin

sin cos

q q

q q

d

45

5 5

5 5

0 0

0 0

0 1 0 0

0 0 0 1

T =

cos sin

sin cos

q q

q q, and 5

6

6 6

6 6

6

0 0

0 0

0 0 1

0 0 0 1

T =

cos sin

sin cos

q q

q q

d

The resultant transformation matrix relating the end-effector reference frame to the zeroth referenceframe is

06

1

0

6 06

06

1T T

R q p q

0= =

=∏ i

ii

( ) ( )(18)

where p q q q q( ) ( ) ( ) ( )= P P Px y z

T. Similarly, the coordinates of the point g can be determined

as

05

1

0

5 05

1T T

R q g q

0= =

=∏ i

ii

( ) ( )(19)

To compare this method with that presented in the following section, inequality constraints imposed onlyon the first three joints will be considered. The following inequality constraints

− ≤ ≤π π4

5

41q (20)

− ≤ ≤π π4 22q (21)

0 23≤ ≤q π (22)

are parametrized according to Eq. (3) as

Page 6: LOCAL DEXTERITY ANALYSIS FOR OPEN KINEMATIC CHAINS

6

q b c1 1 1 1 12

3

4= + = +sin sinλ π π λ (23)

q b c2 2 2 2 28

3

8= + = +sin sinλ π π λ (24)

q b c3 3 3 3 3= + = +sin sinλ π π λ (25)

At a point p* = −0 25 55T

, a service sphere is located and the constraint equation is

( ) ( )( ) ( )

Φ λ( , , )

( )

( )

( )

( ) ( ) cos cos

( ) ( ) cos sin

( sin )

( sin )

sin

sin

sin

u q

q

q

q

q q

q q0=

−+−

− −− −− +

− +

− −− −

− −

=

P

P

P

g P r

g P r

q

q

q

x

y

z

x x

y y

0

25

55

02

2 3 4

8 3 8

1

2

1 3

2 4

3 3

φ θφ θ

θ π π λ

φ π λ

π π λπ π λ

π π λ

(26)

The boundary curve is traced in Fig. (3). This curve is the boundary to a single service region on theservice sphere. The significance of this curve will become apparent in the following section. Singularbifurcation points may occur during tracing and the numerical code (PITCON) may stop. It issuggested that higher-order singularities exist at these points. This problem was not addressed in thiswork. First order singularities have been discussed by Abdel-Malek and Yeh [18] and a method forcomputing tangents at bifurcation points has been demonstrated.

4. DETERMINING LOCAL DEXTERITY, PART IIThe method presented in this section will employ a singularity criteria of the Jacobian. Due to itsanalytical formulation, the method is only valid for manipulators having spherical wrists. Themanipulator will be segmented into two parts. The first part comprises the first three links and thesecond part comprises the last three links. The workspace for each segment will be determined.Surfaces that are boundary to the workspace generated by a point on the first segment (called the wristpoint) will be analytically determined.

At a point p* in the workspace, the service sphere is located. The intersection of the service sphere

with the boundary to the wrist workspace results in service regions. Service regions due to the secondsegment will be determined. For the first segment, the vector function describing the coordinates of apoint on the third link (called the wrist point) can be written as

x q R q x p q( ) ( ) ( )= +03

3 03w (27)

where q = q q qT

1 2 3 , 03R is the ( )3 3× rotation matrix, 3x w is the vector describing the wrist

point resolved in the reference frame of link 3, and 03p is the position vector determined from 0

3T (Eq.

Page 7: LOCAL DEXTERITY ANALYSIS FOR OPEN KINEMATIC CHAINS

7

8). At a certain position in space, the generalized coordinates satisfy independent holonomic kinematicconstraint equations of the form

Λ( ) =q x q R q x p q 0( ) ( ) ( )− − =03

3 03w (28)

Method II is applicable to manipulators having up to 6 axes with revolute and prismatic joints.

Define a singularity qs as the value of a generalized coordinate that causes the mechanism to lose at

least one degree of mobility [23]. Singularities of mechanisms were defined [11] as the values thatmake the Jacobian singular. A Jacobian of the constraint function can be determined as

Λ ( ) =Λ

( )q qq

q∂∂

i

j

(29)

To take into consideration the effect of inequality constraints in the parametrized formq a bi ii i= + sin λ (30)

The Jacobian with respect to the new generalized coordinates can be written as

Λ ( ) =Λ

( ) Λ ( )λ λ∂∂

∂∂λq

q

qq q qq

i

j

j

k

= (31)

Singularities are determined by equating the determinant of Λ ( )λ q to zero such that

F(λ) = Λ qq 0λ = (32)

Solutions to Eq. (32) are values for λ that are substituted into Eq. (30) to obtain first-order

singularities in terms of the generalized coordinates q. These singularities will be denoted by q jsi ,

where the subscript indicates the joint number and the superscript indicates the number of that

singularity. For example, q s2

3 indicates the third singularity of the second joint.

Substituting the set of singularities into the wrist position vector (Eq. 27) yields a vector describing aparametrized surface in two variables.

x R x p( | , ) ( , ) ( , )q u v u v u vis

wj = +0

33 0

3 (33)

where the notation x( | , )q u vis j indicates the vector function x evaluated at the singularity qi

sj and

parametrized in terms of u and v. Inequality constraints imposed on the joint variables u and v are

u u umin max≤ ≤ and v v vmin max≤ ≤ (34)Singular surfaces defined by Eq. (33) may exist on the boundary to the wrist workspace, internal to it,or both. In order to determine regions of the surface that are boundary to the wrist workspace, singularsurfaces are intersected. The intersection of two singular surfaces yields singular curves. Definesingular curves as trajectories of the wrist point at which the mechanism loses two or more degrees ofmobility. Since resulting singular surfaces may be complicated, the intersection cannot be determinedanalytically. Numerical methods are necessary to trace the intersection curve. The intersection problemmay be considered as solving the system of seven non-linear equations with eight variables where theconstraint function H( )ζ is

Page 8: LOCAL DEXTERITY ANALYSIS FOR OPEN KINEMATIC CHAINS

8

[ ][ ][ ][ ]

H

x x

0( )

( | , ) ( | , )

( ) sin( ) ( )

( ) sin( ) ( )

( ) sin( ) ( )

( ) sin( ) ( )

ζ =

−− + + −− + + −− + + −− + + −

=

1 2

1 2 1 2 1

1 2 2 2 1

1 2 3 2 1

1 2 4 2 1

2 2

2 2

2 2

2 2

q u v q s t

u u u u u

v v v v v

s s s s s

t t t t t

js

msi k

λλλλ

(35)

where ζ = u v s tTλ λ λ λ1 2 3 4 and the inequality constraints associated with each

surface were parametrized per Eq. (3). The Jacobian of the constraint function H( )ζ for a certain

configuration ζ1 is the ( 3 3× ) matrix

HH

ζ1 1ζ

ζζ( () )=

∂∂

i

j

(36)

To satisfy the constraint equation, an algorithm similar to Newton-Raphson iteration method isemployed, as follows:

H Hζ ζ∆ = − (37)

The Moore-Penrose inverse is used again to determine a starting point ζ∗ on the intersection curve.

4.1. Determining the boundary to the wrist workspaceOnce a starting point is found, the intersection curve is traced along the tangent direction by using theso-called marching method [24]. The tangent vector at the starting point can be computed by

calculating the cross product of two normal vectors. At a known point on the surface x1( | , )q u visj ,

there are two linearly independent tangents which are the derivatives of the surface with respect to its

parameters. Let xu1 denote the derivative of x1 with respect to u and xv

1 denote the derivative of x1

with respect to v. The cross product of these vectors result in a normal to the surface such that

( )n x x x x1 1 1 1 1= × ×u v u v/ (38)

Similarly, the second surface has a normal such that

( )n x x x x2 2 2 2 2= × ×s t s t/ (39)

and the tangent τ is computed as

τ = ×n n1 2 (40)The new step constraint equation can be written as

[ ( , ) ]x x1 u v co− ⋅ τ − = 0 (41)

where xo is the computed point, and c is the step size.

To determine other intersection branches, singular behavior along the curve is studied. Allgower andGeorg [21] suggest monitoring the curve for a change in sign of the following determinant

det( ( )

( )

Hζ τ )τ

σσ

(42)

where σ is the arc length. Thus, to recognize that a singularity has occurred, Eq. (42) is used with adiminishing step variable until the singular point is computed. To trace the second curve, it is necessaryto compute the second tangent at this bifurcation point. For this reason, it is assumed that the surfacesare tangent at the bifurcation point such that

Page 9: LOCAL DEXTERITY ANALYSIS FOR OPEN KINEMATIC CHAINS

9

x x x x 0u v s t1 1 2 2× × ≠/ / (43)

Lucaks [25] showed that a branch of a curve can be parametrized in terms of its arc length σ as

r x x( ) ( ( ), ( )) ( ( ), ( ))σ σ σ σ σ= =1 2u v s t (44)

Taking the derivative of both sides of Eq. (44) with respect to σ yields the tangent vector∂∂σ σ σ σ σ

rx x x x= + = +u v s tu v s t1 1 2 2( ) ( ) ( ) ( ) (45)

Multiplying vectorially by xq1

1 we get

( ) ( ) ( )x x x x x xu v u s u tv s t1 1 1 2 1 2× ⋅ = × ⋅ + × ⋅( ) ( ) ( )σ σ σ (46)

Dividing by x xu v1 1× yields

( ) ( ) ( )s u vσ σ σα β= + (47)

( ) ( ) ( )t u vσ σ σγ δ= + (48)

whereαδ βγ− ≠ 0 (49)

Derive both sides of Eqs. (45) and (46) again yields

x x x x xuu uv vv u vu u v v u v1 2 1 1 2 1 12( ) ( ) ( ) ( ) ( ) ( )σ σ σ σ σσ σσ+ + + + = (50)

x x x x xss st tt t ts s s t t t2 2 2 2 2 2 22( ) ( ) ( ) ( ) ( ) ( )σ σ σ σ σσ σσ+ + + + (51)

Using the dot product of n in both sides of Eqs. (30) and (31), yields

< > + < > + < > =x n x n x nuu uu vvu u v v1 2 1 1 22, ( ) , ( ) ( ) , ( )σ σ σ σ (52)

< > + < > + < >x n x n x nss st tts s t t2 2 2 2 22, ( ) , ( ) ( ) , ( )σ σ σ σ (53)

Substituting Eq. (47) and Eq. (48) into Eq. (52) and Eq. (53) yields the following relation

θ µ κσ σ σ σ( ) ( ) ( ) ( )u u v v2 2

2 0+ + = (54)

which is a quadratic form that can be written as

[ ]( ) ( )( )

( )u v

u

vσ σσ

σ

θ µµ κ

= 0 (55)

The eigenvalues of the above system are computed as

λθ κ θ κ

µ1

22

2 2=

++

+ (56)

λθ κ θ κ

µ2

22

2 2=

+−

+ (57)

Therefore the solution in the neighborhood of a singular point depends on the definiteness of thequadratic form. Furthermore, the two vectors defining the tangent directions are the correspondingeigenvectors. Vectors in the tangent directions v1 and v2 are determined such that

τ1 = − +λ λ2 1 1 2v v (58)

τ 2 = − −λ λ2 1 1 2v v (59)

4.2. Perturbation methodIt remains to determine whether these sub-surfaces are internal or boundary surfaces. This can beperformed by perturbing a known point on the sub-surface and determining whether both perturbedpoints satisfy the constraint equation. Any point can be chosen, provided that it is not on the boundary

Page 10: LOCAL DEXTERITY ANALYSIS FOR OPEN KINEMATIC CHAINS

10

of the sub-surface. For a sub-surface Ψ ζ)i ( having a known parametrization and a known boundary,

the partial derivatives with respect to the parametrization variables q1 and q2 are ∂ ∂Ψ i q1 and

∂ ∂Ψ i q2 . At any regular point qo on the sub-surface, these vectors are linearly independent and

tangent to the coordinate curves through qo (they span the tangent plane of Ψ i ( )q at qo ). The unit

vector $n , which is orthogonal to those vectors, is

$ ( )n qo

i i

i i

q q

q q

×

∂∂

∂∂

∂∂

∂∂

Ψ Ψ

Ψ Ψ1 2

1 2

(60)

For a small perturbation ∂ε about the point qo and along the normal $ ( )n qo , the coordinates of the

perturbed points are

x q q n q1 2, ( ) ( ) $ ( )o i o o= ±Ψ ∂ε (61)

If the perturbed point is inside the wrist workspace, it has to satisfy the constraint equation (Eq. 28),subject to inequality constraints of Eq. (30). Substituting Eq. (61) into Eq. (28) and augmenting thesystem of equations with the parametrized inequality constraints, the perturbed point is inside the wristworkspace if there exists a solution to the following system of equations:

03

3 03

1 1 1 1

2 2 2 2

3 3 3 3

R x p q n q

0

wi o o

q b c

q b c

q b c

+ −− −− −− −

=

Ψ ( ) $ ( )

sin

sin

sin

m∂ελλλ

(62)

Finding solutions to Eq. (62) indicates that the sub-surface is internal. Thus, a sub-surface Ψ i ( )q is

internal if and only if there exists a solution for Eq. (62) for both perturbations ±∂ε . Sub-surfacesthat are boundary to the wrist workspace are used to construct the boundary to the wrist workspace.

4.3. Determining service regions

At a point p* in the workspace, the service sphere is centered. The maximum distance between a point

on the end-effector and the wrist point is assigned to be the radius of the service sphere. Therefore, thewrist point may assume position on the surface of the sphere.

Analytical boundaries to the wrist workspace have been determined in the foregoing discussion. Theintersection of the service sphere with the boundary to the workspace yields regions that are accessibleby the wrist point. These service regions are further restricted by joint limits imposed on the secondsegment of the manipulator. These limits have been discussed in recent work [18] and will not bediscussed in this paper. Therefore, only inequality constraints associated with the first three joints willbe considered. The service region SRi ( , )p q is a set that exists on the surface of the service sphere such

that

{ }SR u v for somei ss( , ) ( , ) ,p q x 0 q= = (63)

where the sphere is parametrized as x pss

Tu v h v u h v u h v( , ) cos cos cos sin sin*= + , and

belongs to the wrist workspace such that

{ }SR for somei ( , ) ( ) ,p q q 0 q= =Φ (64)

Page 11: LOCAL DEXTERITY ANALYSIS FOR OPEN KINEMATIC CHAINS

11

Since the boundary of the wrist workspace has been analytically determined, it is possible to intersecteach boundary sub-surface with the service sphere to determine curves that are boundary to serviceregions. To determine whether the service region is enclosed by the intersecting curve or lies outside it,a ray is cast in the direction of the normal passing through p. The ray will intersect the sphere in twopoints s1 and s2 . The service region is identified by determining which of these points satisfies the

local constraint equation. A local constraint equation accounts for the inequality constraint associatedwith the singularity of the sub-surface. The intersection curve is the set of solutions to Λ1 , such that

ΛΨ

1 =−

− −

=

iss

i i i i

u v

q a b

( ) ( , )

sin

q x0

λ(65)

The service region is identified by determining one of the points on the ray satisfying the following

ΛΨ

2 =+ −

− −

=i

ss

local

t u v

q a b

( ) $ ( ) ( , )

sin

q n p x0

λ(66)

Numerical solutions to Eq. (66) are obtained.

5. EXAMPLE USING PART IIConsider the six degree-of-freedom used in demonstrating part I of this paper (Fig. 1). Consider thefirst three joints as being segment number 1 responsible for locating the wrist point w. Boundary

surfaces to the wrist workspace for the wrist point at 340 0xw

Td= will be studied.

The vector function describing the position of the wrist point is

x q x( )

cos cos cos sin sin cos sin cos cos

sin cos cos cos sin sin sin sin cos

sin cos cos sin

= =− − ++ − +

+ + +

03

1 2 3 1 3 1 2 1 2

1 2 3 1 3 1 2 1 2

2 3 2 2

10 10 10 20

10 10 10 20

10 10 20 50

q q q q q q q q q

q q q q q q q q q

q q q q

(67)

For a general point x = x y zT

on link 3 of the manipulator, the independent holonomic constraint

equations are

Λ( )

cos cos cos sin sin cos sin cos cos

sin cos cos cos sin sin sin sin cos

sin cos cos sin

q 0=− + + −− − + −

− − − −

=x q q q q q q q q q

y q q q q q q q q q

z q q q q

10 10 10 20

10 10 10 20

10 10 20 50

1 2 3 1 3 1 2 1 2

1 2 3 1 3 1 2 1 2

2 3 2 2

(68)subject to the following joint limits

− ≤ ≤π π4

5

41q , − ≤ ≤π π4 22q , and 0 23≤ ≤q π (69)

which are parametrized in Eqs. (23-25). To evaluate the Jacobian with respect to the new generalizedcoordinates λ i , the matrices Λq and qλ are evaluated such that

Λq =− − + −

− − +

10 10 10 20

10 10 10 20

0

1 2 3 1 3 1 2 1 2

1 2 3 1 3 1 2 1 2

sin cos cos cos sin sin sin sin cos

cos cos cos sin sin cos sin cos cos

q q q q q q q q q

q q q q q q q q q

− − − − −− − − − +

− + −

10 10 20 10 10

10 10 20 10 10

10 10 20 10

1 2 3 1 2 1 2 1 2 3 1 3

1 2 3 1 2 1 2 1 2 3 1 3

2 3 2 2 2 3

cos sin cos cos cos cos sin cos cos sin sin cos

sin sin cos sin cos sin sin sin cos sin cos cos

cos cos sin cos sin sin

q q q q q q q q q q q q

q q q q q q q q q q q q

q q q q q q

(70)

Page 12: LOCAL DEXTERITY ANALYSIS FOR OPEN KINEMATIC CHAINS

12

qλ =

3

40 0

03

80

0 0

1

2

3

πλ

πλ

π λ

cos

cos

cos

(71)

5.1. Computing singularitiesInternal and boundary singularities are computed by evaluating the determinant of the Jacobian andequating to zero such that

Λ λqq = −1125 1 7 81 2 3 3( ) cos cos cos sin sinλ λ λ π λ

[ ]+ − + − − +

+ + −

( ( ) ) ( ) cos

sin( ( ) ) cos

sin sin4 2 1 1 1

3

81 1

3 8

81 2 1 4 2 1 4 2 3π λ λ λ

+ + − +

+ + − + −

( ( ) ) cos

sinsin ( ( ) )( ( ) ) sin

sin1 1

3

82 4 1 1 1

3

81 4 2

31 2 1 4 2π λ

π λπ λ

− − − −−

+ +

=(( ) ( ) ) sinsin sin

sinsin

sin1 13 8

8

3

801 2 3 4 2 3 2

3

λ λ π λπ λ (72)

subject to the inequalities of Eq. (69). Singularities are determined by finding the roots of Eq. (72).

For example, the term cosλ1 vanishes if λ π1 2= or λ π1 2= − . Substituting λ1 into Eq. (23)

results in qs1

1

4= − π

or q s1

25

4= π

. The other computed singularities are qs2

3

4= − π

, q s2

4

2= π

,

q s3

5 0= , , qs3

6 2= π , and qs3

7 = π . The total number of first-order singularities is seven. The

singularity qs3

7 = π , however, is inside the interval [ ]0 2π . Since both of the endpoints are

singularities, qs3

7 = π will not be considered. Singular surfaces are parametrized by substituting each

singularity into Eq. (67). Note, however, that some of these surfaces are boundary to the workspace,other surfaces are internal, and some surfaces have parts that are on the boundary and parts that are

internal. For example, substituting the singularity qs1

1

4= − π

into Eq. (67) yields the singular surface

parametrized as follows

( )( )x1

1 2 3

2 3 3 2 2

2 3 3 2 2

3 2 2 2

1

7 0711 7 0711 14 1421

7 0711 7 0711 14 1421

10 10 20 50

( | , )

. cos cos . sin sin . cos

. cos cos . sin sin . cos

cos sin cos sin

q q q

q q q q q

q q q q q

q q q q

s =+ − +

− + + −+ + +

(73)

with inequality constraints defined as 0 23≤ ≤q π and − ≤ ≤π π4 22q . Singular surface

x11 2 3

1( | , )q q qs is shown in Fig. 5a.

Substituting the singularity q s1

25

4= π

into Eq. (67) yields the singular surface

( )( )x2

1 2 3

3 2 3 2 2

3 2 3 2 2

3 2 2 2

2

7 0711 7 0711 141421

7 0711 7 0711 141421

10 10 20 50

( | , )

. cos cos . sin sin . cos

. cos cos . sin sin . cos

cos sin cos sin

q q q

q q q q q

q q q q q

q q q q

s =− + + −− − − −

+ + +

(74)

Page 13: LOCAL DEXTERITY ANALYSIS FOR OPEN KINEMATIC CHAINS

13

with inequality constraints as 0 23≤ ≤q π and − ≤ ≤π π4 22q . The singular surface

x21 2 3

2( | , )q q qs is shown in Fig. 5b. Singular surfaces due to the singularities q s3

5 0= , qs3

6 2= π ,

qs2

3

4= − π

, and q s2

4

2= π

are depicted in Fig. 6a, b, c, and d, respectively.

5.2. Determining sub-surfacesSingular surfaces are divided into sub-surfaces by computing curves of intersection between them.Once these curves are determined and projected onto their respective parametric space of two variables,each region representing a sub-surface is studied for existence on the boundary of the workspace. Toillustrate the determination of sub-surfaces, consider the intersection of the two surfaces

x x11 2 3

11( | , ) ( , )q q q u vs = and x x21 2 3

22( | , ) ( , )q q q s ts = , where the parameters have been replaced by

u,v,s, and t for simplicity. The constraint matrix (Eq. 35) can be written as

H

x x

0( )

( , ) ( , )

sin

sin

sin

sin

ζ =

− −

− −

− −

− −

=

1 2

1

2

3

4

2

3

4

8

3

8

2

3

4

8

3

8

u v s t

u

v

s

t

π πλ

π πλ

π πλ

π πλ

(75)

The starting point ζ* computed using the Moore-Penrose pseudo inverse is

ζ* . . . . . . . .= −0 6184 34086 0 6184 2 8745 01928 0 0851 01928 0851 . Using ζ* as a

starting point, the algorithm for mapping marching curves is employed to continue tracing the curves.As the curve is being traced, the determinant of the sub-Jacobian changes signs and a bifurcation pointis encountered at

ζo = 0 7854 31416 0 7854 31416. . . . 0 3398 08306 10 0 3398 08306 109 9. . . .× − ×− − .

The matrix of the quadratic equation (Eq. 35) is computed as

Λ =θ µµ κ

=

14 1421 0 6830

0 6830 28 2843

. .

. .(76)

The eigenvalues of the quadratic equation are λ1 141421= . and λ 2 28 2843= − . . The first

eigenvector due to the first eigenvalue is v1810000 016099 10= × −. .

T, while the second

eigenvector due to the second eigenvalue is v28016099 10 10000= − × −. .

T. To compute the

tangents at the bifurcation point, a combination of the eigenvectors is used such that

τ12 1 1 2 5 3182 37606= − + = −λ λv v . .

T(77)

τ22 1 1 2 53182 3 7606= − − =λ λv v . .

T(78)

The normalized tangents computed in the parametric space at the bifurcation point are

τ1 08165 05773= . .T

and τ2 08165 0 5774= −. .T

. The resulting intersecting curves in the

parametric space are depicted in Fig. 7a, and depicted on the surfaces in Fig. 7b.

Page 14: LOCAL DEXTERITY ANALYSIS FOR OPEN KINEMATIC CHAINS

14

In addition to the intersection curves resulting from the intersection between x11 2 3

1( | , )q q qs and

x21 2 3

2( | , )q q qs , surface x11 2 3

1( | , )q q qs intersects with other singular surfaces. The computed

intersection curves due to other singular surfaces are superpositioned in Fig. 8. These four singular

curves ( c c c c1 2 3 4, , and ) partition surface x1 into twelve sub-surfaces.

To determine whether each sub-surface is a boundary or internal sub-surface to the wrist workspace, the

perturbation method (Eq. 61) is implemented. For example, consider the point p1( )q on the sub-

surface Ψ1 which has the set of generalized coordinates q2 0 4= . and q3 34= . . Note that the sub-

surface Ψ1 is defined as follows

( )( )Ψ1

2 3 3 2 2

2 3 3 3 2

2 3 2 2

7 0711 7 0711 14 1421

7 0711 7 0711 141421

10 10 20 50

=+ − +

− + + −+ + +

. cos cos . sin sin . cos

. cos cos . sin sin . cos

cos sin cos sin

q q q q q

q q q q q

q q q q

(79)

enclosed by the following boundary curve segments: c n n1 2 8 on the interval ,

c n n3 8 9 on the interval , and c n n4 9 2 on the interval (as illustrated in Fig. 8). To determine

the normal to Ψ1 using Eq. (60), partial derivatives representing tangent vectors are evaluated suchthat

∂∂ψ1

q

q q q q

q q q q

q q q q2

2 3 2 2

2 3 2 2

2 3 2 2

7 07 7 07 14 14

7 07 7 07 14 14

10 10 20

=− − −

+ +− +

. sin cos . cos . sin

. sin cos . cos . sin

cos cos sin cos

(80)

and

∂∂ψ1

q

q q q

q q q

q q3

2 3 3

2 3 3

2 3

7 07 7 07

7 07 7 07

10

=− +

+−

. cos sin . cos

. cos sin . cos

sin sin

(81)

The normal is computed

n = ×∂∂

∂∂

ψ ψ1 1

q q2 3

=

( )( )

( )=

−− − + −

−+ − − +

−− −

707

102

707

102

499849

5000

2 32

3 3 3 2 3 2 3

3 2 2 32

3 3 3 2 3

2 3 2 3 2 32

cos (cos ) sin cos sin sin cos cos cos

cos sin cos (cos ) sin cos sin cos cos

sin cos cos cos sin (cos )

q q q q q q q q q

q q q q q q q q q

q q q q q q

(82)

The unit normal $n n n= at the point qo on the sub-surface Ψ1 is evaluated

$ . . .n n n= = −0 098 0 452 0887T

(83)

For a small perturbation ∂ε = +01. , the coordinates of the perturbed point are computed as

x q n q1 6 513 1812 63418= Ψ i o o T( ) $ ( ) . . .+ = −∂ε (84)

Page 15: LOCAL DEXTERITY ANALYSIS FOR OPEN KINEMATIC CHAINS

15

Forming Eq. (62) with x1 and the inequalities of Eq. (69), there exists a solution such that the

generalized set is q = −2 321 1222 3502. . .T

. For a perturbation of ∂ε = −01. , the coordinates of

the perturbed point are

x q n q2 6 494 1721 63241= Ψ i o o T( ) $( ) . . .− = −∂ε (85)

and the solution for this position is the generalized set q = −2 393 1231 3463. . .T

. Thus, both

perturbation points are inside the wrist workspace which guarantees that this sub-surface is an internal

one. For sub-surface Ψ 2 , the point on this sub-surface is chosen as p2 ( )q which has coordinates

q2 10= . and q3 4 4= . . The unit normal $n n n= at this point on the sub-surface Ψ 2 is evaluated

as

$ . . .n n n= = 0 671 0 653 0 351T

(86)

For a small perturbation ∂ε = +01. , the coordinates of the perturbed point are

x q n q1 6 211 7 245 69 646= Ψ i o o T( ) $ ( ) . . .+ = − −∂ε (87)

For this point, a solution of Eq. (62) subject to inequality constraints of Eq. (69) can be found such that

the set of generalized coordinates is q = 2 276 1114 1882. . .T

. A solution, however, cannot be

found for −∂ε . This indicates that Ψ 2 is a boundary sub-surface to the wrist workspace. Using thismethod, boundary sub-surfaces of each singular surface are determined. These surfaces are depicted inFig. 9 . The volume enclosed by these surfaces is the wrist workspace. At the point

p* = −0 25 55T

, the sphere is located and intersected with the boundary to the wrist workspace.

Figure 10a depicts the sphere located at p* . The intersection of the sphere with the surfaces

x11 2 3

1( | , )q q qs and x21 2 3

2( | , )q q qs yields two sets of boundary that essentially are the service regions

(depicted in Fig. 10b).

6. CONCLUSIONSMethods for determining dexterity have been presented. Method I is a numerical formulation that hasbeen shown to work for any type of kinematic chain with various joint constraints. A vector constraintfunction is formulated to pose the problem in terms of a boundary curve to a service region. A serviceregion was shown as being an indication of the local dexterity of the manipulator.

Method I was shown to be efficient in determining a point on the curve that is boundary to a serviceregion within a few iterations. Numerical continuation methods were used to trace the boundary to theservice region based upon a row rank deficiency of the sub-Jacobian of the constraint function. Adeficiency of this method is in its inability to determine all service regions. Starting points computedusing the Moore-Penrose pseudo inverse cannot be found for all curves. Difficulties were encounteredin determining the number of existing service regions and therefore, the number of starting pointsrequired. The strength of this method is exhibited in its ability to account for all joint limits in a singleformulation.

Method II formulates the problem in terms of two manipulator segments. An analytical method fordetermining the boundary to the workspace of the first segment was presented. It was shown that usingthis method, first-order singularities are computed by studying the Jacobian’s singularity. It was alsoshown that surfaces where the manipulator looses one degree of freedom result from substituting thesesingularities into the constraint equation. Singular curves are then traced to partition singular surfaces

Page 16: LOCAL DEXTERITY ANALYSIS FOR OPEN KINEMATIC CHAINS

16

into sub-surfaces. Sub-surfaces that are boundary to the wrist workspace are then used to form theanalytical boundary. The service sphere is then intersected with the boundary to determine the serviceregions.

Because of the analytical results obtained in computing the wrist workspace, it is shown that all serviceregions are computed. Thus, the strength of method II are evident in determining the number of serviceregions existing on the service sphere. Joint limits imposed on the second segment of the manipulator,however, are more difficult to address.

7. REFERENCES1. B. Roth, NBS Special Publications, 459, (1975).2. A. Kumar, and K.J. Waldron, ASME Paper No. 80-DET, (1980).3. V. Kumar, 1985, Masters Thesis, The Ohio State University, (1985)4. C. Gosselin and J. Angeles, IEEE Trans. on Rob. and Auto., 6, (1990)5. D.M. Emiris, Mechanisms and Machine Theory, 28, (1993)6. Y.C. Tsai and A.H. Soni, J. of Mech. Design, 103, (1981).7. D.C.H. Yang and T.W. Lee, J. of Mech., Trans. and Auto. Design, 105 (1983).8. Z.C. Lai and A. Menq, IEEE J. Robotics and Automation, 4, (1988).9. F. Freudenstein and E.J. Primrose, J. of Mech., Trans., and Aut. in Des., 106, (1984)10. J. Spanos and D. Kohli, J. of Mech., Trans., and Aut. in Design, 107, (1985).11. E.J. Haug, C.M. Luh, F.A. Adkins, and J.Y. Wang, Proceedings of the 23rd ASME Mechanisms

Conference, Minneapolis, MN, (1994).12. M. Ceccarelli and A. Vinciguerra, Int. J. of Rob. Res., 14, No. 2, , (1995).13. S.K. Agrawal, Int. J. of Robotics and Automation, 7, (1990).14. G.R. Pennock and D.J. Kassner, ASME J. of Mech. Design, 115, (1993).15. A. Kumar and K.J. Walsdron, ASME J. of Mech. Design, 103, (1981).16. D.C.H. Yang and Z.C. Lai, Transactions of ASME, J.of Mech., Transm., and Automation in

Design, 107, (1985).17. J.Y. Wang and J.K. Wu, Mechanics of Structures and Machines, 21, (1993).18. K. Abdel-Malek and H.J. Yeh, Computer Aided Design,,(1995).19. I. Vinagradov (in Russian) Mexanika Mashin, 27-28, (1971).20. K.S. Fu, Gonzalez, and Lee, Robotics: Control, Sensing, Vision, And Intelligence, McGraw-Hill,

Inc., New York (1987).21. E.L. Allgower and K. Georg, Numerical Continuation Methods, Berlin: Springer-Verlag (1990).22. W.C. Rheinboldt, Numerical Analysis of Parametrized Nonlinear Equations, New York: John

Wiley and Sons, (1986).23. P.J. McKerrow, Introduction to Robotics, Addison Wesley, (1991).24. M.J. Pratt and A.D. Geisow, The Mathematics of Surfaces, (J. Gregory), Clarendon Press, Oxford,

(1986).25. G. Lucaks, The Mathematics of Surfaces, (J. Gregory), Clarendon Press, Oxford, (1990).

CAPTIONS TO FIGURESFigure 1 (a) A serial n-degree-of-freedom manipulator (b) The service sphere and region

Page 17: LOCAL DEXTERITY ANALYSIS FOR OPEN KINEMATIC CHAINS

17

Figure 2 A six degree-of-freedom manipulatorFigure 3 Boundary curve to a service regionFigure 4 (a) Intersection of singular surfaces (b) Partitioning of a surface to sub-surfaces

Figure 5 Singular surfaces (a) x11 2 3

1( | , )q q qs due to qs1

1 4= −π , (b) x21 2 3

2( | , )q q qs due to

q s1

2 5 4= π

Figure 6 Singular surfaces due to (a) qs3

2 0= , (b) q s3

5 = π , (c) qs2

3

4= − π

, and (d) q s2

4

2= π

Figure 7 Intersection Curves Between x1 and x2 (a) in the uv-space, (b) on the surfaces

Figure 8 Intersection curves dividing singular surface x1 into sub-surfacesFigure 9 Analytical surfaces that are boundary to the workspaceFigure 10 Service regions

Page 18: LOCAL DEXTERITY ANALYSIS FOR OPEN KINEMATIC CHAINS

18

plink 1

link (n-1)link n

p

rg

service sphere

service region

(a) (b)

Fig. 1 (a) A serial n-degree-of-freedom manipulator (b) The service sphere and region

Page 19: LOCAL DEXTERITY ANALYSIS FOR OPEN KINEMATIC CHAINS

19

z2

x3

z0

x2

(a)x0

y0z1

wz3

x4x5

x6

d6

a2

x1

d4

z4

z5

z6

z3

d1

d3

Fig. 2 A six degree-of-freedom manipulator

Page 20: LOCAL DEXTERITY ANALYSIS FOR OPEN KINEMATIC CHAINS

20

Figure 3 Boundary curve to a service region

Page 21: LOCAL DEXTERITY ANALYSIS FOR OPEN KINEMATIC CHAINS

21

n1

n2n3

x1

x2

x3

c2c1

c3

(a)(b)

singularcurves

Ψ1

Ψ4

Ψ2

Ψ3

subsurface

Fig. 4 (a) Intersection of singular surfaces (b) Partitioning of a surface to sub-surfaces

Page 22: LOCAL DEXTERITY ANALYSIS FOR OPEN KINEMATIC CHAINS

22

-20-10

0

10

-20

-10

0

10

40

50

60

70

80

-20-10

0

10

-20

-10

0

10

-100

1020

-20

-10

0

10

40

50

60

70

80

-100

1020

-20

-10

0

10

Fig. 5 (a) Singular surfaces (a) x11 2 3

1( | , )q q qs due to qs1

1 4= −π , (b) x21 2 3

2( | , )q q qs due to

q s1

2 5 4= π

-20

0

20

-20

0

20

40

50

60

70

80

-20

0

20

-20

0

20

-10

0

10 -10

0

1050

55

60

-10

0

10

(a) (b)Fig. 6 (continued) Singular surfaces due to first order singularities

Page 23: LOCAL DEXTERITY ANALYSIS FOR OPEN KINEMATIC CHAINS

23

-20

0

20 -20

0

204045

50

-20

0

20

-10

0

10

-10

0

10

60

65

70

75

80

-10

0

10

-10

0

10

(c) (d)Fig. 6 (continued) Singular surfaces due to first order singularities

Fig. 7 Intersection Curves Between x1 and x2 (a) in the uv-space, (b) on the surfaces

Page 24: LOCAL DEXTERITY ANALYSIS FOR OPEN KINEMATIC CHAINS

24

n9

n3

n8

n2

n4

n1

n6

r

por1

r2

Fig. 8 Intersection curves dividing singular surface x1 into sub-surfaces

Page 25: LOCAL DEXTERITY ANALYSIS FOR OPEN KINEMATIC CHAINS

25

-20

0

20

-20

0

20

40

50

60

70

80

-20

0

20

-20

0

20

Fig. 9 Analytical surfaces that are boundary to the workspace

-200

20-20

0

20

40

50

60

70

80

-200

20

Fig. 10 Service regions