Software-based GPS receiver
  
STVTalk.com Forum Index
STVTalk.com
All about Satellite TV systems.
 
 FAQFAQ   MemberlistMemberlist     RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 
   
Google
 
Web stvtalk.com
Software-based GPS receiver

 
Post new topic   Reply to topic    STVTalk.com Forum Index -> Satellite Navigation System
Author Message
Al
Guest





Posted: Tue Dec 13, 2005 1:08 am    Post subject: Software-based GPS receiver Reply with quote

Hello,
I'd like to work with GPS data in my PC. I've been doing some data
tests & simulations with MatLab and now I want to use real GPS data and
build a GPS software receiver but I'm not sure what hardware/software
do I need to process real data.
First of all I'd need an external antenna (PS/2, USB....) Which antenna
is ok?
After that I suppose I'll need a PCI A/D card in my PC to work with
this data (any extra chip or hardware?)
Finally I suppose I'll do a software-based adquisition,tracking and
position calculation (C code?, which software?)

Well...I'm a little bit lost so any flash of light will be very
welcome!
Thanks!
Back to top
bcd
Guest





Posted: Tue Dec 13, 2005 1:08 am    Post subject: Re: Software-based GPS receiver Reply with quote

Look for Cliff Kelly's site.

On 12/12/05 13:52, in article m38xuq3rwe.fsf@lysator.liu.se, "Bjorn
Gabrielsson" <bg@lysator.liu.se> wrote:

Quote:
"Al" <albertzurita@gmail.com> writes:

Hello,
I'd like to work with GPS data in my PC. I've been doing some data
tests & simulations with MatLab and now I want to use real GPS data and
build a GPS software receiver but I'm not sure what hardware/software
do I need to process real data.
First of all I'd need an external antenna (PS/2, USB....) Which antenna
is ok?
After that I suppose I'll need a PCI A/D card in my PC to work with
this data (any extra chip or hardware?)
Finally I suppose I'll do a software-based adquisition,tracking and
position calculation (C code?, which software?)

Well...I'm a little bit lost so any flash of light will be very
welcome!
Thanks!

Hi Al,

You might want to do some googling on "opensource GPS", "gnu radio usrp",
etc.

You can also search the proceedings on www.ion.org and look through
the abstracts to find the research groups at various Universities that
deal with software GPS receivers. The university webs will usually
make papers and reports available.

Have fun!

--
Björn
Back to top
Bjorn Gabrielsson
Guest





Posted: Tue Dec 13, 2005 1:08 am    Post subject: Re: Software-based GPS receiver Reply with quote

"Al" <albertzurita@gmail.com> writes:

Quote:
Hello,
I'd like to work with GPS data in my PC. I've been doing some data
tests & simulations with MatLab and now I want to use real GPS data and
build a GPS software receiver but I'm not sure what hardware/software
do I need to process real data.
First of all I'd need an external antenna (PS/2, USB....) Which antenna
is ok?
After that I suppose I'll need a PCI A/D card in my PC to work with
this data (any extra chip or hardware?)
Finally I suppose I'll do a software-based adquisition,tracking and
position calculation (C code?, which software?)

Well...I'm a little bit lost so any flash of light will be very
welcome!
Thanks!

Hi Al,

You might want to do some googling on "opensource GPS", "gnu radio usrp",
etc.

You can also search the proceedings on www.ion.org and look through
the abstracts to find the research groups at various Universities that
deal with software GPS receivers. The university webs will usually
make papers and reports available.

Have fun!

--
Björn
Back to top
Iwo Mergler
Guest





Posted: Tue Dec 13, 2005 5:08 pm    Post subject: Re: Software-based GPS receiver Reply with quote

Al wrote:

Quote:
Hello,
I'd like to work with GPS data in my PC. I've been doing some data
tests & simulations with MatLab and now I want to use real GPS data and
build a GPS software receiver but I'm not sure what hardware/software
do I need to process real data.
First of all I'd need an external antenna (PS/2, USB....) Which antenna
is ok?
After that I suppose I'll need a PCI A/D card in my PC to work with
this data (any extra chip or hardware?)
Finally I suppose I'll do a software-based adquisition,tracking and
position calculation (C code?, which software?)

Well...I'm a little bit lost so any flash of light will be very
welcome!
Thanks!

Hi Al,

basic idea is sound, but forget realtime tracking, PC operating
systems have too much latency.

You cannot hope to sample the GPS RF signal directly, you would
need your ADC running at >3GHz, continuously.

In fact, you need an external antenna and a GPS frontend. Most
frontends mix the 1.5GHz carrier down to a few MHz and do the
sampling for you, with a 1-2bit ADC. Out comes something very
similar to SPI. Have a look at SiGe, for instance.

Basically, you need a synchronous serial input device which can
handle about 5MBit/sec. Any USB enabled FPGA or CPLD board will
do. It is absolutely vital that no data is lost or inserted.

If yours is a hobby project, it's probably easiest to open up
an existing GPS module and tap into the serial data stream.

On the PC, you get a data stream which contains the downmixed
GPS carriers. Some frontends include aliasing in the sampler,
so the frequency spectrum may be mirrored.

What you need to do is generate a carrier and gold code replica
signal and search for maximum correlation for each satellite.
Finding the right thresholds for detection requires some magic.
Depending on how sensitive you want it to be, you'll need to
search a few milliseconds of sampled data. Without a-priori
information, you're limited to about 10ms. Search two consecutive
10ms fragments, as one may contain a navigation bit edge and
give weaker results.

After finding a good signal, you can start 'tracking' along
the samples, finding and demodulating bit edges, etc.

You need a minimum of 6 seconds worth of samples if you don't
already have accurate time (better than 10ms). You'll need to
get relevant ephemeris from the 'net, e.g. CORS.

If you want to demodulate ephemeris, you need a bit over 30
seconds of data.

This can be done in Matlab, but it's probably best to do
the signal processing part in C.

On a fast PC with at least 1 second worth of buffering, it may
be possible to do all this in real time.

Kind regrads,

Iwo
Back to top
 
Post new topic   Reply to topic    STVTalk.com Forum Index -> Satellite Navigation System All times are GMT
Page 1 of 1

 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum



FPGA Electronics Auto Forum
New Topics Powered by phpBB