INTRODUCTION

The global navigation satellite systems (GNSS) mainly include the American GPS, Russian GLONASS, European Galileo, and Chinese BeiDou. Although all the components of the GNSS have rapidly developed in recent years, GPS is undoubtedly the most extensively used navigation and positioning system providing global, all-weather, high-precision, fast-response position, velocity and time (PVT) service [1, 2]. Velocity has important applications in vehicle navigation and positioning, unmanned aerial vehicle (UAV) automatic piloting, inertial navigation system (INS) calibration, precision-agriculture sowing and fertilization, satellite orbit docking, and airborne gravimetry [3, 4]. Additionally, it is used for the real-time detection of GPS receiver displacement [5]. Thus, it is crucial to study the performance of the velocity estimation by the GPS.

Based on the mode of operation and cost control, GPS velocity measurements can be divided into differential velocity measurement and single point velocity measurement. Differential velocity measurement depends on the reference station, and its working range is controlled; when a mobile carrier is not covered by the reference station, this measurement scheme is difficult to apply [6, 7]. In contrast, single-point velocity measurement depends only on a stand-alone receiver on a mobile carrier to obtain corresponding velocity information. Common single-point velocity measurement methods include time-differenced carrier phase velocity estimation (TDCPVE), Doppler observation velocity estimation (DopplerVE), and precise point positioning velocity estimation (PPPVE). In a study on the TDCPVE, Pierluigi Freda proposed a method based on the use of the same set of ephemeris to calculate the satellite positions and clock offsets at consecutive epochs, for providing a velocity solution with a precision of few mm/s [8]. Wei Dong Ding presented an improved TDCPVE that does not require satellite velocities; it was validated using static and kinematic field test data, showing that the equivalent velocity accuracy achieved using differential GPS techniques is possible with the improved TDCPVE [9]. Ben K.H. Soon combined the TDCPVE technique with the INS, and the inertial error growth was effectively suppressed in a GPS restricted environment [10]. Han Songlai combined carrier phase epoch differential velocity measurement with the SINS using a two-speed Kalman filter to achieve high-precision integrated navigation within a short time. In a research on the DopplerVE, Chen Yuan indicated that a velocity estimation accuracy of cm/s can be obtained using the DopplerVE in an open field of view [11]; He Haibo believed that the accuracy of the DopplerVE depends mainly on the accuracy of the Doppler observations, and is unaffected by the motion state of the carrier [12, 13]. Wang QianXin combined the carrier phase and Doppler observations by adding their normal equations, improving the precision and reliability of the DopplerVE [14]. In a study on the PPPVE, Tu Rui presented an approach using dynamic PPPVE to determine the displacement; its validation demonstrated that the displacement can be obtained with a precision of 1–2 cm, with a convergence time of approximately 1 min [15].

Although the above three types of velocity measurement methods have been extensively studied, comprehensive analysis and comparison have not been performed. Hence, this paper analyses the performances of the three velocity estimation models by conducting static and vehicle kinematic experiments. Under dynamic conditions using static data, with the true value of the velocity considered to be zero, the performances of the three methods are analysed for sampling intervals of 1 s and 30 s. For low-cost receivers, which represent the largest market, single frequency stand-alone GPS receivers working in the single point positioning (SPP) mode would still be a better choice. Hence, we further analysed the performance of the TDCPVE, which uses single-frequency and dual-frequency ionosphere-free (IF) observations, at different sampling intervals. Under dynamic conditions, with the position-differenced velocity calculated by the Inertial Explorer (IE) post-processing software as the references, the degree of coincidence of the three types of velocity measurement results with the IE position-differenced velocity is analysed. Since a lot of practical applications require real-time velocity, we also analysed the effect of broadcast ephemerides on the TDCPVE and DopplerVE.

THREE MODELS OF VELOCITY MEASUREMENT

TDCPVE model. The carrier-phase observation equation can be expressed as

$$\begin{gathered} \lambda \Phi _{{(ti)}}^{s} = \rho _{{(ti)}}^{s} - {{(\delta {{t}_{r}} - \delta {{t}_{s}})}_{{(ti)}}}c \\ - \,\,\lambda N_{{(ti)}}^{s} - \delta _{{{\text{ion}}(ti)}}^{s} + \delta _{{{\text{trop}}(ti)}}^{s} + \varepsilon _{{\varphi (ti)}}^{s}, \\ \end{gathered} $$
(1)

where the subscripts \(r\) and \(s\) represent the receiver and satellite, \(ti\) represents the epoch, \(\rho _{{(ti)}}^{s}\) represents the geometrical distance from the satellite to receiver, \(\Phi \) is the corresponding carrier phase observation, \(\lambda \) is the wavelength of the carrier phase, \(\delta {{t}_{r}}\) and \(\delta {{t}_{s}}\) represent the receiver and satellite clock offsets, respectively; \(c\) is the speed of light, \(N_{{ti}}^{s}\) represents the carrier phase ambiguity, \(\delta _{{{\text{ion}}(ti)}}^{s}\) and \(\delta _{{{\text{trop}}(ti)}}^{s}\) represent the ionospheric and tropospheric delays, respectively; \(\varepsilon _{{\varphi (ti)}}^{s}\) is the observation noises. Other errors such as antenna centre offsets and variations, tide loading, phase wind-up, earth rotation, and relativity can be corrected using the existing models, so they are ignored in this study.

Assuming that there is no cycle slip at two successive epochs, the difference between two carrier-phase observation equations is

$$\begin{gathered} \Delta \lambda \Phi _{{(t1,2)}}^{s} = \Delta \rho _{{(t1,2)}}^{s} - \Delta \delta {{t}_{{r(t1,2)}}}c + \Delta \delta {{t}_{s}}_{{(t1,2)}}c \\ - \,\,\Delta \delta _{{{\text{ion}}(t1,2)}}^{s} + \Delta \delta _{{{\text{trop}}(t1,2)}}^{s} + \Delta \varepsilon _{{\varphi (t1,2)}}^{s}, \\ \end{gathered} $$
(2)

where \(\Delta \) represents the differencing operation, for example, \(\Delta \rho _{{(t1,2)}}^{s} = \rho _{{(t2)}}^{s} - \rho _{{(t1)}}^{s}\) is the change in the geometric distance between two epochs; other terms in the equation (2) are defined accordingly. After differencing two carrier-phase observation equations, the ionospheric and tropospheric delays are weakened or eliminated, and the integer ambiguity of the carrier phase is eliminated as long as a cycle slip does not occur.

The distance from the satellite to the receiver can be formulated as follows [16]:

$$\rho _{{(ti)}}^{s} = ({\mathbf{e}}_{{(ti)}}^{s},{\mathbf{R}}_{{(ti)}}^{s} - {\mathbf{r}}_{{(ti)}}^{{}}).$$
(3)

Using the equation (3), the term, \(\Delta \rho _{{(t1,2)}}^{s}\), can be expressed as

$$\begin{gathered} \Delta \rho _{{(t1,2)}}^{s} = ({\mathbf{e}}_{{t2}}^{s},{\mathbf{R}}_{{(t2)}}^{s} - {\mathbf{r}}_{{(t2)}}^{{}}) - ({\mathbf{e}}_{{^{{t1}}}}^{s},{\mathbf{R}}_{{(t1)}}^{s} - {{{\mathbf{r}}}_{{(t1)}}}) \\ = ({\mathbf{e}}_{{t2}}^{s},{\mathbf{R}}_{{(t2)}}^{s}) - ({\mathbf{e}}_{{^{{t1}}}}^{s},{\mathbf{R}}_{{(t1)}}^{s}) - ({\mathbf{e}}_{{t2}}^{s},{{{\mathbf{r}}}_{{(t2)}}}) + ({\mathbf{e}}_{{^{{t1}}}}^{s},{{{\mathbf{r}}}_{{(t1)}}}), \\ \end{gathered} $$
(4)

where \({\mathbf{R}}_{{(ti)}}^{s}\) is the satellite position vector at the epoch \(ti\), \({{{\mathbf{r}}}_{{(ti)}}}\) is the receiver position vector at the epoch \(ti\), \({\mathbf{e}}_{{(ti)}}^{s} = \frac{{{\mathbf{R}}_{{(ti)}}^{s} - {{{\mathbf{r}}}_{{(ti)}}}}}{{\left| {{\mathbf{R}}_{{(ti)}}^{s} - {{{\mathbf{r}}}_{{(ti)}}}} \right|}}\) is the line-of-sight unit vector, and \(({{{\mathbf{R}}}^{s}},{\mathbf{r}})\) represents the inner product of vectors of \({{{\mathbf{R}}}^{s}}\) and \({\mathbf{r}}\).

In the equation (4), the receiver position \({{{\mathbf{r}}}_{{(t2)}}}\) at the epoch \({{t}_{2}}\), can be expressed in terms of the receiver position \({{{\mathbf{r}}}_{{(t1)}}}\) at the epoch \({{t}_{{\text{1}}}}\), and the change of the receiver position \(\Delta {\mathbf{r}}\) during time interval \([{{t}_{1}},{{t}_{2}}]\), which means \({{{\mathbf{r}}}_{{(t2)}}} = {{{\mathbf{r}}}_{{(t1)}}} + \Delta {\mathbf{r}}\); hence, the equation (4) can be expressed as follows:

$$\begin{gathered} \Delta \rho _{{(t1,2)}}^{s} = - ({\mathbf{e}}_{{t2}}^{s},\Delta {\mathbf{r}}) + ({\mathbf{e}}_{{t2}}^{s},{\mathbf{R}}_{{t2}}^{s}) \\ - \,\,({\mathbf{e}}_{{t1}}^{s},{\mathbf{R}}_{{t1}}^{s}) - ({\mathbf{e}}_{{t2}}^{s},{{{\mathbf{r}}}_{{(t1)}}}) + ({\mathbf{e}}_{{t1}}^{s},{{{\mathbf{r}}}_{{(t1)}}}) \\ = - ({\mathbf{e}}_{{t2}}^{s},\Delta {\mathbf{r}}) + ({\mathbf{e}}_{{t2}}^{s},{\mathbf{R}}_{{t2}}^{s} - {{{\mathbf{r}}}_{{(t1)}}}) - ({\mathbf{e}}_{{t1}}^{s},{\mathbf{R}}_{{t1}}^{s} - {{{\mathbf{r}}}_{{(t1)}}}), \\ \end{gathered} $$
(5)

