Als Vorbereitung auf die WAVE Austria 2018, „The world’s largest electric vehicle rally“, wollte ich gerne die besten offline Karten auf meinem Android Telefon und wenn möglich auch auf dem Tablet installieren. Da ich seit vielen Jahren für das OpenStreetMap Projekt karthographiere war klar, das es eine OpenStreetMap basierte Lösung sein musste. So entschied ich mich für OsmAnd. OpenStreetMap für Android, eine freie Offline mobile maps & navigation Lösung.
Meine Erkenntnisse aus diesem Projekt gab es als Vortrag auf Norddeutschlands größtem E-Mobil-Treffen. Gerne leite ich auch ein WorkShop bei Euch zum Thema.
Bei der ersten Benutzung bin ich durch die Suchmaschine meiner Wahl auf eine Datei gestoßen, die es ermöglicht das Routing an seine eigenen Bedürfnisse anzupassen. Lobenswerter Weise hat am 23. Juli 2018 ein Entwickler einen langen Kommentar hinzugefügt, den ich gelesen und sehr interessant fand. Das Erste was mir aufgefallen ist war die erste Zeile des routingProfiles mit dem Namen „car“ (Auto), dort steht maxDefaultSpeed=“130.0″. Mmmmh, was wohl für Routen berechnet werden wenn ich dort sagen wir mal 97km/h als Höchstgeschwindigkeit eintrage?
Später, als ich schon ganz viele Modifikationen an der Datei vorgenommen hatte wurde mein Augenmerk auf die Möglichkeit gelenkt Live Traffic Daten von google über die offline Karten von OpenStreetMap zu blenden. Rund um das VW Werk bei uns in Baunatal sieht eine google Live Traffic Kachel z.B. so aus:
Die Vorschau
So, jetzt wird es schwierig für mich, ich hoffe mir gelingt der Spagat. Einerseits möchte ich dem Laien eine einfache Möglichkeit bieten meine Lösung nachzuvollziehen, andererseits möchte ich dem Profi die Details nicht vorenthalten. Evtl. ist ja eine gute Idee für Routing 2.0 dabei. Anfangen möchte ich mit den Ergebnissen, Bilder sagen mehr als tausend Worte. Dann könnt Ihr entscheiden ob Ihr ca. 1 Stunde investieren wollt, oder ob Ihr es lasst.
Warum OpenStreetMap + google Life Traffic? Beides ist kostenlos und auch für das hinterste Ende der Welt verfügbar, OsmAnd sogar offline.
E-Fahrzeug konformes routing mittels angepassten Regeln unter Berücksichtigung der individuellen Reisegeschwindigkeit und des Strecken-Höhenprofiles. Im Bild: Routing zum Rastplatz Großenmoor. Man beachte die Autobahn Umfahrung bei Kirchheim, (Hessen, Deutschland, A7) wegen der Berge.
Routing um Metropolen herum durch angepasste Fahrzeiten für Ampeln, Kreisel und Abbiegevorgänge.
Alternatives Routing ohne OsmAnd
Für diejenigen denen das hier schon jetzt alles viel zu technisch ist, oder die ein E-routing suchen welches die Stromtankstellen berücksichtigt empfehle ich die Web Seite von Michael. Ein wirklich überragendes Projekt:
http://krasm.de/ElectricPathfinder/
Alle anderen dürfen gerne weiterlesen.
Installation modifiziertes Routing
- Dauer: wenige Minuten
- Vorraussetzung: File-Manager zum Übertragen der modifizierten Datei
- Schwierigkeitsgrad: mittel
Man muss eine von mir modifizierte Datei an einer bestimmten Stelle seines Android Gerätes speichern, das ist alles. Hört sich leicht an, ist es aber nicht unbedingt.
Die original Datei mit allen Erklärungen findet Ihr zum Ansehen hier: (routing.xml original).
- Ladet Euch meine modifizierte Datei 10.09.2018-routing.zip herunter und entpackt diese.
(Mir ist es aus Sicherheitsgründen nicht gelungen die ungepackte Datei routing.xml hier einzustellen. Ich bitte das vielmals zu entschuldigen.)
- Kopiert die Datei routing.xml in das Verzeichnis wo OsmAnd seine Karten speichert. Das Verzeichnis heißt üblicherweise:
„Android/data/net.osmand.plus/files/“ oder
„Android/data/net.osmand/files/“
je nach Version von osmand und befindet sich auf der SD-Karte. - Wenn Ihr nach dem Start von osmand bei den Navigationseinstellungen des Autos den Menüpunkt: „Höhendaten berücksichtigen“ seht, war die Installation erfolgreich.
Nachteile meiner Lösung: Bei aktivierten Höhenprofil braucht die Routing Engine mehr Rechenleistung. Ich habe es schon erlebt, das eine ca. 100km lange Strecke nicht oder nur sehr langsam berechnet werden konnte, das sollte aber die Ausnahme sein.
Installation google Live Traffic
- Dauer: wenige Minuten
- Schwierigkeitsgrad: schwierig
Man muss in OsmAnd eine overlay Karte definieren und diese aktivieren. Im Rahmen eines Workshops ist das vermutlich einfach. Zu Hause ohne menschliche Anleitung könnte das für ungeübte schwierig bis unmöglich werden, zumal in der Englisch sprachigen Anleitung ein Fehler in der URL ist. Um Tipp Arbeit zu sparen kopiert Euch bitte folgendes korrigiertes URL Template
http://mts0.google.com/vt/lyrs=s,traffic&x={1}&y={2}&z={0}&style=5
auf eurem Android Gerät und öffnet Euch die unten Verlinkten Anleitungen beide auf einem PC. Ihr könnt die URL dann einfach einfügen und müsst diese nicht tippen.
- Englische Text Anleitung: https://gfist.com/index.php/blog/37-osmand-google-traffic
- Video Anleitung ohne Sprache:
- Wenn Ihr eine Internetverbindung habt, sollten jetzt die Kacheln geladen werden. Achtung: Es gibt einen Schieber für die Transparenz der Kacheln. Steht dieser auf NULL seht Ihr die Kacheln nicht obwohl alles funktioniert.
Eigene POIs einbinden
Eigene Point Of Interest (Favoriten) einbinden geht sehr einfach.
Gefahrenhinweis: Ohne Spezialentnisse kriegt Ihr die mit der folgenden Methode eingebundenen Favoriten nicht wieder raus, es sein denn Ihr deinstalliert osmand und installiert es neu.
Wer Mitglied im http://drehstromnetz.de ist und über die .gpx Daten dieses privaten Netzwerkes verfügt kann diese oder jede andere .gpx Datei einbinden, also zum Beispiel auch alle von goingelectric.de exportierten Daten.
Und so gehts: beliebige .gpx Datei umbenennen in favourites.gpx und ab ins Kartenverzeichnis von osmand. Das wars, nun können beim Menüpunkt „Karte konfigurieren“ die Favoriten eingeblendet werden.
Details zum modifizierten Routing
Der Laie kann hier aufhören zu lesen, jetzt wirds technisch
(more to come)
Hallo,
meine Tochter hat sich jetzt einen E Roller gekauft und bei denen mit 45 km/h darf man die Kraftfahrtstraßen ja nicht nutzen. Gibt es da eine Möglichkeit das in der Routing.xml einzutragen diese zu meiden? Hatte schon einen Anleitung im Internet gefunden aus der ich leider nicht schlau werde. Für eine kleine Anleitung oder einen Tipp wo ich mich schlau machen könnte die Routing.xml zu verstehen wäre ich Dir sehr dankbar.
MfG Stefan
Hallo Stefan,
die Höchstgeschwindigkeit kannst Du in der ersten Zeile des car Profils eintragen. In meiner bereitgestellten Datei steht dort 97 km/h. Dort einfach auf 45 km/h ändern. Die Anleitung nach der ich gearbeitet habe ist im Artikel verlinkt (suche bitte nach „langen Kommentar“). Ich würde in den Routing Optionen einen Hacken bei „Autobahnen meiden“ setzen, falls das nicht reicht müsstest Du die entsprechende Stelle in der routing.xml suchen und die nächst niedrigere Straßen Klasse ebenfalls sperren. Dies wird erreicht indem man bei dem entsprechenden Straßentyp dem attribute=“access“ den Wert „-1“ zuweist. Da müsstest Du dich selber durchfuchsen.
Hallo Vale,
danke für die Antwort. Habe deine routing.xml von dir runter geladen und den maxspeed Wert im car Profil auf 45km/h angepasst. Leider wird das aber nicht berücksichtigt, da die Zeitdauer die gleiche wie vorher ohne routing.xml ist. Sie scheint aber verarbeitet zu werden, da mir die Auswahlbox Höhendaten berücksichtigen angezeigt wird.
Ich benutze OsmAnd in der Version 3.1.5
Gruß Stefan
Hallo Stefan,
die Zeitdauer die Du als Reisezeit dargestellt bekommst berechnet sich intern anders als die Zeit die zum Routing verwendet wird. In der Datei routing.xml heißen die Sektionen „obstacle“ (intern zur Routenberechnung) bzw. „obstacle_time“ (zur Berechnung der dargestellten Reisezeit). Warum das so gemacht wurde kann ich Dir nicht sagen, ich kenne den Quellcode von osmand nicht. In meinem jugendlichen Leichtsinn habe ich versucht beide Sektionen gleich zu halten, das Resultat kennst Du. Die geschätzte Reisezeit stimmt nicht. Hier könnte man nochmal fein tunen.
Die für das routing relevante Zeit wird Dir unmittelbar nach der Berechnung für die Dauer von ca. 2 Sekunden am unteren Bildschirm angezeigt, wenn Du die Erweiterung „OsmAnd-Entwicklung“ aktiviert hast.
P.S.: Meiner bescheidenen Meinung nach wird es höchste Zeit für ein Routing 2.0. Mit dem bestehenden System kommt man immer öfter an Grenzen. Leider kann ich das im Rahmen dieser Anwort nicht ausführen, dafür bedarf es mindestens eines eigenen Blogs. Außerdem meine ich zwischen den Zeilen gelesen zu haben, das daran bereits gearbeitet wird.