Multi-aspect grasp index for robotic arms

Multi-aspect grasp index for robotic arms

Scientia Iranica B (2011) 18 (2), 222–230 Sharif University of Technology Scientia Iranica Transactions B: Mechanical Engineering www.sciencedirect.c...

1MB Sizes 3 Downloads 39 Views

Scientia Iranica B (2011) 18 (2), 222–230

Sharif University of Technology Scientia Iranica Transactions B: Mechanical Engineering www.sciencedirect.com

Multi-aspect grasp index for robotic arms F. Cheraghpour, S.A.A. Moosavian ∗ , A. Nahvi Department of Mechanical Engineering, K. N. Toosi University of Technology, Tehran, P.O. Box 19395-1999, Iran Received 24 May 2010; revised 7 November 2010; accepted 11 December 2010

KEYWORDS Object manipulation; Grasp planning; Performance index; Cooperative manipulator; Manipulability; Optimization.

Abstract In this paper, a new Multi-Aspect Grasp (MAG) performance index is presented for evaluating grasp quality during an object manipulation task. The position of grasp points, the configuration of cooperative manipulators, and the kinetic aspects of manipulating arms and the grasped object are considered in the MAG index. The MAG index is used to evaluate the candidate points to choose the best grasp point and to select the most effective branch of the inverse kinematics solution, with respect to the given task. Simulation results, which are validated with analytical solutions, show the merits of the proposed index. According to these results, the MAG index indicates that in planar object manipulation tasks without rotation, the best grasp point is the object center of the mass, which is physically meaningful. © 2011 Sharif University of Technology. Production and hosting by Elsevier B.V. All rights reserved.

1. Introduction Object manipulation is an interesting field in robotics that involves many aspects. Grasp planning is one of the most challenging and important problems. The cooperative manipulation of objects provides versatility in task execution, by allowing many alternatives in task mechanics. In particular, multiple-arm cooperation is required if we are to assemble and manipulate parts without the aid of fixtures or jigs, or if we are to safely transfer heavy and large objects from one place to another [1–5]. When an object is grasped by a system of manipulators or a multi-fingered robotic hand, there are several ways to find suitable grasps. Optimal grasp planning is required to find the optimal grasp points for satisfying the objectives of the given task. Also when there are several configurations for a manipulator to reach a point within its workspace, a criterion is required to select the appropriate branch of the inverse kinematics solution. Several performance indices have been defined to evaluate the quality of grasp configuration. These measures are classi-



Corresponding author. E-mail address: [email protected] (S.A.A. Moosavian).

1026-3098 © 2011 Sharif University of Technology. Production and hosting by Elsevier B.V. All rights reserved. Peer review under responsibility of Sharif University of Technology. doi:10.1016/j.scient.2011.03.017

fied into three groups [6,7]. In the first group, indices consider the position of contact points. Some of these indices are based on the algebraic properties of the grasp matrix, G, such as the smallest singular value and Grasp Isotropy Index [8], the determinant [9] and the condition number [10]. Some indices are based on the geometric relationships between the position of contact points, such as the area of the grasp polygon [11,12], the distance between the centroid of the contact polygon and the center of mass of the grasped object [13–15], and the stability grasp index [16–18]. Some indices consider limitations on the End-Effector (EE) forces, such as indices based on the grasp force distribution [19], indices based on a min–max optimization in the Force Workspace (FW) [20], the total volume of the resulting wrench space as a quality metric [21], the radius of the largest wrench space ball [22,23], the optimal force-closure grasp based on the Q-distance measure [24,25], the ability of the grasp to reject disturbance forces [26,27] and, finally, the minimum volume bounding box [28]. The indices that considered this aspect could analyze the quality of the grasp configuration, statically. In the second group, grasp indices consider kinematic characteristics and configuration of the cooperative manipulators or fingers of a multi-fingered robotic hand, such as the smallest singular value of the Jacobian matrix [29], the condition number of the Jacobian matrix [30], the volume of the manipulability ellipsoid or Manipulability Index [31–33], the Mobility Index [34] and the Observability Index [35]. The indices that consider this aspect could only evaluate the quality of the grasp configuration for kinematic tasks without force interaction with the environment. In the third group, the indices consider the kinetic characteristics of the manipulators and the grasped object, such as the

F. Cheraghpour et al. / Scientia Iranica, Transactions B: Mechanical Engineering 18 (2011) 222–230

223

Figure 1: The relationship between the velocities in a grasping system.

Figure 2: Coordinate frames and the position vector of the jth grasp point with respect to the C.G. of the object.

the object center of mass, as shown in Figure 2, and r× pj is the cross operator of vector rpj defined as: rpj =

To evaluate the grasp condition, we need to determine the condition number of the grasp matrix. The grasp matrix, G, is not dimensionally homogeneous, because the first row entries of G in Eq. (3), are dimensionless, but entries in the second row have a dimension of length. Some methods to resolve this dimensional inconsistency were proposed, such as Scaling [29], and Characteristic Length [52]. Here, we define the normalized ¯ which is a homogenous grasp matrix: grasp matrix G,

...

 Gj

‖rpj ‖−1 13

03 ........................... 03 ‖rpj ‖−1 13



...

...

   

if ‖rpj ‖ ̸= 0 (5)

where ‖rpj ‖ is the norm of rpj and Gj was defined in Eq. (2). Note that when ‖rpj ‖ = 0, the grasp point is the center of gravity and the terms in the second row of G are normalized. When ‖rpj ‖ ̸= 0, the pre and post multiplying matrices will make the second row elements of Gj dimensionless. To show this and to focus on the dimensions, we may substitute Sobj = 13 in Gj : 13 03 ........... × rpj 13



