Close

Warum Web-Technologien Industrial-Analytics revolutionieren werden

Normales HTML war gestern

Wenn man Leute, die einen technischen oder ingenieurwissenschaftlichen Hintergrund besitzen, fragt, ob sie Webtechnologien kennen, wird ein Großteil dieser so etwas sagen wie: „Ja, das sind doch HTML-Seiten und JavaScript.“. Vielleicht berichten diejenigen auch, dass sie vor einiger Zeit auch einmal eine Internetseite gestaltet haben, oder etwas von jQuery.

Webtechnologien sind aber mittlerweile viel mehr als statische HTML-Seiten mit Überschriften und Bildern. Ihre Anwendung lässt sich heute in vielen Bereichen des alltäglichen Lebens finden. Fast jede App auf dem Smartphone nutzt HTTP(S)-Anfragen, um Informationen zu erhalten oder Daten an einen Server zu senden.

Der Status Quo

In der Welt des Maschinenbaus und der Fertigung gibt es viele Bereiche, bei denen Daten gesammelt werden können oder bereits vorliegen. Klassische ERP- oder MES-Anwendungen werden häufig für eine Plattform (wie Windows) entwickelt und betreiben eine oder mehrere Datenbanken im Hintergrund. Meist sind sie genau auf (Unternehmens-) Prozesse abgestimmt und bilden den Arbeitsfluss von Bestellung zur Auslieferung oder von Fertigungsschritten bis zur Montage ab. Die erhobenen Daten dienen dann oft nur der Dokumentation. Für eine tiefgreifende Analyse sind die Programme jedoch häufig zu limitiert, weil sie zu speziell und an die Darstellungsmöglichkeiten der Plattform gebunden sind.

Klassische Datenspeicherung verschiedener Unternehmenssysteme

Hier können Webtechnologien helfen

Datenübertragung

Seit einigen Jahren werden Datenanalysen jedoch nicht mit der Programmiersprache einer Plattform wie z.B. C++ auf Windows durchgeführt, sondern flexiblere Mittel wie Python oder R genutzt. Diesen Werkzeugen ist es egal, ob sie für die Analyse von Fertigungs- oder Betriebsdaten genutzt werden, oder, ob sie Wetterdaten analysieren. Sie leben von einer breiten Infrastruktur an kostenlosen und frei verfügbaren Softwarepaketen, die z.B. auch die Daten über eine HTTP(S)-Schnittstelle bereitstellen können. Die sog. RESTful-Interfaces sind eine Abstraktion dieser Schnittstellen, die das Übertragen, Manipulieren, Löschen oder Abfragen von Daten erlauben. Dabei ist egal, ob diese eine komplexe Struktur wie bei Betriebsdaten oder einfache Zeitreihen von Maschinendaten behandeln. Features wie Pagination oder Streaming erlauben es außerdem, nahezu beliebig große Datenmengen zu übertragen oder diese aufzuteilen. Dies ist bei konventionellen Datenabfragen z.B. via SQL oft deutlich schwieriger und weniger flexibel. Die verschiedenen Software-Bibliotheken der Webtechnologien können aber auf bestehende Systeme aufbauen und die Daten z.B.erst per SQL auslesen und dann per RESTful-Service weiterreichen.

Zusammenfassung verschiedener Datenquellen zu einem RESTful-Interface

Datenverarbeitung

Auch wenn die Übertragungsmöglichkeiten durch diese Technologien recht flexibel sind, ist es häufig gar nicht notwendig dem Nutzer den ganzen Datenbestand zu übermitteln, da dies Zeit und Speicher kosten kann. Zudem ist die Hardware der Nutzer nicht immer optimiert, um komplexe Berechnungen (wie z.B. das Trainieren eines Prognosemodells zur Anomalieerkennung) auszuführen. Diese können dann z.B. besser auf einem Server oder einer Cloud ausgeführt werden. Die oben genannten Programmiersprachen (R und Python) unterstützen zudem die Verwendung von Grafikkarten und besonderen Software-Bibliotheken, die, wenn sie dann extern laufen, nicht den Computer des Endnutzers lahmlegen.

Zugriff von Datenanalyse-Frameworks auf RESTful-Interfaces

Datenvisualisierung

