Sunteți pe pagina 1din 11

Robotics & Computer-Integrate Manufacturing, Vol. 12, No. 1, pp.

29-39, 1996
Copyright 0 1995 Elsevier Science Ltd
Pergamon Printed in Great Britain. All rights reserved
0736-5845/96 $15.00 + 0.00

073th5845(95)ouo26-7

l Paper

THE PRACTICAL IMPLEMENTATION OF TIME-OPTIMAL CONTROL


FOR ROBOTIC MANIPULATORS
Z. SHILLER, H. CHANG and V. WONG
Department of Mechanical, Aerospace and Nuclear Engineering, University of California Los Angeles,
Los Angeles, CA 900954597, U.S.A.

This paper presents experimental results for time-optimal control of robotic manipulators along specified paths. The
implementation of time-optimal control represents several unique problems: (1) the control is generally discontinuous
(bang-bang), (2) actuator dynamics are usually ignored in order to reduce the system order, and (3) the optimal
control leaves no control authority to compensate for tracking errors caused by unmodeled dynamic and the delays
introduced by the on-line feedback controller. To overcome these difficulties, we compensate for motor dynamics
using a simplified friction model, and account for the dynamics of the feedback controller using trajectory
preshaping. Implemented for the UCLA Direct Drive Arm, this is shown to drastically reduce the tracking errors
compared to the errors obtained with no preshaping and no compensation for motor dynamics. The experimental
results demonstrate the merit of time optimal control for reducing motion time as well as for increasing tracking
accuracy.

1. INTRODUCTION difficult implementation issues since the discontin-


Robotic applications can be divided into two major uous control is impossible to realize because of the
tasks: (1) point-to-point motions, as in parts unmodeled motor dynamics, and the actuator
handling and spot welding, and (2) specified path saturation leaves no control authority to correct for
motions, as in laser cutting, arc welding, glue the resulting tracking errors.
dispensing, and painting. The objective of point-to- Although research on time-optimal control of
point motions is to accurately reach the final point, robotic manipulators dates back to the early
whereas the objective of motions along specified paths 1970~,~ it has been demonstrated to date only in
is to accurately track the path at the specified speeds. simulations. One exception is Ref. 3, which demon-
This paper focuses on the latter, the specified path strates a control algorithm that scales the time-
problem. optimal velocity profile to account for modeling
For high productivity, it is desirable that the errors. However, the tracking errors of the proposed
specified speeds be time-optimal so as to reduce controller were too large to consider the resulting
motion time and thus minimize cycle times. Time- motions of high accuracy, which leaves the practical
optimal motions constitute the highest speeds at benefits of time-optimal control unclear.
which motion accuracy can be guaranteed. Attempt- In this paper, we discuss implementation issues
ing to track the specified path at speeds higher than and present experimental results for time-optimal
the time-optimal would require actuator torques that control along specified paths. In particular, we
exceed the actuator limits. If the actuator limits evaluate the use of a simplified motor model and
represent the true actuator capabilities, then motions trajectory preshaping to compensate for the ignored
faster than the time-optimal would obviously result actuator dynamics and the delays introduced by the
in tracking errors, or deviations from the specified feedback controller, and thus achieve high motion
path. Thus, accuracy comparable to the time-optimal accuracy at high speeds.
motions using any velocity profile other than the time First, we demonstrate the significance of the
optimal can be achieved only at slower speeds and, unmodeled actuator/driver dynamics. Using open-
hence, longer motion times. loop control, it is shown that the dynamics of the
Efficient methods for optimizing motions along brushless DC motor and static joint friction account
specified paths’*8P1*“1 have been developed for a rigid for most of the tracking errors. An empirical linear,
manipulator model, using the actuator torques/forces and hence invertible, model is then proposed to
as the control inputs. It was shown that the time- account for the motor/driver dynamics and joint
optimal control saturates at least one actuator at all friction. The empirical model, referred to as the
times, and that the actuator torques might be viscous friction model, is used to compute the input to
discontinuous at the switching points. This poses the motor driver that would produce the nominal
29
30 Robotics & Computer-Integrated Manufacturing l Volume 12, Number 1, 1996

