In late 1996, the Mars Pathfinder
lander was launched from Earth. Attached to one of the lander petals and folded inside the tetrahedral landing configuration, the Sojourner Rover was a flight-experiment addition to the primary lander mission. On 5 July 1997, Sojourner drove off a ramp from the lander and onto the surface of the red planet, beginning a new era of Mars exploration by making in situ observations from an instrumented vehicle. The lander provided two critical functions for the rover's operations: It acted as a communications link from the rover to operators on Earth, and it imaged Sojourner and the surrounding terrain for the operators.
The Mobility and Robotic Systems section led the development of both software and electronics for the Sojourner rover. Software enabled autonomous control, sensing, and communication. Onboard autonomy consisted of simple behaviors for navigation, based on commanded objectives along with sensed terrain and vehicle position/orientation. Terrain sensing was performed with cameras and laser striping, while Sojourner's position and orientation were measured by wheel odometry, accelerometers, and a z-axis angular-rate sensor. The onboard processor was a flight-qualified Intel 8085 running at 100 KIPS, and all software was written in C.
In addition to the onboard control software, section personnel developed the ground control software for the rover, and provided operations expertise during the 83-day mission. The rover visited 16 science locations, traversed more than 100 meters, captured more than 500 images, and nearly circumnavigated the lander. Due to the use of lander-based operations and the roughness of the terrain, all travel was effectively restricted to line-of-sight locations not greater than 12 meters from the lander. In addition to specification of targets and drive paths, regular corrections of vehicle position and attitude were provided by operators based on the lander imagery.
The mission ended when the lander's power system failed, eliminating it as a communication relay and stopping all interactions with the rover.