Next Article in Journal
A Machine-Learning-Based Robust Classification Method for PV Panel Faults
Previous Article in Journal
Client-Oriented Blind Quality Metric for High Dynamic Range Stereoscopic Omnidirectional Vision Systems
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Time-Differenced Carrier Phase Technique for Precise Velocity Estimation on an Android Smartphone

by
Antonio Angrisano
1,
Giovanni Cappello
2,*,
Silvio Del Pizzo
2 and
Salvatore Gaglione
2
1
Department of Engineering, Messina University, Contrada di Dio, Sant’Agata, 98166 Messina, Italy
2
Department of Sciences and Technologies, “Parthenope” University of Naples, Centro Direzionale Isola C4, 80143 Naples, Italy
*
Author to whom correspondence should be addressed.
Sensors 2022, 22(21), 8514; https://doi.org/10.3390/s22218514
Submission received: 30 September 2022 / Revised: 21 October 2022 / Accepted: 26 October 2022 / Published: 4 November 2022
(This article belongs to the Section Intelligent Sensors)

Abstract

:
GNSS (Global Navigation Satellite System) receivers are not only able to accurately determine position, but also velocity, knowledge of which could be important in several applications. The most adopted technique for velocity estimation exploits the Doppler shift due to the relative motion between the signal source and the receiver. Alternatively, the TDCP (Time-Differenced Carrier Phase) technique, based on the differences between consecutive carrier-phase measurements, can be used. TDCP is theoretically able to achieve better performance compared with the Doppler-based approach, exploiting the high precision of a carrier-phase observable, and without suffering the ambiguity issue. The main objective of this study is to analyze TDCP performance on a smartphone GNSS chip. Smartphones GNSS receivers are usually characterized by noisy observables owing to the low quality of the antenna used; it is, therefore, interesting to compare the smartphone TDCP performance with that of the Doppler-based technique. To evaluate the benefits that TDCP can provide, especially in terms of the smartphone chip, these two approaches to velocity determination are compared using three different devices: a Novatel geodetic receiver, a u-blox multi-frequency receiver, and a Xiaomi Mi8 smartphone. The results demonstrate a performance degradation in the smartphone GNSS chip when TDCP is used, compared with the performance of higher-grade receivers. In fact, the Xiaomi Mi8 maximum errors are greater than those of the Novatel geodetic receiver, but they are still acceptable as they do not exceed 6 cm/s, making the TDCP technique a valid approach for advanced algorithms; indeed, TDCP velocity demonstrates a few mm/s accuracy with a smartphone. The application of a RAIM algorithm enables error reduction and the achievement of reliable information; the obtained solution reliability is about 89%.

1. Introduction

GNSS provide the three-dimensional position, velocity, and UTC time synchronization, worldwide and in every meteorological condition. The main component of GNSS is represented by GPS (Global Positioning System), which is fully operational and comprises MEO (Medium Earth Orbit) satellites orbiting the Earth twice a day, and a global network of ground stations tracking the satellites, analyzing the signals, and sending commands and data to the system. The main GPS (and GNSS) application is real-time navigation, which can be performed with low-cost receivers; however, it can also be used for topographical and geodetical applications, such as the monitoring of structures, plate tectonics monitoring, a survey of points on large-scale cartography, and so on [1,2,3,4,5].
The main interest of this study is real-time navigation. Indeed, nowadays, smart devices, such as smartphones, smartwatches, and tablets, are largely equipped with GNSS chips, allowing pedestrian navigation, sports tracking, and location-based services. These applications need accurate and reliable positioning that the GNSS chips are not always able to provide, mainly because of their small size, low-cost, and linear-polarized antenna [6,7,8]. In this context, advanced processing algorithms are necessary, and an accurate estimation of velocity could play a key role. The TDCP (Time-Differenced Carrier Phase) technique is able to provide mm/s order accuracy for high-grade receivers, but its performance with smart devices should be assessed in terms of accuracy and reliability. Therefore, the main objective of this work is the analysis of the TDCP-based velocity performance of a smartphone.
GNSS receivers usually estimate velocity by processing the Doppler measurement—a shift in signal frequency of the satellite–user relative motion [1].
Alternatively, velocity can be estimated by the TDCP (Time-Differenced Carrier Phase) technique [9], which employs two consecutive carrier-phase observables. The main problem with carrier-phase observables is the presence of integer ambiguity, which must be estimated. If no cycle slips occur, the ambiguity remains constant [2]; thus, differencing two consecutive measurements cancels the ambiguity [10]. This is an important aspect of TDCP, which frees it from a classical problem affecting carrier phase. The most evident benefit of TDCP is that it can provide mm/s accuracies, compared with the Doppler technique which enables estimation at the cm/s accuracy level [11]. On the other hand, TDCP is not a snapshot technique, being based on two consecutive carrier-phase measurements from the same satellite; if a loss of contact occurs on a satellite at the current or previous epoch, the TDCP observable, relative to that satellite, is unavailable. This results in a lower observable availability compared with the Doppler technique (which is a snapshot technique and does not experience this problem). An additional drawback is that the presence of cycle slip directly affects the TDCP observable so a suitable detector must be used.
TDCP was studied in several works. In [12], the authors developed an approach where TDCP aids an INS to determine the velocity of the receiver and it achieved sub-meter positional accuracies. In [13], an improved TDCP velocity-estimation approach, which was dependent on the receiver position at the current epoch and the satellite position at the current and successive epochs, was developed. A source of discontinuity in TDCP measurements is the changing of ephemerides; to overcome this limitation, in [11], a strategy based on the use of the same set of ephemerides was proposed. In [14], TDCP was used to improve pedestrian localization in an integrated scheme that included PDR (Pedestrian Dead Reckoning) and GNSS measurements.
The literature reports several studies into the development of GNSS receivers embedded into smart devices (above all smartphones); an exhaustive review of the state of art is in [15].
Several specific studies into velocity estimation and/or the TDCP technique with smart devices are found in the literature. In [16], the results from the integration of GNSS and inertial sensors of two smartphones were assessed, focusing on performance during the passage from an open sky to a more challenging environment.
In [17], a quality analysis of GNSS smartphone observations was carried out and a velocity-aided positioning approach was proposed; an analysis of velocity estimation was conducted using the carrier-phase rate and the Doppler measurements; the results showed that the carrier-phase approach was more accurate than the Doppler approach. In [18], an analysis of Doppler-based velocity estimation with smartphones was conducted for single and multi GNSS constellations, and single and dual frequencies.
In [19], GNSS pseudorange, phase, and Doppler observables were combined in order to develop a precise positioning algorithm that exploited a robust Kalman Filter to obtain the smartphone position, where a velocity term was present, the position being determined using a TDCP method.
In [20], measurements from a smartphone GNSS chip were analyzed and, owing to the presence of high noise levels, and frequent cycle slips and blunders, an advanced positioning algorithm, involving TDCP, was proposed. This research highlighted the importance of TDCP because it is crucial for advanced algorithms. A proof analysis of TDCP performance in the velocity domain using a smartphone GNSS chip is, therefore, required.
In the present work, a trial was conducted to assess the performance of the TDCP technique applied to a smartphone GNSS receiver. The considered device was a Xiaomi Mi8, equipped with a Broadcom BCM47755 chipset, able to receive L1/L5 frequencies from the GPS, GLONASS, Galileo, and BeiDou satellites. The need to investigate the TDCP performance with a smartphone arose from the typical noisiness of observations for this type of device [6,15,21,22].
A comparison was conducted with a Novatel GPS geodetic receiver, able to track L1/L2 frequencies of GPS only, and with a u-blox ZED F9P multi-band GNSS receiver, able to receive L1/L2/L5, frequencies from GPS, GLONASS, Galileo, and BeiDou [23]. Data collection was performed in an open sky context, and the velocity was estimated using both the Doppler and TDCP techniques; the data collection was static to ensure zero speed value as the reference.
The test results demonstrate that a smartphone chip provides degraded performance compared with the higher-grade devices; nevertheless, a velocity accuracy of the order of a few mm/s is attainable with TDCP. A RAIM (Receiver Autonomous Integrity Monitoring) algorithm was applied in order to reduce the effect of blunders among the measurements and to obtain reliability information about the solution.
This paper is organized as follows. In Section 2 and Section 3, the Doppler and TDCP techniques for velocity estimation are discussed, respectively. In Section 4, the RAIM concept is briefly outlined. In Section 5, the experiment and the results are described. Section 6 is dedicated to the conclusions.