03 ........................... 03 ‖rpj ‖−1 13



‖rpj ‖13

03 ............... 03 13



 ×

...

...

 ¯j = G

Gn 6×6n ,

‖rpj ‖−1 13

 (2)



13 03 .............................. ‖rpj ‖−1 rpj × ‖rpj ‖−1 13

=

6×6

where 13 and 03 are the unit and zero 3 × 3 matrix, respectively, rpj is the position vector of the jth end-effector with respect to

‖rpj ‖13

03 ............... 03 13

=



‖rpj ‖−1 13



03 .............................. ‖rpj ‖−1 rpj × ‖rpj ‖−1 13 ...



,





...

13 03 ....................... STobj r× STobj pj

 Gj if ‖rpj ‖ = 0       ‖rpj ‖13 03 ............... 03 13

G¯n 6×6n ,

···

...

···

G¯j

···

...

Gj

G¯2



...

¯ = G¯1 G

...

Gj =

···

(3)

(4)

...



G2

. . . .. . . . . .



. 3×3

ωobj = Sobj δ˙ obj .

The grasp matrix for n grasp points will have the following structure [51]: G = G1



...

(1)

0 rxj

...

Vp = GT VCM .

ryj −rxj 0

...

As mentioned above, the Multiple-Aspect Grasp (MAG) index can be used to evaluate grasp configuration in object manipulation tasks and consists of various static, kinematic and kinetic aspects. Cooperative object manipulation tasks can also be evaluated with the MAG Index. In this section, the proposed index is developed. A grasp matrix maps the object velocity into grasp point velocity, as shown in Figure 1 [9]. The Vp denotes the velocity of grasp points and VCM denotes the velocity of the center of mass of the object. Thus the grasp matrix is defined as:

−rzj

Matrix Sobj is the map between the time derivative of the Euler angles array and the velocity vector of the object and is defined as:

¯j = G

2. Multiple-Aspect Grasp index

0 rzj −ryj

 ×

...

Task Compatibility Index [36], performance analysis with the Dynamic Capability Equations [37,38], the use of energy consumption as a cost function [39], the squared norm of the actuator torque vector as a cost function [40], the volume of the dynamic manipulability ellipsoid or Dynamic Manipulability [41,42] and the Inertia Matching Ellipsoid (IME) that integrates the existing dynamic manipulability and manipulating-force ellipsoids [43]. These indices could be used for the tasks that consist of force interaction between the robotic system and the environment, and the grasped object with the robotic manipulators. If the gripper grasps an object in an unsuitable condition, the manipulator cannot perform the task efficiently. This may occur in the manipulator kinematic singular condition or in a saturation state of the actuators. In such conditions, the grasp point should be changed with a regrasping strategy and a new grasp point should be selected [44,45]. Although some multipleaspect indices have been proposed for path planning [46,47], motion planning [48,49] and trajectory planning [50], the definition of such indices for grasp planning has not yet been done. In this paper, a new grasp performance index is proposed for evaluation of the grasp configuration to perform an object manipulation task. This index considers three aspects: The first is the position of the grasp points, the second is the kinematic characteristics of manipulators, and the third is the corresponding kinetic characteristics. The goal is to evaluate grasp configuration for a system of robotic arms that should perform a task with suitable dexterity and minimum energy consumption, individually or cooperatively.

 .

(6)

224

F. Cheraghpour et al. / Scientia Iranica, Transactions B: Mechanical Engineering 18 (2011) 222–230

Therefore, to evaluate the grasp condition, the inverse condition ¯ is considered: number of the normalized grasp matrix G

σmin (G¯ ) CN = , σmax (G¯ )

(7)

