7/26/2019 Simulation of a Cartesian Robot Arm
1/8
SIMULATION
OF
A CAR TESIAN ROBOT ARM
W.
L Nelson and
J .
D
Chang
Bell Laboratories
Murray Hill , New
ABSTRACT
This paperdescribesaprogram or the simulation of
the control logic and ystemdynamics of a robot ar m having three
Cartesian axes of motion plus wo rotat iona laxes of the wrist. T he
program was written in the C languageand includesa fourth-order
Runge-Kuttalgorithmorhentegratio n of the nonlinear
differential equations for the individual axes. Validation of the
program operation and evaluation of the many system param eters are
.also discussed. The sim ulat ed motion is compared and adjusted o fit
experimental data on the actua l arm motion. The results indicate that
th e simulation can be a useful and safe means or off-line testing of
system chang es and new control schemes.
I.
INTRODUCTION
Computerimulations of the ynam ics of robot arm s re found
extensively in th e l i ter at~ re. ' -~ Th e dvantages of having a program
that accu ratel y reflects a robot's d ynam ics are gre at: having a virtual
second robot allows one to try expe rimental control algorithm s without
the danger of hurting the robot
or
personnel.
Th e simulation of the dynamics of the Automatix AID 600 robot was
wri tten in the C anguage, closely ollowing the orm of aprogram
previously written by
M
K Brown for the simulation of aobot
gripper.5
11 DESCRIPTION OF DYNAMICS
T h e A I D
600
robot arm has Cartesian X Y Z axes of motion,plusa
wrist with wo-axis revolute pitch and roll motion. Th e orientation of
these axes with respect to the robot ar m is shown n Fig.
1.
The gross
dynamics of the robot a rm can besimplifiedby assuming the X Y Z
axes uncoupled a nd the wrist a constant-m ass payload with negligible
coupling effects, allowing the individual axeso be simulated
independently of each other.The existingprogramconsiders the X
axis; suitable substitution of constants can yield models for the and
Z
axes.
Figu re 2 is a system block diagra m for one of the robot axes.
In
this
figure, J,
is
the m oment of inertia of th e axis servo-motor, a nd B,
is
the motordamping.The ineardynamics of the robot axis canbe
described by th e two tate variables position, yo, nd velocity yl.
Because the effects of motor gear backlash are o be examined, the
nonlinear effects of th e coupling a nd uncoupling of t he ack nd
pinion system of the arm andmotor gearare described with two
additionalstate variables: gear angle, y2,andgearangular velocity,
y3, with the drive force transmitted hrough he stiffness and friction
of the gear train when the t eeth a re in contact.
Within hevoltage aturation imits, hedriveractsasacontrolled
current source with transcondu ctance Ki, as maintained by a current
feedback loop n the controller circuitry. When the motor reaches the
voltage saturationimit,t an e haracterized by aingle-pole
inductance-res istance model with aback EM F proportional to he
motor angul ar velocity. The m otor is driven by acontroller with an
inpu t for a reference (set-velocity) voltage, and an inverting inpu t for
a tachom eter feedback voltage. Th e controller has aswitchingmode
power drive unit, preced ed by a preamplifier consisting of a ag-lead
212
Iersey 07974
(pole-zero)ompensation etwork, an overall frequency rolloff at
about
1000
Hz, andan outpu t voltage limit, V,. The preamplifier's
two poles and one zero can be described by the linear combination of
twoauxiliary stat e variables,
y4
and y5. The nonlineardynamics of
the motor-controller are represented by the motor current, which is
the state variable, y6.
T h e AID 600 slave control unit computes the set-velocity v oltage for
each movementxisn the high-level comm andoftware, using
informationrom position andpeed-schedulenputs,markeds
'track' data nput inFig. 2 plus eedback data fromoptical encoder
on
the motor shaft.The set-velocity voltage outp ut is modeled asa
sam pled- data device f eriod
5
ms; t he position feedback ptical
encoder in put also has a period of 5 ms. The input of new track data
from themaster controlunitoccurs at 80 ms intervals. The control
logic sed in the slave control nit is a ombination of position,
velocity, andnteg rated position functions, as shownn the lower
portion of Fig. 2. In summary,he dynamics of the closed-loop
control system for a single axis of the robot ar m motion is represented
by the seven state variables:
yo ar m position (m.)
y ,rm velocity (m/s.)
y2 motor anglerad.)
y3 motor velocity (rad /s.)
y4 controller reamp. ariable (volts)
ys
controllerpreamp.variable 2 (volts/s.)
y6motor current (amps.)
Four auxiliaryvariables, which ar e functions of thestate variables,
are: fg, the force coupled throug h the gear drive in Newtons (N), F,,
the tatic friction orce
N),
V,, the motorvoltage, and, V,, the
controller preamp. output voltage.
In terms of these variables, the differential equations of motion are:
o =
Y1
(1)
Y2 = Y3
Y4 = Ys
where B, is the viscous friction coefficient and M the mass of the
arm-rack mechanism; B, is the rot atio nal friction coefficient,
J,
the
inertia,
K,
the torque constant of th e motor, and r the radius of the
pinion gear. The controller param eters re he compensation pole
time constant,
T
the high frequency roll-off time cons tant,
T
nd
CH2008-1/84/0000/0212 01.0001984IEEE
7/26/2019 Simulation of a Cartesian Robot Arm
2/8
the signal and 2 input gains,
K,
and
K,.
The controller nputs are
the set-velocityvoltage,
U(t),
and he achometer eedbackvoltage,
which is
Kt
times the m otor angular velocity, y,(t).
T he controller preamplifier output voltage is given by
Vc = y4 T,YS IVcI
G
VL (2)
As
is indicated
in
Fig. 2 , hemotorvoltag e is proportion al o he
preamplifier output minus the current feedback, i.e.,
V, =
K,(Vc y&i) 9
IV,I
< V,
1
(3)
where K, is the orward gain f the power nit nd Ki is the
conductance of thecurrent eedbackpath. When
K,
is sufficiently
large,nd when lVml
H
f8 = (x+H)k, + (rgy3-yl)bg x < -H 5 )
0
- H < x G H
Th e axis-load rictionhas wo omponents.First, viscous riction
proportional o elocity,which is reasonably well modelled by the
linear force, Bayl; and second, a static friction, F,; which is modelled
as a force doublet
in
the region of zero velocity, i.e.
F , s g n [ ~ , I , l y l l