A baseband signal processing method and device
By evaluating the pseudorange quality of the BOC signal in the satellite navigation system and detecting and updating the secondary peak locking status, the error detection and missed detection problems caused by secondary peak locking of the BOC signal are solved, and the sensitivity and applicability of signal processing are improved.
Patent Information
- Application Number
- CN202210700980.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-06-20
- Publication Date
- 2025-03-28
- Estimated Expiration
- 2042-06-20
AI Technical Summary
There are multiple secondary peaks in the autocorrelation function of the BOC signal, resulting in false detection and missed detection in signal capture tracking, increasing the search time.
By capturing the baseband signal, obtaining the pseudorange values of multiple frequency points, calculating the pseudorange difference value, and evaluating the pseudorange quality of each frequency point based on the pseudorange difference value, determining whether there is a BOC signal secondary peak lock, thereby updating the code tracking loop.
Accurate detection of BOC signal secondary peak locking is achieved, the main peak energy is retained, the signal processing sensitivity is improved, and it has universal applicability, and will not interfere with the current code tracking loop.
Smart Images

Figure CN115201867B_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present application relate to baseband signal processing technology of a satellite navigation system receiver, and more particularly to a baseband signal processing method and device. Background Art
[0002] According to the news released by the International Committee of the Global Navigation Satellite System (GNSS), the four major satellite navigation system suppliers in the world include the Global Positioning System (GPS) of the United States, the GLONASS of Russia, the Galileo Satellite Navigation System (GALILEO) of the European Union and the BeiDou Satellite Navigation System (BDS) of China. In order to achieve the coexistence of navigation signals of various systems in a narrow satellite navigation frequency band and avoid spectrum aliasing, the three major GNSS systems of GALILEO, GPS and BDS have adopted new satellite navigation signal modulation methods, such as low-order BOC (Binary Offset Carrier, binary offset carrier modulation), high-order BOC (m, n) modulation (m / n≥2), and MBOC (Multiplexed Binary Offset Carrier) modulation and AltBOC (AlternativeBOC) modulation derived from BOC modulation. BOC was first proposed during the design of the Galileo system. Based on the original BPSK modulation, it adds a binary subcarrier to achieve spectrum splitting, flexibly set the main peak position, and realize signal spectrum shifting. At the same time, the narrower correlation function main peak of the BOC signal can improve the anti-multipath performance.
[0003] However, the addition of binary subcarrier also introduces ambiguity in signal acquisition and tracking: the autocorrelation of BOC signal has multiple secondary peaks in addition to the sharp main peak. As the value of m / n of BOC(m,n) increases, the number of secondary peaks increases. Therefore, in signal acquisition and tracking, the signal in the code phase search or code tracking loop is locked on the secondary peak, which is a false detection; moreover, the multiple zero point problem of the BOC autocorrelation function curve will cause missed detection, which increases the search time. Summary of the invention
[0004] The embodiments of the present application provide a baseband signal processing method and device, which can accurately detect the secondary peak lock of the BOC signal, retain the main peak energy, improve sensitivity, and have universal applicability. It will not interfere with the current pseudo code tracking loop and can be used as an auxiliary means to assist other existing technologies.
[0005] The present application provides a baseband signal processing method, which may include:
[0006] Capture baseband signal;
[0007] By tracking the baseband signal, the pseudorange values of multiple frequency points of any satellite are obtained, and the pseudorange difference is calculated according to the pseudorange values; at least one frequency point among the multiple frequency points adopts a binary offset carrier modulation (i.e., BOC digital modulation) method;
[0008] The pseudorange quality of each frequency point is evaluated according to the pseudorange difference; the pseudorange quality may include any one of the following: poor quality, good quality, or the presence of a secondary peak lock of a binary offset carrier modulation signal at the frequency point.
[0009] In an exemplary embodiment of the present application, the capturing of the baseband signal may include:
[0010] Determine an auxiliary capture scheme according to the frequency characteristics of the satellite, use a preset frequency band as a main frequency, and assist in performing auxiliary capture on other frequency points other than the main frequency point among the multiple frequency points;
[0011] The Doppler frequency offset and the code phase offset of the main frequency point, and the Doppler frequency offset and the code phase offset of the other frequency points are obtained.
[0012] In an exemplary embodiment of the present application, the acquiring pseudorange values of multiple frequency points of any satellite by tracking the baseband signal, and calculating the pseudorange difference according to the pseudorange values may include:
[0013] By tracking the baseband signal, an instantaneous coherent integration result of the I branch and an instantaneous coherent integration result of the Q branch are obtained;
[0014] Calculating a carrier loop lock state value according to the instantaneous coherent integration result of the I branch, the instantaneous coherent integration result of the Q branch, and a preset carrier loop lock state calculation formula;
[0015] When the carrier loop lock state value of each frequency point is greater than or equal to a preset state threshold, obtaining the pseudorange value corresponding to each frequency point of the arbitrary satellite;
[0016] A preset operation is performed between the pseudorange values corresponding to each frequency point to obtain the pseudorange difference.
[0017] In an exemplary embodiment of the present application, evaluating the pseudorange quality of each frequency point according to the pseudorange difference may include:
[0018] Obtain the pseudorange quality determination threshold for each frequency point;
[0019] A normal pseudorange difference threshold is defined according to the pseudorange quality determination threshold and a preset pseudorange accuracy; the normal pseudorange difference threshold is less than or equal to the pseudorange quality determination threshold;
[0020] The pseudorange quality of each frequency point is judged according to the magnitude relationship between the pseudorange difference value, the normal pseudorange difference threshold and the pseudorange quality judgment threshold.
[0021] In an exemplary embodiment of the present application, judging the pseudorange quality of each frequency point according to the magnitude relationship between the pseudorange difference value, the normal pseudorange difference threshold, and the pseudorange quality determination threshold may include:
[0022] When the calculated multiple pseudorange difference values are all greater than or equal to the normal pseudorange difference threshold, determining the pseudorange quality difference of each frequency point;
[0023] When the calculated multiple pseudorange difference values are all less than the normal pseudorange difference threshold, it is determined that the pseudorange quality of each frequency point is excellent;
[0024] When a part of the calculated multiple pseudorange difference values is less than the normal pseudorange difference threshold corresponding to any frequency point, and another part of the pseudorange difference values is greater than or equal to the pseudorange quality judgment threshold, and the frequency points corresponding to the part of the pseudorange difference values adopt the binary offset carrier modulation method, it is determined that there is a secondary peak lock of the binary offset carrier modulation signal (i.e., BOC signal) at the any frequency point, and there may be a code phase whole chip offset.
[0025] In an exemplary embodiment of the present application, the method may further include:
[0026] When the pseudorange quality of the frequency point is determined to be poor quality or good quality, the current code tracking loop state is not changed, and the baseband signal is continued to be tracked;
[0027] When it is determined that the pseudorange quality of the frequency point is that there is a secondary peak lock of the binary offset carrier modulation signal, the code phase adjustment amount DiffCode of the frequency point is calculated, and the code tracking loop is updated according to the code phase adjustment amount DiffCode.
[0028] In an exemplary embodiment of the present application, the calculating of the code phase adjustment value DiffCode of the frequency point may include:
[0029] Calculate the mean of the pseudorange differences corresponding to the frequency point;
[0030] The code phase adjustment amount DiffCode of the frequency point is calculated according to the average value of the pseudorange difference corresponding to the frequency point and a preset code phase adjustment amount calculation formula.
[0031] In an exemplary embodiment of the present application, updating the code tracking loop according to the code phase adjustment amount DiffCode may include:
[0032] According to the code phase adjustment amount DiffCode of each frequency point, the phase fraction accumulated value CodeNCO and the code phase integer count value CodeCount of the code tracking loop digital control oscillator corresponding to the frequency point at the current moment are updated; wherein, the code length of the frequency point is used as the update period of the code phase integer count value CodeCount; the phase fraction accumulated value CodeNCO is an unsigned 32-bit integer variable, and the update period of the phase fraction accumulated value CodeNCO is 0xFFFFFFFF (hexadecimal expression). When the CodeNCO accumulated value is greater than the update period, data overflow will occur.
[0033] In an exemplary embodiment of the present application, the updating of the phase fraction accumulated value CodeNCO and the code phase integer count value CodeCount of the code tracking loop digitally controlled oscillator at the current moment corresponding to the frequency point according to the code phase adjustment amount DiffCode of each frequency point may include:
[0034] When DiffCode≥0, the phase fraction accumulated value CodeNCO is changed to CodeNewNCO_1:
[0035] It means rounding down the DiffCode;
[0036] If CodeNewNCO1≤CodeNCO, it means that the phase fraction accumulation value has overflow, and the code phase integer count value CodeCount is changed to CodeNewCount_1:
[0037]
[0038] If CodeNewNCO1>CodeNCO, it means that there is no overflow in the phase fraction accumulation value, and the code phase integer count value CodeCount is changed to CodeNewCount_2:
[0039] When DiffCode<0, the phase fraction accumulated value CodeNCO is changed to CodeNewNCO_2:
[0040]
[0041] if This indicates that the phase fraction accumulation value has overflow phenomenon, and the code phase integer count value CodeCount is changed to CodeNewCount_3:
[0042]
[0043] if It indicates that there is no overflow in the phase fraction accumulation value, and the code phase integer count value CodeCount is changed to CodeNewCount_4:
[0044]
[0045] An embodiment of the present application also provides a baseband signal processing device, which may include a processor and a computer-readable storage medium, wherein the computer-readable storage medium stores instructions, and when the instructions are executed by the processor, the baseband signal processing method is implemented.
[0046] Compared with the related art, the embodiments of the present application may include: capturing baseband signals; obtaining pseudorange values of multiple frequency points of any satellite by tracking the baseband signals, and calculating pseudorange differences based on the pseudorange values; at least one of the multiple frequency points adopts a binary offset carrier modulation (i.e., BOC digital modulation) method; evaluating the pseudorange quality of each frequency point based on the pseudorange difference; the pseudorange quality may include any one of the following: poor quality, good quality, or the presence of a binary offset carrier modulated BOC signal secondary peak lock at the frequency point. Through this embodiment scheme, accurate detection of secondary peak lock of a binary offset carrier modulated signal (i.e., BOC signal) is achieved, the main peak energy is retained, the sensitivity is improved, and it has universal applicability, will not interfere with the current pseudocode tracking loop, and can be used as an auxiliary means to assist other existing technologies.
[0047] Other features and advantages of the embodiments of the present application will be described in the following description, and partly become apparent from the description, or understood by practicing the present application. Other advantages of the present application can be realized and obtained by the schemes described in the description and the drawings. BRIEF DESCRIPTION OF THE DRAWINGS
[0048] The accompanying drawings are used to provide an understanding of the technical solution of the present application and constitute a part of the specification. Together with the embodiments of the present application, they are used to explain the technical solution of the present application and do not constitute a limitation on the technical solution of the present application.
[0049] Figure 1 This is a flow chart of a baseband signal processing method according to an embodiment of the present application;
[0050] Figure 2 A flow chart of a method for obtaining pseudorange values of multiple frequency points of any satellite by tracking baseband signals and calculating pseudorange differences based on the pseudorange values according to an embodiment of the present application;
[0051] Figure 3 This is a flow chart of a method for evaluating the pseudorange quality of each frequency point according to the pseudorange difference in an embodiment of the present application;
[0052] Figure 4 This is a block diagram of the baseband signal processing device according to an embodiment of the present application. DETAILED DESCRIPTION
[0053] The present application describes multiple embodiments, but the description is exemplary rather than restrictive, and it is obvious to those skilled in the art that there may be more embodiments and implementations within the scope of the embodiments described in the present application. Although many possible feature combinations are shown in the drawings and discussed in the specific embodiments, many other combinations of the disclosed features are also possible. Unless specifically limited, any feature or element of any embodiment may be used in combination with any other feature or element in any other embodiment, or may replace any other feature or element in any other embodiment.
[0054] The present application includes and contemplates combinations of features and elements known to those of ordinary skill in the art. The embodiments, features and elements disclosed in the present application may also be combined with any conventional features or elements to form a unique invention scheme defined by the claims. Any features or elements of any embodiment may also be combined with features or elements from other invention schemes to form another unique invention scheme defined by the claims. Therefore, it should be understood that any feature shown and / or discussed in the present application may be implemented individually or in any appropriate combination. Therefore, except for the limitations made according to the attached claims and their equivalents, the embodiments are not subject to other restrictions. In addition, various modifications and changes may be made within the scope of protection of the attached claims.
[0055] In addition, when describing representative embodiments, the specification may have presented the method and / or process as a specific sequence of steps. However, to the extent that the method or process does not rely on the specific order of the steps described herein, the method or process should not be limited to the steps of the specific order described. As will be understood by those of ordinary skill in the art, other sequences of steps are also possible. Therefore, the specific sequence of the steps set forth in the specification should not be interpreted as a limitation to the claims. In addition, the claims for the method and / or process should not be limited to the steps of performing them in the order written, and those skilled in the art can easily understand that these sequences can be changed and still remain within the spirit and scope of the embodiments of the present application.
[0056] The present application provides a baseband signal processing method, such as Figure 1 As shown, the method may include steps S101-S103:
[0057] S101, capturing baseband signals;
[0058] S102, by tracking the baseband signal, obtaining pseudorange values of multiple frequency points of any satellite, and calculating pseudorange differences according to the pseudorange values; at least one frequency point among the multiple frequency points adopts a binary offset carrier modulation (i.e., BOC digital modulation) method;
[0059] S103. Evaluate the pseudorange quality of each frequency point according to the pseudorange difference; the pseudorange quality may include any one of the following: poor quality, good quality, or a secondary peak locking of a binary offset carrier modulation signal (ie, a BOC signal) exists at the frequency point.
[0060] At present, there are several methods for eliminating side peaks and solving ambiguity at home and abroad: ASPeCT (Autocorrelation Side Peak Cancellation Technique) algorithm, which uses the autocorrelation function of the local BOC signal and the received BOC signal, as well as the autocorrelation function of the local pseudo-random code and the received BOC signal, configures appropriate weighting coefficients, and subtracts the two autocorrelation functions to obtain a correlation function with a smaller side peak; this algorithm is only effective for BOC (n, n) signals, and is not applicable to BOC signals of other modulation modes, and its application range is quite limited. The linearization discriminator algorithm forces the autocorrelation function to be linearized to eliminate false lock points. This algorithm loses peak energy and reduces sensitivity. Single-sideband tracking method: The key of this method is to process the upper and lower sidebands of the BOC signal or the derivative signal of the BOC signal separately through a filter. For example, the BPSK-like algorithm converts the BOC signal or the derivative signal of the BOC signal into two approximate BPSK signals, or for the AltBOC signal, the BOC signal or the derivative signal of the BOC signal is equivalent to two QPSK signals. Both BPSK and QPSK signals can be processed using the existing traditional autocorrelation technology. At this time, the main peak energy is consumed, and there is a correlation energy loss of more than 3dB. Equivalently converting the BOC signal to BPSK or QPSK also loses the advantages of the BOC signal in tracking accuracy and anti-multipath. Bump-Jump algorithm: The working principle is to compare the peak being tracked with its adjacent peak, and correct the local correlator offset according to the comparison result. In addition to the traditional advance, immediate and lag correlators used in this algorithm, super-advance and super-lag correlators are added, and the peak amplitude comparison is completed with the assistance of up and down counters. This type of algorithm is relatively complex in theory and calculation, and is more suitable for BOC signals with fewer secondary peaks.
[0061] Limitations of the above technologies: Some algorithms are only effective for low-order BOC and are not universally applicable, such as ASPeCT and Bump-Jump algorithms; some algorithms act at the correlator stage or process the correlator input signal, resulting in main peak energy loss and reduced sensitivity, such as the linearized discriminator algorithm, unilateral tracking method, and Bump-Jump algorithm.
[0062] In an exemplary embodiment of the present application, in view of the above-mentioned technical limitations, an embodiment of the present application provides a method for detecting the locking of a BOC signal secondary peak; without losing the peak energy of the correlator and without being limited by the number of secondary peaks of the BOC signal, it is determined whether a certain frequency point is in a state of BOC signal secondary peak locking. The embodiment of the present application can be used as an auxiliary means to assist other existing technologies and has universal applicability.
[0063] In an exemplary embodiment of the present application, the capturing of the baseband signal may include:
[0064] Determine an auxiliary capture scheme according to the frequency characteristics of the satellite, use a preset frequency band as a main frequency, and assist in performing auxiliary capture on other frequency points other than the main frequency point among the multiple frequency points;
[0065] The Doppler frequency offset and the code phase offset of the main frequency point, and the Doppler frequency offset and the code phase offset of the other frequency points are obtained.
[0066] In an exemplary embodiment of the present application, the receiving end of the satellite navigation system receiver can determine the auxiliary capture scheme according to the characteristics of each frequency point of a certain satellite, adopt the commonly used frequency band as the main frequency point of each system, and assist other frequency points for auxiliary capture, that is, B1 is used as the main frequency point in the BDS system, L1 is used as the main frequency point in the GPS system, and E1 is used as the main frequency point in the GALILEO system.
[0067] In an exemplary embodiment of the present application, the Doppler frequency deviation of the main frequency point, the code phase offset of the main frequency point, and the Doppler frequency deviation of the other frequency points and the code phase offset of the other frequency points may be acquired.
[0068] In an exemplary embodiment of the present application, the Doppler frequency offset of other frequencies = the Doppler frequency offset of the main frequency, and the code phase offset of other frequencies = the code phase offset of the main frequency / the code rate of the main frequency × the code rate of other frequencies.
[0069] In an exemplary embodiment of the present application, if the main frequency point adopts the BOC data modulation method, the tracking search chip range of the other frequency points can be expanded.
[0070] In an exemplary embodiment of the present application, if the main frequency point adopts the BOC data modulation method, there is a risk of locking the secondary peak of the main frequency point, and other frequency points need to expand the tracking and search code chip range, that is, theoretically, the secondary peak of the main frequency point is locked on n code chips (|n|<1), and other frequency points increase the original tracking and search code chip range by (|n|÷main frequency code rate×other frequency code rate) code chips; if the main frequency point adopts a non-BOC data modulation method, skip this step and go to the next step, that is, obtain the pseudorange values of multiple frequency point signals of a satellite and their pseudorange differences.
[0071] In an exemplary embodiment of the present application, multiple frequency points may refer to multiple main frequency points and their corresponding other frequency points. The following is an example of three frequency points of a satellite, which may include: a first frequency point, a second frequency point and a third frequency point.
[0072] In an exemplary embodiment of the present application, Figure 2 As shown, the method of obtaining pseudorange values of multiple frequency points of any satellite by tracking the baseband signal and calculating pseudorange differences according to the pseudorange values may include steps S201-S204:
[0073] S201. Obtain an instantaneous coherent integration result of an I branch and an instantaneous coherent integration result of a Q branch by tracking the baseband signal.
[0074] In an exemplary embodiment of the present application, after a satellite signal is received at the receiving end, the instantaneous coherent integration result of the I branch and the instantaneous coherent integration result of the Q branch are obtained through baseband signal tracking, so that the carrier loop lock state can be calculated.
[0075] In an exemplary embodiment of the present application, taking the first frequency point as an example, after receiving the signal of the first frequency point of a certain satellite at the receiving end, the instant coherent integration result I of the I branch is obtained by baseband signal capture and tracking. P1 The instantaneous coherent integration result Q of the Q branch P1 .
[0076] S202: Calculate a carrier loop lock state value according to the instantaneous coherent integration result of the I branch, the instantaneous coherent integration result of the Q branch, and a preset carrier loop lock state calculation formula.
[0077] In an exemplary embodiment of the present application, the carrier loop lock state value of the first frequency point is calculated Similarly, the carrier loop lock state value PLD2 of the second frequency point and the carrier loop lock state value PLD3 of the third frequency point can be obtained.
[0078] In an exemplary embodiment of the present application, it is assumed that the lock determination threshold set for the first frequency point is LockTh1. When the carrier loop is in the phase-locked state, the instantaneous coherent integration result of the I branch will reach the maximum, while the instantaneous coherent integration result of the Q branch is the minimum, so LockTh1 is close to 1.
[0079] In an exemplary embodiment of the present application, in order to obtain a more accurate pseudorange value, the carrier loop should be kept in a good locked state, that is, PLD1≥LockTh1, PLD2≥LockTh1, and PLD3≥LockTh1. When the carrier loops of each frequency point are in a good locked state, step 203 is entered to calculate the pseudorange value corresponding to each frequency point respectively. If the carrier loop of any one frequency point is unlocked, that is, PLD1<LockTh1, PLD2<LockTh1, or PLD3<LockTh1, return to step 201 and wait for data at the next moment again.
[0080] S203. When the numerical values of the locked states of the carrier loops at each frequency point are greater than or equal to the preset state threshold, obtain the pseudorange value corresponding to each frequency point of a certain arbitrary satellite.
[0081] In an exemplary embodiment of the present application, to obtain the first pseudorange value of a certain satellite at the first frequency point, the second pseudorange value of the same satellite at the second frequency point, and the third pseudorange value of the same satellite at the third frequency point, the obtaining method can adopt the existing pseudorange value calculation method.
[0082] S204. Perform a preset operation among the pseudorange values corresponding to each frequency point to obtain the pseudorange difference.
[0083] In an exemplary embodiment of the present application, the pseudorange difference may include: the first pseudorange difference, the second pseudorange difference, and the third pseudorange difference;
[0084] The first pseudorange difference = the first pseudorange value - the second pseudorange value;
[0085] The second pseudorange difference = the first pseudorange value - the third pseudorange value;
[0086] The third pseudorange difference = the second pseudorange value - the third pseudorange value.
[0087] In an exemplary embodiment of the present application, as Figure 3 shown, the evaluating the pseudorange quality according to the pseudorange difference may include steps S301 - S303:
[0088] S301. Obtain the pseudorange quality determination threshold for each frequency point.
[0089] In an exemplary embodiment of the present application, the pseudo code rates of the first frequency point, the second frequency point, and the third frequency point can be defined as the first code rate, the second code rate, and the third code rate, respectively, and the chip threshold coefficients of the first frequency point, the second frequency point, and the third frequency point are set to γ1, γ2, and γ3, wherein the setting criteria of γ1, γ2, and γ3 are: not greater than the chip offset position where the BOC signal secondary peak is located, and greater than 0; then the pseudo range quality determination thresholds of the first frequency point, the second frequency point, and the third frequency point can be calculated as follows:
[0090] The first pseudo-range quality determination threshold Th1 of the first frequency point = γ1*light speed / first code rate;
[0091] The second pseudo-range quality determination threshold Th2 of the second frequency point = γ2*speed of light / second code rate;
[0092] The third pseudo-range quality determination threshold Th3 of the third frequency point = γ3*speed of light / third code rate;
[0093] Among them, if the signals of three frequency points (their respective code rates are the first code rate, the second code rate and the third code rate) all adopt the BOC modulation method, then the above-mentioned Th1, Th2 and Th3 need to be calculated; if only 2 frequency point signals adopt the BOC modulation method, for example, if only the signals of the first frequency point and the second frequency point adopt the BOC modulation method, then the above-mentioned Th1 and Th2 need to be calculated; similarly, if only 1 frequency point signal adopts the BOC modulation method, for example, if only the signal of the first frequency point adopts the BOC modulation method, then only the above-mentioned Th1 needs to be calculated.
[0094] S302: Define a normal pseudorange difference threshold according to the pseudorange quality determination threshold and a preset pseudorange accuracy; the normal pseudorange difference threshold is less than or equal to the pseudorange quality determination threshold.
[0095] In an exemplary embodiment of the present application, the normal pseudorange difference threshold Threshold1 is defined to be determined based on the pseudorange accuracy obtained by the system, which is generally within 10 m. The normal pseudorange difference threshold Threshold1 is generally not greater than the pseudorange quality determination threshold (such as the first pseudorange quality determination threshold, the second pseudorange quality determination threshold, and the third pseudorange quality determination threshold).
[0096] S303: Determine the pseudorange quality of each frequency point according to a relationship between the pseudorange difference value, the normal pseudorange difference threshold, and the pseudorange quality determination threshold.
[0097] In an exemplary embodiment of the present application, judging the pseudorange quality of each frequency point according to the magnitude relationship between the pseudorange difference value, the normal pseudorange difference threshold, and the pseudorange quality determination threshold may include:
[0098] When multiple calculated pseudorange differences are all greater than or equal to the normal pseudorange difference threshold, determine the poor pseudorange quality of each frequency point;
[0099] When multiple calculated pseudorange differences are all less than the normal pseudorange difference threshold, determine that the pseudorange quality of each frequency point is excellent;
[0100] When a part of the multiple calculated pseudorange differences is less than the normal pseudorange difference threshold corresponding to any one frequency point, and another part of the pseudorange differences is greater than or equal to the pseudorange quality determination threshold, and the frequency points corresponding to this part of the pseudorange differences adopt the BOC digital modulation method, then it is determined that there is a BOC signal side peak lock on any one of the frequency points, and there may be a whole chip offset in the code phase.
[0101] In an exemplary embodiment of the present application, the first frequency point may correspond to a first pseudorange value, a first pseudorange difference, a first pseudorange quality, and a first pseudorange quality determination threshold Th1; the second frequency point may correspond to a second pseudorange value, a second pseudorange difference, a second pseudorange quality, and a second pseudorange quality determination threshold Th2; the third frequency point may correspond to a third pseudorange value, a third pseudorange difference, a third pseudorange quality, and a third pseudorange quality determination threshold Th3.
[0102] In an exemplary embodiment of the present application, the pseudorange quality is evaluated according to the normal pseudorange difference threshold, and the evaluation situations may include five situations:
[0103] Situation 1: When the absolute value of the first pseudorange difference ≥ Threshold1, and the absolute value of the second pseudorange difference ≥ Threshold1, and the absolute value of the third pseudorange difference ≥ Threshold1, it indicates that the pseudorange quality of the first frequency point, the second frequency point, and the third frequency point of a certain satellite is poor and cannot provide effective information;
[0104] Situation 2: When the absolute value of the first pseudorange difference < Threshold1, and the absolute value of the second pseudorange difference < Threshold1, and the absolute value of the third pseudorange difference < Threshold1, it indicates that the pseudorange quality of the first frequency point, the second frequency point, and the third frequency point of a certain satellite is relatively high, and it can be considered that the system acquisition and tracking are normal and there is no side peak lock situation;
[0105] Situation 3: When the absolute value of the first pseudorange difference ≥ Th1, and the absolute value of the second pseudorange difference ≥ Th1, and the absolute value of the third pseudorange difference < Threshold1, it indicates that the pseudorange quality of the first frequency point of a certain satellite is poor, there is a BOC signal side peak lock on the first frequency point, and there may be a whole chip offset in the code phase; the second pseudorange value and the third pseudorange value can be smoothed as the compensated pseudorange value of the first frequency point, which can be denoted as the first compensated pseudorange value, that is, the first compensated pseudorange value = (the second pseudorange value + the third pseudorange value) ÷ 2;
[0106] Case 4: When the absolute value of the first pseudorange difference ≥ Th2, and the absolute value of the third pseudorange difference ≥ Th2, and the absolute value of the second pseudorange difference < Threshold1, it indicates that the pseudorange quality of a certain satellite's second frequency point is poor, there is a BOC signal side peak lock on the second frequency point, and there may be a whole chip offset in the code phase; the first pseudorange value and the third pseudorange value can be smoothed as the second frequency point compensated pseudorange value, which can be denoted as the second compensated pseudorange value, that is, the second compensated pseudorange value = (the first pseudorange value + the third pseudorange value) ÷ 2;
[0107] Case 5: When the absolute value of the second pseudorange difference ≥ Th3, and the absolute value of the third pseudorange difference ≥ Th3, and the absolute value of the first pseudorange difference < Threshold1, it indicates that the pseudorange quality of a certain satellite's third frequency point is poor, there is a BOC signal side peak lock on the third frequency point, and there may be a whole chip offset in the code phase; the first pseudorange value and the second pseudorange value can be smoothed as the third frequency point compensated pseudorange value, which can be denoted as the third compensated pseudorange value, that is, the third compensated pseudorange value = (the first pseudorange value + the second pseudorange value) ÷ 2;
[0108] Among them, if the signals of the first frequency point, the second frequency point, and the third frequency point all adopt the BOC modulation method, then the above Cases 1 to 5 all need to be determined; if only the first frequency point and the second frequency point are BOC modulation methods, then the above Cases 1, 2, 3, and 4 need to be determined; similarly, if only the first frequency point is the BOC modulation method, then the above Cases 1, 2, and 3 need to be determined.
[0109] In an exemplary embodiment of the present application, the method may further include:
[0110] When determining that the pseudorange quality of this frequency point is poor or excellent, do not change the current code tracking loop state and continue to track the baseband signal;
[0111] When determining that the pseudorange quality of this frequency point has a binary offset carrier modulation signal side peak lock, calculate the code phase adjustment amount DiffCode of this frequency point, and update the code tracking loop according to the code phase adjustment amount DiffCode.
[0112] In an exemplary embodiment of the present application, if the pseudorange quality of the first frequency point, the second frequency point, and the third frequency point of a certain satellite is poor, that is, it meets Case 1, or the pseudorange quality of the first frequency point, the second frequency point, and the third frequency point of a certain satellite is all relatively high, that is, it meets Case 2, then step S101 can be returned to continue tracking the baseband signal and re-analyze and discriminate the next group of baseband signals; when the pseudorange quality of the first frequency point, the second frequency point, or the third frequency point of a certain satellite meets Case 3, Case 4, or Case 5, the code phase adjustment amount can be determined and the code phase offset state can be determined.
[0113] In an exemplary embodiment of the present application, the calculating of the code phase adjustment value DiffCode of the frequency point may include:
[0114] Calculate the mean of the pseudorange differences corresponding to the frequency point;
[0115] The code phase adjustment amount DiffCode of the frequency point is calculated according to the average value of the pseudorange difference corresponding to the frequency point and a preset code phase adjustment amount calculation formula.
[0116] In an exemplary embodiment of the present application, if the step of calculating the code phase adjustment amount DiffCode of the frequency point is entered based on situation three, calculating the average of the first pseudorange difference according to the first pseudorange difference and the second pseudorange difference may include:
[0117] The first pseudorange difference mean = (first pseudorange difference + second pseudorange difference) ÷ 2;
[0118] Calculating a first code phase adjustment value DiffCode1 according to the calculated first pseudorange difference mean value and known common sense light speed and first code rate includes:
[0119] DiffCode1 = first pseudorange difference average / (speed of light / first code rate).
[0120] In an exemplary embodiment of the present application, if the step of calculating the code phase adjustment amount DiffCode of the frequency point is entered based on situation 4, calculating the average of the second pseudorange difference according to the first pseudorange difference and the third pseudorange difference may include:
[0121] The second pseudorange difference mean = (third pseudorange difference - first pseudorange difference) ÷ 2;
[0122] Calculating the second code phase adjustment amount DiffCode2 according to the calculated second pseudorange difference mean value and the known common sense light speed and the second code rate includes:
[0123] DiffCode2 = second pseudorange difference mean ÷ (speed of light ÷ second code rate).
[0124] In an exemplary embodiment of the present application, if the step of calculating the code phase adjustment amount DiffCode of the frequency point is entered based on situation five, calculating the average of the third pseudorange difference according to the second pseudorange difference and the third pseudorange difference may include:
[0125] The third pseudorange difference mean = (-1) × (second pseudorange difference + third pseudorange difference) ÷ 2;
[0126] According to the calculated third pseudo-range difference mean value and the known common sense light speed and the third code rate, the third code phase adjustment amount DiffCode3 is calculated, including:
[0127] DiffCode3 = third pseudorange difference mean ÷ (speed of light ÷ third code rate).
[0128] In an exemplary embodiment of the present application, updating the code tracking loop according to the code phase adjustment amount DiffCode may include:
[0129] According to the code phase adjustment amount DiffCode of each frequency point, the phase fraction accumulated value CodeNCO and the code phase integer count value CodeCount of the code tracking loop digital control oscillator corresponding to the frequency point at the current moment are updated; wherein, the code length of the frequency point is used as the update period of the code phase integer count value CodeCount; the phase fraction accumulated value CodeNCO is an unsigned 32-bit integer variable, and the update period of the phase fraction accumulated value CodeNCO is 0xFFFFFFFF (hexadecimal expression). When the CodeNCO accumulated value is greater than the update period, data overflow will occur.
[0130] In an exemplary embodiment of the present application, the updating of the phase fraction accumulated value CodeNCO and the code phase integer count value CodeCount of the code tracking loop digitally controlled oscillator at the current moment corresponding to the frequency point according to the code phase adjustment amount DiffCode of each frequency point may include:
[0131] When DiffCode≥0, the phase fraction accumulated value CodeNCO is changed to CodeNewNCO_1:
[0132] It means rounding down the DiffCode;
[0133] If CodeNewNCO_1≤CodeNCO, it means that the phase fraction accumulation value has overflow, and the code phase integer count value CodeCount is changed to CodeNewCount_1:
[0134]
[0135] If CodeNewNCO_1>CodeNCO, it means that there is no overflow in the phase fraction accumulation value, and the code phase integer count value CodeCount is changed to CodeNewCount_2:
[0136] When DiffCode<0, the phase fraction accumulated value CodeNCO is changed to CodeNewNCO_2:
[0137]
[0138] if This indicates that the phase fraction accumulation value has overflow phenomenon, and the code phase integer count value CodeCount is changed to CodeNewCount_3:
[0139]
[0140] if It indicates that there is no overflow in the phase fraction accumulation value, and the code phase integer count value CodeCount is changed to CodeNewCount_4:
[0141]
[0142] In an exemplary embodiment of the present application, if the step of updating the code tracking loop is entered based on situation three, the first phase fractional accumulated value CodeNCO1 (CodeNCO1 is a 32-bit unsigned integer data) of the code tracking loop digitally controlled oscillator at the current moment and the first code phase integer count value CodeCount1 of the code tracking loop can be updated according to the first code phase adjustment amount DiffCode1 corresponding to the first frequency point, wherein CodeCount1 uses the code length of the first frequency point (i.e., the first code length) as the update period.
[0143] When DiffCode1≥0, the first phase fractional accumulated value is changed to CodeNewNCO1_1:
[0144]
[0145] If CodeNewNCO1_1≤CodeNCO1, it means that the accumulated fractional value of the first phase overflows, and the integer count value of the first code phase is changed to CodeNewCount1_1:
[0146] If CodeNewNCO1_1>CodeNCO1, it means that there is no overflow in the accumulated fractional value of the first phase, and the integer count value of the first code phase remains unchanged:
[0147] When DiffCode1<0, the first phase accumulated value is changed to CodeNewNCO1_2:
[0148]
[0149] if This indicates that the accumulated fractional value of the first phase has overflowed, and the integer count value of the first code phase is changed to CodeNewCount1_3:
[0150] if This indicates that there is no overflow in the accumulated fractional value of the first phase, and the integer count value of the first code phase is changed to CodeNewCount1_4:
[0151] In an exemplary embodiment of the present application, if the step of entering the update code tracking loop is based on case 4, the update process is consistent with the step of entering the update code tracking loop based on case 3. Update the second phase fractional accumulated value CodeNCO2 (32-bit unsigned data) and the second code phase integer count value CodeCount2 (the update period is the code length of the second frequency point, that is, the second code length); obtain the updated second phase fractional accumulated value CodeNewNCO2 and the second code phase integer count value CodeNewCount2.
[0152] In an exemplary embodiment of the present application, if the step of entering the update code tracking loop is based on case 5, the update process is consistent with the step of entering the update code tracking loop based on case 3. The third phase fractional accumulated value CodeNCO3 (32-bit unsigned data) and the third code phase integer count value CodeCount3 (the update period is the code length of the third frequency point, that is, the third code length) are updated to obtain the updated third phase fractional accumulated value CodeNewNCO3 and the third code phase integer count value CodeNewCount3.
[0153] In an exemplary embodiment of the present application, the code tracking loop is updated at the next moment according to the updated code tracking loop digitally controlled oscillator.
[0154] In the exemplary embodiments of the present application, the embodiments of the present application are described below through detailed examples.
[0155] Embodiment 1
[0156] In the exemplary embodiments of the present application, the Galileo system is taken as an example. The fourth frequency point of the Galileo system is the E1C signal, and the data modulation method of the E1C frequency point is CBOC (6, 1, 1 / 11, '-'). Another frequency point is E5, which is a typical AltBOC (10, 5) signal. The unilateral tracking method of the embodiment scheme of the present application can be adopted, which is divided into E5A and E5B (that is, the fifth frequency point and the sixth frequency point) unilateral receiving signals, and the data modulation method adopts QPSK, so it can be applicable to the embodiment scheme of the present application.
[0157] In an exemplary embodiment of the present application, the embodiment scheme of the present application includes steps one to five:
[0158] 1. Capturing baseband signals
[0159] 11: In this embodiment, E1C is used as the main frequency point; the Doppler frequency offset of the main frequency point and the code phase offset of the main frequency point are obtained. The Doppler frequency offsets of other frequency points are equal to that of the main frequency point, and the code phase offset of other frequency points = the code phase offset of the main frequency point ÷ the code rate of the main frequency point × the code rate of other frequency points.
[0160] 12: Since the E1C main frequency point uses the BOC data modulation method, there is a risk of sub-peak locking for the main frequency point. If its sub-peak is locked at ±0.5 chips (n < 1), then E5A increases by (0.5 ÷ 1.023 Mcps × 10.23 Mcps = 5) chips in the original tracking and searching chip range; similarly, E5B increases by (0.5 ÷ 1.023 Mcps × 10.23 Mcps = 5) chips in the original tracking and searching chip range.
[0161] II. Obtain the pseudorange values of the E1C, E5A, and E5B frequency point signals of a Galileo satellite, and their mutual pseudorange differences.
[0162] 21: After receiving the signal of a satellite at the receiving end, through baseband signal acquisition and tracking, obtain the immediate coherent integration result of the I branch and the immediate coherent integration result of the Q branch, and calculate the carrier loop lock state value.
[0163] Carrier loop lock state value of the fourth frequency point
[0164] Carrier loop lock state value of the fifth frequency point
[0165] Carrier loop lock state value of the sixth frequency point
[0166] Set the lock decision threshold as LockTh2 = 0.95;
[0167] To obtain a more accurate pseudorange value, the carrier loop should be locked in a good state, that is, PLD4 ≥ LockTh2, PLD5 ≥ LockTh2, and PLD6 ≥ LockTh2. If the carrier loops of each frequency point are locked in a good state, then enter step 22;
[0168] If the carrier loop of any one frequency point is unlocked, that is, PLD4 < LockTh2, PLD5 < LockTh2, or PLD6 < LockTh2, wait for the data at the next moment again and return to step 21.
[0169] 22: Obtain the fourth pseudorange value of the E1C of the fourth frequency point of a Galileo satellite; obtain the fifth pseudorange value of the E5A of the fifth frequency point of the same satellite; obtain the sixth pseudorange value of the E5B of the sixth frequency point of the same satellite;
[0170] 23: Obtain the fourth pseudorange difference, fifth pseudorange difference, and sixth pseudorange difference. The calculation formulas are as follows:
[0171] Fourth pseudorange difference = Fourth pseudorange value - Fifth pseudorange value;
[0172] Fifth pseudorange difference = Fourth pseudorange value - Sixth pseudorange value;
[0173] Sixth pseudorange difference = Fifth pseudorange value - Sixth pseudorange value;
[0174] Three: Evaluate the pseudorange quality of each frequency point according to the pseudorange differences in step two.
[0175] 31: The pseudocode rates of each frequency point are respectively defined as follows: The fourth code rate is 1.023 Mcps. Set the chip threshold coefficient of the fourth frequency point: γ1 = 0.4 (slightly less than the chip offset position where the secondary peak is located). Obtain the pseudorange quality determination threshold of the fourth frequency point as follows:
[0176] The fourth pseudorange quality determination threshold Th4 of the fourth frequency point = γ1 * speed of light / fourth code rate = 117 m;
[0177] 32: Define the normal pseudorange difference threshold Threshold2 = 9 m.
[0178] 33: Evaluate the pseudorange quality according to the threshold data in steps 31 and 32. The judgment situations are as follows:
[0179] Situation 1: When the absolute value of the fourth pseudorange difference ≥ Threshold2, and the absolute value of the fifth pseudorange difference ≥ Threshold2, and the absolute value of the sixth pseudorange difference ≥ Threshold2, then the pseudorange quality of a certain satellite at the fourth, fifth, and sixth frequency points is all poor and cannot provide effective information;
[0180] Situation 2: When the absolute value of the fourth pseudorange difference < Threshold2, and the absolute value of the fifth pseudorange difference < Threshold2, and the absolute value of the sixth pseudorange difference < Threshold2, then the pseudorange quality of a certain satellite at the fourth, fifth, and sixth frequency points is relatively high, and it can be considered that the system acquisition and tracking are normal and there is no secondary peak locking situation;
[0181] Situation 3: When the absolute value of the fourth pseudorange difference ≥ Th4, and the absolute value of the fifth pseudorange difference ≥ Th4, and the absolute value of the sixth pseudorange difference < Threshold2, then the pseudorange quality of a certain satellite at the fourth frequency point is poor, there is BOC signal secondary peak locking, and there may be a whole chip offset in the code phase; At the same time, smooth the fifth pseudorange value and the sixth pseudorange value as the fourth frequency point compensated pseudorange value, that is, the fourth compensated pseudorange value = (fifth pseudorange value + sixth pseudorange value) ÷ 2;
[0182] 4: According to the result of step 3, if the pseudorange quality of the fourth, fifth and sixth frequencies of a certain satellite is poor, that is, it meets the situation 1, or the pseudorange quality of the fourth, fifth and sixth frequencies of a certain satellite is high, that is, it meets the situation 2, then skip this step and return to step 2 to re-judge the next set of data; when the result in step 3 is situation 3, go to step 4 to determine the code phase adjustment amount and determine the code phase offset state.
[0183] 41: If it is based on situation 3, enter this step, and calculate the average of the fourth pseudorange difference according to the fourth pseudorange difference and the fifth pseudorange difference, as follows:
[0184] Fourth pseudorange difference mean=(fourth pseudorange difference+fifth pseudorange difference)÷2;
[0185] According to the calculated fourth pseudo-range difference mean value and the known common sense light speed and fourth code rate, the fourth code phase adjustment amount DiffCode4 is calculated as follows:
[0186] DiffCode4 = fourth pseudo-range difference mean / (speed of light / fourth code rate);
[0187] When |DiffCode1|<1, the code phase is locked on the BOC secondary peak; when |DiffCode1|≥1, the code phase is locked on the BOC secondary peak, and there is a whole chip offset in the code phase, and the process goes to step five.
[0188] 5. Update the code tracking loop according to the code phase adjustment amount. The fourth code length is 4092.
[0189] 51: If this step is entered based on situation three, the fourth phase fractional accumulated value CodeNCO4 of the code tracking loop digital controlled oscillator at the current moment is updated, CodeNCO4 is 32-bit unsigned data; the fourth code phase integer count value CodeCount4 of the code tracking loop is updated, and the update period of CodeCount4 is 4092 code chips.
[0190] When DiffCode4≥0, the fourth phase fractional accumulated value is changed to CodeNewNCO4_1:
[0191]
[0192] If CodeNewNCO4_1≤CodeNCO4, it means that the fourth phase fractional accumulated value overflows, and the fourth code phase integer count value is changed to CodeNewCount4_1:
[0193] If CodeNewNCO4_1>CodeNCO4, it means that the fourth phase fractional accumulated value has no overflow and the fourth code phase integer count value has no change:
[0194] When DiffCode4<0, the fourth phase accumulated value is changed to CodeNewNCO4_2:
[0195]
[0196] if This indicates that the fourth code phase fractional accumulated value has overflowed in the reverse direction, and the fourth code phase integer count value is changed to CodeNewCount4_3:
[0197] if This indicates that the fourth code phase decimal accumulated value is normally decreased without reverse overflow, and the fourth code phase integer count value is changed to
[0198] The code tracking loop is updated at the next moment according to the updated code tracking loop digitally controlled oscillator.
[0199] Example 2
[0200] In the exemplary embodiment of the present application, taking the Beidou system as an example, the seventh frequency point, the eighth frequency point, and the ninth frequency point correspond to B1C, B1I, and B3I, respectively, wherein the pilot branch data modulation method of B1C is QMBOC (6, 1, 4 / 33), the data modulation method of B1I is BPSK (2), and the data modulation method of B3I is BPSK (2), that is, the seventh frequency point signal adopts the BOC modulation method, and therefore can be applied to the embodiment of the present application. The scheme includes steps 1-5
[0201] 1: Capture baseband signal
[0202] 111: In this embodiment, B1I is used as the main frequency point; the Doppler frequency deviation and the code phase offset of the main frequency point are obtained, the Doppler frequency deviation of other frequency points is equal to the Doppler frequency deviation of the main frequency point, and the code phase offset of other frequency points = the code phase offset of the main frequency point ÷ the code rate of the main frequency point × the code rate of other frequency points.
[0203] 112: Because the B1I main frequency point adopts the BPSK(2) data modulation method, go to step 2.
[0204] 2: Get the pseudorange values of the three frequency signals B1C, B1I and B3I of a Beidou satellite, and their mutual pseudorange differences.
[0205] 211: After receiving a certain satellite signal at the receiving end, through baseband signal acquisition and tracking, the immediate coherent integration results of the I branch and the immediate coherent integration results of the Q branch are obtained, and the carrier loop lock state value is calculated.
[0206] Carrier loop lock state value of the seventh frequency point
[0207] Carrier loop lock state value of the eighth frequency point
[0208] Carrier loop lock state value of the ninth frequency point
[0209] Set the lock decision threshold as LockTh3 = 0.95;
[0210] In order to obtain a more accurate pseudorange value, the carrier loop should be locked in a good state, that is, PLD7 ≥ LockTh3, PLD8 ≥ LockTh3, and PLD9 ≥ LockTh3. If the carrier loop lock state of each frequency point is good, then enter step 222;
[0211] If the carrier loop of any frequency point is unlocked, that is, PLD7 < LockTh3, PLD8 < LockTh3, or PLD9 < LockTh3, wait for the data at the next moment again and return to step 211.
[0212] 212: Obtain the seventh pseudorange value of a certain satellite in the Beidou system at the seventh frequency point; obtain the eighth pseudorange value of the same satellite at the eighth frequency point; obtain the ninth pseudorange value of the same satellite at the ninth frequency point;
[0213] 213: Obtain the seventh pseudorange difference, the eighth pseudorange difference, and the ninth pseudorange difference. The calculation formulas are as follows:
[0214] Seventh pseudorange difference = seventh pseudorange value - eighth pseudorange value;
[0215] Eighth pseudorange difference = seventh pseudorange value - ninth pseudorange value;
[0216] Ninth pseudorange difference = eighth pseudorange value - ninth pseudorange value;
[0217] 3: Evaluate the pseudorange quality of the seventh frequency point according to the pseudorange differences in step 2.
[0218] 311: Pseudocode rate of the seventh frequency point: Seventh code rate = 1.023 Mcps. Set the chip threshold coefficient of the seventh frequency point as γ1 = 0.3, and obtain the pseudorange quality determination threshold of the seventh frequency point as follows:
[0219] Seventh pseudorange quality determination threshold Th7 of the seventh frequency point = γ1 * speed of light / seventh code rate = 88 m;
[0220] 312: Define the normal pseudorange difference threshold Threshold3 = 8m.
[0221] 313: Evaluate the pseudorange quality based on the threshold data in steps 311 and 312. The judgment cases are as follows:
[0222] Case 1: When the absolute value of the seventh pseudorange difference ≥ Threshold3, and the absolute value of the eighth pseudorange difference ≥ Threshold3, and the absolute value of the ninth pseudorange difference ≥ Threshold3, the pseudorange quality of the seventh, eighth, and ninth frequency points of a certain satellite is all poor and cannot provide effective information;
[0223] Case 2: When the absolute value of the seventh pseudorange difference < Threshold3, and the absolute value of the eighth pseudorange difference < Threshold3, and the absolute value of the ninth pseudorange difference < Threshold3, the pseudorange quality of the seventh, eighth, and ninth frequency points of a certain satellite is relatively high, and it can be considered that the system acquisition and tracking are normal without the situation of sub-peak locking;
[0224] Case 3: When the absolute value of the seventh pseudorange difference ≥ Th7, and the absolute value of the eighth pseudorange difference ≥ Th7, and the absolute value of the third pseudorange difference < Threshold3, the pseudorange quality of the seventh frequency point of a certain satellite is poor, there is sub-peak locking of the BOC signal, and there may be a whole chip offset in the code phase; at the same time, smooth the eighth and ninth pseudorange values as the compensation pseudorange value for the seventh frequency point, that is, the seventh compensation pseudorange value = (the eighth pseudorange value + the ninth pseudorange value) ÷ 2;
[0225] 4: According to the result of step 3, if the pseudorange quality of the seventh, eighth, and ninth frequency points of a certain satellite is poor, that is, when it meets Case 1, or the pseudorange quality of the seventh, eighth, and ninth frequency points of a certain satellite is relatively high, that is, when it meets Case 2, then skip this step and return to step 2 to re-judge the next set of data; when the result in step 3 is Case 3, enter step 4 to determine the code phase adjustment amount and judge the code phase offset state.
[0226] 411: If it enters this step based on Case 3, calculate the mean value of the seventh pseudorange difference according to the seventh pseudorange difference and the eighth pseudorange difference, as follows:
[0227] The mean value of the seventh pseudorange difference = (the seventh pseudorange difference + the eighth pseudorange difference) ÷ 2;
[0228] According to the calculated mean value of the seventh pseudorange difference, the known speed of light, and the seventh code rate, calculate the seventh code phase adjustment amount DiffCode7, as follows:
[0229] DiffCode7 = the mean value of the seventh pseudorange difference ÷ (the speed of light ÷ the seventh code rate);
[0230] When |DiffCode7|<1, the code phase is locked on the BOC secondary peak; when |DiffCode7|≥1, the code phase is locked on the BOC secondary peak, and there is a whole chip offset in the code phase; go to step 411.
[0231] 5: Update the code tracking loop based on the code phase adjustment amount.
[0232] 511: If this step is entered based on situation three, the seventh phase fractional accumulated value CodeNCO7 of the code tracking loop digital controlled oscillator at the current moment is updated, where CodeNCO7 is 32-bit unsigned data; and the seventh code phase integer count value CodeCount7 of the code tracking loop is updated, where CodeCount7 uses the code length of the seventh frequency point as the update period (i.e., the seventh code length = 10230).
[0233] When DiffCode7≥0, the seventh phase fractional accumulated value is changed to CodeNewNCO7_1:
[0234]
[0235] If CodeNewNCO7_1≤CodeNCO7, it means that the seventh phase fractional accumulated value overflows, and the seventh code phase integer count value is changed to CodeNewCount7_1:
[0236] If CodeNewNCO71>CodeNCO7, it means that the seventh phase fractional accumulated value has no overflow and the seventh code phase integer count value has no change:
[0237] When DiffCode7<0, the seventh phase accumulated value is changed to CodeNewNCO7-2:
[0238]
[0239] if This indicates that the seventh code phase fractional accumulated value overflows, and the seventh code phase integer count value is changed to CodeNewCount7_3:
[0240] if This indicates that the seventh code phase decimal accumulated value is normal and has no overflow. The seventh code phase integer count value is changed to
[0241] The code tracking loop is updated at the next moment according to the updated code tracking loop digitally controlled oscillator.
[0242] In the exemplary embodiments of the present application, the embodiments of the present application at least include the following advantages:
[0243] 1. For GNSS systems that use the BOC data modulation method, namely the Galileo system, Beidou system and GPS system, a method for detecting the locking and correction of the BOC signal secondary peak is provided;
[0244] 2. This method can be used as long as at least one of the multiple (such as three) frequency signals of the baseband signal is a BOC digital modulation method, and has universal applicability.
[0245] 3. The embodiment of the present application utilizes the pseudo-range values of multiple frequency points of the same satellite, avoids the processing of the correlation signal or the input signal at the correlator stage or before the correlator, retains the main peak energy, does not lose the correlator peak energy, and improves the sensitivity; there is no order restriction on the BOC signal, and it will not be limited by the number of BOC signal secondary peaks;
[0246] 4. The embodiment of the present application uses the interaction of pseudorange results of each frequency point to compensate for the pseudorange value affected by the secondary peak lock, and obtains the code phase offset result of the target frequency point by inverse calculation, so as to quickly call back the code tracking loop;
[0247] 5. The embodiment of the present application utilizes the pseudo-range results of each frequency point, which does not affect the carrier tracking loop and code tracking loop results at the same time. It can be used as an auxiliary means to assist other existing technologies (such as ASPeCT, Bump-Jump, linearization discriminator algorithm, unilateral tracking method, Bump-Jump algorithm, etc.) to eliminate side peaks and resolve ambiguity.
[0248] The present application also provides a baseband signal processing device 1, such as Figure 4 As shown, it may include a processor 11 and a computer-readable storage medium 12, wherein the computer-readable storage medium 12 stores instructions, and when the instructions are executed by the processor 11, the baseband signal processing method is implemented.
[0249] In the exemplary embodiments of the present application, any of the aforementioned baseband signal processing method embodiments are applicable to the device embodiments and will not be described one by one here.
[0250] It will be appreciated by those skilled in the art that all or some of the steps, systems, and functional modules / units in the methods disclosed above may be implemented as software, firmware, hardware, and appropriate combinations thereof. In hardware implementations, the division between the functional modules / units mentioned in the above description does not necessarily correspond to the division of physical components; for example, a physical component may have multiple functions, or a function or step may be performed by several physical components in cooperation. Some or all components may be implemented as software executed by a processor, such as a digital signal processor or a microprocessor, or implemented as hardware, or implemented as an integrated circuit, such as an application-specific integrated circuit. Such software may be distributed on a computer-readable medium, which may include a computer storage medium (or non-transitory medium) and a communication medium (or temporary medium). As known to those skilled in the art, the term computer storage medium includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storing information (such as computer-readable instructions, data structures, program modules, or other data). Computer storage media include, but are not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tapes, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to store the desired information and can be accessed by a computer. In addition, it is well known to those of ordinary skill in the art that communication media typically contain computer-readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave or other transport mechanism, and may include any information delivery media.
Claims
1. A baseband signal processing method, characterized in that: The method comprises: Capture baseband signal; By tracking the baseband signal, pseudorange values of multiple frequency points of any satellite are obtained, and pseudorange difference values are calculated according to the pseudorange values; at least one frequency point among the multiple frequency points adopts a binary offset carrier (BOC) modulation method; Evaluate the pseudorange quality of each frequency point according to the pseudorange difference; the pseudorange quality includes any one of the following: poor quality, good quality, or the presence of a binary offset carrier (BOC) modulation signal secondary peak lock at the frequency point; The step of evaluating the pseudorange quality of each frequency point according to the pseudorange difference includes: when the pseudorange difference between a frequency point and other frequency points using the BOC modulation method is greater than or equal to a pseudorange quality determination threshold of the frequency point and the pseudorange difference between the other frequency points is less than a normal pseudorange difference threshold, determining that a BOC modulation signal secondary peak is locked at the frequency point; and the normal pseudorange difference threshold is less than or equal to the pseudorange quality determination threshold.
2. The baseband signal processing method according to claim 1, characterized in that: The capturing of the baseband signal comprises: Determine an auxiliary capture scheme according to the frequency characteristics of the satellite, use a preset frequency band as a main frequency, and assist in performing auxiliary capture on other frequency points other than the main frequency point among the multiple frequency points; The Doppler frequency offset and the code phase offset of the main frequency point, and the Doppler frequency offset and the code phase offset of the other frequency points are obtained.
3. The baseband signal processing method according to claim 1, characterized in that: The method of obtaining pseudorange values of multiple frequency points of any satellite by tracking the baseband signal and calculating pseudorange differences according to the pseudorange values includes: By tracking the baseband signal, an instantaneous coherent integration result of the I branch and an instantaneous coherent integration result of the Q branch are obtained; Calculating a carrier loop lock state value according to the instantaneous coherent integration result of the I branch, the instantaneous coherent integration result of the Q branch, and a preset carrier loop lock state calculation formula; When the carrier loop lock state value of each frequency point is greater than or equal to a preset state threshold, obtaining the pseudorange value corresponding to each frequency point of the arbitrary satellite; A preset operation is performed between the pseudorange values corresponding to each frequency point to obtain the pseudorange difference.
4. The baseband signal processing method according to claim 1, characterized in that: The normal pseudorange difference threshold is determined by the following method: Obtain the pseudorange quality determination threshold for each frequency point; A normal pseudorange difference threshold is defined according to the pseudorange quality determination threshold and a preset pseudorange accuracy.
5. The baseband signal processing method according to claim 1, characterized in that: Also includes: When the calculated multiple pseudorange difference values are all greater than or equal to the normal pseudorange difference threshold, determining the pseudorange quality difference of each frequency point; When the calculated multiple pseudorange difference values are all smaller than the normal pseudorange difference threshold, it is determined that the pseudorange quality of each frequency point is excellent.
6. The baseband signal processing method according to any one of claims 1 to 5, characterized in that: The method further comprises: When the pseudorange quality of the frequency point is determined to be poor quality or good quality, the current code tracking loop state is not changed, and the baseband signal is continued to be tracked; When the pseudorange quality of the frequency point is determined to be locked by the secondary peak of the binary offset carrier modulation signal, the code phase adjustment amount of the frequency point is calculated. , and adjust the code phase according to the amount , update the code tracking loop.
7. The baseband signal processing method according to claim 6, characterized in that: The code phase adjustment amount of the frequency point is calculated include: Calculate the mean of the pseudorange differences corresponding to the frequency point; The code phase adjustment value of the frequency point is calculated according to the mean value of the pseudo-range difference corresponding to the frequency point and the preset code phase adjustment value calculation formula .
8. The baseband signal processing method according to claim 6, characterized in that: The code phase adjustment amount , update the code tracking loop, including: According to the code phase adjustment amount of each frequency point Update the phase fraction accumulated value of the digital controlled oscillator of the code tracking loop corresponding to the current frequency point and the code phase integer count value ; Wherein, the code length of the frequency point is used as the code phase integer count value The update cycle of the phase fraction accumulation value It is an unsigned 32-bit integer variable, the phase fraction accumulation value The update period is 0xFFFFFFFF.
9. The baseband signal processing method according to claim 8, characterized in that: The code phase adjustment amount according to each frequency point Update the phase fraction accumulated value of the digital controlled oscillator of the code tracking loop corresponding to the current frequency point and the code phase integer count value ,include: When DiffCode≥0, the phase fraction accumulation value Change to : ; It means Round down; If CodeNewNCO_1≤CodeNCO, the code phase integer count value Change to : ; If CodeNewNCO_1>CodeNCO, the code phase integer count value Change to : ; When DiffCode<0, the phase fraction accumulation value Change to : ; if , the code phase integer count value Change to : ; if , the code phase integer count value Change to : 。 10. A baseband signal processing device, comprising a processor and a computer-readable storage medium, wherein the computer-readable storage medium stores instructions, characterized in that: When the instruction is executed by the processor, the baseband signal processing method according to any one of claims 1 to 9 is implemented.
Citation Information
Patent Citations
Co-frequency multi-system navigation signal receiving and processing method
CN102176037A
Auxiliary navigation positioning method and system
CN106908817A