Top Banner
DASHER: Execution Software for Distributed Space Mission Autonomy Dr. Timothy Woodbury Senior Aerospace Engineer
28

DASHER: Execution Software for Distributed Space Mission ......DASHER overview •DASHER: Distributed Automation Suite for Heuristic Execution and Response •Software applications

Apr 19, 2021

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: DASHER: Execution Software for Distributed Space Mission ......DASHER overview •DASHER: Distributed Automation Suite for Heuristic Execution and Response •Software applications

DASHER: Execution Software for Distributed Space Mission

AutonomyDr. Timothy Woodbury

Senior Aerospace Engineer

Page 2: DASHER: Execution Software for Distributed Space Mission ......DASHER overview •DASHER: Distributed Automation Suite for Heuristic Execution and Response •Software applications

Acknowledgements

• DASHER was originally funded by NASA Goddard Space Flight Center as a Small Business Technology Transfer (STTR) contract

• Work on the STTR was performed in conjunction with the University of Pittsburgh at the National Science Foundation’s Center for Space, High-Performance, and Resilient Computing (SHREC); the Earth observing mission was generated by SHREC students Antony Gillette and Rachel Misbin

Page 3: DASHER: Execution Software for Distributed Space Mission ......DASHER overview •DASHER: Distributed Automation Suite for Heuristic Execution and Response •Software applications

Outline

• Motivation

• Core software discussion

• Software implementation

• Cislunar mission example

• Distributed Earth observing mission example

• Summary

Page 4: DASHER: Execution Software for Distributed Space Mission ......DASHER overview •DASHER: Distributed Automation Suite for Heuristic Execution and Response •Software applications

Motivation

Page 5: DASHER: Execution Software for Distributed Space Mission ......DASHER overview •DASHER: Distributed Automation Suite for Heuristic Execution and Response •Software applications

Motivation: autonomy for distributed space missions

• Commercial small satellite (SmallSat) missions in low Earth orbit (LEO) increasingly common for communications & Earth observation [1]• SpaceX• OneWeb• BlackSky Global• Planet Labs

• Several recent and upcoming government missions involve coordinating spacecraft above LEO or in proximity operations• NASA: LunaNet• AFRL: CHPS

• Traditional operational paradigms do not scale well to these new missions• Transmission lag & expense• Human operator overload• Encoding commands by hand is tedious and error prone as fleet size increases

• Autonomy addresses/remedies some problems

[1] G. Curzi, D. Modenini, and P. Tortora, “Large constellations of small satellites: A survey of near future challenges and missions,” Aerospace, vol. 7, no. 9, 2020, doi: 10.3390/AEROSPACE7090133.

Page 6: DASHER: Execution Software for Distributed Space Mission ......DASHER overview •DASHER: Distributed Automation Suite for Heuristic Execution and Response •Software applications

DASHER overview

• DASHER: Distributed Automation Suite for Heuristic Execution and Response• Software applications for event-driven,

distributed execution of a plan

• Hierarchical execution model with a centralized execution coordinator and distributed executors on each platform

• Core executors are finite-state machines with transitions triggered by telemetry

• Plans are provided from other apps before or during execution

1. Mission coordinator [Plan 1]2. Platform executor [Plan 2]3. Task queueing application

1. Platform executor [Plan 3]2. Task queueing application

1. Platform executor [Plan 4]2. Task queueing application

Page 7: DASHER: Execution Software for Distributed Space Mission ......DASHER overview •DASHER: Distributed Automation Suite for Heuristic Execution and Response •Software applications

Core Software Discussion

Page 8: DASHER: Execution Software for Distributed Space Mission ......DASHER overview •DASHER: Distributed Automation Suite for Heuristic Execution and Response •Software applications

Core applications and hierarchy

• Three core applications• Mission Manager – mission coordinator

• Interfaces with ground commands• Tasking/retasking platforms dynamically

• Execution Manager – platform executor• Timeline Manager – task queueing and

conflict management

• Supervision from central coordinator

• Platforms queue actions/commands locally• Each platform runs Execution and Timeline

Manager• One platform has an active Mission

Manager

Page 9: DASHER: Execution Software for Distributed Space Mission ......DASHER overview •DASHER: Distributed Automation Suite for Heuristic Execution and Response •Software applications

Core Executor Software

• Mission Manager and Execution Manager use a common core software loop

• Each Executor follows a Plan that allows for customization between different missions

• Telemetry Processor is mission-specific and buffers messages that satisfy criteria of interest

Page 10: DASHER: Execution Software for Distributed Space Mission ......DASHER overview •DASHER: Distributed Automation Suite for Heuristic Execution and Response •Software applications

Timeline Manager

• Timeline Manager (TM) implements a timeline of tasks to execute

• Manages based on resources, priority, and execution state

• Two types of external apps• Planners: generate tasks that need to be

executed• Workers: accept tasks to be done and

update their progress

• Timeline Manager publishes TaskResponse messages at the start of their time windows, deconflicts using priority and resource needs

Functional breakdown of Timeline Manager scheduling

Timeline Manager priority diagram

Page 11: DASHER: Execution Software for Distributed Space Mission ......DASHER overview •DASHER: Distributed Automation Suite for Heuristic Execution and Response •Software applications

Plan

• A Plan specifies a finite state machine that defines agent response to telemetry from other apps

• Mission Manager and Execution Manager use Plans

• Three primitives• States indicate the current status of the system• Events triggered by telemetry of a certain type and

values • Commands are sent by the agent in response to an

Event or State change

• A Plan is an object that associates States, Events, and Commands• Each State and Event have associated Commands• Transitions define a switch from one State to

another in response to the occurrence of an Event

Page 12: DASHER: Execution Software for Distributed Space Mission ......DASHER overview •DASHER: Distributed Automation Suite for Heuristic Execution and Response •Software applications

Software Implementation

Page 13: DASHER: Execution Software for Distributed Space Mission ......DASHER overview •DASHER: Distributed Automation Suite for Heuristic Execution and Response •Software applications

Original design (STTR development)

• Initial DASHER software written as applications in NASA’s Core Flight System (cFS)

• 3 “layers” to code• Application: interfaces with the cFS

system directly, handles message pub/sub, etc

• Adaptor: receives cFS messages from application, removes metadata and sends “core” message to Service

• Service: primary functionality, e.g. state machine logic or task queueing engine

Page 14: DASHER: Execution Software for Distributed Space Mission ......DASHER overview •DASHER: Distributed Automation Suite for Heuristic Execution and Response •Software applications

GEAR retrofit (present)

• GEAR: Generalized Environment for Architecture Reuse

• GEAR is Emergent’s solution to the existence of competing middlewares (ROS, cFS, Aspire, etc)

• GEAR defines a generic set of interfaces related to middleware functions (e.g. message pub/sub), with implementations for specific middleware

• The developer writes a GEAR app without worrying about glue code

• GEAR provides a backend that interfaces with the chosen middleware

• For a new middleware → write a GEAR interface, all core flight software apps are available!

Page 15: DASHER: Execution Software for Distributed Space Mission ......DASHER overview •DASHER: Distributed Automation Suite for Heuristic Execution and Response •Software applications

Cislunar Mission Example

Page 16: DASHER: Execution Software for Distributed Space Mission ......DASHER overview •DASHER: Distributed Automation Suite for Heuristic Execution and Response •Software applications

Scenario

• Single autonomous spacecraft on approach to the Moon

• Spacecraft simulation (and visualization) using Emergent’sASCENT simulation

• Two helper cFS applications interface ASCENT with DASHER apps

• DASHER Plan is pre-programmed with target coordinates and associated delta-V to circularize the orbit

Page 17: DASHER: Execution Software for Distributed Space Mission ......DASHER overview •DASHER: Distributed Automation Suite for Heuristic Execution and Response •Software applications

DASHER mission design

• MM monitors the navigation state and sends a command to EM if the desired circular polar orbit is achieved

• EM monitors the navigation state and performs a pre-programmed delta-V to circularize the orbit when target coordinates are reached

