Search NASA⌕ Search

Engineering topics

Carsten, Joseph

Publications and source records attributed to Carsten, Joseph.

Perseverance Rover Collision Model for a range of Autonomous Behaviors

The NASA Mars 2020 Perseverance rover landed in Jezero crater on Mars on 18 February 2021. It is a science mission to collect and cache sample cores for possible return to Earth in the future. Robot collision modeling is traditionally used in robotics for hardware safety for manipulation and sampling. The Mars 2020 Rover Collision Model (RCM) optimizes and extends collision checking in innovative ways to provide a range of onboard autonomous capability on a computationally constrained system. It provides an example of the benefit of systems and operations cognizant software design and development of autonomous systems.

Klein, Douglas↗

How do we get robots to take self-portraits on Mars? – Perseverance-Ingenuity and Curiosity selfies

The Perseverance rover landed in Jezero crater,Mars, on 18 February 2021. It carried with it a technologydemonstration, the Ingenuity helicopter, which hasdemonstrated the first controlled, powered flight on anotherplanet. This paper describes how an iconic, April 2021 imageof the Perseverance rover with the Ingenuity helicopter wasdesigned and executed as the rover was getting ready todeploy the helicopter. WATSON is a camera mounted at theend of the rover’s robotic arm and was used to acquire theself-portrait. WATSON is designed to take close up picturesof rocks and regolith on Mars but can also provide views ofthe terrain. A single image covers a small portion of thescene. In order to a create a mosaic covering the full roverand helicopter, 62 WATSON images were acquired. To allowthe images to be mosaicked together, the camera needs to bekept in the same spot. The robotic arm has five degrees offreedom for motion; small changes in orientation can requiresignificant repositioning of the robotic arm joints. Todocument this, a movie of the arm motion was acquired bythe rover’s mast-mounted left navigation camera pointed atthe WATSON and robotic arm while it was simultaneouslymoving to acquire the selfie. For the first time, we alsocaptured the sound of the arm motion as it was acquiring theselfie. In the case of the Perseverance selfie with the Ingenuity helicopter, we also had to think about how toposition the rover with respect to the helicopter and fit theselfie acquisition into the helicopter prime mission timeline.This paper also describes the history of NASA Mars roverselfies.

Beegle, Luther↗

Docking the Mars 2020 Perseverance Robotic Arm

The Mars 2020 Perseverance Rover includes an innovative Sample Caching Subsystem (SCS). Two key features of SCS are the ability to collect and process rock and regolith samples for possible future return to Earth and the ability to switch between different types of drill bits for coring rocks, abrading rocks, and collecting regolith. These capabilities are enabled by a Corer mounted on the end of a Robotic Arm and a Bit Carousel mounted on the front of the rover body. Beneath the Bit Carousel, a smaller Sample Handling Arm can insert and remove sample tubes from sampling bits in the carousel. For the Corer to interface with the Bit Carousel so that it can exchange drill bits and hand off rock samples, the Robotic Arm must maneuver the Corer to dock with the Bit Carousel. Docking serves two primary purposes: it precisely aligns the Corer with the hardware inside the Bit Carousel, and it applies enough preload between the Corer and the Bit Carousel to make them stay aligned through the process of bit exchange.The docking assembly consists of four concave alignment cones mounted on a large rotating ring, through the center of which the drill can exchange bits and samples with the Bit Carousel. The coring drill includes four alignment posts which mate with the four cones on the dock. Docking uses an algorithm we call “Force-Corrected Docking”, which means it iteratively reads the force/moments reported by the FTS, performs a small motion to reduce sideload and moments while increasing preload, and repeats until reaching a deadband around the target preload. Because docking is a critical function for SCS, the dock hardware and algorithm have been tested thousands of times over 7 years in various stages of development. The culmination of this work is a reliable docking system which has been demonstrated and used in flight.

Warner, Antonia↗

Integration of an Arm Kinematics Hot Patch onboard the Curiosity Rover

NASA's Mars Science Laboratory (MSL) mission has updated the Curiosity rover's flight software multiple times since landing on Mars on August 6, 2012. The most common patching method has been a hot patch, in which running flight software is modified after being copied into RAM from its persistent storage. The latest hot patch to be installed on Curiosity fixed an issue in the robotic arm software that computes generalized inverse kinematics. Additional unit testing performed since the start of the surface mission revealed that this software can sometimes produce erroneous solutions.The cause was identified as numerical instability in a quartic root finder. When the inputs to that solver are not well conditioned, floating-point numerical issuescan cause erroneous roots to be reported. In theory, this could result in the robotic arm turret instruments being commanded to unintended positions, for example, below the terrain surface. Out of approximately 3.7 million unit test cases, 97.2\% of the position errors were below 5 mm. However, there were 16 test cases where theposition error was greater than 20 cm, and the maximum position error was 1.2 meters.The patch was uploaded to Curiosity on sol 2642 (January 11, 2020) after the solution was developed, re-implemented as a hot patch, and validated and verified using Earth-based Curiosity testbeds. A checkout test of the patch was performed on Curiosity on sol 2657, and nominal use of the patch began on sol 2658. In this paper, we describe the steps that led to integrating the arm kinematic hot patch into Curiosity's flight software, from the discovery of the bug to the nominal use of the patch in flight.

