The Mobility and Robotic Systems section (347) led the development of both software and electronics for the Sojourner rover. The rover flight software enabled autonomous control, sensing, and communication. Onboard autonomy consisted of simple behaviors for navigation, based on commanded objectives along with the sensed terrain and vehicle position/orientation sensors. 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. Terrain sensing was performed with cameras and ‘laser striping’, a set of five spaced laser diodes that projected forward on the surface, with the subsequent analysis of the revealed surface contour allowing the detection of obstacles. The flex cable technology was also developed by section personnel.
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.