-
HINTERGRUND
-
Die vorliegende Erfindung bezieht sich allgemein auf Computersysteme und insbesondere auf durch einen Computer implementierte Verfahren, Computersysteme und Computerprogrammprodukte, die so konfiguriert und angeordnet sind, dass sie kontinuierliches Überwachen, Vorwarnmeldungen und Steuern von Variablen von Prozessleistungskennzahlen bereitstellen, die selten und zeitlich aggregiert gemessen werden.
-
Unter Fertigung versteht man die Herstellung von Produkten zur Verwendung oder zum Verkauf mithilfe von Arbeitskräften und Maschinen, Werkzeugen und chemischer oder biologischer Verarbeitung oder Formulierung. Zur Fertigung kann eine Reihe von Tätigkeiten gehören, die von der Mechanik bis zur Hochtechnologie reichen, sie wird jedoch auf die Industrieausführung angewendet, bei der Rohstoffe einschließlich Chemikalien aus dem Primärsektor in großem Maßstab in Fertigerzeugnisse umgewandelt werden. Darüber hinaus umfasst ein Fertigungsprozess die Schritte, durch die Rohstoffe in ein Endprodukt umgewandelt werden. Der Fertigungsprozess beginnt mit dem Produktdesign und der Spezifikation der Materialien, aus denen das Produkt hergestellt wird. Diese Materialien werden dann durch Fertigungsprozesse so verändert, dass das erforderliche Teil entsteht. Die moderne Fertigung umfasst alle Zwischenprozesse, die für die Erzeugung und Integration der Komponenten eines Produkts erforderlich sind. Proben oder Produkte können zwar in einer in Zeitreihen aggregierten Weise auf Qualität geprüft werden, Proben oder Produkte des Fertigungsprozesses müssen jedoch auf genauere Weise geprüft werden, um frühzeitig mögliche Probleme vor der normalen Messung feststellen zu können.
-
KURZDARSTELLUNG
-
Ausführungsformen der vorliegenden Erfindung beziehen sich auf durch einen Computer implementierte Verfahren zum Bereitstellen von kontinuierlichem Überwachen, Vorwarnmeldungen und Steuern von Variablen von Prozessleistungskennzahlen, die selten und zeitlich aggregiert gemessen werden. Zu einem nichteinschränkenden Beispiel für ein durch einen Computer implementiertes Verfahren gehört Erfassen von Sensordaten eines Fertigungssystems durch ein Computersystem. Die Sensordaten werden in Intervallen gemessen, die kleiner als ein Zeitintervall einer Zielmessung (target measurement) des Fertigungssystems sind. Die Sensordaten werden so ermittelt, dass sie in einer Beziehung zur Zielmessung stehen. Das durch einen Computer implementierte Verfahren umfasst Durchführen einer synthetischen Zielmessung durch das Computersystem in einem Intervall, das kleiner als das auf der Beziehung beruhende Zeitintervall ist. Das durch einen Computer implementierte Verfahren umfasst des Weiteren automatisches Erzeugen einer Vorwarnmeldung für die Zielmessung durch das Computersystem auf der Grundlage der synthetischen Zielmessung in dem Intervall, das kleiner als das Zeitintervall ist.
-
Zusätzlich zu einem oder mehreren der vorstehend oder nachstehend beschriebenen Merkmale stellt das durch einen Computer implementierte Verfahren Verbesserungen gegenüber bekannten Verfahren zum Überwachen von Variablen von Leistungskennzahlen bereit, die selten und zeitlich aggregiert gemessen werden, indem eine synthetische Zielmessung in einem Intervall durchgeführt wird, das kleiner als bei der normalen Zielmessung ist. Das vorstehend beschriebene durch einen Computer implementierte Verfahren stellt daher wirksam einen Frühwarnhinweis in Bezug auf eine Zielprobe vor dem normalen Messprozess bereit und ermöglicht auf diese Weise ein frühzeitiges Erkennen und Beheben möglicher Probleme. Darüber hinaus unterliegt die Häufigkeit der Zielmessung häufig nicht der Kontrolle des Systementwicklers, weil es beispielsweise zu kostspielig oder unmöglich ist, die Zielmessung schneller durchzuführen.
-
Zusätzlich zu einem oder mehreren der vorstehend oder nachstehend beschriebenen Merkmale oder als Alternative könnten weitere Ausführungsformen der Erfindung umfassen, dass ein oder mehrere dem Fertigungssystem zugehörige Sollwerte als Reaktion auf die Vorwarnmeldung für die Zielmessung auf der Grundlage der synthetischen Zielmessung automatisch überprüft werden.
-
Zusätzlich zu einem oder mehreren der vorstehend oder nachstehend beschriebenen Merkmale stellt das durch einen Computer implementierte Verfahren Verbesserungen gegenüber bekannten Verfahren zum Überwachen von Variablen von Leistungskennzahlen bereit, die selten und zeitlich aggregiert gemessen werden, indem Sollwerte auf der Grundlage der synthetischen Zielmessung angepasst werden, jedoch vor dem normalen Messprozess.
-
Zusätzlich zu einem oder mehreren der vorstehend oder nachstehend beschriebenen Merkmale oder als Alternative könnten weitere Ausführungsformen der Erfindung umfassen, dass eine oder mehrere dem Fertigungssystem zugehörige Steuerungskomponenten als Reaktion auf die Vorwarnmeldung für die Zielmessung auf der Grundlage der synthetischen Zielmessung automatisch überprüft werden.
-
Zusätzlich zu einem oder mehreren der vorstehend oder nachstehend beschriebenen Merkmale stellt das durch einen Computer implementierte Verfahren Verbesserungen gegenüber bekannten Verfahren zum Überwachen von Variablen von Leistungskennzahlen bereit, die selten und zeitlich aggregiert gemessen werden, indem Steuerungskomponenten auf der Grundlage der synthetischen Zielmessung angepasst werden, jedoch vor dem normalen Messprozess.
-
Zusätzlich zu einem oder mehreren der vorstehend oder nachstehend beschriebenen Merkmale oder als Alternative könnten weitere Ausführungsformen der Erfindung umfassen, dass die Vorwarnmeldung als Reaktion darauf erzeugt wird, dass die synthetische Zielmessung außerhalb eines zuvor festgelegten Bereichs liegt.
-
Zusätzlich zu einem oder mehreren der vorstehend oder nachstehend beschriebenen Merkmale stellt das durch einen Computer implementierte Verfahren Verbesserungen gegenüber bekannten Verfahren zum Überwachen von Variablen von Leistungskennzahlen bereit, die selten und zeitlich aggregiert gemessen werden, indem eine Vorwarnmeldung auf der Grundlage der synthetischen Zielmessung ermöglicht wird, die vor dem normalen Messprozess stattfindet.
-
Zusätzlich zu einem oder mehreren der vorstehend oder nachstehend beschriebenen Merkmale oder als Alternative könnten weitere Ausführungsformen der Erfindung umfassen, dass Änderungen am Fertigungssystem vorgenommen werden, damit die synthetische Zielmessung in einem zuvor festgelegten Bereich liegt.
-
Zusätzlich zu einem oder mehreren der vorstehend oder nachstehend beschriebenen Merkmale stellt das durch einen Computer implementierte Verfahren Verbesserungen gegenüber bekannten Verfahren zum Überwachen von Variablen von Leistungskennzahlen bereit, die selten und zeitlich aggregiert gemessen werden, indem Änderungen am Fertigungssystem auf der Grundlage der synthetischen Zielmessung vorgenommen werden, die vor dem normalen Messprozess stattfindet.
-
Zusätzlich zu einem oder mehreren der vorstehend oder nachstehend beschriebenen Merkmale oder als Alternative könnten weitere Ausführungsformen der Erfindung umfassen, dass es sich bei der Zielmessung um eine qualitätsbezogene Variable handelt, die einem physischen Materialprozess-Abflussstrom des Fertigungssystems entspricht. Die Zielmessung weist einen nicht unmittelbaren und zeitlich aggregierten Charakter aufgrund des Mischens gleicher Probenmengen in einem Behältnis auf, wobei die gleichen Probenmengen zu mehreren Zeitpunkten während des Zeitintervalls gesammelt und am Ende des Zeitintervalls gemessen werden, wodurch sich die Zielmessung ergibt.
-
Zusätzlich zu einem oder mehreren der vorstehend oder nachstehend beschriebenen Merkmale stellt das durch einen Computer implementierte Verfahren Verbesserungen gegenüber bekannten Verfahren zum Überwachen von Variablen von Leistungskennzahlen bereit, die selten und zeitlich aggregiert gemessen werden, indem die synthetische Zielmessung als eine unmittelbare Messung durchgeführt wird, die vor der nicht unmittelbaren und zeitlich aggregierten Zielmessung vorgenommen wird.
-
Zusätzlich zu einem oder mehreren der vorstehend oder nachstehend beschriebenen Merkmale oder als Alternative könnten weitere Ausführungsformen der Erfindung umfassen, dass es sich bei der Zielmessung um eine zusammengesetzte Messung einer aggregierten Gesamtmenge einer Probe handelt. Bei der synthetischen Zielmessung handelt es sich um einen erzeugten Wert für einen Zeitpunkt auf der Grundlage der Sensordaten und es handelt sich nicht um eine Messung der aggregierten Gesamtmenge der Probe, wobei die synthetische Zielmessung einen Zustand einer einzelnen Probenmenge zu dem Zeitpunkt innerhalb des Zeitintervalls darstellt.
-
Zusätzlich zu einem oder mehreren der vorstehend oder nachstehend beschriebenen Merkmale stellt das durch einen Computer implementierte Verfahren Verbesserungen gegenüber bekannten Verfahren zum Überwachen von Variablen von Leistungskennzahlen bereit, die selten und zeitlich aggregiert gemessen werden, indem sich nicht auf die zusammengesetzte Messung der aggregierten Gesamtmenge der Probe gestützt wird. Die synthetische Zielmessung verwendet vielmehr Sensordaten, um einen Zustand einer einzelnen Probenmenge zu einem bestimmten Zeitpunkt darzustellen.
-
Andere Ausführungsformen der vorliegenden Erfindung implementieren Merkmale des vorstehend beschriebenen Verfahrens in Computersystemen und Computerprogrammprodukten.
-
Zusätzliche technische Merkmale und Vorteile werden durch die Techniken der vorliegenden Erfindung umgesetzt. Ausführungsformen und Aspekte der Erfindung werden hier im Einzelnen beschrieben und als Teil des beanspruchten Gegenstands angesehen. Zu einem besseren Verständnis sei auf die Beschreibung und die Zeichnungen verwiesen.
-
KURZBESCHREIBUNG DER ZEICHNUNGEN
-
Die Besonderheiten der hier beschriebenen ausschließlichen Rechte werden in den Ansprüchen am Ende der Beschreibung besonders hervorgehoben und ausdrücklich beansprucht. Das Vorstehende und andere Merkmale und Vorteile der Ausführungsformen der Erfindung ergeben sich aus der nachfolgenden ausführlichen Beschreibung in Verbindung mit den beigefügten Zeichnungen, in denen:
- 1 ein Blockschaubild eines beispielhaften Computersystems zur Verwendung in Verbindung mit einer oder mehreren Ausführungsformen der vorliegenden Erfindung zeigt;
- 2 gemäß einer oder mehreren Ausführungsformen der vorliegenden Erfindung ein Blockschaubild eines Systems zum Bereitstellen von kontinuierlichem Überwachen, Vorwarnmeldungen und Steuern von Variablen von Prozessleistungskennzahlen zeigt, die selten und zeitlich aggregiert gemessen werden;
- 3 weitere Einzelheiten eines Computersystems in 2 gemäß einer oder mehreren Ausführungsformen der vorliegenden Erfindung zeigt;
- 4 gemäß einer oder mehreren Ausführungsformen der vorliegenden Erfindung einen Ablaufplan eines durch einen Computer implementierten Prozesses für kontinuierliches Überwachen, Vorwarnmeldungen und Steuern von Variablen von Prozessleistungskennzahlen zeigt, die selten und zeitlich aggregiert in einem Fertigungssystem gemessen werden;
- 5 eine Darstellung zum Modellieren einer unmittelbaren Qualität einer unbekannten latenten Messung in einem Messsystem gemäß einer oder mehreren Ausführungsformen der vorliegenden Erfindung zeigt;
- 6 eine beispielhafte Darstellung einer Modellarchitektur für ein Modell gemäß einer oder mehreren Ausführungsformen der Erfindung zeigt;
- 7 gemäß einer oder mehreren Ausführungsformen der vorliegenden Erfindung ein Ablaufplan eines durch einen Computer implementierten Verfahrens zum Bereitstellen von kontinuierlichem Überwachen, Vorwarnmeldungen und Steuern von Variablen von Prozessleistungskennzahlen ist, die selten und zeitlich aggregiert gemessen werden;
- 8 eine Cloud-Computing-Umgebung gemäß einer oder mehreren Ausführungsformen der vorliegenden Erfindung zeigt; und
- 9 Abstraktionsmodellschichten gemäß einer oder mehreren Ausführungsformen der vorliegenden Erfindung zeigt.
-
AUSFÜHRLICHE BESCHREIBUNG
-
Eine oder mehrere Ausführungsformen der vorliegenden Erfindung stellen durch einen Computer implementierte Verfahren, Computersysteme und Computerprogrammprodukte zum Ermitteln und/oder Ableiten einer synthetischen/geschätzten Qualitätsmessung einer Zielprobe von verfügbaren Sensordaten bereit. Eine oder mehrere Ausführungsformen führen die synthetische/geschätzte Qualitätsmessung einer Zielprobe von verfügbaren Sensordaten vor der normalen Messung von Interesse durch. Eine oder mehrere Ausführungsformen der vorliegenden Erfindung stellen daher einen frühen Hinweis in Bezug auf eine Zielprobe vor dem normalen Messprozess bereit und ermöglichen auf diese Weise ein frühzeitiges Erkennen und Beheben möglicher Probleme.
-
Die Messung von Interesse, bei der es sich um die Qualitätsmessung handelt, wird in regelmäßigen Abständen mit einer gleichbleibenden Häufigkeit erfasst. Es ist bekannt, wie die Zielprobe, die Gegenstand der Zielmessung ist, erfasst und gemessen wird. Das System von Interesse, z.B. ein Fertigungssystem, ist mit einer Vielfalt von Sensoren ausgestattet, die Daten mit einer viel größeren Häufigkeit erfassen als die zeitlich aggregierte Qualitätsmessung der Zielprobe. Eine oder mehrere Ausführungsformen der Erfindung verbessern die Aktualität des Wissens über die Ausgabequalität der Zielprobe durch die synthetische/geschätzte Qualitätsmessung, ohne dass weitere Messungen im Fertigungssystem durchgeführt werden müssen.
-
Mit Bezug nunmehr auf 1 wird allgemein ein Computersystem 100 gemäß einer oder mehreren Ausführungsformen der Erfindung gezeigt. Bei dem Computersystem 100 kann es sich um eine elektronische Computerstruktur handeln, die eine beliebige Anzahl und Kombination von Datenverarbeitungseinheiten und Netzwerken aufweist und/oder einsetzt, die wie hier beschrieben verschiedene Datenübertragungstechnologien nutzen. Das Computersystem 100 kann leicht skalierbar, erweiterbar und modular sein und die Fähigkeit haben, zu verschiedenen Diensten zu wechseln oder einige Funktionen unabhängig von anderen neu zu konfigurieren. Bei dem Computersystem 100 kann es sich z.B. um einen Server, einen Desktop-Computer, einen Laptop-Computer, einen Tablet-Computer oder ein Smartphone handeln. In einigen Beispielen kann das Computersystem 100 ein Cloud-Computing-Knoten sein. Das Computersystem 100 kann im allgemeinen Kontext von durch ein Computersystem ausführbaren Anweisungen beschrieben werden, z.B. Programmmodule, die von einem Computersystem ausgeführt werden. Im Allgemeinen können Programmmodule Routinen, Programme, Objekte, Komponenten, Logik, Datenstrukturen usw. enthalten, die bestimmte Aufgaben durchführen oder bestimmte abstrakte Datentypen implementieren. Das Computersystem 100 kann in verteilten Cloud-Computing-Umgebungen eingesetzt werden, wo die Aufgaben von entfernt angeordneten Verarbeitungseinheiten durchgeführt werden, die über ein Datenübertragungsnetzwerk verbunden sind. In einer verteilten Cloud-Computing-Umgebung können sich Programmmodule sowohl auf lokalen als auch auf entfernt angeordneten Computersystem-Speichermedien befinden, darunter Speichereinheiten mit Arbeitsspeichern.
-
Wie in 1 dargestellt, weist das System 100 eine oder mehrere Zentraleinheiten (CPUs) 101a, 101b, 101c usw. auf (die zusammen oder einzeln allgemein als Prozessor(en) 101 bezeichnet werden). Bei den Prozessoren 101 kann es sich um einen Einkernprozessor, einen Mehrkernprozessor, ein Datenverarbeitungscluster oder eine beliebige Anzahl anderer Konfigurationen handeln. Die Prozessoren 101, die auch als Verarbeitungsschaltkreise bezeichnet werden, sind über einen Systembus 102 mit einem Systemspeicher 103 und verschiedenen anderen Komponenten verbunden. Der Systemspeicher 103 kann einen Nur-Lese-Speicher (ROM) 104 und einen Direktzugriffsspeicher (RAM) 105 enthalten. Der ROM 104 ist mit dem Systembus 102 verbunden und kann ein grundlegendes Eingabe-/Ausgabesystem (BIOS) oder dessen Nachfolger wie Unified Extensible Firmware Interface (UEFI) enthalten, das bestimmte Grundfunktionen des Computersystems 100 steuert. Bei dem RAM handelt es sich um einen Lese-/Schreibspeicher, der mit dem Systembus 102 verbunden ist, um von den Prozessoren 101 verwendet werden zu können. Der Systemspeicher 103 stellt temporären Speicherplatz für Operationen der Anweisungen während des Betriebs bereit. Der Systemspeicher 103 kann einen Direktzugriffsspeicher (RAM), einen Nur-Lese-Speicher, einen Flash-Speicher oder jedes andere geeignete Speichersystem umfassen.
-
Das Computersystem 100 weist einen Eingabe-/Ausgabe(E/A)-Adapter 106 und einen Datenübertragungsadapter 107 auf, der mit dem Systembus 102 verbunden ist. Bei dem E/A-Adapter 106 kann es sich um einen Small-Computer-System-Interface(SCSI)-Adapter handeln, der mit einer Festplatte 108 und/oder anderen ähnlichen Komponenten Daten austauscht. Der E/A-Adapter 106 und die Festplatte 108 werden hier zusammen als Massenspeicher 110 bezeichnet.
-
Im Massenspeicher 110 kann eine Software 111 zum Ausführen im Computersystem 100 gespeichert werden. Der Massenspeicher 110 stellt ein Beispiel eines physischen Speichermediums dar, das von den Prozessoren 101 gelesen werden kann, wobei die Software 111 als Anweisungen gespeichert ist, die von den Prozessoren 101 ausgeführt werden, um das Computersystem 100 zu veranlassen, wie hier mit Bezug auf die verschiedenen Figuren beschrieben zu funktionieren. Beispiele für ein Computerprogrammprodukt und die Ausführung dieser Anweisung werden hier im Einzelnen beschrieben. Der Datenübertragungsadapter 107 verbindet den Systembus 102 mit einem Netzwerk 112, bei dem es sich um ein externes Netzwerk handeln kann, das das Computersystem 100 in die Lage versetzt, mit anderen Systemen dieser Art Daten auszutauschen. In einer Ausführungsform speichert ein Teil des Systemspeichers 103 und des Massenspeichers 110 gemeinsam ein Betriebssystem, bei dem es sich um ein beliebiges geeignetes Betriebssystem handeln kann, um die Funktionen der verschiedenen in 5 gezeigten Komponenten zu koordinieren.
-
Zusätzliche Eingabe-/Ausgabeeinheiten sind in der Darstellung über einen Anzeigenadapter 115 und einen Schnittstellenadapter 116 mit dem Systembus 102 verbunden. In einer Ausführungsform können die Adapter 106, 107, 115 und 116 mit einem oder mehreren E/A-Bussen verbunden sein, die über eine Buszwischenbrücke (nicht dargestellt) mit dem Systembus 102 verbunden sind. Eine Anzeige 119 (z.B. ein Bildschirm oder ein Anzeigemonitor) ist über einen Anzeigenadapter 115 mit dem Systembus 102 verbunden, wobei der Anzeigenadapter eine Grafiksteuereinheit enthalten kann, um die Leistung grafikintensiver Anwendungen zu verbessern, sowie eine Videosteuereinheit. Über den Schnittstellenadapter 116, der zum Beispiel einen Super-E/A-Chip enthalten kann, der mehrere Einheitenadapter in einer einzigen integrierten Schaltung integriert, können eine Tastatur 121, eine Maus 122, ein Lautsprecher 123 usw. mit dem Systembus 102 verbunden sein. Zu geeigneten E/A-Bussen zum Verbinden von Peripherieeinheiten wie Festplattensteuereinheiten, Netzwerkadaptern und Grafikadaptern gehören in der Regel gemeinsame Protokolle wie Peripheral Component Interconnect (PCI) und Peripheral Component Interconnect Express (PCIe). Wie in 1 konfiguriert, verfügt das Computersystem 100 somit über eine Verarbeitungsfunktion in Form der Prozessoren 101 sowie über eine Speicherfunktion mit dem Systemspeicher 103 und dem Massenspeicher 110, Eingabemittel wie die Tastatur 121 und die Maus 122 sowie über eine Ausgabefunktion mit dem Lautsprecher 123 und der Anzeige 119.
-
In einigen Ausführungsformen kann der Datenübertragungsadapter 107 Daten über eine beliebige geeignete Schnittstelle oder ein beliebiges Protokoll übertragen, z.B. über das Internet Small Computer Systems Interface. Bei dem Netzwerk 112 kann es sich unter anderem um ein Mobilfunknetz, ein Funknetz, ein Weitverkehrsnetzwerk (WAN), ein lokales Netzwerk (LAN) oder das Internet handeln. Eine externe Datenverarbeitungseinheit kann über das Netzwerk 112 mit dem Computersystem 100 verbunden werden. In einigen Beispielen kann es sich bei einer externen Datenverarbeitungseinheit um einen externen Webserver oder einen Cloud-Computing-Knoten handeln.
-
Es versteht sich, dass das Blockschaubild von 1 nicht darauf hinweisen soll, dass das Computersystem 100 alle in 1 dargestellten Komponenten enthält. Das Computersystem 100 kann vielmehr weniger oder zusätzliche, in 1 nicht dargestellte Komponenten enthalten (z.B. zusätzliche Speicherkomponenten, integrierte Steuereinheiten, Module, zusätzliche Netzwerkschnittstellen usw.). Darüber hinaus können die hier beschriebenen Ausführungsformen in Bezug auf das Computersystem 100 mit jeder geeigneten Logik implementiert werden, wobei die Logik, auf die hier Bezug genommen wird, jede geeignete Hardware (z.B. einen Prozessor, eine integrierte Steuereinheit oder eine anwendungsspezifische integrierte Schaltung), Software (z.B. unter anderem eine Anwendung), Firmware oder eine geeignete Kombination aus Hardware, Software und Firmware in verschiedenen Ausführungsformen umfassen kann.
-
2 ist gemäß einer oder mehreren Ausführungsformen der vorliegenden Erfindung ein Blockschaubild eines Systems 200 zum Bereitstellen von kontinuierlichem Überwachen, Vorwarnmeldungen und Steuern von Variablen von Prozessleistungskennzahlen, die selten und zeitlich aggregiert gemessen werden. Das System 200 umfasst ein oder mehrere Computersysteme 202, die mit einem Fertigungssystem 230 verbunden sind. Das Fertigungssystem 230 kann mithilfe der Steuerungstheorie arbeiten, die dynamische Steuerungssysteme in technischen Prozessen und Maschinen verwendet. Das Fertigungssystem 230 kann automatische Prozesssteuerung in kontinuierlichen Produktionsprozessen verwenden. Bei der automatischen Prozesssteuerung handelt es sich um eine Kombination aus Steuerungstechnik und Disziplinen der chemischen Verfahrenstechnik, die industrielle Steuerungssysteme verwendet, um ein gleichbleibendes, wirtschaftliches und sicheres Produktionsniveau zu erreichen, und die in vielen Industriezweigen wie der Ölraffination, der Zellstoff- und Papierherstellung, der chemischen Verarbeitung, in Kraftwerken usw. eingesetzt wird. Das Fertigungssystem 230 kann verschiedene Systemkomponenten 232 umfassen, wobei die Systemkomponenten 232 verschiedene Ausrüstungsteile darstellen, die wie dem Fachmann bekannt ist zum Umwandeln der Eingabe in die Zielausgabe verwendet werden. Zu den Systemkomponenten 232 können elektrische Ausrüstungsgegenstände, mechanische Ausrüstungsgegenstände, chemische Ausrüstungsgegenstände usw. gehören. Die Systemkomponenten 232 stellen die Maschinen oder Anlagen dar, die zum Funktionieren als Fertigungssystem 230 und/oder Anlage erforderlich sind.
-
Das Fertigungssystem 230 umfasst die Steuerungskomponenten 234 (oder Steuereinheiten), die zum Steuern der Funktionsweise der Systemkomponenten 232 verwendet werden. Die Steuerungskomponenten 234 beziehen sich auf alles, was gesteuert werden kann, um im Fertigungssystem 230 geändert und/oder modifiziert zu werden. Zu den beispielhaften Steuerungskomponenten 234 können Stellantriebe, Steuerungswerte, Relais, Schalter usw. gehören. Im Fertigungssystem 230 werden Sollwerte 236 verwendet. Bei einem Sollwert handelt es sich um den gewünschten oder Zielwert für eine wesentliche Variable oder einen Prozesswert des Fertigungssystems 230. Zu den Steuerungskomponenten 234 können ein oder mehrere Sollwerte 236 gehören, die den Betrieb der jeweiligen Steuerungskomponenten 234 steuern. Die Sollwerte 236 können modifiziert werden, um den Betrieb und die Einstellungen der Steuerungskomponenten 234 zu ändern. Im Fertigungssystem 230 gibt es ein oder mehrere Steuerungssysteme 240. Die Steuerungssysteme 240 werden zum Steuern der Funktionsweise und des Betriebs der Steuerungskomponenten 234 und damit zum Steuern der Funktionsweise und des Betriebs der Systemkomponenten 232 verwendet. Die Steuerungssysteme 240 können verwendet werden, um die Sollwerte 236 für das Fertigungssystem 230 zu ändern. Ein Steuerungssystem verwaltet, steuert, lenkt und/oder regelt das Verhalten anderer Einheiten oder Systeme (z.B. der Steuerungskomponenten 234) mithilfe von Steuerungskreisläufen. Bei der kontinuierlich modulierten Steuerung wird eine Rückmelde-Steuerungseinheit verwendet, um einen Prozess oder einen Betrieb automatisch zu steuern. Das Steuerungssystem vergleicht den Wert oder Status der gesteuerten Prozessvariablen mit dem gewünschten Wert oder Sollwert und wendet den Unterschied als Steuerungssignal an, um die Prozessvariablenausgabe der Anlage (z.B. Fertigungssystem 230) auf denselben Wert wie den Sollwert zu bringen.
-
Im Fertigungssystem 230 wird eine Qualitätsmessung 250 des Zielprodukts vorgenommen, das sich in einem beliebigen Stadium der Herstellung befinden kann. Bei der Qualitätsmessung 250 handelt es sich um die Messung von Interesse, und die Qualitätsmessung 250 wird in regelmäßigen Abständen mit einer gleichbleibenden Häufigkeit von einer Ausgabe einer bestimmten Systemkomponente 232 erfasst. Die Qualitätsmessungen können zum Beispiel alle „T“ Stunden (z.B. T=12 Stunden, 24 Stunden, 1 Woche usw.) vorgenommen werden. In der Verarbeitungsindustrie muss die Qualität der Ausgabeprodukte aufrechterhalten werden, dazu kann gehören, dass das Einhalten gesetzlicher Vorgaben, darunter die von einer staatlichen Behörde festgelegten staatlichen Standards, sichergestellt wird. Dies geschieht häufig durch regelmäßiges Durchführen kostspieliger und zeitintensiver Labormessungen auf der Grundlage einer im Laufe der Zeit gesammelten Gesamtprobe. Je nach Ergebnis der Labormessung kann das Zielprodukt von unzureichender Qualität sein, und/oder es kann gegen die gesetzlichen Vorgaben verstoßen. In beiden Fällen handelt es sich um einen kostspieligen Fehler. Die Qualitätsmessung 250 wird daher vorgenommen, um die gegebene Anforderung zu erfüllen. Bei der Qualitätsmessung 250 handelt es sich um eine echte Gesamtmessung. Die Qualitätsmessung 250 beruht zum Beispiel auf der Kombination kleiner Mengen, die im Laufe der Zeit gesammelt werden (z.B. von einer Systemkomponente 232) und in demselben Probenbehälter 252 zusammengefasst werden. Eine einzelne Qualitätsmessung 250 setzt sich daher aus zeitlich aggregierten Messungen der Probe/des Zielprodukts im Probenbehälter 252 zusammen, wobei es sich bei der Probe im Probenbehälter 252 um eine zeitlich aggregierte Probe handelt. Die anschließende Messung der zeitlich aggregierten Menge im Probenbehälter 252 führt ferner zu einer zusätzlichen Verzögerung.
-
Das Fertigungssystem 230 ist mit einer Vielfalt von Sensoren 238 ausgestattet, die mit den Systemkomponenten 232 verbunden sind, und die Sensoren 238 messen (d.h. erfassen) Daten mit einer viel größeren Häufigkeit als bei der Messung der Qualitätsmessung 250. Die Steuerungssysteme 240 können mit den Sensoren 238 verbunden werden und die Messungen (d.h. Sensordaten) von den Sensoren 238 empfangen. Die Sensormessungen können alle T'-Zeitabschnitte (z.B. Minuten) durchgeführt werden, wobei T' kleiner als T ist. Die Sensormessungen von den Sensoren 238 könnten zum Beispiel alle fünf Minuten, zehn Minuten usw. durchgeführt/vorgenommen werden. Die Sensormessungen von den Sensoren 238 könnten jede Stunde, alle zwei Stunden usw. durchgeführt/vorgenommen werden. Bei den Sensormessungen der Sensoren 238 wird nicht die tatsächliche Probe gemessen, die im Probenbehälter 252 gesammelt wird. Die Sensoren 238 können vielmehr Messungen und Ablesungen verschiedener Ausrüstungsteile, Materialien, Ströme usw. in verschiedenen/unterschiedlichen Phasen des Fertigungsprozesses bereitstellen, um die Probe im Probenbehälter 252 zu erzeugen. Die Sensormessungen und Ablesungen können sich auf jede Art von messbarem Wert im und/oder im Zusammenhang mit dem Fertigungssystem 230 beziehen. Die Sensormessungen und Ablesungen können zum Beispiel die Qualität von Erz, Temperatur, Dichte, Durchflussmenge, Spannung, Stromstärke, Geschwindigkeit, Umdrehungen pro Minute, Vibration usw. betreffen.
-
Ein Computersystem 202 ist mit dem Fertigungssystem 230 verbunden. Das Computersystem 202 kann mit den Steuerungssystemen 240, den Sensoren 238, den Steuerungskomponenten 234 und/oder den Sollwerten 236 verbunden sein. In einer oder mehreren Ausführungsformen können die Steuerungssysteme 240 eine oder mehrere Steuerungsanwendungen 242 umfassen, die so konfiguriert sind, dass sie mit den Softwareanwendungen 204 des Computersystems 202 eine Schnittstelle bilden. Die Steuerungsanwendungen 242 können wie der Fachmann weiß des Weiteren Systemkomponenten, die Steuerungskomponenten 234, die Sollwerte 236 und die Sensoren 238 überwachen und steuern. Weitere Einzelheiten des Computersystems 202 sind in 3 dargestellt. In einer oder mehreren Ausführungsformen kann das Computersystem 202 in dem Steuerungssystem 240 implementiert und/oder in dieses integriert werden. Die Softwareanwendungen 204 können als Software 111 implementiert werden, die wie in 1 beschrieben auf einem oder mehreren Prozessoren ausgeführt wird. In ähnlicher Weise können die Steuerungsanwendungen 242 mithilfe der Software 111 implementiert werden, die so konfiguriert ist, dass sie auf einem oder mehreren Prozessoren 101 ausgeführt wird. Die Elemente des Computersystems 100 können in dem Computersystem 202 und den Steuerungssystemen 240 verwendet und/oder in diese integriert werden.
-
4 zeigt gemäß einer oder mehreren Ausführungsformen der Erfindung einen Ablaufplan eines durch einen Computer implementierten Verfahrens 400 zum Bereitstellen von kontinuierlichem Überwachen, Vorwarnmeldungen und Steuern von Variablen von Prozessleistungskennzahlen, die selten und zeitlich aggregiert in einem Fertigungsprozess gemessen werden. Der durch einen Computer implementierte Prozess 400 in 4 kann mit dem in 2 dargestellten System 200 und dem Computersystem 202 in 3 implementiert werden. Der durch einen Computer implementierte Prozess 400 wird daher mit Bezug auf das System 200 und die Computersysteme 202 in 2 beschrieben.
-
In Block 402 sind die Softwareanwendungen 204 des Computersystems 202 so konfiguriert, dass sie Sensordaten der Sensoren 238 im Fertigungssystem 230 erfassen. Die Sensordaten der Sensoren 238 werden mit einer größeren Häufigkeit gemessen (z.B. in kürzeren Intervallen oder zu einer kürzeren Zeit T') als bei der Messung der Qualitätsmessung 250 (z.B. in einem Intervall oder zu einer Zeit „T“). In einer oder mehreren Ausführungsformen können die Softwareanwendungen 204 die Sensordaten der Sensoren 238 von der Steuerungsanwendung 242 der Steuerungssysteme 240 empfangen. Die Sensordaten der Sensoren 238 können an die Softwareanwendungen 204 des Computersystems 202 gesendet und/oder von diesen abgerufen werden. In einer oder mehreren Ausführungsformen können die Steuerungssysteme 240 Sensordaten für die jeweiligen Sensoren 238 zwischenspeichern und/oder speichern, bevor die Sensordaten an das Computersystem 202 gesendet werden. In einer oder mehreren Ausführungsformen können die Softwareanwendungen 204 die Sensordaten der Sensoren 238 in Echtzeit und/oder nahezu Echtzeit empfangen.
-
In Block 404 sind die Softwareanwendungen 204 des Computersystems 202 so konfiguriert, dass sie die Sensordaten der Sensoren 238 in Blöcke von Sensordaten (z.B. Tensor-Abschnitte) aufteilen/unterteilen, wobei die verschiedenen Blöcke verschiedenen Gruppen/Zeiträumen für die von den Sensoren 238 vorgenommenen Messungen entsprechen. In Block 406 sind die Softwareanwendungen 204 des Computersystems 202 so konfiguriert, dass sie die Sensordatenblöcke (z.B. Tensor-Abschnitte) für verschiedene Gruppen/Zeiträume als Eingabe für ein Modell 306 verwenden, das so konfiguriert ist, dass es eine synthetische/geschätzte Qualitätsmessung für das Fertigungssystem 230 ermittelt. Die synthetische/geschätzte Qualitätsmessung wird mit einer größeren Häufigkeit durchgeführt als die Messung der Qualitätsmessung 250. Mit anderen Worten: Die synthetische/geschätzte Qualitätsmessung wird häufiger durchgeführt als die für die Qualitätsmessung 250 vorgenommene Messung. Diese synthetische/geschätzte Qualitätsmessung weist auch eine geringere Verzögerung als die Qualitätsmessung 250 auf, bei der es sich um eine physische Messung handelt.
-
In Block 408 sind die Softwareanwendungen 204 des Computersystems 202 so konfiguriert, dass sie prüfen, ob die synthetische/geschätzte Qualitätsmessung in einem normalen Bereich für das Fertigungssystem 230 liegt. Der normale Bereich wird im Voraus festgelegt. Der normale Bereich kann eine Untergrenze und eine Obergrenze haben, und die synthetische/geschätzte Qualitätsmessung soll innerhalb der Unter- und der Obergrenze bleiben, um als normal zu gelten. Liegt die synthetische/geschätzte Qualitätsmessung im normalen Bereich („JA“), geht der Ablauf weiter zu Block 402 zum kontinuierlichen Überwachen. Zum kontinuierlichen Überwachen gehört ein kontinuierliches Durchführen von synthetischen/geschätzten Qualitätsmessungen. Liegt die synthetische/geschätzte Qualitätsmessung außerhalb des normalen Bereichs („NEIN“), sind die Softwareanwendungen 204 so konfiguriert, dass sie eine Vorwarnmeldung (z.B. Benachrichtigung 280) auf der Grundlage einer oder mehrerer synthetischer/geschätzter Qualitätsmessungen ausgeben, die außerhalb des normalen Bereichs liegen. Die Softwareanwendungen 204 können zum Beispiel eine Warnmeldung an die Steuerungsanwendung 242 des Steuerungssystems 240 und an einen Bediener ausgeben. Bei der Vorwarnmeldung handelt es sich um einen frühzeitigen Hinweis darauf, dass ein Problem im Fertigungssystem 230 vorliegt, darunter ein mögliches Problem mit der Probe im Probenbehälter 252, und zwar vor dem Zeitraum „T“, in dem die Qualitätsmessung 250 der Probe im Probenbehälter 252 vorgenommen wird.
-
In Block 410 sind die Softwareanwendungen 204 des Computersystems 202 so konfiguriert, dass veranlasst wird, einen oder mehrere Sollwerte 236 und/oder eine oder mehrere Steuerungskomponenten 234 im Fertigungssystem 230 zu ändern. In einer oder mehreren Ausführungsformen könnten die Softwareanwendungen 204 eine Änderung eines oder mehrerer Sollwerte 236 und/oder einer oder mehrerer Steuerungskomponenten 234 bewirken, anweisen und/oder anfordern. In einer oder mehreren Ausführungsformen können die Softwareanwendungen 204 eine Anforderung (und/oder Benachrichtigung 280) an die Steuerungssysteme 240 übertragen, sodass die Anforderung die Steuerungsanwendung 242 des Steuerungssystems 240 veranlasst, die Sollwerte 236 und/oder Steuerungskomponenten 234 zu ändern. In einer oder mehreren Ausführungsformen können die Softwareanwendungen 204 veranlassen, dass ein Wert, eine Operation und/oder eine Funktion, die einem oder mehreren Sollwerten 236 und/oder einer oder mehreren Steuerungskomponenten 234 zugehörig sind, aufgrund der Benachrichtigung 280 erhöht und/oder verringert werden.
-
Der Betrieb des Fertigungssystems 230 wird daher verbessert, und Fehler können auf der Grundlage der Benachrichtigung 280 vermieden werden, bei der es sich um die Vorwarnmeldung handelt. Die synthetischen/geschätzten Qualitätsmessungen werden mithilfe des Modells 306 in einem kürzeren Intervall und/oder einem kürzeren Zeitraum als die Messung der Qualitätsmessung 250 durchgeführt. Die synthetischen/geschätzten Qualitätsmessungen, die unter Verwendung der Sensordaten der Sensoren 238 durchgeführt werden, stellen einen frühzeitigen Hinweis über die im Probenbehälter 252 gesammelte Zielprobe bereit, und zwar vor der normalen Qualitätsmessung 250. Wie hier erwähnt, handelt es sich bei der Qualitätsmessung 250 um eine zeitlich verzögerte Gesamtmessung auf der Grundlage der im Probenbehälter 252 gesammelten Probe, während es sich bei der synthetischen/geschätzten Qualitätsmessung um eine unmittelbare Darstellung der Probe zu einem beliebigen Zeitpunkt handelt, der kleiner ist als die Zeit „T“ zum Vornehmen/Messen der Qualitätsmessung 250. Die Softwareanwendungen 204 sind daher so konfiguriert, dass sie unter Verwendung der synthetischen/geschätzten Qualitätsmessungen zu verschiedenen Zeitpunkten genauere Informationen über die tatsächliche Qualitätsmessung 250 erzeugen/ableiten, um frühzeitig mögliche Probleme im Fertigungssystem 230 erkennen und dadurch Abhilfe bereitstellen zu können.
-
5 ist ein Blockschaubild zum Modellieren der unmittelbaren Qualität einer unbekannten latenten Messung im Fertigungssystem 230 gemäß einer oder mehreren Ausführungsformen der Erfindung. Die unbekannte latente Messung wird verwendet, um die synthetische/geschätzte Qualitätsmessung durchzuführen. Bei dem Modell 306 handelt es sich um ein physisch gestütztes Modell, das sich auf das Fertigungssystem 230 bezieht. In 5 sind die einzelnen Messungen/Ablesungen der verschiedenen Sensoren 238 durch einzelne Kreise entlang von Zeitleisten dargestellt. Jede Messung/Ablesung der Sensoren 238 erfolgt zu einem Zeitpunkt, der kleiner als die Zeit zwischen den Messungen für die Qualitätsmessung 250 ist. Die Kreise auf der Zeitleiste 502 stellen die Qualitätsmessungen 250 dar, die in jedem Intervall oder Zeitraum „T“ vorgenommen werden. Zur Veranschaulichung können die Sensoren 238 Sensor A, Sensor B bis Sensor N umfassen, wobei N den letzten Sensor darstellt und jeder Sensor eine Mehrzahl von Messungen auf einer Zeitleiste aufweist. Bei jedem Kreis auf der Zeitleiste 504 handelt es sich um ein unbekanntes latentes Ergebnis, das zusätzliches Wissen über das Fertigungssystem 230 bereitstellen kann. Die Kreise auf der Zeitleiste 504 werden nicht im Fertigungssystem 230 gemessen, sondern werden aus der Beziehung zwischen den Sensordaten der Sensoren 238 und der Qualitätsmessung 250 abgeleitet.
-
Beim Trainieren des Modells 306 verwenden die Softwareanwendungen 204 historische Daten 310 (z.B. im Speicher 308 gespeichert), um die Beziehung zwischen den Sensordaten der Sensoren 238 und der Qualitätsmessung 250 für denselben Zeitraum „T“ zu lernen, und dieser Prozess wird kontinuierlich wiederholt. Zu den historischen Daten 310 gehören historische Sensordaten der Sensoren 238 und historische Qualitätsmessungen 250, die zeitlich ausgerichtet sind. Die in einer Datenbank gespeicherten historischen Daten 310 können für zahlreiche Datenbanken repräsentativ sein. Die Datenbank kann Hunderte, Tausende und/oder Millionen von Dokumenten enthalten, die auch als „Big Data“ bezeichnet werden. Gemäß einer oder mehreren Ausführungsformen erfordert der enorme Umfang der historischen Daten 310 in Datenbanken die Verwaltung, Verarbeitung und Suche durch eine Maschine (z.B. Computersystem 202), beispielsweise unter Verwendung von durch einen Computer ausführbaren Anweisungen, und die historischen Daten 310 in Datenbanken könnten wie hier beschrieben praktisch nicht vom menschlichen Verstand verwaltet, gespeichert, analysiert und/oder verarbeitet werden.
-
Beim Trainieren des Modells 306 sind die Softwareanwendungen 204 so konfiguriert, dass sie ein Regressionsmodell anpassen, das Kovariate mit großer Häufigkeit (bei denen es sich um Einzelmessungen von Sensordaten für die Sensoren 238 handelt) über den Messzeitraum „T“ mit den verzögerten Messungen 250 mit geringer Häufigkeit (z.B. verzögerte (Labor-)Ergebnisse mit geringer Häufigkeit) durch die unbekannten Qualitätszwischenergebnisse auf der Zeitleiste 504 in Beziehung setzt. Zur Veranschaulichung ist y das Symbol für die Qualitätsmessung 250, wobei yt den Wert der Qualitätsmessung 250 zum Zeitpunkt t angibt. Die unbekannten Qualitätszwischenergebnisse zum Zeitpunkt t werden ausgedrückt als qt = f(Xt-T':t) mit einer anfänglich unbekannten Beziehung f() und unbekannter Ausgabe. Die Funktion yt = g(qt-T:t) hat eine bekannte Beziehung und eine unbekannte Eingabe (z.B. unbekannte Eingabe q über den Zeitraum t-T bis t). Das Modell 306 lernt die Funktion f() und verwendet f() später bei der Vorhersage. In einer oder mehreren Ausführungsformen ist die Funktion g() bekannt, da die Qualitätsmessungen 250 auf gleichen Mengen beruhen, von denen gleichmäßig im Laufe der Zeit Proben genommen wurden, und in diesem Fall berücksichtigt das Modell 306 die durchschnittliche Qualität im Beobachtungsfenster „T“. In diesem Fall besteht die endgültige Probe im Probenbehälter 252, die zum Messen abgeschickt wird, aus einer gleichmäßigen Mischung von Proben im Laufe der Zeit, und die Zielmessung ergibt eine Durchschnittsmessung der Qualität.
-
Beim Trainieren werden die Sensordaten (d.h. Messungen/Ablesungen) der Sensoren 238 so ausgerichtet, dass sie mit dem Zeitraum „T“ übereinstimmen, in dem Proben in dem Probenbehälter 252 gesammelt werden, wobei die Qualitätsmessung 250 bei den gesammelten Proben im Probenbehälter 252 vorgenommen wird. Jede Qualitätsmessung wird bei den gesammelten Proben im Probenbehälter 252 vorgenommen, und die Probendaten der Sensoren 238 werden im gleichen Zeitraum „T“ verwendet. Sobald das Modell 306 trainiert ist, kann das Modell 306 verwendet werden, um synthetische/geschätzte Qualitätsmessungen (z.B. ein synthetische y) in Zeitintervallen durchzuführen, die kleiner sind als der Zeitraum „T“ für jede Qualitätsmessung 250. Die Softwareanwendungen 204 können das (trainierte) Modell 306 auf eine unterschiedliche Anzahl von (möglicherweise überlappenden) Fenstern der Länge T' der Kovariaten anwenden, um unbekannte Zwischenergebnisse qt vorherzusagen, und anschließend diese Zwischenergebnisse (qt) verarbeiten, um eine durchschnittliche Qualitätsmessung zu erzeugen, bei der es sich um eine synthetische/geschätzte durchschnittliche Qualitätsmessung für ein bestimmtes Zeitintervall/Fenster handelt, das kleiner als das der ursprünglichen Qualitätsmessung 250 (T) ist. Wie hier erwähnt, ist dies besonders nützlich, um den Systembetreiber des Fertigungssystems 230 rechtzeitig zu warnen. In 5 können ein oder mehrere Sensordatenblöcke (z.B. Tensor-Abschnitte) verwendet werden, um eine synthetische/geschätzte Qualitätsmessung für ein beliebiges gewünschtes oder gegebenes Zeitfenster durchzuführen. Um das Modell 306 zu implementieren, können verschiedene Regressionsmodelle verwendet werden.
-
6 ist eine beispielhafte Darstellung einer Modellarchitektur 600 für das Modell 306 gemäß einer oder mehreren Ausführungsformen der Erfindung. 6 veranschaulicht die Verwendung eines neuronalen Netzwerks. Blöcke von Sensordaten der Sensoren 238, die durch „X“ dargestellt sind, werden in das Modell 306 für insgesamt „m“ Blöcke eingegeben. Die Sensordatenblöcke werden entsprechend ihren passenden Chargen/Zeitgruppen zusammengefasst. Die Sensordaten von mehreren Sensoren 238 werden in jedem Block kombiniert. Die Blöcke können als Matrizen (z.B. Tensoren 2. Ordnung) betrachtet werden, wobei in jeder dieser Matrizen Spalten aus einzelnen Sensoren bestehen und jede Zeile einen separaten Zeitpunkt darstellt. Ein Sensordatenblock (z.B. Tensor-Abschnitt) könnte zum Beispiel Xt-T'-M+1:t-M+1 sein, ein anderer Sensordatenblock könnte Xt-T'-m+2:t-m+2 sein, bis zum Sensordatenblock Xt-T':t. Wie hier erwähnt, erfolgen die Messungen der Sensordaten in Zeitintervallen T'', und „m“ ist die Anzahl der Sensordatenblöcke (z.B. Tensor-Abschnitte), die verwendet werden, um eine einzelne synthetische/geschätzte Qualitätsmessung für den Zeitpunkt „t“ durchzuführen, bei dem es sich um einen Zeitpunkt handelt, der sich allgemein auf die aktuelle Zeit bezieht. Mit Bezug auf 6 wird jeder Sensordatenblock in seine eigene Kopie des neuronalen Netzwerks eingegeben, das die Funktion f() darstellt. Bei den mehreren neuronalen Netzwerken handelt es sich um identische Kopien desselben trainierten neuronalen Netzwerks, das zum Implementieren und/oder Erfassen der hier beschriebenen lokalen Dynamik zuständig ist. Nach dem Eingeben jedes Sensordatenblocks in die Funktion f() für die Kopien der neuronalen Netzwerke geben die Kopien der neuronalen Netzwerke die unbekannten Qualitätszwischenergebnisse q aus, bei denen es sich für jedes neuronale Netzwerk um ein qt handelt. Für die neuronalen Netzwerke, die entsprechende Sensordatenblöcke empfangen, könnte ein neuronales Netzwerk zum Beispiel qt-m+1 erzeugen, ein anderes neuronales Netzwerk könnte qt-m+2 erzeugen, bis zum letzten neuronalen Netzwerk, das qt erzeugt. Eine bekannte Gesamtfunktion g() wird verwendet, um die Ausgabe der Kopien der neuronalen Netzwerke zusammenzufassen. Die Ausgabe „y“ der bekannten Gesamtfunktion g() ist eine einzelne synthetische/geschätzte Qualitätsmessung des Fertigungssystems 230 für einen bestimmten Zeitpunkt „t“, wobei die synthetische/geschätzte Qualitätsmessung den Status/Zustand des Fertigungssystems 230 darstellt. Die Ausgabe von g() ist die Qualität im Zeitraum T (d.h. die Gesamtmessung der Qualität im Zeitraum t-T bis t). Die Softwareanwendungen 204 können das Modell 306 verwenden, um synthetische/geschätzte Qualitätsmessungen für verschiedene Zeitintervalle „t“ durchzuführen, bei denen es sich um kleinere Intervalle als der Zeitraum „T“ handeln kann, der für die Qualitätsmessungen 250 verwendet wird.
-
Die Qualitätsmessung 250 kann als die Messung einer Prozessvariablen betrachtet werden. Die Sensordaten der Sensoren 238 können als Kovariaten und/oder andere Prozessvariablen betrachtet werden, die sich von der Prozessvariablen unterscheiden. Unter Verwendung des Modells 306 wird aus der nicht unmittelbaren Messung der Prozessvariablen allgemein eine zeitlich aggregierte Messung, deren zeitliche Auflösung und Wert einer Aggregation in einem Zeitintervall unter Verwendung einer allgemeinen Aggregationsfunktion (z.B. Funktion g()) der unmittelbaren Werte der Variablen in diesem Intervall entspricht, im Gegensatz zu unmittelbaren Online- und/oder Offline-Messungen, deren zeitliche Auflösung und Wert einem Zeitpunkt entsprechen.
-
Bei der fraglichen Prozessvariablen (z.B. entspricht der Qualitätsmessung 250) handelt es sich um eine qualitätsbezogene Variable, die einem physischen Materialprozess-Abflussstrom entspricht, dessen Messungen selten von einem Labor verfügbar sind; der nicht unmittelbare, zeitlich aggregierte Charakter der Qualitätsmessung ist insbesondere auf das Mischen/Aggregieren gleicher Probenmengen (z.B. im Probenbehälter 252) zurückzuführen, die zu mehreren Zeitpunkten über einen langen Zeitraum aus dem entsprechenden Prozessabflussstrom entnommen werden, wobei anschließend eine zusammengesetzte Messung der aggregierten Gesamtmenge durchgeführt wird. Wie das Modell 206 gelernt hat, ist der nicht unmittelbare, zeitlich aggregierte Charakter der Qualitätsmessung 250 auf eine beliebige spezifizierte allgemeine Aggregationsfunktion zurückzuführen, die auf jedes Aggregationsintervall angewendet wird, das den historischen Prozessvariablenmessungen (historische Daten 310) als die in Modell 306 ermittelte Beziehung entspricht. Der nicht unmittelbare, zeitlich aggregierte Charakter der Qualitätsmessung 250 ist auf eine nichtspezifizierte allgemeine Aggregationsfunktion zurückzuführen, die gleichmäßig auf jedes Aggregationsintervall angewendet wird, das den historischen Prozessvariablenmessungen entspricht, und die vom Modell 306 automatisch von den Daten 310 gelernt wird.
-
Das kontinuierliche Überwachen der Prozessvariablen für die Qualitätsmessung 250 erfolgt durch automatisches Schätzen ihres unmittelbaren Momentanwertes (z.B. die Werte für qt) unter Verwendung des Modells 306. Die Beziehung, die zum Erzeugen des Momentanwertes (z.B. synthetische/geschätzte Qualitätsmessung) verwendet wird, wird automatisch von historischen Daten gelernt, indem der Satz von seltenen, nach Zeitintervall aggregierten historischen Ground-Truth-Messungen rekonstruiert wird: indem zunächst die unbeobachteten, latenten, unmittelbaren Momentanwerte (z.B. die Werte für qt) für die Prozessvariable in den entsprechenden Zeitintervallen gebildet werden, und diese latenten Schätzungen (z.B. die Werte für qt) unter Verwendung der allgemeinen Aggregationsfunktion (z.B. Funktion g()) umgewandelt werden. Die latenten Momentanschätzungen der Prozessvariablen zu einem beliebigen Zeitpunkt sind eine Folge des Modells 306, das als Eingaben die Werte aller Kovariaten (z.B. Blöcke der Sensordaten der Sensoren 238) in einem Fenster des historischen Prozesseinflusses relativ zu jedem solchen Zeitpunkt verwendet, wobei die Länge dieses Fensters (z.B. Zeit „T“) als Modellhyperparameter unabhängig von der Dauer (z.B. Zeitraum „T“) zwischen aufeinanderfolgenden (seltenen) Messungen der Prozessvariablen gewählt wird.
-
Wie in 6 dargestellt, kann es sich bei dem Modell 306 um ein neuronales Netzwerk mit mehreren Schichten nichtlinearer Aktivierungsfunktionen, Gewichtungen und Verzerrungen handeln, wobei das Modell 306 als Eingaben sowohl die Rohwerte aller Kovariaten (z.B. Sensordaten) in dem Fenster des historischen Prozesseinflusses (z.B. Zeit „T“) als auch verschiedene Zeitreihenmerkmale in der Abfolge historischer Kovariatenwerte in diesem Fenster verwendet, darunter Mittelwert, Standardabweichung, Kurtosis, Varianz usw. Das automatische Lernen der allgemeinen Aggregationsfunktion (z.B. Funktion g()) erfolgt mit einem neuronalen Netzwerk mit mehreren Schichten nichtlinearer Aktivierungsfunktionen, Gewichtungen und Verzerrungen, und die allgemeine Aggregationsfunktion (z.B. Funktion g()) verwendet als Eingaben die latenten Momentanschätzungen (z.B. Werte von qt wie qt-m+1, qt-m+2 bis qt).
-
Zu den technischen Vorteilen gehören ein System und ein Verfahren, die gemäß einer oder mehreren Ausführungsformen besser auf die zugrunde liegende Physik des Fertigungsprozesses ausgerichtet sind. Das geschätzte latente Qualitätsergebnis (z.B. qt) hängt von Sensormessungen über einen kürzeren Zeithorizont ab. Das geschätzte Qualitätsergebnis (z.B. qt) fasst das lokale Verhalten des Prozesses auf eine Art und Weise wirksam zusammen, die genau verwendet werden kann, um die längerfristige Dynamik der durchschnittlichen Qualitätsmessung zu erfassen, und daher wird das geschätzte Qualitätsergebnis (z.B. qt) verwendet, um die synthetische/geschätzte Qualitätsmessung durchzuführen. Die Kenntnis des latenten Qualitätsergebnisses ermöglicht es, andere zeitliche Durchschnittswerte zu formulieren, die zum Sicherstellen des Prozessverhaltens vorteilhafter sein können als ein langfristiger Durchschnittswert.
-
7 ist gemäß einer oder mehreren Ausführungsformen der vorliegenden Erfindung ein Ablaufplan eines durch einen Computer implementierten Prozesses 700 zum Bereitstellen von kontinuierlichem Überwachen, Vorwarnmeldungen und Steuern von Variablen von Prozessleistungskennzahlen, die selten und zeitlich aggregiert in einem Fertigungssystem 230 gemessen werden. Der durch einen Computer implementierte Prozess 700 in 7 kann unter Verwendung des in 2 gezeigten Systems 200 und der Erörterungen in den 3 bis 6 implementiert werden.
-
In Block 702 sind die Softwareanwendungen 204 im Computersystem 202 so konfiguriert, dass sie Sensordaten eines Fertigungssystems 230 erfassen, wobei die Sensordaten in Intervallen (z.B. Zeit T'') gemessen werden, die kleiner als ein Zeitintervall (z.B. Zeitraum „T“) einer Zielmessung (z.B. Qualitätsmessung 250) des Fertigungssystems 230 sind, wobei festgestellt wird, dass die Sensordaten in Beziehung zu der Zielmessung (z.B. Qualitätsmessung 250) stehen. Die Softwareanwendungen 204 können zum Beispiel Sensordaten der Sensoren 238 von den Steuerungssystemen 240 und/oder direkt von den Sensoren 238 erfassen.
-
In Block 704 sind die Softwareanwendungen 204 im Computersystem 202 so konfiguriert, dass sie eine synthetische Zielmessung in einem Intervall (z.B. Zeit „T“) durchführen, das kleiner ist als das Zeitintervall (z.B. Zeitraum „T“) auf der Grundlage der Beziehung. Zu der Beziehung kann zum Beispiel die Beziehung zwischen der Funktion f(), der Funktion g() und der Qualitätsmessung 250 gehören, wobei Sensordatenblöcke („X“) als Eingabe verwendet werden. Das Modell 306 kann verwendet werden, um eine synthetische Zielmessung für eine bestimmte Zeit durchzuführen, um die Qualitätsmessung 250 darzustellen.
-
In Block 706 sind die Softwareanwendungen 204 im Computersystem 202 so konfiguriert, dass sie automatisch eine Vorwarnmeldung (z.B. Benachrichtigung 280) für die Zielmessung auf der Grundlage der synthetischen Zielmessung in dem Intervall erzeugen, das kleiner als das Zeitintervall (z.B. Zeit „T“) ist.
-
Ein oder mehrere dem Fertigungssystem 230 zugehörige Sollwerte 236 werden als Reaktion auf die Vorwarnmeldung (z.B. Benachrichtigung 280) für die Zielmessung auf der Grundlage der synthetischen Zielmessung automatisch überprüft. Ein oder mehrere dem Fertigungssystem 234 zugehörige Steuerungskomponenten werden als Reaktion auf die Vorwarnmeldung (z.B. Benachrichtigung 280) für die Zielmessung auf der Grundlage der synthetischen Zielmessung automatisch überprüft. Die Vorwarnmeldung (z.B. Benachrichtigung 280) wird (vom Computersystem 202) erzeugt, weil die synthetische Zielmessung außerhalb eines zuvor festgelegten Bereichs (z.B. des im Voraus festgelegten normalen Bereichs) liegt. Am Fertigungssystem 230 werden Änderungen vorgenommen (z.B. wie vom Computersystem 202 veranlasst und/oder angewiesen), damit die synthetische Zielmessung in einem zuvor festgelegten Bereich liegt.
-
Bei der Zielmessung (z.B. Qualitätsmessung 250) handelt es sich um eine qualitätsbezogene Variable, die einem physischen Materialprozess-Abflussstrom des Fertigungssystems 230 entspricht, wobei die Zielmessung einen nicht unmittelbaren, zeitlich aggregierten Charakter aufgrund des Mischens gleicher Probenmengen in einem Behältnis (z.B. Probenbehälter 252) aufweist, wobei die gleichen Probenmengen zu mehreren Zeitpunkten während des Zeitintervalls (z.B. Zeitraum „T“) gesammelt und an einem Ende des Zeitintervalls gemessen werden, wodurch sich die Zielmessung (z.B. Qualitätsmessung 250) ergibt.
-
Die Zielmessung (z.B. Qualitätsmessung 250) ist eine zusammengesetzte Messung einer aggregierten Gesamtmenge einer Probe (z.B. in einem Probenbehälter 252 gesammelt). Bei der synthetischen Zielmessung handelt es sich um einen erzeugten Wert für einen Zeitpunkt auf der Grundlage der Sensordaten und es handelt sich nicht um eine Messung der aggregierten Gesamtmenge der Probe, wobei die synthetische Zielmessung vielmehr einen Zustand einer einzelnen Probenmenge zu dem Zeitpunkt innerhalb des Zeitintervalls darstellt.
-
Die Zielmessung (z.B. Qualitätsmessung 250) ist eine zusammengesetzte Messung einer aggregierten Gesamtmenge einer Probe (z.B. in einem Probenbehälter 252 gesammelt). Eine Aggregationsfunktion (z.B. Aggregationsfunktion g()), die die zusammengesetzte Zielmessung von den gleichen Probenmengen erzeugt, aus denen sich die aggregierte Gesamtmenge zusammensetzt, ist unbekannt und wird automatisch als Funktion der Zielmessung in den gleichen Probenmengen gelernt. Bei der bekannten Aggregationsfunktion (g()), die in diesem Fall bekannt ist, wird diese Information wie in 6 dargestellt und vorstehend erläutert in den Trainingsprozess aufgenommen. In einer oder mehreren Ausführungsformen kann es eine unbekannte Aggregationsfunktion (d.h., die Aggregationsfunktion (g()) ist unbekannt) geben, und in solchen Fällen kann g() dem Systementwickler/-techniker unbekannt sein. Die Softwareanwendungen 204 und/oder das Modell 306 im Computersystem 202 sind daher so konfiguriert, dass sie g() auch in dem Prozess lernen. In diesem Fall wird die Aggregationsfunktion g() in 6 durch ein anderes neuronales Netzwerk ersetzt, dessen Parameter gelernt werden müssen. Bei der synthetischen Zielmessung (z.B. über das Modell 306 der Softwareanwendungen 204) handelt es sich um einen erzeugten Wert für einen Zeitpunkt auf der Grundlage der Sensordaten (z.B. des Fertigungssystems 230) und es handelt sich nicht um eine Messung der aggregierten Gesamtmenge der Probe, wobei die synthetische Zielmessung einen Zustand einer einzelnen Probenmenge der gleichen Probenmengen (z.B. im Probenbehälter 252 gesammelt) zu dem Zeitpunkt innerhalb des Zeitintervalls (z.B. Zeitraum „T“) darstellt. Es wird darauf hingewiesen, dass die synthetische Zielmessung in dem Sinne synthetisch ist, dass sie auf der Ausgabe des gelernten Modells (f()) beruht. Dabei könnte es sich um eine Momentanmessung (d.h. unmittelbare Qualität) und/oder eine neue Gesamtmessung mit größerer Genauigkeit (d.h. 1 Stunde Durchschnittsqualität) handeln. In einem Fall könnte die Momentanmessung mit der Zeit für eine einzelne Probenmenge korrelieren (z.B. übereinstimmen oder fast übereinstimmen), wodurch es möglich ist, etwas über die Vorgänge im Fertigungssystem 230 und/oder den Zustand zu diesem Zeitpunkt zu erfahren.
-
Die Zielmessung (z.B. Qualitätsmessung 250) ist eine zusammengesetzte Messung einer aggregierten Gesamtmenge einer Probe (z.B. in einem Probenbehälter 252 gesammelt). Eine Aggregationsfunktion (z.B. Aggregationsfunktion g()), die die zusammengesetzte Zielmessung von den gleichen Probenmengen erzeugt, aus denen sich die aggregierte Gesamtmenge zusammensetzt, ist als ein Durchschnitt der Zielmessung in den gleichen Probenmengen bekannt. Bei der synthetischen Zielmessung (z.B. über das Modell 306 der Softwareanwendungen 204) handelt es sich um einen erzeugten Wert für einen Zeitpunkt auf der Grundlage der Sensordaten und es handelt sich nicht um eine Messung der aggregierten Gesamtmenge der Probe, wobei die synthetische Zielmessung einen Zustand einer einzelnen Probenmenge der gleichen Probenmengen zu dem Zeitpunkt innerhalb des Zeitintervalls (z.B. Zeitraum „T“) darstellt.
-
Die Zielmessung (z.B. Qualitätsmessung 250) ist eine zusammengesetzte Messung einer aggregierten Gesamtmenge einer Probe (z.B. in einem Probenbehälter 252 gesammelt). Die Aggregationsfunktion (z.B. Aggregationsfunktion g()), die die zusammengesetzte Zielmessung von den gleichen Probenmengen erzeugt, aus denen sich die aggregierte Gesamtmenge zusammensetzt, ist von einer benutzerspezifizierten Funktion der Zielmessung in den gleichen Probenmengen bekannt. Bei der synthetischen Zielmessung (z.B. über das Modell 306 der Softwareanwendungen 204) handelt es sich um einen erzeugten Wert für einen Zeitpunkt auf der Grundlage der Sensordaten und es handelt sich nicht um eine Messung der aggregierten Gesamtmenge der Probe, wobei die synthetische Zielmessung einen Zustand einer einzelnen Probenmenge der gleichen Probenmengen zu dem Zeitpunkt innerhalb des Zeitintervalls (z.B. Zeitraum „T“) darstellt.
-
Die vorliegende Offenbarung enthält zwar eine ausführliche Beschreibung von Cloud-Computing, es versteht sich jedoch, dass die Umsetzung der hier dargelegten Lehren nicht auf eine Cloud-Computing-Umgebung beschränkt ist. Stattdessen können Ausführungsformen der vorliegenden Erfindung gemeinsam mit beliebigen Arten von jetzt bekannter oder später entwickelter Datenverarbeitungsumgebung umgesetzt werden.
-
Cloud-Computing ist ein Modell zum Liefern eines Dienstes, der einen problemlosen, bedarfsorientierten Netzwerkzugriff auf einen gemeinsamen Pool von konfigurierbaren Datenverarbeitungsressourcen (z.B. Netzwerke, Netzwerkbandbreite, Server, Verarbeitung, Speicher, Anwendungen, virtuelle Maschinen und Dienste) ermöglicht, die mit minimalem Verwaltungsaufwand bzw. minimaler Interaktion mit einem Anbieter des Dienstes schnell bereitgestellt und freigegeben werden können. Dieses Cloud-Modell kann mindestens fünf Eigenschaften, mindestens drei Dienstmodelle und mindestens vier Implementierungsmodelle enthalten.
-
Bei den Eigenschaften handelt es sich um die Folgenden:
- On-Demand Self-Service (bedarfsorientierte Selbstbedienung): Ein Cloud-Nutzer kann einseitig automatisch nach Bedarf Datenverarbeitungsfunktionen wie Serverzeit und Netzwerkspeicher bereitstellen, ohne dass eine menschliche Interaktion mit dem Anbieter der Dienste erforderlich ist.
- Broad Network Access (breiter Netzzugriff): Über ein Netzwerk sind Funktionen verfügbar, auf die durch Standardmechanismen zugegriffen wird, die die Verwendung durch heterogene schlanke oder leistungsintensive Client-Plattformen unterstützen (z.B. Mobiltelefone, Laptops und PDAs).
- Ressource Pooling (Ressourcen-Bündelung): Die Datenverarbeitungsressourcen des Anbieters werden gebündelt, um mehreren Nutzern unter Verwendung eines Mehrmietermodells zu dienen, wobei verschiedene physische und virtuelle Ressourcen dynamisch nach Bedarf zugewiesen und neu zugewiesen werden. Es gibt eine gefühlte Standortunabhängigkeit, da der Nutzer allgemein keine Kontrolle bzw. Kenntnis über den genauen Standort der bereitgestellten Ressourcen hat, aber in der Lage sein kann, einen Standort auf einer höheren Abstraktionsebene festzulegen (z.B. Land, Staat oder Rechenzentrum).
- Rapid Elasticity (schnelle Anpassungsfähigkeit): Funktionen können für eine schnelle horizontale Skalierung (scale out) schnell und elastisch bereitgestellt werden, in einigen Fällen auch automatisch, und für ein schnelles Scale-in schnell freigegeben werden. Für den Nutzer erscheinen die für das Bereitstellen verfügbaren Funktionen häufig unbegrenzt und sie können jederzeit in jeder beliebigen Menge gekauft werden.
- Measured Service (messbarer Dienst): Cloud-Systeme steuern und optimieren die Verwendung von Ressourcen automatisch, indem sie eine Messfunktion auf einer gewissen Abstraktionsebene nutzen, die für die Art von Dienst geeignet ist (z.B. Speicher, Verarbeitung, Bandbreite sowie aktive Benutzerkonten). Die Inanspruchnahme von Ressourcen kann überwacht, gesteuert und gemeldet werden, wodurch sowohl für den Anbieter als auch für den Nutzer des verwendeten Dienstes Transparenz bereitgestellt wird.
-
Es gibt folgende Dienstmodelle:
- Software as a Service (Saas) (Software als Dienst): Die dem Nutzer bereitgestellte Funktion besteht darin, die in einer Cloud-Infrastruktur laufenden Anwendungen des Anbieters zu verwenden. Die Anwendungen sind über eine schlanke Client-Schnittstelle wie einen Web-Browser (z.B. auf dem Web beruhende eMail) von verschiedenen Client-Einheiten aus zugänglich. Der Nutzer verwaltet bzw. steuert die zugrunde liegende Cloud-Infrastruktur nicht, darunter das Netzwerk, Server, Betriebssysteme, Speicher bzw. sogar einzelne Anwendungsfunktionen, mit der möglichen Ausnahme von eingeschränkten benutzerspezifischen Einstellungen der Anwendungskonfiguration.
- Platform as a Service (Paas) (Plattform als Dienst): Die dem Nutzer bereitgestellte Funktion besteht darin, durch einen Nutzer erstellte bzw. erhaltene Anwendungen, die unter Verwendung von durch den Anbieter unterstützten Programmiersprachen und Werkzeugen erstellt wurden, in der Cloud-Infrastruktur einzusetzen. Der Nutzer verwaltet bzw. steuert die zugrunde liegende Cloud-Infrastruktur nicht, darunter Netzwerke, Server, Betriebssysteme bzw. Speicher, hat aber die Kontrolle über die eingesetzten Anwendungen und möglicherweise über Konfigurationen der Hosting-Umgebung der Anwendung.
- Infrastructure as a Service (laas) (Infrastruktur als Dienst): Die dem Nutzer bereitgestellte Funktion besteht darin, Verarbeiten, Speicher, Netzwerke und andere grundlegende Datenverarbeitungsressourcen bereitzustellen, wobei der Nutzer in der Lage ist, beliebige Software einzusetzen und auszuführen, zu der Betriebssysteme und Anwendungen gehören können. Der Nutzer verwaltet bzw. steuert die zugrunde liegende Cloud-Infrastruktur nicht, hat aber die Kontrolle über Betriebssysteme, Speicher, eingesetzte Anwendungen und möglicherweise eine eingeschränkte Kontrolle über ausgewählte Netzwerkkomponenten (z.B. Host-Firewalls).
-
Es gibt folgende Einsatzmodelle:
- Private Cloud: Die Cloud-Infrastruktur wird einzig und allein für eine Organisation betrieben. Sie kann durch die Organisation oder einen Dritten verwaltet werden und kann sich in den eigenen Räumen oder in fremden Räumen befinden.
- Community Cloud (Benutzergemeinschafts-Cloud): Die Cloud-Infrastruktur wird von mehreren Organisationen gemeinsam genutzt und unterstützt eine spezielle Benutzergemeinschaft, die gemeinsame Anliegen hat (z.B. Aufgabe, Sicherheitsanforderungen, Richtlinien sowie Überlegungen bezüglich der Einhaltung von Vorschriften). Sie kann durch die Organisationen oder einen Dritten verwaltet werden und kann sich in den eigenen Räumen oder fremden Räumen befinden.
- Public Cloud (öffentliche Cloud): Die Cloud-Infrastruktur wird der allgemeinen Öffentlichkeit oder einer großen Branchengruppe zur Verfügung gestellt und gehört einer Organisation, die Cloud-Dienste verkauft.
- Hybrid Cloud (hybride Cloud): Die Cloud-Infrastruktur besteht aus zwei oder mehr Clouds (privat, Benutzergemeinschaft oder öffentlich), die zwar einzelne Entitäten bleiben, aber durch eine standardisierte oder herstellereigene Technologie miteinander verbunden sind, die eine Übertragbarkeit von Daten und Anwendungen ermöglicht (z.B. Cloud-Zielgruppenverteilung für den Lastenausgleich zwischen Clouds).
-
Eine Cloud-Computing-Umgebung ist dienstorientiert und schwerpunktmäßig auf Statusunabhängigkeit, geringe Kopplung, Modularität und semantische Interoperabilität ausgerichtet. Der Kern der Cloud-Computing ist eine Infrastruktur, die ein Netzwerk aus miteinander verbundenen Knoten enthält.
-
Mit Bezug nunmehr auf 8 ist eine veranschaulichende Cloud-Computing-Umgebung 50 dargestellt. Wie gezeigt, enthält die Cloud-Computing-Umgebung 50 einen oder mehrere Cloud-Computing-Knoten 10, mit denen von Cloud-Nutzern verwendete lokale Datenverarbeitungseinheiten wie der persönliche digitale Assistent (PDA) oder das Mobiltelefon 54A, der Desktop-Computer 54B, der Laptop-Computer 54C und/oder das Kraftfahrzeug-Computersystem 54N Daten austauschen können. Die Knoten 10 können miteinander Daten austauschen. Sie können physisch oder virtuell in einem oder mehreren Netzwerken wie private, benutzergemeinschaftliche, öffentliche oder hybride Clouds wie oben beschrieben oder in einer Kombination davon in Gruppen angeordnet sein (nicht dargestellt). Dies ermöglicht es der Cloud-Computing-Umgebung 50, Infrastruktur, Plattformen und/oder Software als Dienste anzubieten, für die ein Cloud-Nutzer keine Ressourcen auf einer lokalen Datenverarbeitungseinheit vorhalten muss. Es ist ersichtlich, dass die Arten von Datenverarbeitungseinheiten 54A bis N, die in 8 dargestellt sind, nur veranschaulichend sein sollen und die Datenverarbeitungsknoten 10 und die Cloud-Computing-Umgebung 50 mit jeder Art von computergestützter Einheit über jede Art von Netzwerk und/oder netzwerkadressierbarer Verbindung Daten austauschen kann (z.B. über einen Web-Browser).
-
Mit Bezug nunmehr auf 9 wird ein Satz funktionaler Abstraktionsschichten gezeigt, die von der Cloud-Computing-Umgebung 50 (8) bereitgestellt werden. Es versteht sich im Voraus, dass die in 9 dargestellten Komponenten, Schichten und Funktionen nur veranschaulichend sein sollen und Ausführungsformen der Erfindung nicht darauf beschränkt sind. Wie dargestellt, werden die folgenden Schichten und entsprechenden Funktionen bereitgestellt:
- Die Hardware- und Software-Schicht 60 enthält Hardware- und Software-Komponenten. Zu Beispielen für Hardware-Komponenten gehören: die Großrechner 61; die Server 62 auf Grundlage der RISC-Architektur (RISC = Reduced Instruction Set Computer, Computer mit reduziertem Befehlssatz), die Server 63; die Blade-Server 64; die Speichereinheiten 65; sowie die Netzwerke und Netzwerkkomponenten 66. In einigen Ausführungsformen enthalten die Software-Komponenten die Netzwerkanwendungs-Serversoftware 67 und die Datenbank-Software 68.
-
Die Virtualisierungsschicht 70 stellt eine Abstraktionsschicht bereit, aus der die folgenden Beispiele für virtuelle Entitäten bereitgestellt werden können: virtuelle Server 71; virtuelle Speicher 72; virtuelle Netzwerke 73; darunter virtuelle private Netzwerke; virtuelle Anwendungen und Betriebssysteme 74; und virtuelle Clients 75.
-
In einem Beispiel kann die Verwaltungsschicht 80 die nachfolgend beschriebenen Funktionen bereitstellen. Die Ressourcenbereitstellung 81 ermöglicht eine dynamische Bereitstellung von Datenverarbeitungsressourcen und anderen Ressourcen, die verwendet werden, um Aufgaben in der Cloud-Computing-Umgebung durchzuführen. Messen und Preisfindung 82 stellen Kostenverfolgung beim Verwenden von Ressourcen in der Cloud-Computing-Umgebung sowie Abrechnung oder Rechnungsstellung für die Inanspruchnahme dieser Ressourcen bereit. In einem Beispiel können diese Ressourcen Lizenzen für Anwendungssoftware umfassen. Die Sicherheitsfunktion stellt eine Identitätsprüfung für Cloud-Nutzer und Aufgaben sowie Schutz für Daten und andere Ressourcen bereit. Ein Benutzerportal 83 stellt Nutzern und Systemadministratoren den Zugang zur Cloud-Computing-Umgebung bereit. Die Verwaltung der Dienstgüte 84 stellt Zuordnung und Verwaltung von Cloud-Computing-Ressourcen bereit, sodass die erforderliche Dienstgüte erreicht wird. Die Planung und Erfüllung der Dienstgütevereinbarung (Service Level Agreement, SLA) 85 stellt eine Vorabeinteilung und eine Beschaffung von Cloud-Computing-Ressourcen bereit, deren künftiger Bedarf auf der Grundlage einer Dienstgütevereinbarung vorausgesehen wird.
-
Die Arbeitslastschicht 90 stellt Beispiele für Funktionalitäten bereit, für die die Cloud-Computing-Umgebung verwendet werden kann. Zu Beispielen für Arbeitslasten und Funktionen, die von dieser Schicht bereitgestellt werden können, gehören: Abbildung und Navigation 91; Software-Entwicklung und Lebenszyklusverwaltung 92; Bereitstellung von Ausbildung in virtuellen Klassenzimmern 93; Datenanalyseverarbeitung 94; Transaktionsverarbeitung 95; und Softwareanwendungen (z.B. Softwareanwendungen 204, Steuerungsanwendungen 242, Modell 306 usw.), die in den Arbeitsschichten und Funktionen 96 implementiert sind.
-
Verschiedene Ausführungsformen der Erfindung werden hier mit Bezug auf die dazugehörigen Zeichnungen beschrieben. Alternative Ausführungsformen der Erfindung können entwickelt werden, ohne vom Anwendungsbereich dieser Erfindung abzuweichen. In der folgenden Beschreibung und in den Zeichnungen werden verschiedene Verbindungen und Positionsbeziehungen (z.B. über, unter, neben usw.) zwischen den Elementen dargelegt. Sofern nicht anders angegeben, können diese Verbindungen und/oder Positionsbeziehungen direkt oder indirekt sein, und die vorliegende Erfindung soll in dieser Hinsicht nicht einschränkend sein. Dementsprechend kann sich eine Verbindung von Einheiten entweder auf eine direkte oder indirekte Verbindung beziehen, und bei einer Positionsbeziehung zwischen Entitäten kann es sich um eine direkte oder indirekte Positionsbeziehung handeln. Darüber hinaus können die verschiedenen hier beschriebenen Aufgaben und Prozessschritte in ein umfassenderes Verfahren oder einen Prozess mit zusätzlichen Schritten oder zusätzlicher Funktionalität integriert werden, die hier nicht im Einzelnen beschrieben sind.
-
Ein oder mehrere der hier beschriebenen Verfahren können mit einer beliebigen oder einer Kombination der folgenden Technologien ausgeführt sein, die in der Technik bekannt sind: eine oder mehrere diskrete Logikschaltung(en) mit Logikgattern zum Implementieren von logischen Funktionen auf Datensignalen, eine anwendungsspezifische integrierte Schaltung (application specific integrated cirucit, ASIC) mit geeigneten kombinatorischen Logikgattern, eine programmierbare Gatteranordnung (programmable gate array, PGA), eine vor Ort programmierbare Gatteranordnung (field programmable gate array, FPGA) usw.
-
Aus Gründen der Kürze werden herkömmliche Techniken im Zusammenhang mit dem Erstellen und der Verwendung von Aspekten der Erfindung hier gegebenenfalls ausführlich beschrieben. Insbesondere sind verschiedene Aspekte von Datenverarbeitungssystemen und spezifischen Computerprogrammen zum Implementieren der hier beschriebenen verschiedenen technischen Merkmale bekannt. Aus Gründen der Kürze werden daher zahlreiche herkömmliche Implementierungseinzelheiten nur kurz erwähnt oder ganz weggelassen, ohne die bekannten System- und/oder Prozesseinzelheiten bereitzustellen.
-
In einigen Ausführungsformen können verschiedene Funktionen oder Maßnahmen an einem bestimmten Standort und/oder im Zusammenhang mit dem Betrieb eines oder mehrerer Vorrichtungen oder Systeme stattfinden. In einigen Ausführungsformen kann ein Teil einer bestimmten Funktion oder Maßnahme an einer ersten Einheit oder an einem ersten Standort ausgeführt werden, und der Rest der Funktion oder Maßnahme kann an einer oder mehreren zusätzlichen Einheiten oder Standorten ausgeführt werden.
-
Die hier verwendete Terminologie dient lediglich zum Zweck des Beschreibens von speziellen Ausführungsformen und soll die Erfindung nicht einschränken. Wie hier verwendet, sollen die Singularformen „ein/eine/einer/eines“ und „der/die/das“ ebenfalls die Pluralformen umfassen, es sei denn, der Zusammenhang zeigt eindeutig etwas anderes auf. Es versteht sich ferner, dass die Begriffe „aufweisen“ und/oder „aufweisend“, wenn sie in dieser Beschreibung verwendet werden, die Anwesenheit von angegebenen Merkmalen, Ganzzahlen, Schritten, Operationen, Elementen und/oder Komponenten spezifizieren, jedoch nicht die Anwesenheit oder Hinzufügung von einem oder mehreren anderen Merkmalen, Ganzzahlen, Schritten, Operationen, Elementen, Komponenten und/oder Gruppen davon ausschließen.
-
Die entsprechenden Strukturen, Materialien, Maßnahmen und Äquivalente aller Mittel oder Schritt-plus-Funktion-Elemente in den nachfolgenden Ansprüchen sollen alle Strukturen, Materialien oder Maßnahmen zur Durchführung der Funktion in Kombination mit anderen beanspruchten Elementen umfassen, wie dies speziell beansprucht wird. Die vorliegende Offenbarung wurde zum Zwecke der Veranschaulichung und Beschreibung vorgestellt, soll jedoch nicht erschöpfend oder auf die offenbarte Form beschränkt sein. Für Fachleute ist offensichtlich, dass viele Änderungen und Abwandlungen möglich sind, ohne vom Anwendungsbereich der Offenbarung abzuweichen. Die Ausführungsformen wurden ausgewählt und beschrieben, um die Grundgedanken der Offenbarung und die praktische Anwendung am besten zu erläutern und um anderen Fachleuten ein Verständnis der Offenbarung für verschiedene Ausführungsformen mit verschiedenen Änderungen zu ermöglichen, wie sie für die jeweils beabsichtigte Verwendung geeignet sind.
-
Die hier dargestellten Schaubilder sind veranschaulichend. Es kann viele Abwandlungen an den Schaubildern oder den darin beschriebenen Schritten (Operationen) geben, ohne vom Anwendungsbereich der Offenbarung abzuweichen. Die Schritte können zum Beispiel in einer anderen Reihenfolge durchgeführt werden, oder es können Schritte hinzugefügt, weggelassen oder geändert werden. Der Begriff „verbunden“ beschreibt ferner einen Signalpfad zwischen zwei Elementen und impliziert keine direkte Verbindung zwischen den Elementen ohne dazwischenliegende Elemente/Verbindungen. Alle diese Abwandlungen gelten als Teil der vorliegenden Offenbarung.
-
Für die Auslegung der Ansprüche und der Beschreibung sind folgende Begriffsbestimmungen und Abkürzungen zu verwenden. Wie hier verwendet, sollen die Begriffe „aufweisen“, „umfassen“, „haben“, „enthalten“ oder Abwandlungen davon eine nichtausschließliche Einbeziehung umfassen. So ist beispielsweise eine Zusammensetzung, eine Mischung, ein Prozess, ein Verfahren, ein Artikel oder eine Vorrichtung, die/der/das eine Liste von Elementen aufweist, nicht unbedingt auf diese Elemente beschränkt, sondern kann auch andere Elemente enthalten, die nicht ausdrücklich aufgeführt sind oder zu einer/einem solchen Zusammensetzung, Mischung, Prozess, Verfahren, Artikel oder Vorrichtung dazugehören.
-
Darüber hinaus wird der Begriff „beispielhaft“ hier in der Bedeutung „um als Beispiel, Fall oder Veranschaulichung zu dienen“ verwendet. Ausführungsformen oder Entwürfe, die hier als „beispielhaft“ beschrieben werden, sind nicht unbedingt als bevorzugt oder vorteilhaft gegenüber anderen Ausführungsformen oder Entwürfen zu verstehen. Unter den Begriffen „mindestens eine/einer/eines“ und „ein/eine oder mehrere“ ist eine ganze Zahl zu verstehen, die größer oder gleich eins ist, d.h. eins, zwei, drei, vier usw. Unter dem Begriff „eine Mehrzahl“ ist eine ganze Zahl zu verstehen, die größer oder gleich zwei ist, d.h. zwei, drei, vier, fünf, usw. Der Begriff „Verbindung“ kann sowohl eine indirekte „Verbindung“ als auch eine direkte „Verbindung“ enthalten.
-
Die Begriffe „etwa“, „im Wesentlichen“, „annähernd“ und Abwandlungen davon sollen den Grad des Fehlers enthalten, der mit der Messung der jeweiligen Menge auf der Grundlage der zum Zeitpunkt der Anmeldung vorhandenen Ausrüstung verbunden ist. Beispielsweise kann „etwa“ einen Bereich von ± 8 % oder 5 % oder 2 % eines bestimmten Wertes umfassen.
-
Bei der vorliegenden Erfindung kann es sich um ein System, ein Verfahren und/oder ein Computerprogrammprodukt auf jedem möglichen technischen Detaillierungsgrad der Integration handeln. Das Computerprogrammprodukt kann (ein) durch einen Computer lesbare(s) Speichermedium (oder -medien) umfassen, auf dem/denen durch einen Computer lesbare Programmanweisungen gespeichert ist/sind, um einen Prozessor dazu zu veranlassen, Aspekte der vorliegenden Erfindung auszuführen.
-
Bei dem durch einen Computer lesbaren Speichermedium kann es sich um eine physische Einheit handeln, die Anweisungen zur Verwendung durch eine Einheit zur Ausführung von Anweisungen behalten und speichern kann. Bei dem durch einen Computer lesbaren Speichermedium kann es sich zum Beispiel um eine elektronische Speichereinheit, eine magnetische Speichereinheit, eine optische Speichereinheit, eine elektromagnetische Speichereinheit, eine Halbleiterspeichereinheit oder jede geeignete Kombination daraus handeln, ohne auf diese beschränkt zu sein. Zu einer nicht erschöpfenden Liste spezifischerer Beispiele des durch einen Computer lesbaren Speichermediums gehören die Folgenden: eine tragbare Computerdiskette, eine Festplatte, ein Direktzugriffsspeicher (RAM), ein Nur-Lese-Speicher (ROM), ein löschbarer programmierbarer Nur-Lese-Speicher (EPROM bzw. Flash-Speicher), ein statischer Direktzugriffsspeicher (SRAM), ein tragbarer Kompaktspeicherplatte-Nur-Lese-Speicher (CD-ROM), eine DVD (digital versatile disc), ein Speicher-Stick, eine Diskette, eine mechanisch codierte Einheit wie zum Beispiel Lochkarten oder gehobene Strukturen in einer Rille, auf denen Anweisungen gespeichert sind, und jede geeignete Kombination daraus. Ein durch einen Computer lesbares Speichermedium soll in der Verwendung hier nicht als flüchtige Signale an sich aufgefasst werden, wie zum Beispiel Funkwellen oder andere sich frei ausbreitende elektromagnetische Wellen, elektromagnetische Wellen, die sich durch einen Wellenleiter oder ein anderes Übertragungsmedium ausbreiten (z.B. Lichtwellenleiterkabel durchlaufende Lichtimpulse) oder durch einen Draht übertragene elektrische Signale.
-
Hier beschriebene, durch einen Computer lesbare Programmanweisungen können von einem durch einen Computer lesbaren Speichermedium auf jeweilige Datenverarbeitungs-/Verarbeitungseinheiten oder über ein Netzwerk wie zum Beispiel das Internet, ein lokales Netzwerk, ein Weitverkehrsnetzwerk und/oder ein drahtloses Netzwerk auf einen externen Computer oder eine externe Speichereinheit heruntergeladen werden. Das Netzwerk kann Kupferübertragungskabel, Lichtwellenübertragungsleiter, drahtlose Übertragung, Router, Firewalls, Vermittlungseinheiten, Gateway-Computer und/oder Edge-Server aufweisen. Eine Netzwerkadapterkarte oder Netzwerkschnittstelle in jeder Datenverarbeitungs-/Verarbeitungseinheit empfängt durch einen Computer lesbare Programmanweisungen aus dem Netzwerk und leitet die durch einen Computer lesbaren Programmanweisungen zur Speicherung in einem durch einen Computer lesbaren Speichermedium innerhalb der entsprechenden Datenverarbeitungs-/Verarbeitungseinheit weiter.
-
Bei durch einen Computer lesbaren Programmanweisungen zum Ausführen von Arbeitsschritten der vorliegenden Erfindung kann es sich um Assembler-Anweisungen, ISA-Anweisungen (Instruction-Set-Architecture), Maschinenanweisungen, maschinenabhängige Anweisungen, Mikrocode, Firmware-Anweisungen, zustandssetzende Daten, Konfigurationsdaten für integrierte Schaltungen oder entweder Quellcode oder Objektcode handeln, die in einer beliebigen Kombination aus einer oder mehreren Programmiersprachen geschrieben werden, darunter objektorientierte Programmiersprachen wie Smalltalk, C++ o.ä. sowie prozedurale Programmiersprachen wie die Programmiersprache „C“ oder ähnliche Programmiersprachen. Die durch einen Computer lesbaren Programmanweisungen können vollständig auf dem Computer des Benutzers, teilweise auf dem Computer des Benutzers, als eigenständiges Software-Paket, teilweise auf dem Computer des Benutzers und teilweise auf einem entfernt angeordneten Computer oder vollständig auf dem entfernt angeordneten Computer oder Server ausgeführt werden. In letzterem Fall kann der entfernt angeordnete Computer mit dem Computer des Benutzers durch eine beliebige Art Netzwerk verbunden sein, darunter ein lokales Netzwerk (LAN) oder ein Weitverkehrsnetzwerk (WAN), oder die Verbindung kann mit einem externen Computer hergestellt werden (zum Beispiel über das Internet unter Verwendung eines Internet-Dienstanbieters). In einigen Ausführungsformen können elektronische Schaltungen, darunter zum Beispiel programmierbare Logikschaltungen, vor Ort programmierbare Gatter-Anordnungen (FPGA, field programmable gate arrays) oder programmierbare Logikanordnungen (PLA, programmable logic arrays) die durch einen Computer lesbaren Programmanweisungen ausführen, indem sie Zustandsinformationen der durch einen Computer lesbaren Programmanweisungen nutzen, um die elektronischen Schaltungen zu personalisieren, um Aspekte der vorliegenden Erfindung durchzuführen.
-
Aspekte der vorliegenden Erfindung sind hier unter Bezugnahme auf Ablaufpläne und/oder Blockschaubilder von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es wird darauf hingewiesen, dass jeder Block der Ablaufpläne und/oder der Blockschaubilder sowie Kombinationen von Blöcken in den Ablaufplänen und/oder den Blockschaubildern mittels durch einen Computer lesbare Programmanweisungen ausgeführt werden können.
-
Diese durch einen Computer lesbaren Programmanweisungen können einem Prozessor eines Universalcomputers, eines Spezialcomputers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine zu erzeugen, sodass die über den Prozessor des Computers bzw. der anderen programmierbaren Datenverarbeitungsvorrichtung ausgeführten Anweisungen ein Mittel zur Umsetzung der in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaubilder festgelegten Funktionen/Schritte erzeugen. Diese durch einen Computer lesbaren Programmanweisungen können auch auf einem durch einen Computer lesbaren Speichermedium gespeichert sein, das einen Computer, eine programmierbare Datenverarbeitungsvorrichtung und/oder andere Einheiten so steuern kann, dass sie auf eine bestimmte Art funktionieren, sodass das durch einen Computer lesbare Speichermedium, auf dem Anweisungen gespeichert sind, einen Herstellungsartikel aufweist, darunter Anweisungen, welche Aspekte der/des in dem Block bzw. den Blöcken des Ablaufplans und/oder der Blockschaubilder angegebenen Funktion/Schritts umsetzen.
-
Die durch einen Computer lesbaren Programmanweisungen können auch auf einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder eine andere Einheit geladen werden, um das Ausführen einer Reihe von Prozessschritten auf dem Computer bzw. der anderen programmierbaren Vorrichtung oder anderen Einheit zu verursachen, um einen auf einem Computer ausgeführten Prozess zu erzeugen, sodass die auf dem Computer, einer anderen programmierbaren Vorrichtung oder einer anderen Einheit ausgeführten Anweisungen die in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaubilder festgelegten Funktionen/Schritte umsetzen.
-
Die Ablaufpläne und die Blockschaubilder in den Figuren veranschaulichen die Architektur, die Funktionalität und den Betrieb möglicher Ausführungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. In diesem Zusammenhang kann jeder Block in den Ablaufplänen oder Blockschaubildern ein Modul, ein Segment oder einen Teil von Anweisungen darstellen, die eine oder mehrere ausführbare Anweisungen zur Ausführung der bestimmten logischen Funktion(en) aufweisen. In einigen alternativen Ausführungen können die in dem Block angegebenen Funktionen in einer anderen Reihenfolge als in den Figuren gezeigt stattfinden. Zwei nacheinander gezeigte Blöcke können zum Beispiel in Wirklichkeit im Wesentlichen gleichzeitig ausgeführt werden, oder die Blöcke können manchmal je nach entsprechender Funktionalität in umgekehrter Reihenfolge ausgeführt werden. Es ist ferner anzumerken, dass jeder Block der Blockschaubilder und/oder der Ablaufpläne sowie Kombinationen aus Blöcken in den Blockschaubildern und/oder den Ablaufplänen durch spezielle auf Hardware beruhende Systeme umgesetzt werden können, welche die festgelegten Funktionen oder Schritte durchführen, oder Kombinationen aus Spezial-Hardware und Computeranweisungen ausführen.
-
Die Beschreibungen der verschiedenen Ausführungsformen der vorliegenden Erfindung wurden zum Zwecke der Veranschaulichung vorgestellt, sollen jedoch nicht erschöpfend oder auf die Ausführungsformen beschränkt sein. Für Fachleute ist offensichtlich, dass viele Änderungen und Abwandlungen möglich sind, ohne vom Anwendungsbereich der beschriebenen Ausführungsformen abzuweichen. Die hier verwendete Terminologie wurde gewählt, um die Grundgedanken der Ausführungsformen, die praktische Anwendung oder technische Verbesserung gegenüber Technologien auf dem Markt bestmöglich zu erläutern oder es Fachleuten zu ermöglichen, die hier beschriebenen Ausführungsformen zu verstehen.