mirror of
https://github.com/gnss-sdr/gnss-sdr
synced 2025-01-31 11:19:18 +00:00
Add option to enable/disable carrier aiding in the code loop (enabled by default)
This commit is contained in:
parent
0986e4a66e
commit
ba7a938304
@ -991,7 +991,11 @@ void dll_pll_veml_tracking::run_dll_pll()
|
||||
// Code discriminator filter
|
||||
d_code_error_filt_chips = d_code_loop_filter.apply(d_code_error_chips); // [chips/second]
|
||||
// New code Doppler frequency estimation
|
||||
d_code_freq_chips = (1.0 + (d_carrier_doppler_hz / d_signal_carrier_freq)) * d_code_chip_rate - d_code_error_filt_chips;
|
||||
d_code_freq_chips = d_code_chip_rate - d_code_error_filt_chips;
|
||||
if (trk_parameters.carrier_aiding)
|
||||
{
|
||||
d_code_freq_chips += d_carrier_doppler_hz * d_code_chip_rate / d_signal_carrier_freq;
|
||||
}
|
||||
|
||||
// Experimental: detect Carrier Doppler vs. Code Doppler incoherence and correct the Carrier Doppler
|
||||
if (trk_parameters.enable_doppler_correction == true)
|
||||
|
@ -738,7 +738,11 @@ void dll_pll_veml_tracking_fpga::run_dll_pll()
|
||||
// Code discriminator filter
|
||||
d_code_error_filt_chips = d_code_loop_filter.apply(d_code_error_chips); // [chips/second]
|
||||
// New code Doppler frequency estimation
|
||||
d_code_freq_chips = (1.0 + (d_carrier_doppler_hz / d_signal_carrier_freq)) * d_code_chip_rate - d_code_error_filt_chips;
|
||||
d_code_freq_chips = d_code_chip_rate - d_code_error_filt_chips;
|
||||
if (trk_parameters.carrier_aiding)
|
||||
{
|
||||
d_code_freq_chips += d_carrier_doppler_hz * d_code_chip_rate / d_signal_carrier_freq;
|
||||
}
|
||||
|
||||
// Experimental: detect Carrier Doppler vs. Code Doppler incoherence and correct the Carrier Doppler
|
||||
if (trk_parameters.enable_doppler_correction == true)
|
||||
|
@ -55,6 +55,7 @@ Dll_Pll_Conf::Dll_Pll_Conf()
|
||||
slope = 1.0;
|
||||
spc = 0.5;
|
||||
y_intercept = 1.0;
|
||||
carrier_aiding = true;
|
||||
extend_correlation_symbols = 1;
|
||||
cn0_samples = FLAGS_cn0_samples;
|
||||
cn0_smoother_samples = 200;
|
||||
@ -152,6 +153,7 @@ void Dll_Pll_Conf::SetFromConfiguration(ConfigurationInterface *configuration,
|
||||
max_code_lock_fail = configuration->property(role + ".max_lock_fail", max_code_lock_fail);
|
||||
max_carrier_lock_fail = configuration->property(role + ".max_carrier_lock_fail", max_carrier_lock_fail);
|
||||
carrier_lock_th = configuration->property(role + ".carrier_lock_th", carrier_lock_th);
|
||||
carrier_aiding = configuration->property(role + ".carrier_aiding", carrier_aiding);
|
||||
|
||||
// tracking lock tests smoother parameters
|
||||
cn0_smoother_samples = configuration->property(role + ".cn0_smoother_samples", cn0_smoother_samples);
|
||||
|
@ -60,6 +60,7 @@ public:
|
||||
float spc;
|
||||
float y_intercept;
|
||||
int32_t extend_correlation_symbols;
|
||||
bool carrier_aiding;
|
||||
bool high_dyn;
|
||||
std::string item_type;
|
||||
int32_t cn0_samples;
|
||||
|
@ -56,6 +56,7 @@ Dll_Pll_Conf_Fpga::Dll_Pll_Conf_Fpga()
|
||||
slope = 1.0;
|
||||
spc = 0.5;
|
||||
y_intercept = 1.0;
|
||||
carrier_aiding = true;
|
||||
extend_correlation_symbols = 1;
|
||||
cn0_samples = FLAGS_cn0_samples;
|
||||
cn0_smoother_samples = 200;
|
||||
@ -157,6 +158,7 @@ void Dll_Pll_Conf_Fpga::SetFromConfiguration(ConfigurationInterface *configurati
|
||||
very_early_late_space_narrow_chips = configuration->property(role + ".very_early_late_space_narrow_chips", very_early_late_space_narrow_chips);
|
||||
extend_correlation_symbols = configuration->property(role + ".extend_correlation_symbols", extend_correlation_symbols);
|
||||
cn0_samples = configuration->property(role + ".cn0_samples", cn0_samples);
|
||||
carrier_aiding = configuration->property(role + ".carrier_aiding", carrier_aiding);
|
||||
|
||||
// tracking lock tests smoother parameters
|
||||
cn0_smoother_samples = configuration->property(role + ".cn0_smoother_samples", cn0_smoother_samples);
|
||||
|
@ -63,6 +63,7 @@ public:
|
||||
float spc;
|
||||
float y_intercept;
|
||||
int32_t extend_correlation_symbols;
|
||||
bool carrier_aiding;
|
||||
bool high_dyn;
|
||||
int32_t cn0_samples;
|
||||
int32_t cn0_min;
|
||||
|
Loading…
Reference in New Issue
Block a user