Kapazität und Zustand von Containern erfassen und übermitteln

Anwendungsfall

Ein Unternehmen überprüft täglich die erreichte Füllmenge/Füllstand von bereitgestellten Containern und ob Beschädigungen (z. B. Graffiti etc.) an diesen vorliegen.  Hierzu erhält jeder Fahrer vom Disponenten eine vorgegebene Fahrroute. An einem Standort können ein bzw. mehrere Container stehen, die überprüft werden müssen.

Wie dies zunächst im bereitgestellten Portal der GPSoverIP (GPS--Explorerweb) erfolgen kann, ist nachfolgend kurz beschrieben:

Welche Standorte anzufahren sind, kann über die Job-App (Auftragsmanagement auf einem GPSoverIP-fähigen Endgerät – z.B. GPSauge IN1) dem Fahrer mitgeteilt werden. Der Disponent wählt hierzu beispielsweise im GPS-Explorerweb  über das Top-Menü „Anwendungen -> Aufträge/Touren“ seine gewünschte Übersichtseinstellung (Bild 1). Über diese Maske können vorhandene Aufträge bearbeitet, verändert und gelöscht sowie neue Aufträge erstellt werden.

Nach Erstellung einer neuen Tour oder eines neuen Auftrags, kann diese dem Fahrer übermittelt werden. Der Fahrer erhält hierzu am Display eine Meldung über seine folgenden Tätigkeiten. Mit Hilfe des Detailfensters erhält er allgemeine Informationen zum Auftrag. Unterhalb der POS-Liste wird vermittelt, welche Positionen anzufahren sind. Weitere Buttons informieren über mögliche Unteraufträge oder Positionsinformationen.

Über den Startbutton oder durch eine Auswahl einer Position in der Positionsliste („Navigieren nach Reihenfolge ab“ oder „Navigiere zu“) , wird die Tour/Auftrag gestartet. Gleichzeitig erfolgt hierbei eine Statusmeldung inkl. Zeitstempel an die Zentrale, dass die Tour/Auftrag gestartet wurde.

Ist der Fahrer am Zielort des jeweiligen Auftrags angekommen, hat er die Möglichkeit bei dem jeweiligen Auftrag sog. Unteraufträge aufzurufen. Diese teilen ihm dann mit, welche Container im Einzelnen zu überprüfen sind. Die ermittelten Informationen können mit Hilfe der Container-App anschließend über das Statusfenster innerhalb der Job-App erfasst und übermittelt werden. Die Container-App ist hier jedoch eine optionale Erweiterung der Job-App, die vom GPSoverIP Support via Fern-Update auf das jeweilige IN1 v.2 eingerichtet werden kann.

Wie im Statusfenster (Bild 2) ersichtlich, ist in der obersten Zeile die Container- bzw. Auftragsnummer festgehalten. Der Fortschrittsbalken kann entweder durch direktes Klicken in den Balkenbereich (grobe Auswahl)  sowie durch das klicken des „Minus“ und „Plus“ Buttons (fein Auswahl) auf die jeweilige Füllmenge eingestellt werden.
Der Zustand des Containers wird über die Select-Kästchen im unteren Bereich des Statusfensters vermerkt. Wurde der Container als „OK“ eingestuft, kann der Fahrer nicht zusätzlich eine oder mehrere der anderen Optionen (Defekt, Dreck, Graffiti oder Aufkleber) auswählen.

Zur Übermittlung des Containerstatus ist der „grüne Button“ zu klicken. Zum Verwerfen der gesammelten Informationen entsprechend der „rote Button“.

Technische Umsetzung

Einführung

Über die Entwickler-API, die für registrierte Entwickler kostenfrei zur Verfügung steht,  wird eine Referenz aller von der GPSoverIP erstellten Module aufgelistet. Um sich von einem Modul die Aktionen sowie dazugehörigen Parameter anzuschauen, ist eine Zugangskennung erforderlich. Diese kann kostenlos über den Link „Registrieren“ auf der Startseite beantragt werden.

Mit Hilfe des Moduls „Job“werden die Aufträge vom GPS-Explorer über das GPSoverIP-Gateway an das entsprechende GPSauge übertragen. Dieses Modul bietet die Möglichkeit des direkten Auftragsversandes inkl. neuer Zielvorgaben für die Navigation. Der Fahrer kann den Auftrag direkt annehmen oder zu einem späteren Zeitpunkt über die Auftragsliste einen Auftrag auswählen. Sobald ein Auftrag vom Fahrer erledigt worden ist, kann er diesen mit einer Nachricht als „erledigt“ bestätigen.  Durch Einstellungen unterhalb von „Administration“ (am GPSoverIP-fähigen Endgerät unterhalb von „System“ mit Passworteingabe), besteht auch die Möglichkeit, die Job-App (Auftragsmanagement auf einem GPSoverIP-fähigen Endgerät – z.B. GPSauge IN1) so einzustellen, dass bei Entfernung des erreichten Zielortes durch einen integrierten Geokoordinatendienst die Statusrückmeldung „erledigt“ automatisch erfolgt.

Im nachfolgenden werden die Aktionen: „send“ und „getstatus“ näher erläutert. Es wird ebenfalls die Begriffsdefinition und Aufbau das „GPS-Paket“ eingegangen.

Action: „send“

Über diese Aktion werden Navigationsaufträge gesendet. Die Daten werden an das GPSauge übertragen.
Hierbei werden drei Arten unterschieden:
  1. Navigationsauftrag senden (inkl. Geocodierung ohne GPX-Paket)
  2. Navigationsauftrag senden (GPX-Paket (Standard)
  3. Navigationsauftrag senden (GPS-Paket für z. B. Holzindustrie)

GPX-Paket

Die Abkürzung „GPX“ steht für das „GPS EXchange Format“. GPX wurde vom US-Amerikanischen Unternehmen TopoGrafix entwickelt. Es basiert auf dem allgemeinen XML-Standard und dient zur Speicherung von Geodaten (GPS-Daten).

Für den GPX-Standard sind nur wenige Datentypen/Tags definiert. Neben den Metadaten (Autor bzw. Beschreibung) werden hauptsächlich Daten für GPS-Empfänger (wie z. B. Wegepunkte, Routen etc.) im GPX-Paket geliefert.

Folgende Typen werden unterschieden:
  - Waypoint
    Der Tag „<wpt>“ definiert einzelne Ortspunkte bzw. Wegepunkte
  - Route
    Standardmäßig: <rte>.
    Der Tag <rtept> ist hingegen zu verwenden, wenn eine sortierte Abfolge von Wegpunkten
    einen geplanten Kurs beschreibt um zu einem bestimmten Ziel zu gelangen.
  - Track
    Standardmäßig: <trk>.
    Bei einer sortierten Liste, die einen Linienzug ergibt, ist das <trkpt>-Tag zu verwenden.
    Hierbei werden die einzelnen Tracksegmente zusätzlich in einzelne Abschnitte, im
    <trkseg>-Tag zusammengefasst.

Selbstverständlich können auch eigene Erweiterungen im GPX-Paket verwendet werden.

(Quelle: http://de.wikipedia.org/wiki/GPS_Exchange_Format, vom 24.07.2014)

zu 1:
Es wird kein GPX-Paket übertragen, sondern wird erst innerhalb des GPSoverIP-Gateways erstellt.

zu 2:
Das fertiggestellte GPX-Paket wird mit dem Standardaufbau übertragen.  Im Bild 3 wird der Standardaufbau eines GPX-Pakets gezeigt.

zu 3:
Bei der dritten Variante handelt es sich um ein erweitertes GPX-Paket, wie es in der Holzindustrie sowie als Statusabfrage innerhalb der Container-App verwendet wird.  (Bild 4).

Standard-GPX-Paket vs. erweitertes GPX-Paket

Im Route-Tag wird durch die Erweiterung „type“ auf einen Unterauftrag („suborder“)  hingewiesen.  Dieser wiederum ist im „extensions“-Tag eingebettet.

Übertragende Daten über die Schnittstelle
Für diese Aktion sind die folgenden Anfrageparameter notwendig:
http://www.gpsoverip.de/entwickler/api-referenz/actions/parameter/?tx_repomodule_pi1[moduleid]=86236232&tx_repomodule_pi1[actionid]=91897215

Aktion „getstatus“

Mit folgendem Aufruf wird es zusätzlich noch ermöglicht, Informationen (den aktuellen Status oder eine Nachricht) zu einer angegebenen Tour abzufragen, bzw. erneut abzurufen. Diese Abfrage könnte somit zu aktiven Touren im Intervall immer wieder ausgelöst werden, um Informationen über den aktuellen Status zu erhalten. In unserem hier aufgeführten Beispiel wird es somit ermöglicht, bei einer nachträglichen Statuserfassung (Scanner-Daten wurden möglicherweise nicht gleich an Ort und Stelle übertragen und die Füllmenge, bzw. der neue Status wird somit erst später erfasst), den neuen Status abzurufen. 

Diese Abfrage beinhaltet somit natürlich auch alle Informationen zur aktuellen Station und deren Unteraufträge.

 

<trkseg>

        <name>-1</name>

        <desc>Nachricht</desc>

        <cmt />

        <time>2015-09-02 10:53:35</time>

        <trkpt lat="0.000027" lon="0.000192">

                <time>2015-09-02T10:53:35+02:00</time>

                <name>-1</name>

                <cmt />

                <desc>Nachricht</desc>

                <extensions>

                        <jobid>100352683</jobid>

                        <country />

                        <code />

                        <city>???</city>

                        <street />

                        <deviceid>700004</deviceid>

                </extensions>

        </trkpt>

        <extensions>

                <jobstatusid>C6EEB088-1DBB-417B-9223-0B7B731F4F74</jobstatusid>

                <read>0</read>

                <fill>60</fill>

                <pos>1</pos>

                <subtext>001</subtext>

                <subinfo>

                        <text>11828</text>

                        <text>11838</text>

                        <text>11907</text>

                </subinfo>

        </extensions>

</trkseg>
 

Der Subtext bezieht sich auf den Unterauftrag. Bei 3 Unteraufträgen ist die Zahl 3 Zeichen lang. An der Position an der die 1 steht ist der Unterauftrag gemeint, im oberen Beispiel handelt es sich somit um den 3. Unterauftrag.

Subinfo:
Alle Unteraufträge und ihre Beschreibung.

Detail-Statusabfrage des Auftrags/der Tour

Um den Status der übermittelten Tour/des übermittelten Auftrags auszuwerten und in einer Drittapplikation zu visualisieren, oder wie in unserem gezeigten Beispiel im GPS-Explorer (web)  anzuzeigen, dient die API-Abfrage durch die Action „getstatus“.

Der Befehl „getstatus“ liefert dann eine Ausgabe (Array), welche anschließend alle vorhandenen Informationen des Auftragsstatus zurückliefert wie z.B. Füllstandmenge, Zustand des Containers oder auch weitere Werte wie „übervoll“. Die zurückgelieferten Status- und Wertangaben sind selbstverständlich von der erweiterten Job-App (Container-App) abhängig. So können die Status bei Auswahl einer anderen erweiterten Job-App (Beispiel erweiterte Job-App für Holzunternehmen) abweichen. Um alle Details der Action „getstatus“ entgegen zu nehmen empfiehlt es sich, den aktuellen Stand in der dokumentierten validierten API-Referenz zu entnehmen.

Kurze Erläuterung anhand der im Beispiel beschriebenen Container-App

Zum Auslesen der Container-Infos eines Jobs:
Array (
        [user] => 123456
        [pwd] => 7e7ced60d27563a82d156f53b0089ac009
        [module] => job
        [action] => getStatus
        [jobid] => 99657659
        [mode] => all
)

Die Antwort liefert ein GPX-Paket, in dem die Informationen enthalten sind:
[return] => -1
[gpx] => PGdweCB2ZXJzaW9uPSIxLjEiIGNyZWF0b3I9IkdQU292ZXJJUCBXZWJFeHBsb3JlciI
KICAgICAgICAgICAgICAgICAgIHhtbG5zPSJodHRwOi8vd3d3LnRvcG9…

Der Inhalt von [gpx] ist base64-codiert. Nach dem decodieren enthält das GPX unter anderem in den Extensions:
<extensions>
        <Defekt>1</Defekt>
        <Dreck>1</Dreck>
        <Graffiti>1</Graffiti>
        <Aufkleber>1</Aufkleber>
</extensions>

Das GPX-Paket kann mit einem XML-Parser in ein Objekt umgewandelt und weiterverarbeitet werden.

Übertragende Daten über die Schnittstelle

Die für diese Aktion erforderlichen Anfrage- und Antwortparameter können über
http://www.gpsoverip.de/entwickler/api-referenz/actions/parameter/?tx_repomodule_pi1[moduleid]=86236232&tx_repomodule_pi1[actionid]=91897395
nachgelesen werden.

Genereller Hinweis:

Um die Abfolge der Job-App in Verbindung mit der Container-App am Arbeitsplatz zu testen, sollten Sie immer nach Möglichkeit eigene Position als auszuführenden Auftragsort angeben, damit sich die Job-App automatisch öffnen kann (dass sich die Job-App von alleine öffnet, ist in der Praxis die gängige Vorgehensweise).

Bitte beachten Sie, dass die hier aufgeführte Dokumentation nur als Anregung und als Beispiel für zahlreiche Möglichkeiten in Verbindung mit dem dokumentierten validierten Schnittstellen der GPSoverIP GmbH steht. Des Weiteren weist die GPSoverIP GmbH darauf hin, dass durch Erweiterungen und Veränderungen die hier dargestellte Dokumentation möglicherweise vom aktuellen Funktions- und Bedienungsgrad (API) abweichen kann. Demzufolge verweisen wir für den aktuellen Stand auf die dokumentierte validierten Schnittstellen (API) der GPSoverIP GmbH hin.

Bei näheren Fragen zu diesem Anwendungsbeispiel kontaktieren Sie bitte den Costumer-Support unter support(at)gpsoverip.de

Suche
Hardware-Komponenten
Software-Komponenten
Mediathek
E-Mail
Telefon
Support
Zum Online-Shop
Zum GPS-Explorer
Sprache wählen
EN
GR
IT
ES
FR
TR
Seite drucken