Open Source im professionellen Einsatz

Newsletter abonnieren
Seite durchsuchen

HEFTARCHIV | NEWS | E-BIBLIOTHEK | VIDEO | BLOGS | WHITEPAPER | EVENTS | ACADEMY | ABO | SHOP

user friendly

  Home  »  Heft & Abo  »  Heftarchiv  »  2010  »  06  »  Alle Wege offen  

RSS-Feed der aktuellen News von Linux-Magazin Online Folgen Sie Linux-Magazin Online auf Twitter
Diesen Artikel druckenDiesen Artikel weiterempfehlen Diesen Artikel kommentieren Newsletter abonnieren
Share/Bookmark

Openstreetmap-Daten auf GPS-Geräten von Garmin

Alle Wege offen

von Christoph Wagner
Erschienen im Linux-Magazin 2010/06

Besitzer von Garmin-GPS-Geräten müssen nicht unbedingt teure Karten kaufen: Die Daten von Openstreetmap werden zunehmend detaillierter und sind kommerziellen Kartendaten schon vielerorts überlegen. Dieser Artikel zeigt, wie die Open-Source-Karten dank freier Software aufs Gerät kommen.


Abbildung 1: Mit Daten von Openstreetmap und ein paar Linux-Tools kommt der Garmin-Besitzer kostenlos zu Karten.

Besitzer von Garmin-GPS-Geräten haben meist gut lachen: Die Geräte sind robust, besitzen eine lange Akkulaufzeit und eignen sich gut für die Outdoor-Navigation. Doch wer auf neueren Geräten auch digitale Karten zur Orientierung einsetzen will, dem treibt oft der Preis Tränen in die Augen. Glücklicherweise bietet das Projekt Openstreetmap freie Daten sowie Werkzeuge [1], um die freien Open-Source-Karten legal und kostenlos auf den eigenen Garmin zu bringen.

Wem die angebotenen vorkonvertierten Garmin-Karten [2] für seine Zwecke reichen, der lädt nur die gewünschte Karte herunter und kopiert das fertige Garmin-Kartenimage »gmapsupp.img« in ein Verzeichnis namens »Garmin« auf die SD-Karte seines Geräts. Die angebotenen Karten unterscheiden sich in Abdeckung, Darstellung und weiteren Details.

