-
Notifications
You must be signed in to change notification settings - Fork 563
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Galileo tracking carr_error_filt_hz = carrier_doppler_hz? #734
Comments
This issue was closed prematurely and then reopened. |
Hi, I think one is the error signal from phase discriminator of the PLL and the other, the input to the NCO (i.e. the smoothed error signal that comes out of the filter) Error signal from the phase discriminator of the PLL -> carr_error_hz Both blocks are on the right part of this diagram: BTW, I guess you already checked, but you can find how these are computed in the LoC 538 and 540 below. carr_error_hz gnss-sdr/src/algorithms/tracking/gnuradio_blocks/glonass_l1_ca_dll_pll_tracking_cc.cc Line 538 in 2c69d2f
carr_error_filt_hz gnss-sdr/src/algorithms/tracking/gnuradio_blocks/glonass_l1_ca_dll_pll_tracking_cc.cc Line 540 in 2c69d2f
Indeed you can see how it uses the carr_error_filt_hz signal to make the new estimate of the carrier frequency in LoC 542. gnss-sdr/src/algorithms/tracking/gnuradio_blocks/glonass_l1_ca_dll_pll_tracking_cc.cc Line 542 in 2c69d2f
|
The mat file contains three quantities: I understand the relationship between (1) and (2) as referenced |
Ups, so sorry, I think I did not read your question carefully. If I understand your question, it is about the relationship between the output of the filter of the PLL loop and the new Doppler estimate, no? Then, I would say, and I'm a hoping that I am getting your point right: The value of the estimates of the Doppler at tracking stage starts with the estimate from the ACQ block, LoC 651, as it should be: And then. it gets updated in run_dll_pll() to the value of the filtered frequency error, in LoC 1107 At that moment in time, it should be the same. I assume. Does it help somehow? Are you seeing any type of strange behaviour? Thanks! |
Given this advice, the quantities in question behave exactly as
expected. However, I now raise the question as to how they can ever be
different if 'd_carrier_doppler_hz = d_carr_error_filt_hz' (line #
1107) is executed when tracking begins (triggering the start of a dump
file). I will examine the code more carefully but you have provided a
good starting point. Thanks for this.
Rick
…On 2024-01-02 00:41, Fran wrote:
Ups, so sorry, I think I did not read your question carefully.
If I understand your question, it is about the relationship between
the output of the filter of the PLL loop and the new Doppler estimate, no?
Then, I would say, and I'm a hoping that I am getting your point right:
The value of the estimates of the Doppler at tracking stage starts
with the estimate from the ACQ block, LoC 651, as it should be:
https://github.com/gnss-sdr/gnss-sdr/blob/main/src/algorithms/tracking/gnuradio_blocks/dll_pll_veml_tracking.cc#L651
And then. it gets updated in run_dll_pll() to the value of the
filtered frequency error, in LoC 1107
https://github.com/gnss-sdr/gnss-sdr/blob/main/src/algorithms/tracking/gnuradio_blocks/dll_pll_veml_tracking.cc#1107
At that moment in time, it should be the same. I assume.
Does it help somehow? Are you seeing any type of strange behaviour?
Thanks!
Fran
—
Reply to this email directly, view it on GitHub
<#734 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/A2BCHJ3XCDMC5JOYWRMPNW3YMPB4TAVCNFSM6AAAAAA5NGO2ZSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNZTG42DAMZVG4>.
You are receiving this because you modified the open/close
state.Message ID: ***@***.***>
|
Within a dump mat file created by the tracking configuration for Tracking_1B.implementation=Galileo_E1_DLL_PLL_VEML_Tracking and Tracking_E6.implementation=Galileo_E6_DLL_PLL_Tracking:
is tracking carr_error_filt_hz = carrier_doppler_hz to be expected (y/n/depends)?
They appear to be two distinct arrays:
trk[2]['carr_error_filt_hz'] is trk[2]['carrier_doppler_hz']
False
gnss-sdr version 0.0.18.git-next-59d70eb33
The text was updated successfully, but these errors were encountered: