grazer linuxtage 2016 · dr. franz fasching präzise gnss-positionierung mit raspberry pi und...
Post on 07-Jul-2019
222 Views
Preview:
TRANSCRIPT
Grazer Linuxtage 2016
Präzise GNSS-Positionierungmit dem Raspberry Pi und RTKLIB
Dr. Franz FaschingApril 2016
Dr. Franz Fasching Präzise GNSS-Positionierung mit Raspberry Pi und RTKLIB 2
Überblick
■ Wie funktioniert Satellitennavigation?
■ Hardwarevoraussetzungen
■ Raspberry Pi
■ GNSS-Empfänger
■ Antenne
■ Softwarevoraussetzungen
■ Raspbian
■ RTKLIB
■ Precise Point Positioning vs. Real-Time Kinematics
■ Anwendungsfälle
■ Fazit
Dr. Franz Fasching Präzise GNSS-Positionierung mit Raspberry Pi und RTKLIB 3
GNSS-Satellitennavigation
■ GNSS (Global Navigation Satellite System) subsummiert GPS (Global Positioning System; NAVSTAR), GLONASS, GALILEO, BEIDOU, QZSS, IRNSS, ...
■ Orbit 25.000 km, 6 km/s, 227 Satelliten
■ GNSS-Satelliten besitzen 3-4 äußerstpräzise Atomuhren (Cs, Rb)
■ Senden ihre aktuelle Position und genaueGPS-Zeit auf definierter Frequenz
■ Empfänger misst Signallaufzeiten (C/A-Code),bestimmt daraus Distanzen der Satelliten
■ 3D-Positionsbestimmung durchBestimmung des Schnittpunktes von4 Kugeloberflächen
Trex2001 - Eigenes Werk, CC BY-SA 3.0Trex2001 - Eigenes Werk, CC BY-SA 3.0
Dr. Franz Fasching Präzise GNSS-Positionierung mit Raspberry Pi und RTKLIB 4
GNSS-Frequenzen
400 nm 450 nm 550 nm500 nm 600 nm 650 nm 700 nm
Das für den Menschen sichtbare Spektrum (Licht)
1 km 1 Mm1 m1 cm1 mm1 nm 1 µm1 pm1 fm 1 Å
InfrarotUltraviolett
1012
1 Terahertz10
1110
1310
1410
15
1 Petahertz10
1610
1710
18
1 Exahertz10
1910
2010
21
1 Zettahertz10
2210
2310
1010
9
1 Gigahertz10
810
710
6
1 Megahertz10
510
410
3
1 Kilohertz10
2
Wechselströme
hoch- mittel- nieder- frequente
105
104
106
107
103
102
101
100
10−1
10−2
10−3
10−4
10−5
10−6
10−7
10−8
10−9
10−10
10−11
10−12
10−13
10−14
10−15
LangwelleMittelwelleUV-
C/B/A harte- mittlere- weiche-
RundfunkMikrowellen
Terahertz- strahlung
Röntgenstrahlung
UKWVHF
UHFInfrarot- strahlung
Radar MW-Herd
Ultraviolett- strahlung
Gamma- strahlung
Höhen- strahlung
Wellenlänge in m
Frequenz in Hz (Hertz)
Quelle/ Anwendung/ Vorkommen Kurzwelle
Horst Frank / Phrood / Anony - Horst Frank, Jailbird and Phrood, CC BY-SA 3.0
Wellenlänge λ=cf
GPS-Frequenz 1575,42 MHz → Wellenlänge 0,19 m
Dr. Franz Fasching Präzise GNSS-Positionierung mit Raspberry Pi und RTKLIB 5
GNSS-FrequenzbänderGPS
16
02
,00
0
FDMA
12
46
,00
0
L2PTL5R
FDMA
11
76
,45
0
L1PTL3PT
12
01
,50
0
FDMA
http://www.thsoa.org/pdf/fugrognsshydrosociety2007.pdf
15
75
,42
0
L1CR
CDMA CDMA
http://www.ima.umn.edu/talks/workshops/8-16-18.2000/van-dierendonck/GPSSIGSTRUCTURE.PDF
http://www.unoosa.org/pdf/icg/2007/icg2/presentations/05.pdf
http://comp.uark.edu/~mattioli/geol_4733/GPS_signals.ppt
http://www.itu.int/jive/servlet/JiveServlet/download/455-1231-287267-713/GLONASS.pdf
http://www.glonass.it/admin/config/download.aspx?filename=01_63_Glonass_%20status_06.pdf
L2L5 L1
12
27
,60
0
E2, L1, E1
GLONASS
Galileo
Compass
12
78
,75
0
E6
12
78
,75
0
E5a, E5b
http://www.reject.org/tsd/liz/gbppr/mil/gps/p1.pdf
L6
15
44
,50
0
http://www.nrw.qld.gov.au/gnss/events/pdf/galileo_alexsteciw.pdf
E3E4
12
15
,00
0
12
56
,00
0
frequency [MHz]
15
42
,50
0
Omnistar WAAS/EGNOS
E2(B1)
15
61
,09
8
E6(B3)
12
68
,52
0
http://en.wikipedia.org/wiki/Compass_navigation_system
E5B(B2)
12
68
,52
0
SBAS
multiplexing:
band occupied
band reserved/planned
GPS
16
02
,00
0
FDMA
12
46
,00
0
L2PTL5R
FDMA
11
76
,45
0L1PTL3PT
12
01
,50
0FDMA
15
75
,42
0
L1CR
CDMA CDMA
L2L5 L1
12
27
,60
0E2, L1, E1
GLONASS
Galileo
Compass1
27
8,7
50
E6
12
78
,75
0
E5a, E5b L6
15
44
,50
0
E3E41
21
5,0
00
12
56
,00
0frequency [MHz]
15
42
,50
0
Omnistar WAAS/EGNOS
E2(B1)
15
61
,09
8
E6(B3)1
26
8,5
20
E5B(B2)
12
68
,52
0
SBAS
multiplexing:
band occupied
band reserved/planned
This is SOURCE for image in paper border (with measure in px and guides)
Dr. Franz Fasching Präzise GNSS-Positionierung mit Raspberry Pi und RTKLIB 6
Fehlerquellen
■ Numerisch: Verringerung der Positionsgenauigkeitdurch schleifende Schnitte (Dilution of Precision,DOP) der Kugeloberflächen
■ Satellit:
■ Präzision der Atomuhren (Relativitätstheorie!)
■ Präzision der Umlaufbahnen (Ephemeriden)
■ Atmosphäre:
■ Ionosphäre verändert Signallaufzeit frequenz-abhängig (schwankende Anzahl freier Elektronen)durch Refraktion und Eintrittswinkel
■ Troposphäre: frequenzunabhängiger Einfluss
■ Dopplereffekt: Bewegung des Satelliten auf denBeobachter zu oder vom Beobachter weg
■ Multipath-Effekte: urban canyons, tree canopy
■ Empfänger: Präzision der Zeitmessung (TCXO)Trex2001 - Eigenes Werk, CC BY-SA 3.0
Dr. Franz Fasching Präzise GNSS-Positionierung mit Raspberry Pi und RTKLIB 7
User Range Errors (URE)
■ Summe aller Zeit- und Ortsfehler bei unkorrigierten Meßwerten
■ Satellitenbedingt: SIS-URE (Signal-in-Space User Range Errors)
■ Signalausbreitung: UERE (User Equipment Range Errors)
■ → Ionosphäre hat größten Einfluss
■ Genauigkeitsverbesserung: überbestimmte Ortung, Referenz-messungen (DGNSS), Phasenauswertung und Korrekturdaten
Quelle Zeitfehler Ortsfehler
Satellitenposition 6-60 ns 1-10 m
Zeitdrift 0-9 ns 0-1,5 m
Ionosphäre 0-180 ns 0-30 m
Troposphäre 0-60 ns 0-10 m
Mehrwegeffekte 0-6 ns 0-1 mQuelle: Wikipedia - GlobalesNavigationssatellitensystem
Dr. Franz Fasching Präzise GNSS-Positionierung mit Raspberry Pi und RTKLIB 8
Genauigkeitsverbesserung
■ Überbestimmte Ortung: Wird von praktisch allen Empfängern verwendet. Bei „Überangebot“ an sichtbaren Satelliten, Verwendung der „besseren“, Ausscheiden der „schlechteren“ (Elevation, SNR)
■ Differential-GNSS: Verwendung einer Referenzmessung (base station), Eliminierung gleicher Fehler → RTK (real-time kinematics)
■ Phasenauswertung: Zusätzlich zur Standardlösung (Code-Solution) wirddie Phasenlage des Satellitenträgersignals (GPS: 1575,42 MHz) ausgewertet. Voraussetzung: Empfänger liefert Rohdaten des Satellitensignals
■ Korrekturdaten zu Satelliten-Clocks, -Ephemeriden, Ionosphäre, Troposphäre aus eigenen Referenzstationen
■ NASA-CDDIS (Crustal Dynamics Data Information System)
■ IGS (International GNSS Service)
■ Diverse kommerzielle Anbieter
Dr. Franz Fasching Präzise GNSS-Positionierung mit Raspberry Pi und RTKLIB 9
Real-Time Kinematics
■ Referenzstation (base station)und Empfänger (rover) mitFunkverbindung (schmalbandig)
■ Fehler heben sich beikleinem Abstand (bis zu10km) auf
■ Messung der Phase desTrägersignals, deshalbRohdatenausgabe desGNSS-Empfängers erforderlich
■ Problem: carrier phase ambiguity da nicht bekannt ist, wieviele Perioden lang das Signal nun ist → Fehler ein Vielfaches der Wellenlänge (19cm)
■ Integer ambiguity resolution durch statistische Methoden und Vergleich mit der Codelösung
NVS BINR Protocol Specification V1.3, Raw Data
Dr. Franz Fasching Präzise GNSS-Positionierung mit Raspberry Pi und RTKLIB 10
RTKLIB
■ FOSS-Software zur präzisen Berechnung von GNSS-Positionen
■ Autor Tomoji Takasu (Tokyo University of Marine Science and Technology)
■ Homepage www.rtklib.com
■ Code gehostet auf GitHub: github.com/tomojitakasu/RTKLIB
■ Lizenz: BSD 2-clause (opensource.org/licenses/BSD-2-Clause)
■ Besteht aus einer Library, einem Windows-GUI (läuft unter WINE) und Commandline-Tools (ANSI C)
■ Benötigt einen Empfänger, der Rohphasendaten liefern kann
■ Professionelle Hersteller: NovAtel, Hemisphere, JAVAD, Furuno
■ Low-Cost: u-blox, SkyTraq, NVS
■ Beherrscht alle zuvor genannten Genauigkeitsverbesserungen
Dr. Franz Fasching Präzise GNSS-Positionierung mit Raspberry Pi und RTKLIB 11
RTKLIB Windows-GUI
Dr. Franz Fasching Präzise GNSS-Positionierung mit Raspberry Pi und RTKLIB 12
RTKLIB Commandline Tools
■ Real-Time:
■ STR2STR – Stream-to-Stream Converter
■ Konvertiert GNSS-Rohdatenstreams „on-the-fly“
■ RTKRCV – Real-Time Positionsberechnung
■ Bis zu 3 Input-Streams (Base, Rover, Korrekturdaten)
■ Postprocessing:
■ CONVBIN – Convert binary
■ Konvertiert binäre Rohdaten ins RINEX Format
■ RNX2RTKP – RINEX to RTK Position solution
■ Berechnet eine präzise PPP oder RTK-Lösung
■ POS2KML – Konvertiert POS-Dateien ins KML-Format
Dr. Franz Fasching Präzise GNSS-Positionierung mit Raspberry Pi und RTKLIB 13
Betriebsmodi und damit erzielbare Genauigkeiten
■ Single
■ „Normale“ GPS Codelösung
■ Genauigkeit etwa 2,5m 1-σ 2D
■ PPP (Precise Point Positioning) mit Korrekturdaten, Postprocessing
■ Phasenlösung mit CDDIS/IGS Korrekturdaten
■ Genauigkeit bis zu 20cm 1-σ 2D
■ RTK short baseline oder RTK long baseline mit Korrekturdaten
■ Konfiguration Rover mit Base Station
■ Genauigkeit etwa 3cm 1-σ 3D
■ Long-term static RTK short baseline, Postprocessing
■ Genauigkeit bis zu 4mm 1-σ 3D (!)
Dr. Franz Fasching Präzise GNSS-Positionierung mit Raspberry Pi und RTKLIB 14
Hardware
■ Raspberry Pi (beliebiges Modell)
■ Rohdatenfähiger GNSS-Empfänger:
■ Modul für den RPi Expansion Port: RaspiGNSS„Aldebaran“ drfasching.com/products/gnss/raspignss
■ USB-Anbindung: optimalsystem.de, onetalent-gnss.com
■ GNSS-Antenne guter Qualität (z.B. Tallysman TW-2410 für Base Station, TW-4421 für Rover) drfasching.com/products/gnss/antennas
■ Achtung: Antenne muss zum Empfänger passen (LNA-Versorgung, Frequenzen L1/L2, GPS/GLONASS, etc.)
■ Achtung: Gute Sichtbedingungen („sky view“) Voraussetzung, großer Sichtwinkel, keine Abschattungen, keine Reflexionen
Dr. Franz Fasching Präzise GNSS-Positionierung mit Raspberry Pi und RTKLIB 15
Hardware Beispiele
RasPiGNSS „Aldebaran“ auf Raspberry Pi A+NVS NV08C-CSM GPS/GLONASS receiver
Tallysman TW-2410 GPS+GLONASS
OptimalSystem NV08C-RTK-DSPPUSB, Bluetooth
Manufactured in Austria by
Dr. Franz Fasching Präzise GNSS-Positionierung mit Raspberry Pi und RTKLIB 16
Software
■ Raspbian „Jessie“ Lite (die Debian-Variante am Raspberry Pi)
■ RasPiGNSS-Tools (rpgtools, drfasching.com/downloads)
■ RTKLIB CUI Tools, kompiliert für Raspberry Pi (rtklib, drfasching.com/downloads)
■ Optional: Auswertesoftware, welche die gespeicherten Tracks aufbereiten und anzeigen kann, z.B. QGIS
■ Vorbereitung Raspbian:
■ Freimachen von /dev/ttyAMA0:console=serial0,115200 aus /boot/cmdline.txt entfernen
■ Takt der seriellen Schnittstelle erhöhen:init_uart_clock=6000000 in /boot/config.txt einfügen,sonst können keine 230400 Baud erreicht werden
Dr. Franz Fasching Präzise GNSS-Positionierung mit Raspberry Pi und RTKLIB 17
Konfiguration
■ Base Station (str2str)
■ str2str -in serial://ttyAMA0:230400:8:o:1:off -out tcpsvr://:1234
■ Rover (rtkrcv): Konfiguration der rtkrcv.conf
■ inpstr1-type =serialinpstr1-path =ttyAMA0:230400:8:o:1:offinpstr1-format =nvs
■ inpstr2-type =tcpcliinpstr2-path =basestation:1234inpstr2-format =nvs
■ outstr1-type =tcpsvroutstr1-path =:2947outstr1-format =nmea
■ pos1-posmode =kinematic
■ pos2-armode =fix-and-hold
Dr. Franz Fasching Präzise GNSS-Positionierung mit Raspberry Pi und RTKLIB 18
Ergebnis
■ Monitoring mit status 2 in rtkrcv nach etwa 2 Minuten Laufzeit:
…
solution status : fix
# of input data rover : obs(680),nav(6),gnav(5),ion(2),sbs(137),pos(0),dgps(0),err(0)
# of input data base : obs(711),nav(0),gnav(0),ion(2),sbs(142),pos(0),dgps(0),err(0)
…
pos xyz float std (m) rover : 0.032,0.015,0.040
pos xyz fixed std (m) rover : 0.031,0.014,0.038
baseline length float (m) : 9.606
baseline length fixed (m) : 9.616
■ → Positionsgenauigkeit etwa 3 cm bei einer Baselinelänge von 10m
Dr. Franz Fasching Präzise GNSS-Positionierung mit Raspberry Pi und RTKLIB 19
Anwendungsbeispiele
■ Langzeit-RTK im Bergbau (Australien)
■ Vorspannungsmessung im Straßenbau
■ Messung horizontaler und vertikaler Verschiebungen an Tagbau- und Tiefbauminen
■ Messung der Oberflächeneffekte von Tiefbauminen
■ Langzeitaufzeichnung und periodische Übermittlung von Rohdaten, RTK-Postprocessing mit Korrekturdaten samt statistischer Auswertung um präzise minimalste Bewegungen zu registrieren.
■ „We find the 24 hour averaged continuous static data to be easily and consistently sub 10mm....if not better. The low power draw is ideal for very long occupation. We are absolutely ecstatic with the technology.“ GNSS Monitoring
Dr. Franz Fasching Präzise GNSS-Positionierung mit Raspberry Pi und RTKLIB 20
Anwendungsbeispiele (2)
■ Realtime-RTK - „Precision Farming“Autonomes Fahren im Agrarbereich zur präzisen Feldbearbeitung bzw. Dünger-/Pestizidausbringung.Ein Raspberry Pi / RasPiGNSS als fixe Base Station in der Umgebung, ein zweiter am Traktor/Arbeitsgerät verbunden mit einer Autopilot-Software. Funkstrecke zur Korrekturdatenüberittlung über ISM-Band (2.4 GHz)-Module (z.B. XBee Pro).
■ PPP PostprocessingVerifikation von Mautstrecken für GPS-basierte Mautsysteme. Aufzeichnung Rohdaten mit Raspberry Pi / RasPiGNSS und PPP-Postprocessing mit CDDIS-Korrekturdaten. Nach der Messfahrt Hochladen der Rohdaten auf Server, der ständig CDDIS-Korrekturdaten sammelt, die Rohdaten im Batchbetrieb auswertet (rnx2rtkp) und das Ergebnis zum Download ablegt.
Dr. Franz Fasching Präzise GNSS-Positionierung mit Raspberry Pi und RTKLIB 21
Fazit
■ Ein Raspberry Pi kann mit einem Low-Cost L1 GNSS-Empfänger in Kombination mit RTKLIB unter bestimmten Voraussetzungen zur präzisen GNSS-Positionsbestimmung genutzt werden
■ Zeitdauer für einen Fix relativ lang, da im Gegensatz zu professionellem L1+L2-Equipment nur die L1-Frequenz benutzt wird → untauglich für On-the-Spot-Messungen im Vermessungswesen
■ Preis für einen Rover aber sehr gering im Gegensatz zu professionellem Equipment
■ Einsatz daher bevorzugt in Bereichen, wo viele Rover über lange Zeit verwendet werden sollen:
■ Langzeit-Monitoring in Geodäsie, Tagbau, Hochbau
■ Agrarbereich, autonomes Fahren in definierten Gebieten
■ Fahrzeugflotte zur Verifikation von Mautstrecken
Dr. Franz Fasching Präzise GNSS-Positionierung mit Raspberry Pi und RTKLIB 22
Quellenverzeichnis
■ Wikipedia GPS: de.wikipedia.org/wiki/GPS
■ Wikipedia GNSS: de.wikipedia.org/wiki/Globales_Navigationssatellitensystem
■ Wikipedia GPS Signals:en.wikipedia.org/wiki/GPS_signals
■ Wikipedia Real Time Kinematic: en.wikipedia.org/wiki/Real_Time_Kinematic
■ Navipedia RTK: www.navipedia.net/index.php/RTK_Fundamentals
■ RTKLIB Homepage: www.rtklib.com
■ Code auf GitHub: github.com/tomojitakasu/RTKLIB
■ RasPiGNSS: drfasching.com/products/gnss/raspignss
■ RasPiGNSS Software: drfasching.com/downloads
Dr. Franz Fasching Präzise GNSS-Positionierung mit Raspberry Pi und RTKLIB 23
Vielen Dank für Ihre Aufmerksamkeit!
Sie können den Vortrag unterhttp://glt16-programm.linuxtage.at/
bewerten.
top related