Live Satellite Tracker [SUMMER 2011]
Kessler Fellow Skybox Imaging
Overview
This project used PHP-predict, jQuery and Google Maps V3 API to plot the realtime locations of satellites using ephemeris data from Celestrak.com. Calculations performed on the server-side were sent to the client via JSON data. These calculations find the current velocity and position of each satellite in ECI which are then converted into latitude and longitude and fed into the Google Maps API. The tracker displays the satellite’s current footprint as well as its trajectory of the past and future 10 minutes.
As a final job at Skybox Imaging, I was tasked with developing a usable application to display the current location of satellites in non-geostationary orbits. The website n2yo.com, which does this already has many potential wins for their UI. It has a cluttered interface and unintuitive content placement.
Design Considerations
- The interface should be a significant improvement on n2yo.com’s software
- More than one satellite may be shown at a time
- Orbital plots need to clearly differentiate between past, present, and future positions for each satellite
- Each satellite must have its range of vision on the earth’s surface clearly displayed
- This project was first taken on as a joke, so some humor was required
Goals
- Develop the complete application within three days
- Create a simple interface with very few actions required to remove and add satellites
- Create an appealing, functional and somewhat humorous satellite tracker
- Distinguish between each satellite displayed on screen
- Perform the complex calculations necessary to determine satellite locations
Solutions
- Use an only an autocomplete box preloaded with the names of each traceable satellite to add satellites to the map
- Color code the orbital paths and range to demarcate each satellite
- Add a delete button within the label to remove the satellite
- Build upon Google Maps, jQuery and jQuery UI to maximize development speed
- Chickens