[time-nuts] Strange GPS behaviour
magnus at rubidium.dyndns.org
Sun Dec 30 01:01:04 UTC 2012
On 29/12/12 23:42, bg at lysator.liu.se wrote:
> Hi Bob,
> I am curious about the sacrifice time and get better position. I have not
> seen any discussions about that in manuals, books or papers. Do you have
> What would be the difference between timing and navigation versions of
> cheap commercial receivers?
> 1) Timing receivers are often stationary, navigation receivers are
> typically not stationary for extended periods of time. So a timing
> receiver can benefit from a time only solution. Ie you have a known
> (x,y,z)/(lat,lon,h) position and solve only for time, reducing the unknown
> from (x,y,z,t) to only (t). The known position can be had from a) full 4D
> single fix solution or better from b) a site survey taking the mean
> position from many hours of measurements or also good from c) an
> independently surveyed position of the antenna position. This mode will of
> cause improve time when there are fewer than 4 satellites tracked.
I've long assumed that T-receivers have the additional T-only positional
mode. I recall the Motorola Oncores having a whole bunch of different
positional modes, where timing mode is one amongst many others.
> 2) Timing versions might get an upgraded oscillator. Maybe a TCXO instead
> of a standard XO.
Don't think so. The noise and systematic stability is as important for
positional as for timing versions, the timing version can benefit of the
> 3) Navigation receivers integrations will not require high accuracy PPS
> output from the receiver. If you can save some cents on PPS generation
> hardware by having 500ns resolution of the PPS instead of 1-10ns
> resolution - the navigation receiver will not even have hardware resources
> to generate a decent 1PPS.
No. We should have seen this in the clock jitter. They have the same
clock as the core-clock of the ASIC. The PPS is actually a variant of a
1 ms measurement timer that the GPS uses to grab samples of channel
phase and integrated I&Q values for all channels. The 1 ms timer holds
the actual system time of the GPS, which is then adjusted to the real
GPS time using different algorithms, but using the solution from the
positioning. The PPS is trivial to produce as a predicted event with
that solution in hand. Since the hardware support has a limited
resolution, it's trivial to calculate the error of the predicted PPS
from the actual time, so a sawtooth error could be sent out.
Saving resolution in the PPS generator clock doesn't help much, as you
need a certain clock rate and you need to divide it down regardless. The
amount of logic cost to do a coarser vs a core clock is essentially
nothing compared to what 12, 16, 20 or 24 channel correlator setup cost,
so going to core clock resolution is no real saviour.
> To my knowledge, the accuracy of (x,y,z,t) is given by the "geometrics" of
> the satellites tracked. The receiver reports this in the DOP (dilution of
> precision). There is PDOP (3d position), HDOP (horizontal position), HDOP
> (vertical position) and TDOP (Time). There is not much the receiver can do
> in normal operation with four or more tracked satellites to select between
> position and time accuracy. The relationship is given by the geometry of
> the measurements!
The RAIM algorithm can naturally prune of satellites giving too large
time/pseudo-range errors, above some limit. The number of available
channels allows for all in view birds to be selected, rather than having
a selected sub-set which gives the best geometry. RAIM with enough
channels will prune on actual pseudo-range errors rather than expected
xDOP from geometry basis and contribute to lower numbers.
> For a navigation receiver, there must be a time solution that is (scaled
> by c) more or less at the same accuracy as the position. Having 3 meter
> accuracy means the receiver time is good to 10ns. However the navigation
> receiver does not need to communicate this timing accuracy to the outside.
> It does not have to calibrate filter/processing delays. Slowly varying
> delays in analog filters due to temperature changes can also be ignored.
> Delays due to LNA and cables can also be ignored if you have a spec at
> 1PPS of 1us.
The biases of C/A code tracking is large enough that most of those
issues can be overlooked. You can however shift DOP from the x, y and z
into TDOP performance of the t solution by letting each and every
pseudo-range be used in a pure T-RAIM pruning and then position solution.
The pseudo-range of a satellite can be written as:
p_sat = sqrt( (X - X_sat)^2 + (Y - Y_sat)^2 + (Z - Z_sat)^2) + c*(T - T_sat)
where p_sat is being measured for each sat and X, Y, Z and T is the
solution when applied for a number of sats (4 needed for 3D+T position).
When X, Y and Z is known from before, this equation becomes trivial to
solve, but also you can see that any precision/error that previous was
distributed over X, Y, Z and T is now only sent out on T. If X, Y and Z
is of sufficient precision, the T solution will benefit. Also, this
explains why only one sat is needed, as the equation system becomes
trivial and straight-forward.
The Misra & Enge book covers timing receivers in sub-chapter 6.3.
Actually, one old Meinberg GPS timing receiver used this fact and has a
single channel with old-school analogue interpolators and alternates
among the satellites.
More information about the time-nuts