zuruck zur Themenseite

Artikel und Hintergründe zum Thema

Engineering

Kristian Raue | Günter Herkommer,

Mit Excel-Know-how komplexe Prozesse modellieren

Programmierleistungen in Fertigungsunternehmen müssen nicht selten teuer eingekauft werden und sind auch nicht immer zeitnah verfügbar. Eine Alternative ist die code-freie Modellierung von Prozessen mittels sogenannter 'Streamsheets'.

© Cedalo

Spreadsheet-Programme wie Microsoft Excel oder Google-Tabellen sind im betrieblichen Alltag weit verbreitet. Ein großes Problem bei Spreadsheets ist aber die Tatsache, dass die Daten lokal gehalten werden und manuell per Zwischenablage oder CSV-Datei transportiert werden. Dies führt zu Handhabungs-Fehlern und zu einer Entkoppelung der Daten vom aktuellen Prozess.

Da liegt die Idee nah, die Vorteile von Spreadsheets in Bezug auf Akzeptanz und Bedienbarkeit zu erhalten, darunter aber eine neue, server-basierte Technologie zu entwickeln, die Daten nicht offline, sondern automatisiert als Echtzeit-Datenstrom über einen kontinuierlich laufenden Server-Dienst verarbeitet. Und dies im Millisekunden-Bereich, damit nicht nur IT-Applikationen angebunden, sondern zyklusbasiert auch Sensoren und Aktoren gesteuert werden können. Und genau das machen Streamsheets. Grundlage bleibt dabei weiterhin eine formelbasierte Rechen-Engine à la Excel. Diese ist so universell und leistungsfähig, dass man sie tatsächlich auch als Rule-Engine für ein Analyse- oder sogar Steuerungsprogramm für industrielle Smart-Factory-Anwendungen nutzen kann. 

Bild 1. Streamsheets verwenden Excel-ähnliche Regeln und Formeln, um Nachrichten im Millisekunden-Takt zu empfangen, zu verarbeiten und zu senden.

© Cedalo

Damit das funktioniert, beherrschen Streamsheets die gängigen IoT-Protokolle wie OPC UA, AMQP oder MQTT. Um ebenso Daten aus betriebswirtschaftlichen Applikationen in Echtzeit zu erhalten oder zu beschicken, können Streamsheets auch das REST-API, die Datenbank Mongo oder die Stream-Processing-Plattform Apache Kafka nutzen. 

Trotz dieser neuen Möglichkeiten bleibt die einfache Handhabung erhalten. Anders als in Full- oder Low-Code-Entwicklungsumgebungen (Codesys, Node-RED etc.) braucht man als Anwender keine Programmier-Kenntnisse, sondern kann mit dem vorhandenen Excel-Know-How das erreichen, was bislang nur mit Code-Entwicklung ging. Und das zu weit geringeren Kosten und mit einem deutlich reduzierten Zeithorizont. Ein weiterer Vorteil des Spreadsheet-Konzepts ist der interaktive Modellierungsprozess. Der Aufbau der Anwendungslogik erfolgt Schritt für Schritt mit direkter Rückgabe von Ergebnissen, weil schon während der Modellierung die Prozessdaten durch das Spreadsheet laufen.

Anzeige

Möglicher Use Case für Streamsheets

Ein beispielhafter industrieller Use Case, der mittels der Streamsheets umsetzbar wäre, beschreibt eine intelligente Qualitätskontrolle, die im Moment des Prüfvorgangs innerhalb von Millisekunden nicht nur Daten von Sensoren und Kameras erfasst, sondern auch Daten von MES-Systemen und Cloud-Services, um mit diesen zusätzlichen Informationen – bei gleichbleibender Fertigungsqualität – die Ausschussrate gegenüber einer klassischen Qualitätskontrolle zu senken. Die Ausschussrate wird hier also nicht durch eine Verbesserung der Fertigungsqualität reduziert, sondern dadurch, dass man die Qualitätskontrolle intelligenter macht und auf diese Weise voreilig aussortierte Teile doch als qualitätskonform einordnen kann. 

