Low Cost DGPSJoe Desbonnet / email@example.com / ei3fib
Last update: 30 Oct 1998
The aim of this project is to produce a hardware and software solution to allow:
The target budget for all the hardware (both the reference and roving station) is 600IRP. Software will be made available under GPL, LGPL or some similar open source licence. Currently this project is only at a very early stage. I havn't even settled on which GPS receivers I am going to use. Actually this page is more to organize my own thoughts than anything else.
Note that there is already a low cost real-time DGPS solution using a Motorola Oncore VP available at www.tapr.org, however you will need to take out your soldering iron to assemble the kit. I'm aiming for a soldering iron-less solution.
A suitable receiver must be able to produce pseudorange and other low level information to have any chance at DGPS. Most consumer grade GPS receivers do not give access to this information. So far I have identified three low cost OEM receivers that do:
Of the three above the Garmin GPS 35 LP looks most promising. The output format is well documented in the manual (PDF format). The unit is a water proof sealed unit with RS232 and power lead provided (no soldering iron needed).
I'm only starting to get to grips with the math and physics of GPS. I originally thought that the error could be obtained by subtracting the reported position of the reference from its real position and adding that to the reported position of the roving station. However the errors (both natural and deliberate) are satellite dependent and so that simplistic approach would only work if both receivers where of the same make and model and were using the same satellites to calculate a position -- very unlikely.
The GPS receivers listed above are capable of giving raw information on the individual satellites in its view. This information along with similar information from the roving unit can (?!) be used to calculate an accurate position (1 - 5m accuracy).
I suspect that the full algorithm to do this is not going to be straightforward.
Also for real time DGPS I need to get access to the RTCM data specification -- I still havn't been able to find it on the net. The official specs are on paper and cost money to order (paper, money -- ohh no! :-)
My preference would be to implement all the code initially in either Java or C or both. Linux is the development platform here. The code will be open source (probably GPL or LGPL).