Simulation of GNSS reflected signals and estimation of position accuracy in GNSS-challenged environment

Abstract The paper describes the development and testing of a simulation tool, called QualiSIM. The tool estimates GNSS-based position accuracy based on a simulation of the environment surrounding the GNSS antenna, with a special focus on city-scape environments with large amounts of signal reflections from non-line-of-sight satellites. The signal reflections are implemented using the extended geometric path length of the signal path caused by reflections from the surrounding buildings. Based on real GPS satellite positions, simulated Galileo satellite positions, models of atmospheric effect on the satellite signals, designs of representative environments e.g. urban and rural scenarios, and a method to simulate reflection of satellite signals within the environment we are able to estimate the position accuracy given several prerequisites as described in the paper. The result is a modelling of the signal path from satellite to receiver, the satellite availability, the extended pseudoranges caused by signal reflection, and an estimate of the position accuracy based on a least squares adjustment of the extended pseudoranges. The paper describes the models and algorithms used and a verification test where the results of QualiSIM are compared with results from collection of real GPS data in an environment with much signal reflection.


Introduction
The quality of a position determined with Global Navigation Satellite Systems (GNSS) such as the American GPS or the coming European Galileo is highly dependent on a large number of effects. The quality of the antenna and receiver used is important to consider, atmospheric conditions in the ionosphere and troposphere may affect transmission of the satellite signals, and also the environment surrounding the GNSS antenna has a considerable effect. Obstacles such as building, trees or mountains may lead to blockage or reflection of the satellites signals which in turn affect the quality of the position determined by the GNSS receiver.
This paper describes the development and testing of a tool which can be used for estimating position accuracy given a number of different environmental conditions. The tool is called QualiSIM and it has been developed to be used for finding the most suitable test conditions for field testing of various types of GNSS receivers in order to certify them for safety relevant applications.
The purpose of QualiSIM is therefore to provide the user with the opportunity to test a large number of possible environmental scenarios in order to find the most suitable scenario for a given test purpose. For instance if the purpose is to test performance of GNSS receivers in the most challenging environmental conditions, then QualiSIM can be used in the office to find the combination of conditions needed, before the actual costly tests are carried out in the field. This can reduce the number of field tests needed to be performed.
QualiSIM is developed as a simulator which can estimate a representative GNSS position accuracy given a set of environmental conditions such as geographic location, satellite constellation, atmospheric effects, buildings sur- GNSS simulators have previously been developed, but it is important to note that QualiSIM is not a signal generator, nor a software receiver. QualiSIM estimates errors on the GNSS pseudoranges given satellite and receiver location, the environment, and potential reflections of the signals.
Tools for estimating satellite visibility using 3D city models also exist see for instance Jensen et al. (2005), and suggestions for improving positioning accuracy by means of 3D city models have been proposed for instance by Wang et al. (2012). But QualiSIM is different, it is not necessary with a model of a complete city since any single street can be loaded into QualiSIM to do the analysis. QualiSIM also provides information from non-line of sight satellites as well as an estimate of the position accuracy obtainable when reflected signals are used in the positioning process by the receiver.
The innovative contribution of this work is therefore the combination of a traditional satellite visibility tool based on an urban environment with simulation of reflected non line of sight signals followed by an estimation of the resulting position accuracy. The overall purpose of the work is to provide a tool which can be used for estimating or selecting the most suitable environment for a given test to be carried out in the field with real GNSS satellite signals.
The work described in this paper is carried out within the frame of the QualiSaR project that focuses on the development of a Qualification procedure for the use of Galileo Satellite Receivers for safety relevant applications. Qual-iSaR is funded by the EU seventh framework programs, and the project is led by the Technical University of Braunschweig, Germany.
As mentioned above, the purpose for developing QuailSIM was to provide a tool to find the most suitable test conditions for testing of Galileo receivers in safety relevant applications. The purpose has been fulfilled as the software tool has been used by other project partners within the framework of the QualiSaR project. Results obtained using QualiSIM have been published for instance in Jakobsen and Jensen (2012), but the present paper is the only publication describing the algorithms implemented and the test performed to verify and validate the implementation.

Methods, models and algorithms
QualiSIM is written in Matlab and is developed based on a number of scripts and algorithms. All input and output of the Matlab scripts are controlled via the Graphical User Interface (GUI) which is shown in Fig. 1. Scripts for processing of simulations, where many parameters are varied, can be set up by advanced users. During review of the various algorithms as discussed in the text we will make repeated reference to this figure.

GNSS satellite constellations
QualiSIM has been developed for multi-constellation analyses including satellites for Galileo, GPS, and a combination of the two.
The Galileo constellation is not yet operational, and the satellite orbits are therefore simulated using the nominal satellite constellation with 27 satellites. We have used the parameters given in Table 1.
This has been done in order to provide results complying as much as possible with the expected situation when all Galileo satellites are in orbit. The Kepler elements describing the satellite orbits are read into the software, and the Galileo satellite positions are estimated using the algorithms described in Kaula (1969). A timer is implemented to model the motion of the satellites within the orbits.
For the GPS satellite constellation we use real orbit information. GPS satellite positions are estimated from GPS navigation files in the RINEX (Receiver independent exchange format) format version 2.11 (ftp://igs.org/pub/ data/format/rinex211.txt). The derived Kepler elements are used to calculate the GPS satellite positions for the relevant epoch in time using the algorithms from the GPS Interface Control Document (http://www.navcen.uscg.gov/ pdf/IS-GPS-200F.pdf).
Brought to you by | DTU -Technical Information Center of Denmark (DTIC) Authenticated Download Date | 8/6/15 1:31 PM Low elevation satellites are eliminated by means of an elevation mask which is set as an input parameter in the graphical users interface.

Atmospheric effects
The atmospheric effects caused by the ionosphere and the troposphere are two of the largest error sources for GNSSbased positioning. Normally models are used in all GNSS receivers to mitigate them, but residual errors remain on each pseudorange and affect the position accuracy. In the context of QualiSIM it is only relevant to estimate the residual effect on each pseudorange in order to estimate the position accuracy. The residual effect is estimated using parameters from the user.
The residual effect of the ionosphere is modelled using a value for the vertical total electron content (VTECres) given in TEC units (TECU) valid for the time of the simulation. For a description of the total electron content and effects of the ionosphere see for instance Bergeot et al. (2013).
Within QualiSIM the VTECres is converted to a signal delay in meters using the normal first order term of the ionosphere effects, see for instance Misra and Enge (2006), and then converting this to a slant signal delay in the direction of the satellite signal using the mapping function described in Misra and Enge (2006). The effect can be both positive and negative. The implemented slant group delay on each pseudorange is then given by Eq. 1: res,vert,ion = map(el) 40.3VTECres where d res,ion is the residual slant effect of the ionosphere, map(el) is the mapping value for the given satellite elevation angle (el), f is the center frequency of the considered GNSS signal, and d res,vert,ion is the residual effect in the vertical of the ionosphere. The residual vertical effect for the troposphere is modelled using the Hopfield model Hopfield (1969). The effect is implemented using the Hopfield (HO) model as the difference between standard meteorological values and real values. The standard values used for most commercial GNSS receivers are 18 ∘ C for temperature and 50% relative humidity. The real values valid at the time of the simulations are provided as input to the software.
The residual vertical tropospheric effect is then mapped to the given elevation angle independently for the dry and for the wet part using the Mapping Temperature Test, MTT, dry and wet mapping functions with the equations from Mendes (1999). The MTT mapping functions are, along with the Niell Mapping Functions, NMF, Niell (1996), considered to be among the most accurate mapping functions for tropospheric effects as discussed in Niell (2000) and Mendes (1999). The residual effect can be both positive and negative. The implemented slant tropospheric delay on each pseudorange is then given by Eq. 2:

Definition of environment
In QualiSIM, the implementation of the local environment around a GNSS antenna is in essence based on buildings (or boxes). Each building is described by a vertical 2D rectangle consisting of a height, length, a start coordinate (translation), and a rotation (azimuth) angle. The values are all given in a local coordinate system. See Fig. 1 for an example of an environment consisting of 15 buildings. Each building acts as a mirror for the satellite signals, meaning that the building blocks the satellite signal for penetration and reflects it with the ingoing angle equal to the outgoing angle.
By using this approach it is possible to define locally representative cityscape environments, such as a dense urban or a T-junction environment. Compared to existing 3D city models format, see for instance the CityGML Gröger et al. (2012), this simplified environment can be easily customized, i.e. rotated and placed at locally desired points and also located at various places around the Earth in order to perform various user defined simulations. The definition of the environment is predefined and loaded into the program as input, but any specific environment can be customized to the data format and used by the software.

Reflected satellite signals
In some cases satellite signals will arrive at the GNSS antenna after being reflected from surrounding buildings. In some applications it can be an advantage to include these signals in the position determination in order to increase the satellite availability and many high sensitivity GNSS receivers include reflected signals to be able to determine positions in environments with a highly degraded availability of direct signals.
In all GNSS receivers mitigation techniques for multipath effects have been implemented, but it is very difficult for the receiver to account for the multipath effects in cases where there are no incoming signals with direct line of sight to the satellites. In some environments with multiple non-line of sight received signals, the extended path length can be significantly and cause horizontal position errors up to a hundred meters or more Jakobsen (2010) and Lachapelle et al. (2004).
With QualiSIM the extended path lengths caused by reflections are estimated geometrically and we can include the reflected signals in the estimation of position accuracy, and are hereby able to also estimate the position error obtained when including reflected signals in the positioning process.
The reflection points are detected using a search routine for every satellite and every building for each simulation performed, see Fig. 2. Each building is divided into a limited number of squares, and around the building (light grey) a small boundary box (dark grey) is added.
For each cross-point p an ingoing angle (α in ) and an outgoing angle (α out ) is calculated. α in is the angle between the building plane and the satellite to p vector, and α out is the angle between the building plane and the track point to p vector. This leads to a residual matrix R for each p given by α inα out . If min(R) is within the building crosspoints a possible reflection point is detected. Furthermore, if there is line of sight from p to the satellite and from p to the position of the GNSS antenna, then p is marked as a true reflection point.
The extended path length d mult is then calculated via Eq. 3 using the geometric distances, ρ, between the reflection point p on the building, the GNSS antenna position (ant), and the satellite (sat) position.
If reflection points from other buildings are detected for the same satellite, the shortest distance is used in the calculation. Multiple reflections are not considered.

Estimation of position accuracy
The estimation of position accuracy is based on the basic GNSS code observation equation as given in Eq. 4, where we separate the error contribution from multipath from the noise term: where r is the observed pseudorange, r is the geometric distance between receiver and satellite, dρ is the orbit er-Brought to you by | DTU -Technical Information Center of Denmark (DTIC) Authenticated Download Date | 8/6/15 1:31 PM ror, c is the speed of light, dt and dT are receiver and satellite clock errors respectively, d ion is ionospheric signal delay, d trop is tropospheric signal delay, d mult is the multipath delay, and e is a noise term including receiver noise and other unaccounted errors.
The purpose of our work is to estimate and visualize the effect on the position accuracy caused by the environment around the GNSS receiver. The effects of satellite position errors and residual effects of the satellite clock errors are independent of the environment around the GNSS receiver. The same is the case with the receiver noise, which is dependent on the GNSS receiver type and brand. In this context these errors do not provide any useable information as they will have the same effect for all satellite signals and will in effect appear as a scaling factor on the position accuracy. We are therefore not modelling these effects.
The pseudoranges we work with in the position estimations are therefore reduced to Eq. 5: where r QualiSIM is the pseudorange used in QualiSIM, d res,ion and d res,trop are residual slant delays of the atmosphere and d mult is the multipath delay. A non-linear weighted least squares position solution based on the Gauss-Newton method is then estimated based on these pseudorange observations, see the manuscript about linear and nonlinear weighted regression analysis by Allan Aasbjerg Nielsen at (http: //www2.imm.dtu.dk/pubdb/views/publication_details. php?id=2804, revision 29) for a derivation of the equations used. Looking at failure detection algorithms, for instance in Sturza (1988), measurement errors are first assumed to be Gaussian noise only, then the residuals can be examined to determine if non-line of sight errors are present, which are detected as outliers Chen (1999). However this approach fails to work when multiple non-line of sight observations are present as can be the case in dense urban environments. In order to give a general visualization of the non-line of sight observations in the position domain, the position estimation is performed including all observations.
For the least squares position solution the quality of the position estimatesx are often expressed by their standard deviation that is the square roots of the diagonal elements of the variance-covariance matrix Qx.
Another way to describe the uncertainty is to use confidence ellipsoids to allow for the covariance between the elements ofx. In QualiSIM confidence ellipsoids are implemented and plotted for cases with values of α at 50%, 95% and 99% and for either the χ 2 (p) or F (p, n − p) dis-tribution and can be studied visually for every simulation. See Fig. 6 and Fig. 7 for examples of error ellipses.

Geodetic reference frames and map projection
When performing GNSS simulations a number of considerations are needed in order to relate the satellite positions in space to reflection points in the local environment near the GNSS antenna. In the context of Qual-iSIM, the satellite positions are determined as Cartesian coordinates in the Earth Centred Earth Fixed (ECEF) reference system used for the GPS satellite orbits, i.e. the WGS84. This is the natural consequence of using real GPS ephemerides. In order to determine a position based on multi-constellation GNSS, one reference frame must be used for all satellite positions. Within QualiSIM, the Galileo satellite positions are therefore also determined in the WGS84. The Galileo broadcast navigation message provides information on the difference between the WGS84 and the Galileo Terrestrial Reference Frame (GTRF) which can be used for transformation of coordinates between the two systems. In a future implementation it can therefore be decided to use any of the two systems. Descriptions of WGS84 and GTRF can be found for instance in by the European Space Agency (http://www.navipedia.net/index. php/Reference_Frames_in_GNSS). Both reference frames are related to the International Terrestrial Reference Frame (ITRF) described in for instance Altamimi et al. (2011), and the difference between WGS84 and GTRF is in the order of mm.
In QualiSIM, the environment is determined and shown in a local East, North and Up coordinate system with origin at the central point of the simulations (see Fig. 1). The UTM map projection is used as an intermediate step in the conversion of coordinates between the ECEF and the local coordinate system. For that purpose, coordinates for the central point of the simulations are needed as latitude, longitude and height in the WGS84. The UTM projection zone number is determined from the latitude and longitude by QualiSIM and used in conversion (transformation) of coordinates back and forth between WGS84, UTM, and the local coordinate system. The expressions used for transformation between WGS84 and UTM are provided in Poder and Engsager (1998). A description of the UTM map projection is also found for instance in Bugayewskiy and Snyder (1995).

Types of analysis methods for the simulation
To be able to analyze various situations and environments, four different types of analysis methods for each simulation have been implemented. These four methods each have a significant influence on the number of line of sight satellites, thereby also on the satellite-receiver geometry (dilution of precision -DOP), and finally also on the estimated position and associated accuracy. In QualiSIM one of these methods has to be selected for each simulation.

Track dependency
The receiver local position within the environment has an influence on the number of signals received directly from the satellites, and the amount of blocked or reflected signals. When driving a car on a street, buildings will block the visibility to the satellites in some locations, but not in others. This is illustrated in Fig. 3.

Time of day dependency
The satellite constellation changes over time. When driving a car on a street in the morning it will receive signals from different satellites providing a different HDOP than when driving in the afternoon. This is illustrated in Fig. 4.    Also, if you drive your car at the same road at the same time every morning you will not track the same satellites day after day because of the changing satellite geometry.

Environment latitude dependency
If the same environment is placed on the same longitude, but with varying latitude, the satellite constellation will be different. A GNSS receiver will therefore track different satellites when driving on a street in the northern part of Europe (Fig. 5(right)), than driving on a street with a similar layout and environment in the southern part of Europe (Fig. 5(left)).

Environment azimuth dependency
If the same environment is rotated 25 ∘ in azimuth, the position accuracy will be different because the location of the receiver and buildings relative to the satellites will changes. The GNSS receiver will therefore track different satellites when mounted in a car driving on a street oriented in a north-south direction than driving on a similar street oriented in any other direction. This is illustrated in Fig. 6 and Fig. 7 with a street first oriented towards the North (parallel to the grid lines) and then rotated 25 ∘ with respect to North in the following figure. The position accuracy improves because more satellites signals are received with a direct line of sight, and fewer signals are blocked and reflected with the example in Fig. 7. The buildings surrounding the test location as well as time of day, atmospheric effects etc. are identical in the two cases.
These four analysis methods have been implemented in the QualiSIM tool so it is possible to run repeated analyses of for instance rotation of the environment by automatically increasing the azimuth with for instance 5 ∘ for each run.

Results and verification with real data
It is important to verify the implemented methods and algorithms in QualiSIM with real data collected in a cityscape environment. For this purpose the evaluation kit EVK-6T-0 including a High Sensitivity GPS receiver has been used, see (http://www.u-blox.com/en/evaluationtools-a-software/gps-evaluation-kits/evk-6-evaluationkits.html) for more details. The receiver has been put up in a cityscape environment on a near North-South oriented (azimuth angle of 353 ∘ ) street. The street is approximately 16 m. wide and is characterized with 2-3 floors buildings on each side of the road; the GPS antenna is placed towards the eastern side approximately 5.5 m. from the nearest building. The receiver has been collecting data for more than 12 hours with a sampling rate of 5 seconds in order to cover satellite passes across the sky.

Distinction between non-line of sight and line of sight satellites
In order to test the implementation of the local environment and which part of the sky is visible or not, the Signal to Noise Ratio (SNR) as reported by the receiver is illus-trated in a skyplot, see Fig. 8 to the left. A simplified model for the cityscape is implemented in QualiSIM and the result of a line of sight simulation categorizing in visibility is also illustrated on a skyplot, see Fig. 8 to the right.
The SNR values shall in general be higher at higher elevations, but a drop at 10 dB or more is illustrating obstruction of the signal; for instance in the western part at 30 ∘ elevation, the SNR values drop from 46 to 35 dB. In general the drop in SNR values correlates very well with the categorization of visibility with QualiSIM.

Extended path length
Even though the satellites are tracked in the non-line of sight part of the sky, the crosses are characterized by many outages. Some of the signals are reflected from the buildings on the opposite site of the street and thus the ranges are longer. The satellite cross for satellite number 25 when it is going from 42 ∘ -12 ∘ elevation has been studied. This path is in the non-line of sight part of the sky. The extended path length as estimated by QualiSIM is illustrated in Table 2 and do not include the atmospheric effects. This is compared to the range residual output from the GPS receiver. The residual is not a clear measure for the extended path length, because it is relative to the obtained position. This is considered the most optimal parameter since the receiver do not output range residuals from the true coordinate. It can therefore only be used as an indication. The range residual is very noisy compared to the extended path length, but the mean value of the difference is 2.51 m. This means that the estimated path length in QualiSIM can be seen as representative for this satellite pass. It is also noted that elevation and azimuth values are identical for Qual-iSIM and the GPS data.

Position accuracy
A position is extracted from the u-blox data every 15 minute and a position is estimated from QualiSIM at the same time including reflections from the cityscape environment. A comparison plot can be seen in Fig. 9 and the standard deviation and mean values are listed in Table 3.
Both dataset are shifted in a western direction with respect to the true position and the difference in Easting between the two data sets is 12 cm. This shift is expected because the eastern part of the sky has more obstructions than the western part. Longer pseudoranges are therefore present causing the western shift in the position. The difference in the north direction is 2.89 m. It is expected that   the estimation would be worse in this direction, because there is no satellites present in the northern part of the sky. The standard deviations for the two directions are also very similar. This means that the estimated positions from QualiSIM are representative for the collected GPS data.

Example and discussion
An example of the use of QualiSIM is illustrated below. The example illustrates the analysis method over time with one position estimate for each 10 minutes for a total of 2 hours and 40 minutes. The chosen environment is a narrow North-South directed street with varying building heights on both sides. The environment is located in the south-eastern part of Denmark and it is illustrated in Fig. 1 in the left part of the screen. The processing is performed with real GPS satellites positions, with simulated Galileo satellites positions, and with an elevation mask of 5 degrees. The residual atmospheric effect is calculated using a vertical TEC of 3 TECU, a relative humidity of 80%, and a temperature of 15 ∘ C. The results of the processing are illustrated and discussed in the following.
As shown in Fig. 10, the number of reflected non-line of sight satellites varies between 2 and 6 and thus contributes significantly to the total number of satellites used Brought to you by | DTU -Technical Information Center of Denmark (DTIC) Authenticated Download Date | 8/6/15 1:31 PM  in the position calculation. The DOP values also vary but are generally low due to the large number of satellites. The DOP values are calculated based on the satellites used in the position estimation regardless of whether the signals are reflected or not.
In the skyplot in Fig. 11 it is seen that reflections occur for satellites at all azimuth angles, but mainly at low elevation angles.
For each time step individual plots are generated with satellite constellation, position accuracy etc. This can be used for studying which satellite signals are affected by reflections and which buildings cause the reflections. For instance as illustrated in Fig. 12 and Fig. 13 the signal from satellite PRN number 14 in the north-east part of the sky is reflected from a building across the street.
The example above shows selected output of the Qual-iSIM tool. The tool is suited for preliminary analyses in applications like for instance road tolling and safety critical  applications, where the position accuracy along with error bounds and reliability is essential, and where it may be relevant to quantify this before or without doing expensive field work.
For the QualiSAR project funded by the EU FP 7, Qual-iSIM has already been used extensively to find the most important variables for field tests to be performed within the project. For instance, processing performed with Qual-iSIM within the QualiSaR project illustrates that the largest variability in performance for European countries is found as function of time of day, followed by azimuth angle of the environment, the trajectory, and finally the latitude of the environment.
In other words, given that all other test parameters are unchanged, the daily change in satellite constellation is more important to consider when planning a field test than e.g. the latitude of the test site. In practice this means if you want to test performance of a GNSS receiver unit, performing a static 24 hour test in given environment will provide more information on performance of the unit than when testing the unit at different latitudes.

Conclusions
This paper describes the implementation of the QualiSIM tool which can be used to perform estimation of position accuracy for GNSS based positioning including direct line of sight satellite signals as well as non-line of sight signals reflected from buildings in representative scenarios surrounding the GNSS antenna.
Verification using real GPS data shows that QualiSIM can distinguish between line of sight and non-line of sight satellites, that the implemented algorithm for estimating the extended path length is representative and that the position estimation in QualiSIM has similar standard deviation and mean value as the collected data.
Examples of analyses provided have shown how reflected signals can come from various elevation and azimuth angles, even though they mainly come from the upper part of the non-line of sight area of the sky.
Using reflected signals has a significant impact on the position accuracy. The number of used satellites is higher which lead to better DOP values and higher satellite availability, but the position error caused by extended pseudoranges can degrade the position accuracy.