Академический Документы
Профессиональный Документы
Культура Документы
IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICSPART A: SYSTEMS AND HUMANS, VOL. 32, NO. 5, SEPTEMBER 2002
I. INTRODUCTION
583
engaged in experiments, as well as by using their subjective psychophysical evaluations of maximum comfort postures.
The fact that a variety of cost functions has already been used
to explain principles of human arm motor control indicates that
the CNS does not obey any one particular cost function, but also
does not violate general physical and technical principles of optimality, from which particular cost functions come about [26].
Hence, additional efforts in searching for new appropriate and
effective cost functions are justified. They contribute to a better
understanding of biological principles of motor control. The majority of the above mentioned cost functions are of integral type,
meaning that they are supposed to be used with global optimization methods. This paper suggests a mathematical function appropriate for on-line use in robotics. It is of local nature, suitable for generation of human-like motions in robot joints and
especially in those tasks where substantial robot autonomy is
expected.
C. Virtual Fatigue Idea
The underlying idea of the paper has both theoretical and
experimental foundations. Practical experience shows that the
human arm commonly takes those postures and executes those
movements that are the most comfortable. The term comfortable relates to joint positions and engagement of motor units
and may also be described by the term pleasant (a more precise definition will be given later). On the other hand, endurance
contractions of motor units cause muscle fatigue, thus introducing an unpleasant feeling, that is, a sense of discomfort. In
everyday life it is easy to observe that after a sensation of discomfort caused by muscle fatigue, the human arm normally reduces engagement of the fatigued motor units, by taking postures that require lower participation of these units. This means
that while performing repetitive movements requiring continual
repetition of motions in operational space (like in screw-driving
tasks), the human arm occasionally reconfigures itself by taking
a more comfortable posture, rather than proceeding with some
particular pose. The ability to rearrange its motion is enabled by
the presence of both actuator and kinematic redundancy in the
human arm [27]. Actuator redundancy comes from the possibility to use several motor units for the same motion of any arm
joint. Kinematic redundancy results from the existence of seven
degrees of freedom (DOFs) in the arm (from shoulder to wrist),
which is more than six independent movements required for an
arbitrary positioning and orientation of an object in operational
space [14], [18]. Actuator redundancy and its implementation
in robotics, are challenging problems that deserve particular attention. They are not considered in this paper, although their
role in performing movements in biological mechanisms must
be pointed out. Instead, this paper focuses on kinematic redundancy and investigates possibilities to distribute the engagement
of robot joints in a human-like fashion, imitating the arms inherent property to execute comfortable motions. The main objective is to achieve a human-like motion. This can be done if
an adequate mechanism is established that simulates biological
processes of comfort and discomfort in the arm. It would be
useful to rely on relevant findings from already published results
of theoretical and experimental investigations. A result which
584
IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICSPART A: SYSTEMS AND HUMANS, VOL. 32, NO. 5, SEPTEMBER 2002
(3)
585
Vector
enables the local optimization of some secondary ob, used for the proper utilization of kinejective function
is defined as the gradient
matic redundancy. Following [2],
:
of
(12)
is a real scalar coefficient. The final form of the IK
where
solution is obtained by substituting (12) into (10):
(13)
B. Choice of the Secondary Objective Function
is discussed
Choosing the secondary objective function
in this subsection. The distances of current joint positions
from the mechanical joint limits
and
will
be the basis for definition of the secondary objective function.
In the previous section it was already pointed out that the middle
values of human arm joint ranges coincide with positions of the
as a
maximum comfort. This fact justifies the choice of
function penalizing deviation from the middle values [2], [29]
(4)
or
(15)
(5)
(6)
Substitution of (6) into (1), gives:
(16)
(7)
Solving for
yields
(8)
(9)
(17)
which can be rewritten in a more compact form:
(10)
denotes the weighted pseudoinverse of the Jacobian
where
matrix [38]
(11)
,
,
and
denote armature voltage, current,
where
and
denote
resistance, and inductance, respectively,
constants of back electromotive force and torque, respectively,
is the central moment of inertia of the rotor, and
is
the gear-box ratio. Inclusion of the actuator model (17) into the
model of the robot mechanical structure (16), provides a complete model of robot arm dynamics.
586
IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICSPART A: SYSTEMS AND HUMANS, VOL. 32, NO. 5, SEPTEMBER 2002
(18)
and
denote temperatures of the armature windwhere
is the ambient temperings and the housing, respectively,
and
are thermal capacities of the windings and
ature;
and
are windings-to-housing
the housing, respectively;
and housing-to-ambient thermal conductances; the term
indicates power loss in armature windings. Temperatures of the
armature windings and the housing are the state coordinates in
the given model. They are governed by the magnitude of power
loss, which depends on the instantaneous value of armature current. Current is a state coordinate of the complete model of the
robot dynamics (16), (17).
With respect to the model of thermal dynamics (18), it should
be pointed out that motor catalogues usually do not offer values
and
, nor of thermal conneither of thermal capacities
and
, directly. These parameters are calcuductances
lated using the catalogue values of rotor and housing thermal
and
), as well as thermal time constants
resistances (
and
). The following
for the rotor and the housing (
equations are applied [41], [42]:
(19)
The temperature of armature windings is a critical value in
the thermal model (18), since it has faster dynamics than the
temperature of the housing. This is due to the considerably
lower value of the armature thermal capacity with respect to
the thermal capacity of the housing [42]. For constant angular
velocity of the motor shaft and assuming a constant load torque,
the temperature of the armature windings rises until a balance
between power loss, on one hand and dissipation of heat from
the armature through the housing into the air, on the other, is
established. With a balance between power loss and dissipation,
armature temperature reaches a steady state. Qualitatively,
such temperature dependence resembles a time history of the
increase of lactic acid concentration due to fatigue progress in
muscles. Furthermore, the analytical expression for the arma-
(21)
where variable denotes the virtual fatigue, while is an auxiliary variable. Parameter enables the set up of a reference level
and
are defined
for the virtual fatigue. Time constants
and
by the desired rates of and , while parameters
are chosen in accordance with preferable magnitudes of and
. For some particular motor, as starting values for tuning these
parameters, one may take motor thermal time constants and
thermal resistances from the catalogue. It means that appropriate
and
are obtained by an adequate decrease of
values of
and
, respectively, while
motor time constants
and
should attain higher values than motor thermal resisand
.
tances
(23)
denotes the steady-state value of the second-order
where
model virtual fatigue response, assuming constant power loss
(24)
Suggesting proper means for establishing the functional dependence between virtual fatigue time history and robot arm
motions should conclude this section. For this purpose, we
should reinstate the expected effects of virtual fatigue usage.
During manipulation, a human arm performs movements
adequate to the desired manipulation task, permanently accommodating its configurations to the actual level of muscle
fatigue. Present kinematic and actuator redundancy allows
execution of the manipulation task in a comfortable way, by
appropriate distribution of joint motions and participation of
different motor units. In such ways exhausted muscles may
recover and other muscles increase their activity. A similar
strategy could be applied for a robotic arm. However, capabilities of the kinematic redundancy will be utilized only. Actuator
redundancy is out of scope of this paper.
F. Application of Penalty Functions
For each robot joint it is necessary to specify an appropriate
of the virtual fatigue. If the value of is less
critical level
, then an IK solution should provide merely the most
than
comfortable pose, from a psychophysical point of view. When
virtual fatigue reaches, or exceeds a critical level, appropriate
587
depression of joint motion is required. Such control of joint motions can be achieved by means of the weighting matrix . Reis formed by simple summing of two matrices,
ferring to (6),
and
. Matrix
should provide human-like distrii.e.,
bution of joints motions (DP concept) and an adequate reconfiguration of robot arm with respect to actual levels of joint virtual
one can specify higher engagement of
fatigue. By means of
some joints in realization of the secondary objective, i.e., local
given by (14) and (15). In this paper, it
minimization of
is assumed that all joints have equal priority in realization of
( dethe secondary objective, which in turn gives
determines
notes identity matrix). In such a way, the role of
, in the sense that
should provide
a particular choice of
. This can be
a behavior in accordance with the objective of
achieved with the following choice of :
diag
diag
(25)
588
IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICSPART A: SYSTEMS AND HUMANS, VOL. 32, NO. 5, SEPTEMBER 2002
An anthropomorphic robot arm is considered in the screwdriving task (Fig. 1). It has seven DOFs, meaning that it is redundant for the given task. Its kinematic scheme is a simplified model of a human arm excluding the hand [12][14]. Such
a kinematic scheme is deliberately chosen. An anthropomorphic model is the most appropriate for testing and evaluation
of human likeness. In the previous paragraph, it was pointed
out that the robot arm is not going to perform screw driving
in the manner of industrial robots. It will perform the task in
a human-like fashion, which means that apart from enabling the
required position of the screwdriver in the space, the robot arm
should also provide angular screw-driving movements about the
longitudinal screwdrivers axis (Fig. 1). Human-like conception
of screw driving enables a direct comparison of motions in humans and robots.
Robot arm kinematics can be described using the notation of
Denavit and Hartenberg (DH) [18]. Joint coordinate frames, assigned according to DH convention, are indicated in Fig. 1. The
values of DH parameters are given in Table I, in Appendix A. In
the same Appendix A one can find Table II, containing: kinematic and dynamic parameters of the considered robot arm,
weighting coefficients that provide DP concept in (25), parameters of the penalty functions (26) and parameters of the low-pass
filters (27). Finally, parameters of the dc actuators and virtual fatigue models (21) and (22), are presented in Table III given in
Appendix A.
are indicated.
In Fig. 1, independent joint coordinates
These coordinates do not coincide with rotational angles
according to DH notation. The coordinates in Fig. 1. are more
explicit and thus easier to observe. They are related to DH angles
by
(28)
589
(29)
, in its initial posture the robot arm has a
According to
stretched forearm (wrist) including the screwdriver.
A screw-driving task requires rotational motion of a screw
about its longitudinal axes. It is assumed that screwing consists
of a series of single revolute movements (forward and back[rad]. A forward rotation (screwing
ward), each of exactly
in) is indicated in Fig. 1. Backward rotation does not drive a
screw, but only brings screwdriver in the initial position. Each
s. Different studies investigating
movement takes
motor control of human movements have shown that human
arm performs smooth voluntary movements with bell-shaped
velocity profiles (for illustration, see [24]). In our simulations
the bell-shaped velocity profile was approximated with a cosine
velocity profile [6] and applied to rotational motions of the
screwdriver. This defines the motion task of the end-effector.
In the first simulation, the force and the torque applied to
the screw are not taken into account. The IK solution is calculated according to the procedure described in the previous section. Underlying idea is to achieve comfortable joint motions
(closer to the middle locations of joints ranges), while taking
care of the actual levels of joints virtual fatigue. When virtual
fatigue in some joint exceeds a critical limit, the joint engagement should be reduced. It is followed by higher involvement of
other joints. Distribution of joints involvement should be similar with a human arm.
Different diagrams are obtained by simulating the anthropomorphic robot arm in the screw-driving task. Simulation started
with a virtual fatigue model of second-order (21). Joint motions
,
calculated by suggested redundancy
resolution procedure, are presented in Fig. 2 (the order 1, 3,
2, instead of regular 1, 2, 3, uses the space in the figure
more economically). Note that total time of monitoring the event
was 500 s. Since a cycle due to screwing-in (forward-plus-backward rotation) lasts 1 s, it is not possible to observe a particular oscillation in joint motions. One can only see the envelope,
but it is enough to understand the results. The only exception
is the zoomed diagram for joint 2. Bearing in mind the initial
robot arm position (29), it is clear why initially screw driving is
performed by joint 5 alone. It is the only joint able to provide
the rotational motions about the longitudinal axis of the screwdriver. Time histories of joints virtual fatigues are presented
(in
next (Fig. 3). The figure shows armature temperatures
-th joint, regular order
), as well as time histories of virtual fatigues. When talking about virtual fatigue, one
vershould distinguish between the original and filtered
sion. Original versions , shown in Fig. 3, are subject to high
frequency oscillations (period equals 1 s). The filtered versions
cannot be observed in the figure since they are covered by oscillatory . However, this does not compromise the possibility
to understand the character and the role of virtual fatigue. Initial
level of all curves is identical and equal to the adopted ambient
C. It means that the reference level of
temperature
. Such a choice enables direct comvirtual fatigues is also
590
IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICSPART A: SYSTEMS AND HUMANS, VOL. 32, NO. 5, SEPTEMBER 2002
= 1 2 3 ... 7
and
denote armature voltage and current of the
where
drive. Time responses of mechanical and electrical work are
monotone increasing, with different slopes for different robot
arm postures (Fig. 4).
By inspection of the presented diagrams, one can notice that
time histories of virtual fatigue, as well as electrical work, start
to grow from the very beginning of robot arm motion, even before the majority of joints start their movements. This is a consequence of the robot arm dynamical model (16), consisting of a
system of coupled nonlinear differential equations. The torque
in a joint depends on its own motion, on motions of all other
joints and finally on gravitational load. So, it could be different
from zero even when the joint is not moving. Control torques are
generated by dc actuators, which feature certain power losses
in motor armatures. Power loss increases state coordinates in
motor thermal model (18) and causes rise of the virtual fatigue
in (21) and (22). This is in accordance with a human who may
feel fatigue in a joint that was not engaged in motion.
and
, on one hand and diInspection of diagrams for
(i.e.,
), on the other, reveals the influence
agrams for
of critical values of virtual fatigues on slopes of time histories
of mechanical and electrical work. For example, slopes of
and
are lower until virtual fatigue in the joint 5 reaches its
critical level. Then, joint 2 starts to move, requesting a higher
mechanical and electrical power, which in turn increases slopes
and
. When the virtual fatigue in joint 2 reaches its
of
limit, control torque and voltage are reduced. Torque is reduced
since: 1) motion in joint 2 is depressed thanks to the redundancy
resolution method and 2) center of mass of the mechanism is
shifted down and toward the trunk, decreasing the gravitational
591
Fig. 5.
and electrical A
work.
and electrical A
592
IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICSPART A: SYSTEMS AND HUMANS, VOL. 32, NO. 5, SEPTEMBER 2002
TABLE I
DH PARAMETERS OF ANTHROPOMORPHIC ROBOT ARM
Fig. 9.
and electrical A
V. CONCLUSION
The paper suggests generation of robot motions using a biological analogue. An artificial value called virtual fatigue is
suggested. It is used as an equivalent of biological fatigue in
human muscles. Its purpose is to provide robot motions in accordance with motions in a human arm subject to biological fatigue. Mathematical models of virtual fatigue are derived based
on existing models of dc motors thermal dynamics. Reduction
of the model order is suggested. A method for redundancy resolution using temporal values of joint virtual fatigue is presented. The method works as follows. During motions, the robot
takes comfortable configurations in a psychophysical sense. It
means that joint positions should be as close as possible to the
middle values of joint motion ranges. Time history of virtual
fatigue in each joint depends on its involvement in the overall
motion of the robot, as well as on the static and dynamic load
that should be compensated in that joint. After virtual fatigue
in a joint reaches some pre-assigned critical value, motion in
that joint is depressed, with a proper reengagement of other
joints. It enables an exhausted joint to take some rest, since
the other joints may compensate its reduced involvement. As
a consequence, the robot posture is changed. This method is
consistent with the natural behavior of a human arm. The suggested method is verified by means of computer simulation.
A seven degrees-of-freedom anthropomorphic robot arm performing a screw-driving task is simulated. The mechanical construction of the robot imitates the kinematics of a human arm.
Simulation results show human-like effects in robot arm postures after applying the suggested method. The robot arm performs movements like a human arm in a similar manipulation
task. A human-like phenomenon of bringing the elbow closer to
the trunk after the shoulder is subject to virtual fatigue, appears
and strongly supports validity of the method. Practical effects
of both second and first order models of virtual fatigue are analyzed. It appears that a first-order model provides better results,
recommending it for further implementation in real robots.
TABLE II
KINEMATIC AND DYNAMIC PARAMETERS OF ANTHROPOMORPHIC
ROBOT ARM AND PARAMETERS FOR REDUNDANCY RESOLUTION
USING THE VIRTUAL FATIGUE APPROACH
593
TABLE IV
PARAMETERS OF ASSUMED DC DRIVES
(CONSIDERING CONTACT WITH THE OBJECT)
TABLE III
OF ASSUMED DC DRIVES
(DISREGARDING CONTACT WITH THE OBJECT)
PARAMETERS
[1] Y. Nakamura, Advanced Robotics: Redundancy and Optimization. Amsterdam, The Netherlands: Addison-Wesley, 1991.
[2] A. Ligeois, Automatic supervisory control of the configuration and
behavior of multibody mechanisms, IEEE Trans. Syst., Man, Cybern.
SMC-, vol. 7, pp. 868871, 1977.
[3] A. A. Maciejewski and C. A. Klein, Obstacle avoidance for kinematically redundant manipulators in dynamically varying environments,
Int. J. Robot. Res., vol. 4, no. 33, pp. 109117, 1985.
[4] T. Yoshikawa, Manipulability of robotic mechanisms, Int. J. Robot.
Res., vol. 4, no. 2, pp. 39, 1985.
[5] K. N. Groom, A. A. Maciejewski, and V. Balakrishnan, Real-time
failure-tolerant control of kinematically redundant manipulators, in
Proc. IEEE Int. Conf. Robot. Automat., Albuquerque, NM, Apr. 1997,
pp. 25952600.
[6] M. Vukobratovic and M. Kircanski, Kinematics and Trajectory Synthesis
of Manipulation Robots. Berlin, Germany: Springer-Verlag, 1986.
[7] J. M. Hollerbach and K. C. Suh, Redundancy resolution of manipulators through torque optimization, IEEE J. Robot. Automat., vol. RA-3,
pp. 308316, 1987.
[8] V. Potkonjak, Distributed positionong for redundant robotic systems,
Robotica, vol. 8, no. 1, pp. 6176, 1990.
[9]
, New approach to the application of redundant robots, Robot.
Comput-Integr. Manuf., vol. 8, no. 3, pp. 181185, 1991.
594
IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICSPART A: SYSTEMS AND HUMANS, VOL. 32, NO. 5, SEPTEMBER 2002
[10] V. Potkonjak and A. Krstulovic, Contribution to the kinematics and dynamics of redundant robots via distributed positioning, J. Intell. Robot.
Syst., vol. 5, pp. 229239, 1992.
Milosavljevic, D. Antic, and D.
[11] V. Potkonjak, G. S. ordevic, C.
Popovic, Variable structure system for control of redundant robots,
Robot. Autom. Syst., vol. 13, no. 1, pp. 1324, 1994.
[12] V. Potkonjak and A. Krstulovic, Mathematical modeling of a redundant anthropomorphic arm (part I), Robot. Autonom. Syst., vol. 9, pp.
165170, 1992.
[13]
, Simulation of a redundant anthropomorphic arm (part II),
Robot. Autonom. Syst., vol. 9, pp. 171179, 1992.
[14] V. Potkonjak, M. Popovic, M. Lazarevic, and J. Sinanovic, Redundancy problem in writing: From human to anthropomorphic robot
arm, IEEE Trans. Syst., Man, Cybern. B, vol. 28, pp. 790805, Dec.
1998.
[15] D. P. Martin, J. Baillieul, and J. M. Hollerbach, Resolution of kinematic redundancy using optimization techniques, IEEE Trans. Robot.
Automat., vol. 5, pp. 529533, Aug. 1989.
[16] J. Baillieul, Kinematic programming alternatives for redundant manipulators, in Proc. IEEE Conf. Robot. Automat., St. Louis, MO., 1985,
pp. 722728.
[17] H. Seraji, Configuration control of redundant manipulators: Theory and
implementation, IEEE Trans. Robot. Automat., vol. 5, pp. 472490,
Aug. 1989.
[18] L. Sciavicco and B. Siciliano, Modeling and Control of Robot Manipulators. London: McGraw-Hill, 1996.
[19] D. R. Baker and C. W. Wampler II, On the inverse kinematics of redundant manipulators, Int. J. Robot. Research, vol. 7, no. 2, 1988.
[20] V. Potkonjak, G. S. ordevic, M. Rasic, and D. Kostic, Representation
of robot motion control skill, IEEE Trans. Syst., Man, Cybern. C, vol.
30, pp. 219238, May 2000.
[21] D. Michel, Learning from humans strategies of motor control: A challenge for robotic systems design, in Proc. IEEE Int. Workshop Robot
Human Commun., 1996.
[22] H. Cruse, E. Wischmeyer, M. Bruwer, P. Brockfield, and A. Dress, On
the cost functions for the control of the human arm movement, Biol.
Cybern., no. 62, pp. 519528, 1990.
[23] O. Khatib, Dynamic control of manipulators in operational space, in
Proc. 6th IFToMM Congr. Theory Machines Mechan., New Delhi, India,
1983, pp. 11231131.
[24] N. Hogan, An organizing principle for a class of voluntary movements, J. Neuroscience, no. 4, pp. 27452754, 1984.
[25] A. H. Sief-Naraghi and J. M. Winters, Changes in musculosceletal control strategies with loading: Inertial, isotonic, random, in Proc. ASME
Biomech. Symp., vol. AMD-98, 1989, pp. 355358.
[26] M. L. Lathash, Control of human movement. Champaign, IL: Human
Kinetics , 1994.
[27] O. Fuentes and R. C. Nelson, Morphing Hands and Virtual Tools (Or
What Good is an Extra Degree of Freedom), Univ. Rochester, Comput.
Sci. Dept., Rochester, NY, Tech. Rep. 551, 1994.
[28] E. S. Jung, J. Choe, and S. H. Kim, Psychophysical cost function of joint
movement for arm reach posture prediction, in Proc. Human Factors
Ergonomics Soc. 38th Annu. Mtg., 1994.
[29] T. F. Chan and R. V. Dubey, A weighted least-norm solution based
scheme for avoiding joint limits for redundant joint manipulators, IEEE
Trans.Robot. Autom., vol. 11, pp. 286292, April 1995.
[30] T. berg, Subjective and objective evaluation of shoulder muscle fatigue, Ergonomics, vol. 37, no. 8, pp. 13231333, 1994.
[31] J. Mizrahi, Fatigue in muscles activated by functional electrical stimulation, Crit. Rev. Physi. Rehab. Med., vol. 9, no. 2, pp. 93129,
1997.
[32] T. Kiryu, M. Morishiata, H. Yamada, and M. Okada, A muscular fatigue
index based on the relationships between superimposed M wave and
preceding background activity, IEEE Trans. Bio-Med. Eng., vol. 45,
pp. 11941204, Oct. 1998.
[33] P. H. P., Electrical Excitation of Skeletal Muscle: Alterations in Force,
Fatigue and Metabolic Properties, Case Western Reserve University,
Cleveland, OH, Report, no. EDC 4-72-32, 1972.
[34] L. Vodovnik and S. Reberzek, Improvements in voluntary control of
paretic muscles due to electrical stimulation, in Electrical Stimulation
as a Rehabilitation Method to Improve Abnormal Locomotion and Manipulation Ljubljana, Slovenia, 1975, pp. 6478.
595