Engineering PapersSearch

Engineering topics

Clark, Ken

Publications and source records attributed to Clark, Ken.

Mars 2020 Lander Vision System Flight Performance 1

The Mars 2020 Entry Descent and Landing (EDL) system delivered the Perseverance rover to the surface of Mars on February 18th, 2021. A large fraction of the Jezero Crater landing site was covered with landing hazards including cliffs, inescapable dune fields and rocks. These hazards were identified or inferred using orbital imagery before launch so that they could be avoided using Terrain Relative Navigation (TRN) which was composed of two parts: the Lander Vision System (LVS) and Safe Target Selection (STS). During EDL, the LVS successfully estimated map relative position by fusing landmarks matched between descent imagery and a map of the landing site with Inertial Measurement Unit (IMU) data. This position estimate was used by STS to identify the safest target for landing that was also reachable given fuel and other constraints. The EDL system then used the powered descent phase to retarget to this location and land safely. The overall error between the targeted location and actual landing location was 5m which was an order of magnitude less than the 60m touchdown error requirement. This paper will describe the final tests of the LVS before launch, the checkout of the LVS during operations and the LVS performance during EDL.

Zheng, Jason

The Use of UML for Software Requirements Expression and Management

It is common practice to write English-language "shall" statements to embody detailed software requirements in aerospace software applications. This paper explores the use of the UML language as a replacement for the English language for this purpose. Among the advantages offered by the Unified Modeling Language (UML) is a high degree of clarity and precision in the expression of domain concepts as well as architecture and design. Can this quality of UML be exploited for the definition of software requirements? While expressing logical behavior, interface characteristics, timeliness constraints, and other constraints on software using UML is commonly done and relatively straight-forward, achieving the additional aspects of the expression and management of software requirements that stakeholders expect, especially traceability, is far less so. These other characteristics, concerned with auditing and quality control, include the ability to trace a requirement to a parent requirement (which may well be an English "shall" statement), to trace a requirement to verification activities or scenarios which verify that requirement, and to trace a requirement to elements of the software design which implement that requirement. UML Use Cases, designed for capturing requirements, have not always been satisfactory. Some applications of them simply use the Use Case model element as a repository for English requirement statements. Other applications of Use Cases, in which Use Cases are incorporated into behavioral diagrams that successfully communicate the behaviors and constraints required of the software, do indeed take advantage of UML's clarity, but not in ways that support the traceability features mentioned above. Our approach uses the Stereotype construct of UML to precisely identify elements of UML constructs, especially behaviors such as State Machines and Activities, as requirements, and also to achieve the necessary mapping capabilities. We describe this approach in the context of a space-based software application currently under development at the Jet Propulsion Laboratory.

model-based engineering

Auto-Coding UML Statecharts for Flight Software

Statecharts have been used as a means to communicate behaviors in a precise manner between system engineers and software engineers. Hand-translating a statechart to code, as done on some previous space missions, introduces the possibility of errors in the transformation from chart to code. To improve auto-coding, we have developed a process that generates flight code from UML statecharts. Our process is being used for the flight software on the Space Interferometer Mission (SIM).

autocoding