Showing posts with label software. Show all posts
Showing posts with label software. Show all posts

Friday, 11 September 2020

Important update of my SkyTrack software [UPDATED]

 


In the context of the probable landing site of the recent Chinese Experimental Spacecraft (see previous post), I discovered a serious bug in my SkyTrack software.

As it turns out, when your chosen observing site has an altitude well over MSL, the sky positions in RA/DEC and AZIMUTH/ELEV are significantly off in version 2.5. I had not noticed this before, as my own observing location is at MSL.

The reason for this error is stupid: the SGP4 DLL needs an altitude in km, while in my code I failed to convert the site altitude from meters to kilometers....hence, a site at 995 meter was treated as if was a site at 995 km...oopsie!

Anyway: I have corrected the error and the new version 2.6 is now for download at my software website.

 

UPDATE 12 Sep 2020:

A second important bug fix was made, leading to version 2.7 now downloadable.

It corrects an error where, when adding a new site, southern latitudes and western longitudes were incorrectly written to the database...

 

Starting version 2.6, I also included a few lines of code that should solve another problem and forces the software to recognize the dot as the decimal separator during runtime of the program, no matter what your regional windows setting is. This likewise avoids output errors.

For those unfamiliar with the software, there is an earlier blogpost detailing it.

In short, the software takes as input a set of orbital elements in TLE-format, and allows you to calculate, for a given custom time interval in custom time steps:

- The latitude, longitude and altitude of the satellite;

- An indication whether it is sun-illuminated or not;

- the Right Ascension (RA) and Declination in the sky, for your observing site;

- the Azimuth and Elevation in the sky, for your observing site;

- the Range (in km) to your observing site;

...and optionally also:

- a KML file of the trajectory that you can load into Google Earth;

- the Doppler-corrected radio frequency (for a given central frequency);

- EFG (ECEF) x, y, z coordinates of the satellite;

- format the data as .csv so it can easily be imported into mapping applications like QGIS.

- choice between various output formats and Datums for the Lat/Lon and RA/DEC data

The software also has options to restrict the output to a certain minimum elevation as sen from your observing site, and/or output only when the satellite is sun-illuminated (and hence visible).


Thursday, 11 June 2020

SkyTrack: a simple tool to calculate satellite positions and visuallize satellite trajectories in Google Earth



Over the past years I have written a number of simple software tools to ease some of my data analysis. Some of these I have released into the wild through my software webpage. Others, which are more experimental, I keep to myself for now.

This week I have released another tool into the wild: SkyTrack.

SkyTrack (now in version 2.5) was initially written by me to quickly create a datafile with geographic coordinates of the trajectory of a satellite, in a format that is easy to import in QGIS, the mapping application that I use to make the trajectory maps that you frequently see in my blog posts.

It has since evolved and is starting to get to a point where it might be useful to others, hence why I release it now.

The output of the program is numerical (a table with data), not graphical, which will limit the usefulness to many people. However, as of the latest version (2.5) the program has the option to generate a .kml file of the trajectory for import in Google Earth (if Google Earth is installed on your pc, it will actually auto-open it and load the .kml, after saving).

When the .kml is loaded into Google Earth, the resulting images look like this:







The program takes lines 1 and 2 of a TLE as input (you copy/paste them into the input textbox). You then provide it with a time window, a desired time step, and an observing site.

It will then calculate the ground-track (the subsatellite-point) over that time window, in the given time steps; it will also calculate the altitude above the Earth at each time instance; the range to the observing site and the satellite's position in both RA/DEC and azimuth/elevation as seen from the observing site. It will also provide an indication whether the satellite is sun-illuminated at each time instance

As optional output, the program can add EFG (ECEF) X, Y, Z coordinates, as well as the EFG velocity vector. It can also calculate the Doppler-shift corrected radio frequency for the satellite, if a center frequency is given.

There are also options to restrict the program to only provide output when the satellite is a specified distance in degrees above the horizon as seen from the observing site, and/or only provide output when the satellite is sun-illuminated.

There are a number of options as well regarding the output format. A pdf with the download provides instructions for use.

The program is currently only available for 64-bits Windows. It employs Microsoft's .NET framework, and SGP4 DLL's that are courtesy of the US AFSPC.

For the future, I want to add some direct graphical output options, but it might take a while before I get to that. So far, development of this tool was largely done when the need for a specific feature arose.

Tuesday, 5 February 2019