2. Doppler-Based Velocity Estimation

In GNSS receivers, velocity estimation is usually determined by exploiting the Doppler shift in the signals transmitted by satellites. The Doppler shift is caused by the relative motion between the satellite and the user. According to the Doppler principle, the received frequency increases as the satellite approaches the receiver; it is equal to zero when the satellite reaches the minimum distance from the receiver; finally, the frequency decreases as the satellite recedes from the receiver [1]. The frequency received by the receiver, indicated as f u , can be calculated by (1):
f u = f s 1 V ¯ r · e ¯ c
where f s is the frequency of the signal transmitted by the satellite, V ¯ r · e ¯ is the dot product between the satellite–user relative velocity vector and the unit vector of the direction from satellite to user, c is the speed of light.
The satellite–receiver relative velocity is the difference between the satellite velocity, V ¯ s , and user velocity, V ¯ u :
V ¯ r = V ¯ s V ¯ u
For a generic i-th satellite, and substituting (2) in (1), it is possible to obtain:
f u i = f s i 1 1 c V s i ¯ V u ¯ · e ¯
f u i is the signal frequency received by the i-th satellite, and it depends on the ideal received signal frequency f i and the receiver clock bias drift δ ˙ t u .
f s i is signal frequency transmitted by the i-th satellite and generated by correcting the f 0 frequency of transmission (L1) of a term Δ f s i contained in the navigation message [1].
These two frequencies are expressed by (4):
f u i = f i 1 + δ ˙ t u   f s i = f 0 + Δ f s i
Substituting the new expression of f u i in (3):
f i 1 + δ ˙ t u = f s i 1 1 c V s ¯ i V u ¯ · e ¯   f i + f i δ ˙ t u = f s i 1 V s ¯ i · e ¯ c + V u ¯ · e ¯ c c f i f s i f s i + cf i δ ˙ t u f s i = V s ¯ i · e ¯ + V u ¯ · e ¯ c f i f s i f s i + V s ¯ i · e ¯ = V u ¯ · e ¯ cf i δ ˙ t u f s i
Expanding the dot product, Equation (5) is obtained:
c f i f s i f s i + V x s i e i x + V y s i e i y + V y s i e i z = V u x e i x + V u y e i y + V u z e i z cf i δ ˙ t u f s i
The first member of (5) contains only calculated elements, while the second member contains the unknowns of the problem, namely V u x , V u y , V u z , δ ˙ t u .
Setting:
d i = c f i f s i f s i + V x s i e i x + V y s i e i y + V y s i e i z
and considering that the ratio between f i and f s i is near to 1, it is possible to neglect it in the last term cf i δ ˙ t u f s i of (5), obtaining (6):
d i = V u x e i x + V u y e i y + V u z e i z δ ˙ t u
For a satellite number m 4 :
d ¯ = H v ¯ + ε ¯
where ε _ is the vector containing the error sources contributions, while the remaining elements are:
d ¯ = d 1 d 2 d m H = e 1 x t 2 e 1 y t 2 e 1 z t 2 1 e 2 x t 2 e 2 y t 2 e 2 y t 2 1 e m x t 2 e m y t 2 e m z t 2 1 V ¯ = V u x V u y V u z c δ ˙ t u
The measurement Equation (7) can be solved using the Weighted Least Squares (WLS) method:
V ¯ = H T WH 1 H T W d ¯
where W is the weighting matrix,
The measurements are assumed to be uncorrelated; hence, W is a diagonal matrix. The variance of the measurements, σ i 2 , are placed on the diagonal, as shown below:
W = 1 / σ 1 2 0 0 0 1 / σ 2 2 0 0 0 1 / σ m 2
All the above equations are adapted from [1].
For the present study, the diagonal elements of W are determined with a weighting model based on the carrier to noise ratio, C/N0, and satellite elevation ( El ), shown in (9) and assessed in [24]. This model was adopted after several attempts with various weighting strategies, as it provided the best results.
σ i 2 = σ 0 2 10 0.1   C / N 0 i sin 2 El i
σ 0 2 is a constant variance value.