• TM receives a Task from EM and puts its associated data on the software bus as a message; it is received and sent to the ASCENT simulation

Execution ManagerMission Manager

Page 18: DASHER: Execution Software for Distributed Space Mission ......DASHER overview •DASHER: Distributed Automation Suite for Heuristic Execution and Response •Software applications

Video

Page 19: DASHER: Execution Software for Distributed Space Mission ......DASHER overview •DASHER: Distributed Automation Suite for Heuristic Execution and Response •Software applications

Distributed Earth Observing Mission Example

Page 20: DASHER: Execution Software for Distributed Space Mission ......DASHER overview •DASHER: Distributed Automation Suite for Heuristic Execution and Response •Software applications

Scenario

• Cluster of four Earth observing satellites

• Ten arbitrarily chosen targets that should be imaged

• MM assigns targets to spacecraft based on proximity, and reassigns targets to second-closest, third-closest, etc. if there’s no response from initial assignee

• Simulation is conducted in 42

• DASHER executes on ARM PYNQ-Z2 boards on a shared network

PYNQ board cluster

42 simulation image

Page 21: DASHER: Execution Software for Distributed Space Mission ......DASHER overview •DASHER: Distributed Automation Suite for Heuristic Execution and Response •Software applications

DASHER mission design

• Helper app knows the target locations and tracks satellite positions

• Helper app notifies MM when a target is in range

• MM sends a message commanding the closest SV to image the target• If the SV is online, its EM receives the

message, takes the image, and sends a response

• If MM does not receive a response, it sends a message commanding the second-closest SV, and so on

• About 30% through the mission, spacecraft 2 drops out just before capturing target• MM assigns different spacecraft (3) to

capture target

• About 60% through the mission, spacecraft 3 drops out just before capturing target• Again, MM assigns different spacecraft

(1) to capture target

Page 22: DASHER: Execution Software for Distributed Space Mission ......DASHER overview •DASHER: Distributed Automation Suite for Heuristic Execution and Response •Software applications

Video

Page 23: DASHER: Execution Software for Distributed Space Mission ......DASHER overview •DASHER: Distributed Automation Suite for Heuristic Execution and Response •Software applications

Summary

Page 24: DASHER: Execution Software for Distributed Space Mission ......DASHER overview •DASHER: Distributed Automation Suite for Heuristic Execution and Response •Software applications

Summary

• DASHER: flight software for autonomous execution of a plan

• Originally a suite of cFS apps; currently exists as a GEAR application with support for multiple MOSAs

• Demonstrated DASHER in the loop for simple missions in ASCENT and 42

Page 25: DASHER: Execution Software for Distributed Space Mission ......DASHER overview •DASHER: Distributed Automation Suite for Heuristic Execution and Response •Software applications

Backup

Page 26: DASHER: Execution Software for Distributed Space Mission ......DASHER overview •DASHER: Distributed Automation Suite for Heuristic Execution and Response •Software applications

Mission Manager

• Mission Manager (MM) coordinates fleet activities• Platform status updates

• Ground commands

• Mission Manager follows a Plan that allows for customization between different missions

• Telemetry Processor is mission-specific and buffers messages that satisfy criteria of interest

Page 27: DASHER: Execution Software for Distributed Space Mission ......DASHER overview •DASHER: Distributed Automation Suite for Heuristic Execution and Response •Software applications

Execution Manager

• Execution Manager (EM) oversees activities of a single platform

• Shared core software with Mission Manager• Plan binary

• Telemetry Processor

Page 28: DASHER: Execution Software for Distributed Space Mission ......DASHER overview •DASHER: Distributed Automation Suite for Heuristic Execution and Response •Software applications

Telemetry processing

• Telemetry Processor receives messages sent to an EM or MM instance and buffers messages that satisfy conditions of interest

• Buffered telemetry keys trigger Events in the state machine logic

• Telemetry Processor is hand-coded

• A telemetry buffer stores messages based on their message ID with an attached key

• An Event is associated with the occurrence of one or more instances of a key in the telemetry buffer