Git Product home page Git Product logo

agsattrack's Introduction

AgSatTrack

Around 2001 I developed a windows based satellite tracking program mainly to assist me with the use of Amateur radio satellites. The program can still be found here.

Shortly after its release I started to look at cross platform technology which would allow me to port the program to both Linux and OSX. At the time I could not find anything that would make the port easy so left it!

In late 2012 I stumbled across the Satellite Orbit Tracker project on GitHub which had a very nice rendering of a globe. I started to dig around and found that it was using another open source project on GitHub called Cesium.

The Cesium engine looked like it could help form the basis of an online version of agsattrack and I started to experiment. By early Feb 2013 the first version of agsattrack.com went live.

The code is still very much being developed and there are a lot of bugs that need fixing and new features that need adding.

Below are some screen shots to give you some idea of what it looks like.

ScreenShot

The 3d view. This is using Cesium to render the Earth and Cesium API functions to plot the satellites and draw the orbits.

ScreenShot

The Polar (Radar) view. This is a pretty standard Polar view implemented using an HTML5 canvas.

ScreenShot

The Skyview. This is as if you are looking at the horizon. if the horizon image gets in the way you can either turn it off or drag it up and down. Again this view uses an HTML 5 canvas.

ScreenShot

The Timeline View shows all of the passes for the selected satellites within the next 24 hours.

ScreenShot

The Passes view shows details of a pass in tabular, Polar and Skyview form. Different views can be selected for the bottom views from the toolbar.

Requirements

  • A Mysql database
  • PHP 5.3 or higher
  • A web server such as Apache
  • An HTML5 compliant browser that supports WebGL (For non WebGL browsers the 3D view will not be available but the rest of the views will work).

Available Views

  • List View. A straight listing of all satellites. The view contains a paged list of satellites.
  • 3D View. An Interactive 3d visualisation of the satellites. This view utilises the Cesium project
  • Polar View, or radar view.
  • Sky View. This view shows the sky looking south to give you a better idea of where to look for a satellite should it be visible.
  • Passes View. This comprises three different elements, the pass details list and two visual views that can be changed.

Notes

This is VERY MUCH work in progress at the moment, far from stable and is changing constantly ....... For bug reports or general comments visit www.facebook.com/agsattrack

agsattrack's People

Contributors

alex-developer avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

agsattrack's Issues

Satellite Selector

Need a gallery type drop down for the Ribbon bar to support satellite selection.

Add settings pane

Add a pane allowing users to change and save settings. The settings will initially be saved in a cookie but once the login system is in place they will be stored server side.

Data Adapters

Allow either a php backend or tle files read from the server for those that don't want to setup a database.

Write two data adapters and use these to route the data requests

Allow for more than one satellite to be selected

Currently only one satellite can be selected to display its orbit etc. Allow for more than one to be selected.

This will cause an issue with the sat info display so will need a way to either disable this when more than one is selected or enhance it to support multiple selections.

Optimise points per orbit

Need better code to work out how many points to plot for each orbit. LEO sats are ok but others have way too many points

Hide view tabs

Hide the view tabs and allow the Ribbon bar to control selection

Add an Az/El view

Add a view that can be used in popup windows and on the passes view that plots az and el

Isolate view more

The views need to be able to ...

  1. Bind to any element
  2. Start ans stop their animate functions, not have them running all of the time
  3. Resize to the parent element they are bound to

Improve startup times

Only initialise views when they are switched to. Currently all views are initialised at startup.

Satellite orbits in 2d view

When transitioning 180degrees the polyline for the orbit trace wraps. Try using PolylinePipeline.wrapLongitude to stop this

Screenshot

Add a timeline view

Add a view showing time along the bottom axis and all passes for selected satellites

Ribbon items

Are appearing behind the main panel. I suspect this is a z-order thing and the upgraded version of easyui has broken it

Pass predictions in 3d view

These are being plotted as if the AoS happens on the current orbit. The plotting needs to check that the AoS will happen on the current orbit and if not do not plot the next pass

Add a debug view

Add a view to show debug information about the satellites, this just saves time rather than using Firebug

SPM engine locking up app

Some satellites cause the app to lockup when selecting them. A current example is AO-27 using the following elements

EYESAT-1 (AO-27)
1 22825U 93061C 13092.48463178 .00000107 00000-0 58819-4 0 3496
2 22825 98.6123 37.3357 0009253 145.1479 330.9167 14.29544861 17818

I suspect the problem lies in the pass prediction code. Maybe add some form of timer to stop it spinning in a loop?

Follow from QTH

The camera needs rotating to keep the eye at the correct orientation

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.