3. Time-Differenced Carrier-Phase Technique

The TDCP algorithm estimates user velocity in a very accurate manner by processing the differences in two consecutive carrier-phase measurements, as long as the i-th satellite signal is received in both the current and the previous epochs [10].
As can be seen from Figure 1, which represents how the TDCP algorithm works, user velocity is computed starting with the GNSS measurements: raw pseudorange is used to determine the GNSS position at the current epoch, referred as t j ; and two consecutive raw carrier-phase measurements at t j 1 and t j epochs.
Through GPS and GNSS ephemerides, it is possible to determine the satellite’s positions and the parameters of the Klobuchar ionospheric model (this latter information is contained in the GPS navigation message [1] and explains the “GPS/GNSS EPH”-named box). It is important to note that, because the TDCP algorithm uses two consecutive carrier-phase measurements, two consecutive positions for the same satellite are needed, as also clarified from Figure 1.
The raw carrier-phase measurements are corrected from the satellite clock bias, and relativistic and atmospheric effects; just before the estimation method, the RAIM (Receiver Autonomous Integrity Monitoring) algorithm is applied to detect and exclude any carrier-phase measurements affected by blunders, especially those caused by cycle slip. RAIM is a method used to determine the integrity of the navigation solution and to protect it from an excessive horizontal position error caused by gross errors, excluding these from the navigation solution computation (Fault Detection and Exclusion (FDE) technique) [1]. RAIM theory is detailed in [25]. An application of RAIM in cycle-slip detection was assessed in [26]. In this study, RAIM is applied to the measurement set in order to exclude those blunders that can affect the accuracy of estimated velocity.
Therefore, once RAIM is applied, corrected and consistent measurements are produced. These, together with the user position at t j 1 and t j consecutive epochs in the estimation method (that in this study is the WLS method), allow the user velocity to be calculated.
The carrier-phase measurements are expressed by (10):
λ ϕ = d + c δ t s c δ t u + λ N + δ d eph δ d iono + δ d trop + η
where λ is the wavelength of the signal transmitted by the satellite, ϕ is the measured carrier phase expressed in cycles, d is the satellite–receiver geometric distance (also defined as “range”), c is the speed of light, δ t s is the satellite clock bias, δ t u is the receiver clock bias, N is the integer ambiguity, δ d eph is the ephemeris errors, δ d iono and δ d trop are, respectively, the ionospheric and tropospheric errors, and η is another error term which includes multipath and receiver noise.
Calculating the difference between two consecutive carrier-phase measurements, referred at epochs t j and t j 1 , it is possible to write (11):
λ Δ ϕ = λ [ ϕ t j ϕ t j 1 ] = Δ d + c Δ δ t s c Δ δ t u + Δ δ d eph Δ δ d iono + Δ δ d trop + Δ η
Analyzing the terms of (11), it is possible to neglect c Δ δ t s because the corrections for satellite clock bias are contained in ephemeris data [1], so c Δ δ t s consists of a difference in residual errors and has a very small value. Regarding the atmospheric terms ( Δ δ d iono and Δ δ d trop ), these can also be neglected because they are compensated, in a single epoch, using specific algorithms: the Klobuchar model is employed to mitigate the ionospheric delay and the Saastamoinen model is used to mitigate the tropospheric delay. This means that, following the previous logic, Δ δ d iono and Δ δ d trop are differences in residual errors, so they can be removed. Finally, Δ δ d eph is negligible because, assuming the quasi-constancy in time of ephemeris errors, this difference tends to a zero value.
In this way, the compensated TDCP measure equation is:
λ Δ ϕ ˜ = Δ d + c Δ δ t u + Δ ε
In (12), the term Δ ε contains the errors relating to multipath, receiver noise, and residuals from the other error sources.
From Figure 2, the satellite–receiver relative geometry can be seen, where r s ¯ is the satellite position vector and r u ¯ is the user position vector, both referred to in the ECEF frame, d ¯ is the geometric distance of satellite–receiver, and Δ r u ¯ is the receiver position shift.
The satellite–receiver range, varying between t j 1 and t j , can be formulated as follows:
d ¯ t j = e ¯ t j · r s ¯ t j r u ¯ t j d ¯ t j 1 = e ¯ t j 1 · r s ¯ t j 1 r u ¯ t j 1
where e ¯ is the Line-Of-Sight (LOS) versor referring to t j 1 and t j epochs, and “ · ” indicates the dot product operation.
Δ d is the difference between d ¯ t j and d ¯ t j 1 :
Δ d = e ¯ t j · [ r s ¯ t j r u ¯ t j ] e ¯ t j 1 · r s ¯ t j 1 r u ¯ t j 1 = e ¯ t j · r s ¯ t j e ¯ t j 1 · r s ¯ t j 1 e ¯ t j · r u ¯ t j e ¯ t j 1 · r u ¯ t j 1
The receiver position at the current epoch is:
r u ¯ t j = r u ¯ t j 1 + Δ r u ¯
Substituting (15) in (14), obtains:
Δ d = [ e ¯ t j r s ¯ t j e ¯ t j 1 r s ¯ t j 1 ] e ¯ t j r u ¯ t j 1 + Δ r u ¯ e ¯ t j 1 r u ¯ t j 1 = e ¯ t j r s ¯ t j e ¯ t j 1 r s ¯ t j 1 e ¯ t j r u ¯ t j 1 + e ¯ t j Δ r u ¯ e ¯ t j 1 r u ¯ t j 1 = e ¯ t j r s ¯ t j e ¯ t j 1 r s ¯ t j 1 e ¯ t j r u ¯ t j 1 e ¯ t j 1 r u ¯ t j 1 e ¯ t j Δ r u ¯
Setting:
Δ D = e ¯ t j · r s ¯ t j e ¯ t j 1 · r s ¯ t j 1 Δ g = e ¯ t j · r u ¯ t j 1 e ¯ t j 1 · r u ¯ t j 1
It is possible to express Δ d as follows:
Δ d = Δ D Δ g e ¯ t j · Δ r u ¯
In (17), Δ D represents change in range, proportional to the average Doppler frequency shift due to the satellite motion, while Δ g represents the relative satellite–receiver geometry change due to the orientation shift of the LOS vector.
Substituting (17) in (12):
λ Δ ϕ ˜ = Δ D Δ g e ¯ t j · Δ r u ¯ + c Δ δ t u + Δ ε
Carrying Δ D and Δ g terms at the first member of (9), the adjusted TDCP measurement is obtained:
λ Δ ϕ ˜ adj = λ Δ ϕ ˜ Δ D + Δ g
The final expression of the TDCP measurement equation is:
λ Δ ϕ ˜ adj = e ¯ t j · Δ r u ¯ + c Δ δ t u + Δ ε
Δ r u ¯ and c Δ δ t u are unknown quantities which should be calculated.
For a number of available measurements m, at least equal to the number of unknowns, it is possible to estimate the unknowns by solving a set of equations such as (19), whose expression is:
y ¯ = H X ¯ + ε ¯
where y ¯ is the vector of the measurements, X ¯ is the vector containing the unknown quantities, H is the design matrix, ε ¯ is a vector containing the measurement errors.
y ¯ = λ Δ ϕ ˜ 1 adj λ Δ ϕ ˜ 2 adj λ Δ ϕ ˜ m adj x ¯ = Δ r u x Δ r u y Δ r u z c Δ δ t u H = e 1 x t 2 e 1 y t 2 e 1 z t 2 1 e 2 x t 2 e 2 y t 2 e 2 y t 2 1 e m x t 2 e m y t 2 e m z t 2 1
The WLS method can be adopted to solve Equation (20), as shown below:
X ¯ = H T WH 1 H T W y ¯
where W is the weighting matrix.
W = 1 / σ 1 2 0 0 0 1 / σ 2 2 0 0 0 1 / σ m 2
The velocity can be determined as follows:
V ¯ = Δ r u ¯ t j t j 1
All equations are taken from [9,11], and the W matrix elements are calculated using the same weighting strategy discussed in the previous section, scaling the constant variance value to one order of magnitude.

