[Acoustics] RE:Delay in GPS processing rant (Aaron Blake, USGS)
Aaron Blake
ablake at usgs.gov
Tue Apr 4 14:35:58 CDT 2006
Hello all,
I wanted to share a few observations about GPS/ADCP data co-registration
issues with WinRiver; this was supposed to be a short and to-the-point
email, but it seems to have turned into a bit of a rant. So, I will
repeat the punch line upfront to save time.
Take Home Message:
I believe that the problems people are experiencing with their serial
cards/converters is really just a manifestation/exacerbation of WinRiver?s
data acquisition/synchronization issues.
Disclaimer:
First, I should say that I have not used WinRiver lately, so if a
dramatically new version has come out that has addressed these issues, I
apologize.
And now the rest:
I have also experienced issues with windows XP using a serial to USB
converter (I think connect tech) that worked flawlessly on windows 2000
machines. Using windows XP, my converter ?miss-translates? several
samples of data to the USB (?fake serial?) buffer before it gets it right,
so that I am reading good data packets several (1-8) samples after
acquisition begins. If I was using a data acquisition program that waited
for a new data event of a different buffer (such as the ADCP buffer?), and
then scanned the converter?s buffer (perhaps used for a GPS?) for an end
of communication character, and then time stamped the communication
preceding that character with the data from the other (ADCP) buffer, then
I would wind up with a data stream with two pieces of data time stamped
together but consistently lagged.
I believe that some version of the above scenario is the cause of the
problems people are reporting in using WinRiver with the new converters. I
havn?t played around with the newest version of WinRiver and a converter
to verify this, but I feel moderately comfortable making this assumption,
because every version of WinRiver I know of uses that same basic data
acquisition algorithm that samples all instrument buffers at the same rate
as the ADCP buffer, and then gives them the same time stamp as the ADCP
data. In addition, the program allocates fairly small buffers and doesn?t
appear to multithread robustly, so if the user generates enough high
priority mouse or keyboard events, data is lost due to overruns, possibly
resulting in increased synchronization errors. If you look closely at
WinRiver data (or at least the versions of WinRiver I have used), you will
see that the GPS boat track and the ADCP data are never correctly
synchronized at high data rates, but most people don?t notice/care because
they are averaging enough pings/ensembles that the associated GPS fix
usually ends up falling within the temporal window of the reported ADCP
sample.
Randal Dinehart at the USGS California Water Science Center, Sacramento,
is an expert on the WinRiver ADCP ? GPS synchronization problem, and on
methods of manually post processing the data to fix boat tracks. If
anyone wants to talk to an expert on dealing with this problem, I would
suggest they contact him. However, be forewarned that, by its very
nature, the process of post-processing large data sets to develop new boat
tracks can be very time consuming and fairly complicated.
I think that the long term solution to this problem is a mature rewrite of
(or replacement for) WinRiver, so that each instrument?s buffer is sampled
and times-stamped independently (not to mention robustly and correctly),
and then written to a data base separately. (Also, GPS data should be
time stamped based on the time reported in its data string, not the time
it is read from a buffer.) This asynchronous data could then be entered
into a state-space model/filter to produce truly robust estimates of the
system?s state at the time (sub second) of the ADCP sample. This would
allow the combination of boat track and bottom track data, allow the user
to integrate multiple ADCPs into one acquisition package, and perhaps add
a HPR sensor that doesn?t have as high a time lag as the ADCPs
electrolytic sensor (or at the very least, try to cleverly filter the
ADCPs HPR sensor). In short, I am ranting in favor of a data acquisition
package that allows the user to take full advantage of the capabilities of
all types instrumentation relevant to hydrodynamic/hydraulic research,
rather than a data acquisition program developed around the capabilities
and requirements of one specific instrument manufactured by one company,
and origionaly written for computers with capabilities equivalent to
today?s high end PDAs.
I believe that on the cutting edge of environmental science, the quality
of our science is constrained by the quality of our data, and the quality
of our data is determined in part by the instrumentation we use, and the
software we use to communicate with that instrumentation. At this point
in time, the capabilities of our scientific hardware, computers, and our
researchers have outpaced WinRiver, so that researchers interested in
higher order processes must either tiptoe around WinRiver so as not to
upset the delicate balance between the timing of buffer reads (ie, not
touching the computer during acquisition, not upgrading operating systems,
eliminating background programs, not using certain serial cards, etc), or,
write custom software to replace WinRiver or extensively post-process
WinRiver data to back out errors.
I could go on, but this email already takes up enough inbox space, so I
will summarize by saying: I believe that the problems people are
experiencing with their serial cards/converters is really just a
manifestation/exacerbation of WinRiver?s data acquisition/synchronization
issues.
Thanks for your time,
Aaron Blake
San Francisco Bay/Delta Hydrodynamics
USGS, California Water Science Center, Sacramento
ablake at usgs.gov
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://simon.er.usgs.gov/pipermail/acoustics/attachments/20060404/1f165177/attachment.html
More information about the Acoustics
mailing list