Author_Institution :
Jet Propulsion Lab., California Inst. of Technol., Pasadena, CA, USA
Abstract :
VML (Virtual Machine Language) is an advanced procedural sequencing language which simplifies spacecraft operations, minimizes uplink product size, and allows autonomous operations aboard a mission without the development of autonomous flight software. The language is a mission-independent, high level, human readable script. It features a rich set of data types (including integers, doubles, and strings), named functions, parameters, IF and WHILE control structures, polymorphism, and on-the-fly creation of spacecraft commands from calculated values. VML has been used on six JPL deep space missions. It is currently in use on Mars Odyssey, Stardust, Genesis, and the Space Infrared Telescope Facility (SIRTF). It is slated for use on the 2005 Mars Reconnaissance Orbiter. The language and associated flight code has allowed spacecraft operations teams to place autonomy aboard deep space missions, implemented as operations products (blocks and sequences). The flight component of VML is implemented in C. This paper lays out language constructs and capabilities, code features, and VML operations development concepts.
Keywords :
C language; aerospace computing; space vehicles; virtual machines; Genesis; JPL; Mars Odyssey; Mars Reconnaissance Orbiter; Space Infrared Telescope Facility; Stardust; VML; Virtual Machine Language; autonomous operations; control structures; deep space missions; fully programmable spacecraft; language constructs; named functions; polymorphism; procedural sequencing; spacecraft operations; uplink product size; Humans; Laboratories; Mars; Orbital calculations; Propulsion; Space missions; Space technology; Space vehicles; Telescopes; Virtual machining;