4. RAIM

Integrity refers to the capability of a navigation system to provide timely warnings to users when the system should not be used. RAIM is a user-level algorithm for solution integrity, based on a consistency check of redundant measurements [1].
There are several RAIM algorithms; the algorithm used in this study is the RAIM Subset, whose functional scheme is shown in Figure 3. The inputs of this algorithm are the residual vector, the design matrix H, and the weighting matrix W.
Before RAIM application, a check on satellite geometry and protection levels (PL) is carried out and, if this test fails, the solution is declared impossible to check, as indicated in the yellow box. The satellite geometry check consists in comparing DOP parameters against suitable thresholds: if DOP values exceed the threshold, the observation geometry is considered “bad” [1], and the solution is declared impossible to check. Similarly, if Horizontal and Vertical Protection Levels (HPL and VPL, respectively), largely detailed in [27], exceed the limit values named the Horizontal Alert Limit and Vertical Alert Limit (HAL and VAL, respectively), the measurement set is considered impossible to check.
After the Geometry and PL checks, a Global Test (GT) is carried out to verify the self-consistency of the measurement set. In this phase, a decision variable D is computed by (23):
D _ = r _ T W r _
where r is the residual vector, obtained by:
r _ = z _ H x ^ ¯
where z _ is the measurement vector and x ^ ¯ is the state vector, estimated using the WLS method.
D _ is assumed to follow a χ 2 distribution with m n degrees of freedom (or redundancy), defined as the difference between the number of measurements m and the state dimension n, and it is compared with the threshold T g :
T g = χ 1 P F A , m n 2
where 1 P F A indicates the abscissa value of a χ 2 distribution of m n degrees of freedom. P F A is the probability of a false alarm and, in this experiment, is fixed at 0.1%.
In subset testing, the global test is applied to all possible measurement subsets until a subset is found from which the supposed blunders are excluded. This is done by searching for a subset that most clearly passes the global test, i.e., which satisfies its self-consistency test with the smallest test statistic. The subset with the smallest test statistic below the threshold, and the largest number of measurements, is chosen to provide the best position solution [28].

5. Test and Results