Der Use-Case wurde mit einer OPC-UA-fähigen Fabriksimulationssoftware (Factory IO) sowie mit per MQTT verbundenen Sensoren für Feuchtigkeit und Temperatur nachgestellt. Zudem werden Statistikdaten per MQTT auf eine Standard-IoT-Visualisierungs-App auf ein Smartphone publiziert. 

Weiterer Teilnehmer in diesem Prozess ist ein MES-System, das per REST-API Daten liefert. Alle Informationen laufen schließlich in eine Abfrage an ein KI-System, das auf Basis eines zuvor trainierten Machine-Learning-Algorithmus eine intelligente Entscheidung fällt: Darf ein Teil die Prüfung passieren, muss es aussortiert werden (weil eine Bearbeitung nicht möglich ist) oder soll es in ein automatisches Nachbearbeitungszentrum übergeben werden?

Bild 2. Gesamtansicht der simulierten Produktionsanlage und Überblick über den Aufbau des Use Case.

© Cedalo

Das simulierte Szenario sieht konkret wie folgt aus: Ein Betrieb produziert die in Bild 2 gezeigten Blöcke. Eine Besonderheit in diesem Betrieb ist, dass die Blöcke bezüglich Länge und Breite aufgrund des Materials sehr empfindlich auf Luftfeuchtigkeit und Temperatur reagieren. Das führte in der Vergangenheit dazu, dass unter Umständen ein Produkt beanstandet wurde, das zwar nicht am Ort der Qualitätskontrolle, aber sehr wohl bei den am späteren Einsatzort vorliegenden Temperaturen und Luftfeuchtigkeiten die korrekten Abmessungen zeigt. Weiterhin wurde fortlaufend eine Statistik bezüglich Retouren gemacht, die jedem Kunden eine Toleranzklasse (TK) zuordnet. In der gleichen Statistik ist zudem hinterlegt, mit welcher Luftfeuchtigkeit und welchen Temperaturen am Produktionsort des jeweiligen Kunden zu rechnen ist.

Mit Hilfe der Streamsheets realisiert der Betrieb nun eine intelligente Qualitätskontrolle, die bei gleicher Fertigungstoleranz zu einer deutlich niedrigeren Ausschussrate führt. Dabei werden folgende Schritte durchlaufen:

  • Die auf dem Band einlaufenden Teile werden per QR-Code erkannt. 
  • Parallel erfolgt die Vermessung von Breite und Länge durch eine intelligente HD-Kamera.
  • Über Sensoren wird die Luftfeuchtigkeit und die Temperatur erfasst. 
  • Aus dem MES-System werden die Durchschnittswerte für Luftfeuchtigkeit und Temperatur am Ort des Kunden abgerufen.
  • Ebenfalls aus dem MES heraus erfolgt die Abfrage der Toleranzklasse des Kunden.

Das Streamsheet ist über ein OPC-UA-basiertes Gateway mit der Fertigungsstraße verbunden und zieht zudem die auftragsspezifischen Daten aus dem MES-System. Die kombinierten Daten werden an ein externes Machine-Learning-basiertes KI-System übergeben. Dieser Dienst nimmt in Millisekunden eine zuvor trainierte Bewertung vor, ob das entsprechende Teil direkt zur Auslieferung kommt, aussortiert werden muss oder nachgearbeitet werden kann.

