|
Backend
Mit dem Begriff "Backend" wird derjenige Teil der Software-Anwendung bezeichnet, die auf dem Server läuft und die eingehenden Daten verwaltet und aufbereitet.
Im Esima-Projekt wurde das Backend mit Grails 2 umgesetzt.
Über eine Weboberfläche zur Konfiguration ist es möglich, das Esima-System an die eigenen Bedürfnisse anzupassen. Es können Grundeinstellungen,
wie der Druckluft-Umrechnungsfaktor für die Umrechnung zu Kilowattstunden oder der aktuelle Preis pro Kilowattstunde, aber auch die genauen Schichtdauern
eingestellt werden. Weiterhin kann jede Firma die in Form von Domänen (Hallen, Räumlichkeiten, Linien und andere Gruppierungen)
und Maschinen hierarchisch abbilden. Die Sensoren können manuell eingetragen werden, es ist aber auch möglich von der Basisstation eine Liste aktuell eingebuchter
oder allgemein im Funknetzwerk verfügbarer Sensoren anzufordern. Diese Sensorliste wird automatisch im Backend eingespeichert und erfordert
nur noch eine Zuweisung der Sensortypen sowie zu welcher Maschine und Domäne die Sensoren jeweils gehören. Um den verschiedenen Maschinen gerecht zu werden,
lassen sich die Maschinen in Gruppen bzw. Typen zusammenfassen. Diesen Maschinengruppen können dann Fehlerberichte und die für die weitere Esima-Auswertung
notwendigen Maschinenzustände zugewiesen werden. Aufbauend auf den Maschinenzuständen können die ermittelten Energien jeweils in produktive und unproduktive
Energie unterteilt werden.
Im Sensorbereich finden viele verschiedene Protokolle Anwendung. Um die Sensoren trotz ihrer unterschiedlichen Protokolle ins Esima-System einzubringen,
müssen die Daten gebündelt über die Basisstation laufen, welches die Sensor-Protokolle auf das Ethernet-Netzwerk konvertiert und weiterleitet. Der
Nachrichtenaustausch zwischen Basisstation und Backend erfolgt in beide Richtungen und sogar die Sensoren können über die Basisstation vom Backend aus
angesprochen werden. Zur Kommunikation wurde ein effizientes Wait-and-response-Protokoll verwendet. Die Nachrichten an die Basisstation wurden zeitlich
minimal verzögert, um Überlastungen zu verhindern.
Das Esima-Backend arbeitet mit drei verschiedenen Datenströmen von außen: den Sensormesswerten, Maschinendaten und Produktdaten.
Die Sensormesswerte stammen aus den einzelnen Sensoren und werden über die Basisstation gesammelt an das Backend weitergeleitet. Auf Grund des hohen
Datenaufkommens werden die unverarbeiteten Messwerte nur für 14 Tage in der Datenbank vorgehalten, bevor sie auf Tagesbasis in eine Datei ausgelagert werden.
Die Maschinendaten können aus bereits bestehenden Maschinendaten über eine API an das Backend direkt oder angepasst übertragen werden und
sind essentiell für die Unterscheidung zwischen produktiver und unproduktiver Energie. Die Produktdaten gelangen ebenfalls über eine API in
das Backend. Sie dienen der Erkennung von Produktionsbeginn und Fertigstellung eines Produktes, um die entsprechende Energie ermitteln zu
können und dienen als Grundlage für Berechnungen, die auf dem einzelnen Produkt oder dessen Baureihe basieren.
In der heutigen Industrielandschaft gibt es sehr viele unterschiedliche, oft proprietäre Definitionen der jeweiligen Maschinendaten. Im Rahmen des Projektes
Esima wurden drei sehr unterschiedliche Systeme der Projektpartner Festo, Daimler sowie dem IWF über eine Event-API an das Backend angebunden.
Die API für die Maschinen- und Produktevents wurde als einfache Datenbanktabelle umgesetzt. Dieses bringt zwei große Vorteile mit sich, welche sich bereits
in der frühen Implementierung zeigten. Zum einen war es jedem Teilnehmer möglich, seine eigenen Maschinendaten selbstständig in Esima zu überführen. So konnte
das IWF die bereits existierende, eigene Datenbank der Maschinendaten, über ein einfaches Script zu Esima weiterleiten. Und auch für Festo war es anhand von
Datenbanktriggern schnell umgesetzt, dass die Daten im notwendigen Format zugeliefert wurden. Zum anderen lässt sich dort auch ein im Rahmens des Projektes
entwickelter Konverter anbinden, welcher komplexere Datenumwandlungen und Systemzugriffe übernehmen kann.
Ausgehend von den Basisdaten werden in Esima weitere Datensätze berechnet und angelegt. Dieses umfasst verschiedene Bereiche wie die Energie pro Produkt
und pro Stunde, eine Verfolgung der getroffenen Maßnahmen zur Energieeffizienzsteigerung, aber auch die Handhabung von Fehlerberichten. Die Daten werden
alle unter den Aspekten der Information und Präsentation verarbeitet.
Als Grundlage wird die Energie pro Stunde sowie pro Produkt ermittelt und für die Analyse verwendet. Dieses ermöglicht einen Überblick über den Verbrauch
einer Maschine über einen Zeitraum. Die Aggregation pro Produkt ermöglicht einen Einblick, welche Produktreihe wieviel Energie und Ressourcen benötigt und
ob sich sogar bei individuellen Bauteilen der gleichen Reihe Einflüsse feststellen lassen. Außerdem bietet Esima das Erstellen von Fehlerreports, über
welchen die zuständigen Mitarbeiter zeitnah informiert werden und tätig werden können. Ergänzend können die genaueren Energie- und Ressourcenauswirkungen
von getroffenen Änderungen und Maßnahmen verfolgt und ausgewertet werden (Maßnahmenverfolgung). Dafür legt man für eine Maßnahme einen Eintrag an und
definiert u.a. einen Zeitraum für die Nachverfolgung. Bei Abschluss der Verfolgung kann man das Ergebnis einsehen und bezüglich des Ertrages bewerten.
Auch ein Vergleich mit vorherigen Maßnahmen ist möglich.
Ein wesentlicher Aspekt der mobilen Interaktion bei Esima ist die nutzergruppenspezifische Darstellung bzw. Filterung von Informationen. Manager,
Maschinenbediener und Instandhalter sollen gleichermaßen befähigt werden, an der Prozessoptimierung teilzuhaben und dies auch z.B. in shop floor
meetings gemeinsam zu tun. Dazu benötigt jede dieser Zielgruppen unterschiedliche Sichten auf die Produktionsprozesse und Anlagenteile, was bei der
Darstellung in der mobilen App berücksichtigt wird. Grundlage für diese individuelle Anpassung ist ein Rollen- und Rechtekonzept, über das die darzustellenden
Inhalte gefiltert werden können. Das Backend
sieht dazu ein einfaches Rechtemanagement basierend auf Nutzern, Gruppen und Rollen vor. Es wurden Gruppen mit bestimmten Rechten vordefiniert, es ist aber
natürlich ebenso möglich, eigene Gruppen zu definieren. Da eine große Produktionsstätte aus vielen einzelnen Hallen und Unterabschnitten sowie vielen Maschinen
besteht, und nicht jeder Mitarbeiter sämtliche Maschinen und Abschnitte einsehen können muss, wurde zusätzlich noch auf eine Access Control List (ACL)
zurückgegriffen, mit welcher sich die Domänen und Maschinen individuell auf Gruppen oder Nutzer zuweisen lassen.
Insgesamt bietet das ESIMA-Backend eine sehr freie Rechtevergabe und Konfiguration für den Einsatz in der Produktion. Im Auslieferungszustand sind bereits
viele Standardeinstellungen vorkonfiguriert, welche aber jederzeit angepasst werden können.
|