[time-nuts] Is possible precise 1pps?

Jim Lux jimlux at earthlink.net
Wed Mar 13 10:30:11 EDT 2013

On 3/13/13 7:06 AM, Bob Camp wrote:
> Hi
> A GPS that uses position hold gets it's coordinates from one of two possible
> sources:
> 1) You measure the actual antenna location with a precision survey grade GPS
> and enter them.
> --or--
> 2) The GPS does a survey for some amount of time. It averages it's own
> "reasonable" location estimates over this time period. With 48 hour
> averaging and a good sky view the location estimate can be pretty good.
> The position hold function allows the GPS to come up with a time estimate
> from a small number of satellites. This is useful when the sky view is not
> very good.
> A position error of one meter can translate into a time error of about 3 ns.
> Most GPS engines are rated for a 3 meter error, so that would be roughly 9
> or 10 ns. Since the exact error depends on the stat's location relative to
> the error vector, the actual error will vary a bit (= it looks like noise).

I was just reminded of an interesting observation..

The satellites are all moving, so whether your receiver is moving or not 
doesn't really change the inherent time accuracy possible, as long as 
you can accurately (!) estimate your position.  Otherwise, the time 
uncertainty is some combination of the position uncertainty of the 
satellites and your own position uncertainty. i.e. there's no reason why 
you can't determine the position of a LEO satellite to centimeters, even 
though it's zipping along at 7km/sec.  In fact it's potentially easier 
than on the earth's surface: less ionosphere, less multipath, less high 
frequency variation in position and velocity vectors.

What position hold really buys you is a reduction in "own position 
uncertainty" and the ability to use fewer satellites to get a "time fix".

Think of it as solving for 4 unknowns (x,y,z,t) (i.e. your position and 
time).  And, as a practical matter, you need to solve for their 
derivatives as well.  Using inputs that are the (multiple) satellites' 
(x,y,z,t and derivatives).  Position hold essentially says 
xdot,ydot,zdot =0, so you have fewer things to solve for (t and tdot). 
Fewer things to solve for with the same number of observables means, 
hopefully, smaller uncertainty on the resulting solution.

There's also a basic issue with some receivers... if they were intended 
for an application that didn't need precise timing (e.g. they just time 
stamp things to the nearest millisecond or something), then the internal 
receiver architecture and software may not bother to actually try to 
solve for time to a higher level of precision. Maybe 1 microsecond is 
"good enough" to produce position and time outputs with the required 
accuracy.  I recall seeing a patent (or maybe a paper) for a low 
precision attitude determination system (1 or 0.1 degree, as I recall) 
and it didn't need very good time or position accuracy at all.. what it 
needed to know was the "direction of arrival" of the GPS signal, so they 
could compare carrier phase between two antennas. And they didn't need 
precise measurement of carrier frequency either.  To a first order, to 
get 1 degree knowledge, you need to know your position to within 1/57th 
of the distance to the satellite, or some hundreds of km.  That's pretty 
crummy in GPS terms, but it works.  I don't recall if that system even 
solved for own position, or if it used an estimate from somwhere else, 
or whether it just acquired and tracked the carrier and PN code, without 
doing a nav solution.

More information about the time-nuts mailing list