Galileo ... - Tim

1 downloads 0 Views 869KB Size Report
L5/E5 GNSS signals and from WiFi/ZigBee based navigation ..... C/N0 of all signals with a 60 dBHz tone interferer on L1 plus an adaptive notch filter. 700. 750.
Experimental Results from an Ultra-Tightly Coupled GPS/Galileo/WiFi/ZigBee/MEMS-IMU Indoor Navigation Test System Featuring Coherent Integration Times of Several Seconds Thomas Pany(1) , Jón Winkel(1), Bernhard Riedl(1), Herbert Niedermeier(2), Bernd Eissfeller(2), Thomas Wörz(3), Robert Schweikert(3), Stefano Lagrasta(4), Riccardo Nicolé (4) , Gustavo López-Risueño(5), David Jiménez-Baños(5) (1)

IFEN GmbH, Poing, Germany, University FAF Munich, Neubiberg, Germany (3) AUDENS ACT Consulting GmbH, Wessling, Germany (4) Telespazio S.p.A., Roma, Italy (5) ESA/ESTEC, Noordwijk, The Netherlands (2)

Abstract—This paper contains selected test results of an indoor positioning prototype system making use of GPS/Galileo signals on L1/E1 and L5/E5a in addition to WiFi data, ZigBee data and a MEMS-based dead reckoning algorithm called pedestrian navigation system (PNS). The system uses a partially coherent ultra-tightly coupled integration scheme. The GNSS signal processing (acquisition and tracking) supports coherent integration times up to several seconds, which reduces the squaring loss and mitigates multipath by the high Doppler selectivity of a few hertz. The system works in post processing and is intended to be an indoor analysis system allowing to get a better understanding of the indoor positioning problem and to act as a reference system. GNSS signal acquisition is demonstrated at ~ 3 dBHz and tracking well below 0 dBHz. Keywords-GPS, Galileo, INS, ZigBee, WiFi, PNS, highsensitivity, ultra-tight coupling, indoor positioning

I.

INTRODUCTION

During the last three years we have been working on an indoor navigation system developed for ESA that allows combining several positioning sensors in a flexible way. The system’s concept and preliminary results have been presented at several meetings and journals. The most recent summaries can be found in [1,2]. This paper will focus on results obtained during extensive tests in the beginning of 2010 with real world and laboratory signals. It will try to draw a conclusive picture of the chosen approach. The DINGPOS system is an integrated navigation system. An extended Kalman filter uses observations from L1/E1 plus L5/E5 GNSS signals and from WiFi/ZigBee based navigation systems to estimate corrections with respect to a base trajectory. The base trajectory is created by a MEMSIMU/barometer/magnetometer based dead-reckoning system. The system evolved to work in post-processing. In a first step GNSS signals and sensor data is recorded using a real-time GNSS assistance link. In the second step the user can evaluated the data and test different processing options. The processing

includes several innovative features, including software receiver based processing of GPS L1/L5, Galileo E1/E5a and of pseudolite signals of the German Galileo Test Bed (GATE); long coherent integrations times enabled by a calibrated OCXO and the constrained strapdown trajectory; fuzzy-logic based step identification; a proximity based WiFi sensor; and a fingerprinting based ZigBee radio navigation system. Finally the system foresees to do comparisons with a state-of-the-art GPS receiver or with a known true trajectory for laboratory signals. The tests in GATE included dynamic and static indoor/urban-canyon tests with WiFi positioning. A key point of these tests is the assessment of the ability to cope with the highly expressed near/far effect caused by the terrestrial GATE transmitters that operated as pseudolites. An increased crosscorrelation protection margin of up to 40 dB by vector tracking and by a navigation data bit wipe-off process was observed. The Italian Galileo Test Range (GTR) control center is equipped with a ZigBee based indoor navigation system, whose integration into DINGPOS GPS C/A signal processing is tested with dynamic and static test runs. Furthermore, those tests were used for GPS true time transfer (in addition to the transfer of ephemeris/clock information and data bits) from the GPS assistance receiver to the rover. The time transfer is quite complex, as it involves heterogeneous computers partly running under the Windows Operating system. Tests revealed that after several optimization steps an accuracy of around 20 ms could be achieved. Systematic laboratory tests revealed a GNSS acquisition and tracking sensitivity for Galileo E1/E5a and GPS L1/L5 signals at the 0 dBHz (after ADC) level. GNSS signals were generated by an RF signal simulator that included significant stochastic multipath. Multipath is mitigated because the DINGPOS system has fine frequency selectivity of only a few Hertz, compared to a standard GNSS receiver whose selectivity is 50 – 250 Hz.

