A Simulator for NASA's Shuttle Robot Arm
"Factoring the application into separate,
largely autonomous modules, called 'processes,'
kept the development time short -- particularly the debugging time."
NASA's space shuttle carries a 50-foot long, six-joint arm for use in
satellite deployment and retrieval operations, and to assist astronauts in
servicing tasks such as the recent mission to repair and upgrade the Hubble
Space Telescope. The arm, formally called the Remote Manipulator System (RMS),
has ten different modes of operation, ranging from simple direct movement of
the joints, one at a time, to very complex multi-joint motions directed by
rotational and translational joysticks. Using the joysticks, an operator can
command motion about any desired axis, and the RMS software will make all the
coordinate transformations and complex calculations necessary to derive the
needed command rates for each of the six joints. Arm control, status
information, and positional displays are provided both by a hard-wired panel
containing control switches, status lights, and digital displays, and by a
series of interactive status and control screens on the shuttle's General
Purpose Computer (GPC).
In order to plan for missions involving the RMS, there are also two
ground-based versions of it, one at the Johnson Spaceflight Center in Texas
(JSC) and one at the Goddard Spaceflight Center in Maryland (GSFC). Because of
the need to work in a gravity environment and other specific design factors,
the ground-based arms differ from the RMS and from each other. The GSFC arm,
for example, is designed to carry up to a thousand pound payload at its tip. In
order to do this, it uses a high pressure (4000 psi) hydraulic system rather
than electric motors as on the RMS.
In June 1994, Forth, Inc. was selected to
provide the overall control program for the GSFC arm, called the RMSS (Remote
Manipulator System Simulator), along with Electrologic of America (ELA) who
provided the control electronics and drivers. Because of the completely
different nature of the joint controls, the original RMS software was not
usable except as a source of algorithms. The basic requirements for the RMSS
were that it must behave identically to the RMS as far as operational modes,
display panels, and CRT screens were concerned, while interfacing to a new and
different type of hydraulic control hardware. There were other constraints,
such as the fact that, although this is a rate control system, the RMSS (unlike
the shuttle RMS) has no tachometers and rate information had to be derived from
differencing angular position data. Finally, the entire system was to be
delivered in 60 days.
The RMSS proved to be an excellent application for EXPRESS, Forth, Inc.'s
Event Management and Control System software package. The design methodology in
EXPRESS, involving the factoring of the application into separate, largely
autonomous modules called "processes," was an important factor in
keeping the development time -- and particularly the debugging time -- short.
The RMSS contains fourteen separate processes: one for each joint, one for each
joystick, one for the digital display panel, a simulation process, a trending
process, and several supervisory processes. Each process was developed and
tested as a stand-alone unit, and was later integrated into the complete
system.
EXPRESS contains, as a standard feature, full simulation capabilities which
allow application testing without any I/O hardware present. During RMSS
development, engineers simulated operation of the arm in all modes, including
the joystick-commanded multi-joint motions with their involved mathematics. The
simulation process in the RMSS application was used to convert commanded rates
to simulated joint angles so that the full arm position was available on all
the system displays. Simulation testing was so thorough that when the arm
software was installed on site, not a single change was made to the executive
control algorithms.
When working with the real arm hydraulic system, it became clear that major
changes were needed in the low-level joint control processes to ensure smooth
and accurate operation. First, because joint angle readouts are used for both
position and rate, precise calibrations were necessary. EXPRESS' standard
Historical Trending Display (HTD) was used to capture joint angles as a
function of time; then later analysis of the graphs provided the necessary
position and rate information.
Because of the large and changeable gravity loads on the system, it was not
possible to achieve precise commanded velocities for the various joints without
rate feedback. A PID control loop was developed for each joint, with rate
feedback coming from an adjustable second-order software filter on the joint
angle. This complexity was necessary because differencing angles to get rates
is inherently a noisy process. Although this was a major change to each joint
process in the RMSS, because of the inherent process isolation in EXPRESS there
were no system-wide ramifications. In order to tune the filter coefficients and
PID constants for each joint, EXPRESS' Process Monitor Display (PMD) was used
extensively. This utility allows examination and on-line modification of all
variables in a process. While the arm was running, it was possible to change
the characteristics of each joint and observe the results without stopping to
recompile and reload the software. In a single operating session of a few hours
it was, therefore, possible to make a complete pass at optimizing all six
joints in the system.
The complete checkout, debugging, and optimization of the RMSS on site took
several weeks, including the inevitable hardware component failures and
software modifications typical of first-time operation of a complex system. At
the end of this period, in a two-day demonstration the RMSS operation
successfully duplicated the original shuttle RMS. Astronauts from NASA's
Johnson Spaceflight Center who had been trained on the RMS were able to use the
RMSS after only a few minutes of explanation of the essential differences.
The author, who generally goes by "Ned,"
was one of the founders of Forth,
Inc. In his former life, he was a radio astronomer at the National
Radio Astronomy Observatory and NAIC, Arecibo, Puerto Rico. This article first
appeared in Forth Dimensions
XVI/6.
|