MnSGC Ballooning Team Techniques: APRS tracking-data processing. James Flaten Summer 2010. After each flight, tracking data files are saved from car-tracking computers and from the internet record on aprs.fi from all transmitters on the flight. Usually
MnSGC Ballooning Team Techniques:APRS tracking-data processing
After each flight, tracking data files are saved from car-tracking computers and
from the internet record on aprs.fi from all transmitters on the flight. Usually
the internet record is the most complete, but it may be manually supplemented
with a transmissions from the launch site and/or the landing zone. It is sufficient
to process just the data from the transmitter that worked best on that flight.
Here are some lines from a raw data file. Sample data of interest is highlighted
(yellow is timestamp in hr,min,sec – ends with “h” for “hour”) (green is latitude
given in deg,decmin – ends the “N/” for “north”) (turquoise is longitude also in
deg,decmin – ends with “W” for “west”) (gray is altitude in ft – starts with “A=”).
Notice not all lines contain useful data. Red type indicates duplicate data records
or problematic data. Manually erase all lines that don’t contain useful data.
Here is all that is left after extra lines are erased. Now use the Find and Replace All
feature of MS Word to add “/” characters in the vicinity of each piece of useful data.
For example, replace “h” with “/h/”, replace “N/” with “/N/”, replace “W” with “/W/”,
and replace “A=” with “A=/”. Now the file looks like this (below). Notice that some
extraneous replacements occurred too.
Save the file in Plain Text (*.txt) format, accepting the defaults offered. Close
MS Word and reopen the file using MS Excel (will need to tell Excel to look for
Files of type “All Files”, not just “All Excel Files”).
Indicate that data in this file is
“delimited” by specific characters
rather than of fixed width.
Tell Excel to watch for the “/”
character to delimit data points.
Erase data from all cells that don’t interest you. Notice that the data doesn’t
line up vertically (yet). Erase extra characters (in the altitude boxes in this case).
Now delete the extra cells themselves, shifting to the left (not vertically) until
everything lines up. Here is what it looks like part way through and at the end.
Add title line and save in .xls format as a “scrubbed” data file.
Find an “Altitude vs Time Analysis” file from a flight that has already been processed.
Study how it works (next several slides) before putting data from new flight in place.
The columns highlighted here are where the scrubbed data will go.
The green columns highlighted show extraction of hours, minutes, and seconds indi-
vidually from the hr,min,sec raw data column. The orange column (see equation in box
at the top) calculates the total amount of time in seconds since the release (call that
t = 0). If some tracking data lines come from prior to release, their Time boxes will have
negative values. You need to figure out exactly when balloon was released and subtract
that number of seconds from the Time column. For flight shown the offset was 58130 sec.
Tan columns repeat Time, now in minutes, and Altitude. The graph shows the raw
Altitude vs Time for the flight. There might be gaps in the record, depending on how
well the tracking went. Expect a linear ascent rate to some altitude A1 and time t1, a
(slower) linear ascent rate to burst at time t2, then a rapid, non-linear descent to the
landing (rest of the data). The change in ascent slope is sometimes fairly subtle.
The next 3 graphs are of Phase 1, Phase 2, and Phase 3 separately. (Notice the highlighted graph only uses some of the data points.) Use a linear fit on the first two graphs and a 3rd or 4th order polynomial fit for the last graph. The equations for the fits are printed right on the graphs. Instructions for doing such fits with Excel are on the next slide.
To do fitting with Excel, click on the data (on the graph) to select it then right-click and choose “Add Trendline”. In the Format Trendline window be sure to select “Display Equation on chart” so that you can see the fit parameters it uses to do the fitting. Linear fits work well but parameters for high-order polynomial fits may be reported on-screen with insufficient digits for the next step, so you may need to do those fits using different software.
The parameters for the two linear fits (2 parameters each) plus the polynomial fit
(about 5 parameters) go in the boxes highlighted, as do notes about times in the data
record where each fit is valid. Note that the parameter values and the times to switch
between phases will be different for every flight.
Now generate altitude values (blue columns) for a set of uniform times (gray column) and plot them (pink plot). This should look very like the original data plot in overall shape.
In the yellow cells a single (complicated) formula (see equation at top of window) selects the right fit and then calculates the altitude A for any time t. This is the A[t] function, which is the desired result for this data processing.
Now on to the new data! Copy the scrubbed data from the new flight into the correct
columns of the spreadsheet, update the title, then save it with an appropriate name that
incorporates the actual flight number (e.g. “GL27”) Study the data to determine the time
when the flight began and force that to become t=0 in the Time column by subtraction.
Examine the plot of the original data to decide where Phase I, Phase 2, and Phase 3 begin
and end (in minutes). Plot just Phase 1 data and apply a linear fit, extracting the two fit
parameters. Do the same for Phase 2 data. Fit the descent with a 3rd or 4th order poly-
nomial fit, whichever looks better, and extract those parameters too (seeking additional
digits from another fitting program if need be). Calculate altitudes for evenly-space time
values in all 3 phases and plot them to make sure they fit together reasonably. Finally,
update the A[t] function and plot all the phases, comparing to the original data plot.