TABLE I.

LAB TEST SETTINGS

Parameter

GPS

Value

Simulated GPS signals GNSS Antenna (Office roof) RF

Simulated Galileo signals GATE Transmit Stations Antenna

Frontend

IMU

NAVport

Baro

USB

SW-Rx / Notebook

SW-Rx / Notebook

A-GNSS Server DINGPOS Platform GATE Office

The simulated (= true) user trajectory is provided to the analysis script in an ASCII format and is the basis to simulate WiFi, ZigBee and dead reckoning measurements with user configurable error models. III.

Figure 1. Typical DINGPOS setup

The major disadvantage of the chosen approach is the implementation complexity. The ultra-tight coupling of all observations into a single Kalman filter and the feedback to the GNSS signal processing causes the system to fail, if a single component fails. Increasing the reliability of the single components was therefore of utmost importance, which also caused significant delays in the project. II.

SYSTEM OPERATION

A typical setup of the DINGPOS system is shown in Fig. 1 when it is operated in GATE receiving GPS and Galileo signals. A reference station receiver captures navigation data messages including raw data bits. Data bits can be transferred in real-time to the rover platform via a TCP/IP connection. The rover receiver is mounted on a backpack and captures the raw IF GNSS signals, the IMU data (gyro, accelerometer, magnetometer) as well as WiFi power readings and ZigBeebased positions. All data is time synchronized and stored on the hard disc. The rover receiver clock is based on an OXCO and needs to be calibrated. The clock offset is determined via the network time protocol (NTP) to an accuracy of better than +/30 ms. The clock drift needs to be better than 4.4 ppb and is calibrated by a dedicated outdoor trial while receiving free lineof-sight GPS signals. After calibration the system is ready to capture data. Both, reference station and rover, are based on IFENs software receiver SX-NSR and the NavPort-2 frontend. After data collection, all files are copied into one directory of the analysis PC. The analysis is based on a MATLAB script. The user enters the approximate coordinates (+/- 20 km), the directory name and various processing options (e.g. the coherent integration time, types of sensors to use, etc.). The script configures the software receiver and the specifically developed DINGPOS modules and starts the post processing. Finally, the script interprets the output results and displays them as MATLAB figures. In case the system is operated with a RF signal simulator, only the rover platform is needed to record the IF signal samples. Navigation data messages can be extracted in a separated trial making use of a sufficiently high signal power.

6 E1B+C, 6 E5aI+Q -6 dB on all signals with statistically chosen delay and Doppler offset

Multipath RF

NAVport

6 L1-C/A, 6 L5

SELECTED RESULTS

This section contains selected results to demonstrate the performance, flexibility and still open issues of the DINGPOS system. A. Laboratory Test Results For the laboratory tests, we used IFEN’s navigation constellation simulator (NCS) and generated GNSS signals according to Tab. I. The nominal C/N0 (measured after analogto-digital conversion) was precisely adjusted to +/- 0.2 dB by using an external noise source and by performing calibration runs at 45 dBHz. 1) L5/E5a Results with 14.5/13.5 dBHz A typical analysis with the DINGPOS system in a laboratory setup may cover a simulated pedestrian walking along a rectangular path and receiving GNSS signals on L5/E5a. To assess the impact of the high bandwidth signals, it is useful to switch off the (simulated) WiFi or ZigBee positioning engines. Only the dead reckoning based PNS is used. The processing setting are shown in Tab II. The coherent integration time of 1000 ms (with different noncoherent integrations for acquisition and tracking) allow to acquire the signals at 14.5 dBHz in an assisted cold start and to track them at 13.5 dBHz very stable. Fig. 2 shows the resulting trajectory. The PNS was simulated with a heading bias of 5° causing a significant deviation of the PNS-only trajectory compared to the true trajectory. However, even the weak L5/E5a signals are able to resolve the heading bias as shown in Fig. 3. After the bias has been resolved, the horizontal position error is around 1.5 m demonstrating the high accuracy of the wide band signals even at very low signal power. TABLE II. Parameter

LAB L5/E5A SETTINGS Value

Signals

6 L5, 6 E5aI+Q

Sensors

PNS

GNSS integration time

Acq: 3 x 1000 ms Trk: 1 x 1000 ms

15 DINGPOS PNS only True

10

Δ North [m]

5

0

-5

-10

-15

-20 -30

-20

-10

0

10

20

30

40

Δ East [m]

Figure 2. Trajectory plot for simulated L5/E5a signals in a severe indoor environment

State [m] 1100

100 50 0 -50 800

Clock drift [Hz@L1]

900 1000 Time [s] Δ up

900 1000 Time [s] Clock drift

1100

10 0 -10 800

900 1000 Time [s]

1100

50 0 -50 800

Heading bias [deg]

State [m]

800

Figure 4. Histogram of normalized L5/E5a code pseudorange residuals in a static case

Δ east

Stride bias [m]

State [m]

Δ north 100 50 0 -50

900 1000 Time [s] Heading bias

1100

900 1000 Time [s] Stride bias

1100

900 1000 Time [s]

1100

10 0 -10 800

0.1 0 -0.1 800

Figure 3. Kalman filter state vector for simulated L5/E5a signals in a severe indoor environment

2) Doppler Based Multipath Mitigation One of the advantages of using a coherent integration time on the order of seconds is the ability of the signal processing to mitigate multipath in the Doppler domain [2]. Doppler based multipath mitigation works only if the user is moving. To verify this statement, two identical signal scenarios are processed: one with a static user and one with a walking pedestrian. The same settings of Tab. II are used, but signal power was 23.5 dBHz. The following two figures (Fig. 4 and Fig. 5) show the code pseudorange residuals as computed by the Kalman filter after the measurement update step. The residuals are divided by their nominal standard deviation, which is computed under the assumption of thermal noise only based on the estimated C/N0. Then a histogram is formed and the Gaussian bell shaped curve is included into the diagram. In both cases multipath was simulated according to Tab. I. One clearly sees that the residuals match better to the thermal-noise-only assumption in the dynamic case, compared to the static case.

Figure 5. Histogram of normalized L5/E5a code pseudorange residuals in a dynamic case

3) The Sensitivity Challenge To test to sensitivity limit of the system, ultra low power GNSS signals have been simulated. GPS L1 signals were acquired at 3 dBHz and tracked at -8 dBHz and Galileo E1B+C signals were acquired at 4.5 dBHz and tracked at -6.5 dBHz with the settings of Tab III. An assisted cold start (~ 20 ms timing error) was used. TABLE III.

LAB L1/E1 ULTRA-SENSITIVITY SETTINGS

Parameter

Signals Sensors GNSS integration time

Value

6 L1, 6 E1BB+C Static user Acq: 29 x 1000 ms Trk: 3 x 10000 ms

Running average over 30.05 s

Running average over 32.16 s

50

50

40

40

30 Estimated C/N0 [dBHz]

Estimated C/N0 [dBHz]

30 20 10 0 -10

20

10

0

-10

-20 -30 850

900

950

1000

1050

-20 700

1100

750

800

850

Time [s]

