SciELO - Scientific Electronic Library Online

vol.35 número2Cardiovascular engineering: modelization of ventricular-arterial interaction in systemic and pulmonary circulationSampled-data minimum variance filtering índice de autoresíndice de materiabúsqueda de artículos
Home Pagelista alfabética de revistas  

Servicios Personalizados




  • No hay articulos citadosCitado por SciELO

Links relacionados

  • No hay articulos similaresSimilares en SciELO


Latin American applied research

versión impresa ISSN 0327-0793

Lat. Am. appl. res. v.35 n.2 Bahía Blanca abr./jun. 2005


Use of GPS carrier phase double differences

J. G. García, P. I. Mercader and C. H. Muravchik

Laboratorio de Electrónica Industrial, Control e Instrumentación (LEICI),
Depto. Electrotecnia, Fac. de Ingeniería, UNLP CC no. 91, 1900 La Plata, Argentina
Tel-Fax: +54 - 221 - 425-9306
jgarcia, pmercader,

Abstract ¾ GPS carrier phase single and double difference characteristics are studied. Residual errors obtained from experimental results using independent commercial receivers for two antennas are analyzed. The potential of double differences for vehicle attitude estimation using a multiple antenna configuration with independent receivers is demonstrated. Receiver data synchronization is also given special attention.

Keywords ¾ GPS. Attitude Estimation. Double Difference. Carrier Phase.

This work was supported by Comisión Nacional de Actividades Espaciales (CONAE), Argentina.
P. I. M. and J. G. G. are supported by CONAE and are teaching assistants at UNLP. C. H. M. is a professor of UNLP and a member of CIC-PBA.


Although the Global Positioning System (GPS) was originally developed for navigation purposes, it has also shown to be an important source of information for vehicle attitude determination. Using the sub-centimetric carrier phase precision of GPS, the relative position of multiple antennas placed on a vehicle or platform can be determined with enough precision to estimate the attitude angles of such vehicle with an error of 0.1 degree (Parkinson and Spilker, 1996). With carrier phase double differences, it is possible to achieve such results using a standard commercial receiver for each antenna and some additional signal processing.


A. Carrier Phase Observations

The carrier phase observation (variables observed directly) model of the signal sent by a satellite j, received by an antenna α at time t is given by


Figure 1: Carrier Phase Model