The main objective of this study was to analyze the velocity estimation performance of a smartphone GNSS; in particular, the TDCP technique was considered. The smartphone Xiaomi Mi8 was used for the test; the device is equipped with a Broadcom BCM47755 chipset, and is able to receive L1/E1 and L5/E5 signal frequencies from the GPS, GLONASS, Galileo, and BeiDou constellations [29].
For comparison, a geodetic receiver and a high-sensitivity receiver were also considered, specifically a Novatel Geodetic GPS receiver and a u-blox ZED-F9P GNSS receiver. The former device is a double-frequency GPS receiver; the latter is a multi-frequency GNSS receiver. In this work, only GPS measurements were analyzed.
For this experiment, all the devices simultaneously acquired about 22 min of raw GPS data at L1 frequency in static mode in order to compare the estimated velocity with a reference of zero speed value. The data were collected on 24 April 2022 in a rural area in the suburbs of Naples (Figure 4).
The test scenario was open sky, as can be seen in Figure 4; satellite visibility was, therefore, good during the entire session, as shown in Figure 5.
Figure 5 shows an overview of the number of visible GPS satellites for each device; visible satellites were well above the minimum number of four satellites necessary for the estimation of the unknowns. Initially, there were eight visible satellites for each device, and then nine from about 09:42. The smartphone visibility was the least stable, as indicated by the frequent drops; however, the number of visible satellites from the Mi8 was never less than 6.
Figure 6 shows the C/N0 behavior for each device. It can be seen that this ratio decreases in the devices in the following order: Novatel geodetic receiver (a), u-blox receiver (b), and Mi8 smartphone (c). For the geodetic receiver, the C/N0 values are mainly between 40 and 50 dB-Hz; for the high-sensitivity device, the values are mainly between 30 and 50 dB-Hz; finally, for the smartphone, the values are between 20 and 45 dB-Hz.
This is a clear indication that the observations collected by the smartphone are noisier than the other devices.
At three moments, around 9:39, 9:49, and 9:58, a drop in C/N0 values, probably related to unknown interferences, is evident; the main effects are on the u-blox and, most of all, on the Xiaomi, and they correspond to the decrease in the available measurements in Figure 5.
In order to assess the performance of the smartphone GNSS chip for velocity estimation, Doppler-derived and TDCP-derived velocities were considered.
Collected observables were processed with PANG-NAV, a MATLAB® tool developed by PANG (PArthenope Navigation Group) able to obtain a PVT (Position, Velocity, Timing) solution and, in the presence of a reference, to perform the error analysis. Further details about PANG-NAV are provided in [30]. PANG-NAV is able to apply the FDE-RAIM (Fault Detection and Exclusion-RAIM) algorithm.
Table 1 and Table 2 summarize the experimental results, which were obtained without and with RAIM, respectively. The analyzed configurations are reported in the first and second columns, indicating the device used (Novatel, u-blox, or Xiaomi) and technique (Doppler-based or TDCP-based velocity estimation), respectively. The considered figures of merits are the mean, the root mean square (RMS), and the maximum errors for horizontal (H) and vertical (U) directions. The last columns of Table 1 and Table 2 report the solution availability and the solution reliability, respectively. Solution availability indicates percentage of available solutions, i.e., when the number of measurements is sufficient for velocity computation. Solution reliability is the percentage of reliable solutions (on the total of potential epochs) according to RAIM.
Table 1 shows that the theoretical performance of Doppler-based and TDCP-based velocity estimation are confirmed for the geodetic receiver, with an accuracy of cm/s and mm/s order, respectively. A degradation is evident for the high-sensitivity and smartphone receivers, with larger values for each considered figure of merit. In particular, the presence of anomalous measurements is remarkable in the TDCP results for the u-blox, characterized by a maximum error of 4 dm/s (horizontal) and 1.3 m/s (vertical). The application of RAIM is, therefore, necessary for TDCP in order to identify and exclude anomalous measurements, often related to cycle slips, and to obtain a reliable solution. Finally, the solution availability is 100% for the Doppler approach for all the considered devices; the 99.9% value for TDCP case is simply due to the impossibility of differencing consecutive carrier phases at the first epoch.
From Table 2, it can be observed that TDCP provides better velocity accuracy compared with the Doppler technique for all the devices. On the other hand, the reliability percentage obtained with TDCP is lower compared with the Doppler-based application; this happens mainly because TDCP is prone to the issue of cycle slips, which are considered by RAIM as blunders.
As expected, the Novatel Geodetic Receiver, which was the highest-grade device used, provides the best performance for all the considered figures of merits. TDCP RMS errors are one order of magnitude smaller than those of the Doppler approach; the reliability percentage of the Doppler solution is 100%, while it is 95.6% for TDCP, because a number of anomalous measurements were detected by RAIM, which flagged about 50 epochs as “unreliable”.
The u-blox receiver with the TDCP technique also provided accuracy at the mm/s level. This configuration evidently benefits from RAIM application. Indeed, horizontal and vertical maximum errors decrease from 4.2 dm/s to 2.4 cm/s and from 1.3 m/s to 7.6 cm/s, respectively; the benefits are also clear in terms of RMS and mean errors. The reliable availability of this configuration is 96.4%.
For the Mi8 GNSS chip, the TDCP technique provided better performance compared with the Doppler-based technique, as it did for the other considered devices. The TDCP performance was good, with RMS horizontal and vertical errors equal to 7 and 16 mm/s, respectively, and maximum horizontal and vertical errors less than 6 cm/s and 2 dm/s, respectively. The solution reliability is lower than the other two devices; indeed, it is 89.5%. This confirms that, as previously discussed in Section 1, the smartphone observables are noisier, and the cycle slip more frequent compared with the other devices.
In order to highlight the benefits of TDCP compared with Doppler for velocity estimation, Figure 7, Figure 8 and Figure 9 show the behavior of horizontal and vertical velocity errors for each device. These figures were obtained by applying RAIM.
It is interesting to note that several spikes are present in Figure 9 which refers to the Xiaomi device; such sudden increases in error occur in both the Doppler and TDCP cases and are related to the sudden drops in visibility and C/N0 shown in Figure 5 and Figure 6, respectively.
In order to underline the key role of RAIM in velocity estimation with TDCP, the behavior of velocity errors, with and without RAIM, for the considered devices is plotted in Figure 10, Figure 11 and Figure 12. It is interesting to note how the RAIM application is particularly effective for the high-sensitivity receiver; in fact, errors in the order of several dm/s for the horizontal channel, and of about one m/s for the vertical channel, are significantly reduced. However, RAIM is less effective for the Xiaomi Mi8, as is evident in Figure 12, where several spikes escape the RAIM check; the reason for this is the noisy measurements, which make it difficult for RAIM to work. Nevertheless, the benefits of RAIM to the Xiaomi case are evident, with a reduction in maximum errors of about 1.5 cm/s (horizontal) and 7.5 cm/s (vertical).