4) Interference Interference issues due to strong GNSS signals or tone interference are important at low C/N0 values. Those interference effects were assessed for tracking in dedicated tests using the settings of Tab. IV. Signals were acquired at high C/N0 and then the signal power was reduced to -8 (-6.5) dBHz for tracking. In the ideal case all tracking channels should then show a low C/N0. Only if a tracking channel erroneously locks onto the interference signal, a higher C/N0 will be output. When a 60 dBHz tone interferer with 1.5 MHz offset to the L1 center frequency is present, the GPS C/A PRN 6 channel locks onto this interferer as shown in Fig. 7. When the same data is re-processed with an adaptive notch filter, the C/N0 increase of PRN 6 disappears again (Fig. 8). Cross-correlations effects are absent in Fig. 9, where one GPS C/A code signal (PRN 1) is generated with 45 dBHz. The long coherent integration time and the orthogonality of the navigation data bits hinder other channels to lock onto the PRN 1 signal. TABLE IV.

LAB L1/E1 INTERFERENCE SETTINGS

Parameter

Value

Signals

6 L1, 6 E1BB+C

Sensors

Static user

GNSS integration time

Acq: 1 x 300 ms Trk: 4 x 1000 ms

1050

1100

1150

Running average over 32.16 s 50 40 30 Estimated C/N0 [dBHz]

The estimated C/N0 is shown in Fig. 6. At the end of the simulation period a verification trailer was added with ~ 45 dBHz signal power. The rise of the C/N0 estimates ultimately verifies that the channels did follow the signals during the tracking phase. Whereas the acquisition results show visible peaks, we found no direct means to verify tracking at this low power values. The ability of the OXCO to support coherent integration times of 10 s was tested independently [2].

1000

Figure 7. Estimated C/N0 of all signals with a 60 dBHz tone interferer on L1

20 10 0 -10 -20 -30 700

750

800

850

900 950 Time [s]

1000

1050

1100

1150

Figure 8. Estimated C/N0 of all signals with a 60 dBHz tone interferer on L1 plus an adaptive notch filter

Running average over 32.16 s 50

40

Estimated C/N0 [dBHz]

Figure 6. Estimated C/N0 of all signals in the ultra sensitivity lab test

900 950 Time [s]

30

20

10

0

-10 700

750

800

850

900 Time [s]

950

1000

1050

1100

Figure 9. Estimated C/N0 of all signals to verify the cross-correlation protection

Parameter

Value

Signals

6 L1, 6 E1BB+C

Sensors

PNS

GNSS integration time

Acq: 1 x 300 ms Trk: 1 x 1000 ms

B. Real World Results A number of trials with GPS L1 and Galileo E1B+C signals have been performed. Test with E5a signals from GATE were partly corrupted to due a RF frontend chip problem and might be repeated in the future. 1) Dynamic Outdoor Trials with L1 and E1 One experiment consisted of walking the same outdoor track a number of 5 times. The area and the resulting trajectory are shown in Fig. 10 and are located near the GATE office in Schönau, Germany. The processing parameters are listed in Tab V. From Fig. 10, one sees that the DINGPOS system needs a ~ 1 minute of filter initialization time during that the output trajectory (blue line) is virtually useless. After that time, the performance is quite similar to a commercial-of-the-shelf (COTS) GPS receiver, which receives in that case always enough signals with good signal power. When walking near the house walls parts of the signals are blocked and multipath occurs. Multipath effects are visible in the upper right area and affect only the COTS receiver, but not the DINGPOS system. To support long coherent integration times and a high frequency selectivity, the user dynamics must be removed from the GNSS signals before doing the integration. The user dynamics is estimated by a mixture of the dead reckoning PNS solution and short segments of a strapdown calculation [1]. The resulting so-called µ-trajectory is however far from being perfect and the remaining user dynamics shows up as a frequency jitter in the Doppler discriminator, cf. upper part of Fig. 11.

The admissible Doppler range is below +/- 1 Hz and captures on average the true Doppler. We partly could reproduce a similar behavior in the lab tests. For example the middle part of Fig. 11 shows a similar Doppler jitter and was obtained by assuming a 7° 1-sigma variation in the roll and pitch error of the platform. When we improve the attitude accuracy of the IMU based system to 0.001° in roll and pitch and if we assume that precise velocity updates are available each step (e.g. zero-velocity updates from a foot-mounted sensor) then the Doppler jitter is significantly reduced as shown in the lower part of Fig. 11. The still remaining Doppler jitter might be caused by clock jitter or heading and stride length errors. Those errors tend to reduce over time, as they are calibrated by the Kalman filter. System: 1 / Freq: 0 / Sat PRN: 42 2

