1 / 23

Implementation of a Software-based GPS Receiver

Implementation of a Software-based GPS Receiver. Anthony J. Corbin Dr. In Soo Ahn Friday, June 6, 2014. Overview. Progress Flowcharts Acquisition Tracking Position Calculation Software Organization Changes to Project Objectives Results DLL/PLL Tracking Position Updated Schedule.

onaona
Download Presentation

Implementation of a Software-based GPS Receiver

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Implementation of a Software-based GPS Receiver Anthony J. Corbin Dr. In Soo Ahn Friday, June 6, 2014

  2. Overview • Progress • Flowcharts • Acquisition • Tracking • Position Calculation • Software Organization • Changes to Project Objectives • Results • DLL/PLL Tracking • Position • Updated Schedule

  3. Progress • MATLAB GPS software [1] has been ported to C++ • This includes: • Coordinate conversion • Tracking loop • Acquisition algorithms • DSP design approach was abandoned due to technical issues which will be discussed later. • C++ code can accurately find a position from stored sample data.

  4. Coarse Acquisition • Coarse acquisition searches around the intermediate frequency in the range +/- 10 KHz with a step of 500 Hz • Frequency Domain Correlation

  5. Fine Acquisition • Uses the frequency estimate from Coarse Acquisition to obtain a better estimate • The overall functionality is very similar to Coarse Acquisition

  6. Tracking

  7. Delay-Locked Loop [1]

  8. Position Calculation

  9. Functional Software Diagram

  10. Changes to Project Objectives • Finding the satellite positions requires an accurate time…requiring collection of at least subframes 1-3 of the ephemeris data • The equation below shows the number of multiplications per second required to track one satellite. This does not include C/A code generation, carrier demodulation, or the overhead involved with sampling. • The DSP considered is clocked at 225 MHz which is simply not fast enough.

  11. USB GPS Dongle • USB 2.0 Interface • Simple software interface

  12. C/A Code Tracking • The graphs to the right show the code error output from the delay-locked loop. • The parameters have been selected in such a way that the loop converges very quickly.

  13. Carrier Tracking • Carrier error is shown on the right with respect. • In this example, the frequency of the carrier appears to be drifting further below the intermediate frequency. • This is an illustration of the Doppler Effect.

  14. Navigation Data • The figures to the right show resolved 50 Hz navigation data. • The top graph shows 32s of data, while the bottom graph shows 3s.

  15. Position Results 51.81 m

  16. Position Results 104.4 m

  17. Current Display • The display currently uses a console window. • A GUI could be written in any language.

  18. Speed • Currently the C++ code requires under a minute (per satellite) to read a full 36 s of satellite data. • Compare this with the Matlab code which takes 6 minutes per satellite.

  19. Intel Threading Building Blocks • Intel’s TBB is a library for creating threaded programs • Platform independent • Relatively easy to use

  20. Real-time Functionality • Taking a direct approach to implementing real-time functionality appears to be extremely difficult (possibly impossible) given current hardware limitations. • However, a possibility exists, which may feasibly yield results.

  21. Real-time Functionality

  22. Updated Schedule

  23. References • [1] Kai Borre, Dennis M. Akos, Nicolaj Bertelsen, Peter Rinder, and Soren Holdt Jensent, Software-Defined GPS and Galileo Receiver : A Single-Frequency Approach. Birkhauser: Boston, 2007, pp. 29, 83, 105. • [2] SiGe, SE4110L-EK1 Evaluation Board User Guide. • [3] SiGe, SE4110L Datasheet.

More Related