2009 IEEE/ASME International Conference on Advanced Intelligent Mechatronics Suntec Convention and Exhibition Center Singapore, July 14-17, 2009
Multiple Aspect Grasp Performance Index for Cooperative Object Manipulation Tasks Farzad Cheraghpour1, S. Ali A. Moosavian2, and Ali Nahvi3 Advanced Robotics & Automated Systems (ARAS) Laboratory Department of Mechanical Engineering, K. N. Toosi University of Technology
Tehran, Iran, P.O. Box 19395-1999, Fax: (+98) 21 8867-4748
[email protected]
Abstract— In this paper, a new Multiple Aspect Grasp (MAG)
performance index is presented for evaluating grasp quality for object manipulation tasks. The position of contact points, the configuration of cooperative manipulators, and the kinetics aspects of manipulators and the manipulated object are taken into account by the proposed MAG index. The MAG index is used to evaluate the candidate grasp points, selecting the effective branch of inverse kinematics solution, and cooperation of two manipulators. Simulation results reveal capabilities of MAG index in grasp planning for both individual and cooperative object manipulation tasks.
I. INTRODUCTION
O
BJECT Manipulation is one of the interesting fields in robotics that includes many problems that should be solved and among these problems Grasp Planning is one of the challenging and important problems. The cooperative manipulation of objects provides flexibility and 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 voluminous objects from one place to another. When a system of manipulators or a multi-fingered robotic hand grasps an object, there are several ways for suitable grasp. An optimal grasp planning is required to find the optimal grasp points to satisfy the objectives of the given task. In addition, 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 grasp quality. These measures are classified into three groups, [1]. In the first group, indices consider the position of contact points. Some of these indices are based on algebraic properties of the grasp matrix, such as the smallest singular value, [2], determinant, [3], and condition number, [4]. Some indices are based on geometric 1- Ph.D. Candidate 2- Associate Professor 3- Assistant Professor
1-6 978-1-4244-2853-3/09/$25.00 ©2009 IEEE
386
relationships between contact points position, such as the area of the grasp polygon, [5], distance between the centroid of the contact polygon and center of mass of the grasped object, [6-7], and stability grasp index, [8]. Some indices consider limitations on the End-Effector (EE) forces, such as the largest ball, [9-11], Q-distance, [12-13], and the largest ball in manipulator configuration space, [14]. In the second group, indices consider configuration of the cooperative manipulators or fingers of multi-fingered hand, such as the smallest singular value of the Jacobian which relating actuators velocity and the grasped object velocity ( J * ), [15], volume of manipulability ellipsoid, [16], and the condition number of J * , [4]. In the third group, indices consider kinetic characteristics of the manipulators and the grasped object, such as task compatibility index [17], and volume of the dynamic manipulability ellipsoid, [18]. In this paper, a new grasp performance index is presented for evaluation of grasp configuration of the cooperative robotic systems. This index considers three aspects: the first is the position of the grasp points, the second is the kinematics characteristics of manipulators, and the third is the kinetic characteristics of manipulators and the grasped object. Our alternate goal is to evaluate grasp configuration for a system of robots that should perform a task with suitable dexterity and energy consumption, individually or cooperatively. II. MULTI-ASPECT GRASP PERFORMANCE INDEX In grasp planning, we could consider several aspects of grasp system as main characteristic for designing and analyzing of the grasp. There are many aspects that researchers choose for grasp planning. It could be classify these aspects to three main groups. The first aspect is the position of contact points in the form of the grasp matrix (G) properties, such as the condition number of G. The indices that considered this aspect, such as Grasp Isotropy
Index [2], could analyze quality of grasp configuration statically. The second aspect is the kinematics characteristics of the manipulator/manipulators that is/are grasping the object. The indices that considered this aspect, such as Manipulability Index [16], could analyze quality of grasp configuration for the tasks that only consist of the motion of the grasped object without force interaction with the environment. The third aspect is the kinetic characteristics of the manipulator that is grasping the object. The indices that considered this aspect, such as Task Compatibility Index [17], could analyze the quality of grasp configuration for the tasks that consist of force interaction between robotic system and the environment and the grasped object with the robotic manipulators. In this paper we would propose the multiple aspects index that considers these three aspects together for evaluating grasp configuration in object manipulation tasks. We name this Multiple Aspects Grasp performance index as MAG Index. The MAG Index could be used to evaluate grasp configuration in object manipulation tasks that are consisting of static, kinematics, and kinetics aspects. Also with the MAG Index, the cooperative object manipulation tasks could be evaluated. First consider the grasp matrix for n-contact points that has a structure as follows, [19],
13×3
G=
T × obj p1
S r
03×3 S
T obj
...
13×3 T × obj p j
... S r
03×3 T S obj
6×6n
(1)
where rpj is the position vector of the j-th EE, with respect to the coordinate system placed in the object center of mass and parallel to principal axes of object, Fig.2, and rxpj is the cross operator of vector rpj. The matrix S obj is obtained by: 1 0 = 0 Cϕ 0 − Sϕ
− Sγ (2) Sobj Cγ Sϕ Cγ Cϕ where γ and ϕ are pitch and roll angels. Suppose that, C N , denotes the inverse condition number of
the grasp matrix G :
CN = σ min ( G ) /σ max ( G )
(3)
where σ min and σ max are the smallest and the largest singular values of G respectively. If C N is close to zero, the grasp is singular. This means that the End-Effector of at least one manipulator in system is incapable of moving the object in an arbitrary direction. On the other hand if C N is close to 1, we have an isotropic grasp matrix, and all EndEffectors are capable to moving the object in arbitrary directions.
387
Also suppose that, D i , denotes the dexterity measure of the i-th manipulator:
Di = det ( J i* J i *T )
(4)
*
Where J i denotes Jacobian matrix between actuators velocity domain and object velocity domain of the i-th manipulator, and is computed as follows:
J i* = ( G T ) J i #
(5)
where J i denotes Jacobian matrix of the i-th manipulator, also (.) # is the pseudo-inverse of the matrix. The term D i denotes the volume of manipulability ellipsoid. The greater the volume of this ellipsoids, the greater the dexterity of the grasp. When this ellipsoid transforms into a sphere, its volume is maximized. When the manipulator i is in singular condition, the determinant of Ji approaches zero. Also if D i = D i max , Di / Di max becomes one, which imposes the total value of MAG Index. Note that Dimax is the maximum value of Di among candidate contact points. Finally, this definition of Di allows us to use MAG Index for manipulators with non-square Jacobian matrix, e.g. redundant manipulators. Finally suppose that, Pi denotes consumed power of actuators of i-th manipulator:
(
)
Pi = θiT M i*θi + C θ i , θi + G (θ i ) (6) where θi denotes the rate of joints angle array, C denotes the array of centrifugal and Coriolis terms, G denotes the array of gravity terms, and M i* denotes augmented mass matrix of i-th manipulator. The augmented mass matrix is mass matrix of the manipulator that the object inertial parameters add with the inertial parameters of last link. In cooperation condition, suppose that the inertial parameters of the grasped object are distributed into all cooperative manipulators with equal portion. Our desired condition is that the term Pi / Pi max is smaller and therefore the term 1 − Pi / Pi max
near
to
one.
In
the
weak
condition
that Pi = Pi max , the actuators of manipulator consumed maximum power and so are near to the saturation limit. The new grasp performance index, MAG, considers three characteristics of grasp in a weighted structure. The MAG index evaluates grasp configuration during the time of performing the task Δt for n cooperative manipulators:
MAG =
1 t f − t0
tf
W C 1
t0
N
+
W
2
n
n
D W + n
D i =1
i
i max
3
n
Pi
i =1
i max
1 − P
dt (7)
where t 0 and t f are the initial and final time, respectively. The first term deals with the position of the contact points, the second term considers kinematic characteristics of the
cooperative manipulators and the third term evaluates kinetic characteristics of manipulators and the grasped object. Each term of MAG index has a value between zero to one. The goal is to maximize the MAG index. Also weighting factors,W 1 ,W 2 and W 3 , are included to put different emphasis on each terms. The total sum of these three factors is equal to one. The normalizing factor 1/(t f − t0 ) puts the total index between zero to one.
of candidate grasping points on the object are presented in TableII.
Therefore, a good grasp has a MAG of close to one, and a poor grasp has a MAG of close to zero. III. The MAG index For Two Cooperative Manipulators Fig. 1 shows a system of two robotic manipulators in the global motion, performing a cooperative manipulation task, i.e. moving an object with two manipulators according to predefined trajectories. In this section the details of formulation will be developed. The system includes two cooperative RRR manipulators.
Figure 2. DH coordinates and the position of grasp points with respect to C.G. of object.
The object path is the straight line along X-axis. Joints trajectory are quintic functions as follows,
X ( t ) = a0 + a1t + a2 t 2 + a3 t 3 + a4 t 4 + a5 t 5 Y (t ) = 1
(8)
ψ ( t ) = 10° with coefficients that presented in [18]. Fig. 2 shows trajectory of x (t ) and its derivatives.
Figure 1. Two arms performing a cooperative object manipulation task.
The task is moving the object based on a given trajectory. The object has been grasped with solid grasp condition, i.e. its orientation cannot change with respect to the endeffectors. The geometric and inertial parameters of the grasped object are shown in table (1). Table I THE INERTIAL PARAMETERS OF THE OBJECT m [ kg ]
I xx kg.m 2
I yy kg.m 2
I zz kg.m 2
5 0.04 0.25 0.3 cm cm The grasped object is a 75 × 40 block that a piece with 50cm × 20cm dimension subtracted from it. The shape the object and position of its center of mass is shown in fig 8. We choose some candidate points on the grasped object where we calculate of the MAG index for them. In practice, these points are located using a vision system. Coordinates
388
Figure 3. Trajectory of X(t) and its derivatives.
For calculating the terms of (7), we consider the velocity of the grasped object from two ways. First, with the transformation of the actuators velocity, and then with the task predefined trajectory. Equality of these relations gives us configuration of the manipulator to reach defined task.The velocity of the contact points computes from the velocity of the actuators as follows,
[Vc ]6×1 = [ J ]6×3 θ 3×1
(9)
where V c denotes the velocity array of the contact points on the grasped object as follows,
IV.
T
(10) Vc = xc y c zc Ω x Ω y Ω z 6×1 xc , y c and zc are the linear components and Ω x , Ω y and Ω z are the angular components of the contact point velocity array. The Jacobian matrix of 3R manipulator is as follows, − ( L1 S1 + L2 S12 + L3 S123 ) − ( L2 S12 + L3 S123 ) − L3 S123 L2 C12 + L3 C123 L3C123 L1C1 + L2 C12 + L3C123 0 0 0 J = (11) 0 0 0 0 0 0 1 1 1 6×3
where S 12 denotes Sin (θ1 + θ 2 ) and so on. L i denotes length of i-th link. The velocity array of the actuators is as follows, T θ = θ1 θ2 θ3 (12) 3×1 where θi denotes the angular velocity of the i-th joint. For
mapping the contact points velocity domain to the object velocity domain we have, (13) Vc = G T X where X denotes the object velocity array contained the linear velocity and rate of the Euler’s angels array as follows, T X = xobj y obj zobj ϕ γ ψ (14) 6×1 With computing the inverse kinematics solution of the 3R manipulator [18], θ1 , θ 2 and θ 3 achieve as follows,
θ1 = A tan 2 (Y , X ) ± A tan 2
(
X 2 + Y 2 − c2 , c
θ 2 = (1/ L2 ) A tan 2 (Y − L1 S1 , X − L1C1 ) − θ1
)
(15) (16)
θ3 = A tan 2 ( Sψ , Cψ ) − (θ1 + θ 2 ) where
X = X obj − L 3C ψ
and
(17) Y = Y obj − L 3S ψ
also
c = (1/ 2 L1 )( X + Y + L − L ) , (15) is obtained with the tangent-of-the-half-angle substitutions. We name the solution with the positive sign in (15) as the positive branch, and the solution with the negative sign as the negative branch. For the power term, we must compute the augmented mass matrix of the manipulator as follows, 2
h11 M * = h21 h31
h12 h22 h32
2
2 1
h13 h23 h33 3×3
2 2
(18)
where values of its elements is presented in appendix.
389
RESULTS AND DISCUSSIONS
In this section the results of simulations based on the new grasp performance index, MAG, are presented and capabilities of the MAG index for selecting the suitable inverse kinematics branch, evaluating the candidate grasp points, and choosing appropriate grasp combination of the cooperative manipulators are shown. In addition, the MAG index is compared with two other indices. Selecting the suitable inverse kinematics branch: First, the manipulator A is considered as a single robot that must perform the task. For this case, n = 1 . The value of the MAG index for 16 candidate points is computed. The weighting factors are selected equal to each other. This selection means that all three terms of (7) have the same importance for designer. Fig. 4 shows the values of the MAG index for the manipulator-A in both branches of the inverse kinematics solutions. Comparison between fig. 4.a and 4.b show that the negative branch of the inverse kinematics of the manipulator-A has greater values of the MAG index and is better to choose with respect to this task. Also, indicate that among 16 candidate points, points No.7 As shown in fig. 4.b has the maximum value of grasp performance index and occurs in the negative branch of the inverse kinematics solution. Evaluating the grasp performance of the candidate points: The values of the MAG index for each point are shown in Table II. In this table, the points No.6 and No.7 with 86.28% and 85.79% respectively, have better grasp performance than the other points. For easier comparing of the grasp performance of the candidate points, the values of the MAG index for each point on the grasped object plot By MATLABTM as the Object Grasping Map. In this Map, different values of the MAG index have different color and equal values located on the same contour. The values of the MAG index of the interior points are interpolated linearly. Fig.5 shows Object Grasping Map of the single manipulator-A, in the negative branch of the inverse kinematics solution. This map indicates that the point No.6 and near points to it have greater values of the MAG index. Also indicates that the points that located in the side of the manipulator-A, the point No.2, have smaller values of the MAG index than the others. Table II The value of the MAG index for single manipulator-A in Negative branch of inv. kin. point No. Point coordinate MAG 1
[ −0.315 −0.18]
76.82%
2
[ −0.440 −0.18]
74.17%
3
[ −0.440 +0.02]
77.54%
4
[ −0.315 +0.02]
79.96%
5
[ −0.190 +0.02]
83.29%
T
T
T
T
T
6
[ −0.065 +0.02]
86.28%
7
[ +0.060 +0.02]
85.79%
8
[ +0.060 +0.22]
81.25%
9
[ +0.185 +0.22]
78.84%
10
[ +0.310 +0.22]
76.41%
11
[ +0.310 +0.02]
77.43%
12
[ +0.310 −0.18]
75.09%
13
[ +0.185 −0.18]
78.42%
14
[ +0.060 −0.18]
80.33%
15
[ −0.065 −0.18]
80.56%
16
[ −0.190 −0.18]
79.84%
T
T
T
T
T
T
T
T
T
T
T
Considering the multiple performances with respect to simple indices: With changing the weighting factors of the MAG index, we could evaluate the quality of the grasp points in the different manner. For example, with considering just first term in (7) and select the weighting factors as, W1=1, W2=0, W3=0 and therefore the MAG index transforms to the grasp isotropy index(C-index) that evaluating the grasp quality statically. Also if we select W2=1 and the other weighting factors equal to zero, the MAG index transforms to normalized manipulability index (D-index). And finally if we select W3=1 and the other weighting factors equal to zero, the MAG index transforms to grasp randeman index (R-index). With these definitions, we could compare the performance of the MAG index with three indices that evaluate the grasp performance with just a simple aspect. Fig.6 shows the comparison between three simple grasp indices, C-index, D-index, R-index, and the MAG index. As shown in this fig, because of the static nature of the Cindex, it could not distinct the quality of grasping between two branches of the inverse kinematics solutions. In addition, the diagrams of the fig. show the similarity in the trends of the MAG index and C-index but the different trends between the MAG index and D-index and R-index. This similar trend is important because the C-index has better performance than D-index in the similar cases, [2021]. The weakness of the R-index with respect to the MAG index in the point No.3 is cleared. Since the value of Rindex is meant that the grasp configuration with that grasp point is consumed less power in the joint actuators of manipulator, therefore the point No.3 in R-index diagram is introduced as better point among the other candidate points. But the C-index and D-index diagrams show that the point No.3 is the weakest candidate point because could not transform the velocity of actuators to the center of mass of object effectively. In addition, the configuration of manipulator when grasped the object at this points would
390
not suitable dexterity for performing the task. However the MAG index could distinct this condition clearly. Choosing the appropriate grasp combination of cooperative manipulators: Next, we consider cooperation of two manipulators and evaluate grasp configuration of both in performance index. In such case, n in (1) equal to 2, and therefore grasp matrix, G, has 6 × 12 dimension. Simulation runs with selecting weighting factors equal to each other. With choosing each manipulator 16 candidates points, and with eliminating the cases that both manipulators grasp the object in the same point, there are 240 combinations of grasp point’s pairs for two manipulators. Fig.7 shows the best pair points for grasping in which the manipulator-A grasps object in the point No.6 and the manipulator-B grasps object in the point No.7, the configuration (6,7), with the MAG index value equal to 84.44%. Next good configurations are (4,11) and (8,15) with the MAG index values equal to 84.36%. These configurations indicate that the combinations around the center of mass of object have greater values of performance index. V. CONCLUSIONS In this paper, we presented the multiple aspects grasp index (MAG) that can be used for object manipulation planning. The MAG index considers three main aspects of the grasp planning for object manipulation tasks, such as the grasp points, the dexterity of manipulator, and the consumed power of actuators. Although many uni-aspect indices have been presented by researchers for grasp evaluation, but these indices have just be able to use for special group of tasks and not suitable for object manipulation planning. In addition, the cooperation scenarios of manipulators, the MAG index could be used to evaluate cooperative grasp configurations. The capabilities of the MAG index such as selection of the suitable inverse kinematics solutions, consideration of multiple aspects in the grasp planning, and effectiveness in choosing appropriate configuration of the cooperative manipulators, have been shown in the simulation results. APPENDIX The values of elements of augmented mass matrix of 3R planar manipulator are as follows, h11 = I1 + m1r12 + m2 ( L12 + r22 ) + 2m2 L1r2C2 + I 2
+ m3 ( L12 + L22 + r32 + 2 L1L2C2 + 2 L1r3C23 + 2 L2 r3C2 ) + I3
h12 = m2 ( r22 + L1r2C2 ) + I 2
+ m3 ( L22 + r32 + L1r3C23 + L1 L2C2 + 2 L2 r3C3 ) + I 3
h13 = m3 ( r32 + L1r3C23 + L2 r3C3 ) + I 3
h21 = h12 , h22 = m2 r32 + m3 ( L22 + r32 + 2 L2 r3C2 ) + I 2 + I 3 h23 = m3 ( r32 + L2 r3C3 ) + I 3
h31 = h13 ,h32 = h23 ,h33 = m3r32 + I 3
REFERENCES [1] [2] [3] [4] [5] (a)
(b)
[6]
Figure 4. Grasp Performance Index for manipulator A in both branches of inv. kin. (a) positive branch, (b) negative branch.
[7] [8] [9] [10]
Figure 5. the Object Grasping Map for the single manipulator-A in the negative branch of inv. kin.
[11] [12] [13] [14]
[15] [16] [17] Figure 6. Comparing between four grasp index: the MAG index, Cindex, D-index, R-index for the single manipulator-A.
[18] [19]
R. Suarez, M. Roa, and J. Cornella, “Grasp quality measures,” Institute of Industrial and Control Engineering, Technical University of Catalonia, Tech. Rep., 2006. B. Kim, S. Oh, B. Yi, and I.H. Suh, “Optimal grasping based on nondimensionalized performance indices”, Pro. IEEE/RSJ Int. Conf. on Intelligent Robots and Systems, 949-956, 2001. R.M. Murray, Z. Li and S. Sastry, A Mathematical Introduction to Robotic Manipulation, CRC Press, Boca Raton, Florida, 1994. K.B. Shimoga, “Robot grasp synthesis algorithms: A survey”, Int. J. Robotics Research ,15(3), 230-266 1996. E. Chinellato, R.B. Fisher, A. Morales and A.P. del Pobil, “Ranking planar grasp configurations for a three-finger hand”, Proc. IEEE Int. Conf. Robotics and Automation, 1133-1138, 2003. E. Chinellato, A. Morales, R.B. Fisher, and A.P. del Pobil, “Visual quality measures for characterizing planar robot grasps”, IEEE Trans. Systems, Man and Cybernetics-Part C: Applications and Reviews 35(1) , 30-41, 2005. D. Ding, Y.H. Liu and B. Wang, “Computation of 3-D form-closure grasps”, IEEE Trans. Robotics and Automation 17(4), 515-522, 2001. Y.C. Park, and G.P. Starr, “Grasp synthesis of polygonal objects using a three-fingered robotic hand”, Int. J. of Robotic Research, 11(3), 163-184, 1992. A.T. Miller, and P.K. Allen, “GraspIt! A versatile simulator for robotic grasping”, IEEE Robotics and Automation Magazine, 11(4), 110-122, 2004. M. A. Roa and R. Suarez, “Geometrical approach for grasp synthesis on discretized 3d objects,” in IEEE/RSJ International Conference on Intelligent Robots and Systems, pp.3283–3288, 2007. Z. Xue, J. M. Zoellner, and R. Dillmann, “Grasp planning: Find the contact points,” in IEEE International Conference on Robotics and Biomimetics (ROBIO), pp.835-840, 2007. X. Zhu and J. Wang, “Synthesis of force-closure grasps on 3-D objects based on Q distance”, IEEE Trans. Robotics and Automation 19(4), 669-679, 2003. X. Zhu and H. Ding, “Computation of force-closure grasps: An Iterative Algorithm”, IEEE Trans. On Robotics, 22(1), 172-179, 2006. Z. Xue, J. M. Zoellner, and R. Dillmann, “Automatic optimal grasp planning based on found contact points”, Proc. Of the IEEE/ASME Int. Conf. on Advanced Intelligent Mechatronics, pp. 1053-1058, 2008. C.A. Klein, and B.E. Blaho, “Dexterity measures for the design and control of kinematically redundant manipulator”, Int. J. Robotics Research 6(2), 72-83, 1987. T. Yoshikawa, “Manipulability of robotic mechanism”, Int. J. Robotics Research 4(2), 3-9, 1985. S.L. Chiu, “Task compatibility of manipulator postures”, Int. J. Robotics Research 7(5), 13-21, 1988. J.J. Craig, Introduction to Robotics: Mechanics and control, 3rd edition, Addison-Wesley, pp. 209-210 , 2005. R. Rastegari, A.A. Moosavian, “Multiple Impedance Control of Space Free-Flying Robots Using Virtual Object Grasp”, Proc. Of IEEE/RSJ International Conference on Intelligent Robots and Systems, pp. 3125-3130, 2006.
[20] A. Nahvi, J. Hollerbach, and V. Hayward, “Calibration of a parallel robot using multiple kinematic closed loop”, Proc. IEEE Int. Conf. Robotics and Automation(ICRA’94), pp. 407-412, 1994.
[21] Y. Sun, and J. Hollerbach, “Observability index selection for robot calibration”, Proc. IEEE Int. Conf. Robotics and Automation, pp.831-836, 2008.
Figure 7. The best cooperative configuration for grasping.
391