¯ ) and σmax (G¯ ) are the minimum and maximum where σmin (G ¯ respectively. singular values of the normalized grasp matrix, G, If CN is close to zero, the grasp is singular. This means that at least one of the cooperating manipulators is incapable of moving the object in a direction. On the other hand, if CN is close to 1, we have an isotropic grasp matrix, and all end-effectors are capable of moving the object in any arbitrary direction. Next, Di denotes the dexterity measure of the ith manipulator to grasp the object, as: Di =



det(J∗i J∗i T ),

where Ji denotes the Jacobian matrix between the actuators velocity domain and the object velocity domain of the ith manipulator, which is computed as follows: J∗i = (GT )# Ji ,

(9)

where Ji denotes the Jacobian matrix of the ith manipulator and also (.)# is the pseudo-inverse of the matrix. The term Di denotes the volume of the manipulability ellipsoid. The greater the volume of this ellipsoid, the greater is the dexterity of the grasp. When this ellipsoid becomes a sphere, its volume is maximized. When the ith manipulator is in a singular configuration, the determinant of Ji approaches zero. Note that Di max is the maximum value of Di among all candidate grasp points. If Di = Di max , the term Di /Di max becomes one, which results in the most dexterous grasp. Finally, this definition of Di allows us to use the index for manipulators with non-square Jacobian matrices, e.g. redundant manipulators. Finally, suppose that Pi denotes the consumed power of actuators for the ith manipulator: Pi dt =

∫   T |θ˙ i |.|τ∗i | dt ,

(10)

where θi denotes the joints angle array, and τ∗i denotes the corresponding actuator torque array of the ith manipulator with an augmented mass matrix. The augmented mass matrix is the manipulator mass matrix where the object inertial parameters are added to the inertial parameters of the last link. In a cooperation condition, suppose that the inertial parameters of the grasped object are distributed into all cooperative manipulators with equal portions. Note that Pi max is the maximum value of Pi among the candidate grasp points. Our desired condition is that the term Pi /Pi max is smaller and, therefore, the term 1 − (Pi /Pi max ) is near to 1. In a weak condition, where Pi = Pi max , the actuators of the manipulator consume maximum power and, so, are near to the saturation limit. The new grasp performance index, MAG, considers the above three characteristics of grasp in a weighted format. Therefore, the MAG index evaluates grasp configuration during the task execution for cooperating arms: MAG =



1 tf − t0

+ W3

1

Type of the Task

W1

W2

W3

Default choice Type-I: static tasks Type-II: kinematic tasks Type-III: dynamic tasks

0.33 0.50 0.25 0.25

0.33 0.25 0.50 0.25

0.34 0.25 0.25 0.50

Table 2: The geometric and inertial parameters of the manipulator. Link L (m) no. 1 2 3

1.04 1.04 0.92

m (kg)

17.4 17.4 6.1

Ixx

(kg m2 ) 0.130 0.130 0.0154

Iyy

Izz

2 (kg m2 ) (kg m )

0.524 0.524 0.212

0.539 0.539 0.192

Motor inertia

Gear ratio

2 × 10−4 2 × 10−4 2 × 10−4

100 100 100

(8)





Table 1: Choosing the weighting factors.

tf

 W1 CN + W2

t0 n  −

n i=1

1−

Pi Pi max

n 1−

n i =1



dt ,



Di



Di max (11)

where t0 and tf are the initial and final times, respectively. The first term of MAG in Eq. (11) deals with the position of the grasp points, which considers the static characteristics of the grasp, the second term of MAG in Eq. (11) considers the kinematics characteristics of the cooperative manipulators, and the third term evaluates the kinetic characteristics of the manipulators and the grasped object. Each term of the MAG index has a value between zero and 1. The goal is to maximize the MAG index. Also, weighting factors, W1 , W2 and W3 , are included to put a different emphasis on each term, while the total sum of these three factors should be equal to 1. As a rule of thumb, the weighting factors can be chosen according to Table 1. As shown in Table 1, the tasks of Type-I involve static tasks like holding an object, or quasi-static tasks like those with very slow velocity. The tasks of Type-II involve kinematic tasks like painting, arc welding, etc. where the end-effector and grasped object do not have force interaction with the environment. The tasks of Type-III involve dynamic tasks like moving an object with high velocity, in particular, for mobile robots that have an onboard limited power. Finally, the normalizing factor, 1/(tf − t0 ), puts the total index between 0 and 1. Therefore, a good grasp has a MAG index of 1, and a poor grasp has a MAG index of zero. 3. Using MAG for 3R manipulator: a case study In this section, the details of formulation will be presented for a system that includes a 3R manipulator and a grasped object. Figure 3 shows a 3R robotic manipulator in global motion, performing an object manipulation task. The task is moving the object on a given trajectory in the plane. The object has been grasped with a solid grasp condition, i.e. its orientation cannot change with respect to the end-effector of the robot. The geometric and inertial parameters of the manipulator are shown in Table 2. 3.1. The object desired path The object path is a straight line along the x-axis, coordinate y is constant and coordinate z is zero. Also, the orientation of the object is fixed at 10° during the task. The trajectories of the joint angles are quintic functions as follows: x ( t ) = a0 + a1 t + a2 t 2 + a3 t 3 + a4 t 4 + a5 t 5 , y(t ) = 1,

ψ(t ) = 10°,

(12)

F. Cheraghpour et al. / Scientia Iranica, Transactions B: Mechanical Engineering 18 (2011) 222–230

225

For relating the time derivative of the Euler angles and angular velocity vector as in Eq. (4), matrix Sobj ∈ R3×3 can be expressed in terms of the Euler angles as:

 Sobj =

1 0 0

−S γ

0 Cϕ −Sϕ

Cγ Sϕ Cγ Sϕ

 ,

(16)

where Cα and Sα denotes cos(α) and sin(α), respectively, and γ and ϕ are the pitch and roll Euler angles. For a single grasp point, the grasp matrix is computed as:

  G= 

Figure 3: A 3R arm is performing an object manipulation task.

13×3 .......................................... 0 −r z rz Cϕ + ry Sϕ −rx Sϕ rz Cγ Sϕ − ry Cγ Cϕ rz Sγ + rx Cγ Cϕ

.. .



ry −r x C ϕ −ry Sγ − rx Cγ Cϕ

..........

03×3 ..................................................   1 0 −S γ

0 Cϕ Cγ S ϕ

0 −S ϕ Cγ Cϕ

 .  

(17)

3.3. Planar case For planar rigid grasping, the relationship between the velocity components of the grasp point and the velocity of the center of mass of the object is as follows:

Figure 4: The defined path of the grasped object in the workspace and trajectory of x(t ) and its derivatives.

where the coefficients are presented in [53]. At the initial time, the object is at rest in x0 = 0. Also at the final time, the object is at rest in xf = 1.5 (m). Figure 4 shows the defined path in the workspace, and the trajectory of x(t ) and its derivatives.

ωzobj = z ,      ×   x˙ obj x˙ c −r x = + Ωz kˆ , y˙ obj y˙ c −r y

(18)

where ωzobj is the angular velocity of the center of mass of the object about the z-axis. The Jacobian matrix of the 3R manipulator is as follows:

−(L1 S1 + L2 S12 + L3 S123 ) J =  L1 C1 + L2 C12 + L3 C123 

1

3.2. Calculation of MAG terms

−(L2 S12 L3 S123 ) L2 C12 + L3 C123 1

−L3 S123



L3 C123  , 1

(19) For calculating various terms of the MAG index in Eq. (11), we consider the velocity of the grasped object in two ways. First, with the transformation of the actuators velocity and, then, with the task predefined trajectory. The equality of these relations gives us the configuration of the manipulator to reach the defined task. The velocity of the grasp points is computed from the velocity of the actuators as follows:

where S12 denotes sin(θ1 + θ2 ) and so on. Li denotes the length of the ith link. Moreover, for the planar case, the grasp matrix is computed as:

˙ Vp = Jθ,

The solution for the inverse kinematics of the considered 3R manipulator is discussed in the Appendix. Next, the terms of the MAG index for each candidate grasp point in each branch of the inverse kinematics solution, can be computed.

(13)

where Vp denotes the velocity array of the grasp points on the grasped object as follows:



Vp = x˙ p

y˙ p

z˙p

Ωx

Ωy

Ωz

T

.

(14)

x˙ p , y˙ p and z˙p are the linear components and Ωx , Ωy , and Ωz are the angular components of the grasp point velocity array. The VCM denotes the object velocity array containing the linear velocity and time derivative of the Euler’s angles array as follows:



VCM = x˙ obj

y˙ obj

z˙obj

ϕ˙

γ˙

ψ˙

T

.

(15)

 G=

1 0 −ry

0 1 rx

0 0 . 1



(20)

3.4. Various grasped objects The first grasped object is a nonsymmetrical, L-Shape, 1.5 m×0.9 m block. The second object is a rectangular, 1.25 m× 0.5 m block. And the third object is a 2 m × 0.4 m bar. The geometric and inertial parameters of the grasped objects are presented in Table 3. The numbering of the candidate grasp points on each object is shown in Figure 5.

226

F. Cheraghpour et al. / Scientia Iranica, Transactions B: Mechanical Engineering 18 (2011) 222–230

Figure 6: The object grasp quality map for a single manipulator with equal weighting factors. (a) L-shape object in negative branch of the inverse kinematics solution; (b) rectangle in a positive branch of the inverse kinematics solution; and (c) bar in a positive branch of the inverse kinematics solution.

Figure 5: Numbering of grasp points. (a) The L-shape object; (b) the rectangle; and (c) the bar.

Table 3: The geometric and inertial parameters of the grasped objects. Object

m (kg)

L-shape Rectangle Bar

23.7 22.27 19.44

ρ Thickness ¯Ixx (kg/m3 ) (m) (kg m2 ) 7200 7200 7200

0.045 0.045 0.045

1.135 0.5651 0.1491

¯Iyy (kg m2 )

¯Izz (kg m2 )

4.701 2.9035 6.4833

5.793 3.4611 6.6258

4. Obtained results and discussions The values of the MAG index for candidate grasp points on the object, which are calculated based on Eq. (11), are shown in Figure 6. These values are plotted by MATLABTM as the Object Grasping Map. In this map, different values of the MAG index have different colors and equal values located on the same contour. The values of the MAG index of the interior points are interpolated linearly. Figure 6 shows the Object Grasping Map of the single manipulator, for grasping three different objects. The weighting factors are selected equal to each other, W1 = W2 = W3 . These maps indicate that the points near to the object center of mass have greater values of the MAG index. Figure 7 shows the comparison between four grasp indices, the grasp isotropy index (C-index), the normalized manipulability index (D-index), the energy index as a cost function of grasp evaluation (R-index), and the MAG index, for three grasped objects (i.e. the L-shape, the rectangle and the bar).

As shown in Figure 7a, because of the static nature of the Cindex, it could not distinguish the quality of grasping between two branches of the inverse kinematics solutions. The weakness of the R-index, with respect to the MAG index, is more obvious at specific points, e.g. point No. 3 in Figure 7a, point No. 54 in Figure 7b and point No. 29 in Figure 7c. Since the value of the R-index means that the grasp configuration at these points leads to less energy consumption by the joint actuators, these points, in the R-index diagram, are introduced as better points among the other candidate points. But the C-index and D-index diagrams show that these points are one of the weakest candidate points, because the grasp with these points could not transform the velocity of the actuators to the center of mass of the object effectively. Also, the configuration of the manipulator, when grasping the object at these points, would not be suitable considering the required dexterity for performing the task. However, the MAG index could distinguish this condition clearly and evaluates the performance of the system in a multiaspect manner. The effect of weighting factors for the L-shape grasped object is shown in Figure 8. As shown in this figure, the best grasp point is different, depending on the importance of each aspect that corresponds to the weighted factor. Similar results are obtained for the other grasped objects. 5. Results validation To validate the obtained simulation results, we will compare them with an analytical solution to the problem. For this purpose, we should find the grasp point that maximizes the MAG index. Therefore, we find the condition in which three terms of MAG in Eq. (11) are maximized. First, we present a proposition as follows.

F. Cheraghpour et al. / Scientia Iranica, Transactions B: Mechanical Engineering 18 (2011) 222–230

227

Figure 8: The object grasp quality map for L-shaped object with different weighting factors. (a) W1 = 0.8, W2 = 0.1, W3 = 0.1; (b) W1 = 0.1, W2 = 0.8, W3 = 0.1; and (c) W1 = 0.1, W2 = 0.1, W3 = 0.8.

Figure 7: Comparison between four grasp indexes: the MAG index with equal weighting factors, the grasp isotropy index (C), the normalized manipulability index (D), and the energy index as a cost function of grasp evaluation (R) for a single manipulator. (a) L-shaped object in a negative branch of the inverse kinematics solution; (b) rectangle in a positive branch of the inverse kinematics solution; and (c) bar in a positive branch of the inverse kinematics solution.

of G, as the function of grasp point coordinates, rx and ry , with respect to the object center of mass as:

σ1 = 1, √  σ2 =

2

2

2 + (rx2 + ry2 ) +

√  2



4(rx2 + ry2 ) + (rx2 + ry2 )2 ,



4(rx2 + ry2 ) + (rx2 + ry2 )2 .

Proposition 1. The reciprocal of the condition number of matrix A becomes maximum if:

σ3 =

σmax (A) = σmin (A),

Introducing r = rx2 + ry2 , we have:

(21)

where σmax (A) and σmin (A) are maximum and minimum singular values of A, respectively [54]. For the grasp matrix G, which is presented in Eq. (20) for the planar case study, with symbolic calculations of MATLABTM and using the SVD(G) command, we would have singular values

2

2 + (rx2 + ry2 ) −

σ1 = 1, √   2 σ2 = 2 + r + 4r + r 2 , 2 √   2 σ3 = 2 + r − 4r + r 2 . 2

(22)

(23)

F. Cheraghpour et al. / Scientia Iranica, Transactions B: Mechanical Engineering 18 (2011) 222–230

According to Proposition 1, CN is maximum if σmax = σmin , therefore:



4r + r 2 = 0 → r 2 = −4r .

(24)

For r ≥ 0, this leads to r = 0. It means that σ1 = σ2 = σ3 = 1 and the grasp point is the grasped object center of mass. Therefore, Proposition 2 will be concluded. Proposition 2. For planar cases, if the object center of mass is selected as the candidate grasp point, then the reciprocal of the condition number of grasp matrix G, CN (G), becomes its maximum, which is equal to one. For the second term of Eq. (11), we should calculate the maximum value of D in Eq. (8) as a function of grasp point coordinates. Based on Eqs. (8) and (9), we should calculate the maximum of the term below:

∗

∗T

det J J



 ∗T 

 ∗

= det J det J    #   T # T J = det GT J det G    #     T # T = det GT det (J) det JT det G    #     # T T = det GT det (J) det JT det G = det



GT

# 

det (J) det JT det G# .

 





Appendix. Inverse kinematics and augmented mass matrix computations



C123  S123 0 T3 =  0 0

(26)

Therefore:

      max det J∗ J∗T = max det JJT .

(27)

This shows that in the planar case, the term max{det(JJ )} does not depend on the grasp matrix and corresponding grasp point coordinates. For the third term of Eq. (11), we should calculate the minimum value of P in Eq. (10) as a function of grasp point coordinates. To this end, the object equations of motion can be considered: T

(28)

where Mobj and IG are the mass and moment of inertia of the object, respectively, Fω and Fe are nonlinear terms and the force of the end effector, ω is the angular velocity of the object, and re is the position vector of the grasp point, with respect to the object center of mass. The first equation governs the linear motion of the object, and the second one shows the angular motion of the object. In this system of equations, the term re is the only term that is affected by the grasp point. In the task defined in this case study the object orientation remains constant during the task. Therefore, to minimize the consuming energy in the manipulator actuators, the moment that is generated by the object on the end effectors must be minimized and, so, re = 0. Therefore, in the case study task, all three terms of MAG in Eq. (11) are maximized when the manipulator grasps the object at its center of mass, which was obtained before in Figure 5.

0 0 1 0

C123 0 0



L1 C1 + L2 C12 + L3 C123 L1 S1 + L2 S12 + L3 S123   0 1 (A.1)

On the other hand, if we compute the transformation for the object frame to the base frame, we have:



det(G) = det(G ) = 1.

−S123

= 0 TE .

(25)

#

¨ G + Fω = Fe Mobj X ˙ + ω × IG ω = re × Fe IG ω

In this paper, a new performance index was proposed as the Multiple-Aspect Grasp (MAG) index, which could be efficiently used for grasp planning in object manipulation tasks. This index considers three main aspects of grasp planning for object manipulation tasks, i.e. grasp points, grasp dexterity, and the power consumption of the manipulator actuators. Also, the cooperation of the manipulators can be considered. The proposed MAG index was used to find the best grasp point in a planar task. Results show that the object center of mass is the best grasp point, which maximizes the MAG index. Simulation results were discussed and validated with analytical solutions. For future work, this index is to be applied to cooperative tasks and mobile robotic manipulations.

For computing the inverse kinematics solution of the manipulator, first, we compute the transformation matrix for the base to end effector, as follows:

For grasp matrix, G, which is presented in Eq. (20) for a planar case, we have:



6. Conclusions

0

Tobj

Cψ  Sψ = 0 0

−Sψ Cψ 0 0

0 0 1 0



xobj yobj  . 0  1

(A.2)

Substituting the object center of mass coordinate, with respect to the end-effector, the transformation of end-effector to the base frame is computed, as follows:

−S ψ 0

rx Cψ − ry Sψ + xobj S ψ Cψ 0 rx Sψ − ry Cψ + yobj   0  TE =   .0. . . . .0. . . . 1. . . . . . . . . . . . . . . . 0. . . . . . . . . . . .  . 0 0 0 1

C

ψ

..............

228



(A.3)

Equating Eqs. (A.1) and (A.3), a nonlinear system of equations for computing the inverse kinematics solution is obtained:

 C = C123   ψ Sψ = S123  rx Cψ − ry Sψ + xobj = L1 C1 + L2 C12 + L3 C123 rx Sψ + ry Cψ + yobj = L1 S1 + L2 S12 + L3 S123 .

(A.4)

Solving Eq. (A.4), θ1 , θ2 and θ3 are obtained:

  θ1 = A tan 2 Y¯ , X¯ ± A tan 2



X¯ 2 + Y¯ 2 − c 2 , c



,

(A.5)

θ2 = (1/L2 )A tan 2(Y¯ − L1 S1 , X¯ − L1 C1 ) − θ1 ,

(A.6)

θ3 = A tan 2(Sψ , Cψ ) − (θ1 + θ2 )

(A.7)

where X¯ = Xobj − L3 Cψ , and Y¯ = Yobj − L3 Sψ , also, c = (1/2L1 )(X¯ 2 + Y¯ 2 + L21 + L22 ). We name the solution with the positive sign in Eq. (A.5) as the positive branch, and the solution with the negative sign as the negative branch.

F. Cheraghpour et al. / Scientia Iranica, Transactions B: Mechanical Engineering 18 (2011) 222–230

For the power term in Eq. (11), we must compute the augmented mass matrix of the manipulator, as follows: h11 h21 h31

 ∗

M =

h12 h22 h32

h13 h23 h33

 .

(A.8)

3 ×3

The values of the elements of the augmented mass matrix of the 3R planar manipulator are computed as follows: h11 = I1 + m1 r12 + m2 L21 + r22 + 2m2 L1 r2 C2 + I2





+ m3 L21 + L22 + r32 + 2L1 L2 C2 + 2L1 r3 C23 + 2L2 r3 C2 ) + I3 ,   = h21 = m2 r22 + L1 r2 C2 + I2  2  + m3 L2 + r32 + L1 r3 C23 + L1 L2 C2 + 2L2 r3 C3 + I3 , 

