
Abbildung 1: Das Open-Source-Flottenmanagement Open GTS zeigt: Der Firmenwagen ist von Sacramento nach San Francisco und zurück gefahren. Die Farbe der Marker gibt Aufschluss über seine Geschwindigkeit.
Ein GPS-Tracker, ein Webserver und Open GTS das reicht, um Bewegungen einer Fahrzeugflotte oder eines Haustieres zu erfassen. Entwickler Martin Flynn stellt dem Linux-Magazin die Software vor .
Gerade mal zwei Jahre alt ist Open GTS, das Open-Source GTS Tracking System [1], doch in seiner Branche hat es sich bereits als feste Größe etabliert. Mit der Open-Source-Alternative zu proprietären Flottenmanagement-Systemen überwachen mittlerweile Anwender in über 70 Ländern PKWs, LKWs, Anhänger, Busse, Taxis, Schiffe oder den Standort von Personen und Haustieren.
Accounts und ACLs
Open GTS ist flexibel konfigurierbar und integriert zahlreiche Features. Neben einem auf CSS basierendem, individualisierbaren Webinterface bringt es ein Benutzermanagement mit, in dem Admins Benutzer, Accounts, Fahrzeuggruppen und Fahrzeuge fast beliebig kombinieren dürfen. Zugriffsrechte kann es mit Access Control Lists fein granuliert einstellen.
GIS-Anwender freuen sich über Geofencing, Geozones und reverse Geocoding – Techniken, mit denen Open GTS Polygonen in einer Kartendarstellung Adressen zuordnet. Als Kartenlieferanten dienen Openstreetmap [2], Openlayers [3] oder der Geoserver [4]. Prinzipiell lassen sich auch die APIs beliebiger Geodatendienste wie Google Maps integrieren.
Für den Input an eigenen Daten sorgen alle gängigen GPS-Geräte, die Tracking beherrschen, also die berechneten Messdaten wie Position, Geschwindigkeit und Uhrzeit speichern. Übers Internet oder Mobilfunk gelangen deren Daten live an den Server. Der ist für die Auswertung gerüstet und bringt umfassende Reportfunktionen mit.
Das freie Open GTS gibts unter der Apache Lizenz 2.0 als Zip-Archiv zum Download. Die kommerzielle EnterpriseVersion mit Support der kalifornischen Firma Geotelematics [5] bringt erweiterte GIS-Funktionen, mehr Reporting und Messaging mit. In der Zip-Datei der freien Variante findet sich für den Einsteiger das File »OpenGTS_Config.pdf« mit einer Schritt-für-Schritt-Anleitung zur Installation auf allen möglichen Linux-Distributionen.
Track.war
Open GTS ist komplett in Java implementiert und setzt daher ein paar erfüllte Abhängigkeiten voraus: Eine aktuelle JRE von Sun, Apache Ant und Tomcat sowie die MySQL-JDBC-Treiber müssen sein.
Der Installationsvorgang umfasst das Kompilieren der Quellen, die Initialisierung der Datenbank und das Kopieren der mitgelieferten Beispieldaten. Der Installer hinterlässt Open GTS normalerweise in »/usr/local« und baut gleich das entsprechende Servlet namens »track.war« mit. Jetzt kann sich der Benutzer bereits einloggen und einen ersten Blick auf die Features werfen. Wer nicht so viel Geduld hat, schaut sich die Online-Demo an [6].
Auch die Login-Seite und das Hauptmenü sind frei konfigurierbar. Standardmäßig erscheinen hier nur die Eingabefelder »Account«, »User« und »Passwort«, aber anpassbare CSS-Dateien finden sich im Verzeichnis »war/track«. Nach der Anmeldung erscheint das Hauptmenü mit mehreren Textlinks, wo der Benutzer zwischen Mapping, Reporting und Administration auswählt.
Wer die Demodaten installiert hat, kann jetzt erste Erfahrungen mit seinem Open GTS sammeln. Als Client reicht dafür jeder Browser, der Javascript kann. Das ist nötig, um die einzelnen Kartenquadrate vom Map-Provider zusammenbauen und interaktiv präsentieren zu lassen. Im Bereich »Mapping« geben die Demodaten einen Eindruck von der so genannten Brotkrumenansicht (Breadcrumb View) aus Abbildung 1.

