IoT- und PC-basierte Steuerung zur
Nutzung von Fertigungs- und Maschinendaten
Die traditionelle Automatisierungspyramide muss intensiv angepasst werden, um den Anforderungen der Smart Industry gerecht zu werden. Zwei Autoren von Beckhoff und Mathworks zeigen, welchen Weg es dazu gibt.
Von
Dr. Rainer Mümmler, Senior Application Engineer, MathWorks
Dr. Fabian Bause, Produktmanager TwinCAT, Beckhoff Automation
IoT- und PC-basierte Steuerung zur
Nutzung von Fertigungs- und Maschinendaten
Die traditionelle Automatisierungspyramide muss intensiv angepasst werden, um den Anforderungen der Smart Industry gerecht zu werden. Zwei Autoren von Beckhoff und Mathworks zeigen, welchen Weg es dazu gibt.
Von
Dr. Rainer Mümmler, Senior Application Engineer, MathWorks
Dr. Fabian Bause, Produktmanager TwinCAT, Beckhoff Automation
Maschinen, Geräte und Anlagen produzieren von Tag zu Tag mehr Daten, da sie intelligenter werden und immer stärker vernetzt sind. Maschinen und intelligente Module bilden das Internet of Things (IoT) als Grundlage für die Industrie 4.0 oder Smart Industry. Das Versprechen der Smart Industry ist es, diese riesigen Datenmengen in wertvolle Informationen sowie in Geschäfts- und Wettbewerbsvorteile zu verwandeln. Dieses Versprechen kann nur dann erfüllt werden, wenn Daten nicht nur effektiv reduziert und analysiert, sondern auch sinnvoll, zeitnah und sicher zwischen den Beteiligten übertragen und kommuniziert werden.
Um die Nutzung von Daten für Mehrwertdienste zu ermöglichen, bietet ThingSpeak von MathWorks eine sichere Datenaustauschplattform in Kombination mit den leistungsstarken Datenverarbeitungs-, -analyse- und -visualisierungsfunktionen von Matlab und zusätzlichen Toolboxen. Die PC-basierte Steuerung schafft zusätzliche Vorteile, indem sie Informationstechnologie (IT) und operative Technologien (OT) verbindet. Dank der Nutzung von IT-Standardkonzepten sind Vernetzung und Integration mit anderen IT-Systemen recht einfach.
Smart Industry und die Automatisierungspyramide
Die Smart Industry wird vertraute Paradigmen verändern, wie die Form der Automatisierungspyramide, die heute etwa ein Vierteljahrhundert alt ist. Als Modell für die Automatisierung in Fabriken kann die Automatisierungspyramide auf verschiedene Weisen verstanden werden. Unter anderem kann sie als ein Modell für Datenaustausch und -verarbeitung in automatisierten Umgebungen angesehen werden. Darum geht es in diesem Artikel.
Die Automatisierungspyramide besteht aus fünf Schichten, die als Schicht 0 bis 4 bezeichnet werden. Funktionen ähnlicher Art, wie Feldbusse, SPSen, Scada-Leitsysteme, Manufacturing Execution Systeme (MES) und Enterprise Resource Planning (ERP), sind jeweils einer bestimmten Schicht eindeutig zugeordnet (Abbildung 1). Die Pyramide kann in zwei spezifische Abschnitte unterteilt werden. Im unteren Abschnitt befindet sich der Produktionsprozess mit Sensoren, Aktuatoren, Antrieben, Motoren und Werkzeugen in Schicht 0, die die eigentliche Arbeit verrichten, und SPSen in Schicht 1, die den Prozess steuern. Der obere Teil bildet die Unternehmensführungsebene, die sich aus Scada (Schicht 2), MES (Schicht 3) und dem ERP-System (Schicht 4) zusammensetzt.
Fertigungs- oder M2M-Schicht
Die Pyramidenform wurde nicht nur zur Darstellung der Hierarchie gewählt, sondern auch, weil Informationen sich horizontal und vertikal durch die Pyramide bewegen. Unten werden die meisten Daten erzeugt. Die Komponenten in Schicht 0 bieten in harter Echtzeit eine vertikale Kommunikation von verschiedenen Teilen der Maschine mit der Steuerschicht bei Abtastraten im Bereich von bis zu einigen kHz, sodass Feldbusse diese enormen Datenströme übertragen müssen. Als Busse werden hier in der Regel unter anderem EtherCAT, Profinet und Ethernet/IP verwendet.
Die SPSen in Ebene 1 sorgen dafür, dass der geplante Prozess mit den richtigen Schritten zur richtigen Zeit und innerhalb der geforderten Toleranzen abläuft. Horizontal können SPSen entweder in Echtzeit (z. B. zur Synchronisation von Bewegungsprofilen) über das EtherCAT Automation Protocol (EAP) oder über UDP miteinander kommunizieren oder in Nicht-Echtzeit über OPC UA, ADS, TCP/IP und andere Protokolle. Bisher fand die Automatisierung vor allem in den beiden unteren Schichten statt.
Unternehmensebene: B2M
Oberhalb der Fertigung beginnt die Business-to-Machine-Kommunikation (B2M). Diese Kommunikation findet meist nicht in Echtzeit statt, da sie im Allgemeinen auf Switches, Router, Firewalls und andere Infrastrukturgeräte angewiesen ist, die Latenzen verursachen. Traditionell werden Entscheidungen in Richtung der Pyramidenspitze langsamer getroffen und basieren auf zunehmend verdichteten Daten.
Ein aktueller Trend in der Smart Industry ist jedoch die direkte Anbindung der MES- und sogar der ERP-Schicht an SPSen. Anders als in früheren Interpretationen der Pyramide erfassen diese oberen Schichten nun nicht nur Daten von den direkt darunter liegenden Schichten, auf denen sie reduziert und analysiert wurden, sondern können auch Rezeptdaten direkt an SPSen senden und im Gegenzug Statusberichte erhalten. Dies ebnet den Weg für die Flexibilität und die Reaktionszeiten, die die Smart Industry benötigt. Ein solcher Prozess kann beispielsweise durch Remoteprozeduraufrufe (RPCs) und die TwinCAT 3 SOA-SPS (SPS für serviceorientierte Architektur) von Beckhoff Automation realisiert werden.
Automatisierung auf B2M-Ebene
Künftige Produktions- und Wartungsumgebungen müssen immer mehr Anlagen einbeziehen, die auf verschiedene Standorte oder sogar weltweit verteilt sind. Maschinenbauer möchten in Zukunft weltweit betriebene Anlagen vergleichen und bewerten und Wartungsverträge auf der Grundlage von Remote-Funktionalität anbieten. Die Einrichtung automatisierter Prozesse auf den Schichten 2 und 3 und die Vernetzung von Remote-Anlagen sind daher die Zukunft der Automatisierung: Sie ermöglichen Aufwandsreduzierung, umfassendere Datenanalysen sowie Rationalisierung und Beschleunigung der Umsetzung von Aufträgen und Geschäftsentscheidungen in globalen Unternehmen.
Sowohl Produktionsunternehmen als auch Maschinenbauer müssen dies nicht nur effizient erledigen können, sondern auch – was in der Diskussion über die Smart Industry oft vernachlässigt wird – sicher, d. h. ohne Gefährdung des sicheren Betriebs, der Netzwerkintegrität und wertvoller vertraulicher Daten.
Scada als Einstiegspunkt
Ein guter Einstiegspunkt für Ingenieure, Produktionsplaner und Maschinenbauer ist die Scada-Ebene (Schicht 2), auf der alle relevanten Produktionsdaten bereits reduziert ankommen und analysiert werden. Eine einfache Möglichkeit, sich mit externen Netzwerken zu verbinden und mehr Rechenleistung zu nutzen, besteht im Einsatz eines Edge-Geräts. Indem sie dieses auf der Scada-Ebene hinzufügen, können Unternehmen ihre MES- und ERP-Arbeiten an weniger Standorten oder sogar einem einzigen Standort konzentrieren, wo es einfach ist, Maschinenbauern Zugriff auf Daten von der Fertigungs- und SPS-Ebene zu gewähren, nicht aber auf Geschäfts- und Unternehmensdaten.
Ein Ansatz für den Aufbau sicherer Verbindungen zwischen verteilten Fabriken ist der Einsatz von VPNs. Ihre Einrichtung und Wartung bringen jedoch mehrere Herausforderungen mit sich. Schon die Verbindungsherstellung mit einer einzelnen Maschine und der Datenaustausch mit ihr können frustrierend sein und den Betrieb beeinträchtigen.
Eine Alternative ist die Nutzung Cloud-basierter Lösungen, die die Vorteile einer sicheren Datenübertragung (über ein VPN) bieten und die Nachteile der Aufrechterhaltung der Netzwerkverbindung minimieren. Ein verbreiteter Sicherheitsmechanismus ist TLS (Transport Layer Security). Dieses Protokoll wird in der Cloud-basierten Datenkommunikation häufig eingesetzt. Traditionell arbeiten solche Lösungen auf Client-/Server-Basis. Wenn ein Ingenieur mit einer SPS an einem Remote-Standort kommunizieren möchte, fungiert die SPS, die die Daten anbietet, als Server, und die Maschine des Benutzers übernimmt die Rolle eines Clients und stellt eine direkte Verbindung mit der SPS her. Diese Verbindung kann leicht über TLS gesichert werden, aber für derartige Kommunikation müsste in der Firewall ein Port geöffnet werden. Die meisten IT-Administratoren lehnen dies ab, und das Projekt wird aufgegeben, sodass Möglichkeiten zu Datenaustausch und -analysen ungenutzt bleiben.
ThingSpeak als sichere Publisher-/Subscriber-Plattform mit TLS v1.2
ThingSpeak verwendet ein Publisher/Subscriber-Modell, um diese Einschränkungen zu überwinden und dem Anwender zahlreiche zusätzliche Vorteile zu bieten (Abbildung 2). Der ThingSpeak-Server selbst kann in einem sicheren Netzwerk platziert werden und darf eine statische IP-Adresse erhalten. Er fungiert dann als Message Broker, sodass alle ihm zugänglich gemachten Daten nur über eine ausgehende Verbindung gesendet werden. Jeder Subscriber sendet seine Anfragen ebenfalls über eine ausgehende Verbindung und erhält Daten als TCP-Antwort. Dies entspricht sehr genau der Funktionsweise von Webbrowsern und ist IT-Administratoren daher vertraut.
Dieser Ansatz hat eine Reihe von Vorteilen. Erstens müssen alle Beteiligten dieser Kommunikation nur die IP-Adresse des Message Brokers kennen. IP-Informationen der Teilnehmer müssen ausschliesslich für die individuelle Verbindung zum ThingSpeak-Server offengelegt werden. Neue Publisher und Subscriber können einfach hinzugefügt werden. Dies macht die Anwendung flexibel und skalierbar. Da jede Verbindung zum ThingSpeak-Server im Wesentlichen eine ausgehende ist, entstehen aus dieser Lösung keine zusätzlichen Firewall-Anforderungen. Sie kann daher leicht und sicher in bestehende IT-Infrastrukturen integriert werden.
Kanalkonfiguration, Daten-Streaming und integriertes Matlab
Die ThingSpeak-Kommunikation basiert auf Kanälen, deren Konfiguration einfach ist und selbst für neue Anwender nur wenige Minuten in Anspruch nimmt. Kanäle haben Lese- und Schreib-API-Schlüssel und können als öffentlich oder privat festgelegt werden, wobei der Standard privat ist. Jeder Kanal enthält 8 Felder, um 8 Datenströme zu speichern, wie z. B. Sensormesswerte, elektrische Signale oder Temperaturen. Jeder Kanal kann bis zu einmal pro Sekunde aktualisiert werden. Jedes Feld jedes Kanals besitzt eine Standardvisualisierung, die automatisch aktualisiert wird, wenn neue Daten eintreffen, und enthält iFrame-Code, der eine einfache Einbettung in andere Anwendungen ermöglicht.
Um Daten für diese Kanäle zu erfassen, bietet ThingSpeak REST- oder MQTT-APIs, die ThingSpeak Communication Library für Arduino- und Particle-Geräte, ThingSpeak Write-Blöcke in Hardware Support Packages für Arduino und Raspberry und andere gängige Protokolle. Während die REST-API plattformspezifisch ist, ist die MQTT-API allgemein (Abbildung 3). Einzige Voraussetzung für MQTT ist, dass der Anwender das richtige Nutzdatenformat angibt. Dies erleichtert die Verwendung für zahlreiche Anwendungen und Geräte.
Sobald sich Kanaldaten in ThingSpeak befinden, können sie in der Cloud gespeichert oder sofort verarbeitet und visualisiert werden. Wenn der Anwender mit einem MathWorks- oder ThingSpeak-Konto angemeldet ist, bietet ThingSpeak die Möglichkeit, Matlab-Code ohne weitere Lizenz auszuführen. Mehr als ein Dutzend Matlab-Toolboxen bieten Funktionen für Statistik, Analysen, Signalverarbeitung, Machine Learning und mehr. Für Matlab-Skripte kann die Ausführung in bestimmten Zeitabständen geplant werden, sodass aktualisierte Berechnungen und Visualisierungen zu festen Zeiten möglich sind.
Diese Skripte können durch einfaches Kopieren und Einfügen von Matlab-Code in ThingSpeak integriert werden. Im Interesse der Benutzerfreundlichkeit sowie zum Testen kann dieser Code auf jedem Desktop- oder Laptop-PC mit Matlab-Lizenz geschrieben werden. So wird ThingSpeak zu einer natürlichen Cloud-Erweiterung des Matlab-Desktops. Anwender können auch Nachrichten konfigurieren, die ihnen bei Maschinenausfällen, Schwellenwertüberschreitungen von Parametern oder anderen spezifischen Ereignissen per E-Mail oder Twitter gesendet werden, sodass sie nicht nur an der Anlage, sondern auch von einem Remote-Standort aus sofort reagieren können.
Noch einmal die Automatisierungspyramide
Um auf die Automatisierungspyramide zurückzukommen: ThingSpeak allein garantiert natürlich keine erfolgreiche IoT-Umgebung, kann aber sehr einfach Teil einer solchen Umgebung sein. Um dies zu verstehen, müssen wir einen weiteren Blick auf die Datenerfassung und -verarbeitung in der Pyramide werfen.
In der Fertigung werden Live-Daten lokal auf der Steuerung in Echtzeit verarbeitet. Diese Art der Stream-Verarbeitung erfordert eine enorme Bandbreite und somit Feldbusse mit Datenraten von bis zu einigen Gbit/s. Diese bietet Beckhoff mithilfe von Port-Multiplikatoren mit standardmässigem 100 Mbit/s EtherCAT oder mithilfe von EtherCAT G mit 1 Gbit/s Datenrate. Die benötigten Algorithmen können beispielsweise in Matlab und Simulink entwickelt und dann über Matlab Coder und Simulink Coder zusammen mit dem Target für Matlab/Simulink zur nahtlosen Integration in die Automatisierungssoftware TwinCAT 3 von Beckhoff in der SPS integriert werden: Target für Matlab/Simulink und Target für Matlab. Dieser Ansatz sorgt für eine schnelle Verarbeitung mit deterministischen Reaktionszeiten und Latenzen im Bereich von unter einer Millisekunde, die für echtzeitgesteuerte Prozesse erforderlich sind. Anwendungen für diese Art der Datenverarbeitung sind Zustandsüberwachung, Energieüberwachung, Computer-Vision-Anwendungen und Informationskompression.
Die Nachteile der Beschränkung der Datenverarbeitung auf die SPS-Schicht bestehen darin, dass nur ein bestimmter Prozess überwacht und gesteuert werden kann (ohne Kenntnis angrenzender Prozesse, Maschinen oder Anlagen) und dass nur Live-Daten verwendet werden (keine Verlaufsdaten).
Deshalb werden von mehr als einer Steuerung stammende Daten oft auf der Scada-Schicht weiterverarbeitet. In Abbildung 4 ist dies auf dem Edge-Gerät implementiert – zum Beispiel einem Industrie-PC (IPC) von Beckhoff – das die Verbindung mit ThingSpeak bildet. Diese Struktur ermöglicht die Datenstromverarbeitung sowie den Vergleich mit gespeicherten Daten. Sie unterscheidet sich wesentlich von der SPS-Schicht, auf der lediglich Datenströme fliessen und praktisch keine Speicherung stattfindet.
Ein Vorteil der Datenverarbeitung auf einem Edge-Gerät sind die hohe Rechenleistung und der umfangreiche Arbeitsspeicher in Kombination mit der hohen Bandbreite des Gbit-LAN. Dennoch kann es keine deterministischen Reaktionszeiten erreichen und somit nicht dazu dienen, Prozesse in Echtzeit zu steuern. Auch hier kann der benötigte Code in Matlab geschrieben oder aus Simulink-Modellen generiert werden. Die Bereitstellung auf dem Edge-Gerät, z. B. über Matlab Compiler, sorgt für eine schnelle Ausführung von Laufzeitanwendungen (Abbildung 4).
Mit dem TwinCAT 3 Interface für Matlab/Simulink kann eine schnelle Kommunikation zwischen der SPS-Schicht und der Matlab Runtime auf einem Edge-Gerät erreicht werden, die Funktionalität von Client und Server einschliesst. Letztere umfasst die Möglichkeit, in Matlab geschriebene Funktionen als aufrufbare Funktion aus der SPS heraus darzustellen (asynchroner Remoteprozeduraufruf). Typische Anwendungen sind prozessübergreifende Statistiken, die modellbasierte Optimierung, die Anomalieerkennung und wiederum die Informationskompression.
Die gesamte bisher beschriebene Datenverarbeitung findet lokal in einem einzigen, geschlossenen Netzwerk statt. Während dieser Ansatz einen umfassenden Überblick über eine Anlage oder einen Standort geben kann, ermöglicht er keine Überwachung oder Steuerung von Prozessen, die auf verschiedene Standorte verteilt sind. Diese Möglichkeit bietet ThingSpeak.
Ausserhalb der herkömmlichen Pyramide
Da ThingSpeak über ein externes Netzwerk mit dem Edge-Gerät verbunden ist, ist eine Datenreduktion oft aus Gründen der Bandbreite erforderlich. Diese Reduktion kann beispielsweise durch Algorithmen erfolgen, die leicht in die von Matlab Compiler erstellte Laufzeitanwendung integriert werden können. ThingSpeak kann den eingehenden Datenstrom speichern oder sofort verarbeiten. Die Informationsreduktion kann auch innerhalb der SPS mit integrierten Matlab-Funktionen durchgeführt werden und es kann eine direkte Verbindung von der SPS zu ThingSpeak hergestellt werden. Aufgrund von Latenzen und Bandbreitenbegrenzungen kann ThingSpeak keine deterministischen Reaktionszeiten und damit keine Echtzeitsteuerung anbieten.
Die Vorteile sind jedoch enorm. Erstens ist die Integration verschiedener Prozesse einfach. Der Anwender muss lediglich die entsprechenden Kanäle angeben und mit der Datenerfassung beginnen. Auf diese Weise können beliebig viele Einrichtungen mit ThingSpeak verbunden werden. Zweitens ist die Speicherkapazität viel grösser, sodass Verlaufsdaten gespeichert werden können, um Wartungs- und Geschäftsentscheidungen über lange Zeiträume zu unterstützen. Dies ist nicht nur für produzierende Branchen interessant, sondern auch für Anlagenhersteller, die jetzt von einem einzigen Standort aus ihre verkauften Maschinen bei Kunden auf der ganzen Welt überwachen, Wartungsverträge anbieten und die Leistung nach Umgebungsbedingungen vergleichen können (Abbildung 5).
ThingSpeak bietet auch eine serverlose Architektur. Die ThingSpeak-Cloud enthält natürlich Server; diese arbeiten jedoch, ohne dass Anwender sie warten oder aktualisieren müssen.
Wie bereits erwähnt, bietet ThingSpeak integrierte Matlab-Funktionalität und mehrere Toolboxen. Somit können Anwender zahlreiche Rechen-, Analyse-, Statistik-, Steuerungs- und Visualisierungsfunktionen nutzen, um umfassende, globale Analysen ihres Unternehmens, ihrer Maschinenwartung oder ihrer wissenschaftlichen Projekte zu erstellen.
Der Einsatz von Matlab wiederum ermöglicht es ihnen, ihre Aktivitäten in ThingSpeak auf den Desktop auszudehnen, um Algorithmen und Code zu entwickeln oder Echtzeit- und Laufzeitanwendungen bereitzustellen. Dies macht ThingSpeak zu einer effektiven Verbindung zwischen einer umfassenden Modellierungs- und Designplattform einerseits und realen industriellen und wissenschaftlichen Anwendungen andererseits. Ausserdem können Unternehmen ThingSpeak-Funktionalität für Geschäftsanwendungen nutzen.
Zusammenfassung
Die traditionelle Automatisierungspyramide muss intensiv angepasst werden, um den Anforderungen der Smart Industry gerecht zu werden. Insbesondere muss sie für externe Netzwerke geöffnet werden, damit sie Automatisierung für die B2M-Schicht bieten kann und damit ihre Komponenten auf flexiblere Weisen Daten austauschen sowie aktualisierte Algorithmen oder Produktionsaufträge erhalten können.
ThingSpeak in der Cloud bildet eine natürliche Erweiterung des Matlab-Desktops und verbindet ihn mit Umgebungen, die durch die Automatisierungspyramide dargestellt werden können. Die Lösung kann zur Sammlung, Überwachung, Verarbeitung und Nutzung von Daten verwendet werden, die in verschiedenen Umgebungen von der Industrie bis hin zur Wissenschaft erzeugt werden, sowie zur Interaktion mit Maschinen auf allen Ebenen bis hin zu einzelnen Sensoren oder Aktuatoren.
In Produktionsunternehmen können Daten auf der Scada-/MES-/ERP-Schicht analysiert und dann sofort per Messaging genutzt werden, und Algorithmen oder Anwendungen können in Produktionsumgebungen heruntergeladen werden. Da es sich bei ThingSpeak um einen Cloud-Dienst handelt, können Benutzer einfach eine Verbindung zu ThingSpeak herstellen, indem sie lediglich gesicherte ausgehende TLS v1.2-Verbindungen verwenden, ohne Server warten zu müssen.
Beckhoff bietet industrieerprobte, skalierbare Hardware, deren CPU-Leistung für die Datenverarbeitung direkt in der Fertigung und am Edge geeignet ist, sowie die echtzeitfähige Software TwinCAT 3, die OT-Aufgaben wie die Bewegungssteuerung ermöglicht. TwinCAT 3 umfasst benutzerfreundliche Integrationsprodukte für Matlab, Simulink und andere Softwarelösungen. Beispiele sind ADS-Server- und ADS-Client-Funktionalität für Matlab Compiler, die direkte Integration von Matlab und Simulink in die TwinCAT-Echtzeitsoftware sowie die Anbindung an ThingSpeak.
ThingSpeak bietet wichtige, flexible Funktionen für die Smart Industry und das Internet of Things. Basierend auf den Anforderungen an Datenraten, Datenkompression und Rechenleistung kann ThingSpeak entweder als Verarbeitungs- und Visualisierungsplattform mit integrierten Benachrichtigungen dienen oder dazu verwendet werden, vorverarbeitete Daten an den Matlab-Desktop zu übergeben oder Steuerungs-, Überwachungs- und Optimierungsanwendungen auf Remote-Edge-Geräte und SPSen herunterzuladen.
Die Lernkurve für ThingSpeak besteht aus sehr kleinen, effektiven Schritten. Die ersten dieser Schritte dauern nur wenige Minuten und ermutigen die Anwender, mit einfachen Aufgaben anzufangen, ihr Wissen aber schnell auf nützliche Anwendungen mit echtem Mehrwert zu erweitern.
Impressum
Bildquelle: Mathworks / Beckhoff
Publiziert von Technik und Wissen
Weitere Artikel
Veröffentlicht am: