1
0
mirror of https://github.com/gnss-sdr/gnss-sdr synced 2024-11-19 16:24:58 +00:00
Commit Graph

777 Commits

Author SHA1 Message Date
Javier Arribas
9f3fbeb52d Code cleaning and few optimizations in tracking modules.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@148 64b25241-fba3-4117-9849-534c7e92360d
2012-01-29 18:03:56 +00:00
Javier Arribas
dd01b83bc3 GNSS SDR now uses the unified Gnss_Synchro class to exchange signal synchronization data between Acquisition, Tracking and Telemetry decoder blocks.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@147 64b25241-fba3-4117-9849-534c7e92360d
2012-01-27 18:01:17 +00:00
Carles Fernandez
3b5189075b Cleaning tests
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@143 64b25241-fba3-4117-9849-534c7e92360d
2012-01-25 03:16:08 +00:00
Carles Fernandez
0d598a7188 Added implementation of plain cordic class in tracking/libs. Added a corresponding test. The implementation is slower than standard sin and cos implementations, so it is not used in the receiver. The test will fail otherwise, indicating that this should be used instead of standard functions.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@142 64b25241-fba3-4117-9849-534c7e92360d
2012-01-25 01:57:28 +00:00
Carles Fernandez
3bff16b5d1 Code cleaning.
Test infrastructure reactivated. Now a run_tests executable is created and runs some tests.

git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@138 64b25241-fba3-4117-9849-534c7e92360d
2012-01-23 00:52:05 +00:00
Carles Fernandez
80af09f91f Acquisition, Tracking and TelemetryDecoder blocks now use Gnss_Satellite class and have access to know what parameters have to use. Algorithms are not system-related anymore.
Some code cleaning and and enhancements in the output screen messages.

git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@135 64b25241-fba3-4117-9849-534c7e92360d
2012-01-20 23:28:11 +00:00
Javier Arribas
b72802a51f Added experimental SIMD-accelerated correlator for tracking, using GNURadio volk libraries.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@134 64b25241-fba3-4117-9849-534c7e92360d
2012-01-20 16:37:16 +00:00
Carles Fernandez
305d9f14c1 Class Gnss_Satellite extended to tracking
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@133 64b25241-fba3-4117-9849-534c7e92360d
2012-01-19 19:30:05 +00:00
Carles Fernandez
60da2f4336 Code cleaning
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@128 64b25241-fba3-4117-9849-534c7e92360d
2012-01-16 18:27:31 +00:00
Carles Fernandez
276f7dd2dc cleaning code
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@127 64b25241-fba3-4117-9849-534c7e92360d
2012-01-13 01:28:42 +00:00
Carles Fernandez
82c17438b5 code cleaning
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@126 64b25241-fba3-4117-9849-534c7e92360d
2012-01-13 01:06:28 +00:00
Carles Fernandez
32690a7d59 Tracking Classes are now upper case.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@125 64b25241-fba3-4117-9849-534c7e92360d
2012-01-13 00:49:24 +00:00
Carles Fernandez
bc62d8d5be Some code cleaning
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@120 64b25241-fba3-4117-9849-534c7e92360d
2012-01-11 09:01:24 +00:00
Carles Fernandez
8738498691 Added a method in gps_navigation message that computes UTC time.
Experimental creation of RINEX headers.

git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@112 64b25241-fba3-4117-9849-534c7e92360d
2012-01-07 05:21:11 +00:00
Carles Fernandez
fc4d8cc7bf Recovering compatibility with the Boost version that comes with Ubuntu 10.10.
boost::filesystem::temp_directory_path() is only available from Boost 1.45, while Ubuntu 10.10 comes with Boost 1.42. 

git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@104 64b25241-fba3-4117-9849-534c7e92360d
2011-12-28 21:55:11 +00:00
Carles Fernandez
2ce62706af Adding documentation and improving code formatting.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@103 64b25241-fba3-4117-9849-534c7e92360d
2011-12-28 21:36:45 +00:00
Carles Fernandez
48719c3075 Improving documentation
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@102 64b25241-fba3-4117-9849-534c7e92360d
2011-12-28 03:05:37 +00:00
Carles Fernandez
67da579ae1 Fixing typo in variable name
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@98 64b25241-fba3-4117-9849-534c7e92360d
2011-12-24 22:59:08 +00:00
Carles Fernandez
2724e20e6e Fixing typo in variable name
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@97 64b25241-fba3-4117-9849-534c7e92360d
2011-12-24 22:52:33 +00:00
Carles Fernandez
7aa58ef590 Fixing the round problem
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@96 64b25241-fba3-4117-9849-534c7e92360d
2011-12-24 22:45:14 +00:00
Carles Fernandez
181596a55e Fixing some problems with Boost round (works in darwin) and std::round (works in linux gcc). Also fixing building problems
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@95 64b25241-fba3-4117-9849-534c7e92360d
2011-12-24 22:15:37 +00:00
Carles Fernandez
baebfd96be Adding compatibility with Mac OS X 10.6.8 (Snow Leopard)
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@94 64b25241-fba3-4117-9849-534c7e92360d
2011-12-24 20:54:25 +00:00
Javier Arribas
69b8ac00dc - Major changes:
- The executable file and the default configuration file is now changed from "./install/mercurio" and "./conf/mercurio.conf" to "./install/gnss-sdr" and "./conf/gnss-sdr.conf", respectively.
        - Configuration file structure changed to define in a single entry the internal sampling frequency (after the signal conditioner). NOTICE that this change affects the all the adapters (acquisition, tracking, telemetry_decoder, observables, and PVT). All the adapters are now modified to work with this feature.
        - Moved several in-line GPS L1 CA parameters (a.k.a magic numbers..) to ./src/core/system_parameters/GPS_L1_CA.h definition file.
        - Tracking blocks now uses DOUBLE values in their outputs.
        - Observables and PVT now are separated. PVT and their associated libraries are moved to ./src/algorithms/PVT
        - Temporarily disabled the RINEX output (I am working on that!)
        - GNSS-SDR screen output now gives extended debug information of the receiver status and events. In the future, this output will be redirected to a log file.

- Bug fixes:
        - FILE_SIGNAL_SOURCE now works correctly when the user configures GNSS-SDR to process the entire file.
        - GPS_L1_CA_DLL_PLL now computes correctly the PRN start values.
        - GPS_L1_CA_DLL_FLL_PLL now computes correctly the PRN start values.
        - Several modifications in GPS_L1_CA_Telemetry_Decoder, GPS_L1_CA_Observables, and GPS_L1_CA_PVT modules to fix the GPS position computation.

- New features
        - Tracking blocks perform a signal integrity check against NaN outliers before the correlation process.
        - Tracking and PVT binary dump options are now documented and we provide MATLAB libraries and sample files to read it. Available in ./utils/matlab" and "./utils/matlab/libs"
        - Observables output rate can be configured. This option enables the GPS L1 CA PVT computation at a maximum rate of 1ms.
        - GPS_L1_CA_PVT now can perform a moving average Latitude, Longitude, and Altitude output for each of the Observables output. It is configurable using the configuration file.
        - Added Google Earth compatible Keyhole Markup Language (KML) output writer class (./src/algorithms/PVT/libs/kml_printer.h and ./src/algorithms/PVT/libs/kml_printer.cc ). You can see the receiver position directly using Google Earth.
        - We provide a master configuration file which includes an in-line documentation with all the new (and old) options. It can be found in ./conf/master.conf

git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@84 64b25241-fba3-4117-9849-534c7e92360d
2011-12-07 17:59:34 +00:00
Javier Arribas
34d1c5110b GNSS-SDR Major changes:
New tracking libraries:
        -  tracking_discriminators: Library with a set of code tracking and carrier tracking discriminators that is used by the tracking algorithms. (fully documented, including math algorithms using doxygen!)
        -  tracking_2rd_DLL_filter: Class that implements 2 order DLL filter for code tracking loop.
        -  tracking_2rd_PLL_filter: Class that implements 2 order PLL filter for carrier tracking loop.
        -  tracking_FLL_PLL_filter:  Class that implements hybrid FLL and PLL filter for tracking carrier loop.
        -  CN_estimators: Library with a set of Carrier to Noise estimators and lock detectors. (fully documented, including math algorithms using doxygen!)

    Tracking:
        - gps_l1_ca_dll_pll_tracking: The existing DLL + PLL tracking module, which is the K.Borre and D.Akos one, is now completely re-factored. Now uses the above described libraries.
        - gps_l1_ca_dll_fll_pll_tracking: This is a brand new tracking module, which implements the FLL assisted PLL described in Kaplan (2nd edition). (also documentedwith references)

    Configuration options:
        - The following tracking parameters are added:
            ;######### TRACKING CONFIG ############
            ; Tracking.implementation=GPS_L1_CA_DLL_PLL_Tracking or GPS_L1_CA_DLL_FLL_PLL_Tracking 
            Tracking.implementation=GPS_L1_CA_DLL_FLL_PLL_Tracking
            ;PLL filter bandwidth in Hz.
            Tracking.pll_bw_hz=50.0;
            ;DLL filter bandwidth in Hz.
            Tracking.dll_bw_hz=2.0;
            ;FLL filter bandwidth in Hz.
            Tracking.fll_bw_hz=50;
            ;filter order: choice between 2 or 3 at this moment, only for FLL assisted PLL
            Tracking.order=2;
            ;Correlator space in chips units
            Tracking.early_late_space_chips=0.5;

Other files have also been modified with minor changes to adapt to new modules or minor bug fixes.


git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@80 64b25241-fba3-4117-9849-534c7e92360d
2011-11-22 17:21:54 +00:00
Javier Arribas
dcc3e4d858 Change of the set_doppler_freq_shift(float phase) to set_doppler_freq_shift(float doppler_freq_hz), and set_prn_code_phase(signed int phase) to set_prn_code_phase(signed int phase_samples), which are more appropiate, in tracking_interface. Minor changes in tracking adapters to be coherent with the new variable names
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@77 64b25241-fba3-4117-9849-534c7e92360d
2011-11-07 11:47:49 +00:00
Javier Arribas
1040e6865d Added J.Arribas contributions: PVT with basic least squares and rinex 2.1 output is now enabled, tracking channels now estimate the CN0 and performs a basic carrier lock detector and returns to acquisition if the tracking loss the lock.
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@75 64b25241-fba3-4117-9849-534c7e92360d
2011-10-28 15:01:46 +00:00
Carles Fernandez
228fa3b797 moving things to trunk
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@72 64b25241-fba3-4117-9849-534c7e92360d
2011-10-01 18:45:20 +00:00