Sie sind hier: HomeSteuerungsebeneSteuern & Regeln

Engineering: Mit Excel-Know-how komplexe Prozesse modellieren

Fortsetzung des Artikels von Teil 2.

So funktionieren Streamsheets im Detail

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

Verknüpfung des M2M-Datenstroms mit dem Streamsheet-Zellen Bildquelle: © Cedalo

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

Aufruf eines REST-Services Bildquelle: © Cedalo

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

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.

5_Datenaufbereitung und Aufruf des REST-APIs des KI-Systems Bildquelle: © Cedalo

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

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)) 

Steuerung von Pusher, Transportband und Pivotarm über OPC UA Bildquelle: © Cedalo

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

Gesamtansicht der Maschine mit drei Streamsheets Bildquelle: © Cedalo

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

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.