Maimone, Mark↗

Mars Science Laboratory Frame Manager for Centralized Frame Tree Database and Target Pointing

The FM (Frame Manager) flight software module is responsible for maintaining the frame tree database containing coordinate transforms between frames. The frame tree is a proper tree structure of directed links, consisting of surface and rover subtrees. Actual frame transforms are updated by their owner. FM updates site and saved frames for the surface tree. As the rover drives to a new area, a new site frame with an incremented site index can be created. Several clients including ARM and RSM (Remote Sensing Mast) update their related rover frames that they own. Through the onboard centralized FM frame tree database, client modules can query transforms between any two frames. Important applications include target image pointing for RSM-mounted cameras and frame-referenced arm moves. The use of frame tree eliminates cumbersome, error-prone calculations of coordinate entries for commands and thus simplifies flight operations significantly.

quaternion↗

Mars Science Laboratory CHIMRA/IC/DRT Flight Software for Sample Acquisition and Processing

The design methodologies of using sequence diagrams, multi-process functional flow diagrams, and hierarchical state machines were successfully applied in designing three MSL (Mars Science Laboratory) flight software modules responsible for handling actuator motions of the CHIMRA (Collection and Handling for In Situ Martian Rock Analysis), IC (Inlet Covers), and DRT (Dust Removal Tool) mechanisms. The methodologies were essential to specify complex interactions with other modules, support concurrent foreground and background motions, and handle various fault protections. Studying task scenarios with multi-process functional flow diagrams yielded great insight to overall design perspectives. Since the three modules require three different levels of background motion support, the methodologies presented in this paper provide an excellent comparison. All three modules are fully operational in flight.

sample processing↗

The Phoenix Mars Lander Robotic Arm

The Phoenix Mars Lander Robotic Arm (RA) has operated for over 150 sols since the Lander touched down on the north polar region of Mars on May 25, 2008. During its mission it has dug numerous trenches in the Martian regolith, acquired samples of Martian dry and icy soil, and delivered them to the Thermal Evolved Gas Analyzer (TEGA) and the Microscopy, Electrochemistry, and Conductivity Analyzer (MECA). The RA inserted the Thermal and Electrical Conductivity Probe (TECP) into the Martian regolith and positioned it at various heights above the surface for relative humidity measurements. The RA was used to point the Robotic Arm Camera to take images of the surface, trenches, samples within the scoop, and other objects of scientific interest within its workspace. Data from the RA sensors during trenching, scraping, and trench cave-in experiments have been used to infer mechanical properties of the Martian soil. This paper describes the design and operations of the RA as a critical component of the Phoenix Mars Lander necessary to achieve the scientific goals of the mission.

Bonitz, Robert↗

Improved Path Planning Onboard the Mars Exploration Rovers

A revised version of the AutoNav (autonomous navigation with hazard avoidance) software running onboard each Mars Exploration Rover (MER) affords better obstacle avoidance than does the previous version. Both versions include GESTALT (Grid-based Estimation of Surface Traversability Applied to Local Terrain), a navigation program that generates local-terrain models from stereoscopic image pairs captured by onboard rover cameras; uses this information to evaluate candidate arcs that extend across the terrain from the current rover location; ranks the arcs with respect to hazard avoidance, minimization of steering time, and the direction towards the goal; and combines the rankings in a weighted vote to select an arc, along which the rover is then driven. GESTALT works well in navigating around small isolated obstacles, but tends to fail when the goal is on the other side of a large obstacle or multiple closely spaced small obstacles. When that occurs, the goal seeking votes and hazard avoidance votes conflict severely. The hazard avoidance votes will not allow the rover to drive through the unsafe area, and the waypoint votes will not allow enough deviation from the straight-line path for the rover to get around the hazard. The rover becomes stuck and is unable to reach the goal. The revised version of AutoNav utilizes a global path-planning program, Field D*, to evaluate the cost of traveling from the end of each GESTALT arc to the goal. In the voting process, Field D* arc votes supplant GESTALT goal-seeking arc votes. Hazard avoidance, steering bias, and Field D* votes are merged and the rover is driven a preset distance along the arc with the highest vote. Then new images are acquired and the process as described is repeated until the goal is reached. This new technology allows the rovers to autonomously navigate around much more complex obstacle arrangements than was previously possible. In addition, this improved autonomy enables longer traverses per Sol (a day on Mars), and can make planning drives easier for operators on Earth.

Stentz, Anthony↗