GPSStation Eine GPS-Applikation mit integrierter interaktiver

Transcription

GPSStation Eine GPS-Applikation mit integrierter interaktiver
GPSStation
Eine GPS-Applikation mit integrierter
interaktiver Landkarte zur Auswertung
satellitengestützter Navigationsdaten
Michael Hurnaus
MASTERARBEIT
eingereicht am
Fachhochschul-Masterstudiengang
Digitale Medien
in Hagenberg
im Juni 2008
© Copyright 2008 Michael Hurnaus
Alle Rechte vorbehalten
ii
Erklärung
Hiermit erkläre ich an Eides statt, dass ich die vorliegende Arbeit selbstständig und ohne fremde Hilfe verfasst, andere als die angegebenen Quellen
und Hilfsmittel nicht benutzt und die aus anderen Quellen entnommenen
Stellen als solche gekennzeichnet habe.
Hagenberg, am 21. Juni 2008
Michael Hurnaus
iii
Inhaltsverzeichnis
Erklärung
iii
Vorwort
vi
Kurzfassung
vii
Abstract
viii
1 Einleitung
1.1 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2 Zielsetzung . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3 Aufbau der Arbeit . . . . . . . . . . . . . . . . . . . . . . . .
1
1
1
2
2 Satellitengestützte Navigation
2.1 Entwicklung und Technologie . . . . . .
2.1.1 Funktionsweise . . . . . . . . . .
2.1.2 Alternative Positionsbestimmung
2.1.3 Protokolle . . . . . . . . . . . . .
2.2 Anwendungen . . . . . . . . . . . . . . .
2.2.1 Navigation . . . . . . . . . . . .
2.2.2 Vermessung . . . . . . . . . . . .
2.2.3 Militär . . . . . . . . . . . . . . .
2.2.4 GPS im Sport . . . . . . . . . . .
2.2.5 Geocaching . . . . . . . . . . . .
2.2.6 Geotagging . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
4
4
5
7
9
12
12
13
14
14
17
18
3 Interaktive Landkarten
3.1 Technologie . . . . . . . . .
3.1.1 Google Maps . . . .
3.1.2 Windows Live Maps
3.1.3 Yahoo! Maps . . . .
3.1.4 Nasa World Wind .
3.1.5 OpenStreetMap . . .
3.1.6 Vergleich . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
21
21
21
23
24
26
26
27
.
.
.
.
.
.
.
iv
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
INHALTSVERZEICHNIS
3.2
v
Anwendungen . . . . . . . . . . . .
3.2.1 Google Earth . . . . . . . .
3.2.2 Nasa World Wind Desktop
3.2.3 Mapnik . . . . . . . . . . .
3.2.4 Osmarender . . . . . . . . .
.
.
.
.
.
28
29
29
30
30
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
31
31
31
36
37
39
41
41
43
44
47
50
52
5 Zusammenfassung
5.1 Resümee . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2 Erweiterungsmöglichkeiten . . . . . . . . . . . . . . . . . . .
5.2.1 Laufzeithochrechnung nach Roger Kaufmann . . . .
5.2.2 Anbindung von GPS-Sendegeräten . . . . . . . . . .
5.2.3 Pulsmessgeräte . . . . . . . . . . . . . . . . . . . . .
5.2.4 Editiermöglichkeit für GPS-Informationen in Bildern
.
.
.
.
.
.
55
56
57
57
57
58
58
.
.
.
.
.
.
.
59
59
59
59
59
60
60
60
4 GPSStation
4.1 Verwendete Technologien . . . .
4.1.1 Hardware . . . . . . . .
4.1.2 Software . . . . . . . . .
4.2 Struktur der Applikation . . . .
4.3 Interaktive Landkarte . . . . .
4.4 Subapplikationen . . . . . . . .
4.4.1 GeoTagger . . . . . . . .
4.4.2 GeoPictureViewer . . . .
4.4.3 LogImporter / Exporter
4.4.4 LogAnalyzer . . . . . .
4.4.5 WhereWasMyHusband .
4.4.6 RunningAssistant . . . .
A Inhalt der CD-ROM
A.1 Masterarbeit . . . .
A.2 Quellcode . . . . . .
A.3 Bibliotheken . . . . .
A.4 Ausführbare Dateien
A.5 Demo-Dateien . . . .
A.6 Dokumentation . . .
A.7 Referenzen . . . . . .
Literaturverzeichnis
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
61
Vorwort
Mein Dank gilt an dieser Stelle meinem Betreuer Mag. Volker Christian, der
mir bei der Entwicklung des Projektes und beim Verfassen dieser Arbeit stets
zur Seite gestanden hat. Zudem gilt mein Dank meiner Freundin Verena für
die moralische Unterstützung und Geduld, die sie während meines gesamten
Studiums aufgebracht hat.
vi
Kurzfassung
In den vergangenen Jahren erfreuen sich satellitengestützte Navigationssysteme immer größerer Beliebtheit, zumal die zugehörigen Empfangsgeräte immer günstiger und die Qualität ebendieser ständig besser wird. Verschiedene
Technologien zur Positionierung mit Hilfe von Satelliten werden in dieser
Arbeit vorgestellt und diskutiert.
Kostenlose digitale Online-Landkartensysteme wachsen mit der Verbreitung von GPS. Parallel zu dieser Technologie wurden bereits zahlreiche Anwendungen für verschiedene Zwecke entwickelt, die häufig sehr spezifisch auf
einen bestimmten Fachbereich zugeschnitten waren.
Die in dieser Arbeit vorgestellte Anwendung GPSStation stellt eine GPSApplikation dar, die mithilfe einer integrierten digitalen Landkarte zahlreiche
GPS-Anwendungen vereint. Dabei ist die Landkarte das zentrale Kontrollelement der Anwendung, welches für sämtliche Teilapplikationen als gemeinsame Basis dient. Neben der Verortung digitaler Fotos (Geotagging) bietet
GPSStation die Möglichkeit zum Import und Export von GPS-Daten, Visualisierung von getätigten Routen und die nachträgliche Analyse eines Trainingsablaufs für Sportler. Zudem unterstützt die vorgestellte Applikation den
Benutzer bei der Observierung von Personen und der Bewegungsaufzeichnung von Fahrzeugen.
Die vorgestellte Applikation ist leicht zu bedienen und durch seine vorgegebene Applikationsstruktur besteht eine gute Erweiterbarkeit zur Integration neuer GPS-Anwendungen. Neue Subanwendungen können erstellt und
in GPSStation zur Verfügung gestellt werden.
vii
Abstract
Over the past years, satellite navigation has become increasingly popular,
since satellite receivers were getting cheaper and their quality improved immensely. This thesis discusses several different positioning-technologies that
make use of satellites.
Digital online mapping-services are growing as GPS spreads more widely.
Using this technology, several applications for different purposes have been
introduced over the years, most of which are specific for one major purpose.
GPSStation introduces a desktop-application which combines several independent GPS-applications by using a fully integrated digital map. This
map acts as the main user interface component and connects all integrated
subapplications. Besides geotagging of digital images, GPSStation provides
import and export functionality, route visualization and route analysis tools
for sportsmen. Additionally, it supports people observing persons and vehicles, by recording their movements.
The present application is easy to use and due to its open softwarearchitecture easy to extend, by providing simple interfaces for new subapplications.
viii
Kapitel 1
Einleitung
1.1
Motivation
Globale Positionierungssysteme wie GPS sind seit einigen Jahrzehnten verfügbar und erfreuen sich immer größerer Beliebtheit. Verwendet werden diese
Systeme hauptsächlich zur Navigation und Streckenführung im Straßen- und
Luftverkehr. In den letzten Jahren wurden GPS-Empfangsgeräte immer billiger und sind heutzutage für jedermann erschwinglich. Zahlreiche Firmen
bieten zu Ihren GPS-Empfangsgeräten Software an, die die Arbeit mit diesen erleichtern soll. Leider handelt es sich bei den angebotenen Programmen
viel zu oft um wenig benutzerfreundliche Anwendungen, die nur für einen
bestimmten Zweck vorgesehen sind.
Da GPS-Daten viel mehr Potential haben, als lediglich klassische Navigation, gibt es einige Anbieter, die es ermöglichen, Bilder und Fotos mit GPSKoordinaten zu versehen. Leider gibt es bisher kein Software-Komplettpaket,
welches dem Benutzer ermöglicht, mehr Information aus vorhandenen GPSKoordinaten herauszuholen. Zahlreiche Programme bieten zwar Schnittstellen um Daten mit anderen Geoanwendungen auszutauschen, sie bieten jedoch
zumeist keine direkte Integration der digitalen Landkarten in die Software.
Dieser Arbeit liegt ein Semesterprojekt mit dem Titel GPSStation zugrunde, welches die oben genannten Probleme versucht zu beheben. Vorgestellt wird das entwickelte Projekt GPSStation in Kapitel 4.
1.2
Zielsetzung
Ziel dieser Arbeit und des zugehörigen Projektes ist es, eine Desktopanwendung zu entwickeln, die dem Benutzer erlaubt GPS-Daten zu importieren
und in verschiedenster Weise weiter zu verarbeiten. Eine vollständig integrierte digitale Landkarte (die das zugrunde liegende Kartenmaterial über
das Internet bezieht) soll fest in die Applikation integriert sein und als zentrales Steuerelement der Benutzeroberfläche dienen.
1
Kapitel 1. Einleitung
2
In die Anwendung integrierte Subanwendungen, die ihrerseits Nutzen aus
den importierten geographischen Daten ziehen, sollen dem Benutzer bei der
Arbeit mit den GPS-Daten unterstützen. Dabei soll der Benutzer die Möglichkeit haben, GPS-Daten aus GPS-Empfangsgeräten zu laden und diese in
der integrierten Landkarte zu visualisieren.
Digitale Bilder sollen mit den importierten GPS-Koordinaten versehen
werden können, um anschließend deren Anzeige mit der Landkarte zu verknüpfen.
Zusätzlich soll die Möglichkeit gegeben werden, die eingelesenen Daten
für externe Landkarten-Programme zu exportieren. Ein weiteres Ziel war die
Entwicklung einer Subanwendung zur Analyse und Auswertung verschiedener GPS-Datensätze, die etwa für Sportler und deren Trainer hilfreich sein
soll.
Eine weitere integrierte Anwendung sollte implementiert werden, die aus
GPS-Daten ein Bewegungs- und Aufenthaltsprofil zur Überwachung von
Fahrzeugen und Personen generiert, um deren Observierung einfach und benutzerfreundlich zu gestalten.
Zuletzt sollte eine Applikation für mobile Endgeräte entwickelt werden,
die vor allem Sportlern ermöglicht, bei Ihrem Training Zwischenzeiten in
Echtzeit zur kontinuierlichen Verbesserung der Trainingsergebnisse anzuzeigen.
Ein Hauptaugenmerk soll bei der Erstellung der Desktop-Applikation
auf die Benutzerfreundlichkeit der Bedienoberfläche gelegt werden, sodass
die Software auch von Benutzern mit wenig Computer-Erfahrung einfach zu
bedienen ist. Ein entsprechendes Design, welches von klassischen WindowsAnwendungen abweicht, soll mithilfe der neuen Microsoft-Technologie Windows Presentation Foundation erstellt werden.
Sämtliche Punkte dieser Zielsetzung wurden im Rahmen des zugehörigen
Projektes GPSStation umgesetzt und werden in dieser Arbeit behandelt.
1.3
Aufbau der Arbeit
Die vorliegende Arbeit gliedert sich in fünf logisch unterteilte Kapitel. Nach
der Einleitung werden in Kapitel 2 die Technologien satellitengestützter Navigation und deren Anwendungsgebiete erläutert. Dabei werden bekannte Systeme und deren Funktionsweise angeführt und auf aktuelle Entwicklungen
eingegangen. Zudem werden Anwendungen behandelt, die mit GPS-Daten
arbeiten.
Kapitel 3 widmet sich dem umfangreichen Themengebiet der interaktiven Landkartensysteme, die sich immer größerer Beliebtheit erfreuen. Dabei
werden bestehende Systeme vorgestellt, analysiert und verglichen.
In Kapitel 4 wird die entwickelte Desktop-Anwendung GPSStation vorgestellt und auf interessante Implementierungsdetails eingegangen. Dabei
Kapitel 1. Einleitung
3
wurde bewusst auf die Trennung von Beschreibung und Implementierung
verzichtet, um programmiertechnisch relevante Details direkt bei der Beschreibung der Anwendung erläutern zu können.
Das fünfte und letzte Kapitel gibt eine ausführliche Zusammenfassung
der Arbeit und bietet einen Ausblick auf Möglichkeiten der Erweiterung von
GPSStation.
Im Anhang findet sich ein Inhaltsverzeichnis der beiliegenden CD welche sämtliche referenzierte Web-Artikel sowie den gesamten Sourcecode der
Desktop-Applikation GPSStation und der mobilen Anwendung RunningAssistant beinhaltet.
Kapitel 2
Satellitengestützte Navigation
Satellitengestützte Navigation findet seit den letzten Jahren immer mehr
Verbreitung. Mittlerweile besitzen mehrere Millionen Bürger Navigationssysteme für PKWs, Motorräder und Schiffe oder um bei einer Wanderung
nicht vom richtigen Weg abzukommen. Nachdem die nötige GPS-EmpfängerHardware täglich besser wird, wird es in absehbarer Zeit möglich sein, GPS
innerhalb von Gebäuden verwenden zu können. Da diese Materie den Rahmen dieser Arbeit sprengen würde, wird nicht näher auf Innenraumnavigation eingegangen. Dem interessierten Leser sei [5] empfohlen.
Das GPS-Systeme immer wichtiger werden, zeigt die japanische Regierung, die sämtliche Mobiltelefonhersteller aus Japan verpflichtet, einfache
GPS-Empfänger in die in Japan verkauften Mobiltelefone einzubauen. Bereits seit April 2007 ist dieses Gesetz in Kraft und gilt für alle Mobiltelefone
die den Standard 3G unterstützen [16]. Japan rechnet damit, dass bereits
2009 mehr als 50% aller in Japan benutzten Mobiltelefone GPS unterstützen,
2011 sollen es 90% sein.
2.1
Entwicklung und Technologie
Die Entwicklung von globalen, satellitengestützten Positionierungssystemen
(GNSS ) über Satellit wurde bereits Mitte der 60er Jahre in den USA unter
dem Namen Transit begonnen. Die ersten 24 Satelliten wurden 1976 in das
Weltall gesendet, um eine möglichst genaue Positions- und Zeitbestimmung
an jedem Punkt der Erde zu ermöglichen.
Was heute als Global Positioning System (GPS ) bezeichnet wird, bezeichnet in der Regel NAVSTAR-GPS (Navigational Satellite Timing and
Ranging - Global Positioning System). Dieses System war anfangs nur für
militärische Zwecke des amerikanischen Verteidigungsministeriums gedacht.
Seit Mai 2000 ist ein Subset dieser Positionierungsdienste auch für die zivile
Bevölkerung freigegeben worden. Ein Satellit der Baureihe Block IIF ist in
Abbildung 2.1 gezeigt. Dieser Satelltitentyp ist der zum Zeitpunkt des Ver4
Kapitel 2. Satellitengestützte Navigation
5
Abbildung 2.1: GPS-Block IIF Satellit. Seit Anfang 2007 umkreisen Satelliten dieser Bauart die Erde, um exakte Positionsbestimmung auf der Erdoberfläche zu gewährleisten. (Quelle: http://www.kowoma.de).
fassens dieser Arbeit Neueste und wurde erstmals, mit etwas Verspätung,
Anfang 2007 in den Weltraum geschickt.
Genutzt wird es von der Zivilbevölkerung in erster Linie für Fahrzeugnavigation, aber auch für Vermessungsaufgaben, Luft- und Wassernavigation sowie für verschiedenste ortsbasierte Systeme (Location Based Services,
LBS ). Einen guten Überblick über die Entwicklung von LBS-Systemen gibt
Kupper in [6]. Die erste Version des NAVSTAR-GPS benötigte mehr als 15
Minuten um die aktuelle Position auf etwa 100 Meter genau feststellen zu
können.
Detaillierte Informationen rund um das Thema GPS bietet die Webseite
von Kowoma 1 .
2.1.1
Funktionsweise
Um eine exakte Position auf der Erdoberfläche feststellen zu können, wird
ein GPS-Empfänger (GPS-Receiver ) benötigt. Ein GPS-Empfänger empfängt das Signal von mindestens vier der 242 im Weltall verfügbaren GPSSatelliten. Diese Satelliten sind so angeordnet, dass auf jedem Punkt der
Erde zu jedem beliebigen Zeitpunkt mindestens vier Satelliten sichtbar sind.
Diese Anzahl ist nötig um einen Punkt genau berechnen zu können. In der
1
http://www.kowoma.de/gps
Meist stehen drei bis fünf weitere Satelliten zur Verfügung, falls es zu technischen
Problemen kommt.
2
Kapitel 2. Satellitengestützte Navigation
(a)
6
(b)
Abbildung 2.2: Abbildung (a) zeigt die Berechnung der GPS-Koordinaten
anhand von zwei Satelliten. Wird kein dritter Satellit verwendet, kann der
GPS-Empfänger etwaige Fehler durch ungenaue Zeitsynchronisation der Satelliten nicht feststellen. Verwendet man allerdings drei Satelliten zur Berechnung, so kann der Fehler der Messung ausgeglichen werden (b). Um auch
Fehler in der berechneten Höhe zu vermindern, verlangt GPS mindestens vier
gleichzeitig sichtbare Satelliten. (Quelle: http://www.kowoma.de).
Regel stehen sogar bis zu acht, in besonderen Fällen bis zu zehn Satelliten
zur Verfügung. Je mehr Satelliten sich im Sichtbereich des Empfängers befinden und je weiter diese voneinander entfernt sind, desto genauer kann die
Position des GPS-Empfängers ermittelt werden.
GPS-Satelliten bewegen sich auf einer von drei Umlaufbahnen in einem
Abstand von exakt 35786km zum Erdmittelpunkt (entspricht durchschnittlich 20200km über der Erdoberfläche) um den Planeten. Ein Satellit umrundet die Erde in genau 24 Stunden, was eine Geschwindigkeit von knapp drei
Kilometer pro Sekunde ergibt. Die Satelliten werden von fünf Basisstationen
auf der Erde überwacht und gesteuert. Diese Stationen befinden sich alle
in der Nähe des Äquators, gleichmäßig auf der Erdoberfläche verteilt. Die
Hauptbasisstation hat ihren Sitz in den USA (Colorado Springs), von wo
aus jederzeit das gesamte System stillgelegt werden kann.
Ein GPS-Empfänger empfängt die Signale von mindestens vier Satelliten
gleichzeitig. Die Signale werden mit Phasenmodulation (PSK ) übertragen
und an den Empfangsgeräten ausgewertet. Aus den einzelnen Phasen der
Signale errechnet sich der Empfänger seine aktuelle Position. Abbildung 2.2
(a) zeigt die Berechnung von GPS-Koordinaten durch zwei Satelliten. Wenn
Kapitel 2. Satellitengestützte Navigation
7
zwei Satelliten nicht exakt zeitsynchronisiert sind, kann das Ergebnis der
Berechnung verfälscht sein. Für die Berechnung der Längen- und Breiteninformation werden deshalb drei Satelliten verwendet, um den Fehler minimieren zu können (siehe Abbildung 2.2 (b)). Vier GPS-Satelliten sind nötig, um
die Koordinaten (Latitude, Longitude) und die Höhe des Punkte über dem
Meeresspiegel (Altitude) mit Fehlerkorrektur ermitteln zu können.
Zusätzlich wird in einem GPS-Signal die aktuelle GPS-Zeit (Universal
Time Code, UTC ) übertragen, da die meisten Empfänger keine interne Uhr
haben, bzw. falls vorhanden, diese zu ungenau ist.
Durch Messung des Dopplereffekts kann auch die aktuelle Geschwindigkeit des GPS-Empfängers ermittelt werden. Das Anführen des exakten Vorgang zur Positionsberechnung würde ein gesamtes Buch füllen und wird deshalb in dieser Arbeit nicht näher erläutert, [8] und [9] widmen sich dieser
Thematik im Detail.
GPS sendet in der Regel auf zwei verschiedenen Frequenzen, L1 (1575,42
MHz) und L2 (1227,60 MHz). L1 wird benutzt, um den sogenannten C/ACode, die Satelliteninformation für die Zivilbevölkerung, zu übertragen, während L2 den verschlüsselten P/Y-Code für Zwecke des amerikanischen Militärs überträgt. Die Genauigkeit des P/Y -Codes war in den Anfangszeiten
von GPS wesentlich höher als jene von C/A-Code Signalen (maximale Abweichung von 10m in 90% der Messungen). Weiterentwicklungen in der GPSEmpfänger-Technologie und intelligente Algorithmen schaffen mittlerweile
dieselben Genauigkeiten für C/A-Messungen wie für P/Y -Code-Messungen.
In den Jahren von 1995 bis 2000 wurde vom amerikanische Militär das
gesamte C/A-Code System auf Selective Availability (SA) umgestellt, was
einen gewollten, künstlichen Messfehler verursachte und die Navigation für
die Zivilbevölkerung und außenstehende Militärs nur auf etwa 100 Meter
Genauigkeit erlaubte. Sie wollten damit eine exakte Navigation für feindliche
Truppen verhindern, während sie selbst mit dem unverändert genauen P/Y Code-Verfahren navigieren konnten.
Die Genauigkeit der Messung wird zudem durch verschiedene Umstände
wie z. B. Wetter, Umgebung (Bäume und hohe Gebäude verursachen Reflektionen des übertragenen Signals) und die Anzahl der zum Messzeitpunkt
sichtbaren Satelliten beeinflußt.
2.1.2
Alternative Positionsbestimmung
Neben dem weltbekannten Global Positioning System (GPS ) gibt es mittlerweile auf dem gesamten Globus verteilt mehrere Projekte, die sich mit
einem eigenen, von den USA unabhängigen, globalen Positionierungssystem
beschäftigen. Die wichtigsten alternativen Systeme Galileo und Glonass werden im folgenden Abschnitt näher beschrieben.
Compass bezeichnet den Nachfolger des Navigationssystems Beidou der
Volksrepublik China, welches allerdings nur im asiatischen Bereich funktio-
Kapitel 2. Satellitengestützte Navigation
8
niert. Japan entwickelt zur Zeit ein System mit dem Namen Multifunction
Transport Satellite System (MTSAT ), welches den Betrieb 2006 startete und
nur in Japan und Australien zur Verfügung steht. Weitere bekannte Systeme
sind Transit, der amerikanische Vorgänger zu NAVSTAR-GPS, das sehr ungenaue europäische Fernverkehrs-Positionierungssystem Euteltracs, sowie das
in Entwicklung stehende indische Navigationssystem Indian Regional Navigational Satellite System (IRNSS ).
Galileo
Bereits seit Anfang der 90er Jahre arbeitet die Europäische Union (EU )
gemeinsam mit der Europäischen Weltraumorganisation (ESA) an einem eigenen globalen Positionierungssystem mit dem Namen Galileo 3 , um nicht
vom amerikanischen Militär abhängig zu sein. Die Entwicklung verzögert
sich aus diversen Gründen immer wieder, nach bereits zwei Verschiebungen
ist das momentan geplante Startdatum 2013. Ob die Entwicklung bis dahin
am Stand der Technik bleiben wird, bleibt weiterhin fraglich.
In Summe wird Galileo mindestens vier Dienste für verschiedene Zielgruppen anbieten. Der Dienst Open-Service (OS ) von Galileo ist vergleichbar
mit dem SPS -System (Standard Positioning Service) von GPS und wird der
zivilen Bevölkerung kostenfrei zur Verfügung gestellt werden. Hochgenaue
Messungen, wie sie etwa für Vermessungsarbeiten und zur Kartographie benötigt werden, werden gegen eine entsprechende Gebühr zur Verfügung stehen.
Neben dem angeführten Open-Service wird es einen kommerziellen Dienst
(Commercial-Service) geben, der verschlüsselt und gegen Gebühr genauere
Daten überträgt. Dabei wird die ionispherische Verzögerung des Signals und
die Satellitenzeitinformation mit übertragen. Dadurch kann die exakte Position durch lokale Kompensation wesentlich genauer berechnet werden. Laut
Angaben der Hersteller soll mit diesem Service auch eine Innenraumnavigation (Indoor Navigation, IN ) mit einer Abweichung von unter einem Meter
möglich sein.
Der Public Regulated Service (PRS ) ist eine weiterer GPS-Dienst, der
in Europa für Feuerwehren, Polizei und Rettungsdienste, sowie zur Verbrechensbekämpfung eingesetzt werden wird.
Der vierte und letzte von Galileo angebotene Dienst trägt den Namen
Safety-of-Life-Service (SoL) und steht nach der Inbetriebnahme des Systems
Flugzeugen, Schiffen sowie Güter- und Personenzügen zur Verfügung. Der
große Vorteil von SoL ist, dass die Benutzer sofort benachrichtigt werden,
wenn das GPS-System aufgrund von Satellitenproblemen, schlechtem Wetter
oder ähnlichen unvorhersehbaren Situationen, Ungenauigkeiten oder Fehlverhalten aufweist.
3
http://www.esa.int/esaNA/galileo.html
Kapitel 2. Satellitengestützte Navigation
9
Galileo arbeitet mit insgesamt 30 Satelliten (27 aktiv, 3 Reserve) auf einer
Höhe von etwa 23.260 Meter über dem Meeresspiegel und wird auf etwa vier
Meter genau sein. Ein Galileo-Empfänger in der Größe eine Mobiltelefons soll
bis zu 15 Satelliten gleichzeitig erreichen können. Das Berechnungsprinzip
funktioniert ähnlich dem des GPS-Systems, zumal auch Phasenmodulation
(PSK) verwendet wird.
Bei Verwendung der kostenpflichtigen Dienste und entsprechender Hardware wird das System im besten Fall eine Genauigkeit im einstelligen Zentimeterbereich liefern. Galileo wird mit GPS kompatibel, nicht aber davon abhängig sein. Dennoch werden voraussichtlich aktuelle GPS-Empfänger nicht
mit Galileo zusammenarbeiten können. Durch die Kompatibilität mit GPS
(und somit einer Summe von etwa 60 aktiven Satelliten) wird die Genauigkeit
des Systems wesentlich erhöht und Ausfallssicherheit gewährleistet sein.
Glonass
Die russische Alternative zu GPS, Glonass 4 (Globales Navigations-SatellitenSystem) wurde parallel zu GPS bereits in den 70er Jahren entwickelt. Mittlerweile sind allerdings nur mehr wenige Satelliten funktionstüchtig. Reparaturund austauschbedürftige Satelliten wurden erst in den letzten Jahren fallweise erneuert.
Bereits Ende 2009 soll es nach Angaben des russischen Verteidigungsministeriums wieder möglich sein, Glonass kommerziell zu nutzen. Die private und kostenlose Nutzung des Glonass-Positionierungssystems ist seit Mai
2007 wieder möglich [12].
Neben der eigenen Entwicklung ist Russland auch an der Forschung und
Produktion des europäischen Systems Galileo beteiligt. Dabei werden die
Satelliten des Glonass-Systems als Testsatelliten für das europäische System
Galileo verwendet [13].
2.1.3
Protokolle
Es gibt mittlerweile eine Reihe von verschiedenen Protokollen, die der Kommunikation von Computern mit GPS-Geräten dienen. Im Rahmen der vorliegenden Arbeit wird nur auf das wichtigste GPS-Protokoll NMEA und der
nicht minder wichtigen und weit verbreiteten NMEA-Erweiterung PMTK
eingegangen.
NMEA
Die NMEA (National Marine Electronics Association, Nationale Vereinigung
für Marineelektronik)5 hat bereits 1983 begonnen, Protokolle für die Übertragung von GPS-spezifischen Daten zu spezifizieren. Es geht dabei in erster
4
5
http://www.glonass-ianc.rsa.ru
http://www.nmea.org
Kapitel 2. Satellitengestützte Navigation
10
Linie um die Übertragung von GPS-Daten von GPS-Empfangsgeräten zu
Computern oder mobilen Endgeräten. Zudem dienen diese Protokolle der
Kommunikation zwischen verschiedenen GPS-Empfängern.
Der heute gängige Standard wird als NMEA-0183 bezeichnet und gilt als
Nachfolger der Protokolle NMEA-0180 und NMEA-0182, welche heutzutage
nicht mehr von Bedeutung sind.
NMEA-Datensätze sind ASCII -Zeichenketten die vom Sender (dem jeweiligen GPS-Empfangsgerät) nach dem RS-232 -Standard (auch als serielle
Schnittstelle bekannt) ausgegeben werden und so für Computer lesbar sind.
Ein Beispieldatensatz nach dem NMEA-0183 Standard sieht etwa wie folgt
aus:
$GPRMC,162614,A,5230.5900,N,01322.3900,E,10.0,90.0,131006,1.2,E,A*13
Eine Nachricht nach dem NMEA-Standard beginnt immer mit einem $Zeichen und ist maximal 82 Zeichen lang6 . Anschließend folgt die Art der
übertragenen Nachricht, im gegebenen Beispiel GPRMC. Erst danach folgen
die Nutzdaten der übertragenen Zeile, welche mit einem Stern (*) und einer
zweistelligen, berechneten Prüfsumme endet.
Verschiedene Standard-Nachrichten-Arten werden im NMEA-Protokoll
spezifiziert. Zu den Wichtigsten zählen:
GPRMC: Global Positioning Recommended Minimum Sentence ist der
empfohlene Minimumdatensatz der von einem GPS-Empfänger übertragen
werden soll. Dieser beinhaltet Information zur exakten Uhrzeit der Positionsbestimmung, die Koordinaten östlicher Länge und nördlicher Breite, die
Geschwindigkeit des GPS-Empfängers über der Erdoberfläche (in Knoten)
und zusätzliche Information über die Qualität der empfangenen Daten.
GPGGA: Auch diese Datensätze enthalten die Uhrzeit zum Messzeitpunkt sowie Längen- und Breiteninformation. Zusätzlich werden die Anzahl
der sichtbaren Satelliten, Höheninformation (Altitude) und zahlreiche Daten
zur Messgenauigkeit übertragen.
GPGSA: Nachrichten dieses Typs beinhalten Informationen zu allen aktuell sichtbaren Satelliten (Position, Signalstärke).
Eine vollständige Übersicht über sämtliche öffentlichen Nachrichtentypen
und deren Funktion findet sich in [6].
Hersteller von GPS-Geräten haben die Möglichkeit proprietäre Nachrichten und damit Zusatzinformation zu übertragen. Solche Nachrichten beginnen mit $P und einer Kurzbezeichnung (drei Zeichen) des Herstellers. An6
Die Eigentliche Nachricht darf maximal 80 Zeichen beinhalten, da am Ende ein Wagenrücklauf (<CR>) und ein Zeilenvorschub (<LF>) obligatorisch sind.
Kapitel 2. Satellitengestützte Navigation
11
Tabelle 2.1: Aufbau einer PMTK -Nachricht. Die gesamte Nachricht darf
eine Länge von 255 bytes nicht überschreiten. Sowohl Nachrichten die an das
Gerät gesendete werden, als auch Nachrichten vom GPS-Gerät nutzen dieses
Schema.
Feld
Länge
Datentyp
Beschreibung
Präambel
1 byte
Zeichen
$-Zeichen
ID
4 bytes
Zeichenkette
PMTK
Pakettyp
3 bytes
Zahl
Dekoderinfo
variabel
Zeichenkette
Nutzdaten
*
1 byte
Zeichen
*-Zeichen
Prüfsumme
2 byte
Zahl
Prüfsumme
CR,LF
2 byte
Binärdaten
Ende des Packets
Daten
schließend kann in den Nachrichten neben Position und Zeit auch Richtung,
Wassertiefe, Temperatur, Windgeschwindigkeit und vieles mehr übertragen
werden. Ein Beispiel für proprietäre Nachrichten zeigt das PMTK -Protokoll,
welches in folgendem Abschnitt erläutert wird.
PMTK
Das MTK -Erweiterungsprotokoll für NMEA wird mittlerweile von fast allen Herstellern von GPS-Datenloggern unterstützt. Dieses Protokoll ermöglicht das Setzen von verschiedenen Einstellungen wie z. B. Log-Intervall, LogGeschwindigkeit und welche Daten auf dem GPS-Log-Gerät gespeichert werden sollen. Der Aufbau einer Nachricht nach dem PMTK -Protokoll ist in
Tabelle 2.1 dargestellt.
Ein Beispiel für eine PMTK -Nachricht sieht wie folgt aus:
$PMTK182,2,10*0A<CR><LF>
Nach dem führenden $-Zeichen und der ID (PMTK ) folgt die Pakettypbezeichnung, die dem lesenden Gerät mitteilt, welche Nutzdaten übertragen
werden. Die Bezeichnung 182 steht für den Beginn eines Log-Kommandos.
Anschließend sagt die Ziffer zwei aus, dass es sich um eine Log-Abfrage
(PMTK_LOG_QUERY) handelt, das Kommando 10 teilt dem Lesegerät
mit, dass die Anzahl der gespeicherten Punkte angefragt wird.
Nach diesen Datenfeldern kommt der obligatorische Stern und die berechnete Prüfsumme der Nachricht, gefolgt von einem Wagenrücklauf (<CR>)
und ein Zeilenvorschub (<LF>). Der folgende Programmcode zeigt die C#Implementierung der Funktion für die Berechnung der Prüfsumme beim Versenden einer Nachricht an einen GPS-Datenlogger:
Kapitel 2. Satellitengestützte Navigation
12
1 private static string CalcChecksum(string msg)
2 {
3
byte checksum = 0;
4
int i = msg.Length - 1;
5
while (i >= 0)
6
checksum ^= (byte)msg[i--];
7
8
string chkString = Convert.ToString(checksum, 16); // Hexadezimal
9
if (chkString.Length == 1)
10
chkString = "0" + chkString;
11
else if (chkString.Length == 0)
12
chkString = "00";
13
return chkString;
14 }
Die Nachricht (msg) würde im vorangegangenen Beispiel PMTK182,2,10
sein. Aus dieser Nachricht wird die Prüfsumme berechnet und dieser Wert
als Hexadezimalwert zur Fertigstellung der Anfrage-Zeichenkette zurückgegeben.
Anschließend folgt eine, nach dem selben Schema aufgebaute AntwortNachricht des GPS-Gerätes mit dem angeforderten Inhalt. In diesem Fall
liefert die Antwort die Anzahl der gespeicherten Log-Zeilen oder gegebenenfalls eine Fehlermeldung.
Sämtliche Nachrichten die direkt oder indirekt mit dem Auslesen von
gespeicherten Log-Daten zusammenhängen, verwenden den Pakettyp 182.
Eine detaillierte Liste über zahlreiche PMTK -Pakettypen findet sich in Anhang A.6. Eine PMTK -Nachricht darf eine maximale Länge von 255 Bytes
nicht überschreiten.
2.2
Anwendungen
Unterschiedliche GPS-Anwendungen stellen unterschiedliche Anforderungen
an die Genauigkeit. Während in der klassischen Straßennavigation Fehler
im Bereich von ein bis zwei Metern vernachlässigt werden können, muss
die Positionsbestimmung in der Vermessungstechnik auf wenige Zentimeter
genau sein. Um derartige Genauigkeiten möglich zu machen, werden meist
mehrere, wesentlich teurere und größere GPS-Empfänger eingesetzt, um eine
zusätzliche Fehlerkorrektur zu erlauben. Nachfolgend werden die Hauptanwendungsgebiete von satellitengestützter Navigation vorgestellt.
2.2.1
Navigation
GPS wird bereits seit einigen Jahren von der Zivilbevölkerung zur Navigation in diversen Bereichen genutzt. Hauptsächlich findet man klassische
GPS-Empfangsgeräte in Kraftfahrzeugen, die sich diese Technologie für die
Nutzung im alltäglichen Verkehr zunutze machen. Durch einfache Eingabe
Kapitel 2. Satellitengestützte Navigation
13
des Zielorts wird, ausgehend vom aktuellen Standort, die wahlweise kürzeste
oder schnellste Route berechnet. Die Berechnung der Fahrtroute findet direkt auf dem Empfangsgerät statt, auf dem auch das Kartenmaterial für die
entsprechende Region gespeichert ist.
Auswählbare Stimmen in verschiedenen Sprachen, Anzeige von Radarstationen entlang der geplanten Strecke oder Stadtführungen sind nur einige der
zahlreichen Zusatzfunktionen, die von verschiedenen Herstellern in großteils
guter Qualität angeboten werden. Klarer Marktführer in Europa im Bereich
der Kraftfahrzeug-Navigation ist der niederländische Hersteller TomTom 7 ,
weitere bekannte Hersteller sind Garmin 8 (weltweiter Marktführer), Sony 9
und Navigon 10 .
Diese Navigationsgeräte können natürlich auch zur Fußgänger- und Radfahrernavigation eingesetzt werden. Daraus entwickelte sich der Freizeitsport Geocaching, welcher in Abschnitt 2.2.5 näher erläutert wird. Zudem
werden Fußgänger-Navigationsgeräte häufig für Geotagging-Aufzeichnungen
verwendet (vgl. Abschnitt 2.2.6).
Navigationsgeräte können sowohl für den Straßenverkehr, als auch für
die Seefahrt verwendet werden. Für die Seefahrt gibt es allerdings oft spezielle Software, die für diese Zwecke optimiert ist. Diese haben Seefahrtsstraßen im Kartenmaterial integriert und sind für die Bedürfnisse der SeefahrtNavigation angepasst.
Auch in Flugzeugen wird GPS immer häufiger eingesetzt. Neben hochgenauen GPS-Empfangsgeräten in großen Passagiermaschinen werden in kleineren Sportflugzeugen handelsübliche KFZ-Navigationsgeräte zur Orientierung verwendet.
2.2.2
Vermessung
GPS-Navigation wird im Vermessungswesen schon seit einigen Jahren eingesetzt. Steigende Genauigkeit und die rapide Senkung der Preise für GPSVermessungsgeräte sorgten in den letzten Jahren für immer mehr Verbreitung in dieser Branche. Ein großer Vorteil von GPS-Vermessung im Gegensatz zur klassischen terrestrischen Vermessung ist, dass kein Sichtkontakt
zwischen den verschiedenen Vermessungspunkten bestehen muss. Zudem ist
es nicht mehr nötig ein geodätisches Netz aufzubauen, da alle Punkte direkt
über GPS errechnet werden können.
Verschiedene GPS-Messmethoden stehen den Vermessungstechnikern zur
Verfügung. Neben den Verfahren Rapid-Static, Reoccupation und Stop-AndGo wird sehr häufig mit der Methode Kinematic vermessen. Dabei befindet sich die Referenzstation auf einem exakt bestimmten Vermessungspunkt
7
http://www.tomtom.com
http://www.garmin.at
9
http://www.sony.at
10
http://www.navigon.com
8
Kapitel 2. Satellitengestützte Navigation
14
(Einschaltpunkt EP oder Katastraltriangulierungspunkt KT ) und die bewegliche Einheit (Rover ) zeichnet automatisch in einem bestimmten Zeitintervall
GPS-Koordinaten auf. So können sehr schnell Straßenzüge, Flüsse, Kulturgrenzen und Wegpunkte vermessen werden. Einen guten Überblick über die
verschiedenen Verfahren der GPS-Vermessung sowie eine Beschreibung ebendieser ist in [2] zu finden.
2.2.3
Militär
Das amerikanische Militär, das offiziell als Erfinder und Betreiber von GPS
gilt, verwendet zur Navigation und Steuerung ihrer Lenkwaffen (Cruise Missiles) und anderer präzisionsgeleiteter Waffen. Zusätzlich verwendet das Militär der vereinigten Staaten GPS, um militärische Fahrzeuge, teils autonom,
über unwegsames Gelände und in Kriegsgebieten zu leiten.
Außerdem überwacht das amerikanische Militär die Herstellung von GPSEmpfangsgeräten, um einen Einsatz in Waffen von Gegnern und Feinden zu
verhindern. Hersteller von GPS-Empfängern müssen dafür sorgen, dass die
hergestellten Geräte ab einer Höhe von 60.000 Fuß (entspricht etwa 18km)
über dem Meeresspiegel und bei einer Geschwindigkeit von mehr als 1000
Knoten (entspricht etwa 1854 km/h) nicht mehr funktionstüchtig sind [1].
Da die amerikanische Landesverteidigung sämtliche GPS-Basisstationen
auf der Erde beaufsichtigt und betreibt, können diese das gesamte GPSSystem innerhalb weniger Minuten stilllegen oder stören und somit feindlichen Truppen die Navigation erschweren. Dies ist einer der Hauptgründe,
warum international verschiedene Projekte für militär-unabhängige, satellitengestützte Navigation angelaufen sind (vgl. 2.1.2).
2.2.4
GPS im Sport
GPS wird im Sport schon seit einigen Jahren eingesetzt. Für verschiedene
Sportarten existieren unterschiedliche Anwendungen, die Sportlern im Training und im Wettkampf von entscheidender Hilfe sein können. Zu Beginn
des GPS-Zeitalters wurde Navigationssoftware bereits für Radfahrer und im
Rallysport eingesetzt, um die Wettkämpfer und Zuschauer über die Strecke
und den aktuellen Verlauf des Wettbewerbs zu informieren. Heutzutage sind
GPS-Applikationen zur Trainingsanalyse und -optimierung präsent und werden ständig weiterentwickelt.
GPS-Daten werden für zahlreiche Sportarten verwendet, wobei hauptsächlich Läufer, Radfahrer, Langläufer, Inline-Skater und Kanufahrer die
größten Abnehmer von GPS-Trainingssoftware sind. Unterschiedliche Softwarevarianten, von klassischen Desktop-Applikationen zur nachträglichen
Analyse bis hin zur Software für mobile Endgeräte wie Smartphones oder
Pocket-PCs zur Echtzeit-Auswertung werden angeboten. Dieser Abschnitt
soll einen Überblick über aktuell erhältliche GPS-Software mit Fokus auf
Kapitel 2. Satellitengestützte Navigation
15
Abbildung 2.3: Run.GPS! 2.2.0 von eSymetric. Ansicht der Live Trainigsdaten für Sportler in verschiedensten Sportarten. Neben der aktuellen
Geschwindigkeit werden sowohl die bereits zurückgelegte Distanz, als auch
die vergangene Zeit seit Trainingsstart angezeigt. Zusätzliche Informationen
über verbrauchte Kalorien und die aktuelle Höhe über dem Meeresspiegel
unterstützen den Sportler im Training. (Quelle: http://www.rungps.net).
Sport geben.
Run.GPS!
Die zurzeit komplexeste GPS-Software für Sportler ist Run.GPS! 11 der deutschen Firma eSymetric GmbH 12 , welche über die Webseite des Herstellers für
knapp 30 e (Stand Juni 2008) heruntergeladen und anschließend installiert
werden kann.
Run.GPS! läuft auf mobilen Endgeräten die Microsoft Windows Mobile 5
oder Microsoft Windows Mobile 6 als Betriebssystem installiert haben. Der
Funktionsumfang erstreckt sich von klassischer Luftlinien- und Routennavigation über die Aufzeichnung von Wegstrecken, bis hin zur umfangreichen
Analyse und Live-Verfolgung von Sportlern über die Webplattform des Herstellers.
Zudem ermöglicht die aktuelle Version 2.2.0 (Stand Juni 2008) Traingingspläne zu erstellen und Sprachausgabe während eines Trainings bzw.
Wettkampfes am mobilen Endgerät. Abbildung 2.3 zeigt eine typische Ansicht des Smartphone Displays bei einer laufenden Run.GPS! Applikation.
11
12
http://www.rungps.net
http://www.esymetric.de
Kapitel 2. Satellitengestützte Navigation
(a)
16
(b)
Abbildung 2.4: Bild (a) zeigt die GPS-Armbanduhr Garmin Forerunner
305, Abbildung (b) dessen noch 2008 erscheinenden Nachfolger Garmin Forerunner 405 HRM. (Bildquelle: http://www.garmin.de).
Garmin Forerunner
Einer der größten GPS Endgeräte Hersteller Garmin bietet mit Forerunner 305 (siehe Abbildung 2.4) einen GPS-Empfänger für das Handgelenk,
der als digitaler Trainingspartner dient (siehe Abbildung 2.4 (a)). Verbunden mit einem Brustgurt zum Messen der aktuellen Pulsfrequenz speichert
dieses Gerät die zurückgelegte Wegstrecke und die Pulsdaten während des
Trainings. Diese können anschließend mittels der kostenlos mitgelieferten
Software Garmin Training Center analysiert und erneut auf den Forerunner
übertragen werden.
Zudem erlaubt diese Applikation das erstellen von Trainingsplänen für
Sportler verschiedenster Sportarten, wie z. B. Läufer, Langläufer, Radfahrer,
Ruderer, Inline-Skater oder Nordic-Walker.
Während des Trainings wird dem Benutzer die aktuelle Geschwindigkeit,
die zurückgelegte Strecke, der aktuelle Puls und die bereits verbrauchten
Kalorien angezeigt.
Wurde ein vorher aufgezeichneter Traingslauf importiert, so erhält der
Anwender ein akustisches Signal, wenn er hinter der geladenen Trainingszeit
zurück ist, oder diese übertrifft.
Forerunner 305 ist im Fachhandel ab 249 e (inkl. Puls-Brustgurt und
Garmin Training Center ) erhältlich. Noch im Jahr 2008 soll ein Nachfolger
mit dem Namen Forerunner 405 HRM auf den europäischen Markt kom-
Kapitel 2. Satellitengestützte Navigation
17
men. Abbildung 2.4 (b) zeigt das Nachfolgemodell, für das noch kein Preis
bekanntgegeben wurde.
GPS Trackviewer
GPS TrackViewer 13 ist eine Applikation zur Visualisierung und Analyse von
aufgezeichneten GPS-Daten. Daten können von verschiedenen GPS-Loggern
oder direkt von einem Garmin Forerunner (siehe Abschnitt 2.2.4) importiert
und visuell dargestellt werden. Neben einer einfachen Anzeige der zurückgelegten Route kann diese manuell mit einer statischen, digitalen Landkarte
hinterlegt werden.
Im Analysebereich der Software erhält der Benutzer Informationen über
die zurückgelegte Wegstrecke, regelmäßige Zwischenzeiten und ein Höhenund Geschwindigkeitsprofil seiner Bewegung.
GPS Trackviewer ist eine reine Desktop-Anwendung und bietet keinerlei
mobile Unterstützung während eines Trainings. Laut Auskunft des Herstellers wiegleb software wird Trackviewer zurzeit nicht weiterentwickelt und so
vermutlich nicht mehr lange am Markt vertreten sein.
2.2.5
Geocaching
Geocaching bezeichnet eine Freizeitbeschäftigung der klassischen Schnitzeljagd sehr ähnlich ist. Dabei werden an verschiedensten Orten kleine Behälter
versteckt und deren Koordinaten auf einer Webplattform bekanntgegeben.
Gibt ein Benutzer die angegebenen Koordinaten in ein GPS-Gerät ein, so
kann er diesen Behälter (Cache) finden und öffnen. Der Besitzer des Behälters (Owner ) gibt vor dem ersten Verstecken ein kleines Heft (Logbuch),
einen Stift und ein paar kleine Tauschobjekte von geringem Wert in den Cache. Ein etwaiger Finder darf sich in das Logbuch eintragen und sich eines
dieser Tauschobjekte mitnehmen, sofern er selbst wieder ein Tauschobjekt
im Behälter zurück lässt.
Oftmals werden nur Teile der Koordinaten angegeben, die restlichen Ziffern müssen zuerst über ein Rätsel identifiziert werden14 . Dies führt dazu,
dass das Finden eines Schatzes oft mehrere Anläufe benötigt, weil die Rätsel
teilweise sehr schwierig zu lösen sind. Wurde ein Cache gefunden, so darf
sich der Entdecker im Internet beim jeweiligen Geocache als Finder eintragen, wozu häufig ein Beweisfoto vorgelegt wird.
Geocaching wird bereits in nahezu allen Ländern der Erde betrieben, so
werden sogar Geocache-Reisen in ferne Länder angeboten, wo nach verschiedenen Caches gesucht wird. Wichtig ist zu beachten, dass nicht jede GPSSoftware die direkte Navigation zu bestimmten GPS-Koordinaten erlaubt. So
kann man in der GPS-Software von TomTom zwar exakte GPS-Koordinaten
13
14
http://www.trackviewer.de/
Man spricht dabei von Mystery-Caches
Kapitel 2. Satellitengestützte Navigation
18
eingeben, das Navigationssystem weist allerdings nur den Weg zum nächst
gelegenen Straßenpunkt. Diese Tatsache kann zwar hilfreich sein, um die Anfahrt zu einem Cache zu erleichtern, die präzise Cache-Navigation ist damit
allerdings nahezu unmöglich.
2.2.6
Geotagging
Geotagging, häufig im deutschen Sprachgebrauch als Geokodierung oder Verortung von Fotos bezeichnet, beschreibt das Zuordnen von GPS-Koordinaten
zu Mediendateien wie Bilder oder Videos. Dabei wird die relevante Ortsinformation in die Metadaten der jeweiligen Datei (z. B. Exif -Daten einer JpegDatei, siehe Abschnitt 2.2.6) eingebettet. Anschließendes Betrachten in einer geeigneten Applikation ermöglicht dem Benutzer die exakte Anzeige der
GPS-Position, an welcher das Bild erstellt wurde (siehe GeoPictureViewer
in Abschnitt 4.4.2). Einen guten Überblick zur Geokodierung von Mediendateien findet sich in [4].
Mittlerweile gibt es einige wenige Digitalkameras, die es dem Benutzer
ermöglichen einen GPS-Empfänger mit Kabel oder Bluetooth direkt mit der
Digitalkamera zu verbinden. Werden mit einer solchen Kamera Fotos oder
Videos erstellt, werden die relevanten GPS-Koordinaten direkt ins Bild gespeichert.
Neben Sony bietet auch der taiwanesische Hersteller Tekom 15 ein derartiges GPS-Kamera-System an. Die Preise für diese Kamera-Sets bewegen
sich noch wesentlich über jenen von Digitalkameras ohne GPS.
Zurzeit gibt es keine Digitalkamera, die GPS voll integriert hat und somit
auf externe GPS-Empfänger verzichten kann. Das am weitesten verbreitete
Kameramodell, welches den Einsatz eines externen GPS-Geräten erlaubt, ist
die Ricoh Caplio 500 SE 16 , welche in Abbildung 2.5 zu sehen ist.
Die Online-Plattform Locr 17 erlaubt dem Anwender Bilder in deren Webplattform zu laden und anschließend durch manuelle Positionsbestimmung
auf einer interaktiven Landkarte das Foto mit geographischer Information zu
versehen. Dieser Service von Locr ist kostenlos, allerdings nur web-basiert
möglich. Für Benutzer, die ihre Fotos nicht im Internet publizieren wollen
oder diese für den Vorgang des geotaggens nicht auf einen fremden Webserver platzieren wollen, scheidet diese Möglichkeit aus. Auch das Webportal
Flickr 18 bietet mittlerweile eine ähnliche, wenn auch nicht so ausgereifte
Möglichkeit, Bilder im Web mit GPS-Koordinaten zu versehen.
Microsoft publizierte am 1. Mai 2008 die kostenlose Software Microsoft
Pro Photo Tools V1 19 welche es ermöglicht, Metadaten von Bildern sehr
15
http://www.tekom.com
http://www.ricoh.de
17
http://www.locr.com
18
http://www.flickr.com
19
http://www.microsoft.com/prophoto/articles/tools.aspx
16
Kapitel 2. Satellitengestützte Navigation
19
Abbildung 2.5: Ricoh Caplio 500 SE GPS-Kamera. Das am weitesten verbreitete Digitalkamera-Modell, das den Einsatz von externen GPSEmpfangsgeräten erlaubt. (Bildquelle: http://www.ricoh.de).
einfach zu verändern. Dabei ist es möglich GPS-Koordinaten in die Metadaten von Fotos zu speichern und diese auf eine Landkarte (Microsoft Virtual
Earth) darzustellen.
Die in Kapitel 4 vorgestellte Applikation GPSStation zeigt eine DesktopAnwendung, die es dem Benutzer ermöglicht, die mit einem GPS-Datenlogger
aufgezeichneten GPS-Daten mit digitalen Bildern zu verknüpfen. Dazu müssen die Bilder nicht ins Internet geladen werden und Geotagging funktioniert
mit Bildern jeder beliebigen digitalen Kamera. Dabei spielt es keine Rolle ob
es sich um eine Spiegelreflexkamera oder eine Kamera aus einem Mobiltelefon
handelt.
Exif
Das Format Exif (Exchangeable Image File Format )20 stellt einen Standard
zum Speichern von zusätzlicher Metainformation in Mediendateien dar. Dabei werden die relevanten Daten direkt in die vorhandene Datei im sogenannten Header (Dateikopf) integriert.
Neben Jpeg unterstützt mittlerweile auch das Tiff -Dateiformat diesen
Standard. Gespeichert werden in der Regel Datum und Uhrzeit der Erstellung eines Bildes, Brennweite, Belichtungszeit und viele andere Parameter
der Fotografie, sofern diese beim Erstellen des digitalen Bildes bekannt sind.
Zusätzliche Daten, wie etwa umfangreiche GPS-Information (Latitude,
Longitude, Altitude) können in die Exif -Daten eingetragen und später wieder
20
http://www.exif.org
Kapitel 2. Satellitengestützte Navigation
20
ausgelesen werden. Diese Funktionen nützt die in Abschnitt 4.4.1 vorgestellte
Anwendung GeoTagger.
In der aktuellen Version 2.2 des Standards werden auch Audiodateien im
*.wav-Format unterstützt. Anwendungen dieser Art sind allerdings ausserhalb des Rahmens dieser Arbeit und wird deshalb nicht näher behandelt.
Zurzeit gibt es keine Möglichkeit Exif -Information in die Metadaten von
*.png, *.gif und Jpeg-2000 -Dateien sowie Videodateien zu integrieren.
Adobe hat im Jahr 2001 versucht ein eigenes Metadatenformat XMP
(Extensible Metadata Platform) einzuführen. Dieses Format konnte mehr Informationen als Exif speichern und leicht erweitert werden. Leider wurde es
kaum angenommen und von Kameraherstellern nicht in die neuen Modelle
integriert. Dies führte dazu, dass Adobe 2007 die Spezifizierung und Beschreibung von XMP unter die BSD-Lizenz gestellt haben und selbst nicht mehr
weiter entwickelt.
Kapitel 3
Interaktive Landkarten
Kostenlos im Internet zur Verfügung stehende, interaktive Landkarten erfreuen sich immer größerer Beliebtheit. Diese Systeme bieten in der Regel
eine klassische Landkartenansicht mit digitalem Straßenkartenmaterial in unterschiedlicher Qualität. Zudem bieten verschiedene Plattformen Luftbilder
in mittlerweile sehr akzeptabler Auflösung. Dieses Kapitel gibt einen Überblick über den Stand der Technik und vorhandene Anwendungen, die sich
diese interaktiven Landkarten zu Nutze machen. Abschnitt 3.1.6 zeigt einen
Vergleich der am meisten genutzten Technologien.
3.1
Technologie
Interaktive Landkarten sind in der Regel in Standard-Webbrowsern aufrufbar. Nachdem die Karte erscheint, hat der Benutzer die Möglichkeit mit
der Maus auf der digitalen Karte zu navigieren. Dabei ist es möglich, die
Landkarte zu verschieben, zu vergrößern und zu verkleinern. Neueste Entwicklungen erlauben dem Benutzer dreidimensionale Ansichten, 360° Bilder
an bestimmten Positionen und andere Zusatzfunktionen wie Routenplanung
und Vogelperspektiven-Ansicht.
3.1.1
Google Maps
Die am weitesten verbreitete Online-Landkarte ist Google Maps 1 , früher auch
unter dem Namen Google Local bekannt. Bereits Anfang 2005 wurde Google
Maps als erste große Landkarten-Webapplikation freigeschaltet. Seither wird
diese Plattform ständig um neue Funktionalität erweitert. Die Qualität der
Luftbilder ist teilweise bereits hoch genug um Fahrzeuge identifizieren zu
können. Bereits jetzt sind Routenplanungen möglich und anderen Planeten
1
http://maps.google.com
21
Kapitel 3. Interaktive Landkarten
22
wie Mars2 und Mond3 sind in Aufbau.
Google stellt für sein Landkartenmaterial ein JavaScript-API (Google
Maps API ) zur Verfügung, welche es Entwicklern ermöglicht, programmatisch mit dem Landkartenmaterial zu interagieren. Neben Navigation auf
der Landkarte können Linienzüge und sogenannte Placemarks (Marker) und
3D-Objekte über Programmcode eingebettet werden. Mit dieser Schnittstelle
kann Google Maps in jeder Webseite integriert und für die eigenen Bedürfnisse angepasst werden.
Unternehmen nutzen diese Möglichkeit häufig um die Lage ihrer Geschäftslokale auf der Webseite anzugeben. Zurzeit ist der Zugang zum Kartenmaterial kostenlos und beinhaltet keine Werbung. Allerdings gibt Google
in den Nutzungsbedingungen4 für Google Maps an, dass sie sich das Recht,
Werbung im Kartenmaterial, in welcher Form auch immer, zu schalten, offen
halten.
Ein einfaches Beispiel für die JavaScript-Kommunikation mithilfe der
Google Maps-API zeigt der nachfolgende Absatz:
1 <html>
2
<head>
3
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
4
<title>Simple Google Maps Example</title>
5
<script src="http://maps.google.com/maps?file=api&amp;v=2&amp;
6
key=ABQAzr2EBOXUKnm_jVnk0OJI7xSoE1" type="text/javascript" />
7
<script type="text/javascript">
8
function initialize(){
9
if (GBrowserIsCompatible()){
10
var map = new GMap2(document.getElementById("map_canvas"))
11
map.setCenter(new GLatLng(48.3695, 14.5145), 13);
12
}
13
}
14
</script>
15
</head>
16
<body onload="initialize()" onunload="GUnload()">
17
<div id="map_canvas" style="width: 500px; height: 300px" />
18
</body>
19 </html>
In Zeile 5 und 6 wird das Landkartenskript von Google geladen. Anschließend folgt eine Funktionsdefinition der Methode initialize() die die
Landkarte initialisiert und anschließend die Karte zu den gegebenen Koordinaten navigiert. Diese Funktion wird direkt beim Laden der HTML-Seite
ausgeführt.
Google bietet zusätzlich zur Web-Plattform eine kostenlos zum Download verfügbare Desktop-Applikation, die den Zugriff auf das Kartenmaterial
2
http://mars.google.com
http://moon.google.com
4
Allgemeine Nutzungsbedingungen der digitalen Kartendaten der Plattform Google
Maps. http://www.google.com/intl/de_de/help/terms_maps.html
3
Kapitel 3. Interaktive Landkarten
23
erleichtert und die Verwaltung von eigenen interessanten Punkten ermöglicht.(siehe Abschnitt 3.2.1).
3.1.2
Windows Live Maps
Microsoft bietet mit Windows Live Maps 5 (früher auch unter dem Namen
MSN Virtual Earth bekannt) und der zugehörigen Entwicklerplattform Virtual Earth einfachen Zugriff auf zahlreiche Funktionen zur Ergänzung und
Manipulation ihrer digitalen Kartendaten. Neben klassischem, terrestrischem
Kartenmaterial stehen auch Orthofotos (Luftbilder) in verschiedener Auflösung zur Verfügung.
Dieses Microsoft Produkt wird zum Teil auch in Graz (Österreich) von einer Microsoft F&E -Abteilung (Forschung und Entwicklung) hergestellt und
weiterentwickelt. Diese Abteilung entstand nach einer Zusammenarbeit der
Firmen Microsoft und Vexcel und ist für die Visualisierung und Aufnahme
von Städten aus der Vogelperspektive (Bird’s View ) verantwortlich. Vexcel
wurde 1985 von dem Professor der technischen Universität Graz, Franz Leberl gegründet und wurde 1996 von Microsoft aufgekauft. Aktuell wird allein
durch diesen Microsoft -Standort in Graz ein Jahresumsatz von mehr als 18
Millionen Euro erwirtschaftet [3].
Mittlerweile sind die hochaufgelösten Vogelperspektiven für die Landeshauptstädte Innsbruck, Klagenfurt, Linz, Salzburg und Sankt Pölten sowie
für die Städte Villach und Wels verfügbar. Wien wird in ein paar Monaten als
komplette 3D-Stadt verfügbar sein. Diese Art der Ansicht ist bereits jetzt für
die französische Stadt Toulouse verfügbar. ist. Diese Städte wurden vor allem wegen der im Sommer 2008 stattfindenden Fußball-Europameisterschaft
in Österreich als Erste gewählt.
Die Grazer Abteilung, unter dem Namen Microsoft Photogrammetry bekannt, ist für die Entwicklung der Kamera zur Aufzeichnung der Bilder, sowie
für das Aufnehmen der 3D-Daten und deren Visualisierung verantwortlich.
Dabei wird z. B. aus im Bild erkannten Schatten die Gebäudehöhe berechnet und anschließend werden die zugehörigen Luftbilder auf die 3D-Gebäude
übertragen (Texture Mapping).
Der gesamte Datensatz von Windows Live Maps umfasst nunmehr 42,85
Terrabyte an Daten (Stand Mai 2008) und wächst ständig weiter.
Das Microsoft Virtual Earth Interactive SDK 6 erlaubt dem Entwickler
Steuerbefehle via JavaScript an das angezeigte Online-Kartenmaterial zu
senden. So kann die Landkarte nicht nur vergrößert, verkleinert und verschoben, sondern auch zusätzliche Daten wie Wegpunkte, Linienzüge oder
Symbole hinzugefügt werden.
5
http://maps.live.com
http://dev.live.com/virtualearth/sdk (Software Development Kit). Dort finden sich
zahlreiche Beispiele für die wichtigsten Funktionen. Diese können sofort online verändert
und getestet werden.
6
Kapitel 3. Interaktive Landkarten
24
Ein Beispiel für die Interaktion mit dem Online-Kartenmaterial ist in
folgendem Absatz zu sehen:
1 <html>
2
<head>
3
<title>Simple Virtual Earth Example</title>
4
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
5
<script type="text/javascript" src="http://dev.virtualearth.net/
mapcontrol/mapcontrol.ashx?v=6.1"/>
6
<script type="text/javascript">
7
var map = null;
8
function initialize()
9
{
10
map = new VEMap('myMap');
11
map.LoadMap();
12
map.SetCenterAndZoom(new VELatLong(48.3695, 14.5145), 13);
13
}
14
</script>
15
</head>
16
<body onload="initialize();">
17
<div id='myMap' width:400px; height:400px;"></div>
18
</body>
19 </html>
An diesem Beispiel fällt auf, dass das SDK von Microsoft dem von Google
sehr ähnlich ist. Auch hier wird beim Laden der Seite die initialize()Methode aufgerufen, ein VEMap-Objekt angelegt und zu den gegebenen Karten navigiert. Der zweite Parameter der Funktion SetCenterAndZoom beschreibt den Zoomfaktor der angezeigten Landkarte und muss zwischen 1
und 20 liegen.
Zusätzlich hat der Entwickler die Möglichkeit, verschiedene Menüarten
ein- und auszublenden und nur bestimmte Funktionen für den Endbenutzer
zur Verfügung stellen.
Diese Plattform ist vom Detailgrad und von den Kartendaten sehr ähnlich zu jenen von Google Maps (siehe Abschnitt 3.1.1). Der Detailgrad der
Aufnahmen aus der Vogelperspektive ist allerdings bei der Variante von Windows Live Maps in den neu beflogenen Gebieten wesentlich höher als jener
der Mitbewerber.
3.1.3
Yahoo! Maps
Auch Yahoo! 7 besitzt eine Online-Landkartendatenbank in der Karten aus
aller Welt verfügbar sind. Ähnlich zu den Mitbewerbern Google Maps und
Windows Live Maps sind Luftbilder und Kartenmaterial vorhanden. Allerdings bietet Yahoo! zurzeit keine Ansicht aus der Vogelperspektive.
Die Qualität der Luftbilder und die Kartendaten sind sehr detailliert
für die USA, Kanada und einige europäische Länder verfügbar. Weltweit
7
http://maps.yahoo.com
Kapitel 3. Interaktive Landkarten
25
kann das von Yahoo! zur Verfügung gestellte Kartenmaterial bezüglich der
Abdeckung nicht mit seinen Konkurrenten mithalten.
Die angebotenen Dienste, wie etwa die Anzeige der aktuellen Verkehrssituation in der Landkarte und deren Berücksichtung bei der Berechnung von
Routen, können für den Nutzer sehr hilfreich sein.
Für Entwickler bietet Yahoo! verschiedene Möglichkeiten an, programmatisch auf das Kartenmaterial zuzugreifen. Ein sehr einfache Schnittstelle
namens Simple API erlaubt es, Bilder oder zusätzlich Daten auf einer Landkarte für einen bestimmten Ort abzulegen. Dazu muss der Entwickler nicht
einmal programmieren können, da diese sogenannten Overlays nur mit XML
definiert werden müssen.
Wesentlich umfangreicher und somit vergleichbar mit den Erweiterungsmöglichkeiten der Marktbegleiter ist das vorhandene Ajax API. Damit kann
der Entwickler mittels Programmcode auf der Landkarte navigieren, zusätzliche Objekte ein- und ausblenden und Routen berechnen.
Das folgende Beispiel initialisiert eine Landkarte und navigiert zu den
gegebenen Koordinaten:
1 <html>
2
<head>
3
<script type="text/javascript" src="http://api.maps.yahoo.com/
ajaxymap?v=3.8&appid=YD-ai29HtA_JXxlOQFW3D25QQ--" />
4
</head>
5
<body>
6
<div id="map" width="400" height="400" />
7
<script type="text/javascript">
8
var map = new YMap(document.getElementById('map'));
9
map.addTypeControl();
10
map.setMapType(YAHOO_MAP_REG);
11
map.drawZoomAndCenter(new YGeoPoint(48.3695, 14.5145), 3);
12
</script>
13
</body>
14 </html>
Im Unterschied zu Google Maps und Windows Live Maps muss der Typ
der angezeigten Landkarte explizit gesetzt werden (Zeile 10). Der Rest der
Implementierung ist sehr ähnlich zu den Konkurrenten.
Als dritte Entwicklungsumgebung bietet Yahoo! ein Flash-API, bei dem
die Visualisierung mit Adobe Flash realisiert wird. In diesem Fall ist es möglich sowohl mit JavaScript als auch mit der Flash-Programmiersprache ActionScript und seiner Entwicklungsumgebung Adobe Flex auf die Kartendaten
zuzugreifen und diese zu manipulieren.
Kapitel 3. Interaktive Landkarten
3.1.4
26
Nasa World Wind
Mit NASA World Wind 8 gibt es eine Open-Source-Lösung für digitales Kartenmaterial. Die vorhandene Karteninformation beschränkt sich leider nur
auf digitale Luftbilder die mit der Qualität der Mitbewerber kaum mithalten können. Lediglich in einigen Städten der USA gibt es Bilder mit höheren
Auflösungen in denen auch Fahrzeuge als solche identifiziert werden können.
Ein großer Vorteil von Nasa World Wind ist, dass sämtliche Bilder unter
Public Domain gestellt wurden und somit gemeinfrei zur Verfügung stehen.
Die Auflösung der Orthofotos (Luftbilder) ist vor allem im europäischen
Bereich noch sehr gering, Straßenzüge sind kaum zu erkennen. Nasa World
Wind bietet zurzeit noch keine Online-Plattform, sondern nur eine klassische Desktop-Anwendung mit der die Landkarten betrachtet werden können
(siehe dazu Abschnitt 3.2.2).
Der Vollständigkeit halber soll es allerdings an dieser Stelle erwähnt sein,
da sich dieses Open-Source-Projekt eines immer größeren Nutzerkreises erfreut. Die zugehörige Desktop-Anwendung wird in Abschnitt 3.2.2 näher
erläutert.
3.1.5
OpenStreetMap
Das Projekt OpenStreetMap 9 ist ein weiteres Projekt der wachsenden OpenSource-Gemeinde, welches sich mit der Erstellung und Aktualisierung einer
digitalen Weltkarte beschäftigt. Der Erfinder Steve Coast hat bereits 2004
mit der Erstellung des Systems begonnen und dieses Mitte 2006 an die OpenSource-Benutzer freigegeben. Seither arbeiten weltweit zahlreiche freiwillige
Benutzer daran, Straßen, Wege und interessante Punkte zu digitalisieren.
Um einen Eintrag in der OpenStreetMap erstellen zu können, muss man
GPS-Daten, wahlweise mit einem GPS-Empfänger für Notebooks oder einem
GPS-Datenlogger, mitspeichern. Anschließend müssen die Daten im *.gpx Datenformat auf den Server geladen werden.
Verschiedene Schlagwörter ermöglichen die genaue Spezifizierung der Bedeutung bestimmter GPS-Koordinaten. Eingetragen werden neben Straßen
und Wegen auch zahlreiche, für Endbenutzer wichtige Daten, wie z. B. Parkplätze, Wälder, Gebäude, Flüsse, Seen usw. Dies geht sogar soweit, dass beispielsweise sämtliche Postkästen, U-Bahn-Stationen und Gehsteige in London bereits erfasst sind.
Speziell in Österreich sind die Daten nur in den Ballungsräumen in einem annehmbaren Detailgrad vorhanden. In ländlicheren Gegenden findet
man nur vereinzelt Straßen, die eingetragen wurden. Im Vergleich dazu ist
das Ursprungsland von OpenStreetMap, Großbritannien bereits sehr genau
erfasst, speziell London gilt als extrem detailliert aufgenommen.
8
9
http://worldwind.arc.nasa.gov
http://www.openstreetmap.org
Kapitel 3. Interaktive Landkarten
27
OpenStreetMap selbst steht nur für das freie Kartenmaterial das die
Open-Source-Gemeinde gemeinsam in einer Art GPS-Wiki erstellt. Es gibt
verschiedene Desktop-Anwendungen, die sich dieser Landkartendaten bedienen und diese visualisieren.
Für die Online-Nutzung verwenden die Hersteller von OpenStreetMap die
Open-Source-JavaScript-Bibliothek mit dem Namen OpenLayers 10 . Diese ermöglicht digitale Landkartendaten im Webbrowser in Form einer interaktiven
Landkarte anzuzeigen und zu verwalten.
Der große Unterschied von OpenStreetMap (OSM ) zu den großen Mitbewerbern ist, dass es das Kartenmaterial als Vektordaten zur Verfügung
stellt. Applikationen wie Google Maps oder Windows Live Maps stellen dem
Benutzer nur Rasterdaten zur Verfügung, um illegale Vervielfältigung zu erschweren.
Die freiwilligen Mitarbeiter von OpenStreetMap werden von Tag zu Tag
mehr, das Kartenmaterial wächst sehr schnell und ist in manchen Regionen
tagesaktuell.
Ein Problem der Entwickler ist leider immer noch, dass manche Benutzer
Straßen eintragen die nicht wirklich existieren. Diesen Straßen werden dann
häufig mit dem eigenen Namen oder dem Namen einer Firma bezeichnet.
Die Kartendaten können mittlerweile mit einem Navigationssystem von
Garmin geladen werden, allerdings gibt es zurzeit noch keine Möglichkeit,
diese am mobilen System zur Routenführung zu benutzen. Einzig die von
der OpenStreetMap-Gemeinschaft erstellte mobile Software Pyroute 11 bietet
diese Möglichkeit. Diese Anwendung befindet sich allerdings noch in den Kinderschuhen und es wird noch einige Zeit dauern, um anderen Herstellern von
Navigationssystemen ernsthafte Konkurrenz zu sein. Einen guten Überblick
über die Funktionalität und Anwendungsmöglichkeiten von OpenStreetMap
liefern Ramm und Topf in ihrem Buch OpenStreetMap [14].
Leider gibt es zurzeit kein SDK, welches es erlaubt, die Landkarte in die
eigene Webseite zu integrieren. Dennoch ist es möglich, die Daten auf einer
eigenen Seite anzuzeigen, da man Zugriff auf die JavaScript-Funktionen von
OpenStreetMap hat.
3.1.6
Vergleich
Alle vorgestellten Technologien decken mit ihrem Kartenmaterial bereits
große Teile der Erdoberfläche ab. Unterschiedliche Genauigkeiten in unterschiedlichen Regionen sind die Hauptgründe, warum sich Firmen für eine bestimmte Landkarten-Technologie entscheiden. Abbildung 3.1 zeigt die Landkarten der vorgestellten Hersteller für das Ortszentrum von Hagenberg in
Oberösterreich.
10
11
http://www.openlayers.org
http://wiki.openstreetmap.org/index.php/Pyroute
Kapitel 3. Interaktive Landkarten
28
(a)
(b)
(c)
(d)
Abbildung 3.1: Interaktive Landkarten im Vergleich. Abbildung (a) zeigt
das Ortszentrum von Hagenberg in Oberösterreich in einer Landkarte von
Windows Live Maps. Mehr Details finden sich in (b), der Landkarte von
OpenStreetMap, da Hagenberg bereits sehr genau aufgenommen und eingezeichnet wurde. In den Nachbargemeinden sieht es da leider etwas anders
aus. Abbildung (c) zeigt ebenfalls Hagenberg in der am meisten verbreiteten
Landkarte von Google Maps. Abbildung (d) entspricht dem Landkartenbild
von Hagenberg von Yahoo! Maps.
Anzumerken ist an dieser Stelle, dass das genaueste Kartenmaterial für
Hagenberg sicherlich jenes von OpenStreetMap ist. Grund dafür ist, dass
einige Studenten der Fachhochschule Hagenberg den gesamten Ort sehr genau
aufgenommen und eingetragen haben. Orte rund um Hagenberg sind leider
kaum bis überhaupt nicht erfasst, was es (momentan) noch erschwert, diese
Kartendaten in einer fertigen Applikation zu verwenden.
3.2
Anwendungen
In diesem Abschnitt werden Anwendungen und Applikation beschrieben, deren Hauptzweck es ist, digitales Landkartenmaterial und Luftbilder darzustellen.
Kapitel 3. Interaktive Landkarten
3.2.1
29
Google Earth
Google Earth 12 bezeichnet eine Desktop-Applikation die Google seinen Nutzern kostenlos zur Verfügung stellt. Damit können sämtliche Landkarten, die
auch über die Webplattform Google Maps abrufbar sind, performanter dargestellt werden. Zusätzlich gibt es die Möglichkeit eigene Punkte und Wegstrecken abzuspeichern und auf verschiedene Arten anzuzeigen. Aufgrund
der großen Mengen an zu übertragenen Daten, benötigt Google Earth eine
Breitband-Internetverbindung um vernünftig damit arbeiten zu können.
Die in Kapitel 4 vorgestellte Applikation GPSStation ermöglicht den Export von eigenen Wegstrecken in das von Google verwendete Datei-Format
*.kml.
KML
Das Dateiformat *.kml (Keyhole Markup Language)13 basiert auf dem XMLStandard und dient als Austauschformat für Google Earth. Ende Oktober
2004 übernahm Google das Format des Herstellers Keyhole Inc., Mitte April
2008 wurde es als offener Standard an das Open Geospatial Consortium
(OGC ) übergeben [15].
Ein einfaches Beispiel für eine *.kml-Datei sieht wie folgt aus:
1
2
3
4
5
6
7
8
9
10
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://earth.google.com/kml/2.2">
<Placemark>
<description>Fachhochschule Hagenberg</description>
<name>FH Hagenberg</name>
<Point>
<coordinates>48.63485, 16.454247,0</coordinates>
</Point>
</Placemark>
</kml>
Im vorangegangenen Beispiel wird ein bestimmter Punkt mittels GPSKoordinate festgelegt. Die zusätzliche Beschreibung und der Name des Ortes
dienen der Wiedererkennung in der Applikation Google Earth.
Der einfache Aufbau einer *.kml-Datei ermöglicht das Umwandeln von
Daten aus proprietären Formaten mit geringem Aufwand. Bei der DesktopAnwendung von Google gibt es zurzeit keine Werbeeinschaltungen. Wie lange
das so sein wird, bleibt abzuwarten.
3.2.2
Nasa World Wind Desktop
Wie bereits in Abschnitt 3.1.4 erläutert, ist Nasa World Wind eine OpenSource-Anwendung zur Anzeige von digitalen Luftbildern. Sämtliche Bildda12
13
http://earth.google.com
http://www.opengeospatial.org/standards/kml
Kapitel 3. Interaktive Landkarten
30
ten stehen kostenlos zum Download zur Verfügung. Nasa World Wind gibt
es zurzeit nur für die Windows-Plattform. Das lauffähige Programm benötigt DirectX und das Microsoft .netFramework. Eine plattform-unabhängige
Version mit Java steht in Entwicklung.
Das zur Verfügung stehende Bildmaterial umfasst mittlerweile rund fünf
Terrabyte und beinhaltet neben Luftbildern der Erdoberfläche auch Daten
von Mond, Mars, Venus und Jupiter. Zusätzlich bietet das Programm Zugriff auf den Sternenatlas der SDSS (Sloan Digital Sky Survey). Aufgrund
der hohen Datenmenge benötigt diese Applikation eine schnelle InternetVerbindung, um genaue Daten für die jeweilige Region zu laden.
3.2.3
Mapnik
Mapnik 14 bietet eine Open-Source-Desktop-Anwendung für die Visualisierung von OpenStreetMap Kartendaten. Die kostenlose Software in der aktuellen Version 0.5.1 (April 2008) bietet dem Entwickler sowohl klassische
C++ Bibliotheken als auch Hilfestellung für die Entwicklung von Webkarten. Seit der Version 0.4 läuft die Applikation nicht mehr nur unter Linux,
sondern auch unter Mac OS X, Win32 und FreeBSD.
3.2.4
Osmarender
Osmarender ist ein Set an Dateien welche OpenStreetMap-Kartendaten in
SVG-Vektordaten umwandelt. Dabei werden XSL-Transformationen auf die
Originaldaten angewendet. Der Benutzer kann sich selbst seine eigenen Karten erzeugen lassen, indem er einige Parameter (z. B. Strichstärken, Strichfarben, Koordinatenausschnitt,...) setzt. So lassen sich Karten individualisieren
ohne dabei die Vektorinformation zu verlieren.
14
http://mapnik.org
Kapitel 4
GPSStation
GPSStation ist eine Sammlung von GPS-Applikationen die mittels einer virtuellen, interaktiven Landkarte verknüpft sind. Im Unterschied zu zahlreichen bereits vorhandenen GPS-Anwendungen, bietet GPSStation eine Gesamtlösung mit integrierter Landkarte.
In der Regel bietet Software von anderen Hersteller eine Exportmöglichkeit um GPS-Datensätze in einer Landkarte zu visualisieren. GPSStation
integriert eine interaktive Landkarte vollständig in die Applikation, welche
als zentrales Navigationselement für die einzelnen Teilbereiche gilt.
Durch die verwendete Softwarearchitektur (vgl. Abschnitt 4.2) ist es sehr
leicht möglich, weitere GPS-basierte Programme in das System zu integrieren und so die Anwendung ohne größeren Aufwand zu erweitern. GPSStation wurde für Windows XP und Windows Vista entwickelt und benötigt
das Microsoft .net Framework 3.0 (oder höher) und eine vorhandene Internetverbindung zum Laden der digitalen Kartendaten. Für die Verwendung
der mobilen Anwendung RunningAssistant ist ein Smartphone mit Windows
Mobile 6 Voraussetzung.
Dieses Kapitel beschreibt die Hardwareanforderungen zur Verwendung
von GPSStation, die verwendete Software zur Erstellung der Applikation
und gibt einen Überblick über den Funktionsumfang der Anwendung.
Den Abschluss dieses Kapitels bildet ein Abschnitt über Möglichkeiten
zur Erweiterung und weiteren Verbesserung der Anwendung, welche nach
Veröffentlichung dieser Arbeit kostenlos zum Download verfügbar stehen
wird.
4.1
4.1.1
Verwendete Technologien
Hardware
GPSStation kann mit verschiedenen Hardware-Geräten verwendet werden.
Primär werden Daten von sogenannten GPS-Datenloggern verwendet, welche GPS-Koordinaten in bestimmten Zeitintervallen speichern. Besitzer von
31
Kapitel 4. GPSStation
32
Abbildung 4.1: GPS-Datenlogger i-Blue747 des taiwanesischen Herstellers
Transystem Inc. Dieses Gerät dient sowohl als Bluetooth-GPS-Empfänger
für mobile Endgeräte, als auch als Rekorder für GPS-Koordinaten.
GPS-Empfängern für Notebooks können ebenfalls Bewegungsdaten abspeichern und für das Programm zur Verfügung stellen. Für die in Abschnitt 4.4.6
vorgestellte Anwendung benötigt der Benutzer ein Smartphone mit dem Betriebssystem Windows Mobile 6.
GPS-Datenlogger
Zur Aufzeichnung von GPS-Daten gibt es verschiedene Möglichkeiten. Am
benutzerfreundlichsten sind sogenannte GPS-Datenlogger (auch als GPSLogger bezeichnet), von denen verschiedene Ausführungen erhältlich sind.
Ein klassischer GPS-Logger hat eine Größe von etwa 7cm × 2cm × 5cm und
ist nicht schwerer als 50 Gramm. Abbildung 4.1 zeigt den GPS-Datenlogger iBlue747 der Marke Transystem Inc 1 . Ein Gerät dieser Art kostet mittlerweile
nur mehr knapp 40 e(Stand Mai 2008) und ist im Elektronik-Fachhandel
erhältlich. Typischerweise dienen diese Geräte nicht nur dem Speichern von
GPS-Logs, sondern auch als Bluetooth-GPS-Empfänger für mobile Endgeräte
und Smartphones (siehe Abschnitt 4.1.1), um deren Navigationssoftware zu
steuern.
Nach Aktivierung des GPS-Loggers zeichnet dieser ständig seine aktuellen GPS-Koordinaten in einem sogenannten GPS-Log auf, sofern das Gerät
eine Verbindung zu mindestens vier Satelliten herstellen kann.
Dabei hat der Benutzer die Möglichkeit einzustellen, wie oft das Gerät
1
http://www.transystem.com.tw
Kapitel 4. GPSStation
33
Daten speichern soll. Wird das gesetzte Zeitintervall überschritten, so wird
ein neuer Punkt aufgezeichnet. Zudem hat der Benutzer die Möglichkeit einzustellen, dass ein GPS-Log erstellt wird, sobald eine bestimmte Distanz
(ab zehn Meter) überschritten wird. So wird der 16 Megabyte große Speicher2 nicht allzu schnell gefüllt und es kann dennoch ein sehr genaues Bewegungsprofil des Benutzers aufgezeichnet werden. Will der Benutzer nur
Bewegungen aufzeichnen, bei denen er sich schneller als eine vordefinierte
Geschwindigkeit bewegt, so muss der Speed-Log aktiviert werden. Dies kann
hilfreich sein, wenn beispielsweise ein Skifahrer während der Liftfahrt keine
Aufzeichnung der GPS-Koordinaten wünscht. Trotz der vorhandenen Bluetooth-Schnittstelle ist es nicht möglich, gespeicherte Logdaten kabellos auszulesen.
Aktuell bieten GPS-Datenlogger bis zu 32 MB internen Speicher, der es
ermöglicht bis zu 100.000 Punkte zu speichern. Je nach Einstellung des LogFormats kann sich diese Zahl auf etwa 50.000 Punkte reduzieren. Folgende
Daten können von einem GPS-Logger gespeichert werden3 :
UTC Die Bezeichnung UTC steht für Universal Coordinated Time. Damit kann das Mitspeichern des Zeitstempels der Aufnahme mit Datum und
Uhrzeit aktiviert werden. Wahlweise kann die Genauigkeit auf Millisekunden
erhöht werden.
FixedMode bietet die Möglichkeit die Aufnahmeeigenschaft Valid zu
aktivieren. Ist diese Eigenschaft aktiviert so wird die Signalqualität des
Punktes mitgespeichert. GPSStation verwendet nur jene GPS-Logs, deren
FixedMode mit fix angegeben ist. Zeigt ein Log den Wert No fix, so bedeutet dies, dass bei der Aufzeichnung des Eintrags nicht genügend Satelliten
vorhanden waren und die Koordinaten des Punktes algorithmisch hochgerechnet wurden und so von der tatsächlichen Lage stark abweichen können.
Dabei kann es vorkommen, dass diese Punkte einen Fehler von bis zu einigen
Kilometern aufweisen und deshalb für die meisten Zwecke unbrauchbar sind.
Navigation ist die wichtigste Einstellung für das Log-Format. Hier
wird gesetzt, welche GPS-Koordinateneigenschaften das Gerät aufnehmen
soll. Neben Latitude, Longitude und Altitude (Höhe über dem Meeresspiegel)
kann die aktuelle Geschwindigkeit (Speed) und die ungefähre Orientierung
des GPS-Geräts (Heading) aufgezeichnet werden. Dabei ist zu beachten, dass
die Genauigkeit der angegebenen Orientierung mit steigender Bewegungsgeschwindigkeit des GPS-Geräts steigt.
2
Der i-Blue747 hat eine Speicherkapazität von 16 MB, neuere Modelle bereits deutlich
mehr.
3
Die Bezeichnungen der Einstellungen wurden von der mit dem GPS-Logger i-Blue747
mitgelieferten Software DataLog übernommen und gelten als allgemein gültige Bezeichnungen für diese Parameter.
Kapitel 4. GPSStation
34
Differential Data gibt Daten zu differenziellem GPS (DGPS ) an. Wobei die Felder DSTA die Nummer der DGPS -Referenzstation angibt und der
Wert DAGE die Zeit des letzten gültigen DGPS -Updates bezeichnet. Da
DGPS für GPSStation nicht verwendet wird, wird hier auf eine genauere
Erläuterung verzichtet. Der interessierte Leser findet detaillierte Information
zu differentiellem GPS in [8].
DOP steht für Dilution of Precision und bezeichnet die durch geometrische Operationen auftretende Ungenauigkeit. Dabei kann am GPSDatenlogger eingestellt werden, PDOP (Position), HDOP (Horizontal) und
VDOP (Vertikal) mitzuspeichern. In diesem Fall erhält man die nicht korrigierten Originaldaten um den geometrischen Messfehler selbst berechnen
bzw. bestimmen zu können.
Method bezeichnet die Aufnahmemethode eines GPS-Punktes und ist
auch als RCR bekannt. Diese kann entweder nach einem bestimmten Zeitintervall (Time, T), einem Streckenabschnitt (Distance, D) oder einer Geschwindigkeitsüberschreitung (Speed, S) automatisch erfolgen, oder durch
manuelle Aufzeichnung eines Punktes durch Drücken des Aufnahmeknopfes am GPS-Logger (Interest, I).
Distance speichert, sofern aktiviert, die Distanz zum letzten aufgezeichneten GPS-Punkt mit. Dies kann interessant sein, wenn die Geschwindigkeit des Auslesevorgangs des Loggers zeitkritisch ist. In diesem Fall wird
diese Berechnung bereits direkt während des Speicherns des Punktes durchgeführt.
Satellite Information bezeichnet Daten die zusätzliche Information
über die verwendeten Satelliten beinhaltet. Der Wert NSAT steht für die
Anzahl der verwendeten Satelliten und SID für die Identifikationsnummer
der einzelnen Satelliten. Für detailiertere Information über die Qualität der
Punktberechnung kann bei aktiverter SID für jeden Satelliten auch Azimuth
(Horizontaler Aufnahmewinkel), Elevation (Vertikaler Aufnahmewinkel) und
SNR (Signal-Rausch-Abstand) zum Logeintrag gespeichert werden.
DataLog heißt die mit dem GPS-Logger i-Blue747 mitgelieferte Software
zum Auslesen der GPS-Einträge und zum Setzen der vorgestellten Eigenschaften. Diese Software ist in der aktuellen Version 2.5 leider immer noch
sehr instabil. Eine alternative bietet die Open-Source-Gemeinde mit dem
Programm BT747 4 , welches zur Gänze in Java implementiert ist.
4
http://bt747.sourceforge.net
Kapitel 4. GPSStation
(a)
35
(b)
(c)
Abbildung 4.2: Smartphone-Produktserie von HTC. Abbildung (a) zeigt
das HTC Touch, die günstigste Variante neben dessen großen Bruder HTC
Touch Dual (Bild (b)), welches einen wesentlich schnellere Prozessor und
zusätzlich zum berührungsempfindlichen Display ein Tasten-Eingabefeld hat.
Das dritte Bild (c) zeigt das neueste Modell HTC Touch Cruise, welches GPS
bereits fix integriert hat. (Bildquelle: http://www.htc.com).
Smartphone
Für einen Teil der vorgestellten Applikation GPSStation ist es nötig ein
Smartphone mit Windows Mobile 6 als Betriebssystem zu besitzen. Sämtliche Funktionen der Desktop-Anwendung können zwar ohne ein derartiges
Gerät genutzt werden, die Zusatzapplikation RunningAssistant (siehe Abschnitt 4.4.6) ist allerdings eine Anwendung für mobile Endgeräte.
Für die Implementierung und Tests der vorgestellten Anwendung wurde
ein HTC Touch 5 (siehe Abbildung 4.2 (a)) mit berührungsempfindlichem
Display verwendet. Bedient wird dieses Gerät wahlweise mittels eines Eingabestiftes oder einem Finger, der diesen simuliert.
Das HTC Touch hat einen 201 MHz Prozessor, 128 MB Arbeitsspeicher
und ein 2,8” großes LCD-Display mit 65.536 Farben und einer Auflösung von
240 × 320 Pixel.
Die Taktfrequenz ist allerdings das unterste Limit für Windows Mobile 6,
da das Betriebssystem selbst bereits sehr viele Resourcen benötigt. Neuere
Modelle, wie etwa der Nachfolger des HTC Touch, das HTC Touch Dual
(Abbildung 4.2 (b)), besitzt bereits einen Prozessor mit 400 MHz und ist so
wesentlich performanter bei rechenintensiven Operationen.
Die neuesten Smartphone-Modelle haben teilweise bereits einen GPSEmpfänger integriert, weshalb diese keinen externen GPS-Empfänger mehr
benötigen. Leider sind diese Modelle zurzeit noch wesentlich teurer als Mo5
http://www.htctouch.com
Kapitel 4. GPSStation
36
delle ohne GPS mit externem GPS-Empfänger, wie beispielsweise der in
Abschnitt 4.1.1 vorgestellte i-Blue747 von Transystem Inc. Ein Beispiel für
ein Mobiltelefon mit integriertem GPS-Empfänger bietet das neueste Modell
der HTC -Produktpalette, das HTC Touch Cruise (siehe Abbildung 4.2 (c)),
welches noch etwas unhandlich und schwer erscheint.
4.1.2
Software
Für die Erstellung der Applikation GPSStation wurden ausschließlich Technologien von Microsoft verwendet. Sowohl die Hauptapplikation als auch
sämtliche Subapplikationen und Bibliotheken wurden mit C# 3.0 und dem
zugehörigen .net Framework 3.0 in Visual Studio 2008 entwickelt. Bei der
Verarbeitung von teilweise großen Datenmengen ist der richtige Umgang mit
C# von wesentlicher Bedeutung. Das Buch Accelerated C# 2005 von Trey
Nash liefert einen guten Überblick über die effiziente Programmierung mit
Entwurfsmustern und deren Einsatz in C# [10].
Das Design von GPSStation wurde mit der noch jungen Technologie Windows Presentation Foundation (WPF ) unter Zuhilfenahme von Microsoft
Expression Blend 2.5 entworfen und implementiert.
Windows Presentation Foundation WPF ermöglicht einem Entwickler die strikte Trennung zwischen Implementierung und visueller Repräsentation der Daten. Dabei entwickelt der Programmierer die Programmlogik
(Business Logic) in C# und der Designer die graphische Benutzeroberfläche
(User Interface) mit der XML-basierten, deklarativen Beschreibungssprache
XAML (Extensible Application Markup Language).
Ein weiterer großer Vorteil von WPF ist es, dass sämtliche graphischen
Ausgaben über DirectX und somit direkt auf der Grafikkarte berechnet werden. So können grafisch aufwändige Visualisierungen, 3D-Inhalte und Animationseffekte effizient dargestellt werden. Zudem erlaubt Windows Presentation Foundation transparente Fenster und Benutzeroberflächen-Elemente,
welche mit dem Vorgänger Windows Forms nahezu unmöglich waren. Das
Buch Windows Presentation Foundation - Unleashed von Adam Nathan gilt
zurzeit als umfangsreichstes Nachschlagewerk zum Thema Windows Presentation Foundation [11].
Das WPF-Konzept Databinding erlaubt einem Designer die einfache Verknüpfung der logischen Datenrepräsentation mit grafischen Elementen zu
deren Visualisierung. So können z. B. einfache C#-Listen mit ListBox - oder
ListView -Kontrollelementen in der Designumgebung Microsoft Expression
Blend verbunden werden. Dabei sieht der Designer sofort wie das Element
in der tatsächlichen Anwendung aussieht, da bereits im Microsoft Expression
Blend Live-Daten angezeigt werden, ohne das Programm tatsächlich starten
zu müssen.
Kapitel 4. GPSStation
37
Sämtliche Konrollelemente stehen als Vektordaten zur Verfügung, so ist
es möglich Fenster beliebig zu skalieren, ohne Qualitätsverlust in der Darstellung hinnehmen zu müssen.
Für die Entwicklung der Kommunikation mit der interaktiven Landkarte
wurde auf das kostenlose Microsoft Virtual Earth Kartenmaterial und das
zugehörige Microsoft Virtual Earth SDK zurückgegriffen. Nähere Details zu
interaktiven Landkarten finden sich in Abschnitt 4.3.
Die mobile Applikation RunningAssistant (siehe Abschnitt 4.4.6) wurde
für mobile Endgeräte entwickelt, die Windows Mobile 6 (oder höher) als
Betriebssystem verwenden.
Für die Visualisierung der Graphen für den LogAnalyzer (vgl. Abschnitt
4.4.4) wurde eine Modifikation des WPF ChartControl Swordfish 6 verwendet,
welches unter der BSD-Lizenz kostenfrei zur Verfügung steht.
4.2
Struktur der Applikation
Die Applikation GPSStation besteht aus der Hauptanwendung und zwei zusätzlichen Bibliotheken, die unabhängig von GPSStation für andere Anwendungen verwendet werden können. GeoTagLib ist eine Bibliothek zum Lesen
und Schreiben von GPS-Koordinaten in die Metadaten von Bildern. Die
zweite Bibliothek GPSLoggerReader dient dem Auslesen von GPS-LoggerLogeinträgen für sämtliche GPS-Logger, die das PMTK -Protokoll (siehe Abschnitt 2.1.3) unterstützen.
Abbildung 4.3 zeigt die interne Architektur von GPSStation. Dabei stellen die blauen Kästchen die entwickelten Subapplikationen dar, die ihrerseits
auf Bibliotheken (siehe folgende Abschnitte) zugreifen. Sämtliche Teilapplikationen sind mittels der digitalen Landkarte (Map Control) verknüpft. Diese
Landkarte wird in einem Webbrowser-Kontrollelement mit JavaScript geladen, welches auf eine externen HTML-Seite ausgeführt wird.
GeoTagLib: Bei GeoTagLib handelt es sich um eine Bibliothek die das
Lesen und Schreiben von GPS-Koordinaten in die Metadaten (Exif-Header )
von Bilddateien (mit JPEG Komprimierung) ermöglicht. Dabei werden neben Latitude und Longitude (Längen- und Breitenangabe des Ortes) auch
die Höhe über dem Meeresspiegel (Altitude) in die Bilddatei geschrieben.
Die GPS-Daten können von verschiedenen Quellen wie z. B. *.csv-Dateien
oder direkt von GPS-Datenloggern eingelesen werden und anschließend in
sämtliche Bilddateien eines Ordners des Dateisystems eingebettet werden.
Dabei ist es wichtig, dass die aufgezeichneten GPS-Koordinaten mit einem
eindeutigen Zeitstempel im UTC -Format (Universal Coordinated Time) versehen sind.
6
http://sourceforge.net/projects/swordfishcharts
Kapitel 4. GPSStation
38
GPSStaon
GeoPictureViewer
GeoTagger
HTML
Page
Map
Control
GeoTagLib
LogImporter
LogExporter
GPSLoggerReader
WhereWas
MyHusband
LogAnalyzer
Abbildung 4.3: Architektur und Aufbau von GPSStation. Die grünen Kästchen beschreiben den Bereich der digitalen Landkarte, blau repräsentiert die
einzelnen Teilapplikationen. Bibliotheken sind in orange dargestellt.
Handelsübliche Digitalkameras speichern die erstellten Bilder ebenfalls
mit einem Zeitstempel, der dem Zeitpunkt des Erstellens des Fotos entsprechen. Dieser Zeitstempel repräsentiert allerdings nur die Einstellung der Uhrzeit und Zeitzone der Kamera, welche in der Regel nicht im UTC -Format
vorhanden ist. Deshalb ist es, wie in Abschnitt 4.4.1 beschrieben, unumgänglich beim Geotaggen 7 die auf der Kamera gesetzte Zeitzone einzustellen.
Anschließend werden die im ausgewählten Ordner vorhandenen Bilder
iterativ geöffnet, dekomprimiert und der Zeitpunkt der Erstellung des Bildes
ausgelesen. Dieser Zeitstempel wird dann in die koordinierte Weltzeit (UTC )
umgerechnet und dient als Grundlage für das Finden der zugehörigen GPSKoordinaten.
Für sämtliche importierte GPS-Koordinaten (die in der Regel von einem GPS-Logger bereitgestellt werden) wird anschließend die Zeitabweichung zum Zeitpunkt der Erstellung des Bildes berechnet. Jener Zeitstempel eines GPS-Datensatzes mit der geringsten Abweichung gilt zunächst als
Erstellungspunkt des digitalen Bildes. Überschreitet die Zeitabweichung allerdings einen zuvor festgelegten Schwellwert, bedeutet dies, dass es nicht
möglich ist, das Bild mit exakten GPS-Koordinaten zu versehen. Sollte die
Zeitabweichung unter dem Schwellwert liegen, so werden die entsprechenden
Koordinaten in das Bild gespeichert.
Nachdem alle Bilder, bei denen die Abweichung innerhalb des zulässigen Bereichs liegt, mit GPS-Koordinaten versehen wurden, können diese im
GeoPictureViewer (siehe Abschnitt 4.4.2) angezeigt werden.
7
Geotagging: Versehen von digitalen Bildern mit geographischer Information.
Kapitel 4. GPSStation
39
GPSLoggerReader Diese Bibliothek dient dem Auslesen von GPS-Daten
eines GPS-Loggers, der das PMTK -Protokoll unterstützt. Dabei wird zu Beginn des Auslesevorgangs überprüft, ob ein GPS-Logger an einer bestehenden
seriellen Schnittstelle (COM-Port) angeschlossen und eingeschaltet ist. Wird
ein Gerät gefunden, so wird eine Verbindung aufgebaut und zunächst nur
allgemeine Information über den Zustand des Loggers ausgelesen. Neben der
Anzahl der Logeinträge wird ermittelt, wieviel Speicherplatz am Gerät zu
Verfügung steht. Anschließend können die Nutzdaten angefordert werden.
Das Auslesen von gespeicherten Logeinträgen kann aufgrund der PMTK Spezifikation nur auf sämtliche gespeicherten Daten erfolgen. Eine Einschränkung für das Auslesen von Logs eines bestimmten Zeitraums kann erst später,
nachdem alle Daten angefordert wurden, erfolgen. Dazu sendet die Bibliothek eine Nachricht folgender Form an das GPS-Gerät:
$PMTK182,7,0,10000*0A<CR><LF>
Vereinfacht ausgedrückt bedeutet diese Nachricht, dass die Funktion 7
(Auslesen von Nachrichten) für sämtliche Datensätze von Byte 0 bis Byte
10000 erfolgen soll. Es besteht zwar grundsätzlich die Möglichkeit nur einen
bestimmten Teil der Einträge (bestimmte Anzahl von Bytes) vom GPSLogger anzufordern, allerdings kann auf die einzelnen Datensätze erst nach
dem Auslesen des gesamten Blocks zugegriffen werden. Das GPS-Gerät antwortet mit dem angeforderten Block, überträgt die Daten allerdings in einzelnen Paketen zu je 256 Zeichen.
Nachdem der gesamte Block eingelesen ist, werden die Daten, repräsentiert durch einen sehr langen Datensatz vom Typ string, analysiert und ausgewertet. Dabei stellte sich nach zahlreichen Tests heraus, dass der schnellste
Weg diese Zeichenkette in nutzbare Datensätze zu zerlegen, mithilfe von regulären Ausdrücken (auch als Regular Expression bezeichnet) ist.
4.3
Interaktive Landkarte
Die interaktive Landkarte in der vorgestellten Applikation wurde mit dem
Microsoft Virtual Earth SDK entwickelt. Da sich Google Maps und Microsoft
Virtual Earth vom Funktionsumfang sehr ähnlich sind und für die Entwicklung der restlichen Applikation Microsoft Produkte verwendet wurden, fiel
auch die Entscheidung auf das SDK von Microsoft. Angezeigte Daten können
allerdings, wie in Abschnitt 4.4.3 beschrieben, als *.kml-Datei gespeichert
und somit in der Desktopanwendung Google Earth (vgl. Abschnitt 3.2.1)
importiert werden.
Abbildung 4.4 zeigt die Implementierung der interaktiven Landkarte für
GPSStation. Dieses Fenster ist frei beweglich und kann so, unabhängig von
der Applikation selbst, beispielsweise auf einem anderen Monitor dargestellt
werden. Neben den GPS-Koordinaten (Latitude und Longitude) wird der
Kapitel 4. GPSStation
40
Abbildung 4.4: Interaktive Landkarte der GPSStation. Ist das Kontrollkästchen Hybrid View aktiviert, so wird zusätzlich zur Landkarte das zugehörige Luftbild angezeigt.
aktuelle Vergrößerungsfaktor auf dem Landkartenfenster (GPSStation Map
View ) angezeigt. Ein Kontrollkästchen ermöglicht dem Benutzer das Umschalten auf die sogenannte Hybrid View, bei der zusätzlich das zugehörige
Luftbild angezeigt wird.
Die Interaktion mit der Karte funktioniert genau wie in der OnlineVersion von Windows Live Maps, da es sich bei der Implementierung um
ein C#-Webbrowser-Kontrollelement handelt und im Hintergrund eine statische HTML-Seite geöffnet wird. In dieser HTML-Seite wird die interaktive
Landkarte initialisiert und sämtliche JavaScript-Funktionen zur Interaktion
mit der Anwendung definiert.
Das Microsoft .net Framework 3.0 bietet Entwicklern eine einfache Möglichkeit JavaScript-Funktionen mit den zugehörigen Funktions-Parametern
aus einer Desktop Anwendung aufzurufen:
1 private object ExecuteScript(string scriptName, params object[]
parameters)
2 {
3
4 }
return virtualEarthMapBrowser.Document.InvokeScript(scriptName,
parameters);
Kapitel 4. GPSStation
41
Im vorangegangenen Codebeispiel wird der Funktion ExecuteScript der
Name der aufzurufenden JavaScript-Funktion und ein Feld mit den zu benötigten Funktionsparametern übergeben. Das bereits bei Applikationsstart instanzierte virtualEarthMapBrowser-Objekt stellt das Webbrowser-Kontrollelement der Anwendung dar. Wird von der JavaScript-Funktion ein Wert
zurückgegeben, so ist dieser anschließend, nach einer eventuellen Typkonvertierung im Applikationcode, verfügbar.
Neben synchronen Funktionsaufrufen bietet das .net Framework auch die
Möglichkeit asynchrone Aufrufe mit anschließendem Rückruf (Callback ) an
die Applikation durchzuführen. Wenn auf der Webseite ein Ereignis, z. B.
ein Klick auf ein bestimmtes Element, eintritt, kann dieses an die Anwendung weitergeleitet und dort weiterverarbeitet werden. Nähere Details zur
Kommunikation zwischen .net-Applikationen und JavaScript-Funktionen beschreibt Lee in [7], wo ein detailiertes Beispiel die Kommunikation einer
Desktop-Anwendung mit einer interaktiven Landkarte zeigt.
4.4
Subapplikationen
GPSStation besteht aus mehreren Subapplikationen die mithilfe der interaktiven Landkarte verknüpft sind. Aufgrund der realisierten Softwarearchitektur ist es ohne größeren Aufwand möglich, neue Subapplikationen in die
Anwendung zu integrieren. Eine direkte Verbindung zwischen den einzelnen
Teilapplikationen existiert nicht, allerdings stehen importierte GPS-Daten
allen Subanwendungen zur Verfügung. Die digitale Landkarte existiert nur
einmal für eine laufende GPSStation-Applikation. Sämtliche Anzeigen, die
die einzelnen Teilapplikationen auf der interaktiven Landkarte vornehmen,
sind ständig sichtbar, auch wenn der Benutzer die aktuelle Subanwendung
wechselt.
4.4.1
GeoTagger
Die GeoTagger -Anwendung (dargestellt in Abbildung 4.5) dient dem Benutzer dazu, digitale Bilder im Jpeg-Format mit geographischen Daten zu
versehen.
Mittlerweile gibt es einige wenige Digitalkameras, die bereits ab Werk
einen GPS-Empfänger integriert haben, allerdings sind diese noch wesentlich teurer als vergleichbare Kameras ohne GPS. GeoTagger ermöglicht das
Geotaggen von Bildern jeder beliebigen Digitalkamera, selbst Fotos von Mobiltelefonen können mit GPS-Koordinaten versehen werden.
Der Benutzer wählt zunächst jenen Ordner mit Bildern, welche mit GPSKoordinaten versehen werden sollen. Dieser Ordner kann auf dem lokalen
Dateisystem, aber auch auf einer Speicherkarte einer Digitalkamera angelegt sein. Anschließend muss die Quelle der GPS-Daten, wahlweise ein GPS-
Kapitel 4. GPSStation
42
Abbildung 4.5: GeoTagger. An dieser Stelle im Programm kann der Benutzer den Ordner der zu verortenden Fotos angeben und den gewünschten
GPS-Datensatz aus einer Datei oder von einem Logger laden. Wichtig ist die
Einstellung der Zeitzone der Digitalkamera, da das Ergebnis sonst verfälscht
ist.
Logger oder eine Datei (*.csv) mit sämtlichen aufgezeichneten GPS-Logs
ausgewählt werden.
Je mehr GPS-Koordinaten für einen bestimmten Zeitraum in der Quelle
gespeichert sind, desto genauer wird die Verortung der Fotos. Die Zeitstempel der GPS-Koordinaten werden mit dem Zeitstempel des jeweiligen
Bildes verglichen. Jene GPS-Koordinaten mit der niedrigsten Abweichung
zum Aufnahmezeitpunkt des Bildes gelten als die Nähesten und werden
im Bild gespeichert, wenn die Abweichung unter einem vorher bestimmten
Schwellwert liegt. Dieser Schwellwert kann in der GeoTagger -Applikation unter dem Punkt Maximum Time Difference eingestellt werden. Überschreitet
die kleinste Abweichung diesen Schwellwert, so wird das Bild nicht mit GPSKoordinaten versehen und es wird mit dem nächsten Bild fortgefahren.
Wichtig ist auch die Einstellung der in der Kamera gewählten Zeitzone,
da GPS-Koordinaten-Zeitstempel im UTC -Format(Universal Coordinated
Time) abgespeichert werden.
Zusätzlich bietet GeoTagger die Möglichkeit den Namen des Bildautors
mit in die Exif -Daten des Bildes zu integrieren (vgl. Abschnitt 2.2.6). Ein
Kapitel 4. GPSStation
43
einfacher Klick auf die Schaltfläche Tag Images startet den Vorgang. Nachdem alle Bilder verortet sind, können diese mit GeoPictureViewer oder einer
ähnlichen Software angezeigt und verwaltet werden.
4.4.2
GeoPictureViewer
Die GeoPictureViewer -Subapplikation ist ein klassisches Programm zur Anzeige von digitalen Bildern, die zusätzliche Möglichkeiten für Bilder mit integrierten GPS-Koordinaten bietet.
Abbildung 4.6 zeigt den GeoPictureViewer der GPSStation. Dabei wurde
bereits ein Ordner mit Bildern ausgewählt und geöffnet. Durch einen einfachen Mausklick auf eines der kleinen Vorschaubilder wird dieses in den
Hauptanzeigebereich geladen und vergrößert dargestellt. Um sowohl Hochals auch Querformat-Darstellung zu unterstützen, kann das Bild im oder
gegen den Uhrzeigersinn gedreht werden. Der Benutzer hat die Möglichkeit
durch einen Klick auf einen der Pfeile zum nächsten bzw. vorherigen Bild zu
gelangen oder wahlweise eine automatische Vorführung zu starten.
Am unteren Rand der Applikation werden einige Metadaten des aktuell
geladenen Bildes angezeigt. Die angezeigten Daten (Autor des Bildes, Erstellungszeitpunkt, Auflösung und Dateiname) sind nur ein kleiner Teil aller
in einem digitalen Bild gespeicherten Exif -Daten. Exif -Datenfelder können
auch benutzt werden, um GPS-Koordinaten in ein Bild zu integrieren (wie
in Abschnitt 4.4.1 beschrieben).
Die Benutzeroberfläche wurde, wie die gesamte GPSStation-Applikation
mit Windows Presentation Foundation (WPF ) implementiert. Transparenzen und Reflektionen können mit dieser Technologie sehr einfach realisiert
werden. Frühere Technologien, wie etwa die Vorgängerversion von WPF
Windows Forms, boten dem Entwickler keine Möglichkeit, Effekte dieser Art
darzustellen.
Da WPF das Erscheinungsbild sämtlicher Elemente der Benutzeroberfläche direkt auf der Grafikkarte berechnet, ist durch solche Effekte kaum ein
Unterschied in der Rechenleistung spürbar.
GeoPictureViewer kann, neben der klassischen Bildansichtsfunktion, Information aus den Metadaten eines Bildes (vgl. Abschnitt 2.2.6) auslesen.
Wird ein Bild in den Hauptanzeigebereich geladen, so werden die zugehörigen GPS-Koordinaten (sofern vorhanden) ausgelesen und die interaktive
Landkarte geladen. Sobald das Bild erscheint, navigiert die Landkarte automatisch an exakt jene Stelle, an der das Bild aufgenommen wurde.
Alternativ zur klassischen Bildansicht bietet GPSStation eine sogenannte
Tiled View, die Vorschaubilder wie Kacheln nebeneinander anordnet. Durch
einen Klick auf eines dieser Vorschaubilder wird dieses groß in den Ansichtsbereich geladen. Ein erneuter Klick wechselt zurück zur Übersicht. So kann
der Benutzer sehr schnell zwischen Detail- und Übersichtsansicht wechseln,
ohne unnötigen Platz zu verbrauchen. Auch in der Tiled View -Ansicht wird
Kapitel 4. GPSStation
44
Abbildung 4.6: GeoPictureViewer. Durch einen einfachen Klick auf eines
der Vorschaubilder erscheint dieses in vergrößerter Ansicht. Ist die virtuelle
Landkarte geöffnet und beinhalten die Metadaten des ausgewählten Bildes
GPS-Informationen, so zeigt diese die exakte Position an der diese Bild erstellt wurde.
das jeweilige geladene Bild auf der Landkarte angezeigt, sofern GPS-Daten
im Bild gespeichert sind.
4.4.3
LogImporter / Exporter
Die LogImporter -Subapplikation (siehe Abbildung 4.7) gilt als eine der wichtigsten Teile von GPSStation, weil diese als Grundlage für weitere Subanwendungen dient.
Der Aufgabenbereich des LogImporters ist der Import von GPS-Logdaten
aus verschiedenen Quellen. Unabhängig von welcher Quelle die GPS-Daten
eingelesen werden, erfolgt die interne Abbildung ebendieser in einem einheitlichen Datenformat.
Zum Auslesen von GPS-Logdaten aus einem GPS-Logger muss die verwendete COM-Schnittstelle angegeben werden. Um die Benutzbarkeit zu vereinfachen, wurde eine Funktion implementiert, die automatisch jene COMSchnittstelle auswählt, an der ein GPS-Datenlogger angeschlossen ist. Dabei
Kapitel 4. GPSStation
45
Abbildung 4.7: LogImporter. Ermöglicht das Auslesen und Analysieren von
GPS-Daten die vom GPS-Logger gespeichert wurden. Sämtliche Tracks können an dieser Stelle unabhängig von einander in verschiedene Formate exportiert werden.
wird an alle verfügbaren Schnittstellen eine PMTK -Nachricht gesendet. Sobald auf eine Nachricht eine gültige PMTK -Antwort zurückgeliefert wird,
wurde der richtige Anschluss gefunden (Auto Find).
Nachdem die verwendete Schnittstelle gefunden wurde, kann der Anwender die zu lesenden Daten auf einen bestimmten Zeitraum einschränken.
Wie bereits in Abschnitt 4.2 erläutert, werden intern alle Daten ausgelesen,
allerdings nur jene Logdaten angezeigt, die dem ausgewählten Zeitbereich
entsprechen. Zusätzlich bietet der LogImporter die Möglichkeit, die Ergebnisdatenmenge in einzelne unabhängige Tracks aufzuteilen.
Überschreitet die Distanz zwischen zwei aufeinander folgenden GPSPunkten die vom Benutzer vordefinierte Distanz, so zählt jener Punkt als
Startpunkt für den nächsten Track.
Analog dazu kann die Datenmenge nach Zeit unterteilt werden. Wenn
die zeitliche Differenz zwischen zwei Punkten die definierte Zeitspanne übersteigt, wird ein neuer Track angelegt. So kann der Benutzer beispielsweise
Trainingsdaten von unterschiedlichen Trainingseinheiten, bzw. Trainigs an
Kapitel 4. GPSStation
46
Tabelle 4.1: Aufnahmearten von GPS-Loggern.
Zeichen
Typ
Beschreibung
D
Distance
Überschreiten einer bestimmten Distanz
S
Speed
Überschreitung der Geschwindigkeit
T
Time
Überschreiten einer bestimmten Zeitspanne
I
Interest
Drücken des Knopfes auf dem GPS-Logger
verschiedenen Tagen, einzeln darstellen und anschließend analysieren (siehe
Abschnitt 4.4.4).
Neben GPS-Logdaten von GPS-Datenloggern können Logeinträge auch
aus *.csv-Dateien eingelesen werden. Dabei bedient sich GPSStation der
Struktur die auch von anderen GPS-Programmen verwendet wird.
Die mit dem GPS-Datenlogger i-Blue747 mitgelieferte Software DataLog 8 ermöglicht, wie viele andere Hersteller von GPS-Logger-Software, das
Sichern von Logdaten in folgendem *.csv-Format:
0,D,2007/11/21,13:38:27,SPS,48.36,N,14.51, E,423.33 m,6.6 km/h,18.5 m
Aus Gründen der Übersichtlichkeit wurde bei obenstehendem Beispiel
die Anzahl der Nachkommastellen wesentlich reduziert. Die einzelnen, durch
Beistriche getrennten Werte beginnen mit einem eindeutigen, fortlaufendem
Index gefolgt von der Aufnahmeart des jeweiligen Punktes. Die Aufnahmeart
eines GPS-Datensatzes kann, je nach Konfiguration des GPS-Loggers, eine
der in Tabelle 4.1 angegeben Werte annehmen.
Anschließend folgt das Datum (im Format YYYY/MM/DD) und die genaue Uhrzeit der Punktaufnahme (in UTC ), gefolgt von einer Genauigkeitsangabe des GPS-Signals. Standardmäßig wird SPS (Satellite Paging System)
verwendet. Wie in Abschnitt 4.1.1 erläutert, werden Einträge mit dem Wert
No fix aufgrund mangelnder Genauigkeit von GPSStation ignoriert.
Im *.csv-Datensatz folgen anschließend die GPS-Koordinaten und die
Höhe des GPS-Punktes über den Meeresspiegel. Zuletzt werden noch die
Geschwindigkeit zum jeweiligen Zeitpunkt und der Abstand des aktuellen
Punktes zum letzten, gespeicherten Punkt angegeben.
Dieses Format verstehen die meisten GPS-Anwendungen die den Import
von *.csv erlauben. GPSStation versteht *.csv-Dateien in diesem Format
und kann importierte Logs in ebendiese exportieren. Zusätzlich bietet GPSStation die Möglichkeit, einzelne Tracks in das XML-basierte Datenformat
*.kml9 (Keyhole Markup Language) zu exportieren. Diese Daten können in
8
9
DataLog-GPS-Software: http://www.transystem.com.tw/pdf_gps/TsiSetup.zip
http://earth.google.de/kml
Kapitel 4. GPSStation
47
Abbildung 4.8: Ansicht der Track-Liste im LogImporter. Die Detailanzeige
zeigt sämtliche gespeicherten Punkte und Daten zum ausgewählten Track
und ermöglicht den Export in verschiedene Datenformate.
der kostenlosen Anwendung Google Earth (siehe Abschnitt 3.2.1) importiert,
angezeigt und verändert werden.
Nach dem Einlesen der Daten werden diese, gegebenenfalls aufgeteilt in
einzelne Tracks, in der Applikation angezeigt. An dieser Stelle finden sich
auch die Schaltflächen für den Export in die verschiedenen Dateiformate.
Ein einfacher Klick auf das blaue Pfeilsymbol zeigt die Detailansicht eines
einzelnen Tracks. Diese Ansicht zeigt sämtliche GPS-Daten-Einträge die von
der jeweiligen Quelle eingelesen wurden. Abbildung 4.8 zeigt die Detailansicht eines Tracks mit sämtlichen Detaildaten.
Durch einen einfachen Klick auf die Farbe eines Eintrags kann diese verändert werden. Dabei wird zufällig eine neue Farbe gewählt und dem jeweiligen Track zugeordnet. Die gewählte Farbe repräsentiert die Einfärbung
der Streckenanzeige in der Landkarte und dient der Wiedererkennung in der
LogAnaylzer -Applikation, die in Abschnitt 4.4.4 vorgestellt wird.
Sämtliche geladenen Datensätze stehen ab diesem Zeitpunkt in der interaktiven Landkarte zur Verfügung. Dort kann der Benutzer einzelne Strecken
ein- und ausblenden und durch Klick auf eine Streckenbezeichnung die Landkarte an die zugehörige GPS-Position navigieren (siehe Abbildungen 4.9 (a)
und 4.9 (b)).
4.4.4
LogAnalyzer
Nach dem Import von GPS-Daten von einem Datenlogger oder einer entsprechenden *.csv-Datei können die Bewegungsdaten im LogAnalyzer analysiert
und ausgewertet werden.
Die GPS-Aufzeichnungen werden anhand von interaktiven Graphen visualisiert und können, bei Import von mehreren Tracks, überlagert und dadurch einfach verglichen werden. Eine Beispielansicht des LogAnalyzers ist
in Abbildung 4.10 zu sehen. Der obere Graph repräsentiert die Höhenkurve
der zurückgelegten Wegstrecke über die Distanz, der zweite Graph dient der
Visualisierung der Geschwindigkeit über die zurückgelegte Strecke.
Kapitel 4. GPSStation
(a)
48
(b)
Abbildung 4.9: Abbildung (a) zeigt einen Ausschnitt der interaktiven
Landkarte nach dem Importieren von GPS-Daten. Bewegt der Benutzer die
Maus über das Bild mit dem Wanderer, so erscheinen die wichtigsten Daten
zur importierten Wegstrecke. Neben Länge und Höhenmeter der zurückgelegten Strecke wird die durchschnittliche Geschwindigkeit und der Zeitpunkt
von Start und Ende angezeigt. In Abbildung (b) werden alle importierten
Tracks am Landkartenfenster angezeigt und können dort ein- bzw. ausgeblendet werden.
Durch einfaches Gedrückthalten der linken Maustaste kann der Benutzer
die Anzeige des Graphen verschieben. Hält der Benutzer die rechte Maustaste
gedrückt, kann er eine bestimmte Stelle der Anzeige vergrößern und erhält
so detailliertere Information zur jeweiligen Position.
Mittels Doppelklick auf einen Punkt auf dem angezeigten Graphen öffnet
sich die interaktive Landkarte und ein rotes Symbol erscheint exakt an jener
Position, an der diese Daten aufgezeichnet wurden (siehe Abbildung 4.11).
Bewegt der Benutzer die Maus über das erscheinende Symbol, erhält
er nähere Informationen zur gewählten Position. Neben den exakten GPSKoordinaten werden auch die Höhe über dem Meeresspiegel (Altitude) und
die Geschwindigkeit an dieser Stelle angezeigt (siehe Abbildung 4.11).
Bei der vorliegenden Implementierung der GPSStation wurde auf die
Graph-Visualisierungsbibliothek Swordfish Charts zurückgegriffen. Diese Bibliothek und der gesamte zugehörige Quellcode stehen kostenlos (unter der
BSD-Lizenz) in Internet zur Verfügung.
Die Anbindung ist dank WPF sehr einfach, da die Bibliothek nur als Re-
Kapitel 4. GPSStation
Abbildung 4.10: LogAnalyzer. Verschiedene interaktive Graphen ermöglichen die Auswertung einer getätigten Route (Track ). Dieses Werkzeug kann
vor allem für Sportler zur Trainingsanalyse verwendet werden.
Abbildung 4.11: Detail der interaktiven Landkarte. Der Rote Pfeil symbolisiert einen vom Benutzer im LogAnalyzer gewählten Wegpunkt. Bewegt
der Anwender die Maus über dieses Bild, so erscheinen nähere Details zur
gewählten Position. Die gelben Nadeln markieren sogenannte Zwischenzeitpunkte, die auftreten, wenn der Benutzer den Log-Knopf am GPS-Logger
drückt.
49
Kapitel 4. GPSStation
50
ferenz hinzugefügt werden muss. Nach dem Instanzieren eines XYLineChartObjekts können einzelne ChartPrimitive-Objekte erstellt werden. Ein Objekt vom Typ ChartPrimitive entspricht dabei einem einzelnen Graphen.
Ein XYLineChart kann mehrere ChartPrimitive-Objekte beinhalten, so
können Graphen einfach überlagert werden. Folgendes Beispiel zeigt das einfache Anlegen eines Liniengraphen und das Hinzufügen mehrerer Punkte:
1 private XYLineChart CreateAndFillChart( List<Point> pointsA,
2
List<Point> pointsB )
3 {
4
XYLineChart chart = new XYLineChart();
5
ChartPrimitive cpA = new ChartPrimitive();
6
ChartPrimitive cpB = new ChartPrimitive();
7
8
foreach (Point p in pointsA)
9
cpA.AddPoint(p);
10
11
cpB.Points = pointsB;
12
13
chart.Primitives.Add(cpA);
14
chart.Primitives.Add(cpB);
15
16
return chart;
17 }
Im vorangegangenen Beispiel wird in der Funktion CreateAndFillChart
ein XYLineChart-Kontrollelement instanziert. Anschließend werden zwei unabhängige ChartPrimitive-Objekte angelegt die zwei übereinander liegende
Graphen darstellen. Diese Objekte können mit einzelnen Punkten befüllt
werden oder direkt eine Liste an Punkten entgegen nehmen. Nachdem die
einzelnen Graphenpunkte hinzugefügt wurden, müssen die ChartPrimitiveObjekte zum eigentlichen Kontrollelement hinzugefügt werden.
Anschließend funktioniert dieses Kontrollelement bereits wie beschrieben,
lediglich das Design der Graphen kann bzw. sollte noch an die Applikation
angepasst werden. Will der Entwickler auf Ereignisse in diesem Element reagieren, so müssen noch die zugehörigen Ereignisbehandlungsroutinen (Event
Handler ) implementiert werden.
4.4.5
WhereWasMyHusband
Die Applikation WhereWasMyHusband (siehe Abbildung 4.12) ermöglicht
dem Benutzer das Auswerten von GPS-Logger-Daten um den Aufenthaltsort und die korrespondierende Aufenthaltszeit des GPS-Loggers festzustellen. Dabei werden GPS-Daten von einem GPS-Logger automatisch ausgelesen und zunächst vom System analysiert. Anschließend erhält der Benutzer
eine Liste mit sämtlichen GPS-Positionen an der sich das GPS-Gerät und
in der Regel die observierte Person länger als 30 Minuten aufgehalten hat.
Kapitel 4. GPSStation
51
Abbildung 4.12: WhereWasMyHusband. Nach dem Klicken der Schaltfläche
Tell me where my husband was werden sämtliche Logdaten importiert und
die Wegstrecke sowie die Aufenthaltsorte des GPS-Loggers angezeigt. Klickt
der Benutzer auf einen dieser Einträge, wird die korrespondierende Position
in der Karte angezeigt.
Diese Stationen werden auf der interaktiven Landkarte visualisiert und mit
zusätzlichen Daten versehen.
Neben dem Zeitpunkt von Beginn und Ende des Aufenthalts an jeder
dieser Stellen wird die zurückgelegte Wegstrecke eingezeichnet und kann so
zu einem späteren Zeitpunkt ausgewertet werden.
Da GPSStation für Benutzer mit GPS-Logger-Geräten ausgelegt ist, bietet es derzeit keine Unterstützung für Echtzeit-Tracking von Personen bzw.
GPS-Sendegeräten. Die Software erlaubt das Auswerten der Daten im Anschluss an die Aufzeichnung. Dabei ist der übliche Ablauf wie folgt:
Zuerst wird der GPS-Datenlogger in den Log-Modus gesetzt (durch einfaches Umlegen eines Schalters am Logger) und das Empfangsgerät vollständig geladen. Bei vollständiger Ladung und einem eingestellten Log-Intervall
von zehn Sekunden hält der Akku knapp eine Woche. Anschließend wird
der GPS-Logger der zu observierenden Person übergeben, bzw. an oder bei
dieser Person versteckt.
Kapitel 4. GPSStation
52
Da handelsübliche GPS-Logger sehr starke Empfangsleistungen bieten,
kann das Gerät selbst in Fahrzeugen im Handschuhfach oder im Kofferraum
angebracht werden. Eine direkte Sichtverbindung zu den GPS-Satelliten ist
nicht nötig.
Verlässt die zu beobachtende Person das Fahrzeug in dem der GPSLogger untergebracht wurde, kann natürlich nur die Position des Fahrzeugs
ausgewertet werden. Dies kann allerdings für die Aufzeichnung und Auswertung von Fahrtrouten von Firmenfahrzeugen bereits ausreichen.
Der GPS-Logger kann auch in Aktenkoffern, Laptoptaschen oder im Reisegepäck untergebracht werden. Erst wenn die observierte Person bzw. das
beobachtete Fahrzeug mit dem GPS-Empfänger wieder zurück ist, kann der
GPS-Logger entnommen und an den Computer angeschlossen werden.
Bei der Entwicklung des Auswertungssystem der WhereWasMyHusband Applikation wurde besonderer Wert auf die Einfachheit der Benutzeroberfläche gelegt. Da die potentielle Zielgruppe auch Benutzer mit kaum vorhandenen Computerkenntnissen beinhaltet, besteht die Benutzeroberfläche nur aus
einer einzigen Schaltfläche und einer kurzen und prägnanten Beschreibung.
Der GPS-Logger muss auch zur Auswertung im Log-Modus eingestellt
werden. Anschließend beginnt der Auslesevorgang durch das Drücken der
Schaltfläche Tell me where my husband was. Sämtliche Einstellungen werden
von der GPSStation-Anwendung selbst getätigt.
Die Auswahl der richtigen COM-Schnittstelle erfolgt automatisch. In den
gesamten Logdaten wird nach Zeitbereichen gesucht, an denen sich die GPSPosition des GPS Loggers nicht, oder nur minimal ändert. An die Durchschnittsposition wird ein Symbol in der Karte angezeigt und der Datensatz
erscheint in der Liste der Aufenthaltsorte. Dort findet der Benutzer Beginnund Endzeit des Aufenthalts. Durch Klick auf einen dieser Datensätze erscheint die interaktive Landkarte, die diese Position anzeigt. Wahlweise kann
der Benutzer zwischen Landkarten- und Orthofotoansicht umschalten.
4.4.6
RunningAssistant
RunningAssistant ist eine Applikation für mobile Endgeräte mit Microsoft
Windows Mobile 6 als Betriebssystem. Diese Anwendung richtet sich hauptsächlich an Sportler, die Ihre Trainingsergebnisse verbessern und vergleichen
wollen. Vor allem für Langstreckenläufer, Radfahrer und Langläufer kann
RunningAssistant ein nützliches Werkzeug sein, um den laufenden Trainingserfolg zu steigern.
Dazu ist es nötig, zu Beginn eine bestimmte Trainingsstrecke mit einem
GPS-Logger zurückzulegen und die Daten in die Desktop-Applikation GPSStation mittels LogImporter (siehe Abschnitt 4.4.3) zu importieren. Die aufgezeichnete Referenzstrecke dient in weiterer Folge als Vergleichsstrecke für
zukünftige Trainingseinheiten. Die so aufgenommenen und eingelesenen Logdaten können anschließend für die RunningAssistant-Anwendung exportiert
Kapitel 4. GPSStation
(a)
53
(b)
Abbildung 4.13: RunningAssistant. Bild (a) zeigt die Benutzeroberfläche
der mobilen Applikation nach dem Laden eines Datensatzes (Referenzlauf).
Neben Länge der Strecke findet der Benutzer auch die zurückzulegenden
Höhenmeter und die Dauer des Referenzlaufes. Das zweite Bild (b) zeigt die
Ansicht der Landkarte, die mit einem Finger oder mit einem Eingabestift
verschoben werden kann. Da die Karte von GPSStation exportiert wurde, ist
während des Trainings keine Internetverbindung nötig.
werden. Dabei wird eine *.raf-Datei (RunningAssistant-File) erzeugt, welche
sämtliche Logs, Zwischenpunkte und die zugehörige Landkarte beinhaltet.
Diese Datei kann anschließend auf das Windows Mobile-Gerät übertragen
und als Referenzstrecke genutzt werden.
Abbildung 4.13 (a) zeigt die geöffnete RunningAssistant-Applikation auf
einem HTC Touch. Durch einen einfachen Klick (mittels Stift oder Finger)
auf das gelbe Ordnersymbol kann ein Referenzlauf geladen werden. Der GPSEmpfänger muss aktiviert sein, um durch einen Klick auf das Verbindungssymbol (blauer Satellit) eine Bluetooth-Verbindung mit dem Gerät herstellen
zu können. Das Programm zeigt zu diesem Zeitpunkt den Dateinamen der
geladenen Datei, die Länge der Referenzstrecke und die zurückzulegenden
Höhenmeter an. Zusätzlich wird dem Benutzer gezeigt, wie lange er für diese
Strecke bei der Aufzeichnung des Referenzlaufes benötigt hat und wieviele
GPS-Punkte dabei gespeichert wurden.
RunningAssistant ist ab diesem Zeitpunkt jederzeit bereit, das Training
Kapitel 4. GPSStation
54
zu starten. Durch Drücken des Weltkugel-Symbols wird die zugehörige Landkarte mit der importierten Wegstrecke geladen und angezeigt (siehe Abbildung 4.13 (b)). Der Benutzer kann die Landkarte mit einem Stift, oder bei
einem berührungsempfindlichen Display mit einem Finger in alle Richtungen verschieben, bis der gewünschte Kartenausschnitt angezeigt wird. Da das
Bild der Landkarte von GPSStation exportiert wurde, ist während des Trainings mit RunningAssistant keine Internetverbindung notwendig.
Wenn der Benutzer bereit ist, kann dieser die neue Trainingseinheit starten. Das Display zeigt dann die aktuelle Zwischenzeit, verglichen mit der
Zwischenzeit der Referenzstrecke an. Zudem wird der Benutzer informiert,
wieviele Meter er vor oder hinter seiner aufgezeichneten Wegstrecke liegt.
Diese Daten werden in einem vorbestimmten Zeitintervall (in der vorliegenden Implementierung zehn Sekunden) neu berechnet und angezeigt.
Wenn der Sportler bei der Aufzeichnung einen oder mehrere Zwischenzeitpunkte durch Drücken des Knopfes auf dem GPS-Logger aufgezeichnet
hat, erscheinen diese in der Landkartenansicht symbolisiert durch eine gelbe
Nadel. Sobald der Benutzer einen dieser Zwischenzeitpunkte passiert, wird
die aktuelle Zwischenzeit mittels Sprachausgabe wiedergegeben. Dies ermöglicht beispielsweise einem Langstreckenläufer das mobile Gerät in einer Tasche zu verstauen und trotzdem über die jeweilige Zwischenzeit informiert
zu werden.
Während der Trainingseinheit kann der Anwender jederzeit zwischen der
Hauptseite mit der aktuellen Zwischenzeit und der Landkarte wechseln. Die
Landkarte zeigt neben der Laufstrecke auch die aktuelle Position (grüner
Punkt) sowie die Position der Referenzaufzeichnung zum selben Zeitpunkt
(Ghosting). So weiß der Benutzer jederzeit, ob und wie weit er vor bzw.
hinter seinem letzten Trainingslauf liegt.
Aktiviert der Anwender vor dem Start des Trainings das Kontrollkästchen Save Run, so wird der aktuelle Lauf aufgezeichnet und kann später in
der GPSStation Desktop-Anwendung mit einem vorangegangenen Traingslauf verglichen werden. Diese Aufzeichnung kann für ein späteres Training
wieder in die RunningAssistant-Anwendung geladen und als Referenzstrecke
verwendet werden.
Kapitel 5
Zusammenfassung
Satellitengestützte Navigation hat in den letzten Jahren das Leben vieler Menschen erleichtert. Aufgrund der stetig fallenden Preises für GPSEmpfangsgeräte gilt es nicht mehr als Luxus, ein GPS-Gerät zu besitzen. Die
Qualität dieser Geräte steigt und mancherorts gibt es bereits die Möglichkeit
in Innenräumen zu navigieren (wenn auch mit Hilfe zusätzlicher Technologien).
Die Weiterentwicklung erfolgt nicht nur beim amerikanischen GPS, sondern auch bei seinen Mitbewerbern aus aller Welt, die sich ihre eigenen Satelliten ins Weltall schicken um exakt und unabhängig von den USA navigieren
zu können. So arbeitet die Europäische Union bereits seit Anfang der 90er
Jahre an einem eigenen, satellitengestützten Positionierungssystem, welches
sich leider immer wieder verzögert. Der aktuell geplante Starttermin ist im
Jahr 2013, wobei die Frage offen bleibt, ob die entwickelte Technologie bis
dahin nicht schon veraltet ist.
Neben klassischer Boden- und Luftraum-Navigation kann GPS auch in
zahlreichen anderen Disziplinen sinnvoll eingesetzt werden. Mit steigender
Genauigkeit wird GPS für die Vermessungstechnik immer interessanter. Das
Militär hat seit jeher eigene Anwendungen für deren hochgenaues Positionierungssystem. Ein weiterer großer Bereich für GPS-Anwendungen, der vor
allem in naher Zukunft immer weiter aufblühen wird, ist die Welt des Sports.
Marathonläufer, Langläufer und Radfahrer arbeiten teilweise schon mit GPSSystemen und aktuelle Entwicklungen lassen erahnen, dass dies in den nächsten Jahren ein stark wachsender Markt sein wird.
Seit einigen Jahren finden sich im Internet kostenlose Landkarten die
über klassische Webbrowser abrufbar sind. Das angebotene Kartenmaterial
reicht von klassischen Landkarten bis hin zu Luftbildern in mittlerweile sehr
hoher Qualität. Die größten Anbieter, Google, Microsoft und Yahoo! bieten
annähernd gleiche Qualität, wobei regional leichte Unterschiede zu erkennen sind. Die zur Verfügung stehenden Kartendaten können sehr einfach in
eigenen Webseiten eingebunden und für eigene Zwecke angepasst werden.
55
Kapitel 5. Zusammenfassung
56
Zahlreiche SDK’s ermöglichen den programmatischen Zugriff auf das
Kartenmaterial zur Navigation und Manipulation der visualisierten Daten.
Die Open-Source-Gemeinde arbeitet zurzeit an vektorisierten Kartendaten
für die neue Plattform OpenStreetMap, deren Benutzeranzahl ständig steigt.
GPSStation beschreibt die dieser Arbeit zugrunde liegende Applikation,
welche eine Sammlung verschiedener GPS-Anwendungen, verknüpft durch
eine interaktive Karte, darstellt. Dabei ist es möglich, digitale Bilder und
Fotos mit GPS-Informationen zu versehen. Diese können in einem entwickelten Teilprogramm von GPSStation angezeigt und die zugehörige Position in
die interaktive Landkarte geladen werden.
Um Sportler bei deren Wettkämpfen und Trainingseinheiten zu unterstützen, wurde eine Möglichkeit geschaffen, zurückgelegte Strecken zu analysieren und zu vergleichen. Die Strecken werden dabei in der Karte angezeigt und das Höhen- und Geschwindigkeitsprofil jeweils in einem Graphen
visualisiert. Werden diese Daten exportiert, so kann der Benutzer einen Referenzlauf in der zugehörigen Windows Mobile-Applikation RunningAssistant
laden. So sieht der Anwender zu jedem Zeitpunkt während seines Trainigs
eine Echtzeit-Zwischenzeit, die Auskunft über den aktuellen Trainingsfortschritt liefert.
Objekte und Personen können mit der Subanwendung WhereWasMyHusband observiert werden. Dabei werden Aufenthaltsorte und die getätigte
Wegstrecke berechnet und in die korrespondierende Karte geladen.
5.1
Resümee
Die entwickelte Applikation GPSStation wurde mit Windows Presentation
Foundation und C# 3.5 implementiert, was sich im Nachhinein als gute Entscheidung herausstellte. Speziell für prototypische Anwendungen und nicht
zeitkritische Applikationen eignet sich die Kombination dieser beiden Technologien, um schnell zu einem guten Ergebnis zu gelangen. Die Entwicklungszeit war mit knapp drei Monaten sehr kurz, zumal die Einarbeitungszeit in
diese Technologie dabei bereits eingerechnet ist.
Speziell die neuen Konzepte aus WPF wie etwa DataBinding und DataTemplates erleichtern einem Programmierer das Leben enorm. Strikte Trennung zwischen logischer Implementierung und graphischer Repräsentation
erlauben das nachträgliche Anpassen des Designs ohne eine Zeile Code verändern zu müssen.
Die Applikation war ursprünglich in einem etwas kleineren Umfang geplant, wurde allerdings nach anfänglichen Erfolgen um zusätzliche Anwendungen erweitert. Dank der Applikationsstruktur ist es im Nachhinein leicht
möglich, neue Subapplikationen in die Anwendung zu integrieren.
Eine der Hauptschwierigkeiten war die Kommunikation mit dem GPSLogger über das PMTK -Protokoll, da das Protokoll von offizieller Seite nicht
Kapitel 5. Zusammenfassung
57
offengelegt ist. Zahlreiche Programmierer haben das Protokoll mittlerweile
nahezu vollständig entschlüsselt (siehe Anhang A.6).
5.2
Erweiterungsmöglichkeiten
Im Rahmen eines Semesterprojektes lassen sich, aus Zeit und Kostengründen, nicht alle Ideen sofort umsetzen. Der modulare Aufbau von GPSStation
ermöglicht durch seine bestehende Applikationsarchitektur ein einfaches Erweitern um neue Subanwendungen. Es existieren bereits einige Ideen wie
die vorgestellte Applikation erweitert und verbessert werden könnte. Diese
werden in den folgenden Abschnitten vorgestellt und näher erläutert.
5.2.1
Laufzeithochrechnung nach Roger Kaufmann
Für die mobile Applikation RunningAssistant wäre es interessant, während
des Trainings bzw. Wettkampfes die ungefähre Gesamtzeit hochzurechnen.
Dazu würde sich die vom Schweizer Mathematiker Roger Kaufmann (ETH
Zürich) entwickelte Formel zur Laufzeithochrechnung anbieten. Dabei gibt
der Benutzer zwei Strecken als Refernzläufe an (eine kürzere und eine längere) und kann sich so für Strecken von einem Kilometer bis zur klassischen
Marathondistanz (42,195 km) seine Zeiten hochrechnen lassen.
Die verwendete Formel lautet wie folgt:
t = c ∗ dk
t steht für die hochgerechnete Zeit nach einer Distanz von d. Die Faktoren c und k bezeichnet Kaufmann als Läufer-spezifische Parameter, die
aus den angegebenen Strecken und zugehörigen Zeiten hochgerechnet wird.
Dabei gibt die Variable c die Grundgeschwindigkeit und der Faktor k die
Standfestigkeit des Läufers an. Diese Formel, an der schon seit Anfang der
90er Jahre geforscht wird, errechnet die endgültige Laufzeit vor allem für
trainierte Läufer sehr exakt. Eine erweiterte Formel erlaubt auch die Berücksichtigung von Höhendaten, die natürlich Einfluss auf die Gesamtzeit
haben. Genauere Information zu dieser Formel sowie ein Online-Formular
zur Berechnung finden sich auf der Homepage des Mathematikers1 .
5.2.2
Anbindung von GPS-Sendegeräten
Eine weitere Erweiterungsmöglichkeit für GPSStation wäre eine Anbindung
von GPS-Sendegeräten, die ständig aktuelle Daten über den Aufenthaltsort
dieser geben. So könnte beispielsweise ein Trainer seine Sportler während
des Trainings über GPSStation beobachten und gegebenenfalls Tipps zur
Optimierung geben. Leider sind GPS-Sendegeräte noch relative teuer und
1
http://www.rogerkaufmann.ch
Kapitel 5. Zusammenfassung
58
mit regelmäßigen Gebühren verbunden, da für das Abfragen von GPS-Daten
eines Sendegerätes Satellitengebühren zu zahlen sind.
5.2.3
Pulsmessgeräte
Speziell für die Auswertung von Daten im LogAnalyzer könnte die Anbindung und Synchronisierung mit Daten von Pulsmessgeräten interessant sein.
So zeigt sich etwa, wie stark die Pulsfrequenz eines Sportlers ansteigt, wenn
dieser einen Anstieg bewältigt. Pulsmessgeräte die Daten aufzeichnen und
an einen Computer überspielen können sind mittlerweile kostengünstig erhältlich.
5.2.4
Editiermöglichkeit für GPS-Informationen in Bildern
Zurzeit unterstützt GPSStation nur das Speichern und Auslesen von GPSKoordinaten aus den Metadaten von Bildern. Eine hilfreiche Ergänzung wäre
das Anbieten einer Editierfunktion dieser GPS-Daten. Wenn beispielsweise
die Uhrzeit der verwendeten Digitalkamera um ein paar Minuten falsch eingestellt ist, können die GPS-Logdaten nicht exakt zugeordnet werden. So wäre
es beispielsweise denkbar, dass der Benutzer für ein bestimmtes Bild durch
Positionsbestimmung in der interaktiven Landkarte die GPS-Koordinaten
für ein Bild manuell setzen und verändern kann.
Anhang A
Inhalt der CD-ROM
File System: Joliet
Mode: Single-Session
A.1
Masterarbeit
Pfad: /thesis
Masterarbeit_Michael_Hurnaus.pdf Masterarbeit
A.2
Quellcode
Pfad: /source
GPSStation/ . . . . . .
RunningAssistant/ . . .
A.3
Quellcode der Desktop Anwendung
GPSStation
Quellecode der Windows Mobile Applikation
RunningAssistant
Bibliotheken
Pfad: /dependencies
GeoTagLib.dll . . . . . .
GPSLoggerReader.dll . .
A.4
Assembly zum Geotaggen von Bildern
Assembly zum Lesen von GPS-Logdaten
eines GPS-Loggers
Ausführbare Dateien
Pfad: /Binary
GPSStation/GPSStation.exe GPSStation Anwendung
59
Anhang A. Inhalt der CD-ROM
60
RunningAssistant/RunningAssistant.exe RunningAssistant Anwendung
A.5
Demo-Dateien
Pfad: /DemoFiles
GPSLogs/ . . . . . . . .
GeoTaggedImages/ . . .
UntaggedImages/ . . .
A.6
Verschiedene GPS-Logs im *.csv-Format
Bilder mit eingebetteter GPS-Information
Bilder ohne eingebettete GPS-Information
Dokumentation
Pfad: /Documentation
MTK_commands.pdf .
MTK_LogFormat.pdf .
MTK -Kommandos für GPS-Geräte
Spezifizierung eines Logeintrags am
GPS-Logger
PMTK182_commands.pdf MTK -Kommandos spezifisch für
GPS-Logger
A.7
Referenzen
Pfad: /References
/ . . . . . . . . . . . . .
Referenzierte Webartikel im *.pdf-Format
Literaturverzeichnis
[1] Arms Control Association: Missile Technology Control Regime,
Jan. 1993. http://www.armscontrol.org/documents/mtcr.asp.
[2] Egger, Ettl, Guggenberger und Lexe: Vermessungskunde. Veritas, Linz, Austria, 1997.
[3] Höfler, K.: Microsoft-Entwicklung in Graz: Konkurrenz zu Google
Earth. Die Presse, 23. Mai 2007.
[4] Jagoe, A.: Mobile Location Services – The Definitve Guide. Pearson
Education, 2003.
[5] Kolodziej, K. W. und J. Hjelm: Local Positioning Systems – LBS
Applications and Services. CRC Press, 2006.
[6] Küpper, A.: Location-based Services – Fundamentals and Operation.
John Wiley & Sons Ltd, West Sussex, England, 2005.
[7] Lee, W. M.: Practical .NET 2 Net Projects. Apress, Birmingham,
England, 2007.
[8] Leick, A.: GPS Satellite Surveying. John Wiley & Sons Inc, Hoboken,
New Jersey, 3. Aufl., 2004.
[9] Mansfeld, W.: Satellitenortung und Navigation – Grundlagen und
Anwendung globaler Satellitennavigationssysteme. Vieweg Verlag, Wiesbaden, Deutschland, 2. Aufl., 2004.
[10] Nash, T.: Accelerated C# 2005 . Springer-Verlag New York, 2006.
[11] Nathan, A.: Windows Presentation Foundation Unleashed. Sams Publishing, 2007.
[12] Novosti, R.: Putin makes Glonass navigation system free for customers. http://en.rian.ru/science/20070518/65725503.html, 2007.
[13] Online, H.: Russland bringt sich bei Galileo ins Spiel.
http:
//www.heise.de/newsticker/Russland-bringt-sich-bei-Galileo-ins-Spiel--/
meldung/89899, Mai 2007.
61
LITERATURVERZEICHNIS
62
[14] Ramm, F. und J. Topf: OpenStreetMap - Die freie Weltkarte nutzen
und mitgestalten. Lehmanns Media Berlin, 2008.
[15] Shankland, S.: Google mapping spec now an industry standard . http:
//www.news.com/8301-10784_3-9917421-7.html, Apr. 2008.
[16] Winter, M.-A.: A-GPS soll Navigations- und Ortungsdienste erleichtern. http://www.teltarif.de/arch/2005/kw16/s16847.html, März 2005.
Messbox zur Druckkontrolle
— Druckgröße kontrollieren! —
Breite = 100 mm
Höhe = 50 mm
— Diese Seite nach dem Druck entfernen! —
63