Introduction

Location-based services (LBS) are widely used outdoors since the Global Navigation Satellite System (GNSS) was developed. However, the GNSS does not work inside the buildings due to the signal blockage. A ground-based positioning system is frequently investigated to extend LBS to the indoor environment. A ground-based positioning system with a similar positioning principle as the GNSS can generate and transmit code and phase measurements to allow positioning. Its network consists of numerous transmitters and receivers. The flexible deployment of its transmitters enables the ground-based network to work in various environments.

Like the GNSS, the carrier phase is the key for a ground-based positioning system to achieve precise indoor positioning, and the development of ground-based carrier phase positioning is given in the supplement. Each primary error source in the phase measurements needs to be considered and adequately handled. Unlike the GNSS, the orbital and ionospheric errors do not apply to the ground-based positioning. The tropospheric error can be efficiently addressed (Choudhury et al. 2009; Liu et al. 2018). The clock error can pose a severe impact on ground-based positioning accuracy. It is intractable since an inexpensive, and thus typically a low-quality clock is always used in a ground-based positioning system, but it has been studied and addressed by the synchronization techniques (Barnes et al. 2003; Powers et al. 2016; Sun et al. 2021). By contrast, the multipath error is challenging to model and solve, especially in an indoor environment.

Since the indoor environment is enclosed, signal reflection on the surface becomes unavoidable, and the multipath error is more severe than outdoors. It results in a path delay that is the difference in transmission path length between direct and reflected signals. The path delay causes a range error for both code and phase measurements. Consequently, it results in an inevitable positioning error caused by either multipath or non-line-of-sight (NLOS). Multipath occurs when the signals are received via multiple paths and therefore consist of direct and reflected signals. NLOS only, however, is present when only reflected signals are received, and direct signals are blocked. The carrier phase range error cannot be directly estimated based on the path delay, unlike the code measurement error. Hence, it needs to be considered in a different way. According to some studies, the multipath effect on the carrier phase is frequency dependent (Rost et al. 2009), and the range error is limited to a quarter of a wavelength if the direct signal is stronger than the reflected (Groves et al. 2013; Strode et al. 2016). However, it easily extends to half a wavelength if the direct signal is blocked (Groves et al. 2013). Thus, the positioning deviations raised by the multipath and NLOS signals are the major errors for the precise indoor positioning.

Unlike other errors, the removal of multipath and NLOS signals cannot reply on a differencing technique. Some existing outdoor multipath and NLOS mitigation methods have been well studied, but each has limitations (Groves et al. 2013). These existing outdoor multipath mitigation methods are described in the supplement. All the existing methods are better suited for outdoor use. Many of them cannot be simply replicated to mitigate the indoor multipath effect.

Stochastic modeling has been widely studied for outdoor multipath mitigation at the observable level. It is popular since it only focuses on weighting the variances of observations without requiring additional hardware. The equal-weight stochastic model treats all the variances of phase measurements equally, which is not realistic in an indoor environment since the error caused by either the multipath or the NLOS signal is not the same for each observable. The elevation model is generally used for mitigating unmodeled errors since the precisions of the GNSS observables are elevation dependent (Jin et al. 1996; Li et al. 2008, 2016). Carrier-to-noise power density ratio (C/N0) is one of the GNSS measurements. The C/N0 can perform multipath detection with multiple-frequency signals (Strode et al. 2016; Zhang et al. 2018). It can also be directly used in stochastic modeling for reducing unmodeled errors (Hartinger et al. 1999). However, the C/N0 can change due to the noise-changing effects, such as the interference, antenna temperature, satellite movement, antenna type, jamming, spoofing, ionospheric scintillations, and system noise. Therefore, the method is generally limited and may lead to false alarms.

Stochastic modeling is more suitable and realistic for a ground-based positioning system to mitigate indoor multipath than other techniques. C/N0 is one of the observables obtained from a ground-based positioning system. It can be routinely received together with the phase observable by the same tracking loops in a receiver. Hence, it remains consistent with the precision of the phase observable. Also, the C/N0 varies depending on the delay caused by the multipath or NLOS signal (Bilich et al. 2008). It departs from its nominal value in either an increasing or decreasing trend consistent with the multipath influence (Groves et al. 2013; Smyrnaios et al. 2013). Thus, a new stochastic model is proposed to mitigate indoor multipath and NLOS signal errors by fully utilizing the relationship between the C/N0 and multipath. The proposed new stochastic model is quite different from the outdoor C/N0-based model.

In this study, a model for estimating the nominal value of the uncorrupted C/N0 is established first. The difference between a nominal and an observed C/N0 can be estimated in a proposed weighting function based on the established model. After that, the estimated difference is used to determine the variance of each phase measurement caused by the indoor multipath or NLOS signals. However, the proposed weighting function efficiency depends highly on the C/N0 reception quality.

The received C/N0 contains the amplitude of the composite signal and the phase shift between the direct and reflected signals. The amplitude is impacted by the gain pattern of a receiving antenna; their relationship has been studied (Bilich et al. 2008; Smyrnaios et al. 2013). The studies find that the received C/N0 value can differ from the expected, elevation-dependent value due to the much smaller receiving antenna gain at low elevation angles. This must be considered in the proposed stochastic model. Therefore, the elevation-dependent model using calculated C/N0 needs to be considered in addition to the proposed C/N0-based model at low elevation angles. These two parts constitute the proposed stochastic model, which is the core concept proposed in this work. They are mutually compatible and complementary in an efficient way to weigh the realistic precisions of the ground-based phase observables. By comparison with existing stochastic models in static and kinematic experiments with the data collected by a single-frequency receiver, it is worth mentioning that our proposed approach performs well in reducing the range errors caused by the indoor multipath or NLOS signals and reliably maintains precise indoor positioning as expected.

Note that the nominal C/N0 estimated from our derived model is hardware dependent, requiring calibration for re-estimating the theoretical C/N0 when the hardware is changed. Furthermore, a ground-based C/N0 observable is also affected by several noise-changing effects. The antenna temperature and system noise may be slightly different if the receiver antenna is changed. The interference signal can cause a distorted ground-based navigation signal and consequently change the corresponding C/N0 value (Deshpande et al. 2004). Therefore, it is necessary to pay attention to any of the mentioned noise-changing effects since the proposed method only focuses on the variation of the C/N0 observable caused by the multipath signal.

First, we start with the functional and stochastic models for the ground-based phase observables. Then, we derive the model for estimating the nominal C/N0 value for each phase observable; the estimated nominal C/N0 can be used to measure the extent of the contamination by the indoor multipath or NLOS signal. Next, our proposed stochastic model is established and elaborated. Afterward, static and kinematic experiments are conducted to verify the performance of the proposed model by comparing the results with other existing stochastic models. In the end, the conclusions and summary are given.

Mathematical models for indoor phase observables

The carrier phase is the best observable for obtaining precise indoor positioning with a ground-based positioning system. A certain number of ground-based transmitters and user receivers constitute the ground-based network, where the receivers can obtain the phase measurements.

Undifferenced functional model

The epoch-based phase observable collected from a receiver at a single frequency can be modeled as

$$ \phi_{R,t}^{k} = \frac{1}{\lambda }(r_{R,t}^{k} + \varepsilon_{{{\text{trop}}}} + c \cdot \tau_{R} - c \cdot \tau_{t}^{k} ) + N_{R}^{k} + \varepsilon_{R,t}^{k} $$
(1)

where \(\phi_{R,t}^{k}\) is the observed phase measurement between kth transmitter and receiver R at epoch t, \(r_{R,t}^{k}\) is the geometric range between kth transmitter and receiver R at epoch t, \(\lambda\) is the phase wavelength, c is the speed of light, \(\varepsilon_{{{\text{trop}}}}\) is the tropospheric error that can be estimated (Choudhury et al. 2009), \(\tau_{R}\) is the receiver clock bias, \(\tau_{t}^{k}\) is the kth transmitter clock bias at epoch t, \(N_{R}^{k}\) is the integer ambiguity between kth transmitter and receiver R, and \(\varepsilon_{R,t}^{k}\) is the unmodeled multipath error at epoch t.

The differencing technique has been widely used to remove clock errors, but it has no impact on eliminating the multipath or NLOS effect. Furthermore, it combines the multipath errors from different phase observables. Thus, an undifferenced functional model is considered.

Equation (1) can be expressed in a linearized form by applying Taylor series expansion as

$$ \phi_{R,t}^{k} = \lambda^{ - 1} \left( {r_{R,t - 1}^{k} + \frac{{\partial r_{R,t - 1}^{k} }}{{\partial x_{R,t} }}(x_{R,t} - x_{R,t - 1} ) + \frac{{\partial r_{R,t - 1}^{k} }}{{\partial y_{R,t} }}(y_{R,t} - y_{R,t - 1} ){\kern 1pt} + \frac{{\partial r_{R,t - 1}^{k} }}{{\partial z_{R,t} }}(z_{R,t} - z_{R,t - 1} )} \right) + \lambda^{ - 1} (c \cdot \tau_{R} - c \cdot \tau_{t}^{k} ) + N_{R}^{k} + \varepsilon_{R,t}^{k} $$
(2)

where (\(x_{R,t}\), \(y_{R,t}\), \(z_{R,t}\)) and (\(x_{R,t - 1}\), \(y_{R,t - 1}\), \(z_{R,t - 1}\)) are the receiver coordinates at epoch t and t-1, respectively. The linearized functional model can achieve ground-based precise point positioning by using the indoor precise point positioning—real-time kinematic (iPPP-RTK) method once all the primary errors are adequately handled (Sun et al. 2021).

The integer ambiguity shown in (2) can be resolved by the existing methods, such as on-the-fly, known-point-initialization, and dynamic key point initialization (Wang et al. 2019; Guo et al. 2018; Montillet et al. 2009). The clock error originating among ground-based transmitters can cause a significant positioning error and must be addressed. This transmitter clock bias can be compensated by ground-based synchronization techniques (Barnes et al. 2003; Liu et al. 2018), or calibrated and corrected by the iPPP-RTK method in a ground-based network (Sun et al. 2021). The receiver clock bias can be treated as an unknown parameter and solved together with the receiver coordinates by least squares (LS). An appropriate stochastic model is necessary for LS estimation.

Stochastic model

The stochastic model plays a vital role in parameter estimation. Unlike a functional model that focuses on the mathematical relationship, a stochastic model defines and weighs the statistical properties of the measurements by an appropriate variance–covariance matrix (Wang et al. 2002). The stochastic model for the undifferenced phase observables can be described as

$$ D = \sigma_{0}^{2} P^{ - 1} = \left[ {\begin{array}{*{20}c} {\sigma_{1}^{2} } & 0 & \cdots & 0 \\ 0 & {\sigma_{2}^{2} } & \cdots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & \cdots & 0 & {\sigma_{n}^{2} } \\ \end{array} } \right] $$
(3)

where \(\sigma_{0}^{2}\) is the priori variance factor, \(P\) is the weight matrix, n is the number of the phase measurements, and \(\sigma_{n}^{2}\) is the weighted variance of the nth phase measurement.

A functional model cannot fully address an observable variance caused by unmodeled errors. A stochastic model is essential for each observable to properly weigh its variance and make a more realistic contribution to the final LS solution. Hence, a stochastic model with an appropriate weighting function can mitigate the positioning errors caused by the indoor multipath and NLOS signals.

The existing equal-weight (EWM), elevation-dependent (EDM), and C/N0-based (CBM) stochastic models that are described in the supplement may mitigate the errors caused by the multipath or NLOS signals in some cases, but their consistent performance in reliability and sustainability cannot be expected (Zhang et al. 2018; Xi et al. 2020). Therefore, a more reliable stochastic model needs to be considered.

A mitigation method for phase multipath and NLOS

A new stochastic model used for mitigating the errors in the ground-based carrier phase measurements caused by the indoor multipath or NLOS signals is proposed at the observable level. The ground-based C/N0 observation is utilized to establish the new stochastic model by developing the weighting function based on the relationship between the C/N0 and multipath, which is different from the existing models.

Indoor phase multipath and NLOS

A receiver always receives a composite signal inside a ground-based network containing direct and reflected signals from multiple paths. Following Rost et al. (2009) and Zhang et al. (2018), the composite signal can be expressed as

$$ S_{{\text{c}}} = S_{{\text{d}}} + S_{{\text{r}}} = A_{{\text{d}}} \cos \varphi_{{\text{d}}} + A_{{\text{r}}} \cos (\varphi_{{\text{d}}} + \Delta \varphi_{{\text{r}}} ) $$
(4)

where \(S_{{\text{c}}}\) is the composite signal. \(S_{{\text{d}}}\) and \(S_{{\text{r}}}\) are the direct and reflected signals, respectively. \(A_{{\text{d}}}\) and \(A_{{\text{r}}}\) are the amplitudes of the direct and reflected signals, \(\varphi_{{\text{d}}}\) is the phase of the direct signal, and \(\Delta \varphi_{{\text{r}}}\) is the phase delay caused by the reflected signal. \(S_{{\text{c}}}\) = \(S_{{\text{r}}}\) = \(A_{{\text{r}}} \cos (\Delta \varphi_{{\text{r}}} )\) when NLOS occurs. As known, a phase delay is generally expressed as

$$ \Delta \varphi_{{\text{r}}} = \frac{2\pi }{\lambda }(L_{{\text{r}}} - L_{{\text{d}}} ) $$
(5)

where \(L_{{\text{r}}} - L_{{\text{d}}}\) represents the path delay. According to (5), the phase delay caused by a reflected signal depends on the phase wavelength and the ground-based geometry. The reflected signal results in an unignorable phase error, which is reported as

$$ \delta \varphi = \arctan \left( {\frac{{A_{{\text{r}}} \sin (\Delta \varphi_{{\text{r}}} )}}{{A_{{\text{d}}} + A_{{\text{r}}} \cos (\Delta \varphi_{{\text{r}}} )}}} \right) $$
(6)

where \(\delta \varphi\) is the phase error. When NLOS occurs, the phase error is \(\delta \varphi\) = \(\Delta \varphi_{r}\). The signal strength of a composite signal can be described by an amplitude A, expressed as

$$ A_{{\text{c}}} = \sqrt {A_{{\text{d}}}^{2} + A_{{\text{r}}}^{2} + 2A_{{\text{d}}} A_{{\text{r}}} \cos (\Delta \varphi_{{\text{r}}} )} $$
(7)

where \(A_{{\text{c}}}\) is the amplitude of a composite signal. In (7), \(A_{{\text{c}}}\) = \(A_{{\text{r}}}\) when only an indirect signal is received.

Ground-based C/N 0

C/N0, which is the ratio of signal power to noise power in a 1 Hz bandwidth at radio frequency (RF), is more commonly used to describe the signal quality than signal-to-noise ratio (SNR) at baseband (Sharawi et al. 2007).

The noise power is several magnitudes smaller than the signal power since the noise power is raised by natural causes and receivers (Rost et al. 2009). Thus, C/N0 (C is the signal power, N0 is the noise power spectral density (normalized noise level relative to 1 Hz)) can be used as the measurement of a composite signal with the expression as (Bilich et al. 2007, 2008; Zhang et al. 2018)

$$ C/N_{0}^{2} = A_{{\text{c}}}^{2} = A_{{\text{d}}}^{2} + A_{{\text{r}}}^{2} + 2A_{{\text{d}}} A_{{\text{r}}} \cos (\Delta \varphi_{{\text{r}}} ) $$
(8)

where \(C/N_{0}^{2}\) represents the signal power. In (8), C/N0 = \(A_{{\text{d}}}\) when there is no reflected signal, it is considered a nominal C/N0. C/N0 = \(A_{{\text{r}}}\) if NLOS is captured. Most importantly, it can be found that C/N0 will depart from its nominal value once the indoor multipath or NLOS occurs. The variation of C/N0 can be used in a weighting function to reflect the realistic multipath or NLOS errors. Thus, the nominal value of C/N0 needs to be estimated first.

Model of nominal C/N 0

Unlike the outdoor estimation, the nominal C/N0s for a ground-based system cannot be estimated by a suitable polynomial fit to large data collected in a low multipath environment and relying on continuous movements of satellites over 24 h (Strode et al. 2016; Zhang et al. 2018). A realistic way needs to be considered for a ground-based system in an indoor environment.

According to the modified Friis free-space propagation model, the strength of a direct signal transmitted from a transmitter to a receiver can be written as (Viswanathan 2013)

$$ P_{{\text{r}}} = \frac{{P_{{\text{t}}} G_{{\text{t}}} G_{{\text{r}}} \lambda^{2} }}{{(4\pi )^{2} d^{n} L}} $$
(9)

where \(P_{{\text{r}}}\) and \(P_{{\text{t}}}\) are the received and transmitted signal powers in Watts. \(G_{{\text{t}}}\) and \(G_{{\text{r}}}\) are the antenna gains for a transmitter and a receiver, respectively. \(\lambda\) is the wavelength, d is the distance between a receiver and a transmitter antenna, n is the path loss exponent that is environment dependent, and L represents other losses that are not included in the path loss. Equation (9) is usually written in logarithm scale for convenience as (Viswanathan 2013)

$$ {[}P_{{\text{r}}} {]}_{{{\text{dB}}}} = [P_{{\text{t}}} ]_{{{\text{dB}}}} + [G_{{\text{t}}} ]_{{{\text{dB}}i}} + [G_{{\text{r}}} ]_{{{\text{dB}}i}} - 10\log_{10} L + 20\log_{10} (\lambda ) - 20\log_{10} (4\pi ) - 10n\log_{10} d $$
(10)

where \(P_{{\text{r}}}\) and \(P_{{\text{t}}}\) are specified in dB (unit power). \(G_{{\text{r}}}\) and \(G_{{\text{t}}}\) are described in dBi (gain in decibels with respect to an isotropic antenna). As known, SNR is the ratio of signal power to noise power in dB; it can be re-written with the received signal power as

$$ [{\text{SNR}}]_{{{\text{dB}}}} = [P_{{\text{r}}} ]_{{{\text{dB}}}} - [N]_{{{\text{dB}}}} $$
(11)

where \([P_{{\text{r}}} ]_{{{\text{dB}}}}\) and \([N]_{{{\text{dB}}}}\) represent the received signal and noise power in dB, respectively. Substituting (11) into (10) yields an SNR related equation as

$$ {[}{\text{SNR}}_{\text{dB}}{]} = [P_{t} ]_{{{\text{dB}}}} + [G_{t} ]_{{{\text{dB}}i}} + [G_{r} ]_{{{\text{dB}}i}} - 10\log _{{10}} L - [N]_{{{\text{dB}}}} + 20\log _{{10}} (\lambda ) - 20\log _{{10}} (4\pi ) - 10n\log _{{10}} d $$
(12)

where \([{{SNR}}]_{{{{dB}}}}\) is presented in the logarithm scale. The relationship between C/N0 and SNR is described as (Sharawi et al. 2007)

$$ C/N_{0} \,\,({\text{dB}} - {\text{Hz}}) = {\text{SNR}}\,\,({\text{dB}}) + 10\log_{10} \left( {\frac{2 \cdot NBW}{{f_{s} \cdot \tau }}} \right) $$
(13)

where NBW represents the noise bandwidth, \(f_{{\text{s}}}\) is the sampling frequency, and \(\tau\) is a sampling-associated accumulation period. Combining (12) and (13), one obtains a C/N0-related function as

$$ \begin{aligned} C/N_{0} & = [P_{{\text{t}}} ]_{{{\text{dB}}}} + [G_{{\text{t}}} ]_{{{\text{dB}}i}} + [G_{{\text{r}}} ]_{{{\text{dB}}i}} - 10\log_{10} L - [N]_{{{\text{dB}}}} + 10\log_{10} \left( {\frac{2 \cdot NBW}{{f_{s} \cdot \tau }}} \right) \\ & \quad + 20\log_{10} (\lambda ) - 20\log_{10} (4\pi ) - 10n\log_{10} d \\ \end{aligned} $$
(14)

where the most items on the right side are constant for every C/N0 observable. However, the only variable is the distance between a transmitter and a receiver. Therefore, equation (14) can be further simplified as

$$ C/N_{{0{\text{nom}}}} = C/N_{0f} - 10n\log_{10} d $$
(15)

where \(C/N_{{0{\text{nom}}}}\) is the nominal value for each C/N0 observable, n is 2 for a direct signal. \(C/N_{0f}\) is a fixed C/N0 that represents all the stable factors for a ground-based system as shown in (14). It is not necessary to evaluate every item inside \(C/N_{0f}\), which can be treated as one unknown parameter for estimation. The transmitted signal power plays the dominant role in \(C/N_{0f}\); it makes \(C/N_{0f}\) to be constant between each transmitter and the receiver. Thus, the estimation of \(C/N_{0f}\) is required once without repeating in the future as \(C/N_{0f}\) is fixed. \(C/N_{0f}\) will be estimated in the experiment section and shown later. Once \(C/N_{0f}\) is known, the nominal C/N0 can be calculated based on (15) and used for the indoor multipath or NLOS detection and mitigation. Note that the implementation of (15) is under the condition \(d{ > }\lambda\).

Detection of multipath and NLOS

The severe contamination on every phase measurement caused by an inevitable reflected signal in an indoor environment imposes a significant threat to the positioning accuracy. Thus, the contamination caused by the indoor multipath or NLOS signal needs to be detected; it is assessed upon the estimated nominal C/N0 based on (15) as

$$ C/N_{0rc} = C/N_{{0{\text{nom}}}} - C/N_{{0{\text{obs}}}} + C/N_{0\varepsilon } $$
(16)

where \(C/N_{0rc}\) is the contaminated C/N0 by an indirect signal, \(C/N_{{0{\text{obs}}}}\) is the observed C/N0, and \(C/N_{0\varepsilon }\) is caused by the random noise. The influence of indoor multipath or NLOS can be assessed by \(C/N_{0rc}\), which could be either positive or negative depending on the constructive or destructive multipath, respectively. \(C/N_{0rc}\) is certainly positive for NLOS. The higher \(C/N_{0rc}\), the more severe influence gained from the multipath or NLOS signal, and vice versa. Note that the interference could disturb the detection results since the occurrence of this noise-changing effect increases the noise floor for the observed \(C/N_{{0{\text{obs}}}} .\) Therefore, the estimation of any interference from the potential noise-changing effect is required to ensure detection efficiency. It is not enough to merely assess the influence of the indoor multipath or NLOS effect; their mitigations are more important for achieving continuous precise indoor positioning.

Mitigation with stochastic modeling

A new C/N0-based weighting function is considered to perform the indoor multipath or NLOS mitigation in a way different from existing weighting functions. It is proposed based on the basic C/N0-based weighting function that is described as (Hartinger et al. 1999)

$$ \sigma^{2} = B \cdot 10^{{ - \frac{{C/N_{0} }}{10}}} $$
(17)

where \(\sigma^{2}\) is the variance of phase measurement,\(B\) is a constant coefficient including the carrier loop noise bandwidth and the conversion of cycle2/millimeter2.

Then, a realistic weighting function can be established according to the detection model based on the variation of an observed C/N0 from its nominal value due to the multipath or NLOS error; it is written as

$$ \sigma^{2} = \sigma_{rc}^{2} = \left| {B \cdot 10^{{ - \frac{{C/N_{{0{\text{nom}}}} }}{10}}} - B \cdot 10^{{ - \frac{{C/N_{{0{\text{obs}}}} }}{10}}} } \right| + \frac{{b_{0} }}{{\sin^{2} \theta }} $$
(18)

where \(\sigma_{rc}^{2}\) is the variance of a phase measurement caused by a reflected signal, \(b_{0}\) is a constant parameter, \(\theta\) is the elevation angle between a ground-based transmitter and a receiver. \(\frac{{b_{0} }}{{\sin^{2} \theta }}\) is the simplified elevation-dependent model (Li et al. 2016), which is used in this weighting function to represent the variance of a C/N0 observable caused by the random noise when \(b_{0} = B \cdot 10^{{ - \frac{{C/N_{0f} }}{10}}}\).

According to (8), the received C/N0 contains the amplitudes for both direct and reflected signals, which are significantly impacted by the receiving antenna gain (Smyrnaios et al. 2013). The receiving antenna gain pattern is elevation dependent to some extent, although the relationship between the gain value and elevation angle is not linear. The gain value is usually the highest at the zenith and becomes much smaller when the elevation angle turns lower. It is found that the variations of the amplitudes for both direct and reflected signals follow the elevation angle of the arrival signal, but they are in opposite directions. The multipath amplitude is the smallest at the zenith but becomes larger when the elevation angle decreases.

In contrast, the amplitude of a direct signal varies with the same trend as the elevation angle (Bilich et al. 2008; Rost et al. 2009). Thus, the C/N0 observation varies with the elevation of the arrival signal (Hartinger et al. 1999). However, some studies show that the receptions of observed C/N0s are unstable at low elevation angles. The received C/N0s appear as high-frequency oscillations with small amplitude perturbations instead of a streamlined trend (Löfgren 2014; Roussel et al. 2015). This phenomenon is visible at low elevation angles since the smaller receiving antenna gain value results in a strong multipath interference (Roussel et al. 2016; Strode et al. 2016). As a result, the received C/N0 becomes unpredictable. Thus, good performance of (18) cannot be expected at low elevation angles. By contrast, the proposed elevation-dependent model can be considered at this stage as it does not rely on the observed \(C/N_{{0{\text{obs}}}}\). The model is given as follows

$$ \sigma^{2} = \sigma_{rc}^{2} = \left\{ {\begin{array}{*{20}l} {\frac{{B \cdot 10^{{ - \frac{{C/N_{0f} }}{10}}} }}{{\sin^{2} \theta }}} \hfill & {\left| {\,C/N_{0rc} \,} \right| \le T} \hfill \\ {\frac{{B \cdot 10^{{ - \frac{{C/N_{{0{\text{nom}}}} }}{10}}} }}{{\sin^{2} \theta }}} \hfill & {\left| {\,C/N_{0rc} \,} \right|{ > }T} \hfill \\ \end{array} } \right. $$
(19)

where T is the threshold that determines the scope of \(C/N_{0f}\), which is independent and should be normally distributed with more than 95% confidence interval when \(T = 2 \cdot {\text{STD}}_{{C/N_{0f} }}\), where \({\text{STD}}_{{C/N_{0f} }}\) is the standard deviation of \(C/N0_{f}\). The threshold T can be used to measure the significance of the indoor multipath influence since it compares with \(C/N_{0rc}\) as shown in (19). If the estimated \(C/N_{0rc}\) is less than the threshold, it is considered that the multipath influence is small and within the tolerance range defined by \(C/N_{0f}\). Thus, the performance of the proposed elevation-dependent model using \(C/N_{0f}\) is sufficient. Otherwise, it is believed that the multipath or NLOS impact is much more severe, and \(C/N_{{0{\text{nom}}}}\) needs to be involved in the proposed elevation-dependent model rather than \(C/N_{0f}\).

Since the proposed weighting models at the different stages are described in (18) and (19), a complete weighting function for the proposed stochastic model can be given by combining these weighting functions as

$$ \sigma^{2} = \sigma_{rc}^{2} = \left\{ {\begin{array}{*{20}l} {B \cdot \left( {\left| {10^{{ - \frac{{C/N_{{0{\text{nom}}}} }}{10}}} - 10^{{ - \frac{{C/N_{{0{\text{obs}}}} }}{10}}} } \right| + \frac{{10^{{ - \frac{{C/N_{0f} }}{10}}} }}{{\sin^{2} \theta }}} \right)} \hfill & {\theta \ge \theta_{T} } \hfill \\ {\frac{{B \cdot 10^{{ - \frac{{C/N_{0f} }}{10}}} }}{{\sin^{2} \theta }}} \hfill & {\left| {\,C/N_{0rc} \,} \right| \le T,\theta { < }\theta_{T} } \hfill \\ {\frac{{B \cdot 10^{{ - \frac{{C/N_{{0{\text{nom}}}} }}{10}}} }}{{\sin^{2} \theta }}} \hfill & {\left| {\,C/N_{0rc} \,} \right|{ > }T,\theta { < }\theta_{T} } \hfill \\ \end{array} } \right. $$
(20)

where \(\theta_{T}\) is a threshold angle used to select a more suitable weighting function for each phase measurement. Static and kinematic experiments are carried out to verify the performance of our proposed stochastic model, and results are analyzed and discussed.

Experiments and discussions

The experimental hardware shown in Fig. 1 (top) contains one set of a ground-based positioning system, two GNSS receivers in the model of UR 370 manufactured by Unicorecomm, and one command PC. The ground-based positioning system includes one multioutput navigation signal generator and several ground-based transmitters. The signal generator can generate and transmit GPS L1 or BeiDou B1 signal; it maximally supports eight transmitters by sharing a single clock source. The connection between the signal generator and transmitters is illustrated in the bottom panel. All the experimental data were collected at a 1 Hz rate and conducted in room CE501 at UNSW Sydney, Australia. The size of the indoor experimental area is approximately 10 m × 6 m × 2.9 m.

Fig. 1
figure 1

Experimental hardware (top) and experimental configuration of transmitters to the signal generator (bottom)

Estimation of nominal C/N 0

According to the proposed stochastic model, the nominal value for each epoch-based C/N0 observable recorded in a receiver must be estimated first. To obtain an accurate \(C/N_{0nom}\) based on (15), the reliable confirmation of \(C/N_{0f}\) is a high priority. Therefore, an experiment with two steps was conducted to measure \(C/N_{0f}\).

At the first step, the output port of the signal generator was directly connected to a receiver by 1 m cable without passing through the receiver antenna, as illustrated in Fig. 2. The measured result is the uncontaminated \(C/N_{0f}\), which can be considered the expected value in its normal distribution.

Fig. 2
figure 2

Schematic measurement of expected \(C/N_{0f}\)

The expected \(C/N_{0f}\) for ground-based L1 and B1 signals were separately measured in the same channel of the signal generator. The measured results are plotted in Fig. 3; their mean and STD values are summarized in Table 1. It can be seen that the expected \(C/N_{0f}\) for different signals have a slight difference at 1.4 dB-Hz since they contain the different wavelengths, and both perform stably as the variations of their STD are quite small.

Fig. 3
figure 3

Measurements of the expected \(C/N_{0f}\) for ground-based L1 and B1 signals

Table 1 Mean and STD of expected \(C/N_{0f}\) for ground-based L1 and B1 signals

At the second step, a receiver antenna equipped with choke rings was directly placed under a ground-based transmitter. The receiver and transmitter antenna positions were accurately surveyed by a total station; hence, the positioning error influence was ignored. The experimental scene of this step is illustrated in Fig. 4. It can be assumed that the received signal has a much less multipath effect since most of the reflectors are below the receiver. Thus, the received C/N0 can be considered as \(C/N_{{0{\text{nom}}}}\). Then, a real \(C/N_{0f}\) can be calculated when the distance is known according to (15). Since all the items inside \(C/N_{0f}\) are invariable, the estimation of \(C/N_{0f}\) is only required once; it can be used until the hardware is changed.

Fig. 4
figure 4

Experimental scene for estimating nominal C/N0

The measured \(C/N_{{0{\text{nom}}}}\) collected from both frequencies are plotted in Fig. 5, and their average values are tabulated in Table 2. Since the distance between the ground-based transmitter and the receiver antenna is known, \(C/N_{0f}\) for both ground-based L1 and B1 signals can be estimated based on (15); the results are shown in Table 2. It can be found that the estimated \(C/N_{0f}\) for both signals stay between 60 and 61 dB-Hz.

Fig. 5
figure 5

Measured \(C/N_{{0{\text{nom}}}}\) for ground-based L1 and B1 signals

Table 2 Measured \(C/N_{{0{\text{nom}}}}\) and calculated \(C/N_{0f}\) for ground-based L1 and B1 signals

Once \(C/N_{0f}\) is decided, \(C/N_{{0{\text{nom}}}}\) for each phase measurement can be estimated based on (15). Consequently, the proposed stochastic model can be used for indoor multipath or NLOS mitigation.

Static and kinematic experiments were conducted to verify the effectiveness of our proposed stochastic model. The same experimental data are shared in four stochastic models: the EWM, EDM based on a simplified elevation-dependent model, CBM based on (17), and the new proposed model (NPM).

Static experiment

The static experiment was conducted first. It included two parts. The first part focused on mitigating the indoor multipath effect under normal circumstances, while the second part emphasized the mitigation of the impact from NLOS.

The experimental deployment for both parts is depicted in Fig. 6. There were seven ground-based transmitters employed in the static experiment. In the first part, a single receiver was engaged at six different static points; these static points were precisely measured by a total station and used as the reference for estimating positioning errors. In the first part, all the data were collected at the ground-based L1 frequency.

Fig. 6
figure 6

Layout for the static experiment (top) and partial view of the static experiment (bottom)

The threshold angle \(\theta_{T}\) and threshold T need to be confirmed to implement NPM. We find that the weighting function shown in (18) is more efficient when \(\theta_{T}\) is larger than \(30^{^\circ }\), and should be receiver dependent. To confirm the threshold T, \({\text{STD}}_{{C/N_{0f} }}\) needs to be determined first. Another test described in Fig. 6 (bottom) was conducted when the receiver antenna stopped at static reference point (SRP) 2 and directly faced the transmitting surface of the ground-based transmitter (GBT) 7; the observed C/N0 is considered as \(C/N_{{0{\text{nom}}}}\). The estimated \(C/N_{0f}\) shown in Table 3 are at 63.82 dB-Hz, which is almost 4 dB-Hz away from its expected value shown in Table 1. Thus, \({\text{STD}}_{{C/N_{0f} }}\) is at least 4 and the minimum threshold T is 8.

Table 3 Estimated \(C/N_{0f}\) for the receiver at SRP 2

Afterward, the positioning results at six static points (SRP 1–6) were calculated based on the four different stochastic models, and their deviations are revealed in Fig. 7. The performance of each model in the indoor multipath mitigation can be measured by the size of positioning errors mainly caused by the multipath effect. It can be seen that the performance of CBM is the worst in this part as it results in the largest errors at four points. The performance of EDM is better than CBM at five points, whereas EWM performs better than these two models. NPM performs the best indoor multipath mitigation since it has six points with the five smallest positioning errors. NPM improves positioning accuracy by averaging 35.25%, 23.36%, and 28.96% at six points against EWM, EDM, and CBM, respectively. It is also found that significant improvement is gained at SRP 6, where NPM suppresses the positioning error at the millimeter level.

Fig. 7
figure 7

Positioning deviations resulted from four models at SRP 1–6

The second part of the static experiment focuses on NLOS. As shown in Fig. 8 (top), a reflective board was placed 1.2 m away from the receiver when it stopped at SRP 2. This board was 0.75 m in height and helped reflect signals from GBT 5, 6, and 7. After data collection, a metal obstructer (0.5 m in height) was added to block the direct signal from GBT 6 as illustrated in the middle panel. The reflected signal from GBT 6 was still received, as shown in the bottom panel. Therefore, an indoor NLOS situation was artificially established. The same procedure was repeated when the receiver antenna stopped at SRP 4, the direct signal from GBT 1 was completely blocked, and only its indirect signal was received. One more NLOS sample was collected at the B1 frequency when the receiver antenna stayed at SRP 7, where only the indirect signals from GBT 3 and 4 were received, and their direct signals were blocked.

Fig. 8
figure 8

NLOS circumstance establishment when the antenna stops at SRP 2. A reflective board is added to reflect the direct signal from GBT 6 (top); a metal obstructer is added to block the direct signal from GBT 6 (middle); illustration of the NLOS circumstance (bottom)

All the positioning results in different situations were calculated, and their deviations are illustrated in Fig. 9. Since the unmodeled errors in EWM are equally weighted without further parameterization, its positioning errors are more realistically reflected and are thereby used to assess the indoor multipath and NLOS impact. By comparison with the positioning errors from EWM at each point shown in the top and middle panels, it can be found that the additional reflective board results in the destructive multipath impact with a 16% decrement of the positioning error at SRP 2. The reason is that the board reflects the signal from GBT 6, which compensates for some influence of reflected signals from GBT 1–4 as they are in the opposite directions. The board contributes the constructive multipath influence at SRP 4 and 7, where the positioning errors increase 177.47% and 65.77%, respectively. By comparing with the top and bottom panels, the positioning errors caused by NLOS decrease 88.47% at SRP 2, and increase 287.36% and 250% at SRP 4 and 7, respectively. In contrast to the calculated ratios in the multipath case, the variations of the positioning errors caused by NLOS are much larger.

Fig. 9
figure 9

Positioning deviations estimated from four models. In a normal circumstance (top); when a reflective board is added (middle); in an NLOS circumstance when obstructor is added (bottom)

The NLOS impact can also be demonstrated by the derived detection model shown in (16); the calculated \(C/N_{0rc}\) for GBT 3 at SRP 7 in different circumstances are plotted in Fig. 10. It can be found that \(C/N_{0rc}\) resulting from NLOS is much larger than that from multipath. Thus, the influence of NLOS is much more severe than multipath for the indoor environment.

Fig. 10
figure 10

Calculated \(C/N_{0rc}\) from GBT 3 at SRP 7 in different circumstances

By comparing the results from different models at each point shown in Fig. 9 (top, middle, bottom), it can be seen that NPM performs best as it produces the seven smallest positioning errors, which account for 77.78% in nine static positioning results. As the middle panel shows, NPM reduces the errors to the smallest at three points and improves their positioning accuracies by 16.51%, 17.82%, and 27.15% on average against EWM, EDM, and CBM, respectively. As illustrated in the bottom panel, NPM reduces the errors to the smallest at SRP 4 and 7, where the average improvements of 30.56%, 23.96%, and 33.37% can be obtained against EWM, EDM, and CBM, respectively. It can be seen that NPM does not perform the best at SRP 2, but the positioning accuracy is still maintained at a moderate level. NPM has a remarkable performance in the NLOS mitigation at SRP 7, where the positioning error caused by NLOS is suppressed to 5.63 cm. On the contrary, other models fail to maintain positioning accuracy at the centimeter level, especially EWM and CBM.

In summary, NPM performs best in restraining the positioning errors to the smallest, which is demonstrated in 84.62% of 13 samples at 7 points in the static experiment. It effectively mitigates the indoor multipath and NLOS effects and reliably controls the positioning errors at the centimeter level.

Kinematic experiment

Two indoor kinematic experiments were organized to verify the proposed model. They were conducted at the same location. All the data were collected at the B1 frequency.

Figure 11 depicts the layout of the first kinematic experiment. As illustrated in the top panel, eight ground-based transmitters were deployed in the experimental area. A single receiver was employed to implement the kinematic positioning. Its antenna trajectory was designed in a rectangular shape covered by 2.25 m2 inside the ground-based network. As shown in the bottom panel, the existence of furniture and walls near the dynamic antenna unavoidably reflected the signals transmitted from the omnidirectional antennas of the engaged ground-based transmitters, thereby generating multipath errors affecting positioning accuracy. Ten ground truth points (GTP) were selected from the receiver antenna trajectory and precisely measured to evaluate the performance of each model in the indoor multipath mitigation by assessing the positioning errors, which are mainly caused by the indoor multipath. The kinematic positioning results from all the models are epoch-based and shown in Fig. 12, and their positioning deviations to each GTP are given in Fig. 13.

Fig. 11
figure 11

Layout of the rectangular-shape kinematic experiment (top) and partial view of the rectangular-shape kinematic experiment (bottom)

Fig. 12
figure 12

Kinematic positioning results from all the models

Fig. 13
figure 13

Positioning deviations to GTPs in the rectangular experiment

By comparing the positioning errors estimated from the different models at each GTP shown in Fig. 13, the performance of NPM in the indoor multipath mitigation is better than other models in this kinematic test. It has the seven smallest positioning errors at ten GTPs. Among them, the result at GTP 5 is remarkable since the positioning error is impressively controlled at the millimeter level.

The second kinematic experiment was designed in a circular movement. As shown in Fig. 14, eight ground-based transmitters were used, and the receiver antenna was moved in a circular trajectory with a 1 m diameter. The positioning errors from each model are given in Fig. 15. It can be found that NPM has the most precise positioning results since it has the six smallest positioning errors at eight GTPs.

Fig. 14
figure 14

Layout of the circular-shape kinematic experiment

Fig. 15
figure 15

Positioning deviations to GTPs in the circular experiment

In a summary of the kinematic experiments, NPM gains the best performance since it successfully suppresses multipath errors to the smallest, which can be verified by the ratio of 72.22% at 18 GTPs in the two kinematic experiments. The proposed NPM successfully and reliably maintains precise indoor positioning at centimeter-level accuracy.

In addition to demonstrating the performance of the proposed stochastic model, the practical feasibility of the ground-based positioning system is also discussed. The challenges for the experimental hardware in real-time use may include the extendibility of the amount of the ground-based transmitters and the permission of the frequencies in use. The number of ground-based transmitters in the experiments can be increased to cater to large-scale indoor environments by operating the spare channels in the signal generator. Our experiments defined the PRN codes for the utilized PLs to distinguish PL signals from outdoor GPS/BeiDou signals. However, a concern may be raised about the permission of these frequencies for ground-based positioning. Our experimental hardware could follow the Locata way and consider the industrial scientific medical (ISM) license-free frequency band to dispel the doubt on the permission.

Conclusion

A ground-based positioning system can replace the GNSS for precise indoor positioning, but the indoor multipath is the major challenge. As one of the common observables in a ground-based positioning system, C/N0 can be involved in indoor multipath mitigation since it departs from its nominal value when multipath occurs and varies with the impact of multipath.

A model is first derived in this study to estimate the nominal C/N0 in a ground-based system. Then, the extent of signal contamination caused by multipath can be measured by a detection model developed from the estimated nominal C/N0. Next, a weighting function is established according to the detection model based on the variation of observed C/N0s from their nominal values. It is also found that the elevation-dependent method using the estimated C/N0 is more efficient at low elevation angles and thereby used as an alternative weighting function. These two weighting functions are mutually compatible and complementary in a more effective way to weigh the realistic precisions of phase observables from a single receiver inside a ground-based network. Therefore, the new stochastic model is established based on these two weighting functions. With this proposed new stochastic model, indoor phase multipath can be effectively mitigated at a low-cost single frequency.

Static and kinematic experiments have demonstrated that the new stochastic model can suppress multipath errors and outperform existing stochastic models in 84% and 72% of static and kinematic results. In addition, it is found that NLOS can be more severe than the indoor multipath effect. The experimental results have verified that the proposed new model is also efficient for the NLOS mitigation. The performance of the new model ensures that indoor positioning accuracy is reliably maintained at the centimeter level, and precise indoor positioning is certainly achieved.

The proposed ground-based solution can be obtained based on the license-free frequency band for avoiding the disputation of the frequency permission. Therefore, this solution can certainly be applied to real-time activities. A new proposal based on multiple frequencies may be considered in the future.