CS 171: Final Project Write-up by krzysztof uscinski
- System requirements.
- What are your motivating questions and why did you choose them?
- Describe your data in detail: where did it come from, how did you acquire it, what does it mean, etc.
- Describe your design and why you chose the features you did.
- How do you use your application (mouse and keyboard functions, input/output, etc)?
- What are the answers to your questions? What other interesting insights about your data did you gain from your visualization?
- What extensions and improvements can you suggest?
- What did you most enjoy about working on this project? What was the most challenging aspect? What was the most frustrating? What would you do differently next time?
- The Visualization...
System requirements.
- controlP5 Library
- increase Java available memory to 1024 MB
- computer system with left and right mouse buttons
What are your motivating questions and why did you choose them?
My main goal of my visualization was to find out if there are any patter differences between space debris and space satellites currently orbiting earth. My prediction is that even space debris will have some orbital pattern, generated from Earth's gravitational pull. Active space satellites will have a more defined orbital pattern, where then nicely circle earth, the advantage being that they are still powered by jets and some sort of steering, so they stay in orbit where they are supposed to.
I chose this question because space seems very chaotic, and it seems that there were a lot of satellites launched, and a lot of satellite crashes. I am curious to see what the various patters look like for active satellites, versus inactive satellites and space debris.
Describe your data in detail: where did it come from, how did you acquire it, what does it mean, etc.
The data used for my visualization is based on Two-line element sets (TLEs).
As defined by Wikipedia, Two-line elements are:
A Two-line element set (TLE) is a set of Orbital elements that describe
the orbit of an earth satellite. A computer program called a model can
use the TLE to compute the precise position of a satellite at a particular
time. The TLE is in a format specified by NORAD and used by NORAD and NASA.
The TLE can be used directly by the SGP4 model (or one of the SGP8, SDP4,
SDP8 models). Orbital elements are determined for many thousands of space
objects by NORAD and are freely distributed on the Internet in the form of
TLEs.[1] A TLE consists of a title line followed by two lines of formatted
text.
In other words, TLEs are a set of data points used to PREDICT where specific satellites are in space. To make the data more useful, it helps to convert TLEs into Longitute, Latitude and Altitude, so each point can be plotted with relation to Earth.
Converting TLEs to Lon, Lat and Alt data takes a lot of math. The math is faily extensive and it would take a lot of time for me to come up with a model for the conversions. I decided to find a source of converted TLEs. This place was www.agi.com .
I will explain in detail the process of mining TLE data sets below.
The above image shows the PREFFERED method of using TLEs. The first step would be aquiring the TLEs. There are some public services on the web that offer TLE data sets. wwwcelestrak.com is one of these sites. The next step would be to take the TLEs and run them though the complicated math to derive the langitude, latitude and altitude for each data point. The converted TELs would then be saved in an XML file, specifically .KML which is a Google Earth format. The .KML files have a specific format that Google Earth can read and display in the Google Earth program. I decided to use this same format because I could check my visualization against Google Earth. Once the TLE data sets are converted into .KML XML format, they can be used by my visualization. This is the hard way of displaying TLE data sets. Next, I shall talk about the easier way, the way I chose, to display the TLE data sets in my visualization.
The above image shows the EASIER way of displaying TLEs. This is the way I chose for my visualization. In a nut shell, this method simply uses someone else's converted TLEs. This source for me was www.agi.com . AGI provides commercial off-the-shelf software to national security and space professionals for integrated analysis of land, sea, air, and space assets. The technology can be applied to a variety of solution areas. AGI provides real-time TLE conversion in .KML format. These data sets can be found at http://adn.agi.com/SatelliteDatabase/KmlNetworkLink.aspx . This link allows you to download SatelliteDatabase.kmz with is a Google Earth native format. The .KMZ file is really a ZIP file. The next step after downloading the .KMZ file is to rename it to .ZIP . Extracting all the files from the .ZIP file is the next step. The extraction will generate about five files, one of them being doc.kml . Doc.kml is the actual XML formatted data set. Doc.kml is what gets imported by my visualization.
Weather method 1 or 2 are followed to convert the TLE data sets into longitude, latitude and altitude formats, the resulting DOC.KML file will allow us to view each satellite or space debris relative to its' position above Earth.
Describe your design and why you chose the features you did.
My visualization starts out with the information screen. It simply states what your options are, and how to navigate though the visualization. It also tells you what mouse buttons to use for particular tasks.
How do you use your application (mouse and keyboard functions, input/output, etc)?
- Input: doc.kml, a Google Earth formatted XML file containing Satellite objects data.
- Screens menu: top right corner, 3 icons, clicking icons changes screens between the information screen, 2D screen and the 3D screen
- Filters menu: turns on or turns off the filters screens, either in the 2D screen or the 3D screen
- Rollover: in 2D mode, rolling over data points will highlight them
- Highlight: in 2D mode, clicking on data points will highlight them and keep them highlighted. When points are highlighted, they will display information about that data point in both the 2D screen and the 3D screen.
- Categories menus: bottom of the 2D and 3D screens have category buttons. Clicking different category buttons will show/hide different data sets... like active satellites, inactive satellites, space debris and rocket bodies.
- Double-Sliders: double-sliders allow the user to filter out data sets, each slider has a low limit and a high limit slider. Right-clicking on the slider, then dragging the mouse will slide the sliders.
- 3D movement: left-clicking and dragging will rotate the Earth in the 3D mode, right-clicking and dragging will zoom in/out the Earth.
What are the answers to your questions? What other interesting insights about your data did you gain from your visualization?
The active satellites definately have a clean pattern of satellites orbiting Earth. There is a nice ring above the equator, with some lower altitude orbiting satellites.
The space debris, on the other hand, has no pattern in general. It's just a clump of specs on the screen... until...
When the filters are applied to extract the right data points, one can see that even the space debris has an orbiting pattern. In the images above, we can see how the debris orbits Earth due to Earth's gravitational pull.... interesting.
What extensions and improvements can you suggest?
The one thing I wish I would have done is my model to convert the TLEs data sets into Longitude, Latitude and Altitude. I acutally started working on a converter, but didn't have enough time to finish. This would be my only recomendation for improvement.
What did you most enjoy about working on this project? What was the most challenging aspect? What was the most frustrating? What would you do differently next time?
The most frustrating issue was using Processing, because it still has some bugs in it.