1

Hz

LAB L1/E1 INTERFERENCE SETTINGS

0

-1

-2 2.344

2.3445

2.345

Frequency Discriminator Residual Frequency Est. Clock Drift 2.3455 2.346 2.3465 Tracking 2.347 Doppler 2.3475 Range(+/-) 2.348 5 Time in GPS Seconds x 10

System: 1 / Freq: 0 / Sat PRN: 14 2 1 Hz

TABLE V.

0 -1 -2 800

850

Frequency Discriminator Residual Frequency Est. Drift 900 950 1000 1050Clock 1100 1150 Time in GPS Seconds Tracking Doppler Range(+/-)

System: 1 / Freq: 0 / Sat PRN: 14 2

Hz

1 0 -1 -2 800

850

900

950 1000 Time in GPS Seconds

Frequency Discriminator Residual Frequency Est. Clock Drift Tracking Doppler Range(+/-) 1050 1100 1150

Figure 11. Doppler discrimiantor output (green) and admissble range (blue), upper: real-world Galileo E1B+C, middle: lab result for GPS C/A with MEMS IMU, lower: lab result for GPS C/A with improved IMU and precise velocity updates

Figure 10. Track of the L1+E1 outdoor trial (blue: DINGPOS, red: COTS GPS L1 receiver)

2) Dynamic Indoor Trials with L1 Dynamics indoor trials were performed in the IFEN office and GPS L1 signals were processed using the settings of Tab. V. Prior to entering the building, a straight line was walked back and forward on the (outdoor) parking deck. The data captured on the parking deck was used to calibrate the heading bias and heading bias rate of the PNS. The PNS derives the heading from the attitude data provided by the XSens IMU. This solution presumable uses a magnetometer/gyro coupling and outperformed our attempts to use a magnetometer only based solution. Especially the IFEN office building is covered by a heavily distorted Earth magnetic field. A disadvantage of the internal XSens solution is that the underlying algorithms are not known. The heading solution is partly quite stable, partly we observed a significant drift and bias. The results shown in Fig. 12 and Fig. 13 show a case with a poor PNS heading performance and the outdoor region is really needed to estimate heading bias and drift. When walking back the straight line, the correction parameters are already estimated and are used in the indoor area. When the heading bias exceeds +/- 10 °, a feedback into the dead reckoning algorithm is performed and the Kalman filter state is reset.

The lower corridor of the building does not allow GPS signal reception due to radiation shielded windows, the upper corridor partly allows GPS signal reception. We repeated the indoor track four times and obtained a repeatability of better than 10 m. 3) Dynamic Indoor Trials with WiFi Another indoor run is shown in Fig. 14 and this the PNS was used plus one WiFi positioning determine the start position of the track. The PNS only a small heading bias and an almost vanishing track is located inside a hotel building and should yellow WiFi access point (AP) marks.

time only result to did show drift. The touch the

Sketch of true indoor walking path

60

40

Δ North [m]

20

0 -20 Indoor area

-40 Sensor calibration outdoors

-60

Figure 14. Track of the PNS+WiFi indoor trial

-80 -160

-140

-120

-100

-80

-60

-40

-20

0

20

40

60

Δ East [m]

Figure 12. Track of the PNS+GPS L1 indoor trial

Clock drift [Hz@L1]

State [m]

100 50 0 -50 200 400 600 800 1000 1200 Time [s] Clock drift 10 0 200 400 600 800 1000 1200 Time [s]

Heading bias [deg]

State [m]

200 400 600 800 1000 1200 Time [s] Δ up

-10

Δ east

Stride bias [m]

State [m]

Δ north 50 0 -50 -100

100 50 0 -50 200 400 600 800 1000 1200 Time [s] Heading bias 10 0 -10 200 400 600 800 1000 1200 Time [s] Stride bias 0.1 0 -0.1 200 400 600 800 1000 1200 Time [s]

Figure 13. Kalman filter state of the PNS+GPS L1 indoor trial

