A signal from the Global Positioning System (GPS) system is a spread spectrum signal sent by a GPS satellite through the frequency of L1 (1575.42 MHZ) or L2 (1227.60 MHz). A civilian GPS receiver usually employs the L1 frequency. Several signals sent by L1 carrier wave include coarse/acquisition (C/A) code, precise (P) code, and navigation data that includes detailed information about the satellite orbit. C/A code is a kind of pseudo random noise (PRN) code mainly used for civilian navigation. Every satellite has a unique C/A code that is repeatedly used. The C/A code is a binary sequence composed of 0 and 1. Every 0 or 1 is treated as a “chip”. C/A code has a length of 1023 chips, and is transmitted at a rate of 1.023M chips per second. That is, the period of C/A code lasts 1 ms. As can be understood by a person skilled in the art, “chip” is a unit for data length or time length. Navigation data is also a binary sequence composed of 0 and 1, and is transmitted at a rate of 50 bits per second.
In order for positioning, a GPS receiver needs to capture signals sent from at least 4 satellites, and to demodulate the navigation data from 4 GPS signals. The GPS signals from different satellites are transmitted through different channels. Usually, a GPS receiver processes the GPS signals from several channels. A C/A code of a different GPS signal has a different starting time and a different Doppler frequency shift. Therefore, in order to search one specific satellite signal, the GPS receiver often conducts a two-dimensional search for every C/A code with different starting times at every possible frequency.
The GPS receiver includes an antenna, a radio frequency (RF) front-end, and a baseband processing unit. The GPS signal sent from a GPS satellite is received by the antenna, and then transmitted to the RF front-end. The RF front-end converts the RF signal received from the antenna to a signal with desired output frequency, and digitalizes the converted signal with a predetermined sampling frequency. The converted and digitalized signal can be treated as an intermediate-frequency signal. Then, the intermediate-frequency signal is transmitted to a capturing module in the baseband processing unit. The capturing module may search for the starting point of the C/A code, the frequency of the carrier wave, and especially the Doppler frequency shift of the GPS signal, using corresponding algorithms with the intermediate-frequency signal, local C/A code and local carrier wave. If the capturing module confirms the GPS signal has been captured, for example, the frequency error of the carrier wave is within 1 Hz and the phase error of the C/A code is within ½ chip, a tracking module in the baseband processing unit enters into a tracking status. While in tracking status, the local C/A code and local carrier wave can be utilized to track the variations of the C/A code and carrier wave of the GPS signal to acquire accurate C/A code phase shift and Doppler frequency shift. The tracking module includes a carrier-wave tracking loop and a C/A code tracking loop, configured for tracing the carrier-wave and C/A code of the GPS signal, respectively, to demodulate the navigation data carried by the GPS signal.
Because of various kinds of disturbances, a RF signal received from the antenna includes both useful signal and noise. The useful signal is the GPS signal sent from the GPS satellite to the receiver. The GPS signal can help the receiver to perform functions such as positioning.
During the process of tracking the GPS signal by the tracking loop, the tracking loop may become lost and unable to continue tracking the GPS signal, due to various factors (e.g., noises). Therefore, there is a need to determine the status of the tracking loop, e.g., to determine whether the tracking loop is locked or lost, so as to make timely adjustments to the tracking loop. If the tracking loop is locked, the tracked GPS signal can be utilized to acquire information such as the position and speed of the GPS receiver. If the tracking loop is lost, the GPS signal needs to be re-captured and tracked. Therefore, the GPS receiver needs to evaluate the GPS signal strength; determine whether the tracking loop is lost; and adjust the parameters of the tracking loop based on evaluated values of the GPS signal strength.
The signal strength can be measured by signal to noise ratio (SNR). SNR equals the power of the useful signal divided by the power of the noise, usually with a unit of decibel (DB). Generally speaking, when SNR has a higher value, the GPS signal is stronger. In that situation, the receiver is generally located in an outdoor and open area, so that the tracking loop is locked, and Doppler frequency shift and its change rate are relatively large. Otherwise, when the SNR has a lower value, the GPS signal is usually weaker. In that situation, the receiver is generally located in an indoor or signal-shielded area, so that the tracking loop is lost and Doppler frequency shift and its change rate are relatively small. However, in some circumstances, SNR cannot represent the real signal strength or the status of the tracking loop. For example, when the power of useful signal and power of noise signal are both small, SNR can have a high value, which makes the GPS signal appear to be strong. Therefore, a lost status of the tracking loop cannot be determined timely and effectively in such circumstances. Thus, there exists a need for apparatus and methods for determining a status of a tracking loop, without the above discussed drawbacks.
In some embodiments according to the present teaching, a receiver associated with a positioning system is provided. The receiver comprises a tracking loop and a signal strength calculating module. The tracking loop is configured for tracking a positioning signal and generating an in-phase signal and a quadrature signal based on the positioning signal. The signal strength calculating module is configured for calculating a first evaluation value and a second evaluation value related to the positioning signal based on the in-phase signal and the quadrature signal, respectively, and determining a status of the tracking loop based on at least one of the first evaluation value and the second evaluation value.
In some embodiments according to the present teaching, a method, implemented on a machine having at least one processor, storage, and a communication platform connected to a network for determining a status of a tracking loop associated with a positioning system is disclosed. A positioning signal associated with the positioning system is first received. An in-phase signal and a quadrature signal are generated based on the positioning signal. A first evaluation value and a second evaluation value are then generated based on the in-phase signal and the quadrature signal, respectively. The status of the tracking loop is determined based on at least one of the first evaluation value and the second evaluation value.
Features and benefits of embodiments of the claimed subject matter will become apparent as the following detailed description proceeds, and upon reference to the drawings, wherein like numerals depict like parts, and in which:
Reference will now be made in detail to the embodiments of the present teaching. While the disclosure will be described in conjunction with these embodiments, it will be understood that they are not intended to limit the disclosure to these embodiments. On the contrary, the disclosure is intended to cover alternatives, modifications and equivalents, which may be included within the spirit and scope of the disclosure as defined by the appended claims.
Furthermore, in the following detailed description of the present teaching, numerous specific details are set forth in order to provide a thorough understanding of the present teaching. However, it will be recognized by one of ordinary skill in the art that the present teaching may be practiced without these specific details. In other instances, well known methods, procedures, components, and circuits have not been described in detail as not to unnecessarily obscure aspects of the present teaching.
Embodiments in accordance with the present teaching pertain to apparatus (e.g., GPS receivers) and methods for determining a status of a tracking loop associated with a positioning system, e.g., a GPS system. In one embodiment, a GPS receiver receives a GPS signal and converts the GPS signal to an intermediate-frequency signal. The GPS receiver includes a tracking loop and a signal strength calculating module. The tracking loop may conduct a real-time tracking of carrier wave and PRN code of the GPS signal to obtain local carrier wave and local PRN code and to demodulate navigation data carried by the GPS signal. Then, the tracking loop may generate an in-phase signal and a quadrature signal based on the intermediate-frequency signal, local PRN code, and local carrier wave. The signal strength calculating module calculates a first evaluation value and a second evaluation value related to the GPS signal based on the in-phase signal and the quadrature signal, and determines a status of the tracking loop based on the first evaluation value and the second evaluation value. In accordance with various embodiments of the present teaching, the signal strength calculating module determines the status of the tracking loop not only based on SNR, but also directly based on the first evaluation value. Therefore, the GPS receiver in accordance with embodiments of the present teaching can improve the accuracy for determining the status of the tracking loop, especially in a situation when SNR cannot represent the real signal strength and the status of the tracking loop, e.g., when both the useful signal power and noise power are small while SNR is big.
The GPS receiver, in an embodiment, includes a RF front-end and a baseband processing unit. The RF front-end converts the GPS signal to a signal with desired output frequency, and digitalizes the converted signal at a predetermined sampling frequency. The converted and digitalized signal is regarded as an intermediate-frequency signal. The intermediate-frequency signal is then transmitted to a capturing module in the baseband processing unit. The capturing module captures the starting point of the C/A code, the frequency of the carrier wave, and especially Doppler frequency shift of the GPS signal. If the capturing module determines that the GPS signal has been captured, a tracking module in the baseband processing unit enters into a tracking mode to form a tracking loop. In one embodiment, the structures and functions of the RF front-end and capturing module can be the same as those in a conventional GPS receiver. For the sake of briefness, it is unnecessary to go into details here.
The carrier wave tracking loop includes Doppler frequency shift removing module 102, integration module 104, a carrier wave phase detector 112, a carrier wave filter 116, and a local carrier wave generator 118. Local carrier wave generator 118 generates a local carrier wave based on the Doppler frequency shift output from the capturing module. Local carrier wave generator 118 includes a π/2 dephasing module 119 and a carrier wave NCO 117. Doppler frequency shift removing module 102 utilizes the local carrier wave output from local carrier wave generator 118 to convert the intermediate-frequency signal to a baseband signal, and to get an in-phase component I and a quadrature component Q of the baseband signal. Local carrier wave generator 118 outputs two local quadrature carrier wave signals including a sine signal and a cosine signal. One of these two carrier wave signals is generated by carrier wave NCO 117 and referred to as a first local reference signal. The other carrier wave signal is generated by dephasing the first local reference signal and referred to as a second local reference signal. The dephasing operation is performed by π/2 dephasing module 119. In-phase component I and quadrature component Q are integrated with the prompt C/A code in integration module 104, respectively. Integration module 104's output is processed by carrier wave phase detector 114 and carrier wave filter 116 to generate a control signal to regulate the frequency of carrier wave NCO 117, and to generate a local carrier wave synchronized with the carrier wave in the GPS signal.
It can be understood by one skilled in the art that integration module 104 performs the integration function to the corresponding signals in the carrier wave tracking loop and the C/A code tracking loop. Integration module 104 in
GPS receiver 100 further includes a signal strength calculating module 120 configured for evaluating the GSP signal strength, in the tracking stage. As mentioned above, the GPS signal is converted to an intermediate-frequency signal by the RF front-end, and then input into tracking loop 101. The GPS signal is then converted to a baseband signal by Doppler frequency shift removing module 102 to obtain in-phase component I and quadrature component Q. Integration module 104 performs related calculation for in-phase component I and quadrature component Q with the prompt C/A code in a predetermined period of time, respectively. In one embodiment, integration module 104 performs integrations for in-phase component I and for quadrature component Q, so as to generate an in-phase signal I(P) and a quadrature signal Q(P), respectively, as input to signal strength calculating module 120. In one embodiment, signal strength calculating module 120 calculates a first evaluation value SL and a second evaluation value NL related to the GPS signal based on in-phase signal I(P) and quadrature signal Q(P), respectively. Accordingly, SNR is calculated so as to determine the GPS signal strength and a status of the tracking loop. In one embodiment, signal strength calculating module 120 further determines the GPS signal strength and a status of the tracking loop directly based on first evaluation value SL. For example, when first evaluation value SL is kept smaller than a first predetermined level for a certain period, which means both the useful signal and the noise in the GPS signal are very weak, signal strength calculating module 120 directly determines that the tracking loop is lost, regardless of the value of SNR. The operation of signal strength calculating module 120 will be further described in relation to
In accordance with various embodiments of the present teaching, signal strength calculating module 120 determines the status of the tracking loop based on SNR, and also based directly on first evaluation value SL. Therefore, when first evaluation value SL is kept smaller than a first predetermined level for a certain period of time, signal strength calculating module 120 determines that the tracking loop is lost. In this way, GPS receiver 100 can accurately determine the status of the tracking loop, especially in a situation when SNR cannot represent the signal strength and the loop status, e.g., when both the useful signal power and noise signal power are small while SNR is big. Thus, the accuracy of GPS receiver 100 for determining the status of the tracking loop is improved.
In this equation, M is the integration time for the in-phase signal and the quadrature signal. First evaluation value SL and second evaluation value NL are in a non-linear relationship. Each of the first evaluation value and the second evaluation value contains influences from both useful signals and noise.
In one embodiment, signal strength calculating module 120 includes a calculating module 202, a first filter 204, a second filter 206, a loop parameter setting module 208, and a loop status determining module 210. Calculating module 202 calculates first evaluation value SL and second evaluation value NL related to the GPS signal based on in-phase signal 1(P) and quadrature signal Q(P). First filter 204 and second filter 206 filter first evaluation value SL and second evaluation value NL, respectively, and accordingly generate filtered evaluation values including a first evaluation value A and a second evaluation value C. Loop status determining module 210 determines whether the tracking loop is locked or lost according to first evaluation value A and second evaluation value C. In addition, loop parameter setting module 208 sets the parameters for the tracking loop, e.g., loop bandwidth and integration time, according to first evaluation value A and second evaluation value C.
In one embodiment, calculating module 202 includes a first integration unit 212, a square accumulator 214, a square unit 216, a second integration unit 218, and an accumulator 220. According to the equation (1), first integration unit 212 integrates in-phase signal I(P) and quadrature signal Q(P) over a predetermined time period. Then, square accumulator 214 squares the integration results of in-phase signal I(P) and quadrature signal Q(P) output from first integration unit 212, and accumulates the squared results to generate first evaluation value SL related to the GPS signal.
Square unit 210 squares in-phase signal I(P) and quadrature signal Q(P). Then, second integration unit 218 performs integrations to in-phase signal I(P) square and quadrature signal Q(P) square in a predetermined time length M. Accumulator 220 then adds the integration results output from second integral unit 218 to generate second evaluation value NL related to the GPS signal.
Integration time M in the above equation (1) can be flexibly set according to the signal strength. When the signal strength is strong, integration time M can be set to a smaller value; when the signal strength is weak, integration time M can be set to a larger value. However, since the navigation data in the GPS signal may flip bit symbol every 20 ms, the integration time cannot be too long. Otherwise, there is SNR loss caused by bit symbol flipping. The integration time is usually set to 20 ms. A complete frame of the GPS navigation data in the GPS signal contains 1500 bits of data, and is composed of 5 sub-frames. Most bits of every sub-frame have a good predictability and a good repeatability with small variations in frequency. Therefore, as illustrated in
When there is a cold boot on GPS receiver 100, bit synchronizing module 130 in GPS receiver 100 is configured for detecting the navigation bit boundaries before signal strength calculating module 120 is started, to determine a starting point for the intermediate-frequency signal integration in signal strength calculating module 120. For other starting modes such as a hot boot, GPS receiver 100 can record the bit boundaries before the hot boot, and directly use signal strength calculating module 120 to calculate the GPS signal strength without starting bit synchronizing module 130.
As illustrated in
The parameters of the filter can be flexibly set by software to fit different application systems. For example, for a GPS system, since the period for a navigation bit is long, integration time M is set to 20 ms, and the parameter α can be relatively large, e.g., 0.1, so that the response speed of the filter is improved as much as possible while achieving the smoother filtered results. For a WAAS system, since the period for a navigation bit is small, M is set to 2 ms, and the parameter α can be relatively small, e.g., 0.001, so as to make the filtered results as smooth as possible while guaranteeing the response speed of the filter.
In one embodiment, loop status determining module 210 includes a factor module 226 and a state machine 228. When first evaluation value A is kept to be less than a first threshold for a certain period of time, state machine 228 determines that the tracking loop is lost. Factor module 226 multiplies second evaluation C by a factor to generate a third evaluation value B. In one embodiment, the factor can be set equal to a second threshold TH2. When a ratio between first evaluation A and second evaluation C is greater than second threshold TH2, that is, first evaluation value A is higher than third evaluation value B, state machine 228 determines that the tracking loop is locked.
The operation of state machine 228 will be further described in relation to
Loop status determining module 210 determines the GPS signal strength and the status of the tracking loop based on first evaluation value A and second evaluation value C. State machine 228 compares first evaluation value A with first threshold TH1, and further compares first evaluation value A with third evaluation value B, and determines the status of the tracking loop based on the comparison results. In accordance with various embodiments of the present teaching, state machine 228 compares first evaluation value A with first threshold TH1, which is equivalent to comparing first evaluation SL and the first predetermined level. This can be very helpful in a situation when both useful signal and noise are very weak such that SNR cannot represent real signal strength.
In one embodiment, loop parameter setting module 208 includes an evaluating module 222 and a switching module 224. Evaluating module 222 divides first evaluation value A by second evaluation value C to generate a ratio between first evaluation A and second evaluation value C. The ratio between first evaluation A and second evaluation value C has a non-linear relationship with SNR. A bigger ratio corresponds to a larger SNR. Thus, the ratio between first evaluation A and second evaluation value C can indirectly represent the strength of a GPS signal in the current tracking channel. Switching module 224 sets real-time parameter of the tracking loop according to the current GPS signal strength. In one embodiment, GPS receiver 100 may further includes a database module with a pre-set table. In such a table, different tracking loop parameters are correspondingly set for different signal strength scope.
Generally, when the GPS receiver is located in an open area, the signal strength is strong. In order to respond to a sufficiently high dynamic stress when Doppler frequency shift and its change rate are big, the dynamic scope of the tracking loop should be reduced. Thus, a wider loop bandwidth and a shorter integration time should be set. When the GPS receiver is located in an indoor or half-sheltered area, the signal strength is weak, and Doppler frequency shift and its change rate are small. Thus, a smaller loop bandwidth and a longer integration time should be set to expand the dynamic scope of the tracking loop. Therefore, switching module 224 selects a set of corresponding parameters from the pre-set table according to the ratio between the first evaluation value A and the third evaluation value C indicating the GPS signal strength, and switches the set of parameters for the tracking loop.
In one embodiment, state machine 228 uses first evaluation value A and third evaluation value B to determine the status of the tracking loop. In the meanwhile, state machine 228 uses first evaluation value A to directly determine the status of the tracking loop. In one embodiment, state machine 228 includes three limits: a first limit L1, a second limit L2 and a third limit L3, wherein second limit L2 is larger than third limit L3.
State machine 228 further includes a first counter LockCnt and a second counter LostCnt. First counter LockCnt is configured for counting the number when the GPS signal strength is higher than second threshold TH2. Second counter LostCnt is configured for counting the number when the GPS signal strength is less than second threshold TH2 and when first evaluation value A is less than first threshold TH1. In one embodiment, first counter LockCnt and second counter LostCnt are initially set to zero. When the value in the counters reaches one of the three limits (first limit L1, second limit L2, or third limit L3), the tracking loop enters into a corresponding status. State machine 228 outputs two output signals indicating current status of the tracking loop: lock output signal LockOut and lost output signal LostOut, with an initial value of FALSE. Specifically, steps are included as below, in an embodiment of the present teaching.
In step 302, first evaluation value A and third evaluation value B are compared to determine whether or not first evaluation value A is greater or equal to third evaluation value B. The process will proceed to step 304 if first evaluation value A is greater than or equal to third evaluation value B. The process will proceed to step 310 if first evaluation value A is less than third evaluation value B.
In step 304, the value in first counter LockCnt and first limit L1 are compared to determine whether the value in first counter LockCnt is equal to first limit L1. The process will proceed to step 306 if the value in first counter LockCnt is equal to first limit L1. The process will proceed to step 308 if the value in first counter LockCnt is less than first limit L1.
In step 306, a locked loop is indicated if lock output signal LockOut is TRUE. The tracking channel enters into a locked mode; and the process ends.
In step 308, the value of first counter LockCnt is increased by 1; and the process ends.
In step 310, the value of second counter LostCnt is compared with second limit L2 to determine whether the value of second counter LostCnt is equal to second limit L2. The process will proceed to step 312 if the value of second counter LostCnt is equal to second limit L2. The process will proceed to step 314 if the value of second counter LostCnt is less than second limit L2.
In step 312, a completely lost loop is indicated by setting lost output signal LostOut as TRUE. Resetting the tracking channel is needed to recapture and track the GPS signal. The process ends.
In step 314, the value of second counter LostCnt is increased by 1. The process will proceed to step 316.
In step 316, whether or not the value of second counter LostCnt is greater than or equal to third limit L3 is determined. The process will proceed to step 318 if the value of second counter LostCnt is greater than or equal to third limit L3.
In step 318, it is indicated that the tracking channel enters into a status maintaining mode by outputting lock output signal LockOut as FALSE. The channel cannot continue to be used for positioning while resetting the channel is not needed. The process ends.
In one embodiment, step 302 and step 320 can be performed simultaneously.
In step 320, first evaluation value A and first threshold TH1 are compared to determine whether first evaluation value A is less than first threshold TH1. The process will proceed to step 310 if first evaluation value A is less than first threshold TH1. It is unnecessary to go into details for the operation after step 310, because they have been discussed before.
In another embodiment, the process will proceed to step 302 if first evaluation value A is not less than first threshold TH1 at 320.
In accordance with various embodiments of the present teaching, state machine 228 compares first evaluation value A with third evaluation value B to evaluate SNR of the GPS signal. Accordingly state machine 228 determines the GPS signal strength and the status of the tracking loop. State machine 228 further compares first evaluation value A with first threshold TH1 to directly detect first evaluation value SL related to GPS signal strength. When first evaluation A is less than first threshold TH1, that is, first evaluation value SL is less than the first predetermined level, it is indicated that both useful signal and noise signal are very weak. State machine 228 proceeds to step 310 to avoid a misjudgment caused in a situation when both first evaluation value SL and second evaluation value NL are small while SNR is large. The accuracy of determining the status of the tracking loop by the receiver is thus improved.
As discussed above, three modes for the tracking loop are defined by state machine 228 based on the GPS signal strength: a locked mode, a lost-recapturing mode, and a status maintaining mode. When the tracking loop is in the locked mode, the tracking channel can be involved in the operation of navigating output. When the tracking loop is in the lost-recapturing mode, it is indicated that the tracking channel is lost, and resetting for recapturing is needed. When the tracking loop is in the status maintaining mode, the tracking channel cannot be involved in the operation of navigating output, but resetting is not needed. This status maintaining mode has benefits for a quick-restoring of the system. For example, when a car equipped with a GPS receiver passes through a tunnel, the GPS signal becomes weak and the tracking loop is unable to track the GPS signal temporarily. The tracking channel can operate in the status maintaining mode while signal strength calculating module 120 continuously detects the GPS signal strength. Once the signal strength is restored, e.g., when the car exits the tunnel, this tracking channel can again be utilized to track the GPS signal. Thus, the time for recapturing and tracking is saved, which is beneficial for quickly restoring the system.
State machine 228 can be realized by the specific hardware or by software. When it is realized by software, the hardware complexity is reduced while a great flexibility is provided. For example, parameter L1, L2 and L3 in state machine 228 can be flexibly configured according to specific application, to reduce as much as possible the time needed for status detecting while maintaining a solid detection probability of the status detecting. The update time of state machine 228 can be updated once every integration time M (e.g., 20 ms), or updated by sampling once every N*M (N is an integer). By using such sampling, the system operation speed can be effectively reduced. The update time herein refers to a time, e.g., integration time M or M multiplied by N, needed by state machine 228, before state machine 228 determines the status of the tracking loop, even when signal strength calculating module 120 continuously calculates the GPS signal strength.
While the foregoing description and drawings represent embodiments of the present teaching, it will be understood that various additions, modifications and substitutions may be made therein without departing from the spirit and scope of the principles of the present teaching as defined in the accompanying claims. One skilled in the art will appreciate that the disclosure may be used with many modifications of form, structure, arrangement, proportions, materials, elements, and components and otherwise, used in the practice of the disclosure, which are particularly adapted to specific environments and operative requirements without departing from the principles of the present teaching. The presently disclosed embodiments are therefore to be considered in all respects as illustrative and not restrictive, the scope of the disclosure being indicated by the appended claims and their legal equivalents, and not limited to the foregoing description.
Number | Date | Country | Kind |
---|---|---|---|
201310198812.7 | May 2013 | CN | national |
This Application claims priority to Patent Application Number 201310198812.7, filed on May 24, 2013 with State Intellectual Property Office of the P.R. China (SIPO), which is hereby incorporated by reference.