Abbildung 1: Das Open-Source-Flottenmanagement Open GTS zeigt: Der Firmenwagen ist von Sacramento nach San Francisco und zurück gefahren. Die Farbe der Marker gibt Aufschluss über seine Geschwindigkeit.
Brotkrumen
Diese zeigt neben den Positionsmarkern, die Pinnwandnägeln nachempfunden sind, den Ort, die Fahrtrichtung, Geschwindigkeit und Uhrzeit eines GPS-Signals an. Rote Farbe steht dabei für Signale stehender, gelb für sich langsam bewegende Objekte, grün für Fahrzeuge, die schneller als 24 Kilometer pro Stunde unterwegs sind.
In der Menüleiste oben rechts erscheint der Zeitpunkt des letzten erhaltenen GPS-Events, ein Klick auf die Schaltfläche »Update« frischt die Ansicht mit den aktuellsten Daten auf. In einem Kalender kann der Benutzer Zeiträume auswählen, mit »Replay« vollzieht er gewählte Tracks im Detail nach. Automatische Up- dates der GPS-Signale sind möglich, in der Open-GTS-Standardeinstellung aber deaktiviert.
Die »Vehicle Group Map« aus dem Hauptmenü zeigt die letzten bekannten Positionen aller dem aktuell eingeloggten User zugeordneten Fahrzeuge an. In Abbildung 2 sind die beiden Autos des Demo- Accounts in Kalifornien unterwegs, einer im Süden Stocktons, einer in San Francisco. Auch die für die Fahrzeuge verwendeten Marker sind weitgehend frei konfigurierbar, Open GTS bringt dafür eigene Vorlagen mit.

Abbildung 2: Wo sind die beiden Firmenwagen gerade? In den Demodaten von Open GTS sind zwei Beispielfahrzeuge zu einer Fahrzeuggruppe kombiniert und dem Demoaccount zugeordnet.
Reporting
Die eingebaute Reporting Engine ist einfach strukturiert, aber flexibel. Vordefinierte Reports bieten Ereignislisten mit Details über Fahrten oder zusammenfassende Berichte. Darüber hinaus lassen sich eigene Reports bauen und die typischen GPS-Daten auswerten. Abbildung 3 zeigt eine Liste mit den Start-, Stopp-, Fahr- und Standzeiten eines Lieferwagens auf seiner morgendlichen Tour.

Abbildung 3: Ein typischer Report von Open GTS zeigt den Tagesablauf eines Lieferwagenfahrers im Zeitraffer: Anderthalb Stunden Fahrt, eine Viertelstunde ausladen, 30 Minuten Fahrt… Dank Reverse Geocoding löst Open GTS die vom GPS-Gerät gelieferten Koordinaten in Adressen auf und berechnet Strecken und Fahrtzeiten.
Im Bereich »Administration« des Webinterfaces stehen Tools zur Benutzer-, Gruppen und Account-Verwaltung zur Verfügung, ebenso lassen sich hier Fahrzeugdaten, Geozonen und deren Attribute anlegen und ändern. Abbildung 4 zeigt als Beispiel ein markiertes, rundes Gebiet in einer lateinamerikanischen Großstadt. Auch hier kommt Reverse Geocoding zum Einsatz, um der Zone eine oder mehrere Adressen zuzuordnen.

Abbildung 4: So genannte Geozonen oder Geofenced Areas dienen dazu, um zum Beispiel Ankunft im oder Abfahrt eines Fahrzeuges aus einem Zielgebiet erfassbar zu machen, hier in Rio de Janeiro.
Verwaltung
Open GTS lässt sich über zahlreiche Parameter und Optionen individuell einstellen. Die meisten davon landen in vier Dateien:
»common.conf« beherbergt allgemeinen Einstellungen,
»private.xml« konfiguriert das GUI,
»reports.xml« das Layout der Reports,
»dcservers.xml« die Kommunikation mit den GPS-Geräten.
In »common.conf« definieren einfache Key/Value-Paare zur Laufzeit die Konfiguration des Systems. Neben allgemeinen Einstellung finden sich hier Details zum Logging (Log Level, Log File Location, Log File Rotation), zur MySQL-Datenbank (Host, Port, Name), und dem SMTP-E-Mail-Server für den Mailversand. Den- noch dürften hier nur in seltenen Fällen Änderungen notwendig sein.
»private.xml« dagegen ist die zentrale Anlaufstelle für alle Einstellungen, die das Webinterface betreffen. Neben dem Layout und Aussehen, den Datums- und Zeitformaten stellt der Admin hier ein, welche Reports sichtbar sind und konfiguriert Karten und den Geocoder.
Wem zum Beispiel das automatische Ausblenden der Standardkalender nicht gefällt, der kann mit den folgenden Zeilen durchsetzen, dass sowohl »Von«- als auch »Bis«-Kalender immer sichtbar bleiben:
<Property key="trackMap.calendarCollapsible">false</Property> <Property key="trackMap.showTimezoneSelection">false</Property> <Property key="trackMap.showDistanceRuler">false</Property> <Property key="trackMap.showGoogleKML">false</Property>
Damit die beiden Kalender nebeneinander Platz auf dem Display haben, schaltet der Admin hier ein paar andere Features aus. Für Timezone, Entfernungsbalken und KML-Export ist jetzt kein Raum mehr. Auch die Spracheinstellungen finden sich in dieser Datei.
Neun Sprachen
Open GTS unterstützt aktuell Englisch, Deutsch, Italienisch, Spanisch, Französisch, Türkisch, Rumänisch, Portugiesisch und Serbisch. Eine Änderung des »locale«-Eintrags im »Domain«-Tag ist dafür völlig ausreichend:
<Domain name="default" host="*" allowLogin="true" accountLogin="true" userLogin="true" demo="true" locale="de">
In »reports.xml« erstellt der Admin Vorgaben für individuelle Berichte. Auswahl, Reihenfolge und Sortierung der Spalten sind dabei ebenso konfigurierbar wie der jeweilige Datentyp. Nur Reports, die in »private.xml« referenziert sind, stehen den Benutzern zur Verfügung.
Last but not least konfiguriert die Datei »dcservers.xml« die Server, die die Kommunikation mit den Endgeräten durchführen, (Device Communication Servers, DCS). In dieser Datei kann der Admin das Programm nennen, ein lokales Interface und einen Port zuweisen, eine Beschreibung eingeben und beliebige weiter Konfigurationsoptionen übergeben, die der Dienst braucht. Prinzipiell lauern diese Programme nur auf eingehende Datenströme von GPS-Trackern und schieben die Daten weiter in die Datenbank.
Wie aber gelangen die Daten aus dem Tracking-Device zum Server? Moderne Geräte unterstützen eine lange Liste von Technologien, um ihre Positionsdaten zu übermitteln. Ihre Palette reicht von SMS, TCP (oder UDP) über GPRS, UMTS oder Wifi, über satellitengestützte Verfahren (wie Iridium, Orbcomm oder Globalstar) bis zu privaten Funknetzen.
Open GTS hat Unterstützung für viele GPS-Empfänger an Bord und kommuniziert mit jedem Gerät, das in der Lage ist, Positionsdaten an eine bestimmte IP zu senden. Es bringt eigene Tools mit, die dem Admin helfen, die Daten aufzubereiten, und kann gleichzeitig Daten von mehreren Geräte annehmen und verarbeiten. Für die meisten Setups wird der eingebaute und vorkonfigurierte “Template Server” völlig ausreichen.
Weil der Device Communication Server zwischen den Geräten und der Datenbank sitzt, lässt sich schon hier einiges mit den Daten anfangen. Details wie die Ankunft in oder die Abfahrt aus einer Geozone berechnen Open-GTS-Analysetools bereits hier, bevor die Daten in der Datenbank landen. Das kompensiert Einschränkungen von Geräten mit bescheidenerem Funktionsumfang, lässt sich aber auch Featuresets für umfangreichere Aufgaben nutzen. Und die Aufzeichnung von Telemetriedaten wie Drehzahl, Motortemperatur oder der Standard-Fehlercodes der Motorsteuerung ist ebenfalls möglich.
Roadmap
Open GTS ist ein sehr aktives Projekt, wöchentlich kommen neue Funktionen hinzu, und fast jeden Monat gibt es eine neue Major Release. Dementsprechend tummeln sich viele neue Ideen auf der Roadmap. So möchten die Entwickler die Funktionalität der Geozone-Features erweitern, Geozonen und Tracking Infos in einer Karten anzeigen und das Konzept der Points-Of-Interest (POI) einbauen. Unter der Haube steht Support für PostgreSQL und die Unterstützung für noch mehr GPS-Devices an.
|
Infos |
|---|
|
[1] Open TS: [http://www.opengts.org] [2] Openstreetmap: [http://www.openstreetmap.org] [3] Open Layers: [http://www.openlayers.org] [4] Geoserver: [http://www.geoserver.org] [5] Basic GTS Enterprise: [http://www.geotelematic.com/gts.html] [6] Open TS Online Demo: [http://track.opengts.org/track/Track] |
|
Der Autor |
|---|
|
Martin Flynn ist seit mehr als 27 Jahren in der Softwareentwicklung tätig und hat an zahlreichen Open-Source-Projekten mitgewirkt. Seit 7 Jahren verbringt er fast seine komplette Zeit damit, Anwendungen für GPS-Tracking, Flottenmanagement zu entwickeln und mit Geotelematic vor Ort zu implementieren. |