4) Dynamic Indoor Trials with GPS L1 and ZigBee GPS L1 results together with position updates from the fingerprinting based ZigBee engine will be discussed in this section. The processing settings of Tab V. are used again. The planned path is shown in Fig 15. This time we did not allow for a sensor calibration phase and directly started walking after signal acquisition. Therefore the heading bias can be significant as shown in Fig. 16. The ZigBee measurements shown in Fig. 17 try to correct the PNS trajectory and at the end of the trajectory, the Kalman filter estimates a heading bias of 25°. The same experiment was repeated five times and a summary of all five trajectories is shown in Fig. 18. These trials were also used to demonstrate that navigation data bits could be transferred successfully in real-time and could have been applied to the signal processing. The rover receiver is able to buffer the sampled GNSS signals and run the signal processing after the bits have been received. However, as the post-processing analysis is much more convenient than a real-time analysis, the sophisticated data transfer algorithms were not used.

Figure 18. Summary of all five DINGPOS track with GPS L1 + ZigBee, red: nominal track

IV.

Figure 15. Nominal track and locations of the ZigBee motes

CONCLUSIONS

The DINGPOS project provided for most of the participants an interesting experience facing all the subtle problems of indoor positioning and building up a complex and highly integrated system. For example, more then 150 user configurable processing parameters have been introduced in addition to the conventional software receiver parameters to accommodate all DINGPOS algorithms. A first key achievement of the DINGPOS project is its ability to synchronously collect all kind of measurements relevant for indoor positioning and to support in principle all possible integration schemes via the software receiver application programming interface (API). The developed signals processing algorithms did show a remarkable sensitivity probably not being achieved so far. By using vector tracking all visible signals are permanently tracked and multipath errors and interference are mitigated. The laboratory tests verified theoretical results and showed that especially L5/E5a signals might significantly boost the GNSS indoor coverage in future and allow achieving meter-level accuracies with ~ 10 dBHz signals (e.g. after attenuation by two walls).

Figure 16. One DINGPOS track with GPS L1 + ZigBee

Figure 17. One DINGPOS track with GPS L1 + ZigBee, red: nominal track, blue: ZigBee position updates, green: DINGPOS trajectory

In all real world tests the heading accuracy of the PNS is one of the key parameters that determines the positioning performance of the system. We could demonstrate that a longer initialization time can in principle be used to calibrate these errors. After calibration, our indoor tests did show a positioning accuracy at the several meter level using only the PNS. Without calibration, the performance drastically degrades. A well calibrated ZigBee environment (and to a lesser extend the WiFi environment) did give positioning updates with a substantially better accuracy than a calibrated PNS. In all realworld indoor tests, the L1/E1 signals did not further improve the calibrated PNS-only accuracy. However, the L1/E1 signals were available nearly all the time and did give an independent positioning solution however with a reduced accuracy probably due to (still not mitigated) multipath errors. One possibility to further improve multipath mitigation and the PNS performance simultaneously would be to use a new class of MEMS IMUs with 10°/hour drift and to mount them in a way to allow zero velocity updates. Only this would unleash the full multipath mitigation capability of a long coherent integration time and would also drastically improve the stride length and step height accuracy of the PNS.

ACKNOWLEDGMENT

REFERENCES

The presented work was performed within an ESTEC contract, no. 20834.

[1] Niedermeier, H., Eissfeller, B., Winkel, J., Pany, T., Riedl, B., Wörz, T., Schweikert, R., Lagrasta, S., Lopez-Risueno, G., and Jiminez-Banos, D., "DINGPOS: High sensitivity GNSS platform for deep indoor scenarios," Proc. IEEE Int. Conf. on Indoor Positioning and Indoor Navigation (IPIN), Zurich, 2010. [2] Pany T., Riedl, B., Winkel, J., Wörz, T., Schweikert, R., Niedermeier, H., Lagrasta, S., Lopez-Risueno, G., and Jiminez-Banos, D., Coherent Integration Time: The Longer, the Better InsideGNSS, vol. 4, no. 6, pp. 52-61, 2009.