h12

h13 = h31 = m3 (r32 + L1 r3 C23 + L2 r3 C3 ) + I3 , h22 = m2 r32 + m3 (L22 + r32 + 2L2 r3 C2 ) + I2 + I3 , h23 = h32 = m3 (r32 + L2 r3 C3 ) + I3 , h33 = m3 r32 + I3 . References [1] Moosavian, S.A.A. and Papadopoulos, E. ‘‘Cooperative object manipulation with contact impact using multiple impedance control’’, International Journal of Control, Automation, and Systems, 8(2), pp. 314–327 (2010). [2] Eslamy, M. and Moosavian, S.A.A. ‘‘Dynamic and cooperative object manipulation control of suspended mobile manipulators’’, Journal of Intelligent and Robotic Systems, 60, pp. 181–199 (2010). [3] Moosavian, S.A.A. and Rastegari, R. ‘‘Multiple-arm space free-flying robots for manipulating objects with force tracking restrictions’’, Journal of Robotics and Autonomous Systems, 54, pp. 779–788 (2006). [4] Masoud, A. ‘‘Kinodynamic motion planning’’, IEEE Robotics & Automation Magazine, 17(1), pp. 85–99 (2010). [5] Korayem, M.H., Haghighi, R., Nikoobin, A., Alamdari, A. and Korayem, A.H. ‘‘Determining maximum load carrying capacity of flexible link manipulators’’, Scientia Iranica, Transactions B: Mechanical Engineering, 16(5), pp. 440–450 (2009). [6] Suarez, R., Roa, M. and Cornella, J. ‘‘Grasp Quality Measures’’, Institute of Industrial and Control Engineering, Technical University of Catalonia, Tech. Rep. (2006). [7] Cutkosky, M.R., Howe, R.D. and Provancher, W.R. ‘‘Force and tactile sensors’’, In Springer Handbook of Robotics, B. Siciliano and O. Khatib, Eds., pp. 465–466, Springer-Verlag, Berlin Heidelberg (2008). [8] Kim, B., Oh, S., Yi, B and Suh, I.H. ‘‘Optimal grasping based on nondimensionalized performance indices’’, Proceeding of IEEE/RSJ Int. Conf. on Intelligent Robots and Systems, pp. 949–956 (2001). [9] Murray, R.M., Li, Z. and Sastry, S., A Mathematical Introduction to Robotic Manipulation, CRC Press, Boca Raton, Florida (1994). [10] Shimoga, K.B. ‘‘Robot grasp synthesis algorithms: a survey’’, International Journal on Robotics Research, 15(3), pp. 230–266 (1996). [11] Chinellato, E., Fisher, R.B., Morales, A. and del Pobil, A.P. ‘‘Ranking planar grasp configurations for a three-finger hand’’, Proc. IEEE Int. Conf. Robotics and Automation, pp. 1133–1138 (2003). [12] Popovic, M., Kraft, D., Bodenhagen, L., Baseski, E., Pugeault, N., Kragic, D., Asfour, T. and Kruger, N. ‘‘A strategy for grasping unknown objects based on co-planarity and colour information’’, Robotics and Autonomous Systems, 58(5), pp. 551–565 (2010). [13] Chinellato, E., Morales, A., Fisher, R.B. and del Pobil, A.P. ‘‘Visual quality measures for characterizing planar robot grasps’’, IEEE Transactions on Systems, Man and Cybernetics-Part C: Applications and Reviews, 35(1), pp. 30–41 (2005). [14] Speth, J., Morales, A. and Sanz, P.J. ‘‘Vision-based grasp planning of 3D objects by extending 2D contour based algorithms’’, Proc. IEEE/RSJ International Conference on Intelligent Robots and Systems, pp. 2240–2245 (2008). [15] Ding, D., Liu, Y.H. and Wang, B. ‘‘Computation of 3-D form-closure grasps’’, IEEE Transactions on Robotics and Automation, 17(4), pp. 515–522 (2001). [16] Park, Y.C. and Starr, G.P. ‘‘Grasp synthesis of polygonal objects using a three-fingered robotic hand’’, International Journal on Robotic Research, 11(3), pp. 163–184 (1992). [17] Xiong, C. and Xiong, Y. ‘‘Stability index and contact configuration planning for multifingered grasp’’, Journal of Robotic Systems, 15, pp. 183–190 (1998). [18] Xiong, Y. and Xiong, X. ‘‘Algebraic structure and geometric interpretation of rigid complex fixture systems’’, IEEE Transactions on Automation Science and Engineering, 4(2), pp. 252–264 (2007).

