The
Jet Propulsion Laboratory in Pasadena, California is NASA's unmanned
space exploration headquarters. JPL looked to the commercial market
for equipment that could be made to work, rather than using the traditional
route of designing everything from scratch. Planners used a straightforward
set of parameters:
• Should we make the equipment ourselves, or buy it from an outside supplier
who can build them to our requirements?
• If we buy equipment, should we buy commercial grade or military grade? (Military
grade may be more rugged, may have rugged cases, or may have redundancies built-in
to protect from errors.)
• If we buy commercial grade, can we reliably fly it to Mars?
• If we buy military grade, can we carry the heavier weight and provide the larger
power supply needs--if there are such?
• What kinds of modifications and tests do we need to perform on the hardware
to prove their reliability?
• If we make the equipment, will we have enough time and money?
In
the end, hardware and software was off-the-shelf and commercial grade in most
instances, with modifications at sensitive points for the hazards of
spaceflight.
Lloyd Keith, Cognizant Engineer for the Mars Pathfinder Flight
Computer and Operating System, explained the advantages: "By
having both real time operating system and hardware that came
out of the commercial world, with millions of
hours of operations on them, we had products that were very solid from the
beginning. Anything anybody could have done to them, they already had done.
That equipment had been through the wars."
For the transit from Earth to Mars, for example, "We used VxWorks," (by Wind
River Systems) said Glenn Rogers, Flight Software Cognizant Engineer for the
project. "This gave us a lot of flexibility in testing. The fidelity wasn't
perfect since our equipment ran it slightly faster than the flight computers
did. But it allowed us to cheaply set up real environments for every developer
on the software team."
" With the typical space program, you build a computer, then build the operating
system, then after that you build your applications code," Said Keith. "You get
only a limited set of tools at each level because there is no time or money to
build what you would like to have." But with this project, "We could set up our
software development immediately, in a tool-rich environment. And, using commercial
products, we not only get a wider range of tools, but we get better code-writing
and debugging. We're actually sharing the cost of development with all those
commercial users."
The Lander used a derivative of a commercial IBM R6000 computer with VME
bus, 22 MIPS (million instructions per second), 128 MB of DRAM (dynamic
RAM, used
in place of a standard hard drive). The DRAM stored photo images and data for
later transmission to Earth.
The Rover computer was trickier to adapt, given that the entire vehicle
was the size of a microwave oven. "We used a fairly antiquated processor," said
Jacob Matijevic, Rover Manager. The result was an Intel 80C85 CPU (central
processing unit)with a multiplexed address/data bus with an 8-bit address bus
and an 8-bit data bus. Designed for very low power consumption, the unit operated
on 3 to 6 volts. Total memory was 672 KB, of which 160 KB was EEPROM (electrically-erasable,
programmable ROM). Of the remaining 532 KB of useable memory, 48 KB was hardened
against radiation to protect it from crashes caused by passing cosmic rays.
This is where the operating system was stored. The rover too had no hard disk
but stored images and data in RAM until it could transmit those to the Lander.
Surprisingly, the Rover's CPU ran at a snail-paced 2 MHz, about 1/100th
the speed of today's laptops. But the Rover was no Indy-500 car, and
the controls
were more than adequate.
" The principal software language is C," Matijevic said. "We used a compiler,
and did some assembly language development in areas where we had time-dependent
I/O for select components, primarily for the cameras. 'C' has some common characteristics
in the sense of there being an expertise across the programming community. It
has good structure/programming characteristics, allowing for a natural language
instruction set. And it tends to document itself readily."
The main software programs were loaded into the Lander and Rover before
launch, but programmers could send short scripts or "sequences" at need.
A sequence might cover a day or less (when the Sojourner was busy on the
surface of Mars)
or as long as a month (when the spacecraft was en route to Mars).
***
The Mars Pathfinder launched on December 4, 1996 atop a Delta II rocket.
The objective was a part of the Ares Vallis on Mars. Given the distance
and long
flight time, five "burns" or trajectory corrections were planned for the mission,
the ultimate objective being to arrive at a specific point above the atmosphere
of Mars on July 4, 1997. NASA likened this to a golf game where you have just
five strokes to reach a hole that is more than 497 million kilometers (309
million miles) from the tee. (The distance is along the curving flight path.)
After a seven-month low-speed, low fuel consumption flight, the Pathfinder
arrived on target after just four correcting maneuvers, scoring a "birdie" in
NASA's golf game.
The Lander arrived within 20 km (13 miles) of its target center. It slowed
its descent with a parachute and retro rocket and cushioned the final impact
with surrounding airbags. The Lander hit the surface at about 40 mph, bounced
50 feet into the air, and bounced fifteen more times before finally rolling
to a stop 2.5 minutes later and 1 km from the initial impact. Though designed
to "right" itself no matter which of its four sides ended up face down, the
Lander happened to come to rest on its base.
The Mars Pathfinder's Rover rolled onto Mars' surface at 0540 UT (1:40
AM EDT) on July 6. The little robot was an instant hit with the public
and scientists
alike. Named *Sojourner* after 19th century black abolitionist and women's
rights advocate Sojourner Truth, the little Rover's daily adventures made nightly
news as it drove around poking at rocks, testing the soil underfoot, and measuring
temperatures.
Back in Pasadena, California, programmers at JPL planned each move of
Sojourner by testing it first on a sample "test bed" made up to look
like the landing site. A spare rover, this one named Marie Curie and
an exact replica of Sojourner,
would perform each instruction first to see if it was feasible. Only then would
the new instruction set be transmitted to the Lander for relay to Sojourner.
Sojourner's radio, with a signal similar to a small walkie-talkie, had a limited
range. Programmers also took care not to send the Rover behind a rock or down
into any depression that might take the Rover's antenna out of line-of-sight
to the Lander.
Each day (or "Sol" as scientists call the 24.5-hour Martian day) the
Rover would wake up when the solar panels began to function, then check
in with the
Lander. Programmers would upload the entire day's instruction at one time.
The 11-minute communications delay (almost 23 minutes round-trip) meant the
Rover had to act autonomously, using command sequences stored in computer RAM.
Software, running on a Silicon Graphics Onyx2 graphics supercomputer,
permitted the uplink team to generate each day's command sequences for
the Rover, using
a graphical user interface of clickable buttons, sliders, and some text input
boxes. The team would select each Rover command from prepared lists, then input
the command parameters manually. Complex sequences could be built up in this
fashion, each command (or a sequence) being first tested on Marie Curie.
One of the Lander's first jobs had been to transmit sufficient imagery
back to Earth to permit technicians to built a virtual 3-D model of the
landing
site. Now, the "Rover driver" could see the Martian landscape, on his computer,
using 3-D goggles. Using a joystick he would "drive" a virtual Rover across
the Martian terrain while the computer made precise measurements of waypoints
along the intended track, digitizing these as "go to here" commands to incorporate
into the next day's command sequence. Lest anyone think the programmers at
JPL have no sense of humor, they used images of giant "lawn darts" to mark
each Rover waypoint on the 3-D computer picture.
Cold-sensitive computer and radio components were inside a Warm Electronics
Box (WEB) in the Rover, and a battery provided a trickle charge to this area
for heating through the Martian nights when the Rover sat idle. The box was
effective, keeping the Rover's internal temperature at a toasty +40 to -22
degrees centigrade, while outside the temperature dropped to as low as -88
degrees centigrade. Power to operate the Rover was provided by solar panels,
and the battery was not rechargeable. Planners decided against a rechargeable
battery because it would have required some sort of trickle charge itself during
those seven long months the Rover was snuggled inside the spacecraft en route
to Mars.
The combination Rover/Lander had been planned to operate on the Martian
surface for seven days. If they were still functional, scientists could
then go to
an "extended mission" of 30 days. This was done, but on September 28, 1997
, after 85 days, the Lander failed to check in with Earth and all subsequent
attempts to communicate have failed. Most likely reason for the loss of signal
is the effects of extreme cold on the batteries. When the batteries died the
clocks lost their time hack, and then the Lander simply didn't know when it
was time to phone home. The Rover had been designed to operate on solar power
even after its batteries had expired, but of course it cannot talk to Earth
directly.
But the mission was an unqualified success. Both Lander and Rover had
worked as planned, and both had worked far beyond their designed life
span. In the
process they gathered much information about Martian soils, rocks, atmospherics,
water vapor, and more.
" This mission cost $175-million, less than the cost of some Hollywood movies," Lloyd
Keith noted. "And I have yet to hear anyone say, 'I didn't get my $8 worth watching
Mars Pathfinder on July 4, 1997.'"
— end — |