ORBITANI

High-Level Project Summary

A web application locates the space debris orbiting the Earth in realtime. You can mark a place and see the exact number of debris passing by, and their trajectory.

Link to Project "Demo"

Detailed Project Description

Project Code

Orbitani (github.com)


User Guide









What exactly does it do?

  • Track and locate the space debris on a web app.
  • Find out the amount of debris that will pass by in a user-defined region.
  • Show the trajectory of each space debris.
  • Show the path of the moving debris within 2 hours (1 hour before now and 1 hour after).
  • Show different datasets of debris distinguished by the type of orbit.
  • Show the debris under the user-defined altitude.


How does it work?

By analyzing the data from NASA resources, we know the TLE (Two-Line Element) for every debris moving on LEO (Low Earth Orbit) at any given moment. Through the SPG4, we can transfer the TLE into latitude, longitude, height, and speed of each debris at the moment. According to the result transferring from SPG4, we can infer the location, mark the past path and predict the future trajectory.


To enable the users easily trace how much debris will pass by the user-defined region, we design a function that users only type in the location, and then it will show the exact amount during the next hour. In this function, we use inner-product to find out the relationship between the angle of debris, target location, and the center of Earth and the location of debris. So, the geometry function will be:

where O is the center of Earth, D is the location of the debris, L is the target location and T is the time when debris locates at the nearest location. Since the angle DOL will become smaller when the debris getting closer to the target location, we can obtain the nearest location of debris when the angle DOL is the smallest. To make it simple, we use the value of cosine theta to determine the nearest debris location (the smaller the theta, the greater the value of cosine theta).


fig.1 Relationship between the angle of debris(D), target location(L), and the center of Earth(O) and the location of the nearest debris(D_T)


However, we can only obtain the parameter of the spherical coordinate system (longitude and latitude), so we have to do the coordinate transformation first. We can transfer the spherical coordinate system to the Cartesian coordinate system by:

where alpha is the longitude, beta is the latitude and R is the average radius of Earth. Thus, we can obtain the location of debris and the target location in Cartesian coordinate and the inner product can be rewritten to:

After calculating, we can figure out the nearest location on the debris trajectory.

fig.2 Transforming the location of debris from spherical coordinate system to Cartesian coordinate system

To define the debris will fall in the range or not, we can obtain the angle of the range by the relationship between the arc length and the angle of the center. Which can be represent as:

Where A is the edge of the range we set, theta_A is the angle of the range. As the previous work, if the value of cosine theta_A is greater than the maximum value of cosine angle DOL, it can be counted as a debris passing the range of the target location. Compare the angle of all the debris and the range surround the target location then we can finally figure out the amount of the passing debris.

fig.3 Relationship between the arc length and the angle of the center


What benefits does it have?

Since we can find the debris which will pass by above a specific region in 1 hour, we can use the app to determine a proper rocket launch time that could avoid the collision between rocket and debris.


What do you hope to achieve?

The prediction for a specific area is complete. We hope to complete an application to access the information of debris for specific service conditions, such as launching rockets, watching the real-time information.


What tools, coding languages, hardware, or software did you use to develop your project?

  1. Used Space Track API to get debris data that we need and we take the period as the filter to distinguish Low Earth orbit, Medium Earth orbit, and High Earth orbit.
  2. Used SatelliteJS which provides functions to transfer TLE into spherical coordinate.
  3. Used NASA WebWorldWind JavaScript library to render the geospatial virtual globe that we can put debris on by transformed coordinate from the previous step.
  4. Re-calculate each debris position per second and render the new position on the map.
  5. Gather the data at every minute during the time period from an hour before to an hour after, connect all the 120 dots then we can have the trajectory.
  6. With the position we already have at each minute, we can use inner-product and the law of cosines to judge if the debris will pass the specific region.
  7. All functions are implemented by Vue.js and Express.
  8. Build the project on Azure App Service to publish our web application.
  9. Github Action as our CI/CD tool.

Hackathon Journey

How would you describe your Space Apps experience?

The two-week activity is really plenitude. All of our members have to work during the daytime, so we use all of our leisure to complete the project. Busy and tired for sure, but learn a lot.


What did you learn?

We learn how to combined and applied cross-discipline knowledge to solve the challenge.


What inspired your team to choose this challenge?

The SRPL project initiated by a professor, which launch a rocket carrying a satellite to space, inspire us to do research on relevant topics.


What was your approach to developing this project?

We five members divided into two teams to survey open library offered by NASA and mathematic method might be applied in the project separately. We discuss and share what we learned about every three days to build out the web app step by step.


How did your team resolve setbacks and challenges?

We can't learn and understand everything about the project at the very beginning. The library offered by NASA is an example, TLE as well. While we have such a problem that we can't figure out something we find, we ask for teammate's help. We solve problems together.


Is there anyone you'd like to thank and why?

We all thank every teammate. Some of us aren't familiar with programming, and some of us don't know about physic at all. We did such great teamwork, so we can complete the project in the end.

Tags

#debris, #orbit, #positioning

Global Judging

This project has been submitted for consideration during the Judging process.