229

[19] Dai, J.S. and Kerr, D.R. ‘‘Analysis of force distribution in grasps using augmentation’’, Journal of Mechanical Engineering Science, 210(1), pp. 15–22 (1996). [20] Papadopoulos, E. and Gonthier, Y. ‘‘A framework for large-force task planning of mobile and redundant manipulators’’, Journal of Robotic Systems, 16, pp. 151–162 (1999). [21] Ciocarlie, M., Miller, A. and Allen, P. ‘‘Grasp analysis using deformable fingers’’, IEEE/RSJ International Conference on Intelligent Robots and Systems, pp. 4122–4128 (2005). [22] Miller, A.T. and Allen, P.K. ‘‘GraspIt! A versatile simulator for robotic grasping’’, IEEE Robotics and Automation Magazine, 11(4), pp. 110–122 (2004). [23] Xue, Z., Zoellner, J.M. and Dillmann, R. ‘‘Automatic optimal grasp planning based on found contact points’’, Proc. of the IEEE/ASME Int. Conf. on Advanced Intelligent Mechatronics, pp. 1053–1058 (2008). [24] Zhu, X. and Wang, J. ‘‘Synthesis of force-closure grasps on 3-D objects based on Q distance’’, IEEE Transactions on Robotics and Automation, 19(4), pp. 669–679 (2003). [25] Zhu, X. and Ding, H. ‘‘Optimality criteria for fixture layout design: a comparative study’’, IEEE Transactions on Automation Science and Engineering, 6(4), pp. 658–669 (2009). [26] Strandberg, M. and Wahlberg, B. ‘‘A method for grasp evaluation based on disturbance force rejection’’, Robotics, IEEE Transactions on Robotics, 22(3), pp. 461–469 (2006). [27] Suarez, R. and Roa, M. ‘‘Finding locally optimum force-closure grasps’’, Robotics and Computer-Integrated Manufacturing, 25(3), pp. 536–544 (2009). [28] Huebner, K., Ruthotto, S. and Kragic, D. ‘‘Minimum volume bounding box decomposition for shape approximation in robot grasping’’, IEEE International Conference on Robotics and Automation (ICRA 2008), pp. 1628–1633 (2008). [29] Nahvi, A., Hollerbach, J. and Hayward, V. ‘‘Calibration of a parallel robot using multiple kinematic closed loop’’, IEEE International Conference on Robotics and Automation, ICRA 1994, pp. 407–412 (1994). [30] Gosselin, C. and Angeles, J. ‘‘A global performance index for the kinematic optimization of robotic manipulators’’, Journal of Mechanical Design, 113(3), pp. 220–227 (1991). [31] Yoshikawa, T. ‘‘Manipulability of robotic mechanism’’, International Journal on Robotics Research, 4(2), pp. 3–9 (1985). [32] Melchiorri, C., Chiaccio, P., Chiaverini, S., Sciavicco, L. and Siciliano, B. ‘‘Comments on global task space manipulability ellipsoids for multiplearm systems and further considerations, (with reply) P. Chiacchio et al.’’, IEEE Transactions on Robotics and Automation, 9(2), pp. 232–236 (1993). [33] Elkady, A.Y., Mohammed, M. and Sobh, T. ‘‘A new algorithm for measuring and optimizing the manipulability index’’, Journal of Intelligent and Robotic Systems, 59, pp. 75–86 (2010). [34] Rimon, E. and Burdick, J.W. ‘‘Mobility of bodies in contact. I. A 2nd-order mobility index for multiple-finger grasps’’, IEEE Transactions on Robotics and Automation, 14(5), pp. 696–708 (1998). [35] Sun, Y. and Hollerbach, J. ‘‘Observability index selection for robot calibration’’, IEEE International Conference on Robotics and Automation (ICRA 2008), pp. 831–836 (2008). [36] Chiu, S.L. ‘‘Task compatibility of manipulator postures’’, International Journal on Robotics Research, 7(5), pp. 13–21 (1988). [37] Bowling, A. and Khatib, O. ‘‘The dynamic capability equations: a new tool for analyzing robotic manipulator performance’’, IEEE Transactions on Robotics, 21(1), pp. 115–123 (2005). [38] Bowling, A. and Kim, C. ‘‘Velocity effects on robotic manipulator dynamic performance’’, ASME Journal of Mechanical Design, 128, pp. 1236–1245 (2006). [39] Kim, J.H., Yang, J. and Abdel-Malek, K. ‘‘Planning load effective dynamic motions of highly articulated human model for generic tasks’’, Robotica, 27, pp. 739–747 (2009). [40] Kim, J.H., Xiang, Y., Bhatt, R., Yang, J., Chung, H.J., Arora, J.S. and AbdelMalek, K. ‘‘Generating effective whole-body motions of a human-like mechanism with efficient ZMP formulation’’, International Journal on Robotics and Automation, 24(2), pp. 125–136 (2009). [41] Yoshikawa, T. ‘‘Erratum to dynamic manipulability of robot manipulators’’, Journal of Robotic Systems, 17, p. 449 (2000). [42] Yokokohji, Y., San Martin, J. and Fujiwara, M. ‘‘Dynamic manipulability of multifingered grasping’’, IEEE Transactions on Robotics, 25(4), pp. 947–954 (2009). [43] Kurazume, R. and Hasegawa, T. ‘‘A new index of serial-link manipulator performance combining dynamic manipulability and manipulating force ellipsoids’’, IEEE Transactions on Robotics, 22(5), pp. 1022–1028 (2006). [44] Roa, M.A. and Suarez, R. ‘‘Regrasp planning in the grasp space using independent regions’’, IEEE/RSJ International Conference on Intelligent Robots and Systems, IROS 2009, pp. 1823–1829 (2009). [45] Phoka, T. and Sudsang, A. ‘‘Regrasp planning of three-fingered hand for a polygonal object’’, IEEE International Conference on Robotics and Automation (ICRA 2010), pp. 4328–4333 (2010). [46] Vannoy, J. and Xiao, J. ‘‘Real-time tight coordination of mobile manipulators in unknown dynamic environments’’, IEEE/RSJ International Conference on Intelligent Robots and Systems, IROS 2007, pp. 2513–2519 (2007).

230

F. Cheraghpour et al. / Scientia Iranica, Transactions B: Mechanical Engineering 18 (2011) 222–230

[47] Korayem, M.H. and Nikoobin, A. ‘‘Maximum payload path planning for redundant manipulator using indirect solution of optimal control problem’’, International Journal of Advanced Manufacturing Technology, 44(7–8), pp. 725–736 (2009). [48] Watanabe, T. and Beetz, M. ‘‘Grasp motion planning for box opening task by multi-fingered hands and arms’’, IEEE International Symposium on Computational Intelligence in Robotics and Automation, CIRA 2009, pp. 1–7 (2009). [49] Yoshida, E., Esteves, C., Belousov, I., Laumond, J.-P., Sakaguchi, T. and Yokoi, K. ‘‘Planning 3-D collision-free dynamic robotic motion through iterative reshaping’’, IEEE Transactions on Robotics, 24(5), pp. 1186–1198 (2008). [50] Saravanan, R. and Ramabalan, S. ‘‘Evolutionary minimum cost trajectory planning for industrial robots’’, Journal of Intelligent and Robotic Systems, 52, pp. 45–77 (2008). [51] Cheraghpour, F., Moosavian, S.A.A. and Nahvi, A. ‘‘Multiple aspect grasp performance index for cooperative object manipulation tasks’’, IEEE/ASME International Conference on Advanced Intelligent Mechatronics, pp. 386–391 (2009). [52] Angeles, J., Fundamentals of Robotic Mechanical Systems: Theory, Methods, and Algorithms, 2nd Edn., Springer-Verlag, New York Inc. (2003), pp. 180–188. [53] Cheraghpour, F., Moosavian, S.A.A. and Nahvi, A. ‘‘Robotic grasp planning by multiple aspects grasp index for object manipulation tasks’’, 18th Iranian Conference on Electrical Engineering (ICEE), pp. 635–640 (2010). [54] Nakamura, Y., Advanced Robotics: Redundancy and Optimization, AddisonWesley, Reading, MA (1991).