Doppler curves



The screenshot above is from a new software program I wrote, Doppler 1.0. As the name already suggests, it calculates the Doppler shift of a radio signal from a satellite TLE and downlink frequency for a given receiving station.

It is a Windows program (64-bits) written in the .NET framework and can be downloaded through my website here.

Saturday, 17 February 2018

UPDATED: TLExtract 3.5



I recently, as part of learning myself to code .NET Windows programs in Visual Basic, have started to create small, user-friendly (I hope) programs to aid satellite observers. TLExtract is a new program I have just released.

TLExtract is a program to select TLE's (satellite orbital elements) from a larger file with TLE's (for example classfd.tle or the full JSpOC TLE file), based on a custom-set condition. The resulting selection can be saved to a new TLE file.

For example, you can use it to select all objects with perigee below 2000 km from the original file. Or to select or exclude all objects containing "DEB" or "COSMOS" in the name. Or all objects with an orbital inclination larger than 45 degrees. Or all objects with a period near 1.0 rev/day (GEO). Etcetera.

Element-sets in the input file need to be 3-line elements, i.e. they need to have the line 0 with the object name.

The program runs under .NET in Windows. It accepts only one selection criterion per run, but when you want a selection to satisfy multiple criteria, you simply run another session on the output of the first session.

The program can be downloaded at my website, where you can also find other programs useful to satellite orbservers, such as IOD Entry and TLEfromProxy, as well as some general astronomical programs - for example a program to calculate Solar Longitudes, and a program to calculate the Local Sidereal Time.

UPDATE: version 3.0 features another improvement in speed, and solved a problem with hidden line carriers in the output, that messed up some software when the output file was read into them. I thank Jim King for his suggestions that led to these improvements.

UPDATE 2:  by popular request, version 3.5 includes an option to select on catalogue number.

Sunday, 19 November 2017

Introducing TLE from Proxy



A simple way to estimate orbital elements for an upcoming launch, is to use elements from a previous, similar launch as a proxy.

For example, for a newly to be launched SpaceX DRAGON cargo spacecraft to the ISS launching from Cape Canaveral pad 39A, you can use a previous DRAGON launch from Cape Canaveral and then modify the elements to the new launch date and launch time. The method is described here by Ted Molczan in a Seesat-L mailinglist post from June 2002.

Basically, the method takes the elset from the previous launch and adjusts the epoch and RAAN values (all else being kept equal) based on the time difference between the original launch and the new launch.

To aid in this and make it as simple as a few buttonclicks, I have written TLE from Proxy. The program runs under the Windows .NET framework, and can be downloaded on my website.

Using the program is very simple, involving these five simple steps:

  1.  Obtain a TLE for a previous similar launch from Space-Track;
  2.  Paste line 1 and line 2 of this elset into the input box;
  3.  Fill in the date and time (in UT) of that launch;
  4.  Fill in the date and time (UT) of the new launch;
  5.  Press the button.

A new TLE will now be generated.

Note that in order for this to work, the launch must be from the same launch site, towards the same launch azimuth, and with a same launch-to-destination scenario.

Friday, 3 November 2017

Introducing IOD Entry: software to aid observers in creating IOD formatted observational data [UPDATED]

International amateur satellite observers (well: apart from the British, who use their own format) generally use the IOD format to communicate positional measurements on satellites. The IOD format however can be cumbersome and error-prone to manually write.

In the old days, there was a neat little DOS program called ObsEntry to help you turn your data into IOD format. Unfortunately, this no longer works on newer Windows machines.

Time for something new to replace it: so I present to you IOD Entry 1.0!


IOD Entry 1.0 is software that runs under the Windows .NET framework, which is a standard component of Windows 7 and later (otherwise, the .NET framework can be downloaded here). I wrote it in Visual Basic using Microsoft Visual Studio 2017, as part of self-teaching me to code .NET windows applications in Visual Basic.

The program and how to work with it is described in detail in this Satobs.org mailinglist post. The program can be downloaded as a .zip file through my astronomy software page at http://software.langbroek.org. It is (of course) freeware.

UPDATE: IOD Entry version 1.1 has now been released. It allows to choose the format of both the Right Ascencion and Declination entries. For the RA, the choice is between HH MM SS.s, or decimal degrees. For the declination, the choice is between degrees, arcminutes and arcseconds, or decimal degrees.

Version 1.1 can be downloaded at the same link above.