Kinematics of multiple-arm robots with symmetric tasks Magdi S. Mahmoud Electrical and Computer Engineering
Mohammad
D. Rajah
Mechanical
Engineering
Department,
Department,
Kuwait University, Safat, Kuwait
Kuwait University, Safat, Kuwait
This paper develops the relationships between the end-effector positionlorientation of multiple-arm robots, organized as master and several slaves, for the class of symmetric tasks about a plane or a point. Given the position/orientation matrix of the master arms, the instantaneous elements of those of the slave arms are subsequently derived. This leads to the development of kinematic equations of slave arms. Two fundamental configurations are considered. One is a three-arm (master and two slaves) configuration, and the other is afour-arm (master and three slaves) configuration. An illustrative example is given to indicate the analytical procedure. Keywords: robot,
end-effector, kinematics, multiarm, multiple-arm robot, coordinated robots
Introduction Most automated manufacturing tasks are performed by special-purpose machines that are designed to undertake prespecified functions in a manufacturing process. 1,2By and large, the inflexibility of these machines makes the computer-controlled manipulators more attractive and cost-effective in various manufacturing and assembly tasks. Industrial robots have been introduced as general-purpose manipulators to enhance the operational performance in production and machine tools.3 A prerequisite to the successful utilization of robot technology is a thorough understanding of the modelling, kinematics, and control of robot arms and manipulator systems. Many issues have to be resolved before widespread use is feasible in production lines and automated industry. Extensive research effort has been directed toward improving the overall performance of the manipulator system, a recent survey of which can be found in Ref. 4. This research work has the objective of examining the mathematical relationship between the end-effecters of multiarm robotic systems for the class of operations with symmetric tasks. In the next section we provide a motivation for the
Address reprint requests to Dr. Mahmoud at the Electrical puter Engineering Department, Kuwait University, P.O. Safat-13060, Kuwait. Received
3 May
1989; accepted
0 1990 Butterworth-Heinemann
5 February
1990
and ComBox 5969,
robotic systems. The following section contains the description of a three-arm configuration. Types of symmetric motion are analyzed next, and certain kinematic relationships are developed for the cases of plane and point symmetry. Then the obtained results are directly extended to the case of a four-arm configuration, and an illustrative example is worked out to support the developed results. Motivation
for coordinated
multiple-arm
robot
Given the growing need to increase overall industrial productivity and enhance automation, many manufacturing operations tend to integrate computerized units and to economize space facilities. The use of robot technology has been successful to the extent that complex industries have now started to acquire multiplearm robots.‘,2 Indeed, the robot control unit would be more complicated if two or more robots were to cooperate rather than each work by itself.5,6 The following are some typical cases of and motivations for cooperation between robots?,’ 1. In assembly
operations, each robot by itself can do part of the task but is able to perform some or all of the tasks of the other robot. The reliability of production will definitely increase as a result of such cooperation. This in turn will require some degree of coordination to detect failures, to organize the sequence of tasks, and to transfer responsibilities among robots.
Appl. Math. Modelling,
1990, Vol. 14, August
427
Multiple-arm
robots for symmetric
tasks: M. S. Mahmoud
and M. D. Rajab
2. Robots share a task while working together
on different portions of the same part. This will eventually reduce the total cycle time. 3. Each robot is doing part of the total task, and the cooperation is performed through a coordinating unit (shared buffer). It is expected that such an arrangement will decrease space, cycle time, and materialhandling equipment that is necessary in other related tasks. The price paid is that more functions will be related for the controlling unit such as systematical path planning, force compensation, and collision avoidance. 4. Some production operations require more than one robot, for example, lifting a long tube of water so that it is level at all times and press line loading/unloading2 at a specified speed. 5. In efficient utilization of diverse capabilities of different robots, various tasks could be handled neatly and according to an appropriate schedule. A multiple-robot assembly cell for batch manufacturing is described in Ref. 7, and experimental work for performing complicated assembly tasks with multiarms is reported in Ref. 8. Our interest here is to investigate the kinematic relations of coordinated multiarm robots, addressed as a master and several slaves, for a class of operations in which the end-effecters movements are pairwise symmetrical about a plane or a point. Three-arm
configuration
In this paper we shall analyze two basic multiarm configurations; one is a three-arm configuration, and the other is a four-arm configuration. We start with a threearm robot arrangement under the following conditions: 1. The bases of the three arms are located on an equilateral triangle of side d. 2. One of the three arms is assigned to act as a master, and the other two arms follow as slaves. 3. The three end-effector movements have a masterslave symmetry property about a plane or a point. Such an arrangement is depicted in Figure I along with the planes of symmetry. We note that the choice of master and slave arms is quite arbitrary in view of the cyclic nature of the position of the robot bases. Without loss of generality we assume that the reference coordinate system is chosen at the base of the master arm M. We define the position and orientation of an object in the base coordinate system as
(Ml
6,)
I Figure 1.
A three-arm
configuration
with possible
planes of
symmetry
with respect to the slave arm base are given by Tjs = HjT,,,
j=
1,2
(2)
where the (4 x 4) matrices Hj define the necessary master-slave transformation with j = I (2) stands for slave 1 (2). Note that [Hj] ~ l characterizes the frame x&, y&, zjo of the slave Sj arm with respect to the reference coordinate system. Specification of the matrix Hj depends on the arrangement of the robot arms. For the circular arrangement of Figure I the coordinate transformation matrices for the frames x6, y& zh (at slave S,) and xi, y& ~6 (at slave SJ respect to the reference coordinate x0, y,, i. at the master M, are given by r cos rcll - sin *, H’ = 0
Lo r cos *2 -sin& H* = 0
I
0
sin $i cos $, 0
0 0
(1 - cos $,)rl - r sin *,
1
0
00 1 _I sin $2 0 (1 - cos @Jr1 -rsin** cos *2 0 0 1 0 J 0
0
(3)
(4)
1
(1)
where r = d/V? is the radius of the circle, d is the equilateral triangle side, and $,, $2 are the angles that the axes x4, x& respectively, make with the reference axis x0 as shown in Figure 2. The present work is confined to the types of operations in which the tasks require symmetric motion of the master-slave end-effecters.
where the subscript m stands for “with reference to M base.” The vectors n, s, a, and p are the normal, slide, approach, and position vectors, respectively, of the end-effector.3 The same position and orientation
The problem addressed here is that of determining the T” matrix for the slave arm end-effecters 1 and 2. Two cases will be studied: symmetry about a plane and symmetry about a point.
-n, T,,, =
s, ax
px
ny sy a,
py
n, -0
428
Appl.
s, 0
Math.
a, 0
pt
1I
Modelling,
Types of symmetric
1990, Vol.
14, August
motion
Multiple-arm
robots for symmetric
tasks: M. S. Mahmoud
and M. D. Rajab
sj
aj
<
11
I
y.
13,)
I xo I ~~~~~~~~_~
A
biPj Plane of Symmetry I
64)
f I
yo Figure 2.
Slave j
fi
t a
Possible arrangements
‘jj
jP
Master
c Plane
‘S
symmetry
In this case the motion of the pairs of arms (MIS,) and (MI&) is symmetric about planes P,, and Pz2, respectively, as shown in Figure 1. Note that the achievement of a symmetric position and orientation of the end-effector must be physically possible by the slave arm S1 or S2 and must be evaluated by the robot controller. We consider the T,,, in (1) is specified at all instants and seek to determine TJ and Tz. Recall from Ref. 3 that in the orientation matrix the normal vector is always orthogonal to the slide and approach vectors, and so its direction is always determined from the corresponding directions of the slide and approach vectors. Accordingly, to determine Tj, j = 1, 2 for the slave arm end-effector with respect to the reference coordinate system, it is necessary to find the position vector Pj, for the grasping point of the slave armj; the approach vector a’, symmetric to a; and the sliding vector d, symmetric to s. Figure 3 illustrates the relative positions of master and slave end-effecters. Therefore we need to calculate the components of the normal vector from the cross-product of sj and aj, that is, ni = sj x a.i
j=
1,2
(5)
Figure 3.
Symmetry
about a plane Pi,
condition
of plane symmetry entails that the vectors 1, 2, are normal to the plane Pii and hence the normalized components of Pj along the x0, yo, and lo directions in the reference frame are a+ &, Ye, respectively, where forj = 1, 2, p, pj, j
=
A, = da;
+ 6; + c$.
(8)
(yii = a,lA,, &lAji
(9)
yJ = cJIAji, 6, = d,lA,
(10)
such that qjx + pjy + -&z = sjj
(11)
is the normalized form of (7). Moreover, the distance between p and pj is twice as much as the distance of p (or pj) from the plane Pji. Given that the master endeffector, as defined by the position vector in (l), is the distance p from the plane of symmetry Pa, then the coordination of point pj of the slave end-effector Sj will assume the form
Detine
(12) But the distance p can be obtained by a translation coordinates9 in the form as the orientation matrices for the slave end-effecters whose components have to be determined subject to plane symmetry. Let the planes of symmetry PII and Pz2 be expressed, with respect to the reference coordinate system, in the form
Pii: ajx + bjiy + c,z = dii
j=
1,2
(7) where (aii, b,, cii), j = 1, 2, are the components of vectors normal to planes Pi, j = 1, 2, respectively. Rotation about one or more axes and normalization are always possible operations. In terms of (7) the
p = [d, - a,p,
- biip, - c,p,]lA,
= 8, - qjpx - &p,
of
(13)
- yjpz
Proceeding further, suppose that any vector (say, the slide, approach, or other) is defined by the points @ and v’ with coordinates
(14)
Appl. Math. Modelling,
1990, Vol. 14. Auaust
429
Multiple-arm
robots for symmetric
tasks: M. S. Mahmoud
and M. D. Rajab
It is readily evident from (12) and (13) that the points 4, +!Jsymmetric to Cp,9, respectively, will be given by
*=v’ +[Iajj
” j
a’1
4’
(16)
.‘$
Y!
where j = 1, 2, corresponding to the planes of symmetry Pl1, Pz2, respectively and p+,(p+J is the distance of the point Q, (1Ir)from the plane of symmetry. In view of (13) we have p$$= 6, - ff$Dx - p&,
- yjcDz
(17)
pJ, = 8, - ffjj*x - &VY - y$jyiz
(18)
Define the vector R = q - @ = [qX - @, q\Ir, Q,, qz - QJ’. Then it follows directly that its image (symmetric vector) can be expressed as w A R + 2(p, - p+)[CQ &j
yal’
(19)
But from (17) and (18) we get (P4 - P& 1 = cujiwx
-
@xl + Pj($y
- @‘y)
+ YJW’,
- @,,I
(20)
Therefore we conclude from (14)-(20) that the components of a vector v that is symmetric to a vector w=[w, WY w,] about the plane (11) can be obtained as v=
VX v, = w - 2[(u,
pji
HVZ
CYji yji]w pJ
(21)
1. the position vector of the slave arm end-effecters by using (12) and (13) forj = 1, 2; 2. the slide and approach vectors from (21), for j = 1, 2; and 3. the normal vector by computing (5) for j = 1, 2. It is interesting to note that when either of the planes of symmetry Pj becomes parallel to one of the planes of the reference frame (say, a, = c, = 0 and bj = l), then only the components (a,, s,, nz, and n,) will change their signs, and the position vector becomes (2dj - p,) instead of p,,. Similar rules apply to the cases (uj = 1, bji = c, = 0) and (cii = 1, a, = bj = 0). Point symmetry Given the results of plane symmetry, the case of point symmetry can be thought of as being equivalent to simultaneous plane symmetries about three planes intersecting at the prescribed point of symmetry. The selection of plane symmetries is arbitrary and can be chosen parallel to the reference coordinate planes. A
Appl. Math. Modelling,
1990, Vol. 14, August
/ .P
s
/
/
/
/’
S
n
/
0
(M) k
Figure 4.
Symmetry
a
about a point El
possible situation is depicted in Figure 4, in which it is clear that the orientation of the slave end-effector will be obtained by mere reversal of the directions of the approach and slide vectors. In view of (5) the normal vector is the one orthogonal to the approach and slide vectors. Let the point of symmetry be Ej, j = 1, 2, between the. master arm (M) and the slave arm (Sj) with coordinates (Ej,, Ej,, E’,). We consider three planes intersecting at Ejand at distances Ej,, Ej,, Ej, from the origin. From the foregoing discussion it immediately follows that the slave arm orientation matrix Tj, given the master arm matrix (1) can be expressed as n,
HY_ij
To sum up, once a general configuration of the master arm end-effector is specified in terms of the T, matrix in (l), we can obtain
430
J
y
2p,, pj
pj,O a ,/’
T’ =
nY
n, 0
-s,
-a,
-s,
-uY
-s, 0
-a, 0
2Ej, - px 2Ej, - pY 2Ej, - pz 1
Four-arm configuration The relevant information on the multiple-arm robot has been presented in the previous two sections. We expand now to the case of a four-arm robot as shown in Figure 5, from which it is clear that: 1. The four arms (M, S1, Sz, Sg) are located at the corners of a square of side 2r. 2. There are three planes for symmetric motion. Typical candidates are PII, Pz2, and P33. We consider that (1) defines the position and orientation of an object in the base coordinate system located at the master arm M. In view of the pairwise treatment (master/slave) pursued before, it is straightforward to see that (5)-(21) are valid for j = 1, 2, 3 in the case of plane symmetry. It is thus evident that, given the T, matrix in (l), we can obtain 1. the position vector of the three slave arm endeffecters from (12) and (13) for j = 1, 2, 3;
Multiple-arm
robots
for symmetric
tasks: M. S. Mahmoud
and M. D. Rajab
Plane 41
Plane P22
Table 1
Parameter
0 1 0 1 1 - Pv
With reference is given by
- 0.866 0.5 0 1 1 + 0.866p,
-
0.5p,
to Figure 1 the plane of symmetry
PII
PII: y = 0.5d
Simple geometry
will show that
p,z: - sin 60x + cos 6Oy = 0.5d : -0.866x + 0.5~ = 0.5d For d = 2 the application of (11) and (13) with j = 1, 2 results in the geometric representation given in Tu-
i (Plane ?I Figure 5.
A four-arm
ble 1.
From (12) and (23) we have the following. j = 1:
arrangement
2. the slide and approach
vectors using (21) forj = 1, 2, 3; and 3. the normal vector from the cross-product in (5) for j = 1, 2, 3.
When Pj becomes parallel to the yz-plane (implying that a, = 1, bii = c, = 0), then only the components (a,, s,, II,, n,) will change their signs, and the position vector becomes (2& - pJ in replace ofp,. By similarity we apply rules to the xz-plane (Q = cii = 0 and bji = 1) and the yz-plane (aji = bii = 0 and c, = 1). The case of point symmetry can be treated in parallel to the development of the three-arm configuration. Here we have three possible points of symmetry like E,, E,, E3 in Figure 5. The result is again given by (22) but withj = 1, 2, 3. Illustrative
example
Consider Standford manipulators forming a multiarm configuration. A possible setup corresponding to joint coordinates*0 is
E]
+2(1
= E]
-p._‘[%]
=[8i;p_]=[‘%]
j = 2:
[I [I[ 1 2
20
PX P:
=
P2
=
+ 2(1 + 0.866~~ - 0.5~~~)
0
L
0.5
6.536 21.321 0
The use of (21) plus the foregoing geometrical rameters yields the following. j = 1:
[j=[_;]
_
- 0.866_
6
0
pa-
[J=[%]
j = 2: [31;[_;]
[J=[OY;6:#
which gives a T,,, matrix
rl
1
0
Then from (5) we obtain
201
(23)
Appl.
Math. Modelling,
1990, Vol. 14, Auaust
431
Multiple-arm
robots for symmetric
tasks: M. S. Mahmoud
veloped for the class for symmetric tasks. Two basic configurations are considered: one is a three-arm (master and two slaves) configuration, and the other is a four-arm (master and three slaves) configuration. In this paper the instantaneous elements of the slave arm position/orientation matrix are determined, given those of the master arm at any instant. Subsequently, the kinematic equations for each slave arm can be solved to obtain the associated joint angles.
Finally, from (6) we arrive at ro
1
0
0 0 -1 0
-0.866 0 0
-0.5 T: =
201
- 0.5
r0.866
0 0
-6.5361 21.321 0 0
(25)
Acknowledgments
For the case of point symmetry we choose the points El = [0 1 O]l and E2 = [ -0.866 0.5 O]l. From (22) we have ro
-1
0
-201
(26)
This work was partially supported through the research and development activities of the Techno-Economic Division at the Kuwait Institute for Scientific Research, Kuwait.
References
and ro T: =
1 0 0
-1 0
01 00
0
-21.7321
0
-5 0 1
and M. D. Rajab
(27) 5
It can be verified that the initial T,,, matrix will be obtained if the plane symmetry and point symmetry are determined for the position/orientation matrices in (24) and (25) or (26) and (27), respectively. The case of a four-arm configuration can be dealt with in a similar way. Detailed analytic results can be found in Ref. 4.
6
Stefanides, E. J. Multiple-arm gantry design enhances robotic operations. Design News 1985, December 2, 56-58 Chimes, P. R. Multiple-arm robot control systems. Robotics Age 1985, October, 5-10 George Lee, C. S. Robot arm kinematics, dynamics, and control. IEEE Trans. Comput. 1982, December, 62-80 Mahmoud, M. S. and El-Kaswani, I. M. Robot arm modeling and dynamics. Technical Rept. ASD-3 1, Techno-Economics Div., Kuwait Inst. for Scientific Research, Kuwait, February 1989 Maimon, 0. Z. A multi robot control experimental system with random parts arrival. Proceedings of the IEEE International Conference on Robotics and Automation, March 1985, pp. 895-900 Konstantinov, M. S. and Markov M. D. Performance and application of two-hand robots for assembly operations. Proceedings of the Sixth World Congress on Theory of Machines and Mechanisms, New Delhi, 1983, pp. 1029-1031
Maimon, 0. Z. and Nof, S. Y. Coordination of robots sharing assembly tasks. 1. Dynamic Sysf. Measurement and Control 1985, 107, 299-307
Conclusions Analytical relationships between the end-effector position/orientation of multiple-arm configuration, organized as groups of master/slave pairs have been de-
432
Appl. Math. Modelling,
1990, Vol. 14, August
Acker, F. E., Ince, I. A. and Ottinger, B. D. TROIKABOT: A multi-armed assembly robot. Proceedings of the Ninth Robots Conference, 1985, pp. 15.1-15.19 Salas, S. L. Ca/culus. John Wiley, New York, 1982 Paul, R. P. Robot Manipulators: Mathematics, Programming and Control. MIT Press, Cambridge, Mass., 1981