6. Conclusions

The objective of this study was to assess the performance of the TDCP technique, compared to the Doppler-based technique, for velocity estimation, with particular reference to smartphone GNSS chips. The motivation for this is related to the noisy observations characterizing such devices, implying degraded performance compared with other receivers, such as geodetic or consumer-grade receivers with dedicated antennas.
A static test was carried out in an open sky environment, using a geodetic-grade receiver with a survey antenna, a high-sensitivity receiver with a patch antenna, and a smartphone GNSS chip (Xiaomi Mi8). A RAIM algorithm was used in the data processing, to avoid the cycle slip issue which affects TDCP technique.
From the test, it is evident that TDCP is a valid approach for a precise velocity estimation for all the used devices, showing better performance than the Doppler-based approach. The geodetic receiver provided the best performance with RMS horizontal and vertical errors of about 2 and 4 mm/s, respectively, and a reliability percentage of 95.6%. The high-sensitivity receiver provided a slightly degraded performance compared with the geodetic receiver, with RMS horizontal and vertical errors of about 3 and 6 mm/s, respectively, and a similar reliable availability.
The Xiaomi Mi8 GNSS chip provided lower performance, with RMS horizontal and vertical errors of about 7 and 16 mm/s, respectively, and with a reliable availability of about 89%. The TDCP performance degradation of the smartphone GNSS chip compared with higher-grade devices confirms the typical observable noisiness of such types of devices, specifically of the carrier phase. Nevertheless, the maximum errors for the smartphone GNSS chip are not greater than 6 cm/s. Such performance allows the usage of TDCP-based velocity in advanced algorithms. RAIM plays an important role, significantly reducing the maximum errors. The reduced reliable availability suggests its usage in integrated systems (with inertial sensors for instance); a multi-GNSS approach could mitigate this problem.

Author Contributions

Conceptualization, A.A., G.C., S.D.P. and S.G.; methodology, A.A., G.C., S.D.P. and S.G.; software, A.A., G.C., S.D.P. and S.G.; validation, A.A., G.C., S.D.P. and S.G.; formal analysis, A.A., G.C., S.D.P. and S.G.; investigation, A.A., G.C., S.D.P. and S.G.; resources, A.A., G.C., S.D.P. and S.G.; data curation, A.A., G.C., S.D.P. and S.G.; writing—original draft preparation, A.A., G.C., S.D.P. and S.G.; writing—review and editing, A.A., G.C., S.D.P. and S.G.; visualization, A.A., G.C., S.D.P. and S.G.; supervision, A.A., G.C., S.D.P. and S.G.; project administration, A.A., G.C., S.D.P. and S.G.; funding acquisition, A.A., G.C., S.D.P. and S.G. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Data Availability Statement

The data presented in this study are available on request from the corresponding author.

Acknowledgments

The authors would like to acknowledge the support of “HPC-Based navigation system for Marine Litter hunting” project (CUP: I65F21001620006).

Conflicts of Interest

The authors declare no conflict of interest. The funders had no role in the design of the study; in the collection, analyses, or interpretation of data; in the writing of the manuscript; or in the decision to publish the results.

References

  1. Kaplan, E.D.; Hegarty, C.J. Understanding GPS: Principles and Applications; Artech House: London, UK, 2006. [Google Scholar]
  2. Hofmann-Wellenhof, B.; Lichtenegger, H.; Collins, J. GPS Theory and Practice Third Revised Edition; Springer: Wien, Austria; New York, NY, USA; Berlin/Heidelberg, Germany, 1992. [Google Scholar]
  3. Tarig, A. Positioning with wide-area GNSS networks: Concept and application. Positioning 2012, 2012, 17675. [Google Scholar]
  4. U.S. GPS.GOV-Official U.S. Government Information about the Global Positioning System (GPS) and Related Topics. Available online: https://www.gps.gov/systems/gps/space/ (accessed on 19 October 2022).
  5. Biagi, L. I Fondamentali del GPS; Geomatic Workbooks: Como, Italy, 2006; Volume 8. [Google Scholar]
  6. Siddakatte, R.; Broumandan, A.; Lachapelle, G. Performance evaluation of smartphone GNSS measurements with different antenna configurations. In Proceedings of the International Navigation Conference, Brighton, UK, 27–30 November 2017. [Google Scholar]
  7. Fortunato, M.; Critchley-Marrows, J.; Siutkowska, M.; Ivanovici, M.L.; Benedetti, E.; Roberts, W. Enabling high accuracy dynamic applications in urban environments using PPP and RTK on android multi-frequency and multi-GNSS smartphones. In Proceedings of the 2019 European Navigation Conference (ENC), Warsaw, Poland, 9–12 April 2019; pp. 1–9. [Google Scholar]
  8. Pesyna, K.M.; Heath, R.W.; Humphreys, E.T. Centimeter positioning with a smartphone-quality GNSS antenna. In Proceedings of the 27th International Technical Meeting of the Satellite Division of The Institute of Navigation (ION GNSS+ 2014), Tampa, Florida, 8–12 September 2014; pp. 1568–1577. [Google Scholar]
  9. van Graas, F.; Soloviev, A. Precise velocity estimation using a stand-alone GPS receiver. Navigation 2004, 51, 283–292. [Google Scholar] [CrossRef]
  10. Petovello, M.; Gaglione, S. How does a GNSS receiver estimate velocity? Inside GNSS 2015, 38–41. Available online: https://insidegnss.com/wp-content/uploads/2018/01/marapr15-SOLUTIONS.pdf (accessed on 10 July 2022).
  11. Freda, P.; Angrisano, A.; Gaglione, S.; Troisi, S. Time-differenced carrier phases technique for precise GNSS velocity estimation. Gps Solut. 2015, 19, 335–341. [Google Scholar] [CrossRef]
  12. Soon, B.K.H.; Scheding, S.; Lee, H.-K.; Lee, H.-K.; Durrant-Whyte, H. An approach to aid INS using time-differenced GPS carrier phase (TDCP) measurements. Gps Solut. 2008, 12, 261–271. [Google Scholar] [CrossRef]
  13. Ding, W.; Wang, J. Precise Velocity Estimation with a Stand-Alone GPS Receiver. J. Navig. 2011, 64, 311–325. [Google Scholar] [CrossRef] [Green Version]
  14. Angrisano, A.; Vultaggio, M.; Gaglione, S.; Crocetto, E.N. Pedestrian localization with PDR supplemented by GNSS. In Proceedings of the 2019 European Navigation Conference (ENC), Warsaw, Poland, 9–12 April 2019; pp. 1–6. [Google Scholar]
  15. Zangenehnejad, F.; Gao, Y. GNSS smartphones positioning: Advances, challenges, opportunities, and future perspectives. Satell Navig. 2021, 2, 24. [Google Scholar] [CrossRef] [PubMed]
  16. Gikas, V.; Perakis, E.H. Rigorous performance evaluation of smartphone GNSS/IMU sensors for ITS applications. Sensors 2016, 16, 1240. [Google Scholar] [CrossRef] [PubMed]
  17. Liu, W.; Shi, X.; Zhu, F.; Tao, X.; Wang, E.F. Quality analysis of multi-GNSS raw observations and a velocity-aided positioning approach based on smartphones. Adv. Space Res. 2019, 63, 2358–2377. [Google Scholar] [CrossRef]
  18. Li, Y.; Wang, L.; Liu, J.; Zhang, P.; Lu, E.Y. Accuracy Evaluation of Multi-Gnss Doppler Velocity Estimation Using Android Smartphones. Int. Arch. Photogramm. Remote Sens. Spat. Inf. Sci. 2022, 46, 89–96. [Google Scholar] [CrossRef]
  19. Zhang, X.; Tao, X.; Zhu, F.; Shi, X.; Wang, F. Quality assessment of GNSS observations from an Android N smartphone and positioning performance analysis using time-differenced filtering approach. Gps Solut. 2018, 22, 70. [Google Scholar] [CrossRef]
  20. Guo, L.; Wang, F.; Sang, J.; Lin, X.; Gong, X.; Zhang, W. Characteristics analysis of raw multi-GNSS measurement from Xiaomi Mi 8 and positioning performance improvement with L5/E5 frequency in an urban environment. Remote Sens. 2020, 12, 744. [Google Scholar] [CrossRef]
  21. Robustelli, U.; Baiocchi, V.; Pugliano, G. Assessment of dual frequency GNSS observations from a Xiaomi Mi 8 Android smartphone and positioning performance analysis. Electronics 2019, 8, 91. [Google Scholar] [CrossRef] [Green Version]
  22. Innac, A.; Angrisano, A.; Dardanelli, G.; della Corte, V.; Martellato, E.; Rotundi, A.; Ferraioli, G.; Palumbo, P.; Gaglione, S. A Kalman Filter Single Point Positioning for maritime applications using a smartphone. Geogr. Tech. 2021, 16, 15–29. [Google Scholar] [CrossRef]
  23. Ublox, ANN-MB Series Multi-Band, High Precision GNSS Antennas. Data Sheet. 2019. Available online: https://www.u-blox.com/sites/default/files/ANN-MB_DataSheet_(UBX-18049862).pdf (accessed on 10 July 2022).
  24. Tay, S.; Marais, J. Weighting models for GPS Pseudorange observations for land transportation in urban canyons. In Proceedings of the 6th European Workshop on GNSS Signals and Signal Processing, Munich, Germany, 5–6 December 2013. [Google Scholar]
  25. Parkinson, B.W.; Spilker, J.J.J. Global Positioning System: Theory and Applications; Progress in Astronautics and Aeronautics: Washington, DC, USA, 1996; pp. 143–165. [Google Scholar]
  26. Kirkko-Jaakkola, M.; Traugott, J.; Odijk, D.; Collin, J.; Sachs, G.; Holzapfel, F. A RAIM approach to GNSS outlier and cycle slip detection using L1 carrier phase time-differences. In Proceedings of the 2009 IEEE Workshop on Signal Processing Systems, Tampere, Finland, 7–9 October 2009. [Google Scholar]
  27. ICAO. Annex 10 to the Convention on International Civil Aviation-Aeronautical Telecommunications; International Civil Aviation Organization: Montreal, QC, Canada, 2018; Volume I. [Google Scholar]
  28. Kuusniemi, H. User-Level Reliability and Quality Monitoring in Satellite-Based Personal Navigation. Ph.D. Thesis, Tampere University of Technology, Tampere, Finland, 2005. [Google Scholar]
  29. EUSPA. World’s First Dual-Frequency GNSS Smartphone Hits the Market. 2018. Available online: https://www.euspa.europa.eu/newsroom/news/world-s-first-dual-frequency-gnss-smartphone-hits-market (accessed on 19 July 2022).
  30. Angrisano, A.; Gaglione, S.; Crocetto, N.; Vultaggio, M. PANG-NAV: A tool for processing GNSS measurements in SPP, including RAIM functionality. GPS Solut. 2020, 24, 19. [Google Scholar] [CrossRef]
Figure 1. Time-Differenced Carrier Phase algorithm functional scheme (modified from [11]).
Figure 1. Time-Differenced Carrier Phase algorithm functional scheme (modified from [11]).
Sensors 22 08514 g001
Figure 2. Satellite–Receiver relative geometry (modified from [9]).
Figure 2. Satellite–Receiver relative geometry (modified from [9]).
Sensors 22 08514 g002
Figure 3. RAIM Subset algorithm.
Figure 3. RAIM Subset algorithm.
Sensors 22 08514 g003
Figure 4. Test location.
Figure 4. Test location.
Sensors 22 08514 g004
Figure 5. Satellite visibility for each device.
Figure 5. Satellite visibility for each device.
Sensors 22 08514 g005
Figure 6. C/N0 behavior for each visible satellite.
Figure 6. C/N0 behavior for each visible satellite.
Sensors 22 08514 g006
Figure 7. Novatel horizontal and vertical velocity errors as function of time. RAIM is applied.
Figure 7. Novatel horizontal and vertical velocity errors as function of time. RAIM is applied.
Sensors 22 08514 g007
Figure 8. u-blox horizontal and vertical velocity errors as function of time. RAIM is applied.
Figure 8. u-blox horizontal and vertical velocity errors as function of time. RAIM is applied.
Sensors 22 08514 g008
Figure 9. Xiaomi Mi8 horizontal and vertical velocity errors as function of time. RAIM is applied.
Figure 9. Xiaomi Mi8 horizontal and vertical velocity errors as function of time. RAIM is applied.
Sensors 22 08514 g009
Figure 10. Novatel horizontal and vertical TDCP-based velocity errors as function of time, with and without RAIM application.
Figure 10. Novatel horizontal and vertical TDCP-based velocity errors as function of time, with and without RAIM application.
Sensors 22 08514 g010
Figure 11. u-blox horizontal and vertical TDCP-based velocity errors as function of time, with and without RAIM application.
Figure 11. u-blox horizontal and vertical TDCP-based velocity errors as function of time, with and without RAIM application.
Sensors 22 08514 g011
Figure 12. Xiaomi Mi8 horizontal and vertical TDCP-based velocity error as function of time, with and without RAIM application.
Figure 12. Xiaomi Mi8 horizontal and vertical TDCP-based velocity error as function of time, with and without RAIM application.
Sensors 22 08514 g012
Table 1. Error analysis considering TDCP and Doppler techniques for Novatel Geodetic Receiver, u-blox high-sensitivity receiver, and Xiaomi Mi8 smartphone chip; RAIM is not applied.
Table 1. Error analysis considering TDCP and Doppler techniques for Novatel Geodetic Receiver, u-blox high-sensitivity receiver, and Xiaomi Mi8 smartphone chip; RAIM is not applied.
DeviceTechniqueMean [m/s]RMS [m/s]Max [m/s]Solution Availability [%]
HUHUHU
NovatelDoppler0.01760.03230.02020.04030.05670.1408100
TDCP0.00180.00330.00210.00460.01810.048499.9
u-bloxDoppler0.02640.04340.03060.05680.09520.2553100
TDCP0.00370.00840.01790.05860.42041.266699.9
Xiaomi Mi8Doppler0.01510.06260.02020.07690.28130.8679100
TDCP0.00600.01140.00830.01990.07440.261399.9
Table 2. Error analysis considering TDCP and Doppler techniques for Novatel Geodetic Receiver, u-blox high-sensitivity receiver, and Xiaomi Mi8 smartphone chip; RAIM is applied.
Table 2. Error analysis considering TDCP and Doppler techniques for Novatel Geodetic Receiver, u-blox high-sensitivity receiver, and Xiaomi Mi8 smartphone chip; RAIM is applied.
DeviceTechniqueMean [m/s]RMS [m/s]Max [m/s]Solution Reliability [%]
HUHUHU
NovatelDoppler0.01760.03230.02020.04030.05670.1408100
TDCP0.00170.00320.00200.00400.01310.028895.6
u-bloxDoppler0.02640.04340.03060.05680.09520.2553100
TDCP0.00230.00390.00290.00620.02380.076096.4
Xiaomi Mi8Doppler0.01510.06260.02020.07690.28130.8679100
TDCP0.00550.01030.00710.01610.05890.186089.5
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Angrisano, A.; Cappello, G.; Del Pizzo, S.; Gaglione, S. Time-Differenced Carrier Phase Technique for Precise Velocity Estimation on an Android Smartphone. Sensors 2022, 22, 8514. https://doi.org/10.3390/s22218514

AMA Style

Angrisano A, Cappello G, Del Pizzo S, Gaglione S. Time-Differenced Carrier Phase Technique for Precise Velocity Estimation on an Android Smartphone. Sensors. 2022; 22(21):8514. https://doi.org/10.3390/s22218514

Chicago/Turabian Style

Angrisano, Antonio, Giovanni Cappello, Silvio Del Pizzo, and Salvatore Gaglione. 2022. "Time-Differenced Carrier Phase Technique for Precise Velocity Estimation on an Android Smartphone" Sensors 22, no. 21: 8514. https://doi.org/10.3390/s22218514

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop