Modelling and Control of A Modular Redundant Robot Manipulator
Modelling and Control of A Modular Redundant Robot Manipulator
Robot Manipulator
Sylvie CHARENTUS and Marc RENAUD
Laboratoire d'Automatique et d'Analyse des Syst~mes (LAAS)
7, avenue du Colonel Roche 31077 TOULOUSE C6dex (FRANCE)
Abstract
A new type of robot manipulator which possesses rigidity capabilities and a large
workspace is presented. This robot is composed of several modules which consist
of elementary manipulators with the parallel structure of the "Stewart Platform".
However, the structure of our new robot manipulator raises modelling difficulties.
First, one parallel module is studied and a new method of computation of the direct
kinematic model is proposed. Then, the computation of the complete direct and
inverse kinematic model of our robot manipulator is presented.
1 Introduction
Robot manipulators with an open kinematic chain structure [1] offer the advantage
of usually sweeping a wide workspaee but are intrinsically inadequate for positioning and
orientating accurately their end effector; indeed, position and orientation errors at the
different joints increase from the base outward to the end effector. Also, they suffer a
relative lack of rigidity which leads to a small useful mass ratio (weight carried by the end
effector over robot mass in the order of 1/35 for electric robots [2]). To overcome these
difficulties, various robot manipulators using a closed kinematic chain structure [1] have
been proposed or are being developed [3] [4]. Among these are the parallel manipulators
that employ segments to connect two links, one of which is fixed and serves as a base and
the other is mobile and used as end effector. These robots are instrinsically adequate for
positioning and orientating the mobile link relative to the fixed one because the different
position and orientation errors at the level of the different joints are not cumulative. In
addition, they are sufficiently rigid, leading to a useful mass ratio that sometimes exceed
1 (90 in the case of INRIA's prototype [2]). On the other hand, these robots only sweep
a limited workspace.
This paper presents a new, globaily-closed, kinematic chain structure. It combines
the ability to sweep a wide workspace of an open chain structure with the accuracy and
rigidity capabilities of parallel structures. In particular, this structure associates in series
n identical parallel structures. However, this new structure raises difficulties in modelling,
the latter being an essential step in control synthesis. The difficulties encountered in com-
puting both the inverse geometric model (often called inverse kinematic model) of open
509
chains and the direct geometric model (often called direct kinematic model) of parallel
structures arise at the same time. To overcome these drawbacks, the selected parallel
structure is first investigated and a new method of computation of the direct geometric
model of this structure is proposed. Then, the computation of the various kinematic mod-
els required for the control of the overall structure is surveyed and subsequently applied
to a particular robot manipulator possessing this structure and comprising a series of four
Stewart platforms. This robot, called robot LX, has been designed and realized by the
LOGABEX company.
Parallel structures have been the focus of much attention on the part of mathemati-
cians like Euler and Cauchy who determined the minimum number of segments ensuring
rigidity as well as the maximum number required to compute the forces exerted on the
segments as a function of the force and torque applied onto the mobile link relative to
the fixed one (in this case the structure is said to be isostatic). Thus, six segments are
needed to obtain a rigid, isostatic structure with six degrees of freedom. Numerous au-
thors attribute the first realization of such a structure to Stewart who devised, in 1965, an
aircraft simulator employing three complex segments fitted each with two electrical linear
jacks. In the proposed structure, the two links are called platforms and the structure
itself is sometimes referred to as Stewart's platform. Other constructions using six linear
actuators could be cited in which the six linear actuator end points are connected in pairs
at the corner of an equilateral triangle on at least one platform [5] [6] or in which the
linear actuator end points are connected such that there are six connection points on the
two platforms [7] [8]. Inouc [9] has utilized three sets of pantographs in licu of the six
linear actuators.
The advantage of this construction lies in the accuracy and rigidity capabilities. In
addition, it is composed of simple modular elements based on the actuator and plat-
form size and on the type of actuators selected, that is, electric, hydraulic or pneumatic.
Combined with an effort sensor and a hybrid force-position control, it is well suited for
assembly operations and may be used as a wrist on a robot [10] [7]. On the other hand,
this mechanism is rather difficult to model as detailed in the following.
2.2 Modelling
Modelling difficulties of this type of structure are the inverse of those encountered with
open structures. Indeed, it is the analytical computation of the direct geometric model
which allows achievement of the location (position and orientation) of the mobile platform
as a function of the actuator lengths, which is difficult whereas the analytical computation
of the inverse geometric model which allows expression of the actuator lengths as a function
of the mobile platform location, is straightforward.
510
B4
B5 b B3
A6
A1 A2
The calculation of the six linear actuator lengths (li, i = 1 ~o 6) is easily obtained from
the upper platform location (position of point O1 and orientation of frame 7E1 relative to
frame T~):
Since:
AiBi = - O o A i + 0~0~ + 01Bi for i = 1 to 6
it is also possible to write for the components:
2.2.2 C o m p u t a t i o n of t h e d i r e c t g e o m e t r i c m o d e l
This is a complex computation. Several researchers have put forward an iterative
solution involving a Jacobian matrix [8],[2]. In this paper 1, we present a solution which
reduces (at least in the particular case where the linear actuator end points are connected
in pairs at the corner of an equilateral triangle on at least one platform), the computation
of the direct geometric model to that of the roots of an n order polynomial equation. This
solution leads to the value n = 8 (asserted by Merlet [11] but has not been proved yet)
and improves our preceding result leading to the value n = 16 [12]. Also, this solution
rectifies some wrong assertions recently published in the literature [13]. Finally it may
be noticed that the literal expression of the 8 order polynomial equation is explicitly
obtained. Bcfore presenting this solution, the iterative method using a Jacobian matrix
is recalled.
/4=IIB~Holl , t s = l l B ~ n , II , t~=IIBoH111
'The results presented in this part differ from those revealed in Montreal during the symposium and
have been considerably improved.
512
x0 x2
y ~ t I-I2 z2Y2
14 11
B0
Figure 2: Simplifiedmodel
that is,
dB 2
z~ = +d + (y2 - --~, + d (i)
t~ = (=o + --
~s) ~ +(yo+~--~,'+B~ ~ +Zo~ (3)
c2 . v~ d.)
y2 = ~ - s m 02 - -T-(a2 - -- (11)
Z2 = C2 C O S 02 (12)
with
a2 = da
H2
12
n
02
go
BI
dB
B2
B0
Eqs (3) and (4) are the cartesian equations of a circle in space whose axis is B1B2; the
radius Co being given by:
514
This circle can be represented by three parametric equations using for example, as
parameter, the angle Oo between vector zo and plane BxB2Ho (00 E ] - ~r, +r]):
X0~ T
ao (13)
dB
~o = - c o sin Oo - 2 ¢ 5 (14)
Zo = co cos Oo (15)
with
ao = dB
Eqs (5) and (6) are the cartesian equations of a circle in space whose axis is B2Bo; the
radius cl being given by:
This circle can be represented by three parametric equations using for example, as
parameter, the angle 01 between vector z__qand plane B2BoH1 (01 E ] -- a', +Tr]):
al-- dB
Notice that if angular sensors transmitting the value of angles 00, O,, 0~ axe used, the
computation of the direct geometric model can be effected analytically. This solution has
been retained by Inoue [9] who proposed a platform differing from that of Stewart. If the
values of 00, 01,02 are not known, the computation is continued as follows:
The values of coordinates x~,yi, zi(i = 0,1, 2) obtained in Eqs (10) to (18) are substi-
tuted into the 3 Eqs (7), (8) and (9). A system of 3 coupled trigonometric equations with
3 unknowns 0o, 01, 02 is obtained:
with
v~(as - a,) dg(aB + ~)
Pi~" 2el , qi= 2ca for i = 0,1,2
and
17o = ~c2 (d2H + d2n (l~ + 312e+ 31~ + q) (lg - l])(l~ - lg))
c W" - 4 - 4~
• The two other Eqs (19) and (21) can be written in the form of a 2nd order linear
equations system with 2 unknowns cos 01 and sin 01:
in which G1, G2, G4, G6 are 2nd order polynomials in sin 0o only, and G3 = cos OoG'3,
G5 = cos OoG's with G[, G's 1st order polynomials in sin 00 only.
516
Using once again cos2 02 + sin 2 02 = 1, Eq (28) can be witten in the form:
(GI - G2) sin 2 0~ + G4 sin 82 + G2 + Ge + (G3 sin 0o + Gs) cos 02 = 0 (29)
M1 M2 M3 0
A(sin00)= 0 M1 M2 M3
N1N2 N3 0
0 NI N2 N3
= (M1N3 - M3NI) 2 - (MlJV2 - M2NI)(M21V3 - M3N2) = 0
Since M~ and N~ (i = 1, 2, 3) are 2nd order polynomials in sin 0o only, A(sin 0o) is
an 8 order polynomial in sin 3o only.
On the one hand, this demonstrates that the maximum number of real solutions
sin$o in the interval [-1, 1] is 8. On the other hand, it is shown in the following
that this maximum number can be obtained.
Since two values of cos 0o can be associated with each value of sin 0o (cos 0o =
V/1 - sin 2 0o and cos$o = -~/1 - sin 2 $o), the maximum number of reM solutions 00
in the interval ] - ~r, zc] is 16.
• At each value of 0o corresponds a unique value of 0] and 02 in the interval ] - ~r, zr]:
- sin02 = M~N,-M1N~
M I Nrt - M2 N I
and cos02 given by Eq (22).
- cos 0~ given by Eq (26) and sin 01 given by Eq (27).
Then the maximum number of reachable locations is 16 and the example shows here-
after that this maximum number can be obtained. Notice that the two locations corre-
sponding to the two opposite values of cos #0 are symmetrical with respect to the lower
platform, as shown in [16], and such that the coordinate z0 is either positive or negative.
Balrstow's numerical method has been used to compute the roots of this polynomial
equation.
517
Example:
C o m p u t a t i o n of t h e p l a t f o r m locations based on t h e six a c t u a t o r lengths a n d t h e
m o d u l e geometry.
Let:
11 = 23.0000 , 12 = 23.5000 , /3--24.5000
dH-----6V/3 , ds=13v~
Computation of constants:
degree 8 : 4490.4291
degree 7 : 13549.0803
degree 6 : 16123.8510
degree 5 : 9416.4307
degree 4 : 2650.0159
degree 3 : 240.1017
degree 2 : -32.3998
degree 1 : -6.9443
degree 0 : -0.2695
sinOo GO yo zo xl Yl zl x2 Y2 z2
-011921 0J5385 -2.3756 21.0731 -6.4733 -3.1668 13.4436 -7.0558 4.6699 20.2441
-0.2089 0.5385 -2.0139 20.9990 7.8413 5.0977 18.9754 7.6732 -3.8340 13.6653
-0.0573 0.5385 -5.2707 21.4377 5.3519 3.6604 19.1867 -4.9753 3.4687 20.3322
-0.6034 0.5385 6.4560 17.1239 -4.8294 -2.2177 15.1360 5.5217 -2.5918 15.9815
-0.6226 0.5385 6.8692 16.8033 -4.5683 -2.0670 15.3661 -9.3734 6.0079 19.8053
-0.7243 0.5385 9.0525 14.8056 9.8485 6.2566 18.4806 2.0058 -0.5619 18.4676
-0.7388 0.5385 9.3642 14.4711 9.4822 6.0451 18.5935 1.0387 -0.0036 18.9428
0.1300 0.5385 -9.2910 21.2907 -4.0665 -1.7773 15.7827 6.2410 -3.0071 15.2912
C o n c l u d i n g r e m a r k o n t h e d i r e c t g e o m e t r i c m o d e l c o m p u t a t i o n : The approach
proposed presents a great advantage: it yields all the solutions of the direct model and
then deletes the convergence problems associated with iterative procedures.
2.3.2 Control
It may seem simple, in the first place, to carry out the control of this type of paral-
lel robot manipulator since the inverse geometric model that allows computation of the
actuator lengths as a function of the upper platform location is explicit. However, the
analysis of this structure must be continued to highlight the existence of singularities
that are awkward for the control. Thus, if the trajectory to be followed in the location
workspace lies exactly in the same aspect, then the singularity problem will not exist at
the level of control.
3 A p p l i c a t i o n of parallel structures: r o b o t m a n i p u -
lator c o m p o s e d of n parallel s t r u c t u r e s c o n n e c t e d
in series
3.1 Presentation
A parallel robot manipulator (referred to in the following as a module) possesses a
small workspace. But if several modules are stacked in series, the manipulator will have a
greater workspace and will maintain the major characteristics of a module, that is, rigidity,
ease of construction and ability to lift heavy loads. These manipulators consisting of n
parallel structures connected in series are then highly redundant since they possess 6n
degrees of mobility ( six per modules), this number exceeding the six degrees of freedom
of the end effector as soon as at least two modules are assembled. This redundancy
complicates control synthesis but nonetheless enables the robot, on the one hand, to
avoid the possible obstacles in its workspace and, on the other, to reconfigure itself for
continuing the task in case of the actuator becoming blocked.
These robot manipulators may be considered from two viewpoints. If it is assumed
that the 6n generalized coordinates are the 6n actuator lengths, they then possess a closed
chain structure and computation of their direct geometric model is highly complex. On
the other hand, if the 6n generalized coordinates are assumed to be the 6n location
coordinates of the n upper platforms of each module, then~ they have an open chain
structure - each module appearing as a complex joint - and computation of their direct
geometric model is straightforward. This is why this second viewpoint has been retained
in the following paragraph.
3.2 Modelling
In the following:
• operational coordinates refer to location coordinates of the end effector in frame T~0
linked to the robot base. They are represented by vector X E R 6.
• generalized coordinates stand for the location coordinates of the upper platform
of each module. These generalized coordinates define the overall configuration of
the robot. They are represented by vector Q = L~l,q2,...,q,] E / ~ n where the 6n
generalized coordinates qlj (j = 1 to 6) are the components of the n generalized
521
vectors 5~(i = 1 to n) and where n is the number of modules composing the robot.
An ortho$onal frame TQ is associated with each upper platform of each module i.
To,. = ...
where ~_l,i(ql) , is the homogeneous transformation matrix from frame TQ_I to frame
7~i, function of the generalized coordinates qij.
X can be obtained from T0,. and this model is classically denoted by X= f(Q).
• The Jacobian matrix of dimension 6x6n is derived from the direct geometric model
X=f(Q) in the form:
OX
J(Q) = --~(Q)
Ji.. = j r ( j j,)-i
1
Robot configuration{2
1
Computation of the Jacob/an matmt J
[
Figure 5: Iterative algorithm for the computation of the robot inverse model
3.3.2 Control
To carry out position control, the robot inverse model together with the inverse model
of each module must be employed.
From Fig. (6) robot singularities may exist at different levels. In the aforementioned
study of the parallel structures, we have highhghted singularities associated with the
523
geometry of the structure itself. These naturally reappear during assembly in series of
several modules; the best solution is to limit the workspace of each module in order to
reject these singularities outside the domain. But other singularities of a kinematic nature
may occur as a result of the use of the inverse matrix.
3.6 Simulation
Fig. (8) represents the cross section of the position workspace of a module.
One configuration of the robot LX is depicted in Fig (9). The program computes a
524
rTTT]-~-v-rTT_V~.~_$TTTVT-T-T-T-r TT]TT-I
LI J I I I I I I . ~ ~ . ~ . J _ L I I II I ! !! !!
t l I I I II.l~f'/'Xv~~
ltl : 'I',IIIII
I I I 1_IL--'~[r~-~pTi I t I I t f-'I"r.,I~le~4k~bLl t I 1 1
-------~1 I I I I I I I"1_'~1t I I
]tl]]]ll ~ ~ '
l lital I~ ~ , . : _L
robot configuration, that is, the generalized coordinates and the actuator lengths from
the desired operational coordinates and is usually run for n modules.
tt
4 Conclusion
In this paper, the major characteristics of a parallel robot manipulator have been
highlighted, i.e., rigidity, ease of construction and ability to lift heavy loads. In particular,
LOGABEX's modular, redundant robot manipulator LX which constitutes an original and
patented application, has been presented.
The modelling of Stewart's platform as well as that of the robot LX, which is needed for
control synthesis, has also been surveyed. Our contribution has primarily been concerned
with a new method of computation of a module's direct geometric mode[ which furnishes
all the solutions and the computation of the robot inverse model involving an iterative
procedure utilizing a Jacobian matrix.
Nevertheless, several areas must still be investigated especially the modelling of such
major domains as the characterization of the workspace and that of singularities. As
to the robot, this redundant structure is interesting in ordcr to implement and test new
controls, notably in a clustered environment [21] [22].
5 Acknowledgments
The authors are grateful to Logabex 3 for providing the pictures and a movie of the
robot LX.
References
[1] I. Artobolevski. Th~orie des mdcanismes et des machines. Technique Sovi6tique.
Editions Mir Moscou, 1977.
[4] V. Hayward and R. Kurtz. Modeling of a parallel wrist mechanism with actuator re-
dundancy. Technical report, McGill Research Center for Intelligent Machines, McGill
University, Montr&~l, Canada, January 1989.
[5] E.F. Fichter. A Stewart Platform-based manipulator : general theory aaad practical
construction. The International Journal of Robotics Research, Vol.5(No 2):157-182,
Summer 1986.
[6] H. McCallion and P.D. Truong. The analysis of a six-degree-of-freedom work station
for mechanised assembly. In Proceedings of the Fifth World Congress on Theory
of Machines and Mechanisms, pages 611-616. The American Society of Mechanical
Engineers, July 1979.
[12] S. Charentus, C. Diaz, and M. Renaud. Modular serial parallel redundant robot. In
Preprlnts IMA CS on System Modelling and Simulation, Getraro Italy, pages 57-63,
September 1988.
527
[13] P. Nanua and K.J. Waldron. Direct kinematic solution of a Stewart Platform.
In IEEE International Conference on Robotics and Automation, Scottsdale (USA),
pages 431--437, May 1989.
[14] A. I~bert. Commande hybride position-force. Mise en oeuvre et exp&imentation
sur un micro-manipulateur parall~le. Th~se de docteur ing~nieur, Ecole Nationale
Sup6rieure de l'Adronantique et de l'Espace, December 1986.
[15] B. Gorla and M. Renaud. ModUles des robots-manipulateurs. Application ~ leur
eommande. CEPADUES Ed. Toulouse. France., 1984.
[16] K.H. Hunt. Kinematic geometry of mechanisms. Oxford engineering science series.
Clarendon Press, Oxford, 1978.
[17] J.P. Merlet. Parallel manipulators.Part 2 : Theory.Singular configurations and Grass-
mann geometry. Rapport de recherche No 791, Institut National de Recherche en
Informatique et en Automatique (I.N.R.I.A.), February 1988.
[18] P. Borrel. Contribution b. la mod61isation g&~m~trique des robots manipulateurs.
Application b, la conception assistde par ordinateur. Th~se d'dtat, Universit~ des
Sciences et Techniques du Languedoc, Montpellier, July 1986.
[19] T. Berthomieu. Etude d'un micro-manipulateur parall~le et de son couplage avec
un robot porteur. Th~se de docteur ingSnieur, Ecole Nationale Sup6rieure de
l'A6ronautique et de l'Espace, January 1989.
[20] C.A. Klein and C.H. Huang. Review of pseudoinverse control for use with kinemati-
cally redundant manipulators. IEEE Transactions on Systems, Man, and Cybernet-
ics, Vol.SMC-13(No.3):245-250, march/april 1983.
[21] B. Espiau. An overview of local environment sensing in robotics applications. In
NATO advanced Research Workshop: Sensors and Sensory Systems for Advanced
Robotics, Maratea (Italy), April 1986.
[22] T. Yoshikawa. Manipulability and redundancy control of robotic mechanisms. In
IEEE International Conference on Robotics and Automation, St Louis (USA), pages
1004-1009, 1985.