06914461
06914461
net/publication/283555155
CITATIONS READS
3 366
3 authors, including:
All content following this page was uploaded by Javier Garcia on 19 February 2016.
Abstract—An algorithm for GNSS GPS/GLONASS receivers broadcasting the System Time with nanosecond accuracy,
is presented that allows the receiver to seamlessly combine encoded within several radio-frequency signals transmitted
the inputs from multiple antennas during signal tracking in through the L1, L2, L3 and L5 bands. Along with this timing
order to keep full sky visibility at all times. This algorithm has
applications for both aeronautical and space applications in all information, each satellite also transmits a navigation message
kinds of vehicles with unconstrained three-dimensional motion that contains information about its orbit, its on-board clock,
capabilities: high maneuverability jet aircraft, rockets, satellites, the system time, and the status of the rest of the satellites of
unmanned aerial vehicles (UAVs), etc. its own constellation (GPS or GLONASS). By measuring the
The algorithm presented here keeps track of the received transmission times tt and the Doppler Frequency deviations
signal-to-noise ratios (SNR) and carrier phase on each of the
antennas. For each set of correlation values the receiver selects Δf of a set of GNSS signals that arrive at the receiver at
the input antenna with the best SNR in order to do navigation some reception time tr , a GNSS receiver can determine the
message decoding and ranging. This fast-switching antenna three-dimensional position and velocity of the vehicle, and the
selection process allows the receiver to stay synchronized with value of the System Time at receiver time tr .
the incoming satellite signal for as long as at least one of the GNSS systems use a type of signal encoding called Direct
antennas of the set is within line-of-sight of the transmitting
satellite. Distributing enough antennas throughout the fuselage Sequence Spread-Spectrum (DS-SS), where periodic sequence
of a vehicle, this algorithm will ensure that the receiver does not of pulses with a rate much higher than the data bit rate (the
lose synchronization with the GNSS signals even during three- spreading code) is multiplied by the Binary Phase-Shift Key-
dimensional maneuvers like spins and attitude changes. This ing (BPSK) modulated navigation message in order to spread
algorithm was implemented on a four-antenna GNSS receiver the signal power over a much wider spectrum bandwidth. In
prototype hardware, and tested using a GNSS signal simula-
tor. During these tests the multi-antenna tracking algorithm order to be able to demodulate the navigation message and
performed successfully. The results of some of these tests are recover the ranging information (tt and Δf ) the receiver must
presented in this paper. estimate both the frequency and phase of the carrier signal and
the phase of the spreading code. In real-time receivers this is
I. I NTRODUCTION done using a pair of closed-loop tracking loops: a carrier Phase
Global Navigation Satellite Systems (GNSS) allow a user Locked Loop (PLL), and a code Delay Locked Loop (DLL).
anywhere on earth to determine the position, velocity and time For more details about the inner workings of GNSS systems
of the vehicle where the receiver is mounted, based on the and their receivers the interested reader can turn to references
signals transmitted by a constellation of satellites. The oldest [1], [2].
of them all and probably the most widely known is GPS There is a whole class of vehicles for special applica-
(Global Positioning System), which is under the control of The tions that are capable of completely unconstrained or nearly
United States of America. Almost as old as GPS is GLONASS unconstrained three-dimensional motion. This is the case of
(Russian acronym for Global Navigation Satellite System), most high maneuverability jet aircraft, rockets, satellites, etc.
another satellite navigation system operated by Russia. As of Conventional single-antenna receivers are not well suited for
2014 at least two other GNSS systems are being deployed, these applications because they might suffer signal outages
GALILEO and Beidou-2/COMPASS, but neither of them is whenever the vehicle changes attitude into a position where the
fully functional yet. Since GPS and GLONASS are the only fuselage obstructs the line-of-sight vector from a transmitting
completely operational GNSS systems, in this paper whenever satellite to the receiving antenna. This in turn would cause
the term GNSS is used it refers to the GPS/GLONASS duet. the loss of synchronization of the carrier and code tracking
The workings of both GPS and GLONASS are similar. Each loops, and the temporary unavailability of part of the ranging
system has its own constellation of satellites, usually called the information needed for navigation purposes. If too many
Space Segment of the system. Each satellite is continuously satellite signals are lost this way, the receiver may be left
13
2014 Fifth Argentine Symposium and Conference on Embedded Systems (SASE/CASE)
ISBN: 9789874552303 EBook: 9789874552310 Printed IEEE CATALOG: CFP1446VPRT IEEE XPLORE: CFP1446VART
14
2014 Fifth Argentine Symposium and Conference on Embedded Systems (SASE/CASE)
ISBN: 9789874552303 EBook: 9789874552310 Printed IEEE CATALOG: CFP1446VPRT IEEE XPLORE: CFP1446VART
Fig. 2. Simplified system level diagram of the relationship between the subsystems related to signal tracking.
(AGC) regulates the amplification gain in order to ensure an of the four input antennas. For each 10ms interval, the antenna
optimum signal level at the A/D converter input. with the highest signal power is selected as the active antenna,
while the other three antennas become auxiliary antennas.
B. Digital Correlation Section
Once the active antenna has been identified, the subset of
The signal samples of each of the four RF chains are correlation values that belong to that particular antenna are
then sent to a low level stage where digital pre-processing, used to iterate the code tracking loop. This code loop is
correlation, and signal decimation is done. This stage is implemented using an Early/Late DLL loop. Notice that since
divided in twelve identical tracking channels. This allows the it was assumed that the distance between any two antennas
receiver to track up to twelve different different satellite (GPS is much smaller than the distance covered by the radio signal
or GLONASS) signals. Each channel is composed of four during a single spreading code chip duration, this DLL loop
accumulation units (one for each input antenna), a numerically will not be affected by changes in the choice of the active
controlled carrier generator, and a numerically controlled antenna.
spreading code generator.
This is not the case for the carrier tracking PLL loop. The
Every 10ms all the channels synchronously generate the
civilian signals transmitted in the L1 band by both GPS and
in-phase and quadrature correlation values between the input
GLONASS have wavelengths of approximately 19cm, which
samples of each of the four antennas against three different
is much shorter than the typical distance between any pair
replicas of the spreading code (called early, punctual and
of antennas. Because of this, the carrier phase with which the
late), before and after the position of the navigation message
signal arrives to different antennas may differ by many cycles.
data bit edges; that is, each of the twelve channels generates
If the vehicle is rotating, then the relative speed between each
48 correlation values every 10ms. At the end of each 10ms
antenna and the transmitting satellite will also be different, and
correlation interval, the twelve carrier and code generators are
this will in turn affect the perceived carrier frequency. Under
reinitialized using software provided values of initial phase
these circumstances, if a single carrier tracking PLL was used
and frequency, and a next correlation interval is started.
whose input was switched between the available antennas,
C. Application Level Tracking Algorithms each change would cause a loop error transient, and this would
At the end of each correlation interval, the GNSS software adversely affect the decoding of the navigation message and
application collects the latest batch of correlation values and the generation of ranging data. One strategy to deal with this
processes them. Since the receiver must work in real time, problem was presented in [13], but the method presented there
each batch must be processed before the next set of correlation places restrictions on the minimum amount of time that takes
values is ready 10ms later. to switch from one antenna to the next, which can become a
limiting factor for fast-spinning vehicles.
IV. D IVERSITY A NTENNA T RACKING A LGORITHM In this work we propose a new algorithm were four separate
For each channel, the processing starts by measuring and PLL tracking loops are used in each channel. Each of those
comparing the amount of signal power received through each is associated to one of the input antennas. All of them track
15
2014 Fifth Argentine Symposium and Conference on Embedded Systems (SASE/CASE)
ISBN: 9789874552303 EBook: 9789874552310 Printed IEEE CATALOG: CFP1446VPRT IEEE XPLORE: CFP1446VART
the same GNSS signal, but each of them tracks the variations demodulated bits and since since the carrier tracking loops are
of the carrier phase and frequency as perceived through its insensitive to π radians carrier phase changes the correction
own associated antenna. This way there is always a precise is completely transient-free.
estimation of both the frequency and carrier phase for any
antenna with strong enough signal power, enabling the receiver
to perform transient-less active antenna replacements even V. T RACKING L OOPS D ESIGN
under very dynamic scenarios.
Since some of the auxiliary input antennas might not even A. Carrier Tracking Loop Design
reach the minimum signal-to-noise ratio needed for successful
Carrier tracking loops for conventional static or quasi-static
signal carrier tracking, the carrier phase and frequency values
applications are usually designed in the analog domain as opti-
estimated by the carrier tracking loops associated to those
mal second order, Type II tracking loops, and then converted to
antennas will diverge from their true value. If the carrier
discrete time systems using analog-to-digital approximations
frequency estimation wanders too far away from the actual
[2]. Optimality here is defined the design that minimizes the
carrier frequency value it will become very difficult for the
energy of the tracking loop error response to a phase step.
tracking loop to get locked with the signal carrier whenever
While strictly speaking the optimality of these designs is lost
the SNR becomes high enough again. In order to avoid this
during the analog-to-digital approximation, if the sampling rate
and to keep the lock-in transient short, the receiver bounds
is much higher than the noise bandwidth of the original analog
the maximum frequency deviation by continuously comparing
design then the discrete model can still be considered optimal.
frequency estimation of the PLL associated to the active
In the case of a GNSS receivers, the sampling rate is equal
antenna to those of the three auxiliary antennas. If the differ-
to the correlation rate. Second order, Type II tracking loops
ence between them grow beyond a predefined threshold, the
are used because they ensure zero steady state error for the
receiver reinitializes the auxiliary antenna PLL by completely
two most common types of carrier loop perturbations: carrier
overwriting its internal state with the state of the active antenna
phase steps and carrier frequency steps.
PLL. The reinitialization threshold is determined using the
maximum expected Doppler difference between any pair of Since this paper focuses on a receiver design for high-
antennas, which in turn depends on the maximum expected speed, high acceleration vehicles, the conventional tracking
spin-rate and the geometry of the distribution of antennas. loop design methodology is not appropriate. The dynamic
Notice that there is an independent module in charge of requirements of this kind of application often demand very
detecting complete signal desynchronization, which happens wide noise equivalent bandwidth carrier loops, in order to
when the measured SNR ratio of the active antenna falls below avoid carrier desynchronization during sudden speed or ac-
the minimum SNR value needed for successful signal tracking. celeration changes. This would in turn demand using very
When full desynchronization occurs, the receiver must free the high correlation rates (sampling rates) and therefore increased
hardware and software resources assigned to the tracking of processor loads in order to perform the processing. Highly
the affected signal. accelerated motion also requires carrier tracking loops of Type
The navigation message is transmitted using BPSK modula- III or higher, in order to keep zero steady state error during
tion. In order to be able to track the carrier phase without being accelerated motion. For these reasons an alternative design
affected by the data modulation, the carrier tracking loops need methodology needs to be used where the carrier tracking loop
to be designed to be insensitive to π radians carrier phase is completely designed in the digital domain. This methodol-
changes. Because of this data modulation insensibility there ogy is presented in [14] [15]. The resulting carrier tracking
is a 50% chance that the demodulated data stream may have loop is a fourth order, Type III optimum tracking loop. Using
its polarity reversed. For single-antenna receivers this is not this methodology the tracking loop noise bandwidth can be
an issue because there is enough information in the navigation made arbitrarily wide independently of the sampling rate.
message to determine the correct polarity of the data stream.
However, when multiple independent carrier tracking loops B. Code Tracking Loop
are involved, as is the case whenever the choice of active
antenna changes over time, the receiver must ensure that The design of the code tracking loop is similar to that
the polarity of the demodulated data stream is not affected of more conventional receivers. A first order, Type I carrier-
during hand-overs. The best way to do this is to maintain assisted code tracking loop design was chosen. Carrier-
a uniform demodulation polarity in all input antennas at all frequency assistance allow the code tracking loop to adapt
times. In order to do this, the algorithm must determine the to sudden velocity and acceleration changes very quickly, but
polarity of the received navigation message on each of the keeping the complexity and the noise bandwidth of the code
auxiliary antennas, and compare it with that of the active tracking loop very low [2]. Since the noise bandwidth of the
antenna. Whenever a polarity inversion is detected in one of code tracking loop is much smaller than the sampling rate, in
the auxiliary antennas, the corresponding carrier tracking loop this case a conventional tracking loop design methodology was
state is altered by increasing the PLL’s phase estimate by π deemed more appropriate in order to minimize the complexity
radians; this correction effectively inverts the polarity of the of the implementation.
16
2014 Fifth Argentine Symposium and Conference on Embedded Systems (SASE/CASE)
ISBN: 9789874552303 EBook: 9789874552310 Printed IEEE CATALOG: CFP1446VPRT IEEE XPLORE: CFP1446VART
17
2014 Fifth Argentine Symposium and Conference on Embedded Systems (SASE/CASE)
ISBN: 9789874552303 EBook: 9789874552310 Printed IEEE CATALOG: CFP1446VPRT IEEE XPLORE: CFP1446VART
Fig. 4. Code tracking loop error, active antenna carrier loop error, active Fig. 6. Demodulated Navigation message through A1, A2, A3 and A4.
antenna demodulated navigation message, and identity of the active antenna
during a 6 second interval.
[2] E. D. Kaplan, Understanding GPS: Principles and Applications. Artech
House, 1996.
[3] W. e. a. Enderle, “A simple and low cost two-antennas concept for the
tracking of a sounding rocket trajectory using GPS,” in Proceedings of
ION GPS, 2000.
[4] M. Markgraf, O. Montenbruck, F. Hassenpflug, P. Turner, and B. Bull,
“A low cost GPS system for real-time tracking of sounding rockets,”
in ESA SP, vol. 471. European Space Agency Publications, 2001, pp.
495–502.
[5] M. Markgraf, F. Hassenpflug, J. Ettl, and P. Turner, “IGAS (Innovative
GPS Antenna System) a novel GPS antenna concept for spin-stabilized
sounding rockets,” in 19th Symposium on European Rocket and Balloon
Programmes and Related Research, 2009.
[6] O. Montenbruck, M. Markgraf, P. Turner, W. Engler, and G. Schmitt,
“GPS tracking of sounding rockets - a european perspective,” in
ESA Workshop on Satellite Navigation User Equipment Technologies
NAVITEC, 2001.
[7] M. M., M. O., and H. F., “A flexible GPS antenna concept for sounding
rockets,” in DLR- GSOC, vol. TN 01-04. Deutsches Zentrum fr Luftund
Raumfahrt, 2001.
[8] A. Grillenberger and M. M., “Flight test results of a novel integrated GPS
receiver for sounding rockets,” in 20th ESA Symposium on European
Fig. 5. Carrier tracking loop error of each of the four PLLs. Rocket & Balloon, 2011.
[9] T. Drescher, W. Kreuzer, and J. Nielson, “Rocket trajectory correction
using strap-on GPS guided thrusters,” in IEEE Position Location and
The algorithm keeps track of the received SNR and carrier Navigation Symposium, 1998.
[10] A. Svendsen, I. J. Gupta, and C.-C. Chen, “Satellite coverage for
phase on each of the antennas. For each set of correlation GPS antennas on small spinning projectiles,” in IEEE International
values, the algorithm selects the input antenna with the best Symposium on Antennas and Propagation (APSURSI), 2011, pp. 468–
SNR in order to do navigation message decoding and ranging, 471.
[11] R. La Valle, J. Garcia, P. Roncagliolo, and C. Muravchik, “A practical
allowing proper receiver operation even in highly challenging RF front-end for high performance GNSS receivers,” in Localization
situations where sudden unpredictable attitude changes are and GNSS (ICL-GNSS), 2011 International Conference on, June 2011,
possible. pp. 104–109.
[12] J. Diaz, J. Garcia, and P. Roncagliolo, “An FPGA implementation
A real-time implementation of the algorithm on a four- of a data-bit asynchronous GPS/GLONASS correlator,” in Micro-
antenna GPS/GLONASS receiver hardware prototype was suc- Nanoelectronics, Technology and Applications (EAMTA), 2012 Argen-
cessfully tested using a GNSS signal generator. The simulated tine School of, Aug 2012, pp. 27–33.
[13] P. A. Roncagliolo, J. Cogo, and J. G. Garcia, “The two-loop tracking
scenario included both highly accelerated motion and rotations strategy for real-time multi-antenna GNSS receivers,” in SPACOMM
that required the receiver to be able to combine the inputs from 2013, The Fifth International Conference on Advances in Satellite and
all the input antennas in order to stay synchronized with the Space Communications, 2013, pp. 72–77.
[14] P. A. Roncagliolo and J. G. Garcia, “High dynamics and false lock
GNSS signal. resistant GNSS carrier tracking loops,” in Proceedings of the 20th
International Technical Meeting of the Satellite Division of the Institute
R EFERENCES of Navigation ION GNSS, 2007.
[15] P. A. Roncagliolo, J. G. Garcı́a, and C. H. Muravchik, “Optimized carrier
[1] J. Spilker and B. W. Parkinson, Global Positioning System: Theory tracking loop design for real-time high-dynamics GNSS receivers,”
and Applications. American Institute of Aeronautics and Astronautics International Journal of Navigation and Observation, vol. 2012, p. 18,
(AIAA), 1996, vol. I. 2012.
18