Geertjan's Blog

  • April 13, 2013

NASA Mission Operations on the NetBeans Platform (Part 3 of 4)

Geertjan Wielenga
Product Manager
The GEONS Ground
System Software (GGSS) is an extensible ground system software tool
designed to support any space mission that uses GEONS as its onboard navigation system. The GGSS has been deployed into
mission operations and is proceeding through a multiple phase feature
release schedule and acceptance testing in preparation for mission
support. The first mission slated to use this operational tool is
the Magnetospheric Multiscale mission, which is scheduled to launch in October 2014 on an ATLAS V.

The ground
system software continues to be developed alongside mission planning
and other ground system software components at the Goddard Space
Flight Center
(GSFC), Greenbelt, MD, USA. The software will be deployed to the Mission
Operations Center at the GSFC. Development of the GGSS and other
MMS ground system components are led by Aerospace Industry contractor
ai Solutions.

GGSS Ephemeris Visualization:

GGSS Uplink Command Differencing:

GGSS Matlab Data Product Automation:

GGSS Operational Testing and Product Generation Wizards:

What Does the Software Do?

The GGSS has
been designed to not only support the MMS mission but be extended to
support any mission using GEONS for onboard navigation. The GGSS
provides a platform for leveraging existing Matlab and Python
analysis scripts to QA daily data product generation. An assortment
of wizards guarantees simple and easy workflows. Plugins have been
developed that provide 3D rendering of orbital ephemeris data using
NASA’s GOTS product WorldWind.
Day-in-the-life operational workflows are captured as single
projects which are committed to repositories for storage and
retrieval for offline scientific analysis.

How Does the NetBeans Platform Help?

The NetBeans Platform module
system allows for clean encapsulation of disparate features. This makes
acceptance and regression testing much simpler and efficient. The
wizard framework reduces risk of failure of daily operations. The
NetBeans Platform support for custom projects and file types makes
organization of data simple. Coupling that with seamless integration
of version control systems allows analysts to access and exchange
operational data in a manner with which software developers are

The on-mission development costs
for these components were significantly reduced from projections by
using the NetBeans Platform module system. Using the NetBeans Platform as a
base allowed developers to leverage an existing collection of
NetBeans plugins developed internally by ai Solutions, called the
Polaris Platform. Reusing Polaris plugins saved an estimated 35%
development time through the first two years of development.

For the most
recent release (March 2013) the GGSS performs a significant amount of
data generation using a custom Matlab toolbox developed explicitly
for the mission. The GGSS makes strong use of the built-in
asynchronous processing support that is provided by the NetBeans Platform,
especially the RequestProcessor support. This allows Matlab-based
data operations to be requested by the user in parallel with other GUI
actions. When complete, data vectors can be extracted from the
Matlab runtime via a custom proxy directly into the JavaFX charts. The
next release will see an expansion of the JavaFX chart components for
historical trending using the ai Solutions developed Matlab Dashboard
plugins, which are all part of the Polaris Platform.

All the info and
text above was provided by Sean Phillips (@SeanMiPhillips), who is a
Software Engineer and NASA contractor with aerospace experts ai

Join the discussion

Comments ( 1 )
  • Sean Phillips Sunday, April 14, 2013

    I've been asked on the side about what plugins had cross application use here. Both the WorldWind components and the Matlab automation support plugins are used across both the GGSS and the DSFDSS. However the Mission specific Matlab toolboxes (which we package in plugins for delivery updates) are too specific generally to be reused.

Please enter your name.Please provide a valid email address.Please enter a comment.CAPTCHA challenge response provided was incorrect. Please try again.