data management for mars exploration rovers
DESCRIPTION
Data Management for Mars Exploration Rovers. David E. Smyth Joseph F. Snyder Jet Propulsion Laboratory California Institute of Technology Pasadena, California Spacecraft Flight Software Workshop November 2009. X-band Direct-to-Earth. UHF Relay Link. Backup/Demo UHF Link. MGS. Odyssey. - PowerPoint PPT PresentationTRANSCRIPT
Mars Exploration Rover
DES/JFS - 1
Data Management for Mars Exploration Rovers
David E. SmythJoseph F. Snyder
Jet Propulsion LaboratoryCalifornia Institute of Technology
Pasadena, California
Spacecraft Flight Software WorkshopNovember 2009
Mars Exploration Rover
Flight Software Workshop, November 2009DES/JFS - 2
Mars Exploration Rovers
Spirit Landed 3 January 2004
Operating in excess of 2027 Sols
Over 30 gigabits data returned
Spirit Opportunity
MGS Odyssey Mars Express
X-band Direct-to-Earth
UHF Relay Link
Backup/Demo UHF Link
Opportunity Landed 24 January 2004Operating in excess of
2006 SolsOver 28 gigabits data
returned
Mars Exploration Rover
Introduction: Data Management
⢠MER goal was to leverage as much as possible from Mars Pathfinder mission (MPF)â MER Surface Mission far more complicated and demanding than MPF
â Data Management was a significant departure from MPF
⢠MER Data Management defined as follows:â âDataâ refers to Data Products generate by the Rovers for possible telemetry to Earth, as well as those actually received on Earth¡ Discrete set of data meant to be logically treated as a unit â a file
¡ Images, spectra, sets of time-ordered measurements, related set of states, etc.
â âManagementâ covers the handling of Data Products on-board, on Earth, and the interface between the two
⢠MER Data Management treated as a System, during development and operations
Flight Software Workshop, November 2009DES/JFS - 3
Mars Exploration Rover
Flight Software Workshop, November 2009DES/JFS - 4
A Day in the Life of MER
⢠A Typical Sol on Mars:â Once per Sol Uplink: 100KBâ One DTE, one ODY downlink before command generation begins for next Sol.â Limited time to plan for next sol.â The rovers are on opposite sides of MarsâŚ
⢠MER-specific Flight System Constraints:â Frequent Shutdown/Wakeup Cyclesâ Data Generation and Storage Capacity Limitationsâ Asynchronous link bandwidthâ Most data not down yet when we start to plan for next Solâ MGS data drop-outs add additional latency
06:00 08:00 10:00 12:00 14:00 16:00 18:00
Earthset
Sunrise Sunset
20:00 22:00 00:00 02:00 04:00 06:00
Events
Rover
Telecom
DSN
Earthrise
Sequenced Activities
(example)
Wake -up
Shutdown
Wake -up
Shutdown
Autonomous Activities
(example)
UHF OdysseyMGS OdysseyMGS
Shutdown
New Sequences
Wake -up
Shutdown
Flight Team
Evaluate telemetry
Plan next sol
Build new sequences
Margin
Mars Local Solar Time
Driving, Imaging, or Spectroscopy
Spectroscopy/ Atmospheric Imaging
Earliest Latest Earliest Latest
Sequence Mode
Autonomous Mode
Shutdown Mode
Legend for Rover Activities
Wake -up Odyssey UHF Relay
Wake -up
Shutdown
MGS UHF Relay
Solar Arrays illuminated & battery potentially charging
Shutdown
DFE/DTE
DTE
Downlink Allocation
View Period
Legend for Telecom
Uplink Allocation
Communication
Window
Margin
DFE - Direct from EarthDTE - Direct to Earth
06:00 08:00 10:00 12:00 14:00 16:00 18:00
Earthset
Sunrise Sunset
20:00 22:00 00:00 02:00 04:00 06:00
Events
Rover
Telecom
DSN
Earthrise
Sequenced Activities
(example)
Wake -up
Shutdown
Wake -up
Shutdown
Autonomous Activities
(example)
UHF OdysseyMGS OdysseyMGS
Shutdown
New Sequences
Wake -up
Shutdown
Flight Team
Evaluate telemetry
Plan next sol
Build new sequences
Margin
Mars Local Solar Time
Driving, Imaging, or Spectroscopy
Spectroscopy/ Atmospheric Imaging
Earliest Latest Earliest Latest
Sequence Mode
Autonomous Mode
Shutdown Mode
Legend for Rover Activities
Sequence Mode
Autonomous Mode
Shutdown Mode
Legend for Rover Activities
Wake -up Odyssey UHF Relay
Wake -up
Shutdown
MGS UHF Relay
Solar Arrays illuminated & battery potentially charging
Shutdown
DFE/DTE
DTE
Downlink Allocation
View Period
Legend for Telecom
Uplink Allocation
Communication
Window
Margin
DFE - Direct from EarthDTE - Direct to Earth
Mars Exploration Rover
Flight Software Workshop, November 2009DES/JFS - 5
Summary Data Management Objective
⢠Accommodate âhuman-in-the-loopâ Tactical Operations â While simultaneously automating standard operations
â While respecting the unique flight system constraints of MER
â While respecting unique characteristics of each type of communications link
â While supporting changes in downlink opportunities, changes in data collection, and changes in data criticality
Mars Exploration Rover
Flight Software Workshop, November 2009DES/JFS - 6
Specific Objectives
⢠Insight into On-board Data
⢠Explicit Downlink Priority Control
⢠Transmission Path Control
⢠Retransmission Control
⢠Deletion Control
⢠Data created each Sol is MUCH greater than can be transmitted
⢠Maintain compact Synopsis of on-board data: metadataâ Sourceâ Typeâ Generating Eventâ Sample Time
⢠Metadata must be predictable
⢠Create and telemeter a Data Product Summary Report containing a listing of metadata of all on-board data products
Mars Exploration Rover
Flight Software Workshop, November 2009DES/JFS - 7
Specific Objectives
⢠Insight into On-board Data
⢠Explicit Downlink Priority Control
⢠Transmission Path Control
⢠Retransmission Control
⢠Deletion Control
⢠Some data is critical: needed for planning the next sol
⢠Individual Data Products have âDynamic Usefulnessâ
⢠Implement fine priority controlâ Priority set at creation time per command parameters
â Reprioritize individual DP
â Reprioritize sets of DPs
Mars Exploration Rover
Flight Software Workshop, November 2009DES/JFS - 8
Specific Objectives
⢠Link characteristics vary considerablyâ Direct to Earth
¡ Low bandwidth, least latency, high reliability
â Relay¡ High bandwidth, fixed
availability, variable latency and reliability
⢠Implement transmission path controlâ Assign at discrete data product level
â Assign to sets of data products
â Allow specification of preferred path, multiple paths, or first available
⢠Insight into On-board Data
⢠Explicit Downlink Priority Control
⢠Transmission Path Control
⢠Retransmission Control
⢠Deletion Control
Mars Exploration Rover
Flight Software Workshop, November 2009DES/JFS - 9
Specific Objectives
⢠Insight into On-board Data
⢠Explicit Downlink Priority Control
⢠Transmission Path Control
⢠Retransmission Control
⢠Deletion Control
⢠Make partially received data usefulâ Self-identifying at part level
â Delivered and âviewableâ even with holes
⢠Fine retransmission controlâ Rexmit parts of a DPâ Rexmit entire DPâ Rexmit sets of DPsâ Change prioritiesâ Change transmit path
Mars Exploration Rover
Flight Software Workshop, November 2009DES/JFS - 10
Specific Objectives
⢠Insight into On-board Data
⢠Explicit Downlink Priority Control
⢠Transmission Path Control
⢠Retransmission Control
⢠Deletion Control
⢠Fine deletion controlâ Delete individual DP
â Delete sets of DPs
Mars Exploration Rover
Flight Software Workshop, November 2009DES/JFS - 11
Development History
⢠MPF Data Architecture:Store and Transmit Packetsâ Event Reporting
Service (EVR)â Channelized Telemetry
Service (EHA)â Science and all other
Engineering Data generated as raw packets
â CCSDS Packet Telemetry Service (DWN)¡ Packet priority based on APID
¡ Packet storage in RAM¡ No other persistent storage
¡ Assumes no shutdowns (shutdowns result in loss of all data in RAM)
Mars Exploration Rover
Flight Software Workshop, November 2009DES/JFS - 12
Development History
⢠MER Data Architecture:
Data Products = file+metadataTelemetry is Packetsâ Data Products stored
in persistent memory (FLASH, not RAM)
â MPF EVR and EHA services retained, but now produce Data Products
â Science and all other Engineering Data generated as specific Data Products
â CCSDS Packet Telemetry Service¡ Products turned to Packets âJust In Timeâ in product priority order
Mars Exploration Rover
Flight Software Workshop, November 2009DES/JFS - 13
Key System Components
⢠Flight Softwareâ MRF : Massively multi-threaded Real-time File system
¡ Client API, similar to POSIX fopen(), fwrite(), and fclose() calls
â FME : File Metadata Engine¡ Supports operations on sets of data products, individual data products, and portions of individual data products
¡ Provides prioritized list of data products to PDP for packetization
â PDP : Packetized Data Products¡ Converts Data Products to Packets during communications sessions
⢠Ground Softwareâ MDP : MER Data Product Build
¡ Reconstitutes Data Products from received packets
¡ Accounts for missing packets
â MDPV : MER Data Product View¡ Allows simple viewing of most Data Products
Mars Exploration Rover
Flight Software Workshop, November 2009DES/JFS - 14
Data Management Surface Process
⢠Current Surface Process performs the following tasks once each uplink cycle (1 per Rover per Sol)â Retransmit un-received, partially received, and corrupt data products¡ Typically results in tens of commands
â Delete all other data products that have been sent¡ Typically results in hundreds of DPs deleted per command
â Delete unsent data products no longer considered to be of value¡ Typical results in a half dozen commands deleting hundreds of DPs per sol
â Reprioritize, retransmit, and/or delete data products per requests
Mars Exploration Rover
Flight Software Workshop, November 2009DES/JFS - 15
Data Management Surface Process Details
1. Identify all partially and completely received Data Products since the last cycle completedâ Includes all data products received from all relay assets
and direct to earth links
2. Generate individual Retransmit Commands for each identified missing or partially received Data Productâ Applies configurable heuristics:
¡ To not retransmit certain Data Products¡ To change priority and/or transmission path of certain Data
Products
3. Perform automatic corruption checkingâ Generate individual Retransmit Commands for corrupted
parts â Update original corrupt data when the retransmitted data
is received
4. Generate âGroupâ Delete Commands for each communications pass
Mars Exploration Rover
Flight Software Workshop, November 2009DES/JFS - 16
Data Management Surface Process Details (contd)
5. Generate âGroupâ Delete Commands for unsent data products that meet configurable age and size parametersâ Small PMA and HGA log files (no motion), old images,
âŚ
6. Generate single and âGroupâ Reprioritization Commands for classes of Data Products that meet configurable age and size parametersâ Increase priority of biggest PMA and HGA log files
(during movement)
7. Accommodate highly custom requestsâ Delete sets of data products no longer needed or
wantedâ Reprioritize data products from specific sequences,
time ranges, or other criteria
Mars Exploration Rover
Flight Software Workshop, November 2009DES/JFS - 17
Conclusions
⢠Use of standard stdio-like API greatly simplified flight and ground software for science instruments and engineering subsystems
⢠On-board metadata object base enabled operations on sets of data productsâ Effective use of downlink bandwidth across multiple types of links
â Dramatically reduced uplink bandwidth needs
⢠Designed for âmission-operations-in-the-loopâ from the beginningâ System is highly automated while still able to respond to unforeseen pitfalls and opportunities
⢠Well suited for future autonomous spacecraft.⢠âVersion 2â being applied to Mars Science
Laboratory
Mars Exploration Rover
Flight Software Workshop, November 2009DES/JFS - 18
Conclusion: Key Capabilities of MER DP
⢠MER DP is multi-route end-to-end⢠MER DP has predictable and unique-over-life-of-
mission DP IDs⢠MER DP transaction state is persistent and
auditable⢠MER DP obeys FLP:
â MER DP can use protocol level âimmediateâ data (packet headers) for non-destructive actions (recognizing when a DP arrives, detecting holes in DPs that need re-transmission)
â MER DP uses an auditable âsynchronousâ artifact (DPSR) to make destructive actions (delete
Mars Exploration Rover
Flight Software Workshop, November 2009DES/JFS - 19
What is FLP?
⢠âImpossibility of distributed consensus with one faulty processââ Journal of the ACM, Volume 32, Issue 2 (April 1985)â Pages: 374 - 382, ISSN:0004-5411â by Michael J Fisher, Yale,â Nancy A. Lynch, MIT,â and Michael S. Paterson, University of Coventry.â In this paper, it is shown that every protocol for this problem has the possibility of non-termination, even with only one faulty process. By way of contrast, solutions are known for the synchronous case, the Byzantine Generals problem.
⢠ACM Symposium on Principles of Distributed Computing Influential Paper Award: 2001â The PODC Influential Paper Award was created to acknowledge an
outstanding paper on the principles of distributed computing, whose significance and impact on the theory and/or practice of distributed computing has been evident for at least a decade.