IEEE TRANSACTIONS ON ROBOBTICS AND AUTOMATION, VOL. 9, NO. 1, FEBRUARY 1993

0.6

/I

0

1

;

2

2

3

4

0.4

0

.....> f

1

2

3

4

--.>
..f

(b)

(a)

85

1141 D. Y. Kim, J. J. Kim, P. Meer, D. Mintz, and A. Rosenfeld, “Robust
computer vision: A least-median of squares based approach,” in Proc.
DARPA Image Understanding Workshop, 1989.
[ 151 S. S. Sinha and B. G. Schunck, “A two-stage algorithm for discontinuitypreserving surface reconstruction,” IEEE Trans. Pattern Anal. Machine
Infell., vol. 14, pp. 36-55, Jan. 1992.
[I61 A. E. Beaton and J. W. Tukey, “The fitting of power series, meaning
polynomials, illustrated on band-spectroscopic data,” Technometrics,
vol. 16, pp. 147-185, May 1974.
[I71 D. Andrews, P. Bickel, F. Hampel, P. Huber, W. Rogers, and J.
Tukey, Robust Estimates of Location: Survey and Advances. Princeton:
Princeton Universitv Press. 1972.
[I81 P. W. Holland and’R. E. Welsch, “Robust regression using iteratively
reweighted least-squares,” Commun. Statist.-Theor. Meth., vol. A6, no.
9, pp. 813-827, 1977.
[I91 C. Goodall, “M-estimator of location: An outline of the theory,” inUnderstanding Robust and Exploraton. Data Analysis, D. C. Hoaglin,
F. Mosteller, and J . W. Tukey, Eds. New York: 1983, pp. 339403.

(c)Fig. 11. The percent relative error in (a) the Gaussian curvature and (b) themean curvature as a function of tuning constant for the synthetic patch. Solid
curve: clean. Dashed curve: with normal noise. Dotted curve: normal and an
outlier. Dot-dash curve: with outliers. (c) Real spherical patch.

Dynamic Control of a Manipulator with
Passive Joints in Operational Space
Hirohiko Arai, Kazuo Tanie, and Susumu Tachi

Abstract-We present a method to control a manipulator with passive
joints, which have no actuators, in operational space. The equation of
motion is described in terms of operational coordinates. The coordinates
are separated into active and passive components. The acceleration of
the active components can be arbitrarily adjusted by using the coupling
characteristics of manipulator dynamics. This method is also extended
to path tracking control of a manipulator with passive joints. A desired
path is geometrically specified in operational space. The position of themanipulator is controlled to follow the path. In this method, a pathcoordinate system based on the path is defined in operational space.
The path coordinates consist of a component parallel to the path andcomponents normal to the path. The acceleration of the components
normal to the path is controlled according to feedback based on tracking
error by using the dynamic coupling among the components. This in turnkeeps the manipulator on the path. The effectiveness of the method isverified by experiments using a two-degree-of-freedommanipulator witha passive joint.

I. INTRODUCTION(c)(4

Fig. 12. Real range image of a jumble of packages. (a) Raw :data including
noise and outliers. Reconstructed biquadratic surfaces to maximal rectangular
footprints. (b) Cylinder. (c) Rectanguler box. (d) All objects.
R. M. Haralick, “Computer vision theory: The lack thereof,” Comput.
Vision, Graphics, Image Process., vol. 36, pp. 372-386, 1986.
W. Forstner, “Reliability analysis of parameter estimation in linear
models with application to mensuration problems in computer vision,”
Comput. Ksion. Graphics, Image Process., vol. 40, pp. 273-310, 1987.
P. J. Bed, J. B. Birch, and L. T. Watson, “Robust window operators,”in Proc. In?. Con$ Comput. Vision (ICCV ‘88), 1988.
R. M. Haralick, H. Joo, C. Lee, X. Zhuang, and V. V. M. Kim,
“Pose estimation from corresponding point data,” IEEE Trans. Syst. Man
Cybem., vol. 19, pp. 14261446, 1989.
D. S. Chen, “A data-driven intermediate level feature extraction algorithm,” IEEE Trans. Pattern Anal. Machine Intell., vol. 1 I , no. 7, pp.
749-758, 1988.

The number of degrees of freedom of a conventional manipulator isequal to the number of joint actuators. Since the mass of the actuatorof a serial-type manipulator is a load for the next actuator, the size
increasefrom the wrist joint to the
Of thebase joint. As a result, the base joint must be equipped with a hugeactuator compared to the load of the manipulator. In order to decrease
the weight, cost, and energy consumption of a manipulator, various
methods have been proposed for controlling a manipulator that has
more degrees of freedom than actuators [I]. However, these methods

Manuscript received August 8, 1991; revised April 17, 1992. A portionof this work was presented at the 1991 IEEE International Conference on
Robotics and Automation, Sacramento, CA, April 9-11, 1991, and at the1991 IEEERSJ International Workshop on Intelligent Robots and Systems,
Osaka, Japan, November 2 4 , 1991.
H. Arai and K. Tanie are with the Mechanical Engineering Laboratory,
AIST, MITI, 1-2 Namiki, Tsukuba, Ibaraki 305, Japan.
S. Tachi is with RCAST, The University of Tokyo, 4-6-1 Komaba, Meguroku, Tokyo 153, Japan.
IEEE Log Number 9205078.

1042-296X/93$03.00 O 1993 IEEE

..
86

IEEE TRANSACTIONS ON ROBOBTICS AND AUTOMATION, VOL. 9, NO. I , FEBRUARY 1993

require special mechanisms in addition to basic links and joints. In
this paper, a method is presented for controlling a manipulator thathas more joints than actuators without using additional mechanisms
except joint brakes.
The dynamics of a manipulator have nonlinear and coupling
characteristics. When each joint is controlled by a local linear
feedback loop, these factors result in disturbances. The eliminationof such dynamic disturbances has been one of the major problems
in manipulator control [2]-[4]. A design theory for a manipulator
with neither nonlinearities nor dynamic coupling has also been
proposed [SI. However, the effects of these disturbances are available
to drive a joint that in itself does not have an actuator. Such
dynamic characteristics are actively used in human handling tasks.
For example, when a heavy load is handled, all the muscles of thehuman arm are not necessarily used. Some joints, e.g., wrist joints,
are kept free, and the inertia of the load is utilized effectively. Sucha dynamic skill will also be significant for robot control. Some robot
control schemes that utilize dynamic coupling effects have previously
been proposed [6], [7].
As a means of controlling a manipulator with more joints thanactuators without using additional mechanisms, we propose controlling passive joints by using dynamic coupling [8]. We developed analgorithm for point-to-point control of the manipulator and applied it
to a two-degree-of-freedom (2-DOF) manipulator [9]. In this method,a manipulator is composed of two types of joints: active and passive.
Each active joint consists of an actuator and a position sensor (e.g.,
an encoder). Each passive joint consists of a holding brake and aposition sensor. When the brakes of the passive joints are engaged,
the active joints can be controlled without affecting the state of thepassive joints. When the brakes are released, the passive joints canrotate freely. The motion of the active joints generates accelerationof the passive joints via the coupling characteristics of manipulator
dynamics. The passive joints can be controlled indirectly in this manner. The total position of the manipulator is controlled by combining
these two control modes. Jain and Rodriguez independentlyproposeda similar techniqueto control a manipulator with passive hinges. They
also developed an efficient dynamics algorithm using spatial operator
algebra [lo].
When some of the joint actuators of a manipulator are exchanged
for holding brakes with this method, we can build a lightweight,
energy-saving, low-cost manipulator. We can take advantage ofthese merits by applying the method to simple assembly robots,
control of redundant manipulators, etc. Space applications (e.g.,space manipulators, expansion of space structure) may be feasible.
This method can also be applied to failure recovery control of amanipulator [111.
Control with the passive joints released is an essential part ofthis method. In [8] and [9], we controlled the manipulator in joint
space. In this approach, a desired trajectory is assigned to the passive
joints, and the motion and torque of the active joints is calculated torealize the desired motion of the passive joints. The motion of theactive joints is determined by the desired trajectory of the passive
joints and the dynamic coupling among the joints. Consequently, themotion of the tip of the manipulator cannot be prescribed. However,the position of the tip in operational space, e.g., Cartesian space, isusually important for practical manipulator tasks. It is necessary tocontrol the path along which the tip moves if the manipulator is to
avoid collision with an obstacle.
In this paper, we extend our previous work on control in joint space
to control in operational space. In Section 11, the control scheme inoperational space is presented. The equation of motion is represented
in terms of operational coordinates. The operational coordinates
are separated into active components and passive components. The

desired acceleration is generated at the active components, which
are equal in number to the active joints, by using dynamic coupling
among the components. This method is extended to path-tracking
control of a manipulator with passive joints. A desired path isgeometrically specified in operational space. The tip position of themanipulator is controlled to follow the desired path. In Section 111,
path coordinates are defined as a kind of operational coordinate
system based on the desired path. The path coordinates consist of
a component parallel to the desired path and components normal tothe desired path. In Section IV,a method for path-tracking control is
described. The acceleration of the components normal to the desired
path is controlled by using the dynamic coupling among components.
This in turn keeps the manipulator on the desired path. In Section
V, the effectiveness of the proposed methods is demonstrated byexperiments using a 2-DOFmanipulator with a passive joint.
11. CONTROL IN OPERATIONAL SPACE
A. Equation of Motion with Operational Coordinutes

An n-DOFmanipulator is considered here. The operationalspace isassumed to be n-dimensional. We assume T DOF of the manipulator
are active joints. The remaining n - T DOF are passive joints withholding brakes instead of actuators.
The equation of motion of the manipulator in joint space can be
written as

where

joint angle vector,
joint torque vector,
gravity torque vector,
Coriolis and centrifugal torque vector,
inertia matrix,
viscous friction matrix.
The elements of U are rearranged as
U = [T'

01'.

T E R
' is the torque of the active joints, and the torque of thepassive joints is zero. Accordingly, M and b are also rearranged andpartitioned as follows:(3)
where M aE IRrX",Mp
E R("-')X",b,E IR', and b, E Kin-'.
The equation of motion of the manipulator is rewritten in termsof operational coordinates p E IR". We assume that the operational
coordinates and the joint coordinates are related as follows:p = J9(4)

where J ( 0 ) E IR"'"
is a Jacobian matrix. When (4) is differentiatedwith respect to time, we obtainp = Jli+J@(5)

If J is nonsingular= J-'(p - ie).

Note that the manipulator has R DOF and is nonredundant. Whenthe manipulator is redundant, matrix J is not invertible. One way toIEEE TRANSACTIONS ON ROBOBTICS AND AUTOMATION. VOL. 9. NO. I . FEBRUARY 1993

invert J is the extended Jacobian method [ 121, in which auxiliary
coordinates are added to the operational coordinates so that J canbe inverted.
The I' components of the operational coordinates, which should becontrolled, are chosen and grouped as z. The remaining components
are grouped as y. Here, p and H
J - ' are rearranged andpartitioned as follows:87

alculation of eq.( 1 l)pActive Joints
x

=

(7)
where z E m ' . y E I R " - ' . H , E I R r t X ' and.
H , , E IR"x("-".
We define z as an active component and y as a passive component.
The desired motion is assigned to the active components while thepassive components are controlled so as to realize the desired motionof the active components. When ( 3 ) , (6), and (7) are substituted in( I ) , we obtain

M,lH,k
M,H,,Z+ M i l H , y M , , H J b + b,, = T+ M p H p $ M , H J i + b , = 0.
-

(8a)

-

(8b)

The equation of motion is represented in terms of the active andpassive operational coordinates. Moreover, it is divided into (8a).
which is related to torque of the active joints, and (8b), which isrelated to torque of the passive joints.

U. Control in Operational SpaceThe desired acceleration can be generated arbitrarily at components
equal in number to the active joints. Control of the active components
is given priority, and the computed torque method [2] is applied.
It prescribes a desired trajectory for the active components andgenerates the motion of the passive components in order to realize
the desired trajectory of the active components.
The desired position Z d , velocity x d , and acceleration ?d of theactive components are obtained from the desired trajectory. The
following PID control is applied to suppress the tracking error:

Fig. 1.

0

Passive Joints/Kinematic ~ a ~ a l m i i

41

Control system in operational space

C. Function o j Brakes
The brakes of the passive joints are used to set up the initialconditions. When the brakes are engaged, the manipulator has r
degrees of freedom. The passive joints are fixed, and the angularvelocity is zero. The number of the active components is r . The
active components are represented by a kinematic equation including
the angle of the active joints. Therefore, the initial angle and angularvelocity of the active joints that realize initial position zu and initial
velocity ZO of the active components can be obtained by inverse
kinematics.
The initial conditions of the passive components cannot be set
up by the active joints alone. If the initial position of the passive
components needs to be set up, it is necessary to use the point-topoint algorithm of (81. The initial velocity of the passive components
is determind by the initial velocity of the active components.
The final conditions of the passive components are determinedby the control hysteresis of the active components. Even if themanipulator is at rest in the initial condition and the final velocityof the active components is controlled at zero, the final velocity ofthe passive components is generally not zero. In the experiments, weforced the passive joints to stop with the brake. In this method, thepassive joints cannot stop at an exact angle because of the time delayin the brake operation. It is necessary to switch from operational
space control to joint space control and to stop the passive joints
before braking if the purpose of the control is positioning.

D. Dynamic Singulurig
The conditions required for this control method are as follows:J

5 ; = ?d + Kv(&d - Z)$- Kp(Zd - 2)+ b';( z d - 2)t / f(9)where K , . K p . and K; E IR' are the diagonal gain matrices.
When measured values of the joint angle and velocity are substituted in H and H of (8a) and (8b), each component of M . H . J . andb is determined. If 2; of (9) is assigned to the acceleration Z of theactive component 2 , (8b) can be considered as a linear equation withregard to y. If M,,B,, E l R R ( " ~ " i x ( " - is'' i nonsingular (and hence
invertible), (8b) can be solved uniquely as. .

y = (M,B,,)-'(-M,H,,Z;+M,HJH- bIJ).

(IO)

The nonsingularities of J and M , H , are essential for this method.
The singularity of M,,H,, (dynamic singularity) will be discussed
later.
When ( I O ) is substituted in (8a). the torque T to realize theacceleration 2; can be determined.

When we apply this torque T to the active joints, we will obtain theacceleration 2;. The active components are guaranteed to converge
to the desired values if K,. K p , and Ki are chosen such that all thepoles of the feedback system are located in the left-half plane. Fig. 1
represents a block diagram of the control system.

1 ) Matrix H can be obtained. (Jacobian matrix J is invertible.)2) Equation (8b) has a unique solution. ( j i is determined uniquely.)3) In ( I 1 ). 7 and 2; show one-to-one correspondence.
Condition 1 means that the manipulator must be kinematicallynonsingular. Condition 2 is equivalent to the nonsingularity of matrix
M,,H,, (det[M,H,] # 0). Condition 3 is the nonsingularity ofmatrix { M , - ~ ~ ~ H , ~ ( ~ ~ H ~ , ) Conditions- ' M , } H2 ~and, .3 aremathematically equivalent. The acceleration of the passive components cannot influence the acceleration of the active components
in the positions where M , H , is singular. The acceleration of theactive components is determined by the position and velocity of themanipulator. regardless of the acceleration of the passive components.
Therefore, this method is difficult to use near these dynamic singularpoints.
The condition of dynamic singularity (tl(.t[M,H,] = 0) provides
one degree of constraint. For example, when a manipulator has 3
DOF, the dynamic singular points compose a surface. The manipulator cannot pass through this surface in the proposed method. An
algorithm to solve this problem is necessary. One way to solve thisproblem is to use the brakes and fix the passive joints. Anothersolution is to switch the choice of the active components. The inertia
matrix M is generally nonsingular. Therefore, the rank of matrix
M,, is I I - r . Singularity of M , , H , depends on H,. If the active
components are chosen in a different way, the manipulator can passnear the dynamic singular points. (Of course, control of the former
active components is compromised in this case.)

88IEEE TRANSACllONS ON ROBOBTICS AND AUTOMATION, VOL. 9, NO. 1, FEBRUARY 1993

in terms of path coordinates. Note that there exist lots of pathcoordinate systems for one desired path. In the case of this example,
a spherical coordinate that has its origin at the center of the desired
path can also be a path coordinate.

Fig. 2. Path coordinate system.

111. PATH COORDINATESIn the following sections, a method for path tracking control
is presented. A mathematical description of the desired path isconsidered at first. The desired path is geometrically specified asa continuous curve in operational space. It is not associated witha time variable. In minimum-time trajectory planning problems, thistype of path is often parameterized by a path parameter [ 131-[ 151. The
position of a point on the path is represented as a vector function ofa scalar parameter. When operational space is n-dimensional, a point
q E IR" on the path is represented as
f! = Q ( S ) , S O

I s I Sf

(12)

where s is the path parameter. q ( s 0 ) is the start point of the pathand q ( s f )is the end point. s can be considered as a distance along
the path. Since s is a scalar, this method can represent a point only
on the path itself.
Real-time path tracking control is considered here. If the manipulator deviates from the path due to disturbances, feedback control
should force the manipulator to return to the path. Therefore, points
not on the path as well as points on the path should be represented.
Furthermore, the tracking error should be measured. We propose theconcept of path Coordinates as an extension of the path parameter.
A curvilinear coordinate frame is defined in operational space. The
coordinates are composed of a component s along the path andcomponents z l r . ,znPlnormal to S.
is normal to z3 if i # j .
These coordinates are called path coordinates (Fig. 2). A point
p E IR" represented in terms of the path coordinates is
p=[zl,...,zn-l,s]T=[Z= SI=.

A. Path-Tracking Control

Both operational space and the path coordinate space are assumed
to be n-dimensional. It is assumed that the manipulator also has n
DOF, and it consists of n - 1 active joints and one passive joint.
We propose a control method in which the manipulator tracks thedesired path defined in Section III. In Section 11, it was shown thatthe components equal in number to the active joints can be active
components and controllable. The number of active joints of thepresent manipulator is n - 1. The number of components of thepath coordinates is n, and the number of components z normal tothe path is n - 1. Therefore, z is treated as an active component ands is treated as a passive component.
From (16), the operational coordinate q and the path coordinate p
are related as q = q(p). The operational coordinate q is calculated
by forward kinematics, q = q ( 0 ) . WhenJiaq

= ;3;,J I ,J Z E R n X "Jz =the Jacobian matrix J ( 0 ) E IR"'"of path coordinate p for joint
coordinate is represented asj=2 =j - 1 j
a0

(13)

*.

Consequently, p and 0 are related as

The desired path is represented as
2 = zd(constant),

IV. PATH-TRACKINGCONTROLIn this section, the path-tracking control scheme is described. The
control scheme is based on the path coordinates. First, the equationof motion is represented in terms of the path coordinates. Thenthe path-tracking control scheme with feedback is proposed. The
initial conditions of the desired path are discussed. Path tracking withmultiple passive joints is also considered.

SO

5 s 5 sf

p = J8.

(14)

in terms of the path coordinates. The desired path is also representedasin terms of the operationalcoordinates.Equation (15) can be extended
to represent all points in operational space. A point q in operational
space is represented as a vector function of path coordinate p.

(17)

The equation of motion in joint space is written as

M ( 8 ) i+ b ( 0 . i ) = U .
The equation of motion of the manipulator is rewritten in terms of
E IRn. The joint torque vector is composed of the active joint
torque, E R n - l , and the passive joint torque(= o).
U= [P O]?

Example: Operational coordinates:Cartesian coordinates ( n = 3).
Desired path: A circle of radius T O . centered at [TO, yo, 201, parallelto the TY plane
4 s ) = [TO c o s ( w s )+L O , T O sin(ws)+YO, 301.

Path coordinates: Cylindrical coordinates

q(P)= Q(bl,J2,SI')+- [zi cos(ws)10.
x1 sin(ws)The desired path is represented as
2 = [zl..c*]T= [TOGO]T

where

M =

+ yo..rZ].

[E:].

b=

[!:I,

J-'=H=[H,. M , E I R i X n , b a E IRn-',b,and M a E
R n x ( n - 1) and H p E W X 1 .

.

E,] (21)E IR',H, E

In order to keep the manipulator on the desired path, the z
components normal to the path should remain constant at 2 d . The

~IEEE TRANSACTIONS ON ROBOBTICS AND AUTOMATION. VOL. 9. NO. I , FEBRUARY 1993

I
Fig. 3. Path-tracking control system.
acceleration 2; is generated to adjust z to Z d . The following PID
control is applied:2;= - K "2

+ Kp(Zd - + K ,2).I( Z d - Z ) tlf(22)

where K,.Kp, and K , E l R ~ r ' - " x ( ' t - ' ' are the diagonal gain
matrices. z and Z are the measured values of the position and velocityof the z components.
2; calculated from (22) is substituted in 2 of (20a) and (20b).
If M p H , is not equal to zero, the torque T to realize 2; can be
determined as
T = { M m-89

trajectory of the manipulator is obtained. The final value of S, andthe time period to travel along the path are also evaluated.
If the initial velocity along the path is too slow, the direction of S
may be inverted before reaching the final point, and the manipulator
cannot complete path tracking. Therefore, it is desirable to estimate
the minimum initial velocity necessary to reach the final point. M ,and H , in (24) can be represented as functions of s only. On thepath, = E,,,+.When the friction of the passive joint is negligibly
small and b,, is composed of Coriolis, centrifugal, and gravitational
forces, (24) can be rewritten as;. = f (s ) i 2 + (/( s )(25)where f(.\ ) and ,y( s ) are functions of s and do not depend on initial
velocity -io. Note that__ t l s (1.4 1
s = - . - - - . -rlt t l s
2

Cl(S)'L
tis

.

(26)

Equation (25) is a linear differential equation with respect to S'. The
solution of (25) is

M"H,(M,H,)-'M,}(H,i;- HJfi,+b" - Mctffp(M,lHp-'hb. (23)When we apply torque T of (23) to the active joints, we will obtain the
2 components acceleration of (22). The deviation of the manipulator
from the desired path converges to zero asymptotically if K , . Kp.
and K; are chosen appropriately. As a result, the manipulator tracks
the desired path.
Fig. 3 shows the path-tracking control system.

Since.\) > 0 is
the condition for i'(

B. Planning of Desired Path and Initial Conditiom
As an initial condition, it is assumed that the manipulator is moving
with sufficient initial velocity in the direction of the path when
path-tracking control begins. This can be achieved, for example, by
accelerating the active joints while the passive joint is fixed and thencommencing the path-tracking control with the passive joint released.
The desired path should be planned geometrically so that the initialconditions can be realized by the active joints only. The manipulator
has / I - 1 DOF when the passive joint is fixed. The initial angularvelocity of the passive joint is zero. The initial position and directionof the desired path are limited by these conditions. On the other hand,
the initial velocity along the path can be controlled arbitrarily by theactive joints.
When path tracking is performed as part of point-to-point control.
the passive joint should stop at an exact angle. The final directionof the path is also limited so that the angular velocity of the passive
joint is zero.

The right side of (28) is calculated by numerical integration. If SO
is chosen so that .4: is larger than the maximum of the integration
value, the manipulator can reach the final point. It is clear from (28)that if s ) 2 0 for .SO 5 s 5 s I , the manipulator can reach the> 0.
final point for any
The initial velocity necessary to reach the desired velocity at the
final point or at a point halfway along the path can be calculated if
the initial velocity is in excess of the minimum velocity. When (24)is integrated backward for SO 5 s 5 s , ~with s and k given final
values s , ~and S , ) , the initial velocity
to realize the desired velocity.;,I is derived.
During real-time control,sx = __.S(](29)

s f - S"and 0 < X < 1 on the path. The value of X is monitored while themanipulator is tracking the path. The control terminates when X > 1.

C. Velocity along PathIn this method, the s component is accelerated/decelerated in orderto realize the desired value of the z components. Therefore, the scomponent cannot be controlled directly. The time period necessary
to travel along the path depends on the configuration of the path andthe initial velocity along the path.
From (14), 2 is constant when the manipulator moves along thedesired path. Thus, 2 = 0 and 2 = 0 on the path. Since H J = - H J .
acceleration along the path iss'. = - ( M , H , l ) - 1 ( M , , ~ ,+, h. 4
,,)

(24)

from (20b). The initial value of .s is s o , and the final value is s f .
When initial values so and SO are given, s and S can be calculated
by numerical integration of (24) for s o 5 s 5 . s f . Thus, the time

D. Control of u Manipulator and Multiple Passi1.e Joints
A manipulator composed of I / - 1 active joints and one passive
joint is considered in Sections IV-A to IV-C. However, the proposed
control method is easily extended to a manipulator with multiple
passive joints. In ,/-dimensional operational space, it is necessary tocontrol I / - 1 components to keep the manipulator on the desired
path. Therefore, 11 - 1 active joints are necessary. The manipulator isassumed to have I I I > 1 passive joints. In this case, the manipulator
is redundant in operational space. and the extended Jacobian methodin path coordinate space is applied. The equation of motion is

M(H)H+b(H.fi)= U
U = [T'

(30)

017

(31)

IEEE TRANSACTIONS ON ROBOBTICS AND AUTOMATION, VOL. 9, NO. 1, FEBRUARY 1993

TABLE IPARAMITERS
OF THE MANIPULATOR

Encoder
Motor

II

I

v

ml
mz
L

1

2.0 kg
1.0 kg
0.3 m
2.2 N.m.s/rad
0.24 kgmz

Mass of link 1
Mass of link 2
LRngth of links 1 and 2
Viscous friction of the actuator
Moment of inertia of the actuator

D1
JM

Fig. 4. 'hodegree-of-freedom manipulator.

c
[SI

0.00
0.0

0.5

Time

1.0

Time [SI1.0(a)Fig. 5. Model of the manipulator.

M ( 0 ) E R("+"-')X("+"-'),b(8,i)

where 8 E
Rn+m-l7-

E ]Rn+m-1 , and T E IR"-'.

Here, m 1 auxiliary components, 21, . . .,2,path coordinates p .

E1, are added to thep = [ Z I , .. ' 7 zn-1, S, 2 1 3 . .. 9 zm-11= [zT,
yT]T

0.5

0.0

(b)

(32)

where z E Et"-' and y E Rm.All the components of p including theauxiliary components should be independent, and the Jacobian matrix
J E R("+m-l)x(n+m-l)
should be nonsingular. The equation of
motion is partitioned as

M,H,Z + M,E,S - M,HJd + b, = r
MpEaZ M p E p S- M p E j i + b, = 0.

+

Fig. 6. Step response of the active component. (a) Active component: y. (b)Active component: 2.

The coordinate transformation from joint space to operational spaceis represented as(334

z = Lcos81(33b)

y = L sin 01

If matrix M p H p E Rmxm
is nonsingular,I+ Lcos(B1 ++ L sin(& + &).

82)

(37)

The Jacobian matrix isj; = (MpEp)-l(-MpEaZ+
M , E J i - b,).

(34)

The control law is a combination of PID feedback in (22) and thetorque computation

J=L[

+
+

- sin81 - sin(O1 8 2 )cos el cos(el
02)

+

+ 8,)
+ ez) ] .

- sin(&
cos(el(38)

There are two cases: the case in which y is the active component andz is the passive component, and the case in which z is the active
T = { M , - M,E,(M,E,)-~M,)(E,~
component and y is the passive component. From the state where
manipulator is at rest, a step change of the reference is given+ba - M ~ E , ( M ~ E ~ )(35)- ~ ~the, .
for the active component in each case. Fig. 6 shows the response.
It has almost the same form as (23).
The initial position is z = 0.4(m), y = O(m). In Fig. 6(a), y is
the active component and the reference is y = 0.05(m). In Fig.
6(b) z is the active component and the reference is z = 0.45(m).
V. EXPERIMENTS
The feedback gains are set so that the pole of the system is a triple
root. The sampling interval is 2 ms with a 16-MHz i80386 80387
A. Two-Degree-of Freedom Manipulator
CPU. (In the case of multiple degrees of freedom, (11) requires
We conducted experiments using these control methods with a[n3- 2n2T n ~ ' 7 n Z-3 n r 2r2] multiplications and the inversion
2-DOF horizontally articulated manipulator. Fig. 4 shows the maof a ( n - T ) x ( n - T ) matrix. It would be desirable to develop
nipulator. The first axis (&) is a active joint and the second axis
an efficient computation algorithm.) In the experimental result, the( 8 2 ) is a passive joint. The active joint is driven by a dc servo
measured value of the active component (solid line) converges tomotor with a harmonic-drive gear. The brake of the passive joint is
the reference (dotted line). The error from the reference after theelectromagnetic. Fig. 5 shows the model of the manipulator. Table I
convergence is 0.14 mm in Fig. 6(a) and 0.08 mm in Fig. 6(b). Next,
shows the parameters of the model. M and b in (1) are defined ina desired trajectory is assigned for the active component. Fig. 7 shows(36). found at the bottom of the following page.
the result of the trajectory tracking. The active component increases
with constant velocity from the stationary state and decreases with
B. Control in Cartesian Space
constant velocity in the desired trajectory. An abrupt change in
The control scheme of Section II is demonstrated first. Cartesian velocity occurs at the beginning of the trajectory and at the moment
the direction changes. The measured value (solid line) follows thespace is used as operational space. The origin is at the first joint.

1151

+

+ +

+

91

IEEE TRANSACTIONS ON ROBOBTICS AND AUTOMATION. VOL. 9, NO. 1, FEBRUARY 1993

Fig. 8. Motion of the manipulator.

0.35

0.0

1.0 Time [SI 1.5

0.5

(b)

Fig. 7. Tracking of a desired trajectory. (a) Active component: y. (b) Active
component: s.

desired trajectory (dotted line) except just after those moments. The
stick diagram (Fig. 8) represents the motion of the manipulator when
the y component tracks a desired trajectory with constant velocity.
The initial acceleration is done with the passive joint fixed. In Fig.
8, the y component increases constantly.

C. Dynamic Singularity
In the dynamic singular point, discussed in Section 11-D, it isdifficult to apply the proposed control method. In the case of a 2-DOF
manipulator, the condition of dynamic singularity is M p H p = 0.
Fig. 9 shows the dynamic singular points of the manipulator used in
the experiments. M p H , = 0 at these points. It is necessary to avoid
these points in the control. In Fig. 9(a), y is the active component, andin Fig. 9(b), s is the active component. The dynamic singular pointsof Fig. 9(a) are not coincident with those of Fig. 9(b). In other words,
where one component is not controllable, the other component is.

D. Modeling Error
This method depends essentially on the dynamic model of themanipulator. In the experiments of this paper, each parameter of themanipulator was calculated or determined experimentally in advance.
However, a load at the tip of the manipulator causes a change in the
dynamic parameters.
The control of the active components in the proposed method has
basically the same form as the computed torque method. In otherwords, the control of the active components is no less robust thanthe computed torque method of a conventional manipulator having
an actuator for each joint. A high-gain feedback can suppress theerror caused by the modeling error if the change of the model is not
so large.

(b)

Fig. 9. Location of dynamic singular points. (a) Active component: y. (b)Active component: s.

On the other hand, the passive components absorb the modelingerror. If the motion of the manipulator is simulated in advance, thetrajectory of passive components deviates from the simulation. In
path-tracking control, the velocity profile along the path changes. The
proposed method is sensitive to the modeling error in this sense. The
authors expect that this method may become more effective if it isused together with a real-time parameter identification or an adaptive
control method.
We also investigated the robustness of the control method experimentally. A weight (0.5 kg) is attached to the tip of the manipulator.
The same step-response experiments as in Fig. 6 are done usingL'+ -21ITI L ' CO5
~ $2
1
3

-nt2L2

1

D181

1

c

IEEE TRANSACTIONS ON ROBOBTICS AND AUTOMATION, VOL. 9, NO. 1, FEBRUARY 1993

92

0.410

0.400

0.0

0.5

Time [SI1.0Time [SI

1.0

(a)

\

U.J7U

.

0.0

0.5

(b)

Fig. 11. Suppression of tracking error. (a) Straight line path. (b) Circulararc path.

U

/

(b)

Fig. 10. Path tracking motion. (a) Straight line path. (b) Circular arc path.

parameters without considering the weight. The error of the active
components after the step response is z : 0.18 mm, y : 0.24 mm.
The increase in the error of the active component caused by themodeling error is small.

E. Path Tracking Control
The path-tracking control scheme of Section IV is applied to the
manipulator. In this manipulator, the initial direction of the desired
path should be tangential to a circle centered at the first axis. First
the passive joint is fixed and the active joint is accelerated. Path
tracking begins when the brake is released. The desired path of Figs.
1Wa) and 1l(a) is given as a straight line. In the case of (a), the pathcoordinate space is Cartesian space. The coordinate transformation is(37), and the Jacobian matrix (38). The desired path (a) is represented
as Xd = 0.4(m). The desired path of Figs. lo@) and ll(b) is given
as a circular arc around the first axis. In the case of (b), the pathcoordinate space is a polar coordinate space whose origin is at thefirst joint.

The Jacobian matrix is

The desired path is T d = 0.4(m). Fig. 10 illustrates the results of thepath-tracking control experiments. The initial condition is yo = 0 m,
yo = 0.7 m / s in both cases. The results (solid lines) follow the desired
paths (dotted lines). Trackings to the different paths are achieved from

Fig. 12. Tracking of a composite path.

the same initial condition.The maximum deviation is 0.29 mm in Fig.
Iqa), and 0.72 mm in Fig. Iqb). Fig. 11 shows the response when
the initial position is not on the path. The deviations converge tozero by means of the feedback control. Fig. 12 shows tracking of apath that includes straight and circular path segments. In this way, acomplicated path can be composed of several simple path segments.
VI. CONCLUSIONS
A method to control a manipulator with passive joints in operational space has been proposed. The equation of motion is represented
in terms of operational coordinates. The desired acceleration can begenerated at active components equal in number to the active joints
by using dynamic coupling among the coordinates. This method is
extended to path-trackingcontrol. A path coordinate system based on
the desired path is defined. The equation of motion of the manipulator
is described in terms of the path coordinates. The accelerationof the components normal to the desired path is controlled using
the dynamic coupling among components. This in turn keeps the
manipulator on the desired path. The effectivenessof the method wasverified by experiments using a 2-DOF manipulator with a passive
joint. One of the two coordinates in Cartesian space is controlled
to follow a desired value. The experiments also showed that the

IEEE TRANSACTIONS ON ROBOBTICS AND AUTOMATION, VOL. 9. NO. I . FEBRUARY 1993

path of the manipulator can be controlled precisely by use of the
proposed method. Since this method uses closed-loop control, precise
tracking is possible in the presence of disturbances. The path ofthe manipulator can be prescribed with this method and it may be
combined with obstacle avoidance or other path-planning algorithms.

ACKNOWLEDGMENT
The authors would like to express their appreciation to Dr. N.
Oyama, Director of the Robotics Department, Mechanical Engineering Laboratory, for his constant support. They would also like tothank the members of the Biorobotics Division and the Cybernetics
Division, MEL, and K. Lynch, Carnegie Mellon University, for theirassistance.

REFERENCES
S. Hirose and Y. Umetani, “The development of soft gripper for theversatile robot hand,” in Proc. 7th ISIR, 1977, pp. 353-360.
J. Y. S. Luh, M. W. Walker, and R. P. Paul, “Resolved acceleration
control of mechanical manipulators,” l€€E Trans. Authomat. Contr.,
vol. 25, no. 3, pp. 468-474, 1980.
K. D. Young, “Controller design for a manipulator using theory ofvariable structure systems,” IEEE Trans. Syst. Man Cybern., vol. SMC-8,
no. 2, pp. 101-109, 1978.
E. Freund, “Fast nonlinear control with arbitrary pole-placement forindustrial robots and manipulators,’’ Int. J. Robotics Res., vol. I , no. I ,pp. 65-78, 1982.
K. Youcef-Toumi and H. Asada, “The design of open-loop manipulator
arms with decoupled and configuration-invariant inertia tensors,” inProc. IEEE Int. Conf Robotics Automat., 1986, pp. 2018-2026.
B. Boravac, M. VukobratoviC, and D. Surla, “An approach to biped
control synthesis,” Roborica, vol. 7, no. 3, pp. 231-241, 1989.
T. Arai and S. Chiu, “Control of robot using coupled torque between
joints,” in Proc. I€€€ Int. Workshop Intell. Robots Syst. (IROS’90),
1990, pp. 963-968.
H. Arai and S. Tachi, “Position control of a manipulator with passive
joints using dynamic coupling,” IEEE Trans. Robotics Automat., vol. 7,
no. 4, pp. 528-534, 1991.
-,“Position control system of a two degree of freedom manipulator
with a passive joint,” I€€€ Trans. Ind. Electron.. vol. 38, no. I , pp.
15-20, 1991.
A. Jain and G. Rodriguez, “Kinematics and dynamics of under-actuatedmanipulators,” in Proc. lE€€ Int. Con$ Robotics Automat., 1991, pp.
17541759.
E. Papadopoulos and S. Dubowsky, “Failure recovery control for space
robotic systems,” in Proc. 1991 Amer. Contr. Conf
J. Baillieul, “Kinematic programming alternatives for redundant manipulators,” in Proc. lE€€ Int. Conf Robotics Automat., 1985, pp. 722-728.
K. G. Shin and N. D. McKay, “Minimum-time control of robotic
manipulators with geometric path constraints,” IEEE Trans. Automat.
Contr., vol. 30, no. 6, pp. 531-541, 1985.
J . E. Bobrow, S. Dubowsky and J. S. Gibson, “On the optimal controlof robotic manipulators along specified paths,” Int. J. Robot. Res., vol.
4, no. 3, pp. 3-17, 1985.
F. Pfeiffer and R. Johanni, “A concept for manipulator trajectory
control,” I€€€ J. Robotics Automat., vol. RA-3, no. 3, pp. 115-123,
1987.

93

Bounds on the Largest Singular
Value of the Manipulator Jacobian
Inge Spangelo, J. Richard Sagli, and Olav Egeland

Abstract-In this work, we prove that if the manipulator Jacobian isproperly scaled, the largest singular value is bounded within a small interval close to unity. In this case, the inverse of the smallest singular value
is a good estimate of the condition number. This is useful in singularity
analysis. Bounds are derived for a general six-joint manipulator and for
the ABB IRb 2000 industrial robot in a case study.

I. INTRODUCTION
The damped least-squares solution has been proposed for inverse
kinematics with singularity robustness [l], [ 2 ] . A critical point in
the implementation of this method is the selection of an appropriate
damping factor that gives a good compromise between accuracy andfeasibility of the solution.
Nakamura and Hanafusa [ I ] proposed computing the damping
factor from the manipulability. Far from singularities, the damping
factor was set to zero, while a nonzero damping factor was usedclose to singularities where the manipulability approaches zero.
Maciejewski and Klein [ 3 ] proposed computing the damping factor
as a function of the smallest singular value of the Jacobian. They
commented that the largest singular value of the Jacobian wasapproximately unity if the Jacobian was appropriately scaled. Thisobservation was also made by Wampler [2] who stated that theJacobian should be scaled with the maximnm reach of the arm. The
2-norm condition number of the Jacobian is the ratio between thelargest and the smallest singular values. If it can be proved that thelargest singular value is close to unity, it follows that the inverse of
the smallest singular value is a good estimate of the condition number.
The main contribution of this paper is the proof that the largest
singular value is bounded close to unity when the Jacobian isproperly scaled. We derive bounds for the largest singular value of themanipulator Jacobian and discuss the effect of scaling the translations.
It is shown that if the translations are properly scaled, the largest
singular value is bounded within a small interval slightly larger thanunity. The analysis is done for a general six-joint manipulator, andfor the ABB IRb 2000 industrial robot.
11. BACKGROUND
The six-dimensional vector of joint coordinates is denoted q. The
three-dimensional vector of end effector velocity is denoted U , while
the three-dimensional angular velocity vector is denoted w . The G x G
Jacobian matrix J is defined byThis matrix was termed the partial velocity matrix by Wampler [2].
If J is full rank, q can be found from ( I ) by Gaussian elimination.
In singular configurations, a solution will only exist if ( u T ~ T )ET
Manuscript received November 25, 1991; revised June 1, 1992. This work
was supported by the Royal Norwegian Council for Scientific and Industrial
Research through the Center for Robbotics Research at the Norwegian Instituteof Technology and by ABB Robotics.
The authors are with the Division of Engineering Cybernetics, The Norwegian Institute of Technology, N-7034 Trondheim, Norway.
IEEE Log Number 9205082.

1042-296X/93$03.00 0 1993 IEEE