-
GEBIET DER OFFENBARUNG
-
Dieses Patent betrifft im Allgemeinen Prozesssteuerungssystemmodellierung und insbesondere Verfahren zur Durchführung von Prozessmodellierung, Qualitätsprognose und Fehlererkennung in einem kontinuierlichen oder Chargenprozess unter Verwendung von mehrstufiger oder mehrere Stadien beinhaltender Datensegregation.
-
ALLGEMEINER STAND DER TECHNIK
-
Prozesssteuerungssysteme, wie diejenige, die in chemischen, Erdöl- oder anderen Prozessen verwendet werden, schließen typischerweise ein oder mehrere Prozesssteuerungen und Eingabe/Ausgabe-(E/A)-Geräte ein, die kommunikativ über analoge, digitale oder kombiniert analoge/digitale Busse an mindestens einen Host oder eine Workstation einer Bedienungsperson und an ein oder mehrere Feldgeräte gekoppelt sind. Die Feldgeräte, die beispielsweise Ventile, Ventilstellungsregler, Schalter und Sender (z.B. Temperatur-, Druck- und Durchflussratensensoren) sein können, führen innerhalb des Prozesses Prozesssteuerungsfunktionen durch, wie Öffnen oder Schließen von Ventilen und Messen von Prozesssteuerungsparametern. Die Prozesssteuerungen empfangen Signale, die Prozessmessungen angeben, welche von den Feldgeräten durchgeführt wurden, verarbeiten diese Informationen, um eine Steuerungsroutine zu implementieren, und generieren Steuerungssignale, die über die Busse oder anderen Kommunikationsleitungen zu den Feldgeräten gesendet werden, um den Betrieb des Prozesses zu steuern. Auf diese Weise können die Prozesssteuerungen Steuerungsstrategien unter Verwendung der Feldgeräte über die Busse und/oder andere Kommunikationsverbindungen ausführen und koordinieren.
-
Prozessinformationen von den Feldgeräten und den Steuerungen können einer oder mehreren Anwendungen (d.h. Softwareroutinen, Programmen, usw.) zur Verfügung gestellt werden, die durch die Workstation einer Bedienungsperson (z.B. einem System auf Prozessorbasis) ausgeführt werden, damit es einer Bedienungsperson möglich ist, gewünschte Funktionen in Bezug auf das Verfahren durchzuführen, wie Anzeigen des aktuellen Stadiums des Prozesses (z.B. über eine graphische Benutzeroberfläche), Auswertung des Prozesses, Modifizieren des Betriebs des Prozesses (z.B. über ein Visual Object-Diagramm, usw. Viele Prozesssteuerungssysteme schließen auch eine oder mehrere Anwendungsstationen (z.B. Workstations) ein, die typischerweise unter Verwendung eines PCs, Laptops oder dergleichen implementiert werden und die kommunikativ über ein lokales Netzwerk (LAN) an die Steuerungen, Workstations der Bedienungspersonen und andere Systeme innerhalb des Prozesssteuerungssystems gekoppelt sind. Jede Anwendungsstation kann eine graphische Benutzeroberfläche einschließen, die die Prozesssteuerungsinformationen einschließlich Werten von Prozessvariablen, Werten von mit dem Prozess assoziierten Qualitätsparametern, Informationen zur Fehlererkennung im Prozess und/oder Prozessstadiuminformationen anzeigt.
-
Die Anzeige von Prozessinformationen in der graphischen Benutzeroberfläche ist typischerweise auf die Anzeige eines Werts von jeder Prozessvariablen begrenzt, welche mit dem Prozess assoziiert ist. Prozesssteuerungssysteme können in einigen Fällen einfache Beziehungen zwischen einigen Prozessvariablen charakterisieren, um mit dem Prozess assoziierte Qualitätsmetriken abzuschätzen. In den meisten Fällen können der Prozess und/oder andere Prozessvariablen jedoch allgemein nur nach Fertigstellung des Produkts detailliert analysiert werden, wenn ein resultierendes Produkt des Prozesses vordefinierten Qualitätskontrollmetriken nicht entspricht.
-
Die Verwendung von prognostischer Modellierung zur Prozessqualitätsprognose und Fehlererkennung setzt sich allmählich sowohl in kontinuierlichen Prozessen als auch in Chargenprozessen durch. Kontinuierliche Prozesse arbeiten bekannterweise kontinuierlich mit einem Satz von kontinuierlich zugeführten Rohmaterialien, um ein Ausgabeprodukt zu produzieren. Die in kontinuierlichen Prozessen verwendete(n) Prozesssteuerung(en) versucht/versuchen allgemein gesagt, verschiedene Prozessparameter an bestimmten Positionen innerhalb des Prozesses gleich zu halten. Weil kontinuierliche Prozesse jedoch regelmäßig Variationen beispielsweise im Durchsatz, den Arten oder Klassen der gefertigten Produkte, der Zusammensetzung der in den Prozess eingespeisten Rohmaterialien, usw. aufweisen, ist es schwierig, Qualitätsprognosen der Ausgabe des Prozesses online (d. h. während der Prozess in Betrieb ist) durchzuführen, weil sich die Prozessparameterwerte an jeder bestimmten Position basierend auf einer Änderung des Durchsatzes, der gefertigten Produktklasse, usw. ändern können. Chargenprozesse arbeiten andererseits typischerweise so, dass ein gemeinsamer Satz von Rohmaterialien zusammen als „Charge“ über verschiedene Anzahlen von Stufen oder Schritten verarbeitet wird, um ein Produkt zu produzieren. Mehrere Stufen oder Schritte eines Chargenprozesses können mit den gleichen Gerätschaften, wie einem Tank, durchgeführt werden, während andere der Stufen oder Schritte in anderen Gerätschaften durchgeführt werden. Weil sich die Temperatur, der Druck, die Konsistenz, der pH-Wert oder andere Parameter der verarbeiteten Materialien jedoch im Zeitverlauf während des Betriebs der Charge viele Male ändern, während das Material in derselben Position bleibt, kann schwer ermittelt werden, ob der Chargenprozess zu irgendeiner bestimmten Zeit während des Chargendurchlaufs in einer Weise arbeitet, die wahrscheinlich ein Endprodukt mit den gewünschten Qualitätsmetriken produziert. Daher ist es auch schwierig, Qualitätsprognose und Fehlererkennung innerhalb von Chargenverfahren durchzuführen.
-
Ein bekanntes Verfahren zur Prognose, ob ein zurzeit in Betrieb befindlicher Prozess normal oder innerhalb gewünschter Spezifikationen abläuft (und somit wahrscheinlich zu einem Endprodukt mit gewünschten Qualitätsmetriken führt), beinhaltet das Vergleichen verschiedener Prozessvariablenmessungen, die während des Betriebs des laufenden Prozesses erfolgt sind, mit ähnlichen Messungen, die während des Betriebs eines zuvor gelaufenen Prozesses genommen wurden und deren Ergebnis gemessen worden ist oder anderweitig bekannt ist. Wie bereits gesagt variieren Durchläufe von kontinuierlichen Prozessen jedoch basierend auf Durchsatz und Produktklasse, und Durchläufe von Chargenprozessen variieren typischerweise in der zeitlichen Länge, d. h. sie variieren in Bezug auf die Zeit, die zur Fertigstellung der Charge benötigt wird, wodurch die Kenntnis schwierig ist, welche Zeit innerhalb des vorhergehenden Prozessdurchlaufs auf die zurzeit gemessenen Parameter des Online- Prozesses am ehesten anwendbar sind. In vielen Fällen können Prozessvariablen zudem während des Betriebs des Prozesses weit variieren, verglichen mit denjenigen eines ausgewählten vorhergehenden Prozesses, ohne dass eine signifikante Qualitätsverschlechterung des Endprodukts eintritt. Es ist daher oft schwierig, wenn nicht sogar praktisch unmöglich, einen bestimmten vorhergehenden Durchlauf des Prozesses zu identifizieren, der in allen Fällen verwendbar ist, um die Qualität von anschließenden Prozessdurchläufen zu messen oder zu prognostizieren.
-
Ein weiterentwickeltes Verfahren zum Analysieren der Ergebnisse von laufenden kontinuierlichen und Chargenverfahren, das eines der oben identifizierten Probleme überwindet, beinhaltet das Erstellen eines statistischen Modells für den Prozess auf Basis von verschiedenen Durchläufen des Prozesses. Diese Technik beinhaltet das Erfassen von Daten für jeden von einem Satz von Prozessvariablen (Parametern) aus einer Anzahl verschiedener Durchläufe eines Prozesses oder für eine Anzahl unterschiedlicher Zeiten in einem Prozess und das Identifizieren oder Messen von Qualitätsmetriken für jeden von diesen Sätzen von Daten. Die erfassten Parameter und Qualitätsdaten werden danach zur Erstellung eines statistischen Modells des Prozesses verwendet, wobei das statistische Modell den „normalen“ Betrieb des Prozesses repräsentiert, der zu gewünschten Qualitätsmetriken führt. Dieses statistische Modell des Prozesses kann dann verwendet werden, um zu analysieren, wie unterschiedliche Prozessparametermessungen, die während einer bestimmten Prozessimplementierung durchgeführt wurden, statistisch mit denselben Messungen zusammenhängen, die innerhalb der zur Entwicklung des Modells verwendeten Prozessen durchgeführt wurden. Dieses statistische Modell kann beispielsweise verwendet werden, um einen Durchschnitts- oder Medianwert jedes gemessenen Prozessparameters zu liefern, sowie eine Standardabweichung, die mit jeder gemessenen Prozessvariablen zu jeder bestimmten Zeit oder an jeder bestimmten Position während des Prozessdurchlaufs assoziiert ist, mit der die aktuell gemessenen Prozessvariablen verglichen werden können. Dieses statistische Modell kann zudem verwendet werden, um zu prognostizieren, wie das aktuelle Stadium des Prozesses die letztendliche Qualität des Produkts beeinflussen oder betreffen wird, welches am Ende oder als Ausgabe des Prozesses produziert wird.
-
Im Allgemeinen können sowohl lineare als auch nichtlineare, statistisch basierte Prozessprädikatoren verwendet werden, um Produktqualitätsparameter zu prognostizieren, die für Online-Messungen nicht verfügbar sind. Solche Prozessparameterprädikatoren sind unter einigen unterschiedlichen Namen bekannt, zu denen beispielsweise weiche Sensoren, inferentielle Sensoren und dergleichen gehören. Es gibt in der Tat mehrere Typen von modellbasierten linearen Prädikatoren, die verwendet werden, um Prozessparameterprognose innerhalb von Prozessen durchzuführen, wobei die vorherrschenden auf diesen Modellen basierenden Prädikatoren mehrfache lineare Regressions (MLR)-Prädikatoren, Hauptkomponentenregressions-(PCR)-Prädikatoren, Hauptkomponentenanalyse-(PCA)-Prädikatoren, partielle kleinste Quadrate-(PLS)-Prädikatoren und Diskriminierungsanalyse-(DA)-Prädikatoren sind. Derartige Prädikatoren können sowohl in Offline- als auch in Online-Analysetools verwendet werden, um einen Prozessparameter zu prognostizieren, wie eine Qualitätsmessung eines durch einen Prozess produzierten Produkts. Es ist zudem bekannt, Hauptkomponentenanalyse-(PCA)-Techniken zu verwenden, um Fehlererkennung innerhalb von Prozessen durchzuführen.
-
Bekannte Prädikatoren auf Modellbasis haben jedoch einen signifikanten Mangel, da sie im Allgemeinen nicht in der Lage sind, die darin verwendeten prädiktiven Prozessmodelle an die sich ändernden Prozessstadien anzupassen, die aus beispielsweise einer Änderung der Produktionsrate oder des Durchsatzes des Prozesses, eine Änderung der Produktklassen, usw. resultieren können. Um mit Hilfe von Techniken des Standes der Technik mit diesem Problem umzugehen, ist es de facto notwendig, für jede mögliche Produktionsrate oder Produktklasse ein separates Modell zu konstruieren. Diese Technik führt jedoch zu einem Prädiktor, der in Aufbau und Verwendung äußerst komplex ist, weil die Entwicklung, Speicherung und Verwendung der zahlreichen prädiktiven Modelle sehr prozessorintensiv wird, viel Speicher benötigt und in der Implementierung und Pflege in Echtzeitsystemen komplex ist.
-
Obwohl es bekannt ist, statistische Prozessmodellierungstechniken zur Modellierung von Prozessen wie kontinuierlichen Prozessen zu verwenden, arbeiten diese Modellierungstechniken somit in der Regel nur dann gut, wenn ein kontinuierlicher Prozess stabil oder gut definiert ist, d. h. wenn es wenig Variation des hergestellten Produkts oder des Durchsatzes des Prozesses gibt. Die Online-Implementierung von analytischen Tools, wie PCA- und PLS-Techniken zur Fehlererkennung und Prognose, ist infolgedessen in vielen Fällen auf kontinuierliche Prozesse beschränkt gewesen, in denen ein Einzelprodukt produziert wird. In solchen Fällen wird der Prozess oft als Einzeleinheit mit einem festen Satz von Messungen und Laboranalysen behandelt. Für diese Typen von Prozessen kann ein einziges PAC- oder PLS-Modell entwickelt und in einer Online-Umgebung angewendet werden. Diese Techniken sprechen die Anforderungen von kontinuierlichen oder Chargenverfahren leider nicht an, in denen mehrere Klassen von Produkten unter Verwendung von einem oder mehreren unterschiedlichen Teilen von Anlagengerätschaften (zu unterschiedlichen Zeiten) produziert werden können, oder die variable Durchsätze haben, oder worin andere Betriebsbedingungen regelmäßig geändert werden.
-
KURZFASSUNG
-
Eine Prozessmodellierungstechnik verwendet ein einziges statistisches Modell, wie ein PLS-, PRC-, MLR- usw. Modell, das aus historischen Daten für einen typischen Prozess entwickelt wurde, und adaptiert dieses Modell zur Verwendung zur Qualitätsprognose oder Fehlererkennung für verschiedene unterschiedliche Prozessstadien. Die Modellierungstechnik ermittelt insbesondere Mittel (und möglicherweise Standardabweichungen) der Prozessparameter für jeden von einem Satz von Produktklassen, Durchsätzen, usw., vergleicht Online-Prozessparametermessungen mit diesen Mitteln und verwendet diese Vergleiche in einem einzigen Prozessmodell zur Durchführung von Qualitätsprognose oder Fehlererkennung über die verschiedenen Stadien des Prozesses. Weil nur die Mittel und Standardabweichungen der Prozessparameter des Prozessmodells aktualisiert werden, kann ein einziges Prozessmodell verwendet werden, um Qualitätsprognose oder Fehlererkennung durchzuführen, während der Prozess in jeglichen der definierten Prozessstufen oder -stadien arbeitet. Die Empfindlichkeit (Robustheit) des Prozessmodells kann zudem manuell oder automatisch für jeden Prozessparameter eingestellt werden, um das Modell im Zeitverlauf abzustimmen oder zu adaptieren.
-
Ein Prozessqualitätsprognose- und Fehlererkennungssystem, das diese Modellierungstechnik verwendet, hat signifikant erhöhte Funktionalität und Nützlichkeit sowohl in kontinuierlichen als auch in Chargenprozessen, da das Qualitätsprognoseund Fehlererkennungssystem das Anpassen des Status eines inferentiellen Sensors ermöglicht und dem Betriebspersonal zusätzliche Einsichten in den aktuellen Online- Betrieb eines Prozesses bietet.
-
Die offenbarte Modellierungstechnik, die in Chargen- oder kontinuierlichen Fertigungsprozessen verwendet werden kann, unterteilt den Betrieb des Prozesses in die unterschiedlichen Stufen oder Stadien, die mit einem Stadiumparameter assoziiert oder durch diesen definiert sind, der, typischerweise gesagt, mit den verschiedenen möglichen Stadien des Prozesses zusammenhängt oder diese anzeigt. Der Stadiumparameter kann beispielsweise eine Produktklasse, ein Durchsatz des Prozesses oder jegliche andere signifikante Störgrößenvariable des Prozesses sein.
-
Die Modellierungstechnik entwickelt zuerst ein Qualitätsprognose- oder Fehlererkennungsmodell, das auf dem gemessenen Betrieb des Prozesses über mehrere Prozessstufen basiert, und verwendet danach dieses Modell zur Durchführung von Qualitätsprognose oder Fehlererkennung während des Online-Betriebs des Prozesses. Während der Modellerstellungsstufe erfasst das Verfahren Trainingsdaten, die aus dem Prozess generiert werden, wobei die Trainingsdaten Werte oder Messungen der verschiedenen Prozessparameter, die als Eingaben für das Modell, welches erstellt wird, zu verwenden sind, Werte eines Stadiumparameters, der die Prozessstadien definiert, und Werte eines Qualitätsparameters oder einer Fehlerangabe einschließen. Das Verfahren kann für ein Qualitätsprognosemodell die Prozesseingabeparameterwerte und den Stadiumparameterwert zeitlich verschieben, um diese Daten mit dem zu prognostizierenden Qualitätsparameter auszurichten, um so die Effekte von variabler Prozessverzögerung zwischen Prozesseingaben und den prognostizierten Qualitätsparametern zu beseitigen. Die zeitverschobenen Daten (im Fall der Generierung eines Qualitätsprognosemodells) oder die Trainingsdaten (im Fall eines Fehlererkennungsmodells) werden dann verarbeitet, um einen Satz von Prozessparametermitteln, ein Stadiumparametermittel und ein Qualitäts- oder Fehlerparametermittel für jedes Prozessstadium zu ermitteln. Diese Prozessstadiummittel und der Stadiumparameterwert von jedem Zeitanteil der Daten (in den zeitausgerichteten Daten oder den Trainingsdaten) werden dann verwendet, um einen Satz von Zeitanteilmitteln für jeden Zeitanteil der Daten zu entwickeln, und die Sofortwerte der Prozessparameter und der Zeitanteilmittel werden dann verwendet, um für jeden Zeitanteil einen Satz von Abweichungen von den Mitteln zu entwickeln. Die Sätze von Abweichungen von den Mitteln können dann gefiltert werden, und die gefilterten Werte der Abweichungen von den Mitteln werden verwendet, um das Prozessmodell zu entwickeln, wie ein PLS-Modell, ein neurales Netzwerk-(NN)-Modell, ein MLR-Modell, ein PCA-Modell, usw. Die Prozessstadiummittel werden auch als Teil des Modells gespeichert.
-
Das Modell kann danach während des Online-Betriebs des Prozesses verwendet werden, um Qualitätsprognose oder Fehlererkennung durchzuführen. Prozessparameter- und Stadiumparametermessungen werden insbesondere aus dem Prozess erhalten, da der Prozess online arbeitet, und diese Daten können im temporären Speicher gespeichert werden. Die Prozess- und Stadiumparametermessungen können für ein Qualitätsprognosemodell auf die gleiche Weise zeitverschoben werden, wie während der Entwicklung des Modells durchgeführt wird. Auf jeden Fall werden Sätze von Zeitanteildaten aus dem Prozess enthalten, wobei jeder Zeitanteil der Daten einen Wert von jedem der Prozesseingabeparameter und dem Stadiumparameter einschließt. Die Prozessparametermittel und die Stadiumparametermittel, die als Teil des Modells gespeichert werden, werden dann zusammen mit dem Wert des Stadiumparameters von jedem Zeitanteil verwendet, um Zeitanteilmittel für die Prozessparameter von jedem Zeitanteil zu ermitteln. Die Zeitanteilmittel von jedem Zeitanteil der Daten und die Werte der Prozessparameter und des Stadiumparameters des Zeitanteils werden dann verwendet, um einen Satz von Abweichungen von den Mitteln für den Zeitanteil der Daten zu erstellen. Die Abweichungen von den Mitteln für jeden Zeitanteil können gefiltert werden, und die Ausgabe der Filter wird dann Eingabe für das Prozessmodell, um Qualitätsprognose oder Fehlererkennung online innerhalb des Prozesses durchzuführen.
-
Das so erstellte und betriebene Modell ist in signifikanter Weise in der Lage, Qualitätsprognosen oder Fehlererkennung über alle der definierten Prozessstadien durchzuführen, ohne dass das Prozessmodell geändert werden muss oder für jedes Prozessstadium ein anderes Prozessmodell entwickelt werden muss. Der variierende Betrieb des Prozesses in den unterschiedlichen Prozessstadien wird in der Tat in der Operation der Änderung der Zeitanteilmittel berücksichtigt, die zum Ermitteln von Abweichungen von den Eingaben der Mittel in das Modell verwendet werden. Filtern der Abweichung von den Mitteln liefert zudem bessere Qualitätsprognose oder Fehlererkennung, wenn der Prozess sich im Übergang zwischen unterschiedlichen Prozessstadien befindet.
-
Modellgenerierungs- und Datenanalysetechniken, die Prozessstadiumdefinitionen verwenden, die zuvor für einen Prozess ermittelt wurden, entwickeln unterschiedliche Sätze von Abweichungen von dem Mittel für verschiedene unterschiedliche Betriebsstadien des Prozesses und verwenden dann diese unterschiedlichen Sätze von Abweichungen von dem Mittel in einem einzigen Prozessmodell, ohne dass ein neues oder anderes Prozessmodell für jede Betriebsregion oder jedes Betriebsstadium des Prozesses generiert werden muss. Anders gesagt kann ein Prozessmodell, das zur Durchführung von Online-Datenanalytik für einen Prozess verwendet wird, einmal für den Prozess ermittelt werden und verwendet werden, um den Prozess selbst dann zu analysieren, wenn der Prozess in anderen Betriebsstadien arbeitet, ohne dass ein separates Modell für jede Stufe oder jedes Stadium des Betriebs des Prozesses ermittelt werden muss. Die Eingaben in das Modell basieren stattdessen auf Abweichungen von Mitteln, die für die unterschiedlichen Prozessstufen oder -stadien verändert wer- den, um so das Modell mit der Fähigkeit zu versehen, Qualitätsprognosen oder Fehlererkennung basierend auf dem Prozessstadium durchzuführen, in dem der Prozess zurzeit betrieben wird, ohne dass das Modell selbst geändert werden muss.
-
Die Prozessstadiummittel können gewünschtenfalls während des Online-Betriebs des Prozesses adaptiert werden, indem zusätzliche Daten aus dem Prozess erfasst werden, die ein oder mehrere Prozessstadien betreffen, wie Prozessstadien, für die wenig oder keine Daten während der Modellerstellungsphase erfasst wurden, oder Prozessstadien, in denen sich der Prozessbetrieb seit der Modellerstellung möglicherweise geändert hat. Nach dem Erfassen neuer Daten können die Prozessmittel für das neue oder geänderte Prozessstadium ermittelt und als Teil des Prozessmodells gespeichert werden, um dadurch die Verwendung des Prozessmodells zur Durchführung von Qualitätsprognose oder Fehlererkennung in dem neuen Prozessstadium oder dem geänderten Prozessstadium zu ermöglichen, ohne das Prozessmodell selbst neu zu generieren.
-
Zudem können automatisch auf Basis des Betriebs des Online-Qualitätsprognose- und Fehlererkennungssystems Alarme und Warnungen generiert werden, und diese Alarme oder Warnungen können einem Anwender während des Betriebs des Prozesses zur Verfügung gestellt werden, damit der Anwender gewünschte Änderungen durchführen oder Korrekturmaßnahmen ergreifen kann. Noch weiterentwickelte Funktionalität der Benutzeroberfläche ermöglicht einem Anwender das einfache Anzeigen von Trendauftragungen von Prozessvariablen zur Zeit oder nahe der Zeit, als ein bestimmter Alarm oder eine bestimmte Warnung generiert wurde, um zu ermitteln, welche(r) Prozessparameter für den Alarm oder die Warnung verantwortlich gewesen sein könnte(n). Diese Trendauftragungen können einem Anwender die Anzeige der historischen Werte der Prozessparameter im Vergleich mit dem Mittel und den Standardabweichungen der Prozessparameter zurzeit oder nahe der Zeit der Warnung ermöglichen, ohne dass diese Informationen manuell in einer Datenhistorie gesucht werden müssen. Diese Funktionalität macht Fehlersuche und Ergreifen von Korrekturmaßnahmen während des Online-Betriebs des Prozesses einfacher und schneller.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
1 ist ein Diagramm eines Prozesssteuerungsnetzwerks mit einer Steuerung und Feldgeräten, die verwendet werden können, um einen Prozess und verschie- dene Modellierungskomponenten zu implementieren, um Prozessqualitätsprognose und Fehlererkennung bereitzustellen.
-
2 ist ein Blockdiagramm, das ein beispielhaftes Prozesssteuerungssystem illustriert, das ein beispielhaftes Betriebsmanagementsystem einschließt, das ein Online-Prozessanalysesystem zum Analysieren von Prozessen implementieren kann.
-
3 ist ein Prozessflussdiagramm, das ein Verfahren zum Generieren von einem oder mehreren Qualitätsprognosemodellen und Fehlererkennungsmodellen illustriert.
-
4 ist ein Graph eines Satzes von Kreuzkorrelationsauftragungen, die die Kreuzkorrelationen zwischen einem Satz von Prozessparametern und einem Qualitätsparameter illustrieren, der zum Generieren eines Qualitätsprognosemodells verwendet wird.
-
5 ist eine vergrößerte Ansicht von einer der Kreuzkorrelationsauftragungen aus 4, die eine Verzögerungszeit zwischen einer Änderung in einem Prozessparameter und einer Änderung in einer Qualitätsvariablen illustriert, die durch eine Kreuzkorrelationskorrelationsfunktion ermittelt wurde.
-
Die 6A und 6B sind Hardware/Software-Flussdiagramme, die ein System zur Entwicklung von einem oder mehreren, statistisch basierten Prozessmodellen zur Verwendung in der Durchführung von Prozessqualitätsprognose oder Fehlererkennung in einem kontinuierlichen oder einem Chargenprozess illustrieren.
-
7 ist ein Ablaufplan eines Prozessflussdiagramms, das ein Verfahren zur Verwendung von einem oder mehreren Qualitätsprognosemodellen und Fehlererkennungsmodellen während des Online-Betriebs eines Prozesses illustriert, um Qualitätsprognose und/oder Fehlererkennung durchzuführen.
-
8 ist ein Hardware/Software-Flussdiagramm, das ein System zum Implementieren von einem oder mehreren statistisch basierten Prozessmodellen illustriert, um in einem kontinuierlichen oder einem Chargenprozess unter Verwendung von Prozessstadiumdatensegregation Prozessparamaterqualitätsprognose durchzuführen.
-
9 ist ein Blockdiagramm eines Funktionsblocks, der implementiert werden kann, um die Qualitätsprognose und/oder Fehlererkennung unter Verwendung eines statistischen Prozessmodells durchzuführen, das nach dem Verfahren von 3 erstellt wurde.
-
10 illustriert eine Reihe von Benutzeroberflächenbildschirmen, die Anwendern traditionell bereitgestellt werden, damit diese Analysen von Parameterdaten durchführen können, die mit einem Alarm oder einer Warnung assoziiert sind.
-
Die 11A–11D illustrieren eine Reihe von Benutzeroberflächenbildschirmen, die erstellt und einem Anwender bereitgestellt werden können, damit dieser leicht Trendauftragungen von Prozessparametern anzeigen kann, die mit einem Alarm oder einer Warnung zusammenhängen, die unter Verwendung eines Qualitätsprognose- oder Fehlererkennungs- oder anderen Alarmsystems generiert wurden.
-
Die 12–12C illustrieren eine Reihe von Benutzeroberflächenbildschirmen, die erstellt und einem Anwender bereitgestellt werden können, damit dieser leicht Trendauftragungen von Prozessparametern anzeigen kann, die mit einem Alarm oder einer Warnung zusammenhängen, die in einem Alarmkontext eines traditionellen Prozesssteuerungssystems generiert wurden.
-
DETAILLIERTE BESCHREIBUNG
-
1 illustriert ein beispielhaftes Prozesssteuerungssystem 10, in dem eine erweiterte Technik zur Durchführung von Online-Qualitätsprognose und Fehlererkennung implementiert sein kann. Die Qualitätsprognose- und Fehlererkennungstechniken, die in das System 10 zu implementieren sind, generieren insbesondere einen Satz von Qualitätsprognose- und/oder Fehlererkennungsmodellen aus Prozessdaten und ermöglichen dann einem Anwender die Verwendung dieser Modelle, um Online-Qualitätsprognose und Fehlererkennung über mehrere vordefinierte Prozessstadien oder Prozessstufen in entweder einem kontinuierlichen Prozess oder einem Chargenprozess durchzuführen. Diese Techniken sind infolgedessen anwendbar oder einsetzbar, um in kontinuierlichen oder Chargenprozessen Qualitätsprognose und/oder Fehlererkennung durchzuführen, in denen Durchsatz, Produktklasse oder irgendeine andere Störgrößenvariable regelmäßig geändert wird, ohne dass separate Modelle für jede mögliche Prozessstufe oder jedes mögliche Prozessstadium generiert werden müssen.
-
Das in 1 illustrierte Prozesssteuerungssystem schließt eine Prozesssteuerung 11 ein, die mit einer Datenhistorie 12 und einer oder mehreren Host-Workstations oder Computern 13 verbunden ist (die jede Art von PCs, Workstations, usw. sein können), die jeweils einen Anzeigebildschirm 14 aufweisen. Die Steuerung 11 ist auch über Eingabe/Ausgabe-(E/A)-Karten 26 und 28 mit Feldgeräten 15–22 verbunden und kann betrieben werden, um ein oder mehrere Chargendurchläufe eines Chargenprozesses unter Verwendung der Feldgeräte 15–22 zu implementieren. Die Datenhistorie 12 kann jeder gewünschte Typ von Datenerfassungseinheit mit jedem gewünschten Speichertyp und jeder gewünschten oder bekannten Software, Hardware oder Firmware zur Speicherung von Daten sein. Die Datenhistorie 12 kann getrennt von (wie in 1 illustriert) oder als Teil von einer der Workstations 13 vorliegen. Die Steuerung 11, die beispielsweise die DeltaVTM Steuerung sein kann, die von Emerson Process Management angeboten wird, ist kommunikativ mit den Hostcomputern 13 und der Datenhistorie 12 über beispielsweise eine Ethernetverbindung oder jedes andere gewünschte Kommunikationsnetzwerk 23 verbunden. Die Steuerung 11 ist auch kommunikativ mit den Feldgeräten 15–22 unter Verwendung von jeglicher gewünschten Hardware und Software verbunden, die beispielsweise mit Standard 4–20 ma Geräten und/oder jeglichem intelligenten Kommunikationsprotokoll assoziiert ist, wie dem FOUNDATION® Fieldbus Protokoll, HART® Protokoll, Wireless-HARTTM Protokoll, usw.
-
Die Feldgeräte 15–22 können jegliche Typen von Geräten sein, wie Sensoren, Ventile, Sender, Positionierer, usw., während die E/A-Karten 26 und 28 jegliche Typen von E/A-Geräten sein können, die jeglichem gewünschten Kommunikations- oder Steuerungsprotokoll entsprechen. In der in 1 illustrierten Ausführungsform sind die Feldgeräte 15–18 Standard 4–20 ma-Geräte oder HART-Geräte, die über analoge Leitungen oder kombinierte analoge und digitale Leitungen mit der E/A-Karte 26 kommunizieren, während die Feldgeräte 19–22 intelligente Geräte sind, wie FOUNDATION® Fieldbus Feldgeräte, die über einen digitalen Bus unter Verwendung eines Fieldbus-Kommunikationsprotokolls mit der E/A-Karte 28 kommunizieren. Die Feldgeräte 15–22 könnten natürlich jeglichem anderen gewünschten Standard oder Protokoll bzw. jeglichen anderen gewünschten Standards oder Protokollen entsprechen, wie verdrahteten oder drahtlosen Protokollen einschließlich jeglichen zukünftig entwickelten Standards oder Protokollen.
-
Die Steuerung 11 schließt einen Prozessor 30 ein, der ein oder mehrere Prozesssteuerungsroutinen (gespeichert in einem Speicher 32) implementiert oder leitet, die Steuerungsschleifen einschließen können, und kommuniziert mit den Geräten 15–22, den Hostcomputern 13 und der Datenhistorie 12, um einen Prozess in jeglicher gewünschten Weise zu steuern. Es sei darauf hingewiesen, dass jegliche Steuerungsroutinen oder -module (einschließlich Qualitätsprognose- und Fehlererkennungsmodulen oder Funktionsblöcken), die hier beschrieben sind, in Teilen durch andere Steuerungen oder andere Geräte implementiert oder ausgeführt werden können, falls dies gewünscht ist. Die hier beschriebenen Steuerungsroutinen oder -module, die innerhalb des Prozesssteuerungssystems 10 implementiert werden sollen, können in ähnlicher Weise jegliche Form einschließlich Software, Firmware, Hardware, usw. annehmen. Steuerungsroutinen können in jeglichem gewünschten Softwareformat implementiert werden, wie unter Verwendung von objektorientierter Programmierung, Leiterlogik, sequentiellen Funktionsdiagrammen, Funktionsblockdiagrammen oder unter Verwendung von jeglicher anderen Softwareprogrammiersprache oder jeglichem Designparadigma. Die Steuerungsroutinen können in jedem gewünschten Speichertyp gespeichert werden, wie Schreib-Lese-Speicher (RAM) oder Nur-Lese- Speicher (ROM). Die Steuerungsroutinen können in ähnlicher Weise in beispielsweise ein oder mehrere EPROMs, EEPROMs, anwendungsspezifische integrierte Schaltkreise (ASICs) oder jegliche anderen Hardware- oder Firmwareelemente hardcodiert werden. Die Steuerung 11 kann somit konfiguriert werden, um eine Steuerungsstrategie oder Steuerungsroutine in jeder gewünschten Weise zu implementieren.
-
Die Steuerung 11 implementiert in einigen Ausführungsformen eine Steuerungsstrategie, die etwas verwendet, das üblicherweise als Funktionsblöcke bezeichnet wird, wobei jeder Funktionsblock ein Objekt oder anderer Teil (z.B. eine Unterroutine) einer gesamten Steuerungsroutine ist und zusammen mit anderen Funktionsblöcken (über als Links bezeichnete Kommunikationen) arbeitet, um innerhalb des Prozesssteuerungssystems 10 Prozesssteuerungsschleifen zu implementieren. Funktionsblöcke auf Steuerungsbasis führen in der Regel eine von einer Eingabefunktion, wie sie mit einem Sender, einem Sensor oder anderem Messgerät für Prozessparameter assoziiert ist, einer Steuerungsfunktion, wie sie mit einer Steuerungsroutine assoziiert ist, die PID, Fuzzy Logic usw. Steuerung durchführt, oder einer Ausgabefunktion durch, die den Betrieb irgendeines Gerätes, wie eines Ventils, steuert, um irgendeine physikalische Funktion innerhalb des Prozesssteuerungssystems 10 durchzuführen. Natürlich gibt es Hybrid- und andere Typen von Funktionsblöcken. Funktionsblöcke können in Steuerung 11 gespeichert und durch diese ausgeführt werden, was in der Regel der Fall ist, wenn diese Funktionsblöcke für Standard 4–20 ma Geräte und irgendwelche Typen von intelligenten Feldgeräten, wie HART-Geräten, verwendet werden oder mit ihnen assoziiert sind, oder können in den Feldgeräten selbst gespei- chert und durch diese implementiert sein, was bei Fieldbus-Geräten der Fall sein kann.
-
Die Steuerung 11 kann, wie durch die Explosionsansicht von Block 40 in 1 illustriert wird, eine Anzahl von Einzelschleifensteuerungsroutinen einschließen, die als Routinen 42 und 44 illustriert sind, und kann gewünschtenfalls eine oder mehrere höher entwickelte Steuerungsschleifen implementieren, wie mehrfach/Eingabe-mehrfach/Ausgabe-Steuerungsroutinen, die als Steuerungsschleife 46 illustriert sind. Jede derartige Schleife wird typischerweise als ein Steuerungsmodul bezeichnet. Die Einzelschleifensteuerungsroutinen 42 und 44 werden als Einzelschleifensteuerung durchführend illustriert, wobei ein Einzeleingabe/Einzelausgabe-Fuzzy Logic-Steuerungsblock beziehungsweise ein Einzeleingabe/Einzelausgabe-PID-Steuerungsblock verwendet wird, die mit geeigneten analogen Eingabe-(AE) und analogen Ausgabe(AA)-Funktionsblöcken verbunden sind, die mit Prozesssteuerungsgeräten, wie Ventilen, mit Messgeräten, wie Temperatur- und Drucksendern, oder mit jeglichem anderen Gerät innerhalb des Prozesssteuerungssystems 10 assoziiert sein können. Eine weiterentwickelte Steuerungsschleife 46 ist illustriert als Eingaben, die kommunikativ mit einem oder mehreren AE-Funktionsblöcken verbunden sind, und Ausgaben, die kommunikativ mit einem oder mehreren AA-Funktionsblöcken verbunden sind, einschließend, obwohl die Eingaben und Ausgaben eines weiterentwickelten Steuerungsblocks 48 mit jeglichen gewünschten Funktionsblöcken oder Steuerungselementen verbunden sein können, um andere Typen von Eingaben zu empfangen und andere Typen von Steuerungsausgaben bereitzustellen. Der weiterentwickelte Steuerungsblock 48 kann jeder Typ von Modellprognosesteuerungs-(MPC)-Block, neuralem Netzwerkmodellierungs- oder -steuerungsblock, Mehrfachvariablen-Fuzzy Logic-Steuerungsblock, Echtzeitoptimiererblock usw. sein, oder kann ein adaptiv abgestimmter Steuerungsblock, usw. sein. Es sei darauf hingewiesen, dass die in 1 illustrierten Funktionsblöcke durch die Steuerung 11 ausgeführt werden können oder alternativ sich in jeglichem anderen Verarbeitungsgerät befinden und durch dieses ausgeführt werden können, wie eine der Workstations 13 oder sogar eines der Feldgeräte 19–22.
-
Wie in 1 illustriert ist, können zudem eine oder mehrere Prozessanalyseroutinen oder Funktionsblöcke 50 gespeichert und durch verschiedene Geräte des Prozesssteuerungssystems 10 ausgeführt werden, und diese Prozessanalyseroutinen 50 können verwendet werden, um die nachfolgend detaillierter beschriebene Qualitätsprognose- und Fehlererkennungsdatenanalytik zu implementieren. Obwohl Prozessanalyseroutinen 50 als in einem oder mehreren computerlesbaren Speichern 52 gespeichert illustriert sind, die von Prozessoren 54 der Workstations 13 und der Steuerung 11 auszuführen sind, können die Routinen oder Funktionsblöcke 50 auch stattdessen in anderen Geräten gespeichert und ausgeführt werden, wie in Feldgeräten 15–22, in der Datenhistorie 12 oder in eigenständigen Geräten. Die Prozessanalyseroutinen 50 sind kommunikativ an eine oder mehrere Steuerungsroutinen gekoppelt, wie die Steuerungsroutinen 42, 44, 46 und/oder an die Datenhistorie 12, um ein oder mehrere gemessene Prozessvariablenmessungen und in einigen Fällen Benutzereingaben zu empfangen, die die Durchführung von Datenanalytik betreffen. Die Prozessanalyseroutinen 50 werden allgemein gesagt verwendet, um ein oder mehrere statistische Prozessmodelle zu entwickeln und den laufenden oder Online-Prozessbetrieb basierend auf diesen Modellen zu analysieren, wie anschließend detaillierter beschrieben wird. Die Analyseroutinen 50 können Anwendern, wie Bedienungspersonen von Chargen- oder kontinuierlichen Prozessen, auch Informationen anzeigen, die den Online- oder laufenden Betrieb des Prozesses betreffen, wie er durch das Prozesssteuerungssystem 10 implementiert wird. Die Routinen 50 können auch von Anwendern benötigte Informationen erhalten, um sie in der Datenanalytik zu verwenden.
-
2 ist ein Blockdiagramm, das ein weiteres Beispiel einer Prozesssteuerungsumgebung 100 illustriert, die ein Betriebsmanagementsystem (OMS) 102 einschließt, das auch als Prozessüberwachungs- und Qualitätsprognosesystem (PMS) bezeichnet wird, das zur Implementierung eines Online-Prozessmodellierungs- und Analysesystems verwendet werden kann, das hier detaillierter beschrieben wird. Das OMS 102 befindet sich innerhalb einer Anlage 104, die ein Prozesssteuerungssystem 106 einschließt, das Teile oder alles von beispielsweise dem Prozesssteuerungsnetzwerk 10 aus 1 einschließen kann. Die beispielhafte Anlage 104 kann jeder Typ von Fertigungseinrichtung, Prozesseinrichtung, Automatisierungseinrichtung und/oder jeglicher andere Typ von Prozesssteuerungsstruktur oder Prozesssteuerungssystem sein. Die Anlage 104 kann in einigen Beispielen mehrere Einrichtungen einschließen, die sich an unterschiedlichen Orten befinden. Obwohl die Anlage 104 von 2 als ein einziges Prozesssteuerungssystem 106 einschließend illustriert ist, kann die Anlage 104 somit weitere Prozesssteuerungssysteme einschließen.
-
Das Prozesssteuerungssystem 106, das kommunikativ über einen Datenbus 110 an eine Steuerung 108 gekoppelt ist, kann jegliche Anzahl von Feldgeräten einschließen (z.B. Eingabe- und/oder Ausgabegeräte), um Prozessfunktionen zu implementieren, wie die Durchführung physikalischer Funktionen innerhalb des Prozesses oder das Durchführen von Messungen von Prozessparametern (Prozessvariablen). Die Feldgeräte können jeden Typ von Prozesssteuerungskomponente einschließen, der in der Lage ist, Eingaben zu empfangen, Ausgaben zu generieren, und/oder einen Prozess zu steuern. Die Feldgeräte können beispielsweise Eingabegeräte, wie beispielsweise Ventile, Pumpen, Lüfter, Heizer, Kühler und/oder Mischer einschließen, um einen Prozess zu steuern. Die Feldgeräte können zudem Ausgabegeräte einschließen, wie beispielsweise Thermometer, Druckanzeigen, Konzentrationsanzeigen, Fluidpegelmessgeräte, Durchflussmessgeräte und/oder Dampfsensoren, um Prozessvariablen innerhalb von oder in Teilen eines Prozesses zu messen. Die Eingabegeräte können Anweisungen von der Steuerung 108 empfangen, um einen oder mehrere spezifische Befehle auszuführen und eine Änderung an dem Prozess herbeizuführen. Die Ausgabegeräte messen zudem Prozessdaten, Umweltdaten und/oder Eingabegerätdaten und übertragen die gemessenen Daten an die Steuerung 108 als Prozesssteuerungsinformation. Diese Prozesssteuerungsinformation kann die Werte von Variablen (z.B. gemessenen Prozessvariablen und/oder gemessenen Qualitätsvariablen) einschließen, die einer gemessenen Ausgabe von jedem Feldgerät entsprechen.
-
In dem illustrierten Beispiel von 2 kann die Steuerung 108 mit den Feldgeräten innerhalb des Prozesssteuerungssystems 106 über den Datenbus 110 kommunizieren, der an dazwischen befindliche Kommunikationskomponenten innerhalb des Prozesssteuerungssystems 106 gekoppelt sein kann. Diese Kommunikationskomponenten können Feldanschlussdosen einschließen, um Feldgeräte in einem Befehlsbereich kommunikativ an den Datenbus 110 zu koppeln. Die Kommunikationskomponenten können zudem Verkabelungsschränke einschließen, um die Kommunikationswege zu den Feldgeräten und/oder Feldanschlussdosen zu organisieren. Die Kommunikationskomponenten können ferner E/A-Karten einschließen, um Daten von den Feldgeräten zu empfangen und die Daten in ein Kommunikationsmedium umzuwandeln, das von der beispielhaften Steuerung 108 empfangen werden kann. Diese E/A-Karten können Daten von der Steuerung 108 in ein Datenformat konvertieren, das von den entsprechenden Feldgeräten verarbeitet werden kann. In einem Beispiel kann der Datenbus 110 unter Verwendung des Fieldbus-Protokolls oder anderer Typen von verdrahteten und/oder drahtlosen Kommunikationsprotokollen (z.B. Profibus-Protokoll, HART-Protokoll, usw.) implementiert werden.
-
Die Steuerung 108 von 2 (die ein PC oder andere Art von Steuerungsgerät sein kann) führt eine oder mehrere Steuerungsroutinen aus, um die Feldgeräte innerhalb des Prozesssteuerungssystems 106 zu managen. Die Steuerungsroutinen können Prozessüberwachungsanwendungen, Alarmmanagementanwendungen, Prozesstrend- und/oder -historienanwendungen, Chargenverarbeitungs- und/oder Kampagnenmanagementanwendungen, statistische Anwendungen, Streaming Video-Anwendungen, Steuerungsanwendungen, weiterentwickelte Steuerungsanwendungen usw. einschließen. Die Steuerung 108 kann ferner Prozesssteuerungsinformationen an das OMS 102 und eine Datenhistorie (in 2 nicht gezeigt) weiterleiten. Die Steuerungsroutinen können implementiert werden, um sicherzustellen, dass das Prozesssteuerungssystem 106 spezifizierte Mengen eines gewünschten Produkts innerhalb eines bestimmten Qualitätsschwellenwerts produziert. Das Prozesssteuerungssystem 106 kann beispielsweise als Chargensystem konfiguriert werden, das am Abschluss einer Charge ein Produkt produziert. In anderen Beispielen kann das Prozesssteuerungssystem 106 ein kontinuierliches Prozessfertigungssystem einschließen.
-
Die Prozesssteuerungsinformationen aus der Steuerung 108 können Werte einschließen, die gemessenen Prozess- und/oder Qualitätsparametern entsprechen, die in den Feldgeräten innerhalb des Prozesssteuerungssystems 106 entspringen. In anderen Beispielen kann das OMS 102 Werte innerhalb der Prozesssteuerungsinformationen in die entsprechenden Variablen parsen. Die gemessenen Prozessparameter können mit Prozesssteuerungsinformationen assoziiert sein, die aus Feldgeräten entspringen, die Teile des Prozesses und/oder Charakteristika der Feldgeräte messen. Die gemessenen Qualitätsparameter können mit Prozesssteuerungsinformationen assoziiert sein, die das Messen von Charakteristika des Prozesses betreffen, die mit mindestens einem Teil eines vollendeten Produkts assoziiert sind.
-
Der Prozess kann beispielsweise eine chemische Reaktion in einem Tank durchführen, die eine Konzentration einer Chemikalie in einem Fluid produziert. Die Konzentration der Chemikalie in dem Fluid kann in diesem Beispiel ein Qualitätsparameter sein. Eine Temperatur des Fluids und eine Rate des Fluidflusses in den Tank können Prozessparameter sein. Ein Durchsatz des Prozesses kann ein Prozessparame- ter sein, der von einem Anwender als Stadiumparameter definiert ist. Das OMS 102 kann über Prozesssteuerungsmodellierung und/oder -überwachung, wie anschließend detaillierter erörtert wird, ermitteln, dass die Konzentration des Fluids in dem Tank von der Temperatur des Fluids in dem Tank und der Fluidflussrate in den Tank hinein abhängt. Die gemessenen Prozessparameter tragen in anderen Worten zur Qualität des gemessenen Qualitätsparameters bei oder beeinflussen diese. Das OMS 102 kann statistische Verarbeitung nutzen, um Fehlererkennung und/oder Qualitätsprognose durchzuführen und beispielsweise den Betrag des Einflusses und/oder Beitrags ermitteln, der jeder Prozessparameter auf einen Qualitätsparameter hat.
-
Das OMS 102 kann zudem Beziehungen zwischen den gemessenen Prozessparametern und/oder Qualitätsparametern modellieren und/oder ermitteln, die mit dem Prozesssteuerungssystem 106 assoziiert sind. Diese Beziehungen zwischen den gemessenen Prozess- und/oder Qualitätsparametern ermöglichen die Erstellung von einem oder mehreren berechneten Qualitätsparametern. Ein berechneter Qualitätsparameter kann eine multivariate und/oder lineare algebraische Kombination von einem oder mehreren gemessenen Prozessparametern, gemessenen Qualitätsparametern und/oder berechneten Qualitätsparametern sein. Das OMS 102 kann ferner einen Gesamtqualitätsparameter aus einer Kombination der gemessenen Prozessparameter, gemessenen Qualitätsparameter und/oder berechneten Qualitätsparametern ermitteln. Der Gesamtqualitätsparameter kann einer Qualitätsbestimmung des Gesamtprozesses entsprechen und/oder einer prognostizierten Qualität eines resultierenden Produkts des Prozesses entsprechen. Qualitätsparameter können natürlich online oder offline (z.B. unter Verwendung von Laboranalysen) gemessen werden.
-
Wie in 2 illustriert ist, schließt das OMS 102 einen analytischen Prozessor 114 ein, der deskriptive Modellierung, prädiktive Modellierung und/oder Optimierung verwendet, um Feedback zum Status und/oder zur Qualität des Prozesssteuerungssystems 106 zu liefern. Der analytische Prozessor 114 kann Routinen (wie die Routinen 50 von 1) ausführen, um Prozessbetriebsfehler zu erkennen, zu identifizieren und/oder zu diagnostizieren und den Einfluss jeglicher Fehler auf Qualitätsparameter und/oder einen Gesamtqualitätsparameter zu prognostizieren, der mit einer Qualität eines resultierenden Produkts des Prozesssteuerungssystems 106 assoziiert ist. Der analytische Prozessor 114 kann ferner die Qualität des Prozessbetriebs überwachen, indem statistisch und/oder logisch Qualitäts- und/oder Prozessparameter zu einem Gesamtqualitätsparameter kombiniert werden, der mit der Gesamtqualität des Prozesses assoziiert ist. Der analytische Prozessor 114 kann dann die für den Gesamtqualitätsparameter und/oder mit den anderen Qualitätsparametern assoziierte Werte berechneten Werte mit jeweiligen Schwellenwerten vergleichen. Diese Schwellenwerte können auf den festgelegten Qualitätsgrenzen des Gesamtqualitätsparameters zu unterschiedlichen Zeiten innerhalb des Prozesses basieren. Wenn beispielsweise ein mit einem Prozess assoziierter Gesamtqualitätsparameter einen Schwellenwert für eine Zeitmenge überschreitet, erfüllt die prognostizierte Endqualität des resultierenden Produkts möglicherweise die mit dem fertigen Produkt assoziierten Qualitätsmetriken nicht.
-
Wenn der Gesamtqualitätsparameter und/oder jegliche anderen Qualitätsparameter von den jeweiligen Schwellenwerten abweichen, kann der analytische Prozessor 114 eine Fehlerangabe innerhalb eines Prozessübersichtdiagramms und/oder eines Prozessvariationsgraphen generieren, die eine erklärte und/oder nicht erklärte Variation (oder Varianz) zeigt, die mit dem Gesamtqualitätsparameter assoziiert ist, und/oder die eine Variable oder einen Parameter zeigen kann, die bzw. der den Prozessfehler generiert hat. Der beispielhafte analytische Prozessor 114 managt die Analyse, um eine Ursache von einem oder mehreren Prozessfehlern zu ermitteln, indem Funktionalität bereitgestellt wird, die einer Bedienungsperson die Generierung von Prozessqualitätsgraphen ermöglicht (z.B. Kombinationsgraphen, Microcharts, Prozessvariationsgraphen, Variablentrendgraphen, Grafiken, usw.), die aktuelle und/oder vergangene Werte von gemessenen Prozessparametern, gemessenen Qualitätsparametern und/oder berechneten Qualitätsparametern usw. anzeigen können. In einigen Fällen generiert der analytische Prozessor 114 ferner diese Graphen, während der Prozess in Betrieb ist, und aktualisiert und/oder berechnet multivariate Statistiken neu, die mit jedem der Graphen assoziiert sind, wenn zusätzliche Prozesssteuerungsinformationen von dem OMS 102 empfangen werden.
-
Um diese Funktionen für kontinuierliche und Chargenprozesse durchzuführen, erfasst das OMS 102 Prozessdaten für eine Anzahl unterschiedlicher Prozessparameter für jede von einer Anzahl unterschiedlicher Zeiten in einem kontinuierlichen Prozess oder für jede von einer Anzahl von unterschiedlichen Chargendurchläufen in einem Chargenprozess. Diese Daten können von der Steuerung 108 oder den Feldgeräten innerhalb des Steuerungsnetzwerks 110, aus einer Datenhistorie (z.B. der Datenhistorie 12 von 1), die möglicherweise bereits Prozessdaten für unterschiedliche Chargendurchläufe des Prozesses erfasst und gespeichert haben könnte, oder aus jeglicher anderen Datenquelle erfasst sein. Das OMS 102 verarbeitet dann diese Daten, um ein oder mehrere statistische Modelle zu generieren, und speichert die statistischen Modelle in beispielsweise einem Speicher, wie einem computerlesbaren Speicher des OMS 102 oder in einem der Speicher 52 der Workstations 13 von 1. Die statistischen Modelle können dann nach Bedarf abgerufen werden, um laufende oder Online-Prozessdurchläufe in der Zukunft zu analysieren. Das OMS 102 kann insbesondere die gespeicherten Modelle verwenden, um während des Online- oder laufenden Betriebs eines bestimmten Prozessdurchlaufs erfasste Daten zu analysieren oder einem Anwender diese Analyse zu ermöglichen.
-
Um die Daten aus einem Prozessdurchlauf zu analysieren, während der Prozess online betrieben wird, ermittelt das OMS 102 jedoch die Stufe oder das Stadium, worin der Online-Prozess arbeitet, in Bezug auf das Modell. Das bedeutet, dass das OMS 102 in diesem Fall ermittelt, welche Eingaben das Modell verwenden soll, um andere Faktoren zu dem Online-Prozess zu ermitteln, wie ob irgendwelche der Parameter des Online-Prozesses anormal sind oder außerhalb der Spezifikation in Bezug auf dieselben Parameter innerhalb des Modells liegen, ob die Ausgabe des Online- Prozesses gewünschte Qualitätsmetriken erfüllen wird, usw. Jegliche Analyse von Online-Daten, die das statistische Modell nutzen, ermittelt zuerst die Stufe oder das Stadium des statistischen Modells, das sich auf die derzeit erfassten Online-Daten am ehesten anwenden lässt. Nur nachdem die Online-Daten mit dem statistischen Modell ausgerichtet wurden, können weitere Analysen durchgeführt werden, wie einer Bedienungsperson Bildschirme bereitzustellen, um zu illustrieren, wie der Online-Prozess im Vergleich zu dem Modell ist, um statistische Analysen durchzuführen, um zu ermitteln, ob der Prozess normal oder innerhalb der Grenzwerte arbeitet, oder ob der Prozess anormal arbeitet und/oder ob die Ausgabe des Prozesses prognosegemäß gewünschte Qualitätsmetriken erfüllt, wie die gewünschte Konsistenz, Konzentrationen usw.
-
Nachdem die Daten für den aktuellen Online-Prozess erfasst sind und das Stadium des Prozesses ermittelt ist, kann beispielsweise der analytische Prozessor 114 des OMS 102 dem Anwender eine Reihe unterschiedlicher Graphen oder anderer Anzeigen zur Verfügung stellen, damit der Anwender die aktuelle betriebliche Stufe oder Funktionsfähigkeit des Online-Prozessdurchlaufs ermitteln kann. Einige dieser Graphen oder Anzeigen werden anschließend erörtert, wobei darauf hingewiesen wird, dass andere Anzeigen, Analysen oder Informationen ebenfalls oder alternativ einem Anwender, wie einer Bedienungsperson, Wartungspersonal, usw., bereitgestellt werden können. Der analytische Prozessor 114 kann beispielsweise einen Beitragsgraphen generieren, indem Beiträge der Prozessparameter und/oder Qualitätsparameter zu der Gesamtqualitätsvariablen oder zu den multivariaten statistischen Fehlerangaben der modellierten und nicht modellierten Prozessvariationen berechnet werden. Die Beiträge der Prozess- und/oder Qualitätsparameter können als modellierte und/oder nicht modellierte Variation jeder Variablen als Beitrag zu der Variation, die mit der Gesamtqualität assoziiert ist, und/oder dem Qualitätsparameter, der mit dem Fehler assoziiert ist, angezeigt werden.
-
Der analytische Prozessor 114 kann ferner Variablentrendgraphiken für jegliche der ausgewählten Prozess- und/oder Qualitätsvariablen generieren, zusammen mit einem definierten Schwellenwert. Der Variablentrendgraph kann Werte, die mit der Variablen über eine Zeit des Prozesses assoziiert sind, in Relation zu Werten der Variablen während ähnlichen Zeiten in vorhergehenden Prozessen anzeigen, z.B. den Modellvariablenwerten. Der analytische Prozess 114 kann durch Generieren des Beitragsgraphen und/oder der Variablentrendgraphen auch mögliche Korrekturen an dem Prozess identifizieren, um den erkannten Fehler in dem Prozess abzumildern. Der Variablentrendgraph kann eine Bedienungsperson darin unterstützen, eine Ursache eines Prozessfehlers zu ermitteln, indem historische Auftragungen von Daten der Prozessdurchläufe, die zur Erstellung des Modells verwendet wurden, mit assoziierten Variationen (z.B. Standardabweichungen) über den aktuellen Wert gelegt werden, wobei sie auf dieselbe Zeitskala ausgerichtet sind.
-
Der analytische Prozessor 114 kann auch einen Qualitätsprognosegraphen generieren, um den Effekt der Korrektur(en), sofern implementiert, auf die Gesamtqualität des Prozesses zu ermitteln. Wenn die Korrektur(en) die Gesamtqualität auf innerhalb spezifizierter Schwellenwerte liegend halten oder verbessern, kann der analytische Prozessor 114 das OMS 102 anweisen, die Korrektur(en) zu implementieren. Alternativ kann der analytische Prozessor 114 Anweisungen an die Steuerung 108 senden, um die Prozesskorrektur(en) zu implementieren.
-
Der beispielhafte analytische Prozessor 114 kann ferner ein Microchart generieren, nachdem ein mit einem Gesamtqualitätsparameter und/oder jeglichem anderen Qualitätsparameter assoziierter Fehler ermittelt wurde. Das Microchart kann Werte des Prozesses und/oder Qualitätsparameter zu einer spezifizierten Zeit (z.B. einer mit dem Prozessfehler assoziierten Zeit) in Relation zu einem Mittelwert und/oder einer Standardabweichung für jeden der Parameter einschließen, wie durch das Prozess-modell prognostiziert wird. Das Microchart kann zudem Sparklines einschließen, die frühere Werte angeben, die mit jeder der Prozess- und/oder Qualitätsvariablen assoziiert sind, die mit dem Modell assoziiert sind. Der beispielhafte analytische Prozessor 114 kann aus dem Microchart einer Bedienungsperson ermöglichen, eine oder mehrere korrigierende Maßnahmen für den Prozess zu ermitteln und/oder auszuwählen und/oder zu ermitteln, ob irgendwelche der Korrekturen den Prozess verbessern werden, so dass die Gesamtqualitätsvariable prognosegemäß innerhalb der spezifizierten Grenzen liegt.
-
Das OMS 102 managt den Zugriff auf die Prozesssteuerungsdaten einschließlich der Prozessvariationsgraphen, Beitragsgraphen, variablen Trendgraphen, Qualitätsprognosegraphen und/oder Microcharts über einen Online-Datenprozessor 116. Der Online-Datenprozessor 116 bietet zudem Prozesssteuerungsbedienungspersonal Zugriff, um Prozesssteuerungsdaten anzuzeigen, Prozesssteuerungsdaten zu ändern und/oder zu modifizieren und/oder Anweisungen für Feldgeräte innerhalb des Prozesssteuerungssystems 106 zu generieren.
-
Um Zugriff auf die Online-Analyse zu bieten, ist die Anlage 104 von 2 als einen Router 120 und eine lokale Workstation 122 einschließend dargestellt, die über ein lokales Netzwerk (LAN) 124 kommunikativ an den Online-Datenprozessor 116 gekoppelt sind. Der Router 120 kann ferner kommunikativ irgendwelche anderen Workstations (nicht gezeigt) innerhalb der Anlage 104 an das LAN 124 und/oder den Online-Datenprozessor 116 koppeln. Der Router 120, der drahtlos und/oder über eine verdrahtete Verbindung kommunikativ an die anderen Workstations gekoppelt sein kann, kann jeglichen Typ von drahtlosem und/oder verdrahtetem Router als Zugangs- Hub zu dem LAN 124 und/oder dem Online-Datenprozessor 116 einschließen.
-
Das LAN 124 kann mit jeglichem gewünschten Kommunikationsmedium und Protokoll implementiert sein. Das LAN 124 kann beispielsweise auf einem hart verdrahteten oder drahtlosen Ethernet-Kommunikationsschema basieren. Es kann jedoch jegliches andere geeignete Kommunikationsmedium und Protokoll verwendet werden. Obwohl ein einzelnes LAN gezeigt ist, können ferner mehr als ein LAN und geeignete Kommunikationshardware innerhalb der Workstation 122 verwendet werden, um redundante Kommunikationswege zwischen der Workstation 122 und einer entsprechenden ähnlichen Workstation (nicht gezeigt) bereitzustellen.
-
Das LAN 124 ist auch als kommunikativ an eine Firewall 128 gekoppelt dargestellt, die basierend auf einer oder mehreren Regeln ermittelt, ob Kommunikation von Remote-Workstations 130 und/oder 132 in die Anlage 104 eingelassen werden darf. Die Remote-Workstations 130 und 132 können Bedienungspersonen, die sich nicht innerhalb der Anlage 104 befinden, Zugriff auf Ressourcen innerhalb der Anlage 104 bereitstellen. Die Remote-Workstations 130 und 132 sind über ein Weitbereichsnetzwerk (WAN) 134 kommunikativ an die Firewall 128 gekoppelt.
-
Die Workstations 122, 130 und/oder 132 können konfiguriert sein, um ein oder mehrere Prozesse innerhalb des Prozesssteuerungssystems 106 basierend auf der durch das OMS 102 durchgeführten Online-Analyse anzuzeigen, zu modifizieren und/oder zu korrigieren, oder diese Workstations können die hier beschriebenen Online-Prozessanalyseanwendungen und Verfahren direkt implementieren. Die Workstations 122, 130 und/oder 132 können beispielsweise eine Benutzeroberfläche 136 einschließen, die Prozesssteuerungsinformationen formatiert und/oder anzeigt, die durch das OMS 102 generiert wurden. Die Benutzeroberfläche 136 kann als weiteres Beispiel generierte Graphen und/oder Diagramme oder alternativ Daten zur Generierung eines Prozesssteuerungsgraphen und/oder Diagramms von dem OMS 102 empfangen. Nach Empfang der Graph- und/oder Diagrammdaten in der entsprechenden Workstation 122, 130 und/oder 132 kann die Benutzeroberfläche 136 eine Anzeige eines Graphen und/oder eines Diagramms 138 generieren, die eine Bedienungsperson relativ leicht verstehen kann. Die beispielhafte Konfiguration von 2 illustriert die Workstation 132 mit der analytischen Benutzeroberfläche 136. Die Workstations 122 und/oder 130 können jedoch zwei analytische Benutzeroberflächen 136 einschließen.
-
Die Benutzeroberfläche 136 kann zudem eine Bedienungsperson der Prozesssteuerung warnen, dass irgendwelche Prozesssteuerungsfehler innerhalb des Prozesssteuerungssystems 106 und/oder irgendwelchen anderen Prozesssteuerungssystemen innerhalb der Anlage 104 aufgetreten sind, wie durch die hier beschriebene Online-Analyse ermittelt wird. Die Benutzeroberfläche 136 kann ferner eine Bedienungs- person einer Prozesssteuerung durch einen Analyseprozess führen, um eine Quelle eines Prozessfehlers zu ermitteln und einen Einfluss des Prozessfehlers auf die Qualität des resultierenden Produkts zu prognostizieren. Die Benutzeroberfläche 136 kann einer Bedienungsperson statistische Prozesssteuerungsinformationen zur Verfügung stellen, wenn der Prozessfehler sich ereignet, wodurch die Bedienungsperson irgendwelche Anpassungen an dem Prozess vornehmen kann, um irgendwelche Fehler zu korrigieren. Durch Korrektur von Fehlern während des Prozesses kann die Bedienungsperson möglicherweise eine Qualität des resultierenden Produkts aufrechterhalten.
-
Die Benutzeroberfläche 136 kann zudem über das beispielhafte OMS 102 die Erkennungs-, Analyse-, Korrekturmaßnahmen- und Qualitätsprognoseinformationen anzeigen. Die Benutzeroberfläche 136 kann beispielsweise ein Prozessübersichtsdiagramm, ein Prozessvariationsdiagramm, ein Microchart, einen Beitragsgraphen, einen variablen Trendgraphen und/oder einen Qualitätsprognosegraphen anzeigen (z.B. die Graphen 138). Die Bedienungsperson kann beim Anzeigen dieser Graphen 138 zusätzliche Graphen 138 auswählen, um multivariate und/oder statistische Prozessinformationen anzuzeigen, um eine Ursache eines Prozessfehlers zu ermitteln. Die Benutzeroberfläche 136 kann zudem mögliche Korrekturmaßnahmen an einem Prozessfehler anzeigen. Die Benutzeroberfläche 136 kann es dann einer Bedienungsperson ermöglichen, (eine oder mehrere) Korrekturmaßnahmen auszuwählen. Nach Auswahl einer Korrektur kann die Benutzeroberfläche 136 die Korrektur an das OMS 102 übertragen, welches dann eine Anweisung an die Steuerung 108 sendet, um die geeignete Korrektur in dem Prozesssteuerungssystem 106 vorzunehmen.
-
Die Workstations 122, 130 und/oder 132 von 2 können jegliches Rechengerät einschließen, beispielsweise einen PC, ein Laptop, einen Server, eine Steuerung, einen PDA, einen Mikrocomputer usw. Die Workstations 122, 130 und/oder 132 können mit jedem geeigneten Computersystem oder Verarbeitungssystem implementiert werden. Die Workstations 122, 130 und/oder 132 können beispielsweise unter Verwendung eines Einzelprozessor-PCs, Workstations mit einem oder mehreren Prozessoren, usw. implementiert werden.
-
Die Prozesssteuerungsumgebungen 10 von 1 und 100 von 2 werden bereitgestellt, um Typen von Prozesssteuerungssystemen oder Prozessanlagen bereitzustellen, in denen die beispielhaften Prozessqualitätsprognose- und Fehlererkennungsverfahren und Vorrichtungen, die anschließend detaillierter beschrieben werden, vorteilhaft verwendet werden. Die hier beschriebenen beispielhaften Verfahren und Vorrichtungen können jedoch vorteilhaft in anderen Systemen mit größerer oder geringerer Komplexität als die beispielhaften Prozesssteuerungsumgebungen 10 und 100 verwendet werden, und/oder in dem in 1 und 2 gezeigten Prozesssteuerungssystem 106 und/oder in Systemen, die in Verbindung mit Prozesssteuerungsaktivitäten, Unternehmensmanagementaktivitäten, Kommunikationsaktivitäten, usw. verwendet werden.
-
Viele bekannte Prozesssteuerungssysteme bieten, um Hintergrundinformation zu geben, typischerweise Analytik und/oder statistische Analyse von Prozessinformationen. Diese Systeme implementieren jedoch im Allgemeinen Offline-Werkzeuge, um die Ursache von und möglicherweise benötigte Korrekturmaßnahmen für Prozessfehler oder andere Prozessbedingungen zu ermitteln, die die Qualität von Produkten beeinflussen können, die durch den Prozess produziert werden. Diese Offline-Werkzeuge können Prozessuntersuchungen, Laboruntersuchungen, Geschäftsuntersuchungen, Fehlerbehebung, Prozessverbesserungsanalyse und/oder Six Sigma-Analyse einschließen. Obwohl diese Werkzeuge den Prozess für nachfolgende Produkte korrigieren können, können die Werkzeuge die Prozessqualität nicht verbessern und/oder korrigieren, wenn sich der Fehler ereignet. Diese Offline-Werkzeuge verhindern die Herstellung geringwertiger Produkte somit nicht.
-
Die hier beschriebenen beispielhaften Online-Prozesssteuerungssystemanalysen können andererseits innerhalb eines Prozesssteuerungssystems verwendet werden, um Fehlererkennungs-, Analyse- und/oder Korrekturinformationen innerhalb des Prozesses zu liefern, um es einer Bedienungsperson zu ermöglichen, einen Prozessfehler zu korrigieren oder die Produktqualität zu verbessern, noch während das Produkt gefertigt wird. Prozesskorrekturen können in anderen Worten in Reaktion auf prognostizierte Fehler oder prognostizierte Qualitätsmessungen während des Betriebs des Prozesses implementiert werden, wie zu der Zeit, als sich ein Fehler ereignet hat, oder im Wesentlichen unmittelbar nach einem Fehler oder anderer Prozessstörung, die zu schlechter Qualität führt. Obwohl die hier beschriebenen beispielhaften Verfahren und Vorrichtungen verwendet werden können, um Prozessfehler zu prognostizieren und/oder zu korrigieren oder Änderungen in Störgrößenvariablen des Prozesses zu berücksichtigen, um die Prozessqualität eines kontinuierlichen und/oder Chargenprozes- ses zu verbessern, werden sie speziell in Bezug auf kontinuierliche Prozesse beschrieben.
-
Allgemein gesagt werden die hier beschriebenen Prozessqualitätsprognoseund Fehlererkennungsanalytiken verwendet, um Qualitätsprognose und Fehlererkennung bei Prozessen (wie kontinuierlichen Prozessen oder Chargenprozessen) durchzuführen, die in einem von einer Anzahl unterschiedlicher Prozessstadien arbeiten (hier auch als Prozessstufen bezeichnet), ohne dass ein neues oder anderes Prozessmodell für jedes der verschiedenen unterschiedlichen Prozessstadien erstellt werden muss. Ein Verfahren und ein System zur Durchführung von Prozessqualitätsprognose- und Fehlererkennungsanalytiken schließt insbesondere eine Benutzeroberflächenanwendung ein, die es einem Anwender zuerst ermöglicht, den Typ des zu verwendenden statistischen Modells auszuwählen, um innerhalb eines Prozesses Qualitätsprognose durchzuführen. Diese Qualitätsprognose kann beispielsweise auf einem neuralen Netzwerk-(NN), mehrfachen linearen Regressions-(MLR) oder partielle kleinste Quadrate-(PLS) Modell basieren. Das Verfahren und System zur Durchführung von Prozessqualitätsprognose- und/oder Fehlererkennungsanalytiken generiert dieses Modell dann für den Prozess und kann zudem ein statistisches Fehlererkennungsmodell generieren, vorzugsweise in Form eines Hauptkomponenten-(PCA)Modells. Das System kann eine Anwendung der Hotelling T2- und Q-Statistiken verwenden, auch als quadratischer Prognosefehler (SPE) bekannt, um Fehlerbedingungen zu ermitteln, die mit gemessenen und nicht gemessenen Störgrößen im Prozess assoziiert sind.
-
In der Vergangenheit ergab sich eine wesentliche Einschränkung der Anwendung von NN-, MLR-, PLS- und PCA-Analysen aus der Tatsache, dass die zu Grunde liegende Prognosetechnologie auf Ermitteln von Abweichungen von Prozessmessungen von ihrem Mittelwert basierte. Eine Erhöhung der Produktionsrate der Anlage oder eine Änderung der Produktklasse (oder eine Änderung irgendeiner anderen Störgrößenvariablen des Prozesses) verursacht typischerweise leider die Verschiebung von Mittelwerten der Prozessparameter. Um diese Änderungen zu berücksichtigen, mussten frühere kontinuierliche Datenanalyseanwendungen ein anderes Modell generieren, um Qualitätsprognose oder Fehlererkennung bei unterschiedlichen Werten von Produktionsraten der Anlage, Produktklassen, usw. durchzuführen. Infolgedessen konnten traditionelle Techniken der Verwendung von NN-, NLS-, MLR- und PCA-Modellen im Allgemeinen nur angewendet werden, um Qualitätsprognose und Fehlererkennung in einem kontinuierlichen Prozess durchzuführen, welcher mit konstantem Durchsatz arbeitete und nur eine Produktklasse herstellte, weil der mit den Prozessmessungen assoziierte Mittelwert nur in dieser Situation nahezu konstant blieb.
-
In vielen Fällen wird der Durchsatz eines kontinuierlichen Prozesses jedoch häufig geändert, um einen Bestandpegel aufrechtzuerhalten, der von nachgeordneten Prozessen oder der Marktnachfrage festgelegt wird. Ein Swing-Dampfkessel im Kraftwerksbereich einer Anlage ist ein Beispiel für einen Prozess, der konstant auf Änderungen im Durchsatzbedarf reagieren muss, den die Referenzanlage festlegt. Die Betriebspunkte des Prozesses können sich mit der gefertigten Produktklasse ebenfalls ändern. Ein Beispiel für diese Situation ist in einem kontinuierlichen Reaktor, in dem das Ziel für die Ausgabezusammensetzung geändert wird, um die Fertigung unterschiedlicher Produktklassen zu ermöglichen. Es ist zur Verschiebung der Ausgabezusammensetzung oft erforderlich, den Betriebspunkt von einer oder mehreren Prozesseingaben zu ändern. In Reaktion auf diese Änderungen an Einsatzmaterial oder Prozesseingabe müssen auch andere Parameter, wie Kühlwasserfluss, Rührwerkleistung, Entlastungsfluss, usw. geändert werden, um gesteuerte Eingaben (wie Chargentemperatur, konstante Durchmischung und Kopfdruck) auf konstanten Werten zu halten.
-
Die hier beschriebenen Modellierungstechniken berücksichtigen allgemein gesagt Änderungen in den Mittelwerten der Prozessmessungen, indem die in der Analytik verwendeten Messmittelwerte automatisch modifiziert werden. Diese Modellierungstechniken sind daher in der Lage, Änderungen in Produktionsrate oder Produktklasse (oder anderen Störgrößen in dem Prozess) zu kompensieren, ohne dass das zur Prognostizierung verwendete Prozessmodell neu aufgebaut oder neu generiert werden muss. Die hier beschriebenen Modellierungstechniken kompensieren vorteilhaft auch die in dem Modell verwendeten Abweichungswerte, um die Zeit zu berücksichtigen, die zum Übergang von unterschiedlichen Durchsätzen und Produktklassen (oder anderen Störgrößen in dem Prozess) erforderlich ist, wodurch ein einziges statistisches Modell verwendet werden kann, um Qualitätsprognose oder Fehlererkennung während des Betriebs des Prozesses mit unterschiedlichen Produktdurchsätzen durchzuführen, wenn der Prozess zur Herstellung unterschiedlicher Produktklassen betrieben wird, und sogar für Zeiten, während der sich der Prozess im Übergang zwischen unterschiedlichen Durchsätzen und Produktklassen befindet.
-
Um jegliche Abweichungen in der Qualitätsparameterprognose zu minimieren und Falschanzeigen eines Fehlers zu verhindern, werden insbesondere die in Modellanalytiken verwendeten Mittelwerte geändert, um zu jenen zu passen, die für einen gegebenen Durchsatz oder eine gegebene Produktklasse erwartet werden. Weil der Übergang von einem Betriebspunkt zu einem anderen einige Zeit benötigen kann, nachdem der Durchsatz oder die Produktklasse verändert wurde, wird die Berechnung der Abweichung von dem Mittel auch gefiltert, wobei diese Filterung auf der Normalzeit basiert, die der Prozess benötigt, um auf eine Änderung der Klasse oder des Durchsatzes zu reagieren.
-
Allgemein verwenden die hier für kontinuierliche oder Chargenprozesse beschriebenen Qualitätsprognose- und Fehlererkennungstechniken Prozessstadiumsegregation und schließen zwei grundlegende Schritte ein, nämlich Modellgenerierung und Online-Verwendung des Modells, um Prozessqualitätsprognose und/oder Fehlererkennung durchzuführen. Prozessmodelle können zudem gewünschtenfalls (online) adaptiv angepasst werden, wenn der Prozess beispielsweise in eine Stufe oder ein Stadium eintritt, wofür aus dem Prozess beim erstmaligen Aufbau des Modells wenig oder keine Daten erfasst wurden, oder wenn sich der Prozess gegenüber der Zeit, zu der die zum Aufbau des Modells verwendeten Daten von dem Prozess erfasst wurden, geändert hat.
-
3 illustriert ein beispielhaftes Flussdiagramm 200 eines Verfahrens oder einer Technik, das bzw. die beispielsweise durch das OMS 102 (und beispielsweise in einer oder mehreren der Routinen 50 von 1 ausgeführt werden kann) oder innerhalb einer oder mehreren der Workstations 13 von 1 implementiert werden kann, um ein oder mehrere statistische Modelle zur Verwendung in Qualitäts- und Fehlerprognose in einem Prozess zu entwickeln. Die unter Verwendung der Techniken von 3 entwickelten statistischen Modelle können danach verwendet werden, um aus einem Prozess erfasste Online-Daten zu analysieren, um Produktqualitätsprognose und/oder Prozessfehlererkennung durchzuführen.
-
Obwohl der Ablaufplan 200 von 3 als erfasste Prozessdaten verwendend beschrieben ist, um sowohl Qualitätsprognosemodelle, wie PLS-, NN- und MLR-Modelle, als auch Fehlererkennungsmodelle, wie PCA-Modelle, zur Verwendung zum Analysieren eines Prozesses zu generieren, könnten stattdessen oder zusätzlich zu diesen bestimmten Typen von Modellen weniger oder mehr Typen von Modellen generiert werden. Das Verfahren 200 von 3 könnte insbesondere verwendet werden, um nur Qualitätsprognosemodelle, nur Fehlererkennungsmodelle oder jegliche Kombination beider Typen von Modellen zu generieren. Obwohl das Verfahren 200 von 3 als jedes von einem Satz von PLS-, NN- und MLR-Modellen und ein PCA-Modell als Fehlererkennungsmodell produzierend beschrieben wird, können andere Typen von statistischen Modellen als Qualitätsprognosemodelle und Fehlererkennungsmodelle ebenso oder stattdessen entwickelt werden. Das Verfahren 200 von 3 könnte zudem verwendet werden, um nur einen oder zwei Typen dieser Modelle zu entwickeln, und muss nicht alle dieser Typen von Modellen entwickeln.
-
Speziell in Bezug auf 3 erhält nun Block 212 Prozessparameterdaten und Qualitätsparameterdaten für einen Prozess. Der Prozess kann, wie bereits erwähnt, entweder ein kontinuierlicher oder ein Chargenprozess sein, in der Beschreibung wird der Prozess hier jedoch als kontinuierlicher Prozess beschrieben. Vor oder während der in 3 abgebildeten Modellentwicklungstechnik wird der Prozess somit betrieben und generiert Prozessparameterdaten für jeden von einem Satz von Prozessparametern oder Prozessvariablen, von denen eine hier als Stadiumparameter oder Stadiumvariable bezeichnet wird. Qualitätsparameterdaten (auch als Qualitätsvariablendaten oder Ergebnisvariablendaten bezeichnet), die die zu prognostizierenden Qualitätsvariablen oder Qualitätsparameter angeben, wenn Online-Qualitätsprognose und Fehlererkennung für den Prozess implementiert werden, werden zudem während der Zeiten aus dem Prozess erfasst, wenn die Prozessparameterdaten entwickelt oder erfasst werden. Die Prozessparameterdaten und die Qualitätsparameterdaten werden als Satz von Modelltrainingsdaten, hier als Trainingsdaten bezeichnet, in einem Speicher gespeichert.
-
Wichtig ist, dass, wenn die in der Modellentwicklungstechnik von 3 zu verwendenden Trainingsdaten generiert oder erfasst werden, der Prozess, aus dem die Daten erfasst werden, vorzugsweise über eine Anzahl unterschiedlicher Prozessstufen oder Prozessstadien betrieben wird, die unterschiedlichen Werten oder Bereichen des Stadiumparameters entsprechen. In diesem Fall werden die Trainingsdaten für jeden der Prozessparameter und der Qualitätsparameter mehrfach während des Betriebs des Prozesses erfasst, so dass vorzugsweise Prozessparameterdaten und Qualitätsparameterdaten für jedes der Stadien des Prozesses erfasst werden, d. h. während der Prozess in jedem der unterschiedlichen definierten Prozessstadien betrieben wird sowie wenn sich der Prozess im Übergang zwischen Stadien befindet. Die Trainingsdaten können natürlich während des normalen oder geplanten Betriebs des Prozesses über jegliche gewünschten Zeitspannen erhalten werden, wobei diese Zeitspannen entweder zusammenhängend oder nicht-zusammenhängend sind, falls gewünscht. Die Prozessparameterdaten und die Qualitätsparameterdaten können Prozessparameterwerte (einschließlich Qualitätsparameterwerten), die gemessen oder anderweitig in Echtzeit innerhalb eines Prozesses erfasst worden sind, Prozessparameterwerte (einschließlich Qualitätsparameterwerten), die mit Offline-Techniken generiert sind, wie Laboranalysen, Prozessparameterwerte (einschließlich Qualitätsparameterwerten), die von einem Anwender eingegeben oder erhalten wurden, beispielsweise über eine Benutzeroberfläche, oder Daten einschließen, die in jeder anderen gewünschten Weise erhalten wurden.
-
An einem Block 214 von 3 ermittelt oder erhält die Modellentwicklungstechnik 200 eine Angabe des Prozessstadiumparameters oder der Stadiumvariablen, die zu verwenden ist, wenn das/die Qualitätsprognose- und Fehlererkennungsmodell(e) aufgebaut wird/werden. Dieser Stadiumparameter oder die Stadiumvariable kann beispielsweise von einem Ingenieur festgelegt oder voreingestellt werden und als Teil des Modellentwicklungssystems gespeichert werden, kann von einem Anwender über beispielsweise eine Benutzeroberfläche (z.B. eine der Benutzeroberflächen 13 von 1) angegeben oder ausgewählt werden oder in jeglicher anderen erwünschten Weise ermittelt werden. Als Prozessstadiumparameter wird im Allgemeinen eine signifikante Störgrößenvariable gewählt, wie der Durchsatz des Prozesses, eine Angabe der Produktklasse oder des Produkttyps, die/der von dem Prozess produziert werden, usw. In einigen Fällen kann der Stadiumparameter jedoch berechnet werden, indem zwei oder mehr Prozessparameter oder andere Prozessmessungen verwendet werden, oder kann daraus ermittelt werden. Der durchschnittliche Wert von zwei Prozessparametern kann beispielsweise als Stadiumparameter verwendet werden. In anderen Beispielen können andere statistische Techniken verwendet werden, um einen Stadiumparameter unter Verwendung von jeglichen gewünschten Eingaben aus dem Prozess zu berechnen, um einen Stadiumparameter zu ermitteln, der zu irgendeiner bestimmten Zeit das Stadium des Prozessbetriebs angibt. Der Stadiumparameter kann eine kontinuierliche Variable oder eine diskrete Variable sein. Der Anwender kann in einem Beispiel einen Stadiumparameter konfigurieren, der Änderungen in einer wesentlichen Störgröße auf den Prozessbetrieb widerspiegelt. Dieser Sta- diumparameter ist in einigen Fällen ein kontinuierlicher Parameter, wie die Produktionsrate oder der Durchsatz des Prozesses. In anderen Fällen kann der Stadiumparameter jedoch ein diskreter Parameter sein, wie eine Angabe von einem aus einem begrenzten Satz diskreter Produktklassen, die hergestellt werden. Der Anwender kann allgemein einen einzelnen gemessenen oder berechneten Prozessparameter als Stadiumparameter auswählen, kann angeben, ob dieser Stadiumparameter ein kontinuierlicher oder diskreter Parameter ist, und kann die Anzahl der Stadien oder Stufen spezifizieren, die in der Datenanalytik verwendet werden. Der gewählte Parameter kann beispielsweise standardgemäß als kontinuierlicher Parameter angenommen werden, und die Anzahl der Stadien kann als feste Zahl, wie fünf, angenommen werden.
-
Die Technik 200 ermittelt in Block 216 Bereiche oder Werte des Stadiumparameters, die jede(s) der unterschiedlichen Prozessstadien oder -stufen definieren. Der Block 216 kann auch die Anzahl der Prozessstadien ermitteln, die zur Generierung von Qualitätsprognose- und Fehlererkennungsmodellen verwendet werden sollen, falls diese Variable nicht bereits festgelegt worden ist. Die Bereiche der Stadiumparameter, die mit jedem der unterschiedlichen Prozessstadien assoziiert sind, können, wie bereits angegeben, von einem Anwender gewählt oder spezifiziert werden, wie einer Bedienungsperson, einem Verfahrensingenieur, usw. Diese Bereiche können unterschiedliche Werte des Stadiumparameters angegeben (in dem Fall, dass der Stadiumparameter eine diskrete Variable ist), oder unterschiedliche Bereiche von Werten des Stadiumparameters (im Fall, dass der Stadiumparameter eine kontinuierliche Variable ist), die mit jedem der Prozessstadien assoziiert sind. Der Stadiumparameter kann beispielsweise, nur um ein Beispiel zu geben, in 5 bis 10 unterschiedliche Bereiche unterteilt werden. Der Block 216 kann gewünschtenfalls automatisch Prozessstadiumbereiche ermitteln, die mit der Stadiumvariablen assoziiert sind, indem der Gesamtbereich des Stadiumparameters aus den Trainingsdaten ermittelt wird und dann dieser Bereich in einen Satz von Bereichen gesplittet wird, wie einen Satz von gleichen Bereichen.
-
Wenn ein vollständiger Satz von Trainingsdaten für den Prozess erfasst und gespeichert worden ist und der Stadiumparameter und die damit assoziierten Bereiche oder Werte definiert worden sind, um dadurch die Prozessstadien zu definieren, werden die Trainingsdaten verwendet, um ein oder mehrere Qualitätsprognosemodelle und/oder Fehlererkennungsmodelle zu entwickeln, die zur Analyse von zukünftigen Online-Betrieben des Prozesses zu verwenden sind. Die Technik der Generierung von Qualitätsprognosemodellen unterscheidet sich etwas von der Technik der Generierung von Fehlererkennungsmodellen, und daher sind diese beiden Techniken in 3 unter Verwendung von zwei unterschiedlichen Zweigen separat dargestellt.
-
Ein Zweig 220 von 3 illustriert allgemein gesagt die Schritte, die zur Entwicklung von Qualitätsprognosemodellen verwendet werden, wie PLS-Modellen, NN-Modellen und MLR-Modellen, während ein Zweig 222 die Schritte illustriert, die zur Entwicklung von Fehlererkennungsmodellen, wie PCA-Modellen, verwendet werden. Wenn ein Qualitätsprognosemodell entwickelt wird, ermittelt ein Block 224 Zeitverschiebungen für die Trainingsdaten für die unterschiedlichen Prozessparameter, einschließlich des Stadiumparameters, die eine Weise von Zeitverschiebungen dieser Parameter in Bezug zueinander oder in Bezug zu dem Qualitätsparameter repräsentieren, um die Prozessparameter in einer Weise auszurichten, die zeitlich mit den Qualitätsparameterdaten am besten ausgerichtet ist. Diese Zeitausrichtung liefert ein Prognosemodell, welches bessere Prognosen durchführt.
-
Während der Entwicklung von Qualitätsprognosemodellen (z.B. den NN-, MLR- und PLS-Modellen) für jeden der zu prognostizierenden Qualitätsparameter werden insbesondere die Abweichungswerte, die zur Produktion des Modelles verwendet werden, zeitlich verschoben, um die Zeit zu berücksichtigen, die für eine Änderung in einer Eingabe für ein Prozessmodell erforderlich ist (d. h. eine Änderung in einem der Prozessparameterwerte), um den Qualitätsparameter zu beeinflussen, der von dem Modell prognostiziert wird. Wie bekannt sein wird, kann sich diese Verzögerung von jedem der als Eingaben in das Qualitätsprognosemodell verwendeten Prozessparameter unterscheiden und tut dies in der Regel auch. (In ähnlicher Weise werden dieselben Verzögerungen in der Verarbeitung der Abweichungswerte berücksichtigt, die zur Online-Qualitätsparameterprognose verwendet werden.)
-
Eine Weise zur Identifizierung der mit jedem Prozessparameter assoziierten Verzögerung ist die Durchführung einer Kreuzkorrelation zwischen jedem der Prozessparameter und dem zu prognostizierenden Qualitätsparameter. Für den ausgewählten Datensatz, der alle Prozesseingaben (einschließlich des Stadiumparameters) einschließt, kann der Block 224 in diesem Fall eine Kreuzkorrelation zwischen jedem Prozessparameter, der verwendet wird, um eine Eingabe für das entwickelte Modell zu produzieren, und der Prozessausgabe durchführen, der den prognostizierten Qualitätsparameter widerspiegelt oder mit diesem am besten korreliert (der beispielsweise unter Verwendung von Online-Messungen, Offline-Laboranalysen, usw. erhalten werden kann). Die Ergebnisse der Kreuzkorrelation können verwendet werden, um die Zeitverzögerung zu erzeugen, die mit einem bestimmten Prozessparameter (als Eingabe für das Modell) zu assoziieren ist, indem die Zeitverschiebung ermittelt wird, die zu dem maximalen Korrelationswert führt, wenn eine Kreuzkorrelation zwischen dem Qualitätsparameter und dem bestimmten Prozessparameter durchgeführt wird. Natürlich kann mit jedem unterschiedlichen Prozessparameter eine unterschiedliche Zeitverschiebung assoziiert sein. Mit dieser Technik ermittelt allgemein gesagt der Block 224 den höchsten Kreuzkorrelationswert zwischen einer bestimmten Qualitätsmessung und jedem Prozessparameter für jeden der unterschiedlichen Prozessparameter und ermittelt dann eine Zeitverschiebung für jenen Prozessparameter basierend auf der Zeitverzögerung, bei der der höchste Kreuzkorrelationswert erhalten wird.
-
Ein Beispiel für eine Weise, in der Kreuzkorrelation verwendet werden kann, zum Zeitverschiebungen zu ermitteln, die zur Entwicklung eines Qualitätsprognosemodells zu verwenden sind, wird in einer Situation illustriert, in der eine mit der Ausgabe eines Kamyr-Kochers assoziierte Kappa-Zahl basierend auf Prozesseingaben prognostiziert wird. In diesem Beispiel wird die Dosiergeschwindigkeit der Schnitzel als Stadiumparameter gewählt, weil sie den Prozessdurchsatz festlegt. Die Kappa- Zahl der Produktausgabe kann mit einem Stichprobenanalysator oder durch Analyse einer gezogenen Probe im Labor gemessen werden. Die Verzögerung, die mit jeder Prozesseingabe assoziiert ist, die sich in der Kappa-Zahl widerspiegelt, wird automatisch ermittelt, indem eine Kreuzkorrelation zwischen den Prozesseingaben und der Kappa-Zahl durchgeführt wird, die in einem ausgewählten Datensatz enthalten sind. Die Ergebnisse einer derartigen Kreuzkorrelationsermittlung für jede der Eingaben des Kochers mit den Bezeichnungen COLD BLOW (kaltes Ausblasen), OUTLET (Auslass), MAIN BLOW (Hauptausblasen), CHIP METER (Schnitzeldosierung) und LOWER EXT (untere Ext.), sind in 4 gezeigt.
-
Durch Auswählen einer Prozesseingabe kann ein Anwender nun die Kreuzkorrelation zwischen der Prozesseingabe und der Kappa-Zahl sehen. 5 illustriert die Kreuzkorrelation zwischen dem Stadiumparameter, der Schnitzeldosiergeschwindigkeit und der Analyse der Kappa-Zahl detaillierter. Wie in der Auftragung von 5 illustriert wird, wird die mit der Prozesseingabe assoziierte Verzögerung basierend auf der Zeitverschiebung erzeugt, die maximale Korrelation liefert. In dieser Simulation eines Kamyr-Kochers beträgt die Verzögerung zwischen der Änderung der Schnitzeldosiergeschwindigkeit und dem Widerspiegeln dieser Veränderung in der Kappa-Zahl 175 Sekunden. In einem tatsächlichen Prozess könnte die Verzögerung natürlich viel länger sein. Verzögerungen oder Zeitverschiebungen für jeden der anderen Eingabeparameter könnten in ähnlicher Weise ermittelt werden, und diese Verzögerungen können dann als Zeitverzögerungsbeträge in dem Block 224 von 3 verwendet werden.
-
Nachdem alle Zeitverschiebungen der Prozessparameter und Stadiumparameter ermittelt worden sind, verwendet ein Block 226 die in Block 224 ermittelten Zeitverzögerungen, um die Prozessparameterdaten für jede Prozessparametereingabe für das Modell und den Stadiumparameter zeitlich zu verschieben und speichert diese zeitverschobenen Parameterdaten in einem Speicher. Der Block 226 speichert insbesondere Sätze von zeitverschobenen Datenanteilen, wobei jeder zeitverschobene Datenanteil einen Wert für jeden der zur Generierung des Modells zu verwendenden Prozessparameter, einen Wert des Stadiumparameters und einen Wert des Qualitätsparameters aufweist. Die Messungen der Prozessparameter und des Stadiumparameters eines bestimmten Datenanteils sind in Bezug auf die Messung des Qualitätsparameters durch die durch den Block 224 ermittelten Zeitverschiebungsbeträge zeitverschoben. Die resultierenden zeitverschobenen Parameterdaten für die unterschiedlichen Prozessparameter und die Stadiumparameter jedes zeitverschobenen Datenanteils scheinen zeitlich zusammenzutreffen. Eine Änderung in einer Prozessparametereingabe spiegelt sich somit unmittelbar in dem Qualitätsparameter in jedem zeitverschobenen Datenanteil wider.
-
Als nächstes verwendet ein Block 228 die zeitverschobenen Daten, die durch den Block 226 entwickelt wurden, um die durchschnittlichen Werte für jeden Prozessparameter (einschließlich des Stadiumparameters) und den durchschnittlichen Wert für den Qualitätsparameter zu berechnen, während sie in jedem der definierten Prozessstadien sind. Der Block 228 geht speziell alle der zeitverschobenen Datenanteile durch und verwendet den Wert des Stadiumparameters in jedem Datenanteil, um zu ermitteln, in welches bestimmte Prozessstadium jeder Datenanteil basierend auf den Prozessstadiumbereichen des Stadiumparameters fällt. Der Block 228 mittelt dann alle Werte von jedem Prozessparameter, den Stadiumparameter und den Qualitätsparameter von allen der Datenanteile in einem bestimmten Prozessstadium, um einen separaten Mittelwert für jeden Prozessparameter, für den Stadiumparameter und für den Qualitätsparameter des bestimmten Prozessstadiums zu ermitteln. Diese Mittel werden hier als die Prozessstadiummittel bezeichnet.
-
Ein Block 230 speichert dann diese durchschnittlichen oder Mittelwerte der Prozessparameter, den Stadiumparameter und den Qualitätsparameter für jedes Prozessstadium in einem Speicher zur späteren Verwendung in der Entwicklung des Qualitätsprognosemodells sowie in der Verwendung des einmal entwickelten Qualitätsprognosemodells.
-
Für jeden Datenanteil (auch als Zeitanteil bezeichnet) verwendet danach ein Block 232 die zeitverschobenen Daten jenes Zeitanteils und die Prozessstadiummittel, um einen Satz von Mitteln zu ermitteln, der zu verwenden ist, wenn ein Satz von Abweichungen von dem Mittel für jenen Zeitanteil ermittelt wird. Der Block 232 wählt insbesondere einen Zeitanteil der Daten zur Verarbeitung, um einen Satz von Mitteln zur Verwendung für jenen Zeitanteil zu ermitteln, um danach die Abweichungen von dem Mittel für jenen Zeitanteil zu ermitteln, wobei die Abweichungen von dem Mittel Eingaben für eine Modellgenerierungsroutine sind, die in der Entwicklung des Qualitätsprognosemodells zu verwenden ist. Für jeden Zeitanteil verwendet der Block 232 insbesondere den Sofortwert des Stadiumparameters, der durch jenen Zeitanteil angegeben (hierfür gespeichert) ist, und die Mittelwerte des Stadiumparameters, die für einen oder mehrere der Prozessstadien ermittelt worden sind, um einen Skalierungsfaktor (z.B. einen Interpolationsfaktor) zu ermitteln, der zu verwenden ist, um die geeigneten Mittelwerte für jeden der anderen Prozessparameter des Zeitanteils zu ermitteln.
-
Wenn es sich bei dem Stadiumparameter um eine diskrete Variable handelt, die direkt mit den Prozessstadien korreliert (d. h. ein anderer Wert des Stadiumparameters ist mit jedem unterschiedlichen Prozessstadium assoziiert oder für dieses definiert), dann definiert der Wert des Stadiumparameters das Prozessstadium, in dem der Prozess (für jenen Zeitanteil) betrieben wird, oder ermittelt dieses in eindeutiger Weise, und die Mittel der Prozessparameter für jenen Zeitanteil werden einfach als Prozessparametermittel ermittelt, die für jenes Prozessstadium gespeichert sind. Wenn der Statusparameter jedoch eine kontinuierliche Variable ist oder der Anwender einen Bereich von Werten des Stadiumparameters definiert hat, die mit jedem der Prozess- stadien zu assoziieren sind (d. h. für jedes Prozessstadium ist ein Bereich von Stadiumparameterwerten definiert), dann ermittelt der Block 232 einen Interpolationsfaktor, der eine Fraktion von zwei Stadien definiert, worin der Sofortwert des Stadiumparameters (des Zeitanteils) zurzeit liegt. Wenn der Sofortwert des Stadiumparameters gleich dem Mittelwert des Stadiumparameters für ein bestimmtes Prozessstadium ist, ist also der Zeitanteil direkt innerhalb eines einzigen Prozessstadiums, und die für jenes Prozessstadium gespeicherten Prozessparametermittel können als Mittel für die anderen Prozessparameter jenes Zeitanteils verwendet werden.
-
Wenn der Sofortwert des Stadiumparameters jedoch zwischen die Stadiumparametermittel von zwei unterschiedlichen (z.B. zwei benachbarten) Prozessstadien fällt, dann werden die Mittel für die anderen Prozessparameter des Zeitanteils als Kombination der Prozessparametermittel ermittelt, die für jene beiden Prozessstadien gespeichert sind. Das Mittel für jeden für den Zeitanteil zu verwendenden Prozessparameter wird in der Regel ermittelt, indem zwischen den Parametermitteln für jenen Parameter der beiden benachbarten Prozessstadien unter Verwendung eines Interpolationsfaktors interpoliert wird, der aus dem Sofortstadiumparameterwert entwickelt wurde. Das bedeutet, dass eine Interpolationsroutine den Prozentsatz von jedem der beiden Prozessstadien ermitteln kann, in denen der Zeitanteil vorliegt, basierend auf dem relativen Abstand des Sofortwerts des Stadiumparameters (des Zeitanteils) und der beiden nächstgelegenen Mittelwerten des Stadiumparameters (aus zwei unterschiedlichen Prozessstadien). Der Block 232 kann die Interpolation (unter Verwendung desselben Interpolationsfaktors) für jeden der Prozessparameter in dem Zeitanteil unter Verwendung der gespeicherten Prozessparametermittel für die beiden benachbarten Prozessstadien durchführen. Als Ergebnis dieser Operation ermittelt der Block 232 den geeigneten Mittelwert, der (für jeden Prozessparameter des Zeitanteils) zur Berechnung der Abweichungen von dem Mittel für jenen Zeitanteil zu verwenden ist, der zur Erstellung eines Prozessmodells zu verwenden ist. Der Block 232 führt diese Interpolation auch für den Qualitätsparameter des Zeitanteils durch. Für jeden Prozessparameter und den Qualitätsparameters eines Zeitanteils verwendet der Block 232 somit die ermittelte Fraktion innerhalb des Stadiums und die Stadiummittel von zwei benachbarten Prozessstadien, um den Mittelwert der Prozessparameter für den Zeitanteil zu ermitteln.
-
Ein Beispiel für die Durchführung von Interpolation, um einen Satz von Zeitanteilmitteln für einen bestimmten Zeitanteil zu ermitteln, wird nun detaillierter beschrieben. In diesem Beispiel wird angenommen, dass der Variationsbereich des Stadiumparameters aus Trainingsdaten berechnet ist, um den gesamten Betriebsbereich des Stadiumparameters zu ermitteln. Standardgemäß wird dieser Betriebsbereich automatisch in eine Anzahl gleicher Segmente unterteilt, die die unterschiedlichen Stadien des Prozesses repräsentieren, die in der Analyse betrachtet werden. Der Anwender könnte in einem anderen Fall den Gesamtbereich des Stadiumparameters, die Anzahl der Prozessstadien oder -stufen und die bestimmten Unterbereiche der Stadiumparameter spezifizieren, die mit jedem der Prozessstadien assoziiert sind. In diesem Beispiel wird in jedem Fall der durchschnittliche Wert des Stadiumparameters für jede Prozessmessung während jedes der definierten Prozessstadien oder -stufen ermittelt und im Speicher gespeichert. In diesem Beispiel, welches den Betrieb eines Kocherprozesses betrifft, ist der Wasserdampfbedarf des Kochers als Stadiumparameter konfiguriert, und es wird angenommen, dass diese Variable in dem Datensatz, der für den Modellaufbau ausgewählt wurde, über einen Bereich von 25 bis 75 % variierte. Die für andere Eingaben erfassten Werte, z.B. fünf Parametereingaben für Brennstofffluss, Luftfluss, O2, Förderdruck und IS-Ventilatorgeschwindigkeit, die in das Modell eingeschlossen sind, erscheinen wie in der folgenden Tabelle 1 illustriert.
Stadium-Wasserdampfbedarf | 1 | 2 | 3 | 4 | 5 |
Stadiumbereich | 25–35 | 35–45 | 45–55 | 55–65 | 65–75 |
Anzahl der Proben im Bereich | 210 | 340 | 150 | 85 | 30 |
Wasserdampfbedarf-Durchschnitt | 30 | 40 | 50 | 60 | 70 |
Brennstofffluss-Durchschnitt | 30 | 40 | 50 | 60 | 70 |
Luftfluss-Durchschnitt | 35 | 45 | 55 | 65 | 75 |
O2-Durchschnitt | 2.5 | 2.5 | 2.5 | 2.5 | 2.5 |
Förderdruck-Durchschnitt | –1 | –1 | –1 | –1 | –1 |
IS-Ventilatorgeschwindigkeit- Durchschnitt | 20 | 28 | 38 | 50 | 65 |
Tabelle 1
-
Um die Zeitanteilmittel zu ermitteln, die zu verwenden sind, um Abweichungen von dem Mittel für einen Zeitanteil zu ermitteln, kann in diesem Beispiel folgendes Verfahren verwendet werden. Falls der Sofortwert des Stadiumparameters des Zeitanteils gleich dem Stadiumparametermittel für ein Prozessstadium ist, dann werden die Stadiumparametermittel für die anderen Prozessparameter jenes Prozessstadiums als Zeitanteilmittelwerte zur Berechnung der Parameterabweichungen vom Mittel für jenen Zeitanteil verwendet. In den meisten Fällen fällt der Stadiumparameterwert eines Zeitanteils jedoch zwischen die Stadiumparametermittelwerte für zwei Prozessstadien. Die Stadiumparametermittelwerte für diese beiden Prozessstadien werden in diesem Fall zusammen mit den Prozessparametermittelwerten für diese beiden Prozessstadien verwendet, um die Zeitanteilparametermittelwerte zu berechnen. Wenn in dem oben beschriebenen Kocherbeispiel der Stadiumparameterwert für einen Zeitanteil 37 wäre, könnte der Mittelwert für den Luftflussparameter basierend auf den für die Prozessstadien gespeicherten Stadiumparametermittelwerten für jenen Zeitanteil unter Verwendung von Standardinterpolationstechniken in folgender Weise ermittelt werden: Luftflussmittel = ( 37 – 30 / 40 – 30)×(45 – 35) + 35 = 42
-
Wenn der Stadiumparameter Produktklasse ist (ein diskreter Parameter mit nummerierten Werten, z.B. 1–5), dann kann der Parametermittelwert für jedes Stadium während der Modellentwicklung für die Datenproben berechnet werden, die mit dem Stadiumparameter zusammenfallen, der sich in jenem Stadium befindet. Die Mittelwerte, die für einen kontinuierlichen Reaktor erzeugt wurden, können beispielsweise wie unten in Tabelle 2 gezeigt erscheinen.
Stadium | 1 | 2 | 3 | 4 | 5 |
Klassenbeschreibung | ADX201 | ADX210 | ADX215 | ADX230 | ADX240 |
Probe in Stadium | 210 | 340 | 150 | 85 | 30 |
Primärfluss-Mittel | 70 | 90 | 60 | 80 | 75 |
Sekundärfluss-Mittel | 25 | 35 | 30 | 45 | 50 |
Produktkonzentration-Mittel | 35 | 40 | 30 | 45 | 42 |
Reaktortemperatur-Mittel | 210 | 215 | 205 | 211 | 200 |
Kühlerausgangtemperatur-Mittel | 180 | 185 | 174 | 200 | 190 |
Reaktordruck-Mittel | 10 | 10 | 10 | 10 | 10 |
Tabelle 2
-
Wenn der Stadiumparameterwert 3 wäre (ADX2159, wäre der Mittelwert für den Primärfluss 60. Würde der Stadiumparameterwert auf 1 (ADX201) geändert, wäre der Mittelwert für den Primärfluss 70. Jegliche Veränderungen des Stadiums spiegeln sich nicht unmittelbar in den Prozessparametern wider.
-
Nachdem die Mittelwerte für jeden Zeitanteil (als Anteilmittel bezeichnet) ermittelt worden sind, verwendet ein Block 234 die berechneten Zeitanteilmittel zur Berechnung einer Abweichung von dem Mittel für jeden der Prozessparameter und den Qualitätsparameter innerhalb des Zeitanteils. Block 234 ermittelt insbesondere die Differenz zwischen jedem Prozessparameerwert (und Qualitätsparameterwert) des Zeitanteils und seinem assoziierten Zeitanteilmittel (wie in dem Block 232 ermittelt), um einen Satz von Abweichungen von dem Mittel zu produzieren, wobei eine Abweichung von dem Mittel für jeden Prozessparameter (außer dem Stadiumparameter) und Qualitätsparameter in dem Zeitanteil ermittelt wird. Die Abweichungen von dem Mittel für jeden Zeitanteil können dann in einem Speicher gespeichert werden.
-
Ein Block 235 filtert als nächstes jede Kette von Abweichungen von dem Mittel separat. Dieser Filterprozess macht das generierte Prozessmodell robuster und trägt dazu bei, dass das Modell keine Qualitätsprobleme erkennt, wenn der Prozess sich einfach zwischen Stadien bewegt. Der Block 235 kann einen Tiefpassfilter für jeden Prozessparameter, den Stadiumparameter und den Qualitätsparameter implementieren. Die Tiefpassfilter können eine Filterzeitkonstante verwenden, die gleich oder größer als die längste Reaktionszeit des Qualitätsparameters auf eine Änderung in irgendwelchen der Prozessparameter festgelegt ist, die als Eingaben für das konstruierte Modell verwendet werden. Es können natürlich auch andere Filterzeitkonstanten verwendet werden, und diese Zeitkonstanten könnten basierend auf Reaktionszeiten ausgewählt werden, die kürzer als die längste Reaktionszeit des Qualitätsparameters sind.
-
Als ein Beispiel für Filtern kann ein Filter erster Ordnung basierend auf der konfigurierten Übergangszeit des Prozesses (in Sekunden) angewendet werden. Die Luftflussabweichung vom Mittel in dem Beispiel aus Tabelle I oben könnte beispielsweise folgendermaßen berechnet werden: Luftflussabweichungn = F × ((Luftflussn – Luftflussmitteln) – Luftflussabweichungn-1) + Luftflussabweichungn-1 wobei der Filterfaktor F ist: F = ΔT / ΔT + τ und wobei
- ΔT
- = Ausführungsyeit (Sek)
- τ
- = Übergangsyeit (Sek)
-
Die gefilterten Abweichungen von dem Mittel werden dann einem Block 236 zur Verfügung gestellt, der die gefilterten Abweichungen von den Mitteln verwendet, um das Prozessmodell, z.B. das NN-, MLR- und/oder PLS-Modell zu ermitteln oder zu generieren, das in späteren Qualitätsprognoseoperationen zu verwenden ist. Jegliche gewünschte Technik zur Erstellung dieser Modelle kann verwendet werden, und diese Techniken sind wohlbekannt. Das Verfahren zum Generieren von Modellen aus den Abweichungen von dem Mittel wird hier somit nicht detailliert beschrieben. Als Teil der Prozessmodellgenerierung werden die ermittelten Prozessparametermittel (einschließlich der Stadiumparametermittel) und die Qualitätsparametermittel, die für jedes der Prozessstadien ermittelt wurden (d. h. die Prozessstadiummittel) sowie die Stadiumparameterbereiche für jedes Prozessstadium als Teil des Prozessmodells gespeichert und werden verwendet, wenn das Prozessmodell verwendet wird, um Qualitätsprognose in einem Online-Prozess durchzuführen. Die Filterzeitkonstanten und die Zeitverschiebungswerte können zudem als Teil des Prozessmodells gespeichert werden.
-
Nun wird in Bezug auf die Verzweigung 222 von 3 ein Verfahren zur Erstellung eines Fehlererkennungsmodells beschrieben. Die Technik zur Erstellung eines Fehlererkennungsmodells, das in der Verzweigung 222 illustriert ist, ist allgemein gesagt in vielerlei Hinsicht der Technik zur Erstellung eines Qualitätsprognosemodells ähnlich. Das Fehlererkennungsmodell wird jedoch aus Trainingsdaten entwickelt, die nicht zeitverschoben oder zeitausgerichtet worden sind, da dieses Modell verwendet wird, um eine zukünftige Fehlerprognose zu machen (statt die Prozessqualität zu jeder bestimmten Zeit zu prognostizieren). Die Trainingsdaten werden in der Verzweigung 222 in allen anderen Aspekten sehr ähnlich der Weise verarbeitet, in der die zeitausgerichteten Datenanteile in der Verzweigung 220 verarbeitet werden.
-
Ein Block 248 verwendet somit die Trainingsdaten, die für den Prozess erfasst wurden, und berechnet die durchschnittlichen oder Mittelwerte für jeden Prozessparameter (einschließlich des Stadiumparameters) und den durchschnittlichen Wert für den Qualitätsparameter für jedes der definierten Prozessstadien. Weil der Block 248 mit Zeitanteilen der Rohtrainingsdaten anstelle der zeitausgerichteten Daten arbeitet, können sich die in dem Block 248 berechneten Mittel von den in dem Block 228 berechneten Mitteln unterscheiden. Ein Block 250 speichert dann diese durchschnittlichen oder Mittelwerte der Prozessparameter und den Qualitätsparameter in einem Speicher als Prozessstadiummittel zur späteren Verwendung in der Entwicklung des Fehlererkennungsmodells sowie zur Verwendung in der Durchführung von Fehlererkennung, nachdem das Modell entwickelt worden ist.
-
Für jeden Zeitanteil der Trainingsdaten verwendet danach ein Block 252 die Parameterdaten jenes Zeitanteils und die Prozessstadiummittel, um einen Satz von Zeitanteilmitteln zu ermitteln, der zu verwenden ist, wenn Abweichungen von den Mitteln für jenen Zeitanteil ermittelt werden. Der Block 252 wählt insbesondere einen Zeitanteil der Daten zur Verarbeitung, um einen Satz von Mitteln zur Verwendung für jenen Zeitanteil zu ermitteln, um danach die Abweichungen von den Mitteln für jenen Zeitanteil zu ermitteln, wobei die Abweichungen von den Mitteln Eingaben für eine Modellgenerierungsroutine sind, die in der Entwicklung des Fehlererkennungsmodells zu verwenden ist. Für jeden Zeitanteil verwendet der Block 252 insbesondere den Sofortwert des Stadiumparameters, der durch jenen Zeitanteil angegeben (hierfür gespeichert) ist, und die Stadiumparametermittelwerte, die für die Prozessstadien gespeichert sind, um einen Skalierungsfaktor (z.B. einen Interpolationsfaktor) zu ermitteln, der zu verwenden ist, um die geeigneten Zeitanteilmittelwerte für jeden der anderen Prozessparameter in dem Zeitanteil zu ermitteln. Dieser Prozess ist demjenigen ähnlich, der für den Block 232 beschrieben ist, und wird daher hier nicht wiederholt. Der Block 252 führt in jedem Fall Interpolation (unter Verwendung desselben Interpolationsfaktors) für jeden der Prozessparameter in dem Zeitanteil unter Verwendung der Prozessstadiummittel für den Prozessparameter von zwei benachbarten Prozessstadien durch, um den geeigneten Zeitanteilmittelwert zu ermitteln, der zum Ermitteln der Abweichung von dem Mittel zu verwenden ist, das zur Erstellung eines Fehlererkennungsmodells aus jenem Zeitanteil der Daten zu verwenden ist. Der Block 252 führt diese Interpolation auch für den Qualitätsparameter des Zeitanteils durch.
-
Nachdem die Zeitanteilmittelwerte für jeden Datenzeitanteil ermittelt worden sind, verwendet ein Block 254 die berechneten Zeitanteilmittel zum Ermitteln einer Abweichung von dem Mittel für jeden der Prozessparameter und den Qualitätsparameter innerhalb des Zeitanteils. Block 254 ermittelt insbesondere die Differenz zwischen jedem Prozessparameter (und Qualitätsparameter) des Zeitanteils und seinem assoziierten Zeitanteilmittel (wie in dem Block 252 ermittelt), um einen Satz von Abweichungen von dem Mittel zu produzieren, wobei eine Abweichung von dem Mittel für jeden Prozessparameter (außer dem Stadiumparameter) und Qualitätsparameter in dem Zeitanteil ermittelt wird.
-
Ein Block 255 filtert dann die Abweichungen von den Mittelwerten, um das generierte Prozessmodell robuster zu machen und dazu beizutragen, dass das Modell keine Fehler erkennt, wenn sich der Prozess zwischen Prozessstadien bewegt. Der Block 235 kann einen Tiefpassfilter implementieren, in dem die Filterzeitkonstante gleich oder größer als die längste Reaktionszeit des Qualitätsparameters auf eine Änderung in irgendwelchen der Prozessparameter festgelegt wird, die als Eingaben für das konstruierte Modell verwendet werden. In einem Beispiel können die Abweichungen vom Mittel beispielsweise basierend auf der Übergangszeit für den erkannten Fehler gefiltert werden, um die Zeit zu berücksichtigen, die der Prozess braucht, um auf eine Stadiumänderung zu reagieren. Es können natürlich auch andere Filterzeitkonstanten verwendet werden, und diese Zeitkonstanten könnten basierend auf Reaktionszeiten ausgewählt werden, die kürzer als die längste Reaktionszeit sind.
-
Die gefilterten Abweichungen von den Mitteln werden dann einem Block 256 zur Verfügung gestellt, der die gefilterten Abweichungen von den Mitteln verwendet, um das Fehlererkennungsmodell, z.B. ein PCA-Modell, zu ermitteln oder zu generieren, das in späteren Fehlererkennungsoperationen zu verwenden ist. Der Prozess des Erstellens eines PCA-Modells aus einem Satz von Abweichungen von dem Mittel für einen Satz von Parametern ist wiederum wohlbekannt und wird daher hier nicht detailliert beschrieben. Als Teil der Prozessmodellgenerierung werden die ermittelten Prozessparametermittel (einschließlich der Stadiumparametermittel) und die Qualitätsparametermittel, die für jedes der Prozessstadien ermittelt wurden (d. h. die Prozessstadiummittel) sowie die Stadiumparameterbereiche für jedes Prozessstadium als Teil des Prozessmodells gespeichert und werden verwendet, wenn das Prozessmodell verwendet wird, um Fehlererkennung in einem Online-Prozess durchzuführen. Die Filterzeitkonstanten können zudem als Teil des Prozessmodells gespeichert werden.
-
6A illustriert ein System zum Implementieren der Technik zum Generieren des Prozessqualitätsprognosemodells 200 aus 3. Wie in 6A illustriert ist, arbeitet der Prozess 300 insbesondere in einer Trainingsphase, um Prozessdaten in Form von Prozessparameterdaten (einschließlich Stadiumparameterdaten) und Qualitätsparameterdaten für eine signifikante Anzahl von Zeiten oder Proben zu generieren. Die durch die Linien 302 von 6A dargestellten Prozessparameterdaten schließen Prozessparameter-, Stadiumparameter- und Qualitätsparameterdaten ein, z.B. Prozessvariablenwerte, Stadiumvariablenwerte und Qualitätsvariablenwerte, die von Geräten innerhalb des Prozesses 300 gemessen oder ausgegeben oder anderweitig aus dem Prozess 300 während des Betriebs des Prozesses 300 erfasst werden. Die Prozessparameterdaten 302 werden als Satz von Trainingsdaten erhalten und in einem Speicher 304 gespeichert. Der Speicher 304 kann beispielsweise die Datenhistorie 12 von 1 oder jeglicher andere gewünschte Speicher sein. Daten für jede Anzahl von Prozessparametern, Qualitätsparametern (einschließlich Fehlerangaben) und Stadiumparametern können natürlich gemessen, erfasst und als Teil der Trainingsdaten in dem Speicher 304 gespeichert werden.
-
Als nächstes arbeitet ein Zeitverschiebungsrechenblock 306 mit den aus dem Speicher 304 erhaltenen Trainingsdaten, wobei die Identität des Stadiumparameters und der Bereiche der Stadiumparameterwerte, die die unterschiedlichen Prozessstadien definieren, die Identität der als Eingaben für ein Modell zu verwendenden Prozessparameter und der durch das Modell zu erzeugende Qualitätsparameter verwendet werden. Der Block 306 kann diese Angaben beispielsweise von einem Anwender über eine Benutzeroberfläche 305 empfangen. Der Block 306 verwendet die Angabe des Qualitätsparameters und der Prozessparameter, die in dem konstruierten Modell zu verwenden sind, und führt die oben beschriebene Kreuzkorrelationstechnik durch, um die geeigneten Zeitverschiebungen für jeden der Prozessparameter zu ermitteln. Der Block 306 kann natürlich die Kreuzkorrelation automatisch durchführen und die geeignete Zeitverschiebung für jeden Prozessparameter automatisch ermitteln oder kann Eingabe(n) von einem Anwender über die Benutzeroberfläche 305 empfangen, die einem Anwender die Anzeige und Auswahl der passenden Verzögerungszeiten für jeden der Prozessparameter ermöglichen kann.
-
Nachdem die Zeitverschiebungen für jeden der Prozessparameter (und den Stadiumparameter) berechnet worden sind, empfängt ein Zeitverschiebungsblock oder eine Verzögerungseinheit 308 die Trainingsdaten und verzögert die verschiedenen Prozessparameterwerte der unterschiedlichen Prozessparameter, die in dem konstruierten Modell zu verwenden sind, um die geeigneten Beträge und speichert dann die zeitausgerichteten Parameterdaten in einem Speicher 310 als zeitausgerichtete Datenanteile. Jeder zeitausgerichtete Datenanteil hat einen Wert für jeden Prozessparameter, der als Eingaben für das konstruierte Modell verwendet wird, einen Wert für den Stadiumparameter und einen assoziierten Wert für die Qualitätsangabe, die durch das zu konstruierende Modell prognostiziert wird, wobei die Werte der Prozessparameter und des Stadiumparameters relativ zu dem Wert des Qualitätsparameters zeitverschoben (d. h. zeitlich vorgezogen oder verzögert) sind, basierend auf den von dem Block 308 angewendeten Zeitverschiebungen.
-
Infolgedessen speichert der Speicher 310 Zeitanteile der Daten mit Werten der Prozessparameter, des Qualitätsparameters und des Stadiumparameters, die zeitausgerichtet sind, so dass Zeitverzögerungen zwischen den Änderungen in den Prozessparametern und den resultierenden Änderungen in dem Qualitätsparameter im bestmöglichen Ausmaß reduziert sind. Diese Sätze von Datenanteilen sind zur Verwendung zur Generierung des Modells am besten, um das genaueste Qualitätsprognosemodell zu produzieren.
-
Als nächstes analysiert ein Block 312 die Zeitanteildaten aus dem Speicher 310 und entwickelt einen Satz von Prozessparameter- und Qualitätsparametermitteln für jedes definierte Prozessstadium. Die Prozessparametermittel für jedes bestimmte Prozessstadium schließen für jeden Prozessparameter das Mittel der Werte jenes Prozessparameters aus allen Zeitanteilen ein, für die der Stadiumparameterwert der Zeitanteile in das bestimmte Prozessstadium fällt. Das Qualitätsparametermittel für jedes bestimmte Prozessstadium schließt in ähnlicher Weise für den Qualitätsparameter das Mittel der Werte des Qualitätsparameters für alle der Zeitanteile ein, für die der Stadiumparameterwert des Zeitanteils in das bestimmte Prozessstadium fällt. Das Stadiumparametermittel für jedes bestimmte Prozessstadium schließt in ähnlicher Weise für den Stadiumparameter das Mittel der Werte des Stadiumparameters in allen der Zeitanteile ein, für die der Stadiumparameterwert des Zeitanteils in das bestimmte Prozessstadium fällt.
-
Wenn die Prozessstadiummittel für jedes Prozessstadium aus dem gesamten Satz von Zeitanteilen ermittelt wurde, die in dem Speicher 310 gespeichert wurden (d. h. für die zeitausgerichteten Trainingsdaten), ermittelt ein Block 314 die Prozessparameter- und Qualitätsparametermittel zur Verwendung für jeden Zeitanteil (die Zeitanteilmittel) zum Ermitteln eines Satzes von Abweichungen von dem Mittel für jenen Zeitanteil. Wie in Bezug auf 3 erwähnt kann der Block 314 Interpolation verwenden, die auf dem Sofortwert des Stadiumparameters für einen Zeitanteil basiert, um die Weise zu ermitteln, in der zwischen den Prozessparametermitteln von zwei benachbarten Prozessstadien für jeden Prozessparameter und den Qualitätsparameter in dem Zeitanteil zu interpolieren ist.
-
Wenn die Mittel für jeden Zeitanteil ermittelt worden sind, werden diese Zeitanteilmittel zusammen mit den ausgerichteten Zeitanteildaten aus dem Speicher 310 einem Block 316 bereitgestellt und in diesem verwendet, um eine Abweichung von dem Mittel für jeden Prozessparameter und den Qualitätsparameter von jedem Zeitanteil zu ermitteln. Die Sätze der Abweichungen von dem Mittel (für jeden ausgerichteten Zeitanteil wird ein Satz von Abweichungen von dem Mittel erstellt) werden dann einem Filterblock 318 zur Verfügung gestellt, der die Abweichungen von den Mitteln Prozessparameter für Prozessparameter filtert, um Situationen zu berücksichtigen, in denen sich der Prozess von einem Stadium zu einem anderen ändert. Die Abweichungen von dem Mittel können allgemein gesagt mit einem Tiefpassfilter mit einer Zeitkonstanteneinstellung gefiltert werden, die auf dem Zeitbetrag basiert, den der Qualitätsparameter braucht, um auf Änderungen in den Prozessparametern zu reagieren. Die längste Reaktionszeit kann in einem Fall verwendet werden, um die Filterkonstante festzulegen. Die Filterkonstante ist im Allgemeinen für alle der Abweichungen von dem Mittel gleich. Die Filterzeitkonstante kann zusätzlich gewünschtenfalls durch einen Anwender beispielsweise über die Benutzeroberfläche 305 ausgewählt oder spezifiziert werden.
-
Die gefilterten Abweichungen von den Mitteln werden dann einem Modellgenerierungsblock 318 bereitgestellt, der diese Werte verwendet, um unter Verwendung von Standardmodellerstellungstechniken ein Qualitätsprognosemodell zu produzieren. Wie in 6A angegeben ist, erstellt der Modellgenerierungsblock 320 ein oder mehrere von einem PLS-Modell 322, einem NN-Modell 324 und einem MLR-Modell 326. Allgemein gesagt wird für jede prognostizierte Qualitätsvariable ein Einzelmodell erstellt, und diese Modelle können natürlich unterschiedliche Prozessparametereingaben haben. Der Modellgenerierungsblock 320 kann das Modell zusammen mit einem oder mehreren der Prozessstadiummittel, den Definitionen der Prozessstadien (z.B. der Bereiche des Stadiumparameters, die die verschiedenen Prozessstadien definieren), den Filterzeitkonstanten und den Zeitverschiebungswerten für jeden der Prozessparameter als Teil des Prozessmodells speichern.
-
6B illustriert ein System zum Entwickeln eines Fehlererkennungsmodells und schließt den Prozess 300, den Trainingsdaten-Speicher 304 und die in 6A illustrierte Benutzeroberfläche 305 ein. In diesem Fall analysiert ein Block 412 jedoch die Zeitanteildaten der Rohtrainingsdaten in dem Speicher 304, um einen Satz von Prozessparameter- und Qualitätsparametermitteln für jedes definierte Prozessstadium zu entwickeln. Die Prozessparametermittel für jedes bestimmte Prozessstadium schließen für jeden Prozessparameter das Mittel der Werte des Prozessparameters in allen der Zeitanteile ein, für die der Stadiumparameterwert der Zeitanteile in den bestimmten Prozessstadiumbereich fällt. Das Qualitätsparametermittel für jedes bestimmte Prozessstadium schließt in ähnlicher Weise für den Qualitätsparameter das Mittel der Werte des Qualitätsparameters in allen Zeitanteilen ein, für die der Stadiumparameter innerhalb des Prozessstadiums fällt. Das Stadiumparametermittel für jedes bestimmte Prozessstadium schließt in ähnlicher Weise für den Stadiumparameter das Mittel der Werte des Stadiumparameters in allen der Zeitanteile ein, für die der Stadiumparameterwert des Zeitanteils in das bestimmte Prozessstadium fällt.
-
Wenn die Prozessstadiummittel für jedes Prozessstadium aus dem gesamten Satz von Zeitanteilen ermittelt wurden, die in dem Speicher 304 gespeichert wurden (d. h. für die Zeitanteile der Trainingsdaten), ermittelt ein Block 414 die Prozessparameter- und Qualitätsparametermittel zur Verwendung für jeden Zeitanteil (die Zeitanteilmittel), um einen Satzes von Abweichungen von dem Mittel für jenen Zeitanteil zu ermitteln. Wie in Bezug auf 3 erwähnt kann der Block 414 Interpolation verwenden, die auf dem Sofortwert des Stadiumparameters für einen Zeitanteil basiert, um die Weise zu ermitteln, in der zwischen den Prozessparametermitteln von zwei benachbarten Prozessstadien für jeden Prozessparameter und den Qualitätsparameter in dem Zeitanteil zu interpolieren ist.
-
Wenn die Zeitanteilmittel für jeden Zeitanteil ermittelt worden sind, werden diese Mittel zusammen mit den Zeitanteildaten aus dem Trainingsdaten-Speicher 304 einem Block 416 bereitgestellt und in diesem verwendet, um eine Abweichung von dem Mittel für jeden Prozessparameter und den Qualitätsparameter von jedem Zeitanteil zu ermitteln. Die Sätze der Abweichungen von dem Mittel (für jeden Zeitanteil wird ein Satz von Abweichungen von dem Mittel erstellt) werden dann Filterblock 418 zur Verfügung gestellt, der die Abweichungen von dem Mittel filtert, um Situationen zu berücksichtigen, in denen sich der Prozess von einem Stadium zu einem anderen ändert. Die Abweichungen von dem Mittel können allgemein gesagt mit einem Tiefpassfilter mit einer Zeitkonstanteneinstellung gefiltert werden, die auf dem Zeitbetrag basiert, den der Qualitätsparameter braucht, um auf Änderungen in den Prozessparametern zu reagieren. Die Filterzeitkonstante kann gewünschtenfalls durch einen Anwender über beispielsweise die Benutzeroberfläche 305 ausgewählt oder spezifiziert werden und kann dieselbe Filterzeitkonstante sein, die in dem Filterblock 318 von 6A verwendet wird.
-
Die gefilterten Abweichungen von den Mitteln werden dann einem Modellgenerierungsblock 420 bereitgestellt, der diese Werte verwendet, um unter Verwendung von Standardmodellerstellungstechniken ein Fehlererkennungsmodell zu produzieren. Wie in 6B dargestellt, kann der Modellgenerierungsblock 420 ein oder mehrere PCA-Modelle 422 erstellen. Allgemein gesagt wird für jeden erkannten Fehler ein einziges PCA-Modell erstellt, und diese Modelle können natürlich unterschiedliche Prozessparametereingaben haben.
-
Es können natürlich andere Typen von Qualitätsprognose- und Fehlererkennungsmodellen verwendet werden, und die Modellgenerierungsroutinen 314 und 414 können die PLS-, NN-, MLR- und PCA-Modelle in jeder gewünschten oder bekannten Weise generieren, wie es typisch ist. Es wird jedoch darauf hingewiesen, dass die Qualitätsprognose- und Fehlererkennungsmodelle vorzugsweise aus dem gesamten Satz von Trainingsdaten generiert werden, der, sofern möglich, Daten einschließt, die mit dem Betrieb des Prozesses 300 über alle der vordefinierten Prozessstadiumbereiche assoziiert sind. In jedem Fall kann ein einzelnes PLS-Modell, NN-Modell, MLR-Modell oder PCA-Modell für den Prozess 300 entwickelt werden, um jede Qualitätsprognose und Fehlererkennung durchzuführen, ohne dass individuelle Modelle für jedes der vordefinierten Prozessstadien entwickelt werden müssen. Die PLS-, NN-, MLR- und PCA-Modelle werden, wie bekannt sein wird, als typische Modelle generiert, die für den Prozess 300 nach Standardmodellgenerierungstechniken erstellt werden, außer dass diese Modelle auch einen Satz von Prozessstadiummitteln, die mit jedem von einem unterschiedlichen Satz von Prozessstadien assoziiert sind, sowie Definitionen der Stadiumparameter und Stadiumparameterbereiche, die verschiedene Prozessstadien definieren, einschließen. Jeder Satz von Prozessstadiummitteln schließt in diesem Fall ein Mittel für jede der Prozessvariablen und die Stadiumvariable ein, für die Daten erfasst werden, und in Qualitätsprognosemodellen ein Mittel für den Qualitätsparameter.
-
7 zeigt einen Ablaufplan, der ein Verfahren 500 zum Verwenden von einem der Qualitätsprognose- oder Fehlererkennungsmodelle illustriert, die unter Verwendung des Verfahrens von 3 erstellt wurden, um Online-Analyse des Betriebs eines Prozesses durchzuführen, wie des Prozesses 300 der 6A und 6B. Block 502 erfasst und speichert insbesondere Prozessparameter- und Stadiumparameterdaten aus dem Prozess. (Qualitätsparameterdaten und Fehlerdaten können natürlich auch erfasst werden, diese Aktion ist strenggenommen jedoch zur Durchführung der Datenanalytik des Prozesses unter Verwendung der durch die Technik von 3 erstellten Modelle nicht notwendig). Die erfassten Prozessparameter- und Stadiumparameterdaten könnten online in Echtzeit von dem Prozess erhalten werden, könnten über Labor- oder Offline-Analysen erhalten werden, könnten über Benutzereingabe erhalten werden oder könnten auf jede andere erwünschte Weise erhalten werden.
-
Wenn das verwendete Modell ein Qualitätsprognosemodell ist, wie ein PLS-, NN- oder MLR-Modell, verschiebt ein Block 504 als nächstes die Prozessparameter und die Stadiumparameter zeitlich unter Verwendung der Zeitverschiebungsbeträge, die durch den Block 224 von 3 ermittelt werden. Diese Zeitverschiebungsbeträge können als Teil des Modells gespeichert werden und können gewünschtenfalls aus dem Modell erhalten werden. Diese Zeitverschiebungsbeträge sind somit im Allgemeinen dieselben Zeitverschiebungsbeträge, die verwendet werden, um die zeitausgerichteten Datenanteile zu produzieren, die zum Produzieren des Modells verwendet wurden. Der Block 504 ist gestrichelt dargestellt, weil dieser Block nicht durchgeführt wird, wenn das verwendete Modell ein Fehlererkennungsmodell ist, wie ein PCA-Modell.
-
Ein Block 506 produziert in jedem Fall einen Satz von Datenanteilen aus den erfassten Daten und kann diese Datenanteile gewünschtenfalls im Speicher speichern. Wenn das verwendete Modell ein Qualitätsprognosemodell ist, sind diese Da- tenanteile zeitverschobene Datenanteile, weil die Prozessparameter- und Stadiumparameterdaten innerhalb dieser Datenanteile zeitlich in Bezug zueinander verschoben sind. Wenn das verwendete Modell jedoch ein Fehlererkennungsmodell ist, dann werden die Datenanteile direkt aus den erfassten Prozessdaten produziert, ohne in Bezug zueinander zeitverschoben zu werden.
-
Ein Block 508 verarbeitet als nächstes jeden der durch den Block 506 produzierten Datenanteile, um einen Satz von Zeitanteilmitteln für jeden der Datenanteile zu ermitteln. Der Block 508 verwendet insbesondere die als Teil des Modells gespeicherten Prozessstadiummittel und den Sofortwert des Stadiumparameters innerhalb eines Datenanteils, um einen Satz von Zeitanteilmitteln für jenen Datenanteil zu ermitteln. Wenn der Stadiumparameter eine kontinuierliche Variable ist, kann der Block 508 einen Interpolationsfaktor aus dem Sofortwert des Stadiumparameters basierend auf dem Abstand zwischen dem Sofortwert des Stadiumparameters und den beiden nächstgelegenen Prozessstadiummitteln ermitteln und dann diesen Interpolationsfaktor verwenden, um zwischen den Prozessstadiummitteln für die anderen Prozessparameter (im Modell gespeichert) zu interpolieren, um Zeitanteilmittel für diese anderen Prozessparameter zu ermitteln. Wenn der Stadiumparameter eine diskrete Variable ist, kann der Block 508 einfach den Satz von zu verwendenden Prozessstadiummitteln basierend auf dem Sofortwert des Stadiumparameters innerhalb des Zeitabschnitts ermitteln. Der Block 508 kann die Zeitanteilmittel in einem Speicher speichern.
-
Ein Block 509 verwendet dann die Zeitanteilmittel und die Sofortwerte des Prozessparameters des Zeitanteils, um einen Satz von Abweichungen von den Mitteln für den Datenanteil zu ermitteln. Der Block 509 ermittelt insbesondere eine Differenz zwischen dem Sofortwert von jedem der Prozessparameter eines Zeitanteils und seinem jeweiligen Mittel, um einen Satz von Abweichungen von dem Mittel für den Zeitanteil zu produzieren. Die Blöcke 508 und 509 arbeiten natürlich an jedem Datenanteil, um einen kontinuierlichen Strom von Abweichungen von dem Mittel zu produzieren, da der analysierte Prozess online betrieben wird.
-
Als nächstes filtert ein Block 510 jeden Strom von Abweichungen von dem Mittel (d. h. wobei ein Strom für jeden Prozessparameter erstellt wird, der als eine Eingabe für das Modell verwendet wird) und stellt dem Modell die gefilterten Abweichungen von den Mitteln zur Verfügung, um verarbeitet zu werden. Der Block 510 kann denselben Typ von Filtertechniken verwenden, der bei der Modellerstellung verwendet wurde, und kann somit dieselben Filterkoeffizienten verwenden, wie sie in dem Verfahren von 3 verwendet wurden, um die Abweichungen von den Mitteln zu filtern, die zur erstmaligen Produktion des Modells verwendet wurden. Diese Filterkoeffizienten können als Teil des Modells gespeichert werden und können so aus dem Modell selbst erhalten werden.
-
Ein Block 512 betreibt das Modell unter Verwendung der gefilterten Abweichungen von den Mitteln, um Modellausgaben in Form von beispielsweise Qualitätsmessungsprognosen, Fehlererkennungen, usw. zu produzieren. Ein Block 514 kann mit der Ausgabe des Modells arbeiten, um Alarme oder Warnungen zu produzieren, die einem Anwender gezeigt oder anderweitig bereitgestellt werden. Der Block 514 kann insbesondere die Ausgabe des Modells mit einer oder mehreren Voreinstellungen oder vorher erzeugten Schwellenwerten vergleichen, um eine Ausgabe des Modells zu erkennen, die oberhalb oder unterhalb eines Schwellenwerts liegt, und kann dann auf Basis dieses Vergleichs einen Alarm oder eine Warnung festlegen. Bei Ausgabe des Modells können ebenfalls oder stattdessen natürlich andere Alarmierungsarten durchgeführt werden.
-
8 illustriert ein System, das das Verfahren von 7 verwenden kann, um Online-Datenanalytik für einen Prozess wie den Prozess 300 aus den 6A und 6B durchzuführen, wobei ein Modell 601 verwendet wird, das zuvor zum Analysieren des Prozesses 300 erstellt wurde. Wie in 7 illustriert ist, wird der Prozess 300 insbesondere betrieben, um Prozessparameter- und Stadiumparameterdaten zu produzieren, die in jeder gewünschten Weise gemessen oder erfasst werden und in einem Speicher 602 gespeichert werden können. Wenn die Qualitätsprognose durchgeführt wird, verschiebt ein Zeitverschiebungsmodul 604 die Prozessparameter und die Stadiumparameter zeitlich unter Verwendung der Zeitverschiebungsbeträge, die als Teil des Prozessmodells gespeichert sind (wie durch die Linien von dem Modell 601 in 7 angegeben wird). Diese Zeitverschiebungsbeträge sind im Allgemeinen dieselben Zeitverschiebungsbeträge, die zum Verschieben der Daten verwendet werden, um die zeitausgerichteten Datenanteile zu produzieren, die zum Produzieren des Modells verwendet wurden. Das Zeitverschiebungsmodul 604 kann die zeitverschobenen oder zeitausgerichteten Daten als zeitausgerichtete Datenanteile in einem Speicher 606 speichern. Wenn das Modell 601 ein Fehlererkennungsmodul ist, dann wird kein Zeitverschiebungsmodul 604 gebraucht oder verwendet.
-
In jedem Fall verarbeitet ein Mittelberechnungsmodul 608 jeden der zeitausgerichteten Datenanteile, die im Speicher 606 (im Fall eines Qualitätsprognosesystems) gespeichert sind, oder Datenanteile, die aus dem Prozess selbst erfasst und im Speicher 602 gespeichert sind (im Fall eines Fehlererkennungsanalytiksystem), um für jeden der Datenanteile einen Satz von Zeitanteilmitteln zu ermitteln. Das Modul 608 verwendet insbesondere die als Teil des Modells 601 gespeicherten Prozessstadiummittel und den Sofortwert des Stadiumparameters innerhalb eines Datenanteils, um einen Satz von Zeitanteilmitteln für jenen Datenanteil zu ermitteln. Wenn der Stadiumparameter eine kontinuierliche Variable ist, kann das Modul 608 einen Interpolationsfaktor aus dem Sofortwert des Stadiumparameters basierend auf dem Abstand zwischen dem Sofortwert des Stadiumparameters und den beiden nächstgelegenen Prozessstadiummitteln ermitteln und dann diesen Interpolationsfaktor verwenden, um zwischen den Prozessstadiummitteln für die anderen Prozessparameter (im Modell 601 gespeichert) zu interpolieren, um Zeitanteilmittel für diese anderen Prozessparameter zu ermitteln. Wenn der Stadiumparameter eine diskrete Variable ist, kann das Modul 608 einfach den Satz von zu verwendenden Prozessstadiummitteln basierend auf dem Sofortwert des Stadiumparameters innerhalb des Zeitabschnitts ermitteln. Das Modul 608 kann die Zeitanteilmittel in einem damit assoziierten Speicher speichern.
-
Ein Abweichungsmodul 609 verwendet dann die Zeitanteilmittel und die Sofortwerte des Prozessparameters des Zeitanteils, um einen Satz von Abweichungen von den Mitteln für den Datenanteil zu ermitteln. Der Block 609 ermittelt insbesondere eine Differenz zwischen dem Sofortwert von jedem der Prozessparameter eines Zeitanteils und dessen jeweiligem Mittel, um einen Satz von Abweichungen von dem Mittel für den Zeitanteil zu produzieren. Die Module 608 und 609 arbeiten natürlich an jedem Datenanteil, um einen kontinuierlichen Strom von Abweichungen von dem Mittel zu produzieren, da der analysierte Prozess online betrieben wird.
-
Als nächstes filtert ein Filtermodul 610 jeden Strom von Abweichungen von dem Mittel (d. h. wobei ein Strom für jeden Prozessparameter erstellt wird, der als eine Eingabe des Modells verwendet wird) und stellt dem Modell die gefilterten Abweichungen von den Mitteln zur Verfügung, um verarbeitet zu werden. Der Filter 610 kann denselben Typ von Filtertechniken verwenden, der bei der Erstellung von Modell 601 verwendet wurde, und kann somit dieselben Filterkoeffizienten verwen- den, wie sie in dem Verfahren von 3 verwendet wurden, um die Abweichungen von den Mitteln zu filtern, die zur erstmaligen Produktion des Modells 601 verwendet wurden. Diese Filterkoeffizienten können als Teil des Modells 601 gespeichert werden und können so aus dem Modell 601 selbst erhalten werden.
-
Das Modell 601 wird dann unter Verwendung der gefilterten Abweichungen von den Mitteln betrieben oder implementiert und produziert Modellausgaben in Form von beispielsweise Qualitätsmessungsprognosen, Fehlererkennungen, usw. Ein Alarmmodul 614 kann mit der Ausgabe des Modells 601 arbeiten, um Alarme oder Warnungen zu produzieren, die einem Anwender gezeigt oder anderweitig bereitgestellt werden. Das Alarmmodul 614 kann insbesondere die Ausgabe des Modells 601 mit einer oder mehreren Voreinstellungen oder vorher erzeugten Schwellenwerten vergleichen, um eine Ausgabe des Modells 601 zu erkennen, die oberhalb oder unterhalb eines Schwellenwerts liegt, und kann dann auf Basis dieses Vergleichs einen Alarm oder eine Warnung festlegen. Bei Ausgabe des Modells können ebenfalls oder stattdessen natürlich andere Alarmierungsarten durchgeführt werden.
-
9 illustriert ein Blockdiagramm eines Funktionsblocks 700, der implementiert werden kann, um die Qualitätsprognose und/oder Fehlererkennung unter Verwendung eines statistischen Prozessmodells durchzuführen, das nach den hier beschriebenen Techniken erstellt wurde. Der Funktionsblock 700 kann gewünschtenfalls in einer Benutzeroberfläche, in einer Prozesssteuerung innerhalb eines Steuerungssystems oder sogar innerhalb eines Feldgeräts ausgeführt oder implementiert werden, das sich in einem Prozesssteuerungssystem befindet, wie in jeglichen der Prozesssteuerungssysteme der 1 und 2. Der Funktionsblock 700, der hier als Datenanalytik-(DA)-Funktionsblock bezeichnet wird, kann so konfiguriert werden, dass er von einem Benutzer in der gleichen oder ähnlichen Weise wie andere Funktionsblöcke innerhalb des Prozesssteuerungssystems benutzbar und anzeigbar ist, um dadurch den DA-Funktionsblock 700 kompatibel mit dem Prozesssteuerungssystem und leicht in dieses integrierbar zu machen, in dem er zur Durchführung von Datenanalytik verwendet wird.
-
Obwohl der Funktionsblock 700 so dargestellt ist, dass er sowohl Qualitätsprognose als auch Fehlererkennung mit dem gleichen Satz von Prozesseingabeparametern und Stadiumparametern durchführt, könnte der Funktionsblock 700 stattdessen eine von Qualitätsprognose oder Fehlererkennung durchführen und muss nicht beide durchführen. Obwohl der Funktionsblock 700 als einen einzelnen Typ von Qualitätsprognose und Fehlererkennung basierend auf einem Satz von Eingabeparametern und einem Stadiumparameter durchführend beschrieben ist, könnte der Block 700 zusätzlich mehrere Sätze von Modellen einschließen und könnte mehrere Arten von Qualitätsprognose und Fehlererkennung durchführen. Es ist jedoch zur leichten Anwendung und Konfiguration bevorzugt, dass für jede unterschiedliche Art von Qualitätsprognose/Fehlererkennung, die durchgeführt werden soll, ein anderer Funktionsblock 700 erstellt und implementiert wird.
-
Die Parameter des DA-Funktionsblocks 700 von 9 können typische Funktionsblockparameter einschließen und können zusätzlich eine Anzahl neuer Parameter und Merkmale einschließen, die unten beschrieben werden. Der DA-Funktionsblock 700 schließt allgemein gesagt einen Modellierblock 702 und einen Alarmgebungsblock 704 ein, die jeweils einen Satz von Eingaben und Ausgaben einschließen Die Eingaben für den Modellierblock 702 schließen eine Anzahl von Prozessparameter- und Stadiumparametereingaben 706, eine Algorithmuseingabe 708, eine Verzögerungseingabe 710, eine Probeneingabe 712 und eine Folgen-Eingabe 714 ein. Die Prozessparameter- und Stadiumparametereingaben 706 sind kommunikativ mit anderen Funktionsblöcken oder Geräten innerhalb des Prozesssteuerungssystems verbunden und erhalten hiervon die gemessenen oder anderweitig ermittelten Werte der Prozessparameter und des Stadiumparameters, die in den Datenanalytiken verwendet werden, um Qualitätsprognose und Fehlererkennung durchzuführen. Die Algorithmuseingabe 708 ist ein nummerierter Parameter, der den Typ des in dem Modell verwendeten Modellieralgorithmus angibt. Die Eingabe der Algorithmuseingabe 708 kann beispielsweise spezifizieren, dass der Funktionsblock 700 eine von prädiktiver MLR-, PLS-, PLS-DA- und NN-Modellierung durchführt. Die Probeneingabe 712 empfängt eine ermittelte Qualitätsprobe, die aus Messungen, wie Labormessungen, des Prozesses erhalten worden sein kann, und die Verzögerungseingabe 710 empfängt eine spezifizierte Verzögerung, die die Verzögerung zwischen der aktuellen Zeit und der Zeit angibt, zu der die dem Probeneingang 712 bereitgestellte Probe erhalten wurde. Die Probeneingabe 712 und die Verzögerungseingabe 710 können verwendet werden, um Verzerrungsfehler (systematische Fehler) in den Prognosen zu korrigieren, die durch den Funktionsblock 700 produziert werden. Die Folgen-Eingabe 714 ist eine Eingabe, die verwendet werden kann, um die Ausgabe der Qualitätsprognose- routine des Funktionsblocks 700 dazu zu bringen, einfach der in der Probeneingabe 712 bereitgestellten Probenmessung zu folgen.
-
Der Modellierblock 702 schließt allgemein gesagt eine Schnittstelle 720 ein, die die Prozessparameter- und Stadiumparametereingaben 706 empfängt und speichert und diese Eingaben zur Durchführung von Qualitätsprognose und Fehlererkennung bereitstellt. Die Schnittstelle 720 ist speziell mit Prozessparameterwerten und Stadiumparameterwerten für einen Verzögerungsblock 722 verbunden und stellt diese zur Verfügung, wobei der Verzögerungsblock die verschiedenen Eingaben um die Verzögerung oder Zeitverschiebungsbeträge verzögert, die mit dem Qualitätsmodell bei dessen Erstellung bereitstellt oder für dieses ermittelt wurden. Diese Verzögerungen können aus einer Speicherdatei 724 bereitgestellt werden, die die Prozessparameterzeitverschiebungen sowie die anderen Modellparameter einschließlich der Modellprozessstadiummittel, Filterkoeffizienten und Modellparameter oder Modellkoeffizienten speichert, die zur Implementierung des Modells verwendet wurden.
-
Ein Qualitätsprognosemodellierungsblock 726 verwendet dann die verzögerten oder zeitausgerichteten Datenanteile, die durch den Verzögerungsblock 722 produziert wurden, die gemessenen Parameterwerte aus der Schnittstelle 720, die Prozessstadiummittel, die Filterkoeffizienten und die Modellkoeffizienten (alle aus der Modelldatei 724), um Qualitätsprognose in der bereits in Bezug auf die 7 und 8 beschriebenen Weise durchzuführen. Der Qualitätsprognosemodellierungsblock 726 kann eine zukünftige Prognose (an einem Zeithorizont) produzieren, die als Ausgabe des Funktionsblock 700 bereitgestellt ist, der mit ‚Zukunft‘ beschriftet ist, und kann eine aktuelle Prognose produzieren, die als Ausgabe des Funktionsblocks 700 bereitgestellt wird, die als ‚Ausgabe‘ bezeichnet wird. Der Qualitätsprognosemodellierungsblock kann natürlich gewünschtenfalls programmiert oder designt werden, um jegliche der verschiedenen Arten von Modellen zu implementieren, wie sie durch die Algorithmuseingabe 708 spezifiziert werden, wobei Modellparameter oder Modellkoeffizienten verwendet werden, die in der Modelldatei 724 gespeichert sind und von dieser bereitgestellt werden.
-
Korrektur oder Kompensation von Verzerrung können jedoch an beiden der Prognosewerte durchgeführt werden, die an den Ausgaben ‚Zukunft‘ und ‚Ausgabe‘ des Funktionsblocks 700 bereitgestellt werden. Eine Verzögerungseinheit 730 verzögert insbesondere die prognostizierte Qualitätsausgabe um den Verzögerungsbetrag, der in der Verzögerungseingabe 710 spezifiziert wurde, und ein Summierblock 732 ermittelt eine Differenz zwischen der verzögerten prognostizierten aktuellen Ausgabe des Qualitätsprognosemodellierblocks 726 und der an der Probeneingabe 712 bereitgestellten Probenmessung. Ein Grenzblock 734 begrenzt diese Differenz unter Verwendung einer Korrekturgrenzeneingabe (die beispielsweise durch einen Anwender oder Funktionsblockdesigner spezifiziert werden kann) und eines Filters 735, der die Ausgabe des Grenzblocks 732 dann unter Verwendung eines Korrekturfilterkoeffizienten oder -parameters filtert (der auch beispielsweise durch einen Anwender oder Funktionsblockdesigner spezifiziert oder bereitgestellt sein kann). Die Ausgabe des Filters 735 ist eine Verzerrungskorrektur, die einem Schalter 736 zur Aktivierung der Verzerrungskorrektur bereitgestellt wird und durch einen Anwender oder andere automatische Eingabe, die in dem Prozesssteuerungssystem generiert wird, eingeschaltet oder abgeschaltet werden kann. Wenn der Schalter 736 zur Aktivierung der Verzerrungskorrektur eingeschaltet oder aktiviert ist, fügen die Summierblöcke 740 und 742 die Verzerrungskorrektur zu den aktuellen Prognose- und zukünftigen Prognosewerten hinzu, die durch den Qualitätsprognosemodellierblock 726 produziert werden.
-
Ein Schalter 744, der durch die Folgen-Eingabe 714 betrieben oder gesteuert wird, schaltet zwischen der Verbindung mit der verzerrungskorrigierten aktuellen Ausgabe des Blocks 726 oder dem Probenwert, der an der Probeneingabe 712 bereitgestellt wird, für die Ausgabe ‚Ausgabe‘ des Funktionsblocks hin und her. Die Folgen-Eingabe 714 führt somit dazu, dass die Ausgabe ‚Ausgabe‘ des Funktionsblocks 700 dem Probenwert folgt, der an der Probeneingabe 712 bereitgestellt wurde. Ein Modusschalter 746, der durch ein Modussignal gesteuert wird, steuert zudem, ob irgendwelche Ausgabe an der Ausgabe ‚Ausgabe‘ des Funktionsblocks 700 bereitgestellt wird. Der Modusschalter 746 kann verwendet werden, um die aktuelle Qualitätsausgabeprognose des Funktionsblocks 700 basierend auf dem Modus des Funktionsblocks 700 oder irgendeines anderen Funktionsblocks zu deaktivieren, der die Ausgabe des Funktionsblocks 700 verwenden könnte. Der Modusschalter 746 ermöglicht also, dass die Ausgabe des Funktionsblocks 700 deaktiviert oder verbindungslos ist, wenn der Anteil des Prozesssteuerungssystems, der den Funktionsblock 700 betrifft oder von diesem modelliert wird, beispielsweise im Modus ‚außer Betrieb‘, im anormalen Modus, im manuellen Modus usw. ist.
-
Ein Fehlererkennungsblock 750 ist zudem mit der Schnittstelle 702 verbunden und empfängt die Prozessparameter- und Stadiumparameteringaben und verwendet diese sowie die Stadiummittel und anderen Modellinformationen aus der Modelldatei 724, um Fehlererkennung in der Weise durchzuführen, die zuvor in Bezug auf die 7 und 8 beschrieben wurde. Die Ausgabe des Blocks 750 schließt eine Blockfehlerausgabe, eine Ausgabe Stat_T2 und eine Ausgabe Stat_Q ein. Die Blockfehlerausgabe ist der Fehler oder die Fehlererkennungsausgabe, die durch den Fehlererkennungsblock 750 modelliert oder ermittelt wird, und ist, wenn sie zur Fehlererkennung verwendet wird, eine typische PCA-Modellausgabe. Der Stat-T2-Parameter ist eine Gleitkommazahl mit Nur-Lese-Status, die die T2-Statistik des zur Fehlererkennung verwendeten PCA-Modells zeigt. Der Stat_Q-Parameter ist eine Gleitkommazahl mit Nur-Lese-Status, die die Q-Statistik des zur Fehlererkennung verwendeten PCA-Modells zeigt. Die Stat-T2-Ausgabe und Stat_Q-Statistiken werden typischerweise von prädikativen Modellen, wie PCA-Modellen, produziert und werden üblicherweise für prädiktive Alarmgebung verwendet. Der Fehlererkennungsmodellierungsblock 750 kann natürlich gewünschtenfalls programmiert oder designt werden, um jegliche der verschiedenen Arten von Modellen zu implementieren, die Modellparameter oder Modellkoeffizienten verwenden, die in der Modelldatei 724 gespeichert sind und von dieser bereitgestellt werden.
-
In jedem Fall werden dem Alarmgebungsblock 704, wie in 9 dargestellt, der Block-Fehler, die Stat_T2- und die Q-Statistiken bereitgestellt, zusammen mit dem aktuellen Qualitätsprognosewert (auf den die Verzerrungskorrektur angewendet worden sein kann). Der Alarmgebungsblock 704 empfängt als Eingabeparameter auch T2_LIM, der eine obere Alarmgrenze für die berechnete T2-Statistik des Fehlererkennungsblocks 750 ist, Q_LIM, der eine obere Alarmgrenze für die berechnete Q-Statistik ist, LO_LIM, der die untere Alarmgrenze der Qualitätsprognose spezifiziert (die gewünschtenfalls auf die Untergrenze der Produktspezifikation gesetzt werden kann) und HI_LIM, der die obere Alarmgrenze der Qualitätsprognose spezifiziert (und gewünschtenfalls auf die Obergrenze der Produktspezifikation gesetzt werden kann).
-
Eine Ausgabe PRED_ACT des Alarmgebungsblocks 704 wird ferner verwendet, um die Alarmgebung durch Qualitätsprognose auszulösen, und eine Ausgabe FAULT_ACT des Alarmgebungsblocks 704 wird verwendet, um die Alarmgebung bei Fehlererkennung auszulösen. Der Alarmgebungsblock 704 kann natürlich Alarmauslösung ermitteln, indem die ihm durch den Qualitätsprognosemodellierungsblock 726 bereitgestellten Qualitätsprognosewerte mit den Werten LO-LIM und HI-LIM verglichen werden, um zu ermitteln, ob der Qualitätsprognosewert diese Grenzen verletzt (höher beziehungsweise niedriger als diese ist) und kann an der Ausgabe PRED_ACT einen Alarm auslösen, falls dies so ist. Der Alarmgebungsblock 704 kann in ähnlicher Weise Alarmauslösung ermitteln, indem die verschiedenen Ausgaben, Block-Fehler, Stat_T2 und Stat-Q des Fehlererkennungsmodellierblocks 750 mit einem Fehlerschwellenwert, dem T2_Lim beziehungsweise dem Q-Lim, verglichen werden, um zu ermitteln, ob irgendwelche der Fehlererkennungswerte ihren Grenzwert erfüllen oder verletzen (oder ob der Blockfehlerwert einen Fehler angibt). Wenn ein Schwellenwert erfüllt oder verletzt ist, kann der Alarmgebungsblock 704 an der Ausgabe FAULT_ACT einen Alarm auslösen. Jedwede oder alle der Ausgaben des Alarmblocks und der Vorhersageblöcke 726 und 750 können gewünschtenfalls in einer Datenhistorie bereitgestellt und gespeichert werden, damit sie sich leicht abrufen lassen.
-
Gewünschtenfalls kann zusätzlich adaptive Modellierung online implementiert werden, wenn die Qualitätsprognose- und Fehlererkennungsmodelle verwendet werden, die mit den hier beschriebenen Modellierungstechniken konstruiert oder generiert wurden. Es kann insbesondere Umstände geben, unter denen das einmal erstellte Modellierungssystem zur Analyse von Prozessbedingungen arbeitet, die sich signifikant von den Prozessbedingungen unterscheiden, die während der Zeit auftraten, in der die Prozesstrainingsdaten erfasst wurden, die zur Erstellung der Modelle in dem Datenanalytiksystem verwendet wurden. Der Prozess kann beispielsweise einen anderen Durchsatz aufweisen oder zeigen, oder der Prozess kann verwendet werden, um eine neue Produktklasse zu produzieren und somit unter Bedingungen betrieben werden, die während der Trainingsphase nicht durchlaufen wurden. Der Prozess hat möglicherweise in einem Beispiel ein oder mehrere der Prozessstadium nicht durchlaufen oder ist darin nicht betrieben worden, welche während des Schritts der Erfassung von Trainingsdaten definiert wurden. Die Prozessstadien für den Prozess sind in einem anderen Beispiel möglicherweise basierend auf dem Bereich der Stadiumparameter während der Trainingsdurchläufe definiert worden, der Prozess kann jedoch in ein neues und zuvor undefiniertes Prozessstadium eintreten, wie es durch den Sta- diumparameter ermittelt wird. In anderen Situationen kann möglicherweise ermittelt werden, dass sich der Betrieb des Prozesses infolge von unterschiedlichen Umgebungsbedingungen, Alterung von Prozessgeräten oder einer Änderung in irgendeiner anderen Störgrößenvariablen (gemessen oder nicht gemessen) gegenüber dem Zustand, als die Trainingsdaten erfasst wurden, etwas geändert hat. In diesen Fällen kann Anpassung des Modells erforderlich sein, um den Betrieb des Datenanalytiksystems zu verbessern. Adaptive Modellierung, wie nachfolgend beschrieben, kann verwendet werden, um diese Situationen zu kompensieren, ohne dass die zu Grunde liegenden Modelle selbst neu generiert werden müssen.
-
Es ist insbesondere möglich, adaptive Modellierung in den hier beschriebenen Systemen in Reaktionen auf diese oder andere Bedingungen oder Situationen durchzuführen, ohne das/die zu Grunde liegende(n) Modell(e) zu ändern, das/die in den Modellgenerierungsphasen entwickelt wurde(n). Modellanpassung kann insbesondere erfolgen, indem ein neuer Satz von Prozessstadiummitteln für jedes der Prozessstadien (entweder ursprünglich definiertes Prozessstadium oder neu hinzugefügte Prozessstadien) aus neu erfassten Prozessmessungen ermittelt wird und dann diese neuen Prozessstadiummittel als Teil des Modells für die Prozessstadien gespeichert werden, für die Modellanpassung durchgeführt wird. Gewünschtenfalls können auch Standardabweichungen berechnet und für jedes der angepassten Prozessstadien gespeichert werden.
-
Allgemein gesagt kann Modellanpassung somit durchgeführt werden, indem Adaptierung der Mittelwerte (der Prozessstadiummittel) durchgeführt wird, die in dem Modell für jedes Prozessstadium gespeichert sind. Es ist ohne Modelladaptierung erforderlich, während der Modellentwicklung Daten zu erfassen, die den gesamten Betriebsbereich der Prozessstadien abdecken. Basierend auf der in den Daten für jede Messung gezeigten Variation kann der Betriebsbereich in eine auswählbare Anzahl von Stadien (z.B. fünf) unterteilt werden. Bei Modelladaptierung müssen die in der Trainingsphase verwendeten Prozessdaten jedoch nicht den vollständigen Betriebsbereich des Prozesses abdecken, da das Modellierungssystem, wenn sich der Prozess zu einem anderen Prozessstadium bewegt, Prozessdaten für jeden der Stadiumparameter und Prozessparameter für einen Zeitraum erfassen kann, während der Prozess sich in diesem neuen oder geänderten Prozessstadium befindet, und danach kann das Modellierungssystem den Mittelwert für jeden der Prozessparameter und den Stadiumparameter automatisch berechnen, während sich der Prozess in diesem neuen oder geänderten Prozessstadium befindet. Diese Mittelwerte können im Modell gespeichert werden (um dadurch das Modell zu adaptieren, welches zur Modellierung des Prozesses verwendet wird, während der Prozess in jenem Prozessstadium in Zukunft betrieben wird.
-
Wenn die Flussrate, die den Prozessdurchsatz diktiert, beispielsweise als Stadiumparameter gewählt wird, könnten anfangs Daten für die Prozessparametermessungen erfasst und in der Modellentwicklung verwendet werden, selbst wenn der Stadiumparameter nur über einen kleinen Betriebsbereich der Flussrate variiert wird. In diesem Fall würde der Anwender den Bereich identifizieren, in dem der Stadiumparameter normalerweise betrieben wird. Obwohl die Daten während des Modellaufbaus verarbeitet werden, fallen die erfassten Daten hier möglicherweise nur in wenige der möglichen Stadien (basierend auf der Benutzereingabe des Stadiumbereichs). Für die Prozessstadien, für die Prozessparameterdaten erfasst wurden, berechnet die Modellgenerierungsroutine einen Satz von Mitteln. Für die Prozessstadien, in denen in der Modellgenerierungsphase keine Prozessparameterdaten erfasst wurden, könnten die Parametermittelwerte jedoch auf irgendeinen willkürlichen Wert initiiert werden, z.B. gleich den Parametermittelwerten für das nächstgelegene Stadium, für das Daten erfasst wurden. Nachdem das Modell innerhalb eines Modellierungssystems online gestellt wurde, könnte, wenn sich der Stadiumparameterwert ändert, um ein Prozessstadium anzugeben, für das zuvor keine Daten erfasst wurden, das Modellierungsoder Datenanalytiksystem adaptive Modellierung durchführen, indem es in eine Anpassungsphase eintritt.
-
Während einer Anpassungsphase werden insbesondere die Prozessparameterdaten und Stadiumparameterdaten online erfasst, wenn der Prozess in dem neuen Prozessstadium arbeitet. Nach einiger Zeit oder nach jeder neuen Zeitprobe werden die Mittelwerte für dieses Prozessstadium basierend auf den Werten des Prozessparameters und Stadiumparameterdaten aktualisiert, die gemessen wurden, während der Prozess in dem neuen Prozessstadium betrieben wird. Für jedes Prozessstadium könnte ein Anwender spezifizieren, ob Adaptierung der Mittel zulässig ist. Diese Fähigkeit könnte auch zur Aktualisierung des Modells (um Prozessänderungen zu berücksichtigen) verwendet werden, wenn der Anwender angibt, dass Adaptierung zulässig ist. Um zu verhindern, dass die Mittelwerte an falsche Werte angepasst werden, wenn der Prozess heruntergefahren wird, könnte der Anwender die Möglichkeit haben, die berechneten Mittelwerte für ein Prozessstadium auf Prozessstadiumbasis anzusehen oder anzuzeigen und zu begrenzen, um wie viel (z.B. zulässiger Prozentsatz) die Adaptierung des Mittels eine Änderung von dem Wert herbeiführen könnte, der von dem Anwender genehmigt und/oder während der Modellentwicklung identifiziert wurde.
-
Online-Modellanpassung kann gewünschtenfalls in geplanter oder in ungeplanter Weise durchgeführt werden. Wenn beispielsweise Produktklassen- oder Prozessratenänderungen neue Einstellungen für einige oder die meisten der Prozessparameter erfordern, können die Modellparameter in geplanter Weise eingestellt werden, d. h. alle auf einmal, wenn Prozessstadium- und Parametereinstellungen für eine neue Klasse (Mittelwerte und Standardabweichungen) bekannt sind. Wenn jedoch die Mittelwerte und die Prozessstadiumwerte für einen oder mehrere neue Stadien nicht bekannt sind, können diese Werte allmählich adaptiert werden, um neue Parametermittelwerte zu implementieren.
-
In einem Beispiel können geplante Modelländerungen auf vorhergehender Kenntnis der Prozessstadien für neue Produktklassen basieren, wobei die Kenntnis über Messungen erhalten werden kann, die online durchgeführt und gespeichert wurden, bis der geplante Modelladaptierungsprozess durchgeführt wird. Eine Prozedur zum Entwickeln eines Modells, das zur Verwendung beim Anwenden von geplanten Änderungen oder geplanter Anpassung geeignet ist, kann zuerst einen Identifizierungsparameter einer Klasse oder eines Prozessstadiums in der historischen Datenerfassung und Speichern von Daten für diese neue Klasse oder dieses neuen Prozessstadium einschließen, sobald Daten verfügbar werden. Die Prozedur kann dann die Trainingsdaten mit den neu erfassten Daten vorverarbeiten, wobei alle der Klassen berücksichtigt werden. Durch diese Vorgehensweise berechnet die Prozedur Mittelwerte und Standardabweichungen für jede Klasse getrennt. Die Prozedur kann dann die Daten für jede Klasse separat unter Verwendung der Mittelwerte und Standardabweichungen der spezifischen Klasse für diese Klassen normalisieren. Die Modellierungstechnik entwickelt dann ein Modell unter Verwendung von Daten aus mehreren Klassen. Weil Daten durch Mittelwerte und Standardabweichungen für spezifische Klassen konditioniert werden, können für eine gemeinsame Mehrklassenmodellentwicklung konditionierte/normalisierte Daten verwendet werden. Das Verfahren kann als nächstes die Mittelwerte und Standardabweichungen für jede Klasse, die für Modellentwicklung verwendet wird, als Teil des Mehrklassenmodells speichern.
-
Die Durchführung ungeplanter Modellanpassung arbeitet jedoch so, dass Online-Mittelwerte und Standardabweichungen in dem geänderten oder neuen Stadium berechnet und diese neuen Mittelwerte und Standardabweichungen individuell auf das Modell angewendet werden, wenn diese neuen Werte ermittelt werden. Ungeplante Modellanpassung wird verwendet, wenn ein neues Stadium nicht ursprünglich in das Modell eingeschlossen war (z.B. wenn keine historischen oder Trainingsdaten für dieses spezifische Prozessstadium vorliegen). Eine Prozessstadiumänderung könnte automatisch erkannt werden, und die Erkennung kann die adaptive Modellierungstechnik auslösen, um eine Änderung von Mittelwerten und Standardabweichungen des Modells durchzuführen. Wenn in dem Modell keine neuen Stadiumparameter vorliegen, passt die adaptive Adaptierungsroutine das Modell basierend auf der aktuellen Online-Datenerfassung und Berechnung von Modellparametern an. Auf das Modell werden mit einiger Verzögerung nach Prozessstadiumänderung tatsächliche Prozessparametermittel und Stadiumparametermittel zur Verwendung als Prozessstadiummittel für das neue Prozessstadium angewendet, da es einige Zeit braucht, um genügend Daten aus dem Betrieb des Prozesses online zu erfassen, um statistisch verwertbare Mittel für jeden der Prozessparameter und den Stadiumparameter in dem neuen Prozessstadium zu ermitteln. Die Verzögerung ist durch die Zeit für anschließende Berechnungen und Einstellung definiert.
-
Die neuen Modellparametermittelwerte haben gewünschtenfalls eine Verzerrung relativ zu den ursprünglichen Modellparametermittelwerten. Eine Verzerrung β eines Modellmittelwerts kann somit als Filterwert angewendet werden, um das adaptierte Mittel wie folgt zu ermitteln: Δx Mod / Mittel(k) = βΔx roh / Mittel(k) + (1 – β)Δx Mod / Mittel(k – 1)
-
Das rohe Mittel ist hier die vor kurzem berechnete Verzerrung, die während des Online-Betriebs definiert wurde. Für eine Prozessstadiumverschiebung infolge von geänderten Bedingungen (die verursacht sein können, weil Prozessgeräte gealtert sind oder sich andere Bedingungen in vorhersehbarer oder nicht vorhersehbarer Weise ändern) kann derselbe mittlere Verzerrungsparameter verwendet werden, um die adaptierten Mittel wie oben beschrieben zu filtern. Für andere Änderungen oder Störgrößen können zudem einige Mittelwertänderungen konstant sein und/oder sich möglicherweise praktisch schwer verfolgen lassen. Es kann in diesen Fällen wünschenswert sein, die Robustheit oder Empfindlichkeit des Modells zu erhöhen, um falsche Alarmgebung zu minimieren.
-
Obwohl die bereits erörterten Datenanalytiktechniken für kontinuierliche Analytik beschrieben worden sind (d. h. zur Durchführung von Analytik in kontinuierlichen Prozessen), könnten diese Techniken auch auf einfache Chargenprozessanwendungen angewendet werden, wobei die „Zeit in Charge“ oder anderer Parameter, der den Fortschritt der Chargenverarbeitung angibt, als Stadiumparameter verwendet wird. In diesem Fall sind „einfache Chargen“-Prozesse solche, in denen 1) Chargenverarbeitung auf eine Prozesseinheit begrenzt ist, 2) die Eingaben/Ausgaben des Chargenprozesses sich mit dem Fortschritt der Charge nicht ändern und 3) immer dasselbe Produkt in der Prozesseinheit gefertigt wird.
-
Es ist zudem erwünscht, einem Anwender die einfachere Anzeige und das leichtere Erhalten von Informationen zu einem Alarm oder einer Warnung zu ermöglichen, der/die in einer Qualitätsprognose oder Fehlererkennung generiert wird, wie einem Alarm oder einer Warnung, die durch den Datenanalytikfunktionsblock 700 von 9 generiert werden. Es ist insbesondere erwünscht, einem Benutzeroberflächenbildschirm ein Warnungsregister hinzuzufügen, das, wenn es ausgewählt wird, die Qualitäts- oder Fehlerwarnungen zeigt, die von dem kontinuierlichen Datenanalytiksystem gemeldet worden sind. Der Anwender kann in diesem System dann eine Warnung oder einen Alarm aus dieser Liste auswählen, und der Anwender erhält in Reaktion auf diese Auswahl automatisch die assoziierten Historieninformationen zu der Warnung oder dem Alarm, wie die Werte der Prognose oder der T2- oder Q-Statistiken, die zu der Warnung geführt haben, die Parameterwerte der relevanten Parameter sowohl vor als auch nach Ausgabe der Warnung, usw. Dieses Merkmal bedeutet für den Anwender signifikante Zeiteinsparungen, da die neue Benutzeroberfläche es dem Anwender ermöglicht, alle der generierten Warnungen zu sehen und sofort die mit einer ausgewählten Warnung assoziierten historischen Daten zu sehen (ohne durch eine Trendanzeige unterschiedlicher Prozessparameter zu scrollen), statt dass der Anwender eine Trendauftragung der prognostizierten Qualität oder Fehlerstatistik (T2 oder Q, Prognosewerte, usw.) suchen oder durchscrollen muss, um einen Fehler oder eine schlechte Prognose zu finden.
-
Diese Benutzeroberfläche kann in einem umfassenderen Kontext in jeglichen Schnittstellen eines Prozesssteuerungssystems verwendet werden, die Alarmzusammenfassungsanzeigen bereitstellt, auf die ein Anwender zugreifen kann, um erkannte Prozessalarme anzuzeigen, da dieses Benutzeroberflächensystem einem Anwender die einfache Anzeige von historischen Daten ermöglicht, die mit unterschiedlichen Parametern assoziiert sind, die für jegliche Arten von Alarmen relevant sind, die generiert worden sind. Diese Benutzeroberfläche kann insbesondere in jeglichem Kontext verwendet werden, in dem ein Prozessalarm oder eine Prozesswarnung generiert wird, und wird einem Anwender über einen Benutzeroberflächenbildschirm oder eine Benutzeroberflächenanzeige bereitgestellt, und die neue Benutzeroberfläche ermöglicht dem Anwender eine schnelle Analyse der Bedingungen, die zu einem Alarm oder einer Warnung geführt haben, weil das System dem Anwender das Sehen von historischen Prozessparametertrenddaten (gespeichert in einer Datenhistorie) unmittelbar vor und nach der Generierung einer Warnung ermöglicht, ohne dass der Anwender zu einer Historienoberfläche zurückgehen muss, den mit dem Ereignis assoziierten Parameter aufrufen muss und dann zeitlich zurückscrollen muss, um die Trenddaten unmittelbar vor und nach der Generierung der Warnung zu sehen.
-
Die Weise, in der Warnungen zurzeit in einigen traditionellen Benutzeroberflächen angezeigt werden, die in Chargenprozesssteuerungssystemen verwendet werden, ist zum Vergleich in 10 dargestellt. Auf oberster Ebene wird eine Liste der aktiven Prozesse, wie Chargenprozesse, und eine Liste der abgeschlossenen Chargen dargestellt. Wenn in einem der Prozesse eine Warnung aktiv ist, wird diese Warnung in der Übersicht angezeigt (siehe Bildschirm 902). Der Anwender kann dann aus dieser Übersicht einen Chargenprozess wählen und dann wird die Benutzeroberfläche (standardgemäß) geändert, um einen historischen Trend der beiden Statistiken (der T2- und der Q-Statistik eines PCA-Modells) zu zeigen, die zur Fehlererkennung verwendet werden (siehe Bildschirm 904). Wenn eine der Statistiken einen Wert von eins (1) überschreitet, wird dies als Fehlerzustand angesehen. Um die mit einem Fehler assoziierten Prozessmessungen zu untersuchen, ist es notwendig, dass der Anwender den historischen Trend der beiden statistischen Parameter untersucht, eine Zeit findet, in der die Statistiken einen Wert von 1 überschritten haben, und danach diesen Zeitpunkt auf dem angezeigten Trend auswählt. Dem Anwender wird dann in Reaktion darauf die Messungen gezeigt, die am meisten zu dem Fehler beigetragen haben (siehe Bildschirme 906 und 908).
-
Wenn ein Qualitätsprognosealarm in der Übersicht angegeben wird, erhält der Anwender in ähnlicher Weise die Möglichkeit, den Prozess auszuwählen und danach das Register Qualitätsprognose zu wählen. Das Benutzeroberflächensystem zeigt in Reaktion darauf einen historischen Trend des Qualitätsparameters (siehe Bildschirm 910). Die Benutzeroberfläche ermöglicht dem Anwender dann, den Qualitätsparametertrend zu untersuchen, wenn die Prognose eine Produktspezifikationsgrenze verletzt. Um die Ursache einer Abweichung in der Qualitätsprognose oberhalb oder unterhalb einer Spezifikationsgrenze zu untersuchen, muss der Anwender diesen Zeitpunkt innerhalb der Trendauftragung auswählen, das Register Fehlererkennung auswählen und den historischen Trend untersuchen, um zu sehen, ob zum Zeitpunkt des Qualitätsparameteralarms ein Fehler erkannt wurde.
-
Es gibt signifikante Einschränkungen und Nachteile dieses traditionellen Ansatzes zur Untersuchung einer Alarmbedingung. In der Übersicht erfährt der Anwender insbesondere nur, dass zurzeit eine Warnung aktiv ist, und um weitere Informationen zu vergangenen Warnungen zu finden, muss der Anwender 1) einen historischen Trend der in der Prozessfehlererkennung oder dem Qualitätsprognoseparameter verwendeten Statistik auswählen, 2) den Trend untersuchen, um zu ermitteln, wann die Warnung(en) stattgefunden haben und dann 3) den Punkt im Trend auswählen, als die Warnung stattgefunden hat, um weitere Informationen zu dem Warnzustand herauszufinden. Um alle der Warnungen zu finden, die in der Vergangenheit aufgetreten sind, wäre es zudem erforderlich, jede Warnung innerhalb der Trendauftragungen von statistischen Parametern oder Trendauftragungen der prognostizierten Qualität zu finden und auszuwählen, was zeitraubend und mühsam ist. Es ist in der Tat zeitraubend, in der Trendhistorie zurückzuscrollen, um herauszufinden, wann eine Warnbedingung für einen kontinuierlichen Prozess oder einen Chargenprozess aktiv war. Es ist infolgedessen eventuell nicht möglich, alle vergangenen Warnungen einfach zu analysieren, um häufige Probleme usw. zu finden. Warnungen, die Bedingungen angeben, die zur Produktion von außerhalb der Spezifikation liegenden Produkten beigetragen haben, können auch leicht übersehen werden.
-
Die hier beschriebene neue Benutzeroberfläche ermöglicht einem Anwender jedoch das Untersuchen von Warnungen, die zurzeit aktiv sind oder in der Ver- gangenheit aufgetreten sind. Warnungen können in der kontinuierlichen Datenanalytikanwendung ausgelöst werden, wenn die prognostizierte Produktqualität benutzerdefinierte oder berechnete Grenzen (wie Produktspezifikations- oder Vertrauensgrenzen) verletzt, oder durch Prozessfehler, die (unter Verwendung eines PCA-Modells und dessen assoziierten Statistiken) erkannt worden sind.
-
Mit der neuen Benutzeroberfläche wird insbesondere ein kontinuierliches Listenregister in einem Benutzeroberflächenbildschirm bereitgestellt, und wenn dieses Register ausgewählt wird, wird ein Überblick der kontinuierlichen Datenanalytikblöcke bereitgestellt (CDA-Blöcke, wie jener von 9), die zurzeit in dem Steuerungssystem zur Qualitätsprognose und/oder Fehlererkennung installiert sind. In diesem Überblick ist die letzte Qualitätsprognose oder der letzte Prozessfehler für jeden CDA-Block gezeigt, wie in 11A illustriert wird.
-
Signifikanterweise ist dem Benutzeroberflächenbildschirm ein Register Alarmhistorie zugefügt worden, damit ein Anwender alle der Datenanalytikwarnungen anzeigen kann, die erkannt worden sind. Wenn ein Anwender dieses Register auswählt, zeigt die Benutzeroberfläche eine Liste der aktuellen und vergangenen Warnungen. Der beispielhafte Benutzeroberflächenbildschirm von 11B zeigt eine Alarmhistorienansicht, worin in der Vergangenheit nur eine (1) Warnung stattgefunden hat. Diese Ansicht würde im Allgemeinen viele Prozessfehler- und Qualitätsparameterprognosealarme enthalten.
-
Wenn ein Anwender eine der Warnungen in der Zusammenfassungsliste auswählt, ändert die Benutzeroberfläche die Anzeige, um den assoziierten Qualitätsparameterprognose- oder Prozessfehlererkennungstrend anzuzeigen, in dessen Mitte die Zeit der Warnung liegt. Ein Beispiel für die für einen Prozessfehler bereitgestellte Ansicht ist in 11C illustriert.
-
Wenn ein Anwender einen der Parameter auswählt, die zu dem Fehler beigetragen haben, liefert die Benutzeroberfläche als nächstes historische Informationen zu diesem Parameter (z.B. eine Parametertrendauftragung), die Parameterdaten zum Zeitpunkt des Fehlers verwendet. Diese Operation ist im Bildschirmabbild von 11D illustriert. Das Benutzeroberflächensystem kann natürlich auf diese Daten aus der Datenhistorie für den Zeitraum zugreifen, der mit der Warnung assoziiert ist (z.B. wenn die Warnung generiert wurde).
-
Diese Fähigkeit, alle der in der Vergangenheit vorgekommenen Warnungen einfach anzeigen zu können und auf assoziierte historische Informationen zum Zeitpunkt der Warnung einfach zugreifen zu können, hat gegenüber der traditionellen Alarmzusammenfassungsoberfläche viele Vorteile, die keine Warnungszusammenfassung und keine Unterstützung bietet, um assoziierte historische Informationen zum Zeitpunkt der Warnung anzuzeigen.
-
Es gibt zudem andere Anwendungen für die in den 11A–11D illustrierte Warnungsschnittstelle außerhalb der Verwendung mit den hier beschriebenen Datenanalytikblöcken. Die mit der Warnungsschnittstelle assoziierten Konzepte, die als in der kontinuierlichen Datenanalytik implementiert beschrieben sind, können in der Tat auf viele andere Anwendungen angewendet werden. Als ein Beispiel wird in der Standard-Bedienungspersonenoberfläche DeltaVTM eine „Alarmlisten”- Schaltfläche bereitgestellt. Wenn die Bedienungsperson diese Auswahl trifft, wird eine Liste der zurzeit aktiven Alarme angezeigt, wie in 12A illustriert ist.
-
Wenn die Alarmliste angezeigt wird, erhält der Anwender keine Unterstützung, um auf Werte des/der Prozessparameter in dem Alarm um den Zeitpunkt der Erkennung des Alarms einfach zuzugreifen und diese zu untersuchen. Unter Verwendung der hier beschriebenen Benutzeroberfläche wird die Alarmlistenanzeige jedoch modifiziert, um die Anzeige assoziierter historischer Informationen zum Zeitpunkt eines in dieser Liste ausgewählten Alarms zu unterstützen, wodurch es einem Anwender viel einfacher und schneller möglich ist, die Quelle des Alarms zu analysieren. Dieses Konzept ist in 12B illustriert, wo ein Anwender eine Alarmliste sehen und einen Alarm auswählen kann, um Trenddaten für die Alarmvariable (d. h. die Variable, die zur Generierung des Alarms verwendet wurde) zu sehen.
-
Wenn die Messungen in dem Alarm zudem mit anderen Parametern assoziiert sind, kann die Benutzeroberfläche dem Anwender die Möglichkeit geben, auch die Anzeige der historischen Werte von assoziierten Parametern um den Zeitpunkt des Alarms herum anzufordern. Wenn der Parameter im Alarm PV eines PID-Blocks ist oder eine Eingabe eines MPC-Blocks, usw. ist, könnte(n) jegliche(r) andere(b) Parameter des Blocks, der der Historie zugeordnet ist, um den Zeitpunkt des Alarms herum angezeigt werden. Eine derartige Anzeige ist in 12C illustriert. Indem auf assoziierte historische Informationen zum Zeitpunkt des Alarms leicht zugegriffen kann und diese angezeigt werden können, kann die Bedienungsperson die Quelle des Problems leichter und schneller analysieren.
-
Mindestens einige der oben beschriebenen beispielhaften Verfahren und/oder Vorrichtungen können, wie bereits erwähnt, durch ein oder mehrere Software- und/oder Firmwareprogramme implementiert werden, die auf einem Computerprozessor laufen. Dedizierte Hardwareimplementierungen einschließlich anwendungsspezifischer integrierter Schaltkreise, programmierbarer Logikbausteine und anderer Hardwaregeräte, jedoch nicht auf diese begrenzt, können gleichermaßen konstruiert werden, um einige oder alle der hier beschriebenen beispielhaften Verfahren und/oder Vorrichtungen gänzlich oder teilweise zu implementieren. Alternative Softwareimplementierungen einschließlich verteilter Verarbeitung oder Komponenten/Objekt-verteilter Verarbeitung, Parallelverarbeitung oder virtueller Maschinenverarbeitung, jedoch nicht darauf begrenzt, können ferner ebenfalls konstruiert werden, um die hier beschriebenen beispielhaften Verfahren und/oder Systeme zu implementieren.
-
Es sei darauf hingewiesen, dass die hier beschriebenen beispielhaften Software- und/oder Firmwareimplementierungen auf einem dinglichen Speichermedium gespeichert werden, wie einem Magnetmedium (z.B. Magnetplatte oder -band), einem magnetooptischen oder optischen Medium, wie einer optischen Disk, oder einem Festkörpermedium, wie einer Speicherkarte oder anderem Package, das ein oder mehrere Nur-Lese-(nicht flüchtige)Speicher, Schreib-Lese-Speicher oder andere wiederbeschreibbare (flüchtige) Speicher aufweist. Die hier beschriebene beispielhafte Software und/oder Firmware kann demnach auf einem dinglichen Speichermedium gespeichert werden, wie den oben beschriebenen oder nachfolgenden Speichermedien. Es sei darauf hingewiesen, dass der Umfang des Patents in dem Maße, in dem die obige Beschreibung Beispielkomponenten und Funktionen in Bezug auf bestimmte Standards und Protokolle beschreibt, nicht auf derartige Standards und Protokolle beschränkt ist. Beispielsweise repräsentiert jeder der Standards für Internet- und andere paketvermittelte Netzwerkübertragung (z.B. Transmission Control Protocol (TCP)/Internet Protocol (IP), User Datagram Protocol (UDP)/IP, HyperText Markup Language (HTML), HyperText Transfer Protocol (HTTP)) Beispiele für den aktuellen Stand der Technik. Derartige Standards werden periodisch durch schnellere oder effizientere Äquivalente mit der gleichen allgemeinen Funktionalität ersetzt. Ersatzstandards und -protokolle mit denselben Funktionen sind demnach Äquivalente, die durch dieses Patent abgedeckt sind, und sollen in den Umfang der angefügten Ansprüche eingeschlossen werden.
-
Obwohl dieses Patent beispielhafte Verfahren und Vorrichtungen offenbart, die Software oder Firmware einschließen, die auf Hardware ausgeführt werden, sei zudem darauf hingewiesen, dass diese Systeme lediglich beispielhaft sind und nicht als einschränkend angesehen werden sollten. Es ist beispielsweise vorgesehen, dass beliebige oder alle dieser Hardware- und Softwarekomponenten ausschließlich in Hardware, ausschließlich in Software, ausschließlich in Firmware oder in irgendwelcher Kombination von Hardware, Firmware und/oder Software verkörpert sein können. Obwohl die obige Beschreibung beispielhafte Verfahren, Systeme und/oder maschinenlesbares Medium beschreibt, sind diese Beispiele demnach nicht der einzige Weg zur Implementierung derartiger Systeme, Verfahren und von maschinenlesbarem Medium. Obwohl hier bestimmte beispielhafte Verfahren, Systeme und bestimmtes maschinenlesbares Medium beschrieben sind, ist der Schutzumfang dieses Patents nicht darauf begrenzt.