Falls für einen gewünschten Bereich keine fertigen Garmin-Karten zur Verfügung stehen, kann der Anwender selbst Hand anlegen und die Openstreetmap-Daten nach eigenen Vorstellungen konvertieren. Er benötigt dafür zunächst einen Ausschnitt der XML-Rohdaten von Openstreetmap. Der lässt sich über den »Export«-Tab auf [http://openstreetmap.org] exportieren oder als Auszug aus dem Planetfile bei der Geofabrik GmbH [3] herunterladen. Empfehlenswert ist zunächst das Testen von nur kleineren Bereichen.

Zum Konvertieren der Daten aus Openstreetmap auf eine Garmin-Karte dient das Java-Programm Mkgmap [4]. Es ist unter der GPL lizenziert, setzt Java 6 voraus und bietet viele Möglichkeiten, das Ergebnis zu beeinflussen. Grundsätzlich organisieren Stylefiles, die Regeln für Punkte, Linien, Flächen und Relationen enthalten, die Zuordnung von Openstreetmap-Objekten zu Garmin-Objektcodes. Für erste gute Ergebnisse reicht der Default-Style, der bereits in das Programm einkompiliert ist.

Karten maßgeschneidert

Außerdem lässt sich der Kartenbau durch viele Kommandozeilenoptionen von Mkgmap beeinflussen. Einen schnellen Überblick über die Möglichkeiten verschafft ein einfacher Aufruf des Programms mit »java -jar mkgmap.jar«. Kleinere Datenausschnitte lassen sich so konvertieren:

java -ea -jar mkgmap.jar --route --gmapsupp map.osm

Die Option »--route« sorgt dafür, dass das Programm die Karte mit Routinginformationen wie Einbahnstraßen, Zugangs- und Abbiegebeschränkungen, Höchstgeschwindigkeiten, Oberflächenbeschaffenheit und natürlich mit dem notwendigen topologischen Routingnetz anreichert. Obwohl sich die Routingfunktionalität in letzter Zeit dank Reverse Engineering stark verbessert hat, ist immer noch nicht das komplette Garmin-Kartenformat bekannt, Fehler bei der Routenberechnung können daher auftreten.

Wer an der Küste wohnt, kann mit der Option »--generate-sea« versuchen Polygone zur Darstellung des Ozeans zu erzeugen. Eine weitere nützliche Option ist »--add-pois-to-areas«, die flächig erfasste Objekte in Openstreetmap wie Geschäfte, Tankstellen und Ähnliches zusätzlich in ein Punktobjekt konvertiert, das sich über das »Find«-Menü von Garmin suchen lässt (Abbildungen 1 und 2).


Abbildung 2: Points of Interest lassen sich im »Find«-Menü suchen.


Abbildung 3: So sieht der nächste Blumenladen auf Garmin-Geräten aus.

Stückchenweise

Wer größere Datenmengen in eine Garmin-Karte verwandeln möchte, lernt schnell die Grenzen des GPS-Geräts kennen: Es passen nicht beliebig viele Daten in eine Garmin-Kachel. Die Openstreetmap-Daten müssen also vorher in mehrere rechteckige Kacheln aufgeteilt werden. Die ebenfalls in Java geschriebene freie Software Tilesplitter [5] übernimmt diese Aufgabe und kann dabei je nach der Datendichte in Openstreetmap die Kachelgröße anpassen.

Die entstandenen komprimierten Kacheln lassen sich anschließend mit Mkgmap in Garmin-Kacheln übersetzen und zu einer fertigen Garmin-Karte zusammenfassen. Es ist viel Hauptspeicher erforderlich, um große Datenmengen wie beispielsweise die Europakarte zu verarbeiten.


Abbildung 4: Europa in Kacheln aufgeteilt. Die gewählte Kachelgröße ist von der Datendichte im jeweiligen Ausschnitt abhängig.

Da der Splitter die Eingabedaten oft in mehreren Durchläufen liest, ist es lohnenswert, mit der »--cache«-Option einen Cache auf der Festplatte anzulegen. Die Option »--max-nodes« bestimmt, wie viele Nodes in einer Kachel maximal vorkommen dürfen:

java -Xmx6000M -jar splitter.jar --max-nodes=1500000 --cache=./cache europe.osm.bz2

Die genaue Grenze ist nicht bekannt, ein zu hoher Wert lässt sich leider erst bei einem Mkgmap-Durchlauf feststellen. Da auf einigen Geräten und Firmware-Versionen die Gesamtzahl der Kacheln beschränkt ist und außerdem an Kachelübergängen häufig Routingprobleme auftreten können, sollte man trotzdem einen möglichst hohen Wert für »--max-nodes« einstellen und so die Anzahl der Kacheln klein halten.

Nach einem Splitter-Durchlauf befinden sich in der Datei »areas.list« die Koordinaten der Kacheln. Es ist möglich, diese Datei per Hand zu optimieren und sie dem Splitter das nächste Mal mit »--split-file« als Splitmuster vorzugeben. Die Kacheln müssen dann nicht mehr automatisch berechnet werden, was Rechenzeit spart. Weitere interessante Funktionen von Splitter sind im Internet gut (in Englisch) dokumentiert [6].

Um den beschränkten Garmin-Standardlook optisch aufzuwerten, lassen sich so genannte Typfiles einsetzen. Diese definieren die Darstellung von Garmin-Objekten auf den Geräten. Somit ist es möglich, mit einem eigenen Mkgmap-Stylefile Openstreetmap-Objekte auf ungenutzte Garmin-Codes abzubilden und diesen mit Hilfe eines Typfile ein sinnvolles Symbol zuzuordnen. Zum Editieren von Typfiles gibt es einen Open-Source-Online-Editor [7], der relativ selbsterklärend ist.

Sie können diesen Artikel als PDF für 99 Cent kaufen. Klicken Sie dazu einfach auf eine der beiden Bezahloptionen Paypal oder ClickandBuy.


Diesen Artikel druckenDiesen Artikel weiterempfehlen Diesen Artikel kommentieren Newsletter abonnieren
Share/Bookmark
Ähnliche Artikel
Tragendes Rahmenwerk PHP-Anwendungsentwicklung mit Prado
Umbaumaßnahme Überblick: Die neuen Frameworks in KDE 4
Handlanger aus der Cloud Cloudservices für Schnellentschlossene
Sympathischer Vorleser Workshop: Programmieren mit dem Asterisk Gateway Interface
Bewölkte Fenster Cloud Computing für den Desktop
Film ab für Flash Praxisbetrieb, Encoding und Streaming von Flash-Videos unter Linux
Whitepaper
Open Source Datenintegration in der Praxis: Fallstudien und Anwendungsbeispiele

Über die letzten Jahre hinweg haben sich Open Source Lösungen als fester Bestandteil des gesamten Datenintegrationsmarktes etabliert. Viele Unternehmen haben bereits das Open Source Modell für Ihre Datenintegrationsprojekte aufgegriffen. Das vorliegende White Paper illustriert anhand ausgewählter Fallstudien und Anwendungsbeispiele die Implementierung von Open Source Datenintegration in der Praxis und benennt die daraus resultierenden Vorteile.

Download PDF (Registrierung erforderlich)
The Role of Open Source in Data Integration

Obwohl in den letzten Jahren viele technische Fortschritte erzielt werden konnten, verfügen die meisten Datenintegrationsprozesse nach wie vor nur über eine sehr begrenzte Automatisierung. Das vorliegende White Paper von dem Industry Analyst Mark Madson wird zunächst ein grundlegendes Verständnis von Daten Integration vermitteln, die Vorzüge von Open Source Lösungen für Daten Integration erläutern und Ihnen professionelle Empfehlungen geben, damit Sie Ihre Integrationsjobs noch einfacher und produktiver gestalten können.

Download PDF (Registrierung erforderlich)
Kommentare (0)