goGPS
a navigation software to enhance the
accuracy of low-cost GPS receivers



                            Eugenio Reali...
Why goGPS?


                              miniaturization of
                              low-cost and low-
            ...
Basic ideas behind goGPS


 develop a tool which allows to   exploit the availability of networks
modify Kalman filter par...
Italy ← goGPS → Japan



                                   Media Center
Geomatics Laboratory            Osaka City Univer...
Double freq. vs single freq.

       GPS satellites broadcast signal on two carriers: L1 and L2




High-end professional ...
RTK vs stand-alone

US $ 15000 - 25000                                  US $ 70 - 150




Real-Time Kinematic (RTK)       ...
DGPS vs stand-alone

US $ 1000 - 1500                                    US $ 70 - 150




    Single frequency
Differenti...
goGPS niche

US $ 15000 - 25000   US $ 1000 - 1500             US $ 70 - 150




 2-3 cm                15-30 cm          ...
Raw GPS data!




                       u-blox Evaluation Kits
                        (AEK-4T / EVK-5T)



    To apply ...
Raw GPS data!




 goGPS     Navit, TomTom SW, ...
Kalman filter/1

It is the core of the
software.

It updates the position
of the receiver in real-
time on the basis of:

...
Kalman filter/2

                                                       Dynamic model:
 State variables:
                 ...
DTM observation

      In order to improve the heigth positioning quality, a new
      observation from a DTM is introduce...
Constrained motion

 If the rover is moving along a path that is known a priori
 (e.g. road, railway, …) a linear constrai...
Software/1

- developed in MATLAB environment

- 1 Hz data acquisition rate by means of
“Instrument Control” toolbox (stan...
Software/2
Hardware/1



                      Base station(s)
                                          NT
                         ...
Hardware/2



                                 Base station(s)
                                                     NT
   ...
Accuracy test/1

eBonTek egps597
chipset: ANTARIS 4
signal: C/A, L1

Provides NMEA in output over a
Bluetooth connection. ...
Accuracy test/2


Leica GPS1200
signal: C/A, P
        L1, L2

Double frequency receiver
with RTK capabilities.



Leica G...
Accuracy test/3

Como permanent station,
used as base station
(through GPSLombardia
positioning service)
Accuracy test/4

Devices:
- Leica GPS1200
- Leica GS20
- eBonTek eGPS 597
- ev. kit u-blox + goGPS

Fixed on the rooftop o...
Accuracy test/5

Devices:
- Leica GPS1200
- Leica GS20
- eBonTek eGPS 597
- ev. kit u-blox + goGPS

                goGPS
...
goGPS in Japan

 goGPS testing and development in Japan requires to get access to
 RTK services (data coming from one or m...
goGPS & RTKLIB

 goGPS conversion from MATLAB to C/C++


    new (C++)     goGPS GUI                     GUI

MATLAB → C  ...
goGPS & WPS

goGPS development could also include WPS functionality, to shift
the computational / storage burden from the ...
goGPS@Sourceforge


  goGPS MATLAB code (GPLv3):

http://sourceforge.net/projects/gogps


            Thank you!
Upcoming SlideShare
Loading in …5
×

Foss4g2009tokyo Realini Go Gps

1,679 views

Published on

FOSS4G 2009 Tokyo(フォスフォージー2009東京)
-フリー&オープンソースGISの祭典-
http://www.osgeo.jp/foss4g2009-in-tokyo/
2009年11月1日(日) ~ 2日(月)

Published in: Technology, Business
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,679
On SlideShare
0
From Embeds
0
Number of Embeds
9
Actions
Shares
0
Downloads
34
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Foss4g2009tokyo Realini Go Gps

  1. 1. goGPS a navigation software to enhance the accuracy of low-cost GPS receivers Eugenio Realini Osaka City University, Japan
  2. 2. Why goGPS? miniaturization of low-cost and low- power GPS modules diffusion of GPS- and antennas enabled devices (smartphones, PDAs, cameras) !!! BAD ACCURACY !!! (~ 5 meters)
  3. 3. Basic ideas behind goGPS develop a tool which allows to exploit the availability of networks modify Kalman filter parameters of permanent GPS stations and to study new approaches to wireless connectivity GPS navigation to enhance the navigation (not possible with black-box accuracy of low-cost GPS commercial algorithms) devices Kinematic surveying Precise off-road navigation Location Based Services Low-cost mapping ...
  4. 4. Italy ← goGPS → Japan Media Center Geomatics Laboratory Osaka City University Politecnico di Milano Como Campus goGPS
  5. 5. Double freq. vs single freq. GPS satellites broadcast signal on two carriers: L1 and L2 High-end professional receivers Low-cost commercial receivers use both L1 and L2 use just L1 (double frequency receivers) (single frequency receivers) Accuracy: 2-3 cm (real-time) Accuracy: 3-5 m (real-time)
  6. 6. RTK vs stand-alone US $ 15000 - 25000 US $ 70 - 150 Real-Time Kinematic (RTK) Stand-alone positioning (but nowadays it is easy (via Internet connection) to add Internet access) nothing 2-3 cm (real-time) in between? 3-5 m (real-time)
  7. 7. DGPS vs stand-alone US $ 1000 - 1500 US $ 70 - 150 Single frequency Differential GPS (DGPS) Stand-alone positioning (but still they cost much (via Internet connection) less) nothing 15-30 cm (real-time) in between! 3-5 m (real-time)
  8. 8. goGPS niche US $ 15000 - 25000 US $ 1000 - 1500 US $ 70 - 150 2-3 cm 15-30 cm 3-5 m RTK DGPS Stand-alone 40 cm - 1 m goGPS L1 RTK positioning
  9. 9. Raw GPS data! u-blox Evaluation Kits (AEK-4T / EVK-5T) To apply RTK goGPS: L1 RTK positioning raw GPS observations (via Internet connection) are needed!
  10. 10. Raw GPS data! goGPS Navit, TomTom SW, ...
  11. 11. Kalman filter/1 It is the core of the software. It updates the position of the receiver in real- time on the basis of: • new measurements • the state of the system at the previous epoch state variables To implement it, it is needed to define: dynamic model observations
  12. 12. Kalman filter/2 Dynamic model: State variables:  x r (t + 1) = x r (t) + x r (t) ˙ ˙  xr   x r (t + 1) = 0 + x r (t) + ε x (t) ˙ ˙  ˙  r  xr   ⋮     Np1 (t + 1) = Np1 (t) rm rm  yr  parameters describing   the receiver motion  ⋮ yr  ˙  Np32 (t + 1) = Np32 (t)   (position, velocity, Xt =  ⋮   rm rm  acceleration, etc.) zr     zr  ˙ Observation equations:    ⋮   Prm (t) = ρps (t)  ps + ν codice  Np1  rm  rm   ps phase ambiguities  λΦrm (t) = ρps (t) + λNps (t) + ν fase   ⋮  rm rm   (double differences)  Np32  rm
  13. 13. DTM observation In order to improve the heigth positioning quality, a new observation from a DTM is introduced: A DTM obtained from a hDTM = h(x r , y r , zr ) + v DTM LiDAR DSM 2m x 2m produced by Lombardy σ v ≈ 30 cm Region (Italy) was used during tests. DTM loading time was optimized by subdividing the DTM in buffered tiles. approx. Tile detection of the 4 Interpolation KF position search nearest vertices
  14. 14. Constrained motion If the rover is moving along a path that is known a priori (e.g. road, railway, …) a linear constraint can be introduced, making the motion mono-dimensional The constraint is modeled as 3D interconnected segments and the motion is described by a curvilinear coordinate (c):  cr  (X2,Y2,Z2) (X3,Y3,Z3)  ˙  (X1,Y1,Z1)  cr  c2 c new state  ⋮  c1 variable: X t =  p1  (X0,Y0,Z0)  Nrm  c0  ⋮      Nrm  p32 
  15. 15. Software/1 - developed in MATLAB environment - 1 Hz data acquisition rate by means of “Instrument Control” toolbox (standard TCP- IP and USB) - real-time update of receiver position (computation time about 15 ms on Intel Centrino CPU 1.66 GHz) - real-time update of the position with respect to a known reference or on Google Earth - Post-processing (post-mission) analysis by means of RINEX files or goGPS data saved during a real-time test
  16. 16. Software/2
  17. 17. Hardware/1 Base station(s) NT RI P (RT USB CM 3.1 ) 3G Internet goGPS USB
  18. 18. Hardware/2 Base station(s) NT RI P (RT CM 3.1 ) 3G device with: - goGPS Internet - GPS receiver - wireless internet
  19. 19. Accuracy test/1 eBonTek egps597 chipset: ANTARIS 4 signal: C/A, L1 Provides NMEA in output over a Bluetooth connection. Stand-alone positioning. u-blox AEK–4T chipset: ANTARIS 4 signal: C/A, L1 It has an external patch antenna and it provides raw data and/or processed data (NMEA format) by USB connection. Its parameters are fully customizable.
  20. 20. Accuracy test/2 Leica GPS1200 signal: C/A, P L1, L2 Double frequency receiver with RTK capabilities. Leica GS20 signal: C/A, L1 Mid-level receiver (single freq.), designed for cartographic update and quick decimeter-level surveys. It supports DGPS positioning.
  21. 21. Accuracy test/3 Como permanent station, used as base station (through GPSLombardia positioning service)
  22. 22. Accuracy test/4 Devices: - Leica GPS1200 - Leica GS20 - eBonTek eGPS 597 - ev. kit u-blox + goGPS Fixed on the rooftop of a car driven on a road with good sky visibility.
  23. 23. Accuracy test/5 Devices: - Leica GPS1200 - Leica GS20 - eBonTek eGPS 597 - ev. kit u-blox + goGPS goGPS (cutoff = 10°) mean 1.13 m std 0.67 m goGPS Leica GS20 eBonTek (cutoff = 30°) (mod. “Max Accuracy”) mean 0.78 m mean 0.30 m mean 4.03 m std 0.47 m std 0.15 m std 1.70 m
  24. 24. goGPS in Japan goGPS testing and development in Japan requires to get access to RTK services (data coming from one or more permanent stations). Three choices: Commercial “Free” providers Build up our own service providers Example: Base station (not Kyoto University necessarily permanent) permanent station at OCU - data stream is - highest freedom - great coverage publicly available - advanced services BUT: (e.g. VRS) BUT: - buy/rent dual freq. - high distance receiver BUT: - no NTRIP - set up NTRIP caster - expensive - RTCM 2.3
  25. 25. goGPS & RTKLIB goGPS conversion from MATLAB to C/C++ new (C++) goGPS GUI GUI MATLAB → C goGPS core Kalman filter - positioning func. RTKLIB - input/output already by T.Takasu - GPS formats existing (C) (GPLv3) - (...) http://gpspp.sakura.ne.jp/rtklib/rtklib.htm
  26. 26. goGPS & WPS goGPS development could also include WPS functionality, to shift the computational / storage burden from the rovers to a central server. Examples: DTM height rough position Server providing Rovers running goGPS DTM data interpolation as WPS accurate positioning raw code and phase observations Server running goGPS Rovers just acquiring with WPS functionality raw data
  27. 27. goGPS@Sourceforge goGPS MATLAB code (GPLv3): http://sourceforge.net/projects/gogps Thank you!

×