[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [gpsd-users] Differe,tial GPS question

From: Greg Troxel
Subject: Re: [gpsd-users] Differe,tial GPS question
Date: Tue, 26 Jan 2016 08:24:43 -0500
User-agent: Gnus/5.130014 (Ma Gnus v0.14) Emacs/24.5 (berkeley-unix)

jouke hijlkema <address@hidden> writes:

> Thank you for letting me into your mailing list.

Your question is actually off topic, but I suspect it's of interest to

I am curious if you are you planning to release your project as open
source (or are you looking for free advice for a startup)?  First advice
email is free anyway :-)

> To get a high precision positioning info I, naively maybe, counted on
> using gpsd on a RPi and 2 adafruit ultimate gps sensors. One fixed and
> one on the robot.
> The fixed sensor would give me a correction for the mobile one. The
> implementation so far is as follows:
>  * The fixed GPS stores its measurements and the error (error =
>    measurement - fixed position) in a mysql database indexed by the
>    timestamp (pulse per second)

The basic problem with your approach is that this is not how
differential GPS is supposed to work.  The standard approach is to
measure pseudoranges and to send
  (time, pseudorange_error, pseudorange_error_rate)
for each.

What you are doing is letting the receiver compute a position, and then
hoping that the other receiver has the same satellites (and the same
EGNOS signal!) and is computing exactly the same, and sending/using the
error in the computed solution.   This is more or less known to be not
all that useful.

>  * The robot does its own measurements and compares them with the data
>    in the database that has the same timestamp
>  * The robot calculates its position by substracting the error from its
>    measurements
> If I let this run for a day (the robot is stationary) and look at the
> variations I find that both lon and lat move over 6 or 7 meters which
> is way to much (I was hoping for ~10 cm precisions).

This is likely due to different satellites being used.  Store all of
that data too, and whether the receiver is in differential mode, and
plot your errors as a function of similarity of the satellite set and
plain/EGNOS mode.  Please post it and share a link -- I think we'd all
like to see it.

> My question is thus; am I to optimistic hoping this simple setup would
> work or do you think this should work and I should go over my
> programming (again)

Besides having the wrong approach, I think you are too optimistic.

In 2006, I had a commercial differential reference station that received
GPS and computed differential corrections.  Those were sent over wifi
From the base to 4 rovers, and injected into similar receivers.  This
was on a surveyed grid of around 80m x 120m (with a modern total station
by me using one for the first time, so a few cm).  My impression of the
resulting accuracy was that it was well sub meter, but not 10 cm.

You may need better antennas.  I had low-end survey antennas, about 20cm
in diameter, on poles.  My receivers/antennas were at least $1K each
(project at work where we really needed 0.5m-ish vs 5m-ish accuracy).

You may want to look into RTK:

Attachment: signature.asc
Description: PGP signature

reply via email to

[Prev in Thread] Current Thread [Next in Thread]