Farzad Cheraghpour Samavati was born in Tehran, Iran, in 1979. He received a B.S. degree from the Central Branch of the Azad University in Tehran, in 2003, and obtained his M.S. degree from K.N. Toosi University of Technology, in 2006, both in Mechanical Engineering. Now, he is a Ph.D. candidate at KNTU. His current research interests include: Grasp Planning, Cooperative Manipulators, Object Manipulation, Mobile Robots and Force Control.

S. Ali A. Moosavian received his B.S. degree in 1986 from Sharif University of Technology, his M.S. degree in 1990 from Tarbiat Modaress University (both in Tehran) and his Ph.D. degree in 1996 from McGill University (Montreal, Canada), all in Mechanical Engineering. Since 1997, he has been with the Mechanical Engineering Department at K. N. Toosi University of Technology (Tehran); currently, as a Professor. He teaches courses in areas of robotics, dynamics, automatic control, analysis and synthesis of mechanisms. His research interests include areas of: Automatic Control Systems, Dynamics and Control of Robotic Systems. He has published a number of books in these fields and more than 150 articles in peer-reviewed journals and conference proceedings. He is one of the founders of the ARAS Research Center for Design, Manufacturing and Control of Robotic Systems, and Automatic Machineries.

Ali Nahvi received a Ph.D. degree in Mechanical Engineering from the University of Utah in 2003. He is currently a faculty member at K.N. Toosi University of Technology in Iran. He was the recipient of the Anton Philips Paper Award in 1998. His research interests include areas of: Virtual Reality, Design and Control of Driving Simulators, Haptic Interfaces and Virtual Laboratories.