Wenn die Berechnungen dann durchgeführt worden sind, reicht es dem Nutzer aussagekräftige Visualisierungen zu präsentieren oder intelligent gefilterte Daten bereitzustellen. Hier können gerade Web-Frameworks ihre Stärken ausspielen, da diese durch optimierte Render-Logiken schnell und plattformunabhängig Nutzeroberflächen generieren können. Software-Bibliotheken wie Plotly.js oder D3 sind mächtige Visualisierungswerkzeuge und bieten eine große Flexibilität, um z.B. Fertigungsdaten zu analysieren. Diese können sehr gut in Technologien, die das klassische HTML abgelöst haben, wie bspw. React.js integriert werden. Zusammen können so wesentlich flexiblere Userinterfaces erstellt werden, als es native Programmierframeworks wie bspw. Microsofts UWP erlauben.

Zugriff von Visualisierungsframeworks auf RESTful-Interfaces und Analyseergebnisse

Deployment und Anwendung

Ein weiterer Vorteil gegenüber der nativen Programmierung liegt in der Auslieferung der Anwendung. Während klassische ERP- oder MES-Anwendungen meist eine Installation benötigen und große Dateien auf dem Nutzerrechner hinterlegen, können Webanwendungen einfach über einen Browser aufgerufen werden und das plattformunabhängig, egal ob Windows-Laptop, Android-Smartphone oder iPhone.

Außerdem können so Updates und Verbesserungen schneller und ohne Installation verteilt werden.

Obwohl eine Cloud-Anwendung denkbar wäre, bietet das Client-Server-Modell einer Webanwendung auch die Möglichkeit, auf einem Firmenserver bereitgestellt zu werden. Dies hat den Vorteil, dass die Daten und vertraulichen Informationen (z.B. die Auslastung oder das Betriebsverhalten der Maschinen) im Unternehmen bleiben.

Durch die Verwendung von sog. Docker-Containern kann zudem eine Integration in ein bestehendes Server-Netz oder den späteren Umzug auf eine Cloud nahtlos vollzogen werden. Dabei werden Konfigurationsaufwand und Ressourcenverbrauch gering gehalten, sodass Endnutzer, z.B. ein Ingenieur im eigenen Unternehmen, die Funktionen einfach mit dem Aufrufen der Seite komfortabel nutzen können.

Ist eine lokale Verwendung abseits des Browsers notwendig, kann Docker auch helfen die Anwendung beim Nutzer auszuführen, falls dieser bspw. eine eigene Workstation besitzt. Ein anderes Framework, das die Applikation gebündelt anbieten kann, ist Electron. Bekannte Vertreter wie Slack oder WhatsApp Desktop nutzen Webtechnologien, um ihr Nutzerinterface zu programmieren und es per Electron bereitzustellen. Sie teilen dabei den Code, den man im Browser sehen würde, mit dem in der Desktop-App.

So können die meisten Szenarien der Software-Verteilung mit Webtechnologien realisiert werden, ohne große Anpassungen oder Neuentwicklungen der Software durchführen zu müssen. Seien es On-Premise-Lösungen, bei denen die Daten im Unternehmen und der Fertigung bleiben, Cloud-Lösungen, bei denen keine eigene Hardware angeschafft werden muss, oder Einzelanwendungen, die gebündelt auf einem Nutzerrechner laufen.

Bereitstellen der Anwendungsebenen On-Premise oder in einer Cloud

Fazit

Seit der Programmierung von simplen HTML-Seiten hat sich die Welt der Software-Entwicklung stark verändert. Während einige ERP- oder MES-Anwendungen eine native Implementierung erfordern, können besonders zu Analysezwecken Webtechnologien ihre Vorteile ausspielen. Die einfache Integration in Unternehmen und das einfache Andocken an bestehende Lösungen machen die Verwendung noch interessanter. Gerade diese Flexibilität ist es, die die breite Landschaft an Werkzeugen und Datenquellen im Industrial-Analytics-Umfeld nun benötigt, um produktive Lösungen hervorzubringen. Zudem können Abstraktion von Analysen und das Aufbereiten von Daten einen großen Mehrwert für das operative Geschäft und die Alltagsaufgaben in der Industrie liefern. Dazu sollten Nutzer aber ohne großartige Installationen und Konfigurationen schnell Mehrwerte generieren können. Die leichtgewichtige Datenaufbereitung und -Visualisierung mithilfe von Webtechnologien können hier eine große Rolle spielen, um dies zu erreichen. Besonders die schnell wachsende Entwickler-Community und Technologiereife im Webumfeld bieten hier ein Potential, um Industrial-Analytics zu revolutionieren.

Icons by Google Material Design Icons under Apache license version 2.0