Im simulierten Szenario laufen die Werkstücke zunächst zur Qualitätskontrolle. Sind die Teile größer als die Sollgröße, werden sie nachbearbeitet. Sind sie kleiner, werden sie als Ausschuss markiert. Ansonsten laufen sie direkt ins Lager. Die Entscheidung erfolgt in dem kurzen Zeitraum zwischen der Sensor-Erfassung und dem Pusher zum Nachbearbeitungszentrum. Da das Streamsheet nicht nur Daten empfangen, sondern auch Daten senden kann, sendet es bei einer Nachbearbeitung beziehungsweise Aussortierung über OPC UA direkt einen Befehl zum Pusher beziehungsweise Pivot-Arm am Band. Parallel dazu könnten die Daten direkt aus dem Streamsheet per AMQP oder MQTT an eine Cloud zur weitergehenden Auswertung (Stream-Analytics) gesendet werden.

So funktionieren Streamsheets im Detail

Um einen Eindruck davon zu bekommen, wie Streamsheets funktionieren, seien im Folgenden einige Ausschnitte aus der Modellierung erläutert. 

Bild 3: Verknüpfung des M2M-Datenstroms mit den Streamsheet-Zellen per Drag&Drop.

© Cedalo

Bild 4: Aufruf eines REST-Services über eine Tabellenfunktion im Streamsheet.

© Cedalo

Auf dem noch fast leeren Streamsheet in Bild 3 ist auf der linken Seite die Inbox zu sehen. Sie zeigt die Datenpakete aus dem jeweils verknüpften Datenstrom. Beim Aufbau eines neuen Streamsheets beginnt man mit dem Verknüpfen der gelieferten Datenfelder mit den Zellen des Streamsheets. Dies geschieht durch Drag&Drop, man zieht also das Datenfeld (hier das Feld ‚QR Reader 2‘) auf eine Zelle im Streamsheet. In diesem Fall wird der QR-Identcode mit der Zelle C4 verknüpft. Jedes Mal, wenn ein neuer QR-Code gelesen wird, erscheint er automatisch in dieser Zelle. Auf die gleiche Weise werden die anderen über OPC UA oder MQTT gelieferten Datenfelder mit dem Streamsheet verknüpft.

Neben den QR-Codes werden das Gewicht sowie die per Kamera erfassten Abmessungen mit Streamsheet-Zellen verknüpft. Zudem wird die per QR-Code erfasste Werkstück-ID an eine spezielle Streamsheet-Tabellenfunktion übergeben. Diese ist in der Lage, per REST-Request auf das MES-System zuzugreifen. Die Formel dafür in Zelle B14 im Bild 4 sieht wie folgt aus:  

=REST.REQUEST(|MES_REST_Call,“part_id=“&C8,“GET“,C14:H15)

Die Funktion gibt dann das Ergebnis des Aufrufs im Zellbereich C14:H15 aus.

Bild 5: Datenaufbereitung und Aufruf des REST-APIs des KI-Systems.

© Cedalo

Im Ergebnis liefert das MES-System die Auftragsnummer, die geforderte Breite und Länge des Teils, die Angaben zu Temperatur und Luftfeuchtigkeit sowie die üblicherweise akzeptierte Toleranzen. Diese Daten werden zusammen mit den übrigen erfassten Sensordaten im Zellbereich B22:C33 zusammengetragen.

Da Streamsheets neben dem klassischen A1-Referenzierungssystem das im IoT übliche JSON-Datenformat beherrschen, wurde dieser Bereich als JSON-Bereich festgelegt und dadurch automatisch farblich formatiert. Dieser JSON-Bereich wird gemäß Bild 5 als Eingangsgrößen für die Abfrage eines auf Maschine Learning basierenden KI-Systems verwendet. Dies geschieht in Zelle B35 mit der folgenden Formel:

=REST.REQUEST(|REST_Call,“GetResult“,“POST“,C35:E36,,JSON(B22:C33)) 

Bild 6: Steuerung von Pusher, Transportband und Pivotarm über OPC UA, zudem Aufbereitung der Statistikdaten.

© Cedalo

Bild 7: Die Gesamtansicht der Maschine mit drei Streamsheets im Verbund.

© Cedalo

Das Ergebnis des Aufrufs findet sich kompakt im Zellbereich C35:H36. Wichtig ist die Zelle E36, denn sie enthält die Entscheidung, ob das Werkstück die Kontrolle bestanden hat oder nachgearbeitet beziehungsweise aussortiert werden muss.

Interessant ist auch der Zeilenbereich 55 bis 61 in Bild 6. Dort wird die Steuerung der Aktoren modelliert, zudem findet man dort den Datenbereich der schon zuvor abgebildeten Kreis- und ­Säulen-Diagramme. In den Zellen C56:C59 wurde wieder ein JSON-Bereich angelegt. Er enthält in Spalte C die mit IF-Funktionen unterlegten logischen Bedingungen, die das Auslösen des Pushers beziehungsweise des Pivot-Arms auslösen. Zusätzlich wird das Transportband an der Kamera gesteuert, damit das Band immer kurz für die Messung anhält. Damit diese Steuerbefehle an die Maschinenanlage übergeben werden können, muss der Streamsheet-Server ein OPC-UA-Server sein. Dies wird ganz einfach mit der ­Formel

=OPCUA.VARIABLES(OPCUA.JSON(E19:F28)) 

in Zelle C61 erreicht. Streamsheets sind automatisch immer OPC-UA-Client und OPC-UA-Server. 

Bild 7 zeigt schließlich einen Screenshot mit dem bislang beschriebenen Streamsheet sowie zwei weiteren Streamsheets, die Daten per MQTT senden oder empfangen. Diese sind notwendig, um die Daten der Wettersensoren einzulesen und die Statistik der Qualitätsprüfung an eine MQTT-fähige Standard-App auf einem Smartphone weiterzugeben.

Soviel zum Aufbau des Streamsheets. Ein Video der laufenden Stream Machine nebst der passenden Fabriksimulation ist auf der Website von Cedalo zu sehen.

Autor: 
Kristian Raue ist CEO von Cedalo, Kirchzarten.

  • Xing Icon
  • LinkedIn Icon
Anzeige
zurück zur Themenseite
Anzeige

Das könnte Sie auch interessieren

Anzeige

SPS 2022

Tickets, Preise und Eckdaten zur Messe

Vom 08.–10.11.2022 öffnet die Fachmesse für smarte und digitale Automatisierung, die SPS – Smart Production Solutions, nach zweijähriger Pause endlich wieder ihre Tore. Rund 1.000 Aussteller werden erwartet, um ihr Portfolio vor Ort zu präsentieren....

mehr...
Anzeige
Anzeige
Anzeige

Überblick

Die Top-Artikel im Mai 2022

Die Top 10 zeigen deutliche Bewegungen im Markt: Allerhand Premieren wurden verkündet und Automatisierungsunternehmen vermeldeten positive Ergebnisse und Prognosen. Außerdem war das Interesse an Produkttrends ebenso ungebrochen, wie an unserem neuen...

mehr...

Überblick

Die Top-Artikel im April 2022

Haben Sie einen der spannendsten Artikel dieses Monats verpasst? Wir fassen die Crème de la Crème zusammen. Machen Sie sich unter anderem schlau darüber, was Künstliche Intelligenz mit Whiskey zu tun hat oder wie es um die SPS in der Cloud bestellt...

mehr...
Anzeige
Anzeige
Anzeige

Überblick

Die Top-Artikel im März 2022

Erfahren Sie in den meistgelesenen Beiträgen vom März, wie sich Ängste vor Robotern reduzieren lassen, was sich hinter der 'SPS aus der Cloud' verbirgt, warum es nicht immer 'sechs Richtige' sein müssen und außerdem Neues zu TSN in der praktischen...

mehr...

Eplan

Der Marketplace ist live

Eplan stellt einen neuen Service vor: Der Eplan Marketplace ist eine internationale Plattform, die Anwender der CAE-Software und Anbieter von Services miteinander vernetzt.

mehr...
Jetzt Newsletter abonnieren