where is the carrier phase variation measurement between antenna α and satellite j (in meters) at time t (starting from the receiver's satellite acquisition instant); is the carrier phase at the moment of transmission from satellite j; λ is the wavelength for the L1 GPS frequency (0,1904 meters); is the integer carrier phase cycle ambiguity between antenna α and satellite j; ε(f) is the carrier phase measurement error due to receiver noise and multipath (up to 5 cm); is the geometric range (distance) from antenna α to satellite j at time t; dtj is the satellite j clock error; dTα is the receiver α error; is the ionospheric signal delay for satellite j; is the tropospheric signal delay for satellite j and finally c is the propagation speed of electromagnetic waves in space (Kaplan, 1996). Figure 1 helps to visualize the model presented in (1).

B. Differential Observations

Single difference observations are constructed to cancel common effects shared by signals travelling from a satellite through different paths. A carrier phase single difference observation for two antennas α and β with respect to satellite j is formed subtracting two carrier phase observations like (1). The single difference is


where Δ represents the difference between receivers. In (2) the satellite clock error term is cancelled after taking single differences between receivers with respect to the same satellite; the same happens to the initial phase. The tropospheric and ionospheric delay residuals are negligible when compared to multipath error and receiver noise, because they are very correlated due to the short distance between antennas. This latter distance is referred to as the baseline and for the present work is short when compared to the distance between antennas and satellites. There is still a remaining term due to the difference in receiver clock errors cΔdTβα that perturbs the measurements. Figure 2 depicts how the carrier phase single differences (2) originate.

Figure 2: Single Difference Observation

To cancel the previously mentioned remaining term, carrier phase double difference measurements are used. For two antennas α and β, and two satellites i and j, a carrier phase double difference observation is formed by subtracting two single difference observations like that in (2), one for satellite j and one for satellite i. Mathematically, a double difference is


where Ñ represents the difference between satellites and Δ indicates the difference between receivers. The term of receiver clock error in (2), is cancelled after taking double differences. Tropospheric and ionospheric effects were already negligible in (2). On the other hand, errors due to receiver noise and multipath ε(ÑΔf) are amplified up to a factor of two with respect to single difference, in the worst case (Harvey, 1998).

C. Carrier Phase Interferometric Model

The distance between each satellite and the antennas is at least 22.000km. This fact validates the assumption that the received signal is a plane wave. Consequently, the line of sight vector from antenna α to satellite j, is assumed to be parallel to the line of sight vector from antenna β to the same satellite j, . This leads to the wonderful result that the difference in distance from each antenna and satellite j can be approximated by the scalar product between the line of sight unit vector ej and the base line vector rβα.


This situation is depicted in Fig. 3. For baselines shorter than 100 m the results are very satisfactory; for instance, in (Schleppe, 1996) it is shown that the approximation introduces an error of 0.02 mm.

Figure 3: Single Difference Interferometric Model

The superindex e in means that the baseline βα is referred to the reference coordinate system centered in the earth (ECEF), (Kaplan, 1996). Attitude estimation needs rβα in the local coordinate system attached to the vehicle. For that purpose it is required to make a coordinate system transformation from one system to the other. Such transformation is expressed by


where is the baseline βα in the body coordinate system fixed to the vehicle. This is known from direct measurements made beforehand, assuming that no flexion or deformations occur to the baseline. It is computed simply by


The rotation matrix that transforms from the ECEF coordinate system to the coordinate system fixed to the the vehicle b is denoted Reb. This matrix can be thought of as two independent rotations, one from the ECEF system to the local system on the position of the vehicle (Earth surface, airplane trajectory or satellite orbit position) Rel, and one from the local system to the system fixed or attached to the vehicle Rlb

Reb = Rel Rlb (7)

The Rel matrix is a function of the geodetic longitude and latitude, while the Rlb matrix is a function of the roll, pitch and yaw angles which determine the attitude of the vehicle (Wertz, 1986). From Eqs. (4), (5), (6) and (7), Eq. (2) can be rewritten into


For attitude estimation in three dimensions it is necessary to have at least two linearly independent baselines, for which three antennas are needed. There are several methods to estimate the rotation matrix Rlb, (Roncagliolo et at, 2001) reviews several of them. These methods assume that the integer carrier phase ambiguity ΔNαβ is known in advance. By inspection of Fig. 2 or Fig. 3 it can be stated that there exists a limited number of possible values for ΔNαβ. For instance, ΔNαβ can never exceed the number of wavelengths that fit in one baseline.

The interferometric model for double difference observations is built from the difference between the single difference interferometric model for two different satellites i and j obtaining,


Combining (9) and (4) for each double difference, it turns out that


The term ε(ÑΔf) represents receiver noise and mul-tipath error. Multipath is the dominant perturbation in double difference carrier phase measurements and it is up to twice as much larger than the single difference measurements. For double differences, the integer carrier cycle ambiguity term ÑΔN has lost the direct interpretation present in the single difference case. Anyway it can be anticipated that the possible values of the ambiguity term will also be limited. The range of possible integers will be twice the range for the single difference case, simply because a double difference ambiguity comes from the subtraction of two single difference ambiguities.


A. Receivers and Antennas

The experimental system consists of a standard GPS receiver for each antenna and a system for collecting and processing data running on a Pentium PC. Each receiver is connected to a serial port on the PC, where the data processing, synchronization, single and double difference calculations take place in real time.

Figure 4 shows how both receivers were assembled, each connected to a different antenna. Figure 5 shows the antennas placed at a fixed location on the rooftop of the Departmento de Electrotecnia of the School of Engineering, UNLP, forming a baseline to analyze phase data and compute single and double differences. The PC saves all the necessary information to estimate vehicle attitude, but only phase measurements are analyzed in this paper.

Figure 4: GPS Receivers

Figure 5: GPS Antennas

The measurements correspond to May 12th 2003, from 17:00 to 17:30 hs. The satellite constellation visible from La Plata, Bs. As. was SV4, SV5, SV6, SV9, SV14, SV24 and SV30 (SV stands for Space Vehicle). Double difference measurements for SV30 and SV5 are analyzed in particular. Some practical aspects of importance to obtain useful measurements are also discussed.

B. Carrier Phase Measurements

Figure 6 shows carrier phase measurements for satellite 30, measured by receiver 1 and receiver 2. The linear behavior of the measurements is due to the receiver clock error term in (1), cdT. For baseband conversion, some GPS receivers use an offset frequency; for the receivers used in this paper it is nominally 96kHz. This offset frequency is the cause for the linear behavior and since both receivers are from the same manufacturer, the slope of the two lines is similar (and corresponds to this 96kHz offset).

Figure 6: SV 30 Carrier Phase Measurements

Although parallel, it is clearly visible that a great difference exists between the carrier phase of both receivers. This is justified since it is impossible for both receivers to acquire a satellite at the same instant, no matter how well synchronized are their local clocks. Because of this difference between the time of acquisition, one of the receivers begins to accumulate phase before the other receiver does. Evidently, receiver 2 acquired satellite 30 before receiver 1 did, since its phase measurement for SV30 is larger than the phase of receiver 1 at the same time.

If a zoom was done on Fig. 6 it would easily be appreciated that the time of measurements for one receiver do not correspond to the same instants in the other receiver. After analyzing the data closer in time, it was observed that receiver 1 sent data with a delay with respect to receiver 2, which means that receiver 1 had "newer" data. To synchronize both receivers the carrier phase Doppler shift information is employed, since it is usually computed in the regular process of estimating the position. With a linear extrapolation scheme, the extrapolated phase results in


where the subindex e stands for extrapolated, t1, t2 denote the sampling instants of receiver 1 and receiver 2, respectively. This simple solution turns out to be very satisfactory, mainly because the carrier phase Doppler shift does not vary significantly from one second to the next (under a slow vehicle dynamics assumption).

To analyze the carrier phase signal errors, a second order polynomial is fit to the measured data. Due to the relative movement between the satellites and the antennas, the distance between them varies dynamically. The second order polynomial models the initial phase at the receiver at the beginning instant (independent term), phase variations due to satellite velocity relative to the receiver (linear term) and phase variations due to satellite acceleration relative to the receiver (quadratic term). The residuals after subtracting the fitted curve to the measured data by receiver 1 for SV30 are shown in Fig. 7. This figure represents the phase measurement errors in (1) with the limitations of the quadratic model that was used to remove normal satellite motion.

Figure 7: SV 30 Carrier Phase Residuals

The result shown in Fig. 7 is consistent with the error terms in (1). The measured data contains all perturbations that degrade the phase signal (satellite and receiver clock errors, atmospheric delays, multi-path error, etc) this is why it is perfectly reasonable to obtain a standard deviation for the residuals of 571 m. Phase information is not useful in this form.

C. Single Differences

From the phase measurements stored in the PC, single difference observations are computed. Receiver 1 was used as the reference receiver. This means that the phase measurements for receiver 1 were subtracted from the phase measurements for receiver 2. This operation was done with the phase measurements with and without extrapolation to visualize any visible difference between them. Single difference measurements for SV30 are shown in Fig. 8.

It can be clearly seen that there exists an offset between the extrapolated and non-extrapolated single differences. This sort of phase offset will not be eliminated after double differencing. Indeed, the offset depends on the carrier phase Doppler shift of each satellite,


Since the Doppler shift varies among satellites, from (12) it is seen that the offset does not cancel out by differencing.

Figure 8: Single Difference (SV 30)

Single differences still have a predominant linear behavior due to the receiver clock error term cΔdTβα, see (2). Using again a second order model, a curve was fit to the extrapolated single difference measurements. Figure 9 shows the residuals after subtracting the fitted curve from the single difference for SV30. This leaves mainly the error terms of the single difference.

Figure 9: Single Difference Residuals (SV30)

Comparing Fig. 9 and Fig. 7 it is perfectly clear that the scale of Fig. 9 is quite smaller; this is consistent with the cancellation of some signal perturbations common to both receivers (for example, satellite clock error). The standard deviation was 259.5 m. This error is too large if single differences were used for attitude estimation. It must be kept in mind that all perturbations due to the receivers are still present in the single differences (RF path length difference, receiver clock error, etc).

D. Double Differences

Choosing SV5 as a reference satellite double differences were formed, subtracting the single difference for SV5 from the single difference measurements for another satellite. Figure 10 shows the double difference for SV30. The mean value of the double difference was subtracted, simply to visualize the double difference in a convenient scale.

Figure 10: Double Difference (SV30-SV5)

The first remarkable result is that the linear behavior in the single differences is no longer visible in double differences, at least not in the same dominant way; notice the difference in scales of the plots. There still is a linear component in the double difference of Fig. 10 but it has a very small slope which can be due to satellite motion. Also note that receiver noise peaks are now visible which means that the dominant perturbations have effectively been cancelled.

To see the effect of a bad synchronization between receiver data, Fig. 11 shows the double differences (again for SV30 relative to SV5), with carrier phase samples extrapolated to a common time and without extrapolation. As anticipated in the previous subsection, the effects produced by bad synchronization in the single differences do not cancel when double differences are computed. The extrapolated double differences are given by


It is clear that for such cancellation to occur the carrier Doppler shift for satellite j and for satellite i must be the same.

To compare single and double difference phase errors, a quadratic fit was done to the double differences. Figure 12 shows the residuals of the double difference for SV30 and the fitted curve. In this figure, the errors which are not common to each receiver nor each satellite are plotted, all common effects are cancelled.

The magnitude of the residuals is clearly smaller than the residuals of Fig. 7 and Fig. 9. If systematic errors (common errors) were effectively cancelled when taking double differences, the plot for Fig. 12 should have a Gaussian distribution, reflecting that noise is now the dominant perturbation factor. To analyze this a chi-square goodness-of-fit test is performed. Figure 13 shows a histogram with the double difference residuals, the normal fit used for the test and the difference between them. The results of the test do not reject the Gaussian distribution hypothesis. The estimated standard deviation was of 8.8 mm. This value is very promising since it represents less than 1 percent of the used baseline length, consequently good attitude estimation results can be expected.

Figure 11: Extrapolated and non Extrapolated Double Difference (SV30-SV5)

Figure 12: Double Difference Residuals (SV 30-SV5)

Figure 13: Gaussian Fit


The previous analysis allows us to assure that carrier phase double differences with independent receivers are satisfactory to eliminate common perturbations. Spatially correlated perturbations and effects due to satellite and receiver clocks are all effectively cancelled as shown. The need to have good receiver synchronization was also proved and the impact of bad synchronization was demonstrated. The results obtained for the standard deviation of the double differences lead to the conclusion that the use of an independent receiver for each antenna is appropriate for three dimensional attitude determination in real time. The main objective of future work is removing the term of (3) by integer cycle ambiguity estimation. Vehicle attitude estimation based on GPS signals can only be tackled afterwards.

1. Harvey, R. S., Development of a Precision Pointing System Using an Integrated Multi-Sensor Approach, M.Sc. Thesis, University of Calgary, Canada (1998).         [ Links ]
2. Kaplan, E. D., Understanding GPS: Principles and Applications, Artech House Telecommunications Library, (1996).         [ Links ]
3. Parkinson, B. W. and J. J. Spilker Jr, Global Positioning System: Theory and Applications, vols. I y II, American Institute of Aeronautics and Astronautics (AIAA), Washington, (1996).         [ Links ]
4. Roncagliolo, P. A., J. A. Areta, C.H. Muravchik and D.R. Fuhrmann, "Attitude Estimation with GPS: Steepest Descent Algorithm on SO(3)", IEEE 2nd South American Workshop on Circuits and Systems 2001, Rio de Janeiro (Brazil)-Buenos Aires (Argentina), (2001).         [ Links ]
5. Schleppe, J. B., Development of a Real-Time Attitude System Using a Quaternion Parametrization and Non Dedicated GPS Receivers, M.Sc. Thesis, University of Calgary, Canada (1996).         [ Links ]
6. Wertz, J. R., Spacecraft Attitude Determination and Control, D. Reidel, Dordrecht (1986).
        [ Links ]

Creative Commons License Todo el contenido de esta revista, excepto dónde está identificado, está bajo una Licencia Creative Commons