Based on (5) and (2), the velocity measurement formula \({\mathbf{v}} = \frac{{\Delta {\mathbf{r}}}}{t}\) can be used to obtain the receiver velocity.

DopplerVE model. When there is relative motion between the GPS receiver and GPS satellite, the frequency of the GPS carrier signal received by the receiver differs from that of the carrier signal transmitted by the satellite. This frequency difference is called the Doppler frequency shift. The magnitude of the Doppler shift measurement is the instantaneous observation value of the carrier-phase change rate. Differentiating the equation (1), the DopplerVE equation can be expressed as follows:

$$\lambda D_{{(ti)}}^{s} = \mathop {\rho _{{(ti)}}^{s}}\limits^\centerdot - {{(\mathop {\delta {{t}_{r}}}\limits^\centerdot \, - \mathop {\delta {{t}_{s}}}\limits^\centerdot )}_{{(ti)}}}c - \mathop {\delta _{{{\text{ion}}(ti)}}^{s}}\limits^\centerdot \, + \mathop {\delta _{{{\text{trop}}(ti)}}^{s}}\limits^\centerdot \, + \mathop {\varepsilon _{{D(ti)}}^{s}}\limits^\centerdot ,$$
(6)

where \(D_{{(ti)}}^{s}\) represents the Doppler frequency shift and “\( \cdot \)” represents the change of corresponding variables; \(\mathop {\rho _{{(ti)}}^{s}}\limits^\centerdot \) denotes the change in geometrical distance from the satellite to receiver at the epoch \(ti\), which can be expressed as \(\mathop {\rho _{{(ti)}}^{s}}\limits^\centerdot = ({\mathbf{e}}_{{(ti)}}^{s},\mathop {{\mathbf{R}}_{{(ti)}}^{s}}\limits^\centerdot \, - \mathop {{{{\mathbf{r}}}_{{(ti)}}}}\limits^\centerdot )\); \(\mathop {\delta {{t}_{r}}}\limits^\centerdot \) and \(\mathop {\delta {{t}_{s}}}\limits^\centerdot \) represent the receiver and satellite clock velocities, respectively; \(\mathop {\delta _{{{\text{ion}}(ti)}}^{s}}\limits^\centerdot \) and \(\mathop {\delta _{{{\text{trop}}(ti)}}^{s}}\limits^\centerdot \) represent the change of the ionospheric and tropospheric delays, respectively; and \(\mathop {\varepsilon _{{D(ti)}}^{s}}\limits^\centerdot \) represents the observation noise.

PPPVE model. PPP is a technology which uses precise satellite orbits and clock products provided by organizations such as the IGS to process the pseudo-range and carrier phase observations for obtaining the position of a single receiver [17, 18]. The commonly used PPP models include the un-differenced (UD) model, UofC model, and un-combined (UC) model [19, 20]. The UD model uses dual-frequency pseudo-range and carrier-phase IF observations, and is expressed as follows:

$$\begin{gathered} P_{{IF(ti)}}^{s} = \frac{{{{f}_{1}}^{2}P_{{1(ti)}}^{s} - {{f}_{2}}^{2}P_{{2(ti)}}^{s}}}{{{{f}_{1}}^{2} - f_{2}^{2}}} \\ = \rho _{{(ti)}}^{s} - {{(\delta {{t}_{r}} - \delta {{t}_{s}})}_{{(ti)}}}c + \delta _{{{\text{trop}}(ti)}}^{s} + \mathop {\varepsilon _{{p(ti)}}^{s}}\limits^\_ , \\ \end{gathered} $$
(7)
$$\begin{gathered} {{\lambda }_{{IF}}}\Phi _{{IF(ti)}}^{s} = \frac{{{{f}_{1}}^{2}{{\lambda }_{1}}\Phi _{{1(ti)}}^{s} - {{f}_{2}}^{2}{{\lambda }_{2}}\Phi {{{_{2}^{s}}}_{{(ti)}}}}}{{{{f}_{1}}^{2} - f_{2}^{2}}} \\ = \rho _{{(ti)}}^{s} - {{(\delta {{t}_{r}} - \delta {{t}_{s}})}_{{(ti)}}}c - {{\lambda }_{{IF}}}N_{{IF(ti)}}^{s} + \delta _{{{\text{trop}}(ti)}}^{s} + \mathop {\varepsilon _{{\varphi (ti)}}^{s}}\limits^\_ , \\ \end{gathered} $$
(8)

where \(P_{{IF(ti)}}^{s}\) is the pseudo-range ionosphere-free observation, \(\Phi _{{IF(ti)}}^{s}\) is the carrier-phase ionosphere-free observation, and \(f\) is the frequency; bottom indices 1, 2 mean the frequency numbers.

The observation equations can be compactly expressed as follows:

$${{{\mathbf{L}}}_{{ti}}} = {{{\mathbf{A}}}_{{ti}}}{{{\mathbf{X}}}_{{ti}}} + {{{\mathbf{V}}}_{{ti}}},\,\,\,\,{{{\mathbf{V}}}_{{ti}}} \sim N(\mathbf{0},{{{\mathbf{P}}}_{{ti}}}),$$
(9)

where \({\mathbf{L}}\) is the observation vector for n satellites, \({\mathbf{A}}\) is the coefficient matrix, \({\mathbf{X}}\) is the unknown parameter vector, and \({\mathbf{V}}\) is the measured noise. Note that \(\delta {{t}_{s}}\) present in (7), (8) is absent in (9). It is supposed that it has been corrected by precision clock product.

The elements for equation (9) can be given by

$${\mathbf{A}} = \left[ {\begin{array}{*{20}{r}} {{\mathbf{e}}_{{1 \times 3}}^{1}}&{{\mathbf{0}_{{1 \times 3}}}}&{{\mathbf{0}_{{1 \times 3}}}}&{m_{{wz}}^{1}}&{ - 1}&{{{\lambda }_{{IF}}}}&0& \cdots &0 \\ {{\mathbf{e}}_{{1 \times 3}}^{2}}&{{\mathbf{0}_{{1 \times 3}}}}&{{\mathbf{0}_{{1 \times 3}}}}&{m_{{wz}}^{2}}&{ - 1}&0&{{{\lambda }_{{IF}}}}& \cdots &0 \\ \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \cdots & \vdots \\ {{\mathbf{e}}_{{1 \times 3}}^{n}}&{{\mathbf{0}_{{1 \times 3}}}}&{{\mathbf{0}_{{1 \times 3}}}}&{m_{{wz}}^{n}}&{ - 1}&0&0& \cdots &{{{\lambda }_{{IF}}}} \\ {{\mathbf{e}}_{{1 \times 3}}^{1}}&{{\mathbf{0}_{{1 \times 3}}}}&{{\mathbf{0}_{{1 \times 3}}}}&{m_{{wz}}^{1}}&{ - 1}&0&0& \cdots &0 \\ {{\mathbf{e}}_{{1 \times 3}}^{2}}&{{\mathbf{0}_{{1 \times 3}}}}&{{\mathbf{0}_{{1 \times 3}}}}&{m_{{wz}}^{2}}&{ - 1}&0&0& \cdots &0 \\ \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \cdots & \vdots \\ {{\mathbf{e}}_{{1 \times 3}}^{n}}&{{\mathbf{0}_{{1 \times 3}}}}&{{\mathbf{0}_{{1 \times 3}}}}&{m_{{wz}}^{n}}&{ - 1}&0&0& \cdots &0 \end{array}} \right],$$
(10)
$${\mathbf{X}}{\kern 1pt} {\kern 1pt} = {\kern 1pt} {\kern 1pt} \,{{\left[ {\begin{array}{*{20}{c}} {{{{\mathbf{x}}}_{{1 \times 3}}}}&{{{{\mathbf{v}}}_{{1 \times 3}}}}&{{{{\mathbf{a}}}_{{1 \times 3}}}}&{{\text{tr}}{{{\text{o}}}_{{{\text{wet}}}}}}&{\delta {{t}_{r}}}&{\begin{array}{*{20}{c}} {N_{{IF}}^{1}}&{N_{{IF}}^{2}}& \cdots &{N_{{IF}}^{n}} \end{array}} \end{array}} \right]}^{T}}{\kern 1pt} ,$$
(11)
$${\mathbf{P}} = \left[ {\begin{array}{*{20}{r}} {\delta _{{{{\varphi }_{c}}}}^{{1\,\,2}}}&{}&{}&{}&{}&{}&{}&{} \\ {}&{\delta _{{{{\varphi }_{c}}}}^{{2\,\,2}}}&{}&{}&{}&{}&{}&{} \\ {}&{}& \ddots &{}&{}&{}&{}&{} \\ {}&{}&{}&{\delta _{{{{\varphi }_{c}}}}^{{n\,\,2}}}&{}&{}&{}&{} \\ {}&{}&{}&{}&{\delta _{{{{P}_{c}}}}^{{1\,\,2}}}&{}&{}&{} \\ {}&{}&{}&{}&{}&{\delta _{{{{P}_{c}}}}^{{2\,\,2}}}&{}&{} \\ {}&{}&{}&{}&{}&{}& \ddots &{} \\ {}&{}&{}&{}&{}&{}&{}&{\delta _{{{{P}_{c}}}}^{{n\,\,2}}} \end{array}} \right],$$
(12)

where \({{{\mathbf{e}}}^{s}}\) is the unit vector from a satellite to the receiver, \(m_{{wz}}^{s}\) is the tropospheric wet mapping function, n is the number of satellites, \({{{\mathbf{x}}}_{{1 \times 3}}}\), \({{{\mathbf{v}}}_{{1 \times 3}}}\), \({{{\mathbf{a}}}_{{1 \times 3}}}\) are the vectors of the receiver displacement, velocity and acceleration, respectively; \({\text{tr}}{{{\text{o}}}_{{{\text{wet}}}}}\) is the tropospheric zenith wet delay, and \(\delta _{{{{\varphi }_{c}}}}^{{s\,\,2}}\) and \(\delta _{{{{P}_{c}}}}^{{s\,\,2}}\) are the noise covariances for the carrier phase and pseudo-range observations, respectively.

The state equation can be expressed as follows:

$${{{\mathbf{X}}}_{{ti}}} = {{{\mathbf{F}}}_{{ti}}}{{{\mathbf{X}}}_{{{{t}_{{i - 1}}}}}} + {{{\mathbf{W}}}_{{ti}}},\,\,\,\,{{{\mathbf{W}}}_{{ti}}} \sim {\mathbf{N}}(\mathbf{0},{{{\mathbf{Q}}}_{w}}),$$
(13)

where \({\mathbf{F}}\) is the transition matrix, and \({\mathbf{W}}\) is the process noise. The station dynamics are modelled using the Gauss–Markov second-order process, based on the assumption that the change in position, velocity or acceleration is random. The zenith tropospheric delay is represented by a random-walk process, the receiver clock bias is estimated epoch-by-epoch, and the ambiguity is constant. The transition matrix and process noise can be expressed as follows:

$${{{\mathbf{F}}}_{{ti}}} = \left[ {\begin{array}{*{20}{c}} {{{{\mathbf{E}}}_{{3 \times 3}}}}&{\tau {{{\mathbf{E}}}_{{3 \times 3}}}}&{0.5{{\tau }^{2}}{{{\mathbf{E}}}_{{3 \times 3}}}}&0&0&\mathbf{0} \\ 0&{{{{\mathbf{E}}}_{{3 \times 3}}}}&{\tau {{{\mathbf{E}}}_{{3 \times 3}}}}&0&0&\mathbf{0} \\ 0&0&{{{{\mathbf{E}}}_{{3 \times 3}}}}&0&0&\mathbf{0} \\ 0&0&0&1&0&\mathbf{0} \\ 0&0&0&0&0&\mathbf{0} \\ \mathbf{0}&\mathbf{0}&\mathbf{0}&\mathbf{0}&\mathbf{0}&{{{{\mathbf{E}}}_{{n \times n}}}} \end{array}} \right],$$
(14)
$${{{\mathbf{Q}}}_{w}} = \tau {\kern 1pt} \left[ {\begin{array}{*{20}{c}} {\frac{{{{\tau }^{4}}}}{{20}}q_{a}^{2}{{{\mathbf{E}}}_{{3 \times 3}}}}&{\frac{{{{\tau }^{3}}}}{8}q_{a}^{2}{{{\mathbf{E}}}_{{3 \times 3}}}}&{\frac{{{{\tau }^{2}}}}{6}{\kern 1pt} q_{a}^{2}{{{\mathbf{E}}}_{{3 \times 3}}}}&0&0&{\mathbf{0}\,\,\,\,\,} \\ {\frac{{{{\tau }^{3}}}}{8}q_{a}^{2}{{{\mathbf{E}}}_{{3 \times 3}}}}&{\frac{{{{\tau }^{2}}}}{3}q_{a}^{2}{{{\mathbf{E}}}_{{3 \times 3}}}}&{\frac{{{{\tau }^{1}}}}{2}{\kern 1pt} q_{a}^{2}{{{\mathbf{E}}}_{{3 \times 3}}}}&0&0&{\mathbf{0}\,\,\,\,\,} \\ {\frac{{{{\tau }^{2}}}}{6}q_{a}^{2}{{{\mathbf{E}}}_{{3 \times 3}}}}&{\frac{{{{\tau }^{1}}}}{2}q_{a}^{2}{{{\mathbf{E}}}_{{3 \times 3}}}}&{q_{a}^{2}{{{\mathbf{E}}}_{{3 \times 3}}}}&0&0&{\mathbf{0}\,\,\,\,\,} \\ 0&0&0&{q_{Z}^{2}}&0&{\mathbf{0}\,\,\,\,\,} \\ 0&0&0&0&{q_{t}^{2}}&{\mathbf{0}\,\,\,\,\,} \\ \mathbf{0}&\mathbf{0}&\mathbf{0}&\mathbf{0}&\mathbf{0}&{{\mathbf{0}_{{n \times n}}}} \end{array}} \right],$$
(15)

where \(\tau \) is the sampling interval, \({\mathbf{E}}\) is the identity matrix, \(\mathbf{0}\) is the zero matrix, and \({{q}_{a}}\), \({{q}_{z}}\) and \({{q}_{t}}\) are the power density of acceleration, tropospheric and receiver clock noises, respectively.

We take into account the changes in the used satellites. When a new satellite rises or an old satellite falls, the vector (11) and the matrices (10), (12), (14), (15) will change to adapt to the current constellation.

With equation (9) as the observation equation and equation (13) as the state equation, the GPS velocity can be easily obtained using a Kalman filter, which can be summarized as follows [21]:

Time update:

$${\mathbf{X}}_{{ti,{{t}_{{i - 1}}}}}^{{{'}}} = {{{\mathbf{F}}}_{{ti}}}{\mathbf{X}}_{{{{t}_{{i - 1}}}}}^{{{'}}},$$
(16)
$${{{\mathbf{Q}}}_{{ti,{{t}_{{i - 1}}}}}} = {{{\mathbf{F}}}_{{ti}}}{{{\mathbf{Q}}}_{{{{t}_{{i - 1}}}}}}{\mathbf{F}}_{{ti}}^{T} + {{{\mathbf{Q}}}_{w}}.$$
(17)

Measurement update:

$${{{\mathbf{K}}}_{{ti}}} = {{{\mathbf{Q}}}_{{ti,{{t}_{{i - 1}}}}}}{\mathbf{A}}_{{ti}}^{T}{{({{{\mathbf{A}}}_{{ti}}}{{{\mathbf{Q}}}_{{ti,{{t}_{{i - 1}}}}}}{\mathbf{A}}_{{ti}}^{T} + {{{\mathbf{P}}}_{{ti}}})}^{{ - 1}}},$$
(18)
$${\mathbf{X}}_{{ti}}^{{{'}}} = {\mathbf{X}}_{{ti,{{t}_{{i - 1}}}}}^{{{'}}} + {{{\mathbf{K}}}_{{ti}}}({{{\mathbf{L}}}_{{ti}}} - {{{\mathbf{A}}}_{{ti}}}{\mathbf{X}}_{{ti,{{t}_{{i - 1}}}}}^{{{'}}}),$$
(19)
$${{{\mathbf{Q}}}_{{ti}}} = ({\mathbf{E}} - {{{\mathbf{K}}}_{{ti}}}{{{\mathbf{A}}}_{{ti}}}){{{\mathbf{Q}}}_{{ti,{{t}_{{i - 1}}}}}},$$
(20)

where \({\mathbf{X}}{\kern 1pt} '\) is the estimation value of the vector, \({\mathbf{X}}\), \({\mathbf{Q}}\) is the estimation error covariance, \({\mathbf{K}}\) is the Kalman filter gain, and \({\mathbf{P}}\) is the measurement noise covariance.

DATA PROCESSING AND PERFORMANCE ANALYSIS

Data processing strategy. Static and vehicle kinematic experiments were conducted using three velocity measurement methods. The static experiment utilized two sets of data; one set included that of 10 Multi-GNSS Experiment (MGEX) stations on 7 days, from March 24 till March 30, 2018, with a sampling interval of 30 s, whereas the other data set was collected from a base station on March 30, 2018, from UTC 6:46:18–13:14:44, with a sampling interval of 1 s.

The vehicle kinematic experiment was conducted in Beijing on March 30, 2018, from UTC 10:00–12:00, with a sampling interval of 1s. Figure 1 shows the motion trajectory of the vehicle.

Fig. 1.
figure 1

Motion track of the vehicle.

The TDCPVE uses the least squares method for parameter estimation. The parameters to be estimated are \(\Delta {\mathbf{r}}\) and \(\Delta \delta {{t}_{r}}_{{(t1,2)}}\). In order to improve the accuracy of the velocity measurement, the carrier phase IF observation is used for correcting the change in ionospheric delay; the change in tropospheric delay is corrected by the Saastmoinen model and GMF projection function [22]. The DopplerVE uses the least squares method for parameter estimation. The parameters to be estimated are \({v}\) and \({{\mathop {\delta t}\limits^\centerdot }_{r}}\).

Its accuracy is mainly affected by the accuracy of the Doppler observation noise level, and the changes in the ionospheric and tropospheric delays are negligible. The PPPVE uses the Kalman filter algorithm for parameter estimation. The IF observations are used to correct the ionospheric delay; the zenith tropospheric dry delay and the partial wet delay are corrected by the Saastmoinen model and GMF projection function. The residual wet delay is estimated by the random walk model, the receiver clock offset is estimated by the Gaussian white noise model, and the carrier phase ambiguities are estimated as a constant for each epoch. The experiment was based on the precision orbit and clock products provided by the IGS, which can only be used for post-processed applications. Table 1 lists the detailed data processing strategies for the three methods.

Table 1.   Data processing strategies for the three velocity estimation models
Table 2.   Seven-day dynamic velocity RMS of 10 MGEX stations obtained using the three velocity estimation methods (sampling interval 30 s)

Performance analysis under simulated kinematic conditions using static data. The true value of velocity is considered to be zero under the simulated kinematic conditions using static data. With the data of the ALIC station on March 24, 2018 as an example, the velocity images of the three methods for the N, E, and U components are depicted in Fig. 2. We focus on the maximum velocity of three methods: those of the TDCPVE were always within 2 mm/s horizontally and 2 cm/s vertically; for the DopplerVE, they were always within 5 cm/s horizontally and 2 dm/s vertically; and for the PPPVE, they were always within 1 mm/s horizontally and 2 mm/s vertically. With respect to the maximum velocity, that of the DopplerVE is the largest, while that of the PPPVE is smaller than that of the TDCPVE.

Fig. 2.
figure 2

Dynamic velocity images obtained using the three velocity estimation methods at ALIC station on March 24, 2018.

Table 2 shows the 7-day velocity statistical results of 10 MGEX stations in terms of the RMS. The accuracies of the TDCPVE and PPPVE reach a few mm/s, whereas that of the DopplerVE is approximately cm/s, with the horizontal components superior to the vertical ones. Between the PPPVE and TDCPVE, the accuracy of the TDCPVE is equal to that of the PPPVE horizontally, while in vertical direction, the accuracy of the PPPVE is superior to that of the TDCPVE.

Figure 3 shows the velocities of different stations, which can be used for further analyses on the performances of different methods. For the TDCPVE, there are five stations with velocities less than 2 mm/s, accounting for 50% of the total number of stations; for the DopplerVE, the velocities of all the stations are within 1–4 cm/s, and for the PPPVE, the velocities of eight stations are less than 2 mm/s, accounting for 80% of the total number of stations. At the same time, there are seven stations with less velocities than those of the TDCPVE, accounting for 70% of the total number of stations. Thus, for different stations, the accuracy of the DopplerVE is the least, while the PPPVE results are more stable than those of the TDCPVE.

Fig. 3.
figure 3

RMS of the dynamic velocities of the three velocity estimation methods for each station.

Since the velocity is instantaneous, a 1 s sampling interval is generally used in kinematic applications. Table 3 lists the velocities of the base station. When the sampling interval is 1 s, the accuracies of the three velocity estimation methods, ranked high-to-low is PPPVE, TDCPVE, and DopplerVE. Thus, under simulated kinematic conditions using static data, the accuracy of the DopplerVE is the least, while that of the PPPVE is more stable than that of the TDCPVE, and can be used for seismic and deformation monitoring and in other fields.

Table 3.   RMS of the dynamic velocity of the base station obtained using the three velocity estimation methods (sampling interval 1 s)

As per the above discussion, under kinematic conditions using static data, the PPPVE can be used to obtain more accurate and stable velocity; however, it requires dual-frequency pseudo-range and carrier phase observations, whereas most low-cost receivers can only receive single-frequency observations. Although the DopplerVE works with single-frequency observations, its accuracy is not ideal. The TDCPVE uses dual-frequency carrier phase IF observations to correct the ionospheric-delay changes. Within a short duration, the change in the atmosphere is less. Thus, we will further analyse the influence of the ionospheric-delay changes on the velocity measurement accuracy at different sampling intervals using the TDCPVE.

Table 4 provides the base station dynamic velocity, using L1 and IF observations at different sampling intervals. When the sampling interval is 1 s, the dynamic velocity, using the L1 and IF observations, are nearly the same. As the sampling interval increases, the dynamic-velocity accuracy using IF observations is better than that using L1 observations.

Table 4.   RMS results of the dynamic velocity obtained using L1 and IF observations at different sampling intervals by TDCPVE

Figures 4a and 4b show the dynamic velocity images, using L1 and IF observations, when the sampling interval is 1 s and 30 s, respectively. The images, using L1 and IF observations, are nearly the same when the sampling interval is 1 s; however, when the sampling rate is 30 s, the L1 image has large fluctuations compared to the IF image.

Fig. 4.
figure 4

(a) Images of the dynamic velocity obtained using L1 and IF observations by TDCPVE with the sampling interval of 1 s. (b) Images of the dynamic velocity obtained using L1 and IF observations by TDCPVE with the sampling interval of 30 s.

Therefore, when the sampling interval is 1 s, the ionospheric-delay change in the TDCPVE model can be neglected, and high-precision dynamic velocity can be obtained with a single-frequency receiver, which can reduce the cost considerably. As the sampling interval increases, ionospheric-delay change corrections can render the dynamic velocity more stable and accurate. It should be noted that such large-interval solutions are for the cases of slow motion, when the velocity within the sampling interval can be deemed constant.

Performance analysis for kinematic data. Because of the high positioning accuracy of the IE solution, the IE position-differenced velocity is considered as the reference. Figure 5 shows the IE position-differenced velocity image. It can be seen that the vehicle is in a motion-stationary-motion state, running back and forth on a road with a total length of approximately 900 m. The velocity of the vehicle in the E and N components are approximately 4 and 6 m/s, respectively; since the road is flat, the velocity of the vehicle is considerably small in the vertical component.

Fig. 5.
figure 5

IE position-differenced velocity image of the vehicle for the N, E, and U components, respectively.

Figure 6 shows the deviation images between the velocities obtained using the three methods and the IE position-differenced velocity. According to Figs. 5 and 6, when the vehicle is in a static state, the velocity deviations are very small. When the vehicle is in a moving state, the velocity deviations are considerable and include relatively large spikes. These spikes coincide with each other and exhibit certain regularity.

Fig. 6.
figure 6

Deviation images between the velocities of the vehicle, obtained using the three methods and the IE position-differenced velocity for the N, E, and U components, respectively.

In order to further study the causes of these spikes, Fig. 7 depicts the relationship between the deviations of these three methods and the IE position-differenced velocity. To facilitate comparison, the deviation images are amplified by the corresponding multiple. It follows from Fig. 7 that the deviations increase sharply when the vehicle turns on a corner, and those of the TDCPVE are less. This is because the IE position-differenced velocity and the TDCPVE results are the average velocity in the sampling interval, while the DopplerVE and PPPVE results are the instantaneous velocity; when the vehicle turns and the velocity changes rapidly, the average and instantaneous velocities will differ considerably. This demonstrates that the accuracy of the velocity measurement depends on the motion state of the receiver.

Fig. 7.
figure 7

Relationship between deviation of the three methods and the IE position-differenced velocity of the vehicle.

Table 5 shows the corresponding deviation RMS results of the three methods for the N, E, and U components. We eliminated the turning-time data and the intermediate static data, assuming that the vehicle was in a low dynamic state. Table 6 lists the velocity deviations of the three methods for the N, E, and U components. Compared to Table 5, the respective accuracies of the TDCPVE, DopplerVE, and PPPVE improved to 60, 57, and 68%; 40, 34, and 13%; and 26, 37, and 17% for the N, E and U components, respectively. After eliminating the turning data, the coincidence accuracy between the three methods and IE improved, further proving that the velocity estimation accuracy is related to the motion state of the carrier.

Table 5.   Deviation RMS between the velocities of the vehicle, obtained using the three methods and the IE position-differenced velocity for the N, E, and U components, respectively
Table 6.   Deviation RMS between the velocities of the vehicle, obtained using the three methods and the IE position-differenced velocity for the N, E, and U components, respectively, after eliminating the turning data

In summary, the coincidence between the velocities obtained using the three methods and the IE position-differenced velocity, ranked high-to-low, are TDCPVE, PPPVE, and DopplerVE. The TDCPVE and IE position-differenced velocities are both average velocities, while the PPPVE and DopplerVE velocities are instantaneous velocities; therefore, the TDCPVE velocity has higher coincidence with the IE position-differenced velocity. To illustrate this point, we further calculate the coincidence between the DopplerVE and PPPVE. Before excluding the turning data, the coincidence between the DopplerVE and PPPVE was 3.7, 5.1, and 5.8 cm/s for the N, E, and U components, respectively, whereas after eliminating the turning data, it was 3.2, 3.9, and 4.6 cm/s, respectively. It can be seen that the coincidence between the DopplerVE and PPPVE is higher than that between the DopplerVE and IE.

To assess the performances of the three models, previous data testing was based on the precision orbit and clock products provided by the IGS which can only be used for post-processed applications. However, in several practical applications, such as vehicle navigation and positioning, we need to obtain the precise velocity in real time. Table 7 shows the velocity deviation of the TDCPVE-IE and DopplerVE-IE using broadcast ephemerides and satellite clock parameters. Comparing the Tables 7 and 5, the DopplerVE velocity obtained using the broadcast and precise ephemerides are nearly the same; the velocity of the TDCPVE obtained using the broadcast and precise ephemerides are of the same order of magnitude. Thus, the TDCPVE and DopplerVE can be used for real-time precise velocity measurement.

Table 7.   Velocity deviation RMS of the TDCPVE-IE and DopplerVE-IE in the N, E, and U components using broadcast ephemerides

CONCLUSIONS

The TDCPVE, DopplerVE, and PPPVE are three commonly used single-point precise velocity measurement methods. This paper analysed the performances of these three velocity estimation methods, and arrived at the following conclusions.

(1) Under simulated kinematic conditions using static data, with the true value of the velocity considered to be zero, the respective accuracies of the TDCPVE, DopplerVE, and PPPVE for the N, E and U components were 0.05, 0.04, and 0.28 cm/s, 0.98, 0.75, and 2.06 cm/s, and 0.05, 0.04, and 0.16 cm/s, respectively. The accuracy of the DopplerVE was the worst, and the PPPVE was nearly the same as the TDCPVE.

(2) Under kinematic conditions, considering the position-differenced velocity calculated by the IE post-processing software as the reference, the RMS of the respective velocity discrepancies between IE and TDCPVE, DopplerVE, and PPPVE, for the N, E and U components, were 1.0, 0.7 and 4.0 cm/s, 6.7, 5.3, and 5.3 cm/s, and 2.7, 2.7 and 3.0 cm/s, respectively. The coincidence between the velocities obtained using the three methods and the IE position-differenced velocity, ranked from high-to-low, were TDCPVE, PPPVE, and DopplerVE. This is because the TDCPVE and IE position-differenced velocities are both average velocities, while those of the PPPVE and DopplerVE are instantaneous velocities. Correspondingly, the coincidence between the DopplerVE and PPPVE is higher than that between the DopplerVE and IE.

(3) The accuracies of the three methods are related to the motion state of the mobile carrier (such as acceleration and turning). When the mobile carrier turns frequently, the velocity discrepancies between the three velocity estimation methods and the IE position-differenced velocity increases.

(4) When the sampling interval is 1 s, the TDCPVE can obtain the precise velocity using a single-frequency stand-alone GPS receiver; TDCPVE and DopplerVE can obtain accuracies of the same order of magnitude using broadcast and precise ephemerides, and it is convenient for real-time velocity measurements; PPPVE can obtain not only the accurate position, but also the accurate velocity, and can be used for seismic and deformation monitoring, and in other fields.