optimal controls. The time-optimal trajectory along a (position) and j, (velocity along the path), and the
specified path, computed using the method presented control input to a scalar variable, i (the acceleration
in Ref. 10, is then preshapedg to account for the along the path). System dynamics (2) can then be
dynamics of the feedback controller. written in the form
Using this scheme, we were able to track a
m(s>s + b(s)i2 + G(s) + T&, i) = T (6)
specified path at top (optimal) speeds of 1.8 m
set -’ and mean tracking errors of 0.3 mm. A where m(s) and b(s) are given in Ref. 10. We use Eq.
comparison to the commonly used trapezoidal (6) to map the actuator constraints (5) to state
velocity profiles shows that time-optimal trajectories dependent bounds on S, of the form:
produce significantly better motion times and
tracking accuracy, or require smaller actuators for
comparable speeds and tracking errors. Since at every s, these bounds are functions of s,
This paper is organized as follows: First, we briefly there might exist some j,= S,,, above which no
discuss in Section 2 the method for computing time- feasible j; exists. This value defines a state inequality
optimal trajectories along specified paths, followed in constraint of the form:
Section 3 by a brief discussion of the preshaping
technique. The experimental set-up is described in
Section 4. In Section 5, the significance of the which is represented by the velocity Emit curve in the
unmodeled driver and motor dynamics is demon- 8-i plane.
strated experimentally, and a simple empirical motor/ Using this formulation, the computation of the
driver model is presented. Section 6 presents time-optimal trajectory reduces to minimizing
experimental results for tracking the time-optimal motion time of the double integrator s--u between ’
trajectory, using trajectory preshaping and motor the points [0, sfl, subject to the control constraint (7)
compensation. and the state inequality constraint (8).
The solution to the reduced problem was shown to
consist of trajectories that either maximize or
2. TIME-OPTIMAL MOTIONS ALONG minimize the acceleration along the path, or slide
SPECIFIED PATHS along the state inequality constraint.” Typically, at
Here, we briefly review the main results for least one actuator saturates at every point along the
computing time-optimal trajectories along specified patha Computation time of a typical trajectory is a
paths? The optimization of the motion time along a fraction of a second on a 486/33MHz PC.
specified path can be stated as the following problem:

9
minJ= 1 dt
TEtl
(1) 3. TRAJECTORY PRESHAPING
s0
The reference trajectory is preshaped to compensate
subject to the rigid body manipulator dynamics for the delay introduced by the feedback controller
used to track the time-optimal trajectory. If each
M(Q)0 + tlT C(0)8 + G(B) + T,(B, 6) =T (2) joint is controlled by a SISO controller of the
path constraints structure shown in Fig. 1, then zero errors can be
achieved by preshaping the reference trajectory,
q(8)=0; q E dv-l; 0 E 2Tn (3) &(s), by the inverse of the closed loop transfer
and the boundary conditions function, as shown in Fig. 2, to produce the new
reference input, Y(s):
e(0) = eO, e(tf- = e,, 8(o) = &<tf> = 0 (4) y@) -
-
1 + G&)w x @)
(9)
where tf is the free final time, 0 e 9n is a vector of the Gc(s)G(s) d *
joint displacements, M(8) is the inertia matrix, C(0) is
an array of the coefficients of the centrifugal and This would result in a unity transfer function
Coriolis forces, G(0), is the vector of the gravity between the original input, X&), and the output,
forces, Tf(B, 6) is a vector of joint friction torques, X(s), and hence, perfect tracking of the input*.
and T is the vector of actuator efforts, and YI is the Since the nominal control, ud(s), for the reference
number of degrees of freedom. Assuming, for trajectory is known, we compute Y(s) by adding a
simplicity, constant actuator limits, the set of the correction term, Z(s), to the reference trajectory,
feasible actuator efforts, Sz, is defined as ’ xd(s> :

i-2 = {TITimi, < Ti < Timax; I’= 1,2 ,*.., n}. (5) Y(s) =&(s) + z(s) (10)
The optimization problem is greatly simplified by
*We assume knowledge of the rigid body dynamics. Motor
parameterizing the path with some parameter, s, dynamics can be added as discussed later in this paper.
generally selected as the distance along the path. This Other modeling errors can be handled using a tuning
reduces the state-space to two independent states, s process described in Ref. 9.
Time-optimal control for robotic manipulators l 2. SHILLER et al.

Fig. 1. A typical state feedback joint controller.

Fig. 2. Trajectory preshaping.

where Z(s) is computed by multiplying the nominal


control input, U&), by the inverse of the feedback
Fig. 3. The UCLA Direct Drive Arm.
controller:’

This can be done in the frequency domain, as in Eq. +2.4 rev se& Each motor is equipped with an
-
(1 l), or in the time domain by convoluting z&#) with integrated incremental position encoder with a
the impulse response of G$(s), assuming zero initial resolution of 655,360 counts per revolution. For an
conditions. even binary representation, the position counts are
The feedback controller should be invertible, i.e. divided by 10 to produce a 16-bit binary signal. The
have no non-minimum phase zeros, and be improper resolution of the encoder is thus 216= 65,536 per
(have at least as many zeros as poles) so that G&) revolution, or 0.0055* per count. The motor is driven
is proper, to avoid differentiating the typically by a Dynaserv driver, operating in a velocity servo
discontinuous controls. mode with an internal sampling rate of 1 kHz.
For a PD controller of the form G&) = Kp + Kvs, Torque mode was generally not used because of the
we compute y(t) by first multiplying &(s) by GE’(s) potential danger to the system if computational
errors occurred at that level.
The control system of this manipulator is depicted
in Fig. 4. It consists of a 486 PC host controller,
then rewriting Eq. (12) in the time domain to yield a instrumented with high speed digital signal proces-
first-order differential equation in z(t) sing boards. The outer position servo loop is
implemented in C on the PC with a sampling time
of 1 ms. It generates a velocity control signal that is
with z&) as the forcing function. Solving Eq. (13) for fed to the Dynaserv driver. The velocity loop
z(t) and assuming z(0) = 0. we obtain the preshaped implemented in the driver has manually adjusted
trajectory, y(t): proportional (&) and velocity (J&/v) gains, both
shown in Fig. 4. The velocity loop generates the
current command, @), to the motor driver, which
modulates the voltage of each phase of the 3-phase
The error introduced by z(t) produces the discontin- brushless DC motor. For simplicity, the current
uous controls when filtered through the feedback driver is represented in the velocity loop by the
controller. This computation is quite simple and can constant gain, KVa, and the motor is modeled as a
be done on-line. current driven DC motor, and is represented by its
This trajectory preshaping scheme is equivalent to torque constant Kt.
feedforward control, except that it is done at the The derivative gain used in the position servo
trajectory planner level, outside of the controller. controller was added to modify the damping ratio
Aside of the benefit to end-users who have no access determined by the velocity loop in the Dynaserv
to the feedback controller, this allows tuning the driver. The gains for this controller were selected
par&meters in GE’(s) to account for unmodeled manually for the highest bandwidth that does not
dynamics.g excite the structural resonance modes of the base
frame.
The time-optimal trajectories along specified paths
4. EXPERIMENTAL SET-UP were computed off-line using the method discussed in
The time-optimal trajectories were used to drive the Section 2 and presented in Ref. 10. The dynamic
UCLA Direct Drive Arm (DDA), shown in Fig. 3. It model used in the optimization was the rigid body
consists of a five-bar mechanism actuated by two model, with no motor dynamics or joint friction. The
Yokogawa brushless DC motors with rated peak trajectory, consisting of the time history of the joint
torques of -1-30
- Nm and peak velocities of positions and the nominal actuator torques, was used
32 Robotics & Computer-Integrated Manufacturing l Volume 12, Number 1, 1996
Motor+Driver (velocity mode)
-I-------------

i’
;--

ud
Kp+Kvs Edc - Kva - Kt - Robot -

1_
I
I
I ;
Kflv I
IL- b
-c-------------- -l

Fig. 4. A single joint controller.

as a reference trajectory to the position joint


controllers implemented on the PC.
To preshape the trajectory for the control system
shown in Fig. 4, we first compensated for the
constants in the forward and feedback loops of the
velocity loop to produce the reference velocity input,
v(t), using the nominal joint velocity, &(t), and the
nominal actuator torques, u&):
-5

.. .. . . .. .. . . . Experiment

The reference input to the outer loop was then -10


preshaped to account for the PD controller using Eq. Time [s]
(14), except that 8,(t) was used as the nominal
Fig. 5. Nominal and actual torques.
trajectory and v(t) as the forcing function:
Nominal in Fig. 6. The Experimental curve represents
the actual positions as measured by the position
encoder. Clearly, the actual torques deviate signifi-
This trajectory preshaping scheme compensates for cantly from the nominal input. Consequently, the
the feedback controllers of the position and velocity actual trajectory deviates substantially from the
loops to produce the optimal control, z&(t), at the nominal trajectory, suggesting the need for a better
joints, assuming current driven DC motors, How- motor/driver model.
ever, this motor model ignores the true motor and
driver dynamics, which are quite significant, as
demonstrated next. 5.1. Motor and driver models
The Yokogawa motor is a 3-phase hybrid variable
reluctance and permanent magnet motor. The driver
5. MOTOR AND DRIVER DYNAMICS consists of a current controller and an inverter. The
To demonstrate the significance of motor and driver current controller uses pulse width modulation
dynamics, we operated the motors in torque mode, (PWM), implemented by a 3-phase inverter,7 to
which allowed us to directly specify the current modulate the voltage supplied to each phase of the
command, i(t), and thus bypass the velocity loop. motor? The windings of the motor’s phases are
Specifying the current command is called torque connected in a Y-configuration. ’ 3
mode since the motor command is proportional to
the commanded current. However, the motor toque
is not proportional to the commanded current since
this is not a true DC motor, and the driver is not a
true current amplifier.
In this experiment we apply a square wave torque
command, denoted Nominal in Fig. 5. The torque
command was divided by KvaKt to produce the
current command, i(l). The square wave was set low
at + 5 Nm in order to avoid saturating the motor’s
velocity rating. The actual torque, denoted Experi-
mental in Fig. 5, was computed from the actual
acceleration (differentiated from the position read- -1.0
ings) and the rotating load. Integrating the nominal 0.0 0.1 0.2 0.3 0.4
torques, using the rigid body dynamics, to produce Time [s]
the joint positions, resulted in the curve denoted Fig. 6. Nominal and actual joint positions.
Time-optimal control for robotic manipulators l 2. SHILLER et al. 33
The electrical dynamics in the winding of the jth
phase are given by: I2
d R
-&b(t) + z b(t) = k { Q(t) + o(t)& sin[lVO(t) + &I}
(17)
where R and L are the resistance and inductance of a
typical winding, respectively, Vj is the phase voltage,
K, is the back EMF coefficient, N is the number of
rotor teeth, and 8 and o are the rotor position and
speed. The phase angles $A, $B, & are 0, -2n/3,2n/ II

3, respectively. 0.0 0.1 0.2 0.3 0.4 0.5 0.6


The total electromagnetic torque generated by the Time [s]
motor is given by:12 Fig. 8. Experimental and simulated (with static friction) torque
output,
T(t) = - K$~(t)sin(A@(t)) - in(t)sin(lve(t)
- 2n/3) + &(t)sin(lVO(t) + 2z/3)] (18)
where Kt is the motor torque constant. 0.8
Using the square wave current command (scaled
from the nominal torque command) as the voltage
input to the models of the driver and the variable
reluctance motor, produced the torque curve,
denoted Motor model, in Fig. 7. The simulated
torques are shown to be in close agreement with
the Experimental torques, also shown in Fig. 7,
except for an offset due to the yet unmodeled static
friction. It is interesting to note that the simulated -0.6
torques closely approximate the actual torque -0.8
ripples, which are the result of the voltage modula- -1 n
tion and the sinusoidal distribution of the magnetic ““0.0 0.1 0.2 0.3 0.4
flux with the rotor position. The joint positions Time [s]
produced by this model are ,denoted Motor model in Fig. 9. Simulated and actual joint positions.
Fig. 9. Adding static friction to this motor model
resulted in even a better agreement with the current command for better tracking accuracy, as
experimental results, as shown in Figs 8 and 9. This discussed next.
brought the position curve, denoted Motor w/stiction
in Fig. 9, significantly closer to the experimental 5.2. Viscous friction model
results. To account for the steady-state motor/driver
The drawback of this model, however, is that it is dynamics, we propose the following empirical
noninvertible, i.e. it is not possible to derive the model. It was obtained by plotting the difference
current command (to the driver) as a function of the between the actual and nominal motor torques vs
desired torque output. We therefore propose a motor speed, using the square wave torque command
simplified empirical model, called the viscous friction shown earlier in Fig. 5. The resulting curves,
model, which is invertible, and is used to modify the smoothed for several trials, were then fitted with
straight lines, as shown in Fig. 10 for the two motors
loI of the DDA. The equations of these lines are

1.6 + 2.2081 for& > 0


Tn. = (19)
- 1.3 + 1.94 & for81 < 0
for Motor 1, and
1 l 4 + 3.0 e, for & > 0
Tn = (20)
- 2.0 + 2.7182 for & < 0
,.......a,... Motor mo&l

-10’ for Motor 2. This model includes an offset, which is


0.0 0.1 0.2 0.3 0.4 0.5 0.6 attributed to stiction, and a linear component, which
Time [s] resembles viscous friction, and is likely to include a
Fig. 7. Experimental and simulated torque output. substantial component of the back EMF. It is
Robotics & Computer-Integrated Manufacturing l Volume 12, Number 1, 1996

i(t,
Td(4 4)
e> =K,,K,* (22)

It is assumed that this current command does not


exceed the driver’s and motor’s rated currents.

6. TIME-OPTIMAL CONTROL-EXPERIMENTS
We have demonstrated that the unmodeled motor
dynamics may contribute to significant errors of the
open-loop system. Closing the loop with a state
feedback would reduce the errors significantly,
-3 -1 0 1 2 3 however, it cannot handle the typical discontinuities
co [rad/s] of the time-optimal control. This is accomplished by
preshaping the trajectory to account for the
Fig. 10. Viscous friction model.
dynamics of the feedback controller, as is demon-
strated in this section.
We first present experimental results for the time-
optimal trajectory, using PD position controllers
with no preshaping and no compensation for motor
dynamics. We then use the friction model and
trajectory preshaping to further reduce the tracking
errors. And finally, the time-optimal trajectory is
compared to the equivalent trapezoidal velocity
profile along the same path.

6.1. PD controller
- - - - Friction model The objective of this experiment is to track the path
-10 shown in Fig. 12 at the minimum time. The path,
-no 0.1 0.2 0.3 0.4 0.5 0.6
Time [s] having a total length of 1.1 m, represents the trace of
the robot’s tip. To restrict the tip velocities to under
Fig. 11. Nominal torques modified by the friction model.
2 m se?, the actuator torque limits were set at
T= + - 10 Nm, which is lower than the manufacturer
specified peak torque of +30
- Nm. The time-optimal
interesting to note the asymmetry of the motor
trajectory and the velocity limit curve along this
response with respect to the direction of rotation, path, computed using the method presented in Ref.
which might be due to the asymmetric voltage
10, are shown in Fig. 13. The optimal motion time
modulation of the driver. The difference between
for this trajectory is 1.17 sec. Hence, the average
the behavior of the two motors might be due to the
speed was about 1 m set-‘, with a peak speed of 1.8
variations in motor structures.
m see-‘.
Subtracting Tf from the nominal torques
produced an approximation of the actual torques Path in Workspace
5 0 r---~-----’ 1 - -
applied at the joint, as shown in Fig. 11.
Integrating the modified torques resulted in the
position curve denoted Friction model in Fig. 9,
which is in close proximity to the experimental
results. This suggests that the simple friction model
can be used as a good substitution for the
comprehensive motor model for the speeds en-
countered in this experiment. For higher speeds, a
second-order model might be necessary.
For the purpose of accurately tracking a time
optimal trajectory, the “friction torque”, Tf(@, is
added to the nominal control, u&), to yield the
desired motor torque, Td(t,@, for each joint:
Time-optimal control for robotic manipulators a Z. SHILLER et al. 35

Tracking the same path at the time-optimal speeds,


Velocity Limit Curve $I computed for actuator torque limits set at 3-30- Nm,
p--r-,,
resulted in the optimal motion time of 0.67 sec
I
( = 1.17/a), and the actuator torques shown in Fig.
18. The actual torques deviated significantly from the
nominal torques, as evident from Fig. 18, resulting in
a significant increase in the tracking errors of joint 1,
as shown in Fig. 19. This increase is partly due to the
increase in speeds, but mostly due to the motor/
driver saturation.
Better results can be achieved by compensating for
a
the motor/driver dynamics and the dynamics of the
0.2 0.4 0.6 0.8 1.0 1.2 feedback controller, using trajectory preshaping, as is
Time [s] demonstrated next for actuator limits set at - +10
Fig. 13. Time-optimal and trapezoidal velocity profiles for * 10 Nm.
Nm.
6.2. Trajectory preshaping
In this experiment we preshaped the optimal
The velocity limit curve represents the upper trajectory by first using Eqs (22), (19) and (20), to
bound on the manipulator speeds due to the actuator produce the desired torque, Td, for each motor.
limits. Any speeds exceeding the velocity limits would Substituting Td for z&) in Eq. (15) produced the
either violate the actuator constraints (2 10 Nm) or velocity reference input, which was then used to
cause the manipulator to deviate from the specified produce the preshaped reference trajectory, y(t),
path. Using the true ($- 30 Nm) actuator limits would using Eq. (16).
raise both the time-optimal trajectory and the Using the preshaped trajectory as the reference
velocity limit curve. input to the PD joint controllers resulted in the
The nominal and the actual torques used to track actual actuator torques shown in Fig. 20. Also shown
the optimal trajectory are shown in Fig. 14. The in Fig. 20 are the nominal torques, which are the
actual torques were computed from the actual optimal torques, modified with the friction model. In
trajectory using inverse dynamics. The actual contrast with the torques shown earlier in Fig. 14, the
torques trailed behind the nominal torques due to actuator torques now follow the nominal torques
the delay introduced by the feedback controller, as almost perfectly. The overshoots after each switch
is evident from joint 1 in Fig. 14 and from the indicate the delays due to the remaining unmodeled
velocity profiles shown in Fig. 15. The feedback motor dynamics.
controller compensated for these delays by over- The nominal velocity profile is now followed much
shooting the nominal control after each disconti- closer, as shown in Fig. 21, resulting in significantly
nuity. Since the actuator limits were set reduced tracking errors, as shown in Fig. 22. The
computationally for the nominal trajectory, but mean tracking error along the path was 0.3 mm,
were not enforced during the execution of the representing a significant reduction compared to the
actual trajectory, the actual torque overshot to PD controller with no preshaping. The geometric
about + 15 Nm. The resulting tracking errors errors, shown in Fig. 23, are also drastically reduced,
were, therefore, relatively small, as shown in Fig. with a mean error of 0.13 mm.
16. The mean tracking error along the path was 2.16 To put these errors in perspective, the time-optimal
mm. Fig. 17 shows the geometric error normal to trajectory is compared to the equivalent trapezoidal
the nominal path, with a mean error of 0.88 mm. velocity profile along the same path.

10 t
n

E 0
I
z
L-J

-10 -

-200
0 0.5 1 1.5
Time [sec] Time [sec]
Fig. 14. Nominal and actual actuator torques for + 10 Nm.
36 Robotics & Computer-Integrated Manufacturing l Volume 12, Number 1, 1996
Tip Velocity
I I 1 1 1 I

0 20 40 60 100 120
Distance along p a t h [cm]

Fig. 15. Nominal and actual velocity profiles for & 10 Nm.

.
o.L)2, , TraykIng Errqr 2

0.015
7
g 0.01
u
0.005

0
0 0.5 1

Time [sec] Time [sec]


Fig. 16. Tracking errors for + 10 Nm.

Path Deviation
1 I I

0 20 40 GO 80 100 120

Distance along path [cm]


Fig. 17. Geometric errors for & 10 Nm.

Torque
* 1
40

20
I n

E 0
E
z
-20

-40 -40 t 1
0 0.5 1 0 0.5
Time [sec] Time [sec]
Fig. 18. Nominal and actual actuator torques for &30 Nm.
Time-optimal control for robotic manipulators a Z. SHILLER et al. 37
Error 1 Tracking Error 2
Tracking 1 I

0.5 0 0.5 1

T i m e [sec] T i m e [sec]

Fig. 19. Tracking errors for *30 Nm.

Torque 1 20 Torque 2
I 1 1

10 10
n
E
0 1 0
7
- SJ
10 -10

-20
0 0.5 1 1.5 0 0.5 1 1.5

T i m e [sec] T i m e [sec]
Fig. 20. Actuator torques with preshaping and motor compensation using the friction model.

Tip Velocity
-,---I- ‘! I
- Actual
-----Nomind-

t
1 1 L t 1 I 1
Q 20 40 60 80 100 120

Distance along p a t h [ c m ]
Fig. 21. Velocity profiles with preshaping and motor compensation.

Tracking Error I Tracking Error 2


0.02 1 I I I

0.015 - 0.015
7 ,a’
2 0.01 - 2 0.01
1 1
0.005 - 0.005 .
i
0-- Ofi
0 0.5 1 1.5 0 O-5 1 1.5
T i m e [sec] T i m e [sec]
Fig. 22. Tracking errors with preshaping and motor compensation.
38 Robotics & Computer-Integrated Manufacturing l Volume 12, Number 1, 1996
Path Deviation
3- 1 1 I 1 1

40 60 80
Distance a l o n g p a t h [ cm]

Fig. 23. Geometric errors with preshaping and motor compensation.

6.3. Comparison to trapezoidal proJiEes It shows the experimental tracking errors versus
An equivalent trapezoidal velocity profile is one that motion time for the trapezoidal and time-optimal
traverses the path shown in Fig. 12 at the optimal velocity profiles, along the path shown earlier in Fig.
time of 1.17 sec. It is compared in Fig. 13 with the 12. The trapezoidal trajectories consist of constant
time-optimal trajectory. To achieve the optimal time, accelerations and decelerations, set at 8.0 m secM2 to
the trapezoidal trajectory crosses the velocity limit match the maximum acceleration and deceleration of
curve twice. Crossing the velocity limit curve would the optimal trajectory. The maximum velocity was
require higher actuator torques than the specified varied, corresponding to the motion times along the
limits. Tracking the path at this trapezoidal profile, horizontal axis. The resulting mean tracking errors,
using the same PD controller as for the time-optimal obtained experimentally using the same PD con-
trajectory, resulted in the actual (experimental) mean troller as for the time-optimal trajectory, are plotted
tracking error of 1.86 mm, compared to 0.30 mm for along the vertical axis in Fig. 24. The experimental
the time-optimal trajectory. error for the time-optimal trajectory, computed with
This error is slightly better than the error obtained actuator limits at & 10 Nm, represents one point in
for the time-optimal trajectory with no preshaping Fig. 24. Clearly, the tracking errors for the
since in both cases the torque limits were set trapezoidal profiles increase drastically for motion
computationally at + 10 Nm, but were not enforced times lower than the optimal time, mainly due to the
during the execution of the actual trajectory. increased motor saturation.
However, there was little we could do to reduce the Figure 25 demonstrates the trade-off between the
errors for the trapezoidal profile since the nominal required torques and the tracking errors. The
actuator torques for joint 1 exceeded 90 Nm at some maximum required torques depicted in Fig. 25 were
points. To achieve tracking errors comparable to the computed, using inverse dynamics, for the various
time-optimal trajectory (with preshaping) using the trapezoidal trajectories. To execute a trapezoidal
trapezoidal profile would mean significantly slowing trajectory with the optimal time of 1.17 sec would
the manipulator speed and thus increasing the require a motor with a rated capacity of at least 100
motion time, as is illustrated in Fig. 24. Nm, 10 times the motor capacity used to generate the
Figure 24 demonstrates the trade-off between time-optimal trajectory, and more than 3 times the
speed and accuracy for trapezoidal velocity profiles. actual motor capacity of the DDA. Using the full

3.0 120

2.5 100

Time-
- Optimal

0.5

0
2 3 4 5 0 2 3 4 5
Motion Time [s] Motion Time [s]
. Fig. 24. Trade-off between mean tracking error and motion time Fig. 25. Trade-off between maximum torque and motion time for
for trapezoidal trajectories. trapezoidal trajectories.
Time-optimal control for robotic manipulators l Z. SHILLER et al. 39

motor capacity (& 30 Nm instead of zt: 10 Nm) to path, resulted in tracking errors six times larger than
compute the time-optimal trajectory would have the corresponding time-optimal trajectory. The merit
resulted in an even more favorable comparison. of time-optimal control is, therefore, not only in
These comparisons clearly demonstrate the merit reducing motion time but also in increasing motion
of the time optimal trajectory over the trapezoidal accuracy. This might be most beneficial in applica-
trajectories in both motion time and tracking tions, such as laser cutting, caulking, and glue
accuracy. dispensing, for which cycle time a n d accuracy are
essential.
7. CONCLUSIONS The practical demonstration of the accurate
This paper presents experimental evaluations of time- tracking of time-optimal trajectories presented in
optimal control of robotic manipulators, demonstrat- this paper suggest time-optimal control as a viable
ing the significance of the unmodeled motor alternative to current non-optimal controllers and
dynamics and the feedback controller, when tracking motion planners.
time-optimal trajectories, and the high accuracy that
can be achieved with a simple motor model and
REFERENCES
trajectory preshaping. 1. Bobrow, J. E., Dubowsky, S., Gibson, J. S.: Time-
It was shown that the often ignored motor optimal control of robotic manipulators. Int. J. Robot.
dynamics of direct drive motors may contribute Res. 4(3): 3-17, 1985,
significantly to the tracking errors. The complex 2. Chen, Y., Desrochers, A. A.: Structure of minimum-
model of direct drive motors might be one reason for time control law for robotic manipulators with
ignoring motor dynamics in computing time-optimal constrained paths. In IEEE International Conference
of Robotics and Automation, Scottsdale, AZ, May 1989.
trajectories. We, therefore, propose a linear model, pp. 971-976.
called the friction model, which was shown to account 3. Dahl, 0.: Path-constrained robot control and limited
for the significant motor and driver dynamics at torques-experimental evaluation. IEEE Trans. Robot
moderate speeds. A second-order model might be and Automation RA-1O(5): 658-669, 1994.
required for higher speeds. 4. Kahn, M. E., Roth, B.: The near-minimum time control
of open loop articulated kinematic chains. J. Dyn. Syst.
Using a PD controller to track the time-optimal Measure. Control 93(3): 164-172, 1971.
trajectory demonstrated the deficiency of error driven Kenjo, T.: Power Electronics for the Microprocessor
controllers, which cannot produce the typically Age, New York, Oxford University Press, 1990.
discontinuous optimal control. The controller com- Krause, P.: Analysis of Electric Machinery. New York.
pensated for the errors caused by the smoothed McGraw-Hill, 1986.
Ono, Y.: A direct-drive motor control system and its
controls by exceeding the control limits after each features. Adv. Robot. t (2): 243-253, 1992.
discontinuity. This resulted in extensive tracking Pfeiffer, F., Johanni, R.: A concept for manipulator
errors when the control constraints represented the trajectory planning. IEEE Trans. Robotics and Auto-
true control limits. mation RA-3(3): 115-123, 1987.
The errors introduced by the error driven feedback 9 . Shiller, Z., Chang, H.: Trajectory preshaping for high-
speed articulated systems. A S M E J. Dyn. Syst.
controller can be reduced using the previously Measure: Control. In press.
developed trajectory preshaping? It adds a correc- 10. Shiller, Z., Lu, H. H.: Computation of path constrained
tion term to the reference trajectory that, when time-optimal motions with dynamic singularities.
passed through the feedback controller, produces the ASME J. Dyn. Syst. Measure. Control 114: 34-40,
1992.
desired discontinuities of the nominal control. Using
11. Shin, K. G., McKay, N. D.: Minimum-time control of
the trajectory preshaping technique and compensat- robotic manipulators with geometric path constraints.
ing for the motor and driver dynamics, using the IEEE Trans. Automatic Control AC-30(6): 531-541,
friction model, resulted in remarkably accurate 1985.
tracking. 12. Wong, V.: Mathematical modeling and experimenta-
The time-optimal trajectory was compared to the tion on hybrid permanent magnet motors. M.S. Thesis,
Mechanical, Aerospace and Nuclear Engineering,
commonly used trapezoidal velocity profile. It was UCLA. In press.
shown experimentally that the equivalent trapezoidal 13. Yokogawa Precision: Dynaserv Direct-Drive Servo
trajectory, yielding the optimal time along the same Actuator Instruction Manual.

S-ar putea să vă placă și