Constellation
Engine
Motivation
The goal of VCE is to assist in prototyping, development and evaluation of distributed applications running on satellite constellations, airborne systems, and ground stations.
Example applications include Earth imaging, marine biology, and ecology studies based on spectral reflectance instruments and infrared imagers and sounders.
These missions require autonomous coordination across multiple platforms to capture dynamic events, to combine measurements from different instruments, to transmit preliminary results with low latency, and to perform intelligent instrument utilization for increased lifespan.
Approach
Each base station or satellite in the constellation runs as a separate AWS virtual machine.
At startup, a VCE agent is installed to control network parameters such as link state (up/down), latency and bandwidth: a VCE server (running on a separate VM) provides these parameters to the VCE agents based on the simulated position of each satellite.
In addition, the user can schedule network faults or distruptions, to test the performance of the distributed application under failure.
Metrics such as CPU, memory, disk and network usage are collected from each virtual machine over time, and stored in a time series database for real-time or offline analysis.
News
- Jun. 4, 2019: Version 0.1 of our cloud framework is released as open-source on GitHub.
- Aug. 1, 2019: Our cloud framework is presented at IGARSS 2019 in Yokohama, Japan.
This work is part of the SpaceCubeX
project supported by the
AIST Program
of NASA Earth Science Technology Office (ESTO) under grant
80NSSC17K0286.