Available online at www.sciencedirect.com

ScienceDirect

Procedia Technology 14 (2014) 43 - 50

2nd International Conference on Innovations in Automation and Mechatronics Engineering,

ICIAME 2014

Design Optimization of Serial Link Redundant Manipulator: an approach using global performance metric

Virendra Kumara*, Soumen Sena, Shibendu S. Royb, Chandan Hara, S.N.Shomea

aCSIR-Central Mechanical Engineering Research Institute, Durgapur-713209, India bNational Institute of Technology, Durgapur-713209, India

Abstract

In this paper, an approach for design optimization of serial-link redundant manipulator is presented with exemplar optimizations on a 3-R planar and a 5-R spatial manipulator. The optimization is based on a global kinematic performance metric, which is chosen to be the Global Conditioning Index (GCI) based on condition number of manipulator Jacobian. The workspaces of 3-R planar and 5-R spatial manipulators are numerically computed using Monte Carlo technique in task space, which is utilized in evaluating the GCI. An algorithm is developed to compute the inverse kinematics of the 3-R planar and the 5-R spatial manipulators in finding the workspace and in turn the optimized solutions. Finally, design optimization problems are formulated for the 3-R and 5-R manipulator cases using the GCI as the objective function and solved (orientation of the end-effector is not included here). Further, genetic algorithm based method is used to solve the problem in validating the optimization results.

© 2014 The Authors. PublishedbyElsevierLtd. This is an open access article under the CC BY-NC-ND license (http://creativecommons.Org/licenses/by-nc-nd/3.0/).

Peer-review under responsibility of the Organizing Committee of ICIAME 2014.

Keywords: Redundant Manipulator, Global Conditioning Index, Manipulator Workspace, Design Optimization, Monte-Carlo technique

1. Introduction

Redundant manipulators are chosen in many applications in view of obtaining improvements in performance. In redundant manipulator, the extra DOFs can be used to perform a number of secondary tasks in enhancing manipulator's ability [1-2]. Mostly design optimization of a manipulator is based on manipulator Jacobian-based

Corresponding author. Tel.: +91 3436452048 ; fax: +91 3432546745 Email address: vkumar@cmeri.res.in, virendraaug15@gmail.com

2212-0173 © 2014 The Authors. Published by Elsevier Ltd. This is an open access article under the CC BY-NC-ND license (http://creativecommons.org/licenses/by-nc-nd/3.0/).

Peer-review under responsibility of the Organizing Committee of ICIAME 2014. doi:10.1016/j.protcy.2014.08.007

kinematics performance metrics such as condition number, manipulability, dynamic manipulability etc. The ability to perform a secondary objective/task in addition to the primary task of reachability is sometimes defined as dexterity, characterized by a performance metric. One important problem of manipulator design is deciding the link lengths or their ratios. The design optimization computes the link lengths for an optimal performance in terms of a quantified metric or combination of metrics (in multi-objective formulation). Salisbury and Craig [3] used the condition number of the manipulator Jacobian matrix as an optimization criterion to obtain the dimensions for the fingers of the Stanford/JPL articulated hand. Klein and Blaho [4] used condition number to design a manipulator for isotropy at a working point for a fixed total arm length. Angeles in [5] proposed manipulator Conditioning Index (CI). These metrics are only local measures. Gosselin and Angeles in [6] proposed a "Global Conditioning Index" (GCI) as a ratio of an integral of the reciprocal of condition number of Jacobian over the whole workspace to the volume of the manipulator workspace. This globally defined metric addresses optimization of the manipulator over the entire workspace.

This article proposes design optimization of a serial link manipulator based on the Global Conditioning Index (GCI) as defined in [6]. Computation of GCI requires knowledge of workspace volume of robot manipulator. Many methods exist in literatures which are based on analytical [7-8] or numerical methods [9-10] for determination of manipulator's workspace. Numerical methods are mostly used for more than three degrees of freedom spatial manipulators to determine approximate boundary surfaces. Among numerical procedures, Monte Carlo method is an interesting choice. Most of the implementations of Monte Carlo method found in literature are in joint space.

The present article proposes a Monte Carlo implementation in the task space for workspace volume evaluations. With the definition of GCI as the objective function, a formulation for link length optimization of the manipulator is presented here. An algorithm is presented for numerical solution of the optimization, with evaluation of GCI in each solution iteration. Exemplar implementations for planar 3-R and spatial 5-R manipulator designs are depicted. To be noted that examples do not deal with end-effector orientation and thereby the unit mismatch in the computation of condition number of Jacobian is avoided.

The article is organized as in the following: Section-2 describes inverse kinematic solutions. Section-3 depicts the procedure for workspace evolution. Then kinematics performance metric is delineated in Section-4. The link length or link ratios optimization procedures for 3-DOF and 5-DOF manipulators are illustrated in Section-5 along with the results, followed by the conclusion and future work in the last section.

2. Inverse Kinematics

The forward kinematic equation of an n-DOF manipulator can be written as

x - f (q) (1)

Where, xe Rm is the end effector pose in m-dimensional task space, qe Rn is the joint space variable vector of dimension n and f is a nonlinear vector function obtained from the particular kinematic structure of the manipulator. Inverse kinematics requires to find f- in order to find one or more joint angle vectors for a given end-effector position and orientation, such that

q = f x) (2)

For redundant manipulator, a specific inverse kinematic solution with minimum norm can be obtained by using the Moor-Penrose pseudoinverse of J(q) [18],

Aq = J #(q)Ax (3)

where, J#(q) = JT(q)(J(q) JT(q)) 1 (or, a weighted version of the pseudoinverse) which minimizes the quadratic form (AqTAq) at the configuration q. But this does not guarantee avoidance of all occurrences of singularity. A more general solution of inverse kinematic is given by

Aq = J #Ax + (¡„xn - J # J)Aqo (4)

Eq.(4) is a non-minimum norm solution, where a homogeneous term is added to the minimum norm solution. Inxn is an identity matrix of dimension n and Aq0 is an arbitrary vector, denoting null-space motion. The null-space displacement (the homogeneous term) is added with the minimum-norm-term through a projection operator (Inxn-J#J). This non-minimum norm solution allows reaching a secondary objective for dexterity. One way of obtaining Aq0 is through the gradient of a scalar objective function 0(q) (the secondary function to be satisfied for dexterity)

such that Aq0 = -kAQ(q) where is a positive constant.

In this paper, instead a numerical algorithmic strategy is taken. The inverse kinematics and redundancy resolution is solved by prioritizing the tasks - the primary task being the reachability to a point in workspace ( Xg, Yg, Zg) and the secondary task being a configuration where the manipulator Jacobian attains a minimum condition number (the most isotropic configuration). For primary task, a geometrical approach is employed to solve inverse kinematics and among all the feasible solutions, the configuration with Jacobian of minimum condition number is selected in an iterative procedure. Two cases are considered here, one planar 3-R structure of Fig. 1(a) and one spatial 5-R structure of Fig.1(b).

It is to be noted that to deal with unit mismatch presence in the Jacobian, relating the joint space and task space velocities, the Jacobian is normalized customarily before computing the condition number [5]. However, in the exemplar implementations in this article, the Jacobian is not normalized, since, only the position of the end-effector is considered here (not the orientation).

Link2,12

J5, 95

Link3, 13

Link2, 12

J4, 94

Linkl, 11

J2, 92

Link3, 13

LinkOl, 101 LinkOO, 100

Figure 1. (a) 3R planar robot (b) spatial 5-R manipulator. The nomenclatures of joints and links are shown in the figure. It is assumed that the 3dof shoulder is of intersecting type using a differential shoulder , making 100 = 101 = 102 = 0.

The inverse kinematics has been divided into two sub-problems for implementation in this article, namely planar and spatial. The algorithm for planar sub-problem is employed for the spatial manipulator, when more than two links lie in a plane. The planar sub-problem involves repetitive use of inverse kinematics solution of 2-link planar arm with respect to of some reference configuration and incrementing the previous joint angle till the maximum value in its range is reached. The condition number of the manipulator Jacobian is computed at each inverse kinematics configuration for one reachable goal point within the workspace. Configuration with minimum condition number may lead to an optimal solution.

First three joints of the 5-R arm (see Fig 1(b)) are of intersecting type using a differential shoulder mechanism with links 100 = 101 = 102 = 0. Inverse kinematics for the spatial 5-R arm of Fig.1(b) needs specific geometric considerations to be solved. XYZ coordinate frame is attached at the base of the manipulator. The inverse kinematics of 5-R spatial manipulator is evaluated using the following steps:

Step 1: From given goal point Pg (Xg, Yg, Zg) draw projection onto X-Y plane and calculate angle 9'1 (angle between home reference plane and projection plane on X-Y from goal point) which is evaluated when $=0 and 93=0 (swivel arm angle, $ is also zero, the swivel arm angle is defined as the angle between arm plane and reference plane, see Fig. 2).

0\ = tan-\Yg /Xg ) (5)

Step 2: Take 9'2 corresponding to a angle formed by link1 (when $=0 and 93=0), such that the distance between elbow1 position P'e1 (see Fig.2) and goal point Pg is less than or equal to (12 + 13 ).

Step3: Angles 94 and 95 (for elbow1 and elbow2) are independent of swivel arm angle, $ . So angle 04 and 95 are calculate as Eq.(6) and Eq.(7)

(-(£ 2 - £ 3)2 + (X. - P ' elx )2 + (Yg - Pely )2)

05 =±2trn^^2 +13)2 " " Pelx+ 7 " Peiyy

0A = tan-1 ((7g - P'ely )/(Xg - Pelx ))± tan-1 ((£ 3 sin 05)/(* 2 + 13 cos^5))-6>2'

P'eix , P'e1y and P'e1z are the respectively x, y and z coordinate of the elbowl position P'e1. (see Fig.2)

(6) (7)

Step4: Find elbows new positions in swivel arm plane (after rotating the reference plane by swivel arm angle,$):

Now elbowl and elbow2 position P'e1 and P'e2 is rotated by an angle $ about the Psg (see Fig.2). After rotation the new elbows positions are Pe1 and Pe2 respectively. Calculate the new elbows positions using the Rodrigues' rotation formula as given in eq. (8). If elbow1 position vector corresponding to P'e1 is represented by r1 , then after rotation by angle $ about the Psg, new elbow1 position Pe1 is given by r2 as

r2 - r1 cos ^ + (5 X r1)sin 0 + s(r s)(1 - cos 0) (8)

where s - (Pg - Ps)/\Pg - P,| (9)

Ps is the position of shoulder with respect to base.

Step 5: Find first two joint angles (91 and 92) from elbow1 new position Pe1.

01 = tan-1(Pe1y/Pe1x ) (10)

02 = tan P 2 e1x + P 2 e1y/(-P^ )) (11)

Pe1x , Pe1y and Pe1z are the respectively X, Y and Z coordinate of the elbow1 new position Pe1 (see Fig.2).

Step6: Roll angle 93 calculation: Evaluate the elbow2 new position Pe2 (see Fig.3) using step 4. Elbow2 new position is function of 91 , 92 , 93 and 94 and from these 93 is calculated as

03 = cos 1 ((Pe2z + 11cos^2 -12 cos^2 sin^4)/(£3 cos04 sin#2)) where Pe2z represent the z- coordinate of elbow2 new position Pe2.

Reference Plane

Figure 2. Definition of reference plane ($=0) and swivel arm angle elbowl and elbow2 rotates about vector Psg (through shoulder, Ps to goal, Pg) on circles whose centres are Ci and C2 respectively. Elbows positions P'ei and P'e2 on reference plane, elbows positions Pel and Pe2 on arm plane.

Figure 3. Simulation of feasible Poses for different swivel arm angle, 9. The green configuration shows the reference plane and black line shows the rotation axis.

From above six steps one set of 5-R manipulator joints angles 61( 02, 9s, 94 and 95 are evaluated. Fig. 3 shows the different configuration of 5-R manipulator for different swivel arm angle, In this simulation the shoulder is at position (0,0,0) , the goal at position (850,300,200) and link lengths 11 , 12, and 13 are 500mm, 300mm and 200mm respectively. In this figure the dotted points indicate the elbows positions. The two circles are formed by the dotted points that indicate the path of the elbowl and elbow2. Note that from elbowl position to goal position we have shown only one configuration here (although there are two configurations are possible, elbow up and elbow down configurations). In Fig.3, the green configuration shows the reference plane of the robot arm where swivel arm angle, $ is zero.

3. Workspace Evaluation

The evaluation of workspace of a manipulator is necessary for the evaluation of Global Conditioning Index. Numerical methods are mostly used for spatial redundant manipulators. Monte Carlo random sampling numerical method was proposed by Rastegar and Perel [9] to generate the workspaces and the boundary surfaces of manipulators using forward kinematics. Rastegar and Perel applied the Monte Carlo method in the joint space of the manipulator to estimate the workspace. Similarly, Alciatore in [10] and Cao [11] also employed the Monte Carlo technique in joint space. This article employs Monte Carlo method for workspace computation in task space in contrary to many implementations in joint space found in literature. Here first a box is defined with sides of length greater than or equal to the double of maximum reach of the manipulator and the uniform random points are generated in the whole volume of the box. For the present case (5-R spatial manipulator) longest side of the box is taken as slightly greater than sum of double the maximum reach lengths (211 + 212 + 213). The manipulator base is kept at the origin of the box. An inverse kinematics algorithm is applied for each point in the box and it is checked whether the point is within reachable workspace or not (restricting the computed joint angles within joint motion range). This method does not need to generate the boundary for calculation of the workspace. Let N be the total number of uniform random points generated within the box and N0 be the numbers of those points reachable by the manipulator. The workspace volume is then evaluated as: where, V = volume of the box

Workspace volume = (N0 / N )V . (13)

Figure 4. Workspace (dark blue points) of 5-R spatial manipulator. Red points are random points

Fig.4 shows the simulation work space (represented by dark blue points, red points are distributed random points in whole workspace, here shown only half part) of 5-R redundant manipulator (as shown in Fig.l.b.) with joint angle ranges are 91e[0,n], 92e[0,n], 93e[0,n], 94e[0,n], 95e[0,n], and 11 , 12 and 13 are 500mm, 300mm and 200mm respectively.

4. The Global Performance Metric

Global performance metrics have been commonly used for many potential applications in robotics, i.e. optimal design purpose, trajectory planning, redundancy treatment and dexterity analysis. Again dexterity of a robot manipulator is said to be the ability to perform one or more secondary tasks over mere reachability. One of the reasons of having redundancy in a manipulator kinematic structure is to achieve some degree of dexterity. This article chooses the Global Conditioning Index proposed by Gosselin and Angeles [6]. The condition number of the Jacobian, J can be computed as the ratio of the maximum to minimum singular values of J i.e, k(J) = omaJomin where the singular values are obtained through singular value decomposition of J. Angeles in [5] defined a quantity called as Local Conditioning Index (LCI) equaling reciprocal of the condition number (1/k(J)); to be noted that LCI varies between 0 and 1. This index gives a local measure of kinematic performance at a given configuration. In order to get a global performance measure, the local conditioning index is evaluated all over the workspace so that the Global Conditioning Index (GCI), q is given by

n = ; where, A = jl/k(J)dw and W = Jjdw (14)

where, W being the workspace of the manipulator. Clearly 0 <-q<l.

Let ki(J) be the condition number of corresponding to a configuration at the i'h reachable point in the workspace. For numerical computation of GCI using discrete points (randomly generated), the above definition reduces to a single average of the reciprocal of condition numbers for all the reachable points. Thus, GCI can be rewritten as

1 ^i N0

77=-y 01/kt (J) (15)

where i represents the ith individual discrete point in the reachable workspace. To be noted that, on the boundary of workspace 1/k(J) becomes zero. Maximizing the conditioning index will make the manipulator approaching isotropy.

5. Optimization Problem Formulation and Evaluation

This article addresses problem formulation of the optimization, where the performance metric (GCI) chosen is function of link lengths. Instead of absolute link length, length ratios are considered in the formulation, reducing the complexity of the problem. With the definition of GCI as in section 4, the following maximization problem is formulated:

max{^(/i)}

r.-, < r < V il — i — iu

Subject to qji < qj < q

Where, j = 1 to n ; i =(n-1); ri=(li/l i+1);

Subscripts u and l denote upper and lower limits respectively, rt is the length ratio of link-i to link-(i+1) , qj is the j'h joint angle.

A scheme to solve the optimization problem is shown in Fig. 5. In Fig.1(a), a 3-R manipulator with link lengths 11 ,12, and 13 shown whose task space is 2DOF. Hence 3-R planar robot becomes a redundant robot. The optimization results of this 3-R planar robot are shown in Fig.6. Here the optimum link ratios are found to be 1//12 = 120 and I2/I3 = 1.05. Similarly simulation result for 5-R spatial manipulator (see Fig.1(b)) is shown in Fig.7. The optimum link ratios obtained are 1//12 = 15 and C2/I3 = 0.9.

d Start T

Joint angles ranges, link length ranges, initialize design variables

Figure 5. Proposed optimization algorithm

Optimization problem is also solved by the binary-coded Genetic Algorithm (GA) [12]. Binary-coded GA begins with a population of initial solutions that are selected at random. The fitness is assigned to all the solutions in population. Then population is accomplished by three main operators, namely reproduction, crossover and mutation. In this study, GA-based optimization is implemented by using the Genetic algorithm Matlab toolbox©. As the performance of a GA depends on its parameters, a systematic and thorough study is carried out to determine the optimal set of GA-parameters. The following GA-parameters are found to give the best results during the GA-based optimization of 3-DOF manipulator: population size = 20; creation function: uniform; fitness scaling function= rank; selection function = roulette; crossover function = scattered; crossover fraction = 0.8; mutation function = adaptive feasible; maximum number of generations = 50. After 50 generations the optimal link-length ratios are obtained as 1//12 = 1.202 and I2/I3 = 1.085.

Similarly, the following GA-parameters are found to yield the best results during the GA-based optimization of GCI of 5-DOF spatial manipulator arm: population size = 20; creation function: uniform; fitness scaling function=

rank; selection function = roulette; crossover function = scattered; crossover fraction = 0.85; mutation function = adaptive feasible; maximum number of generations = 80. The optimal vales of link-length ratios are turned out to be equal to 1//12 = 1.506 and 12/13 = 0.87. It has been observed that the results generated using GA are in excellent agreement with those obtained with numerical method.

6. Conclusion and Future Work

This article presents an approach for design optimization of redundant serial link manipulators. Two specific geometries are considered for the implementations, namely a 3-R planar and a 5-R spatial manipulator. It is to be noted that, end-effector orientation is not considered in the exemplar implementations, which eliminates the problem of unit mismatch in using the Jacobian for computing its condition number. However, for general problem with end-effector orientation, the Jacobian must be normalized before computing the condition number. The optimization is based on a performance metric with link lengths as the chosen design variables. The performance metric chosen is a Global Conditioning Index proposed by Gosselin and Angeles, which requires evaluation of the manipulator workspace volume. The workspaces of the manipulators are numerically evaluated using Monte Carlo technique in task space unlike many joint space implementation found in literature. The implementation of Monte Carlo technique in task space is more intuitive; however, Cartesian space implementation requires inverse kinematics to be solved. This article also describes inverse kinematics of the redundant manipulators in consideration here. In doing so, sub-problem is formulated for planar redundancy resolution iteratively. This formulation is further used in doing inverse kinematics for spatial arm. Then the design optimization is formulated using the objective of maximizing the Global Conditioning Index (GCI), where the design variables are link length ratios. The optimization is solved firstly using a grid search method. Then Genetic algorithm technique is utilized to solve the same problem, using genetic algorithm toolbox of Matlab©. The results of the search method are in good agreement with the results obtained using genetic algorithm. This article only addresses the approach to optimize a redundant manipulator based on one performance metric. Complexity analysis of and optimization on the algorithms are part of future work. Future work also will involve multi-objective formulation for optimization of the manipulators, based on various performance measures of redundant robot arms.

References

[1] A.A. Maciejewski and C.A. Klein, "Obstacle avoidance for kinematically redundant manipulators in dynamically varying environment", The International Journal of Robotics Research, Vol.4, No.3, pp. 109-116, 1985.

[2] J. Wang, Y. Li and X. Zhao, "Inverse kinematics and control of a 7-DOF redundant manipulator based on the closed-loop algorithm", International Journal of Advanced Robotics System, Vol.7, No.4, pp. 1-9, 2010.

[3] J.K. Salisbury and J.J. Craig, "Articulated hands: force control and kinematic issues", The International Journal of Robotics Research, Vol. 1, No. 1, pp. 4-17, 1982.

[4] C. Klein, B. Blaho, "Dexterity measures for the design and control of kinematically redundant manipulators", The International Journal of Robotics Research, Vol. 6, No. 2, pp.72-83, 1987.

[5] J. Angeles, "The design of isotropic manipulator architectures in the presence of redundancies", The International Journal of Robotics Research, Vol. 11, No. 3, 196-201, 1992.

[6] C. Gosselin, and J. Angeles, "A global performance index for the kinematic optimization of robotic manipulators," Journal of Mechanical Design, Vol. 113, No. 3, pp. 220-226, 1991.

[7] D.C.H. Yang and T.W. Lee, "On the workspace of mechanical manipulators", ASME Journal of Mechanisms, Transmissions, and Automation in Design, Vol. 105, pp 62-69, 1983

[8] X. Chen, K.C. Gupta, "Geometric modeling and visualization of manipulator workspace", ASME Computers in Engineering, Vol.1, pp.469474, 1991

[9] J. Rastegar, D. Perel, "Generation of manipulator workspace boundary geometry using the Monte Carlo method and interactive computer graphics", ASME trends and developments in mechanisms, machines and robotics, Vol.3, pp 299-305 ,1988

[10] D. Alciatore and C. Ng, "Determining manipulator workspace boundaries using the Monte Carlo method and least squares segmentation", Proc. the 23rd ASME Design Technical Conference, pp. 11-14, 1994

[11] Yi Cao, Haihe Zang, Lan Wu and Tao Lu, "An engineering-oriented method for the three dimensional workspace generation of robot manipulator" Journal of Information & Computational Science, Vol. 8, No 1, pp. 51-61, 2011

[12] D. Baesley, D. Bull, R. Martin, "An overview of genetic algorithms: Part 1, fundamentals", University computing, Vol. 15, No. 2, pp. 58-69, 1993.