Teil 3 | Die „API“, das unbekannte Wesen
www.stw-mm.com/news
Mit 35 Jahren Erfahrung in der Digitalisierung, Automatisierung und Elektrifizierung mobiler Arbeitsmaschinen unterstützen wir unsere Kunden mit maßgeschneiderten Workshops, erarbeiten passende Konzepte und entwerfen geeignete Systemarchitekturen.
Digitale Systeme leisten heute in fast allen Unternehmen wertvolle Dienste und sind kaum mehr wegzudenken. Solche Systeme können einfache Datenbanken zur Verwaltung des Kundenstammes, Software zur Auftragsabwicklung, Produktionsdatenverwaltungstools oder auch ein Ticketsystem für den Kundensupport sein. Es kommt dabei nicht selten vor, dass die zugehörige Software bereits seit mehreren Jahrzehnten im Einsatz ist. Möglicherweise verrichten unter der Haube auch "Maßanfertigungen" von längst nicht mehr verfügbaren Programmierern oder ehemaligen Studenten noch gute Dienste. In solchen Fällen können bereits kleine Änderungswünsche zum Alptraum werden und überproportional hohe Investitionen nach sich ziehen, vor allem wenn mehrere Systeme ineinandergreifen und aufeinander aufsetzen. Selbst wenn der Quellcode zur Verfügung steht, ist es meist nicht praktikabel, nach Jahren einen Programmierer darauf anzusetzen, da zum Zeitpunkt der Entstehung in der Regel weder mit der Intention einer möglichst guten Nachvollziehbarkeit des Codes gearbeitet wurde, noch die zum Erstellungszeitpunkt verwendeten Programmiertechniken immer noch aktuell sind – von der Verfügbarkeit einer umfassenden Dokumentation ganz zu schweigen. Heutzutage gehört es zum guten Ton, dass eine Softwareanwendung mitsamt einer dokumentierten Programmierschnittstelle (kurz API – von Application Programming Interface) daherkommt. Diese ermöglicht es anderen Programmen und Programmierern, auf definierte Weise auf diese Software zuzugreifen und deren Funktionen zu nutzen, und das ohne die Notwendigkeit, sich mit dem Code eines anderen Programmierers auseinandersetzen zu müssen. Gerade bei Webanwendungen ist dies für die Zusammenarbeit mit anderen Komponenten wichtig, wenn nicht sogar Voraussetzung. Die MACHINES.cloud von STW basiert auf einer solchen detailliert dokumentierten API. Sowohl die TCG-Telemetriemodule im Feld als auch die Browseranwendungen der User greifen allesamt auf diese eine API zu, auf der sämtliche Funktionen abgebildet sind.
Was sind nun genau die Vorteile einer IoT-Plattform mit einer API? Zunächst kann ein Anwendungsprogrammierer mit der Programmiersprache seiner Wahl arbeiten und ist nicht auf die Programmiersprache der Plattformsoftware oder ein bestimmtes Endgerät festgelegt, auf das er aufsetzen möchte. Er kann die dokumentierten Funktionen der API nutzen und diese in einer Programmiersprache seiner Wahl in seinen Code einbinden. Die Softwareapplikation des Programmierers greift dabei auf die API zu, der Anwender greift über vom Programmierer geschriebene Softwareapplikation auf die IoT-Plattform oder Cloud zu.
Und wie funktioniert das nun konkret bei der MACHINES.cloud? Die MACHINES.cloud besteht aus einem sogenannten Backend und einem User Interface. Als Backend bezeichnet man die Gesamtheit aller Dienste, die ein Server nach außen hin zur Verfügung stellt. Dieser Server wird vom Anwender über eine URL (einfach gesagt eine Internetadresse) angesprochen. Über diese Adresse wird eine verschlüsselte Verbindung zum API-Dienst des Servers aufgebaut. Damit nicht jedermann über das Internet einfach irgendwelche Kommandos auf der API ausführen kann, ist eine Authentifizierung notwendig. Für jede solche API-Anfrage wird daher ein Benutzername und ein Passwort abgefragt, sonst geht gar nichts. Derzeit gibt es um die 120 Kommandos und Funktionen, die über die API ausgeführt werden können. Das sind zum Beispiel Abfragen von Messwerten, Anlegen von Nutzern oder auch Updateaufträge für Geräte im Feld. Nachdem sämtliche Funktionen, inklusive dem Löschen aller Daten über die API laufen, gibt es sinnvollerweise ein Berechtigungsmanagement und je nachdem welche Berechtigungen der anfragende Nutzer vom Administrator der Plattform erhalten hat, darf er mehr oder weniger Kommandos ausführen.
Im Gegensatz zum Programmierer findet ein Anwender eine solche API vermutlich weniger spannend. Er will vielleicht einfach nur per Knopfdruck die benötigte Information erhalten oder Funktionen über seinen Browser ausführen. Damit er sich nun nicht mit solch abstrakten Dingen wie einer API herumschlagen muss, bietet die MACHINES.cloud standardmäßig mehrere Webapplikationen für verschiedene Nutzergruppen: Das Cockpit für den Anwender, das Device Management für den Flottenmanager und eine Applikation für den Administrator. Diese Standardapplikationen können per Knopfdruck über den Browser konfiguriert und angepasst werden. Falls nun aber doch ganz spezielle Funktionen oder Anwendungen benötigt werden, kann ein Webprogrammierer weitere Applikation erstellen, die wiederum Befehle an die API senden. Die fertige App kann dann nahtlos in MACHINES.cloud eingebunden werden. Für die MACHINES.cloud ist ein Styleguide für Programmierer verfügbar, der genau zeigt, wie die einzelnen graphischen Elemente aufgebaut sind. So kann auch das "Look and Feel" nahtlos integriert werden. Die Applikation MACHINES.access von STW, ein VPN-Dienst mit einfacher Konfigurationsoberfläche, ist ein Beispiel für eine solche nahtlose Integration.
Einen ganz speziellen Nutzer gibt es aber noch, der bisher noch nicht zur Sprache kam: Den Gerätenutzer. Denn ohne die Daten von den TCG-Telemetriemodulen der Maschinen im Feld nützt die ganze schöne Cloud nichts. Und wer hätte es gedacht, auch diese Daten werden über die API übermittelt. Dafür bekommt jede einzelne Maschine im Feld bei der Anmeldung ihre eigenen Zugangsdaten und nur eine sehr eingeschränkte Berechtigung. So ist den Geräten zum Beispiel nur erlaubt Messdaten zu senden oder Kommandos zu empfangen, nicht aber weitere Nutzer anzulegen oder andere wichtige Parameter der Cloud zu verändern. Was durch diese Standardisierung auch möglich wird, ist neben der TCG-Hardware von STW auch weitere Geräte im Feld zu verwenden, da der Anmeldeprozess ebenfalls genau festgelegt und dokumentiert ist. Eine Reihe anderer Hardwarekomponenten ist neben der TCG-Reihe von STW ebenfalls zur Anbindung an die MACHINES.cloud verfügbar, dann jedoch meist mit entsprechend geringerem Funktionsumfang, beispielsweise für reine Trackeranwendungen.
Doch es können nicht nur reale Menschen über eine Browserapplikation oder Geräte im Feld, sondern auch Server oder Dienste die API nutzen, sofern sie die nötigen Berechtigungen haben. Und hier wird es richtig spannend, denn den Möglichkeiten sind beinahe keine Grenzen gesetzt. Dazu nur ein Beispiel: Ein Ölsensor am Motor einer Maschine im Feld meldet einen zu niedrigen Ölstand. Es besteht die Gefahr, dass der Motor der Maschine trockenläuft. Aus nicht ersichtlichem Grund bemerkt der Maschinenführer der die Maschine ausgeliehen hat nicht, dass er eigentlich Öl nachfüllen müsste. Das eingebaute TCG-Telemetriemodul aber registriert den Fehler und sendet einen Alarm an MACHINES.cloud. Daraufhin wird über eine API-Anbindung im Ticketsystem des Maschinenverleihers ein neuer Fall ausgelöst. Automatisch werden aus der Verleihdatenbank (API) die aktuellen Daten des Kunden zusammen mit der Problembeschreibung in eine E-Mail geschrieben (API) und mit höchster Priorität an einen Servicemitarbeiter gesendet, der sich sofort um die Behebung kümmert. So kann ein kapitaler Motorschaden verhindert werden. Dies ist nur ein Beispiel, wie verschiedene Systeme sinnvoll ineinandergreifen können. Wenn nun alle diese Systeme über eine dokumentierte API verfügen, und bei den meisten aktuellen Systemen ist das so, können solche Funktionen ohne sonst oft immense Programmieraufwände realisiert werden.
Auf diese Weise kann die auch für MACHINES.cloud verfügbare API-Technologie helfen, schnell und kostengünstig neue Geschäftsideen umzusetzen.
Links: https://cumulocity.com/…
Als international tätiges Unternehmen mit Headquarter in Kaufbeuren, stehen wir seit 35 Jahren für die Digitalisierung, Automatisierung und Elektrifizierung mobiler Maschinen. Mit generischen oder kundenspezifischen Produkten, Systemen und Lösungen, die in unserer Zentrale in Deutschland entwickelt und gefertigt werden, unterstützen wir unsere Kunden auf ihrem Weg, mit innovativer Technik ihre Maschinen zu den besten der Welt zu machen.
Ergänzt durch Partnerprodukte und begleitet durch unsere Schulungs-, Support- und Systemteams helfen wir mittelständischen Unternehmen und großen OEMs, die Leistung und Effizienz ihrer Maschinen zu steigern und die Sicherheit zu erhöhen. Durch die Kommunikation zwischen den Maschinen und die Vernetzung mit unserer Cloud-Plattform und Diensten von Partnern ermöglichen wir die Integration der mobilen Maschine in Geschäftsprozesse.
Sensor-Technik Wiedemann GmbH
Am Bärenwald 6
87600 Kaufbeuren
Telefon: +49 (8341) 9505-0
Telefax: +49 (8341) 9505-55
http://www.stw-mm.com