-
Die
vorliegende Erfindung betrifft im Allgemeinen Prozesssteuerungsverfahren,
und insbesondere Verfahren zur iterativen Lernsteuerung von Batch-Modusprozessen.
-
Um
eine maximale ökonomische
Effizienz und optimale Produktqualität zu erreichen, hat die Nachfrage
nach einer umfassenderen Automatisierung der Prozesssteuerung sowohl
in quantitativer Hinsicht als auch hinsichtlich der technischen
Ausgereiftheit immer weiter zugenommen. In diesem Zusammenhang wurden
wesentliche Fortschritte in Bezug auf die Möglichkeit erzielt, Eingabedaten
von einer Vielzahl von Sensoren schnell zu erfassen und hoch zuverlässige Ausgabekommandos
zum Steuern eines physikalischen Prozesses zu erzeugen.
-
Allerdings
beruhten sich die meisten Prozesssteuerungsverfahren traditionell
auf der Benutzung von Rückkopplungssignalen,
um einen oder mehrere Proportional-Integral-Derivativ-(„PID")-Algorithmen zu lenken, und so einen
gewünschten
Sollwert zu erzielen. Obwohl dieser Ansatz der Prozesssteuerung
zweifellos effektiv war, ist er im Wesentlichen reaktiver Natur.
Entsprechend kann die Benutzung einer rückkopplungsbasierten Steuerung
zu einer trägen
Gesamtreaktion des Systems führen,
und/oder die Durchführung
einer Anpassung veranlassen, die größer ist, als es anderenfalls
wünschenswert
wäre.
-
Die
Batch-Modusverarbeitung ist ein Beispiel einer Herausforderung für die Prozesssteuerung,
bei der eine rückkopplungsbasierte
Steuerung kein gleichmäßig optimales
Ergebnis erzielen kann. Batch-Modusprozesse sind Prozesse, die sequentiell
ausgeführte
Batch-Abläufe
aufweisen, die jeweils im Wesentlichen identisch sind, und jeweils
ein Endmaterial oder Endergebnis erzeugen. Die Batch-Modussteuerung
beinhaltet typischerweise das Bewegen von Sollwerten, Prozessverzögerungen,
großer Trägheit, Nichtlinearitäten, ungemessenen
Störungen
und/oder einer Vielzahl von Steuerungsversuchen. Entsprechend ist
Information von den Sensoren zum aktuellen Status des Batch-Prozesses
in Bezug darauf wichtig, den existierenden Sollwert zu erzielen,
doch es kann sein, dass diese Information für sich alleine nicht ausreicht,
um einen nachfolgenden Sollwert zu erzielen, ohne dass es zu einer
unerwünschten
Verzögerung
in der Änderung
eines Prozessparameters kommt, wie z.B. der Temperatur oder des
Drucks.
-
Während ein
dynamisches Nachlaufen eines Prozessparameters überwunden werden kann, indem eine
signifikante Änderung
an einem manipulierten Parameter vorgenommen wird (z.B. einem Wärmeelement),
wird es im Allgemeinen als weniger wünschenswert betrachtet, einem
Prozesssteuerungssystem große Veränderungen
aufzuzwingen. Außerdem
besteht eines der Hauptziele jedes Batch-Steuerungsprozesses in der Möglichkeit,
die Produktvariabilität
von einem Batch zum nächsten
zu minimieren. Entsprechend existiert ein ständiger Bedarf, Prozesssteuerungsverfahren,
die dazu in der Lage sind, die Produktvariabilität in Batch-Prozessen zu minimieren,
sowie andere Steuerungsanwendungen für variierende Prozesse zu entwickeln.
-
Die
Steuerung von Batch-Prozessen ist, insbesondere auf den Seiten 245
bis 250, in folgendem Dokument umrissen: D. GORINEVSKY: „DISTRIBUTED
SYSTEM LOOP SHAPING DESIGN OF ITERATIVE CONTROL OF BATCH PROCESSES" PROCEDINGS OF THE
38TH CONFERENCE ON DECISION AND CONTROL, Band. 1, Dezember 1999
(1999-12), XP002197216USA.
-
Entsprechend
besteht die Erfindung in einem Verfahren zum Erzeugen eines Ausgangs
zu einem ausgewählten
Zeitpunkt eines aktuellen Batch-Ablaufs, um eine Batch-Ablaufvariable zu
steuern, wobei sich der Batch-Ablauf über eine Zeitdauer erstreckt,
und ein gewünschtes
Prozesswertprofil aufweist, wobei das Verfahren Folgen des aufweist:
Erhalten
einer Abweichungshistorie-Wertemenge für einen unmittelbar vorhergehenden
Batch-Ablauf, wobei die Abweichungshistorie-Wertemenge eine Abweichung
zwischen der Batch-Ablaufvariable und dem gewünschten Prozesswertprofil zu
ausgewählten
Zeitintervallen während
des vorhergehenden Batch-Ablaufs darstellt;
Erhalten einer
Ausgabehistorie-Wertemenge für
den unmittelbar vorhergehenden Batch-Ablauf, wobei die Ausgabehistorie-Wertemenge
die Ausgaben darstellt, die zu ausgewählten Zeitintervallen während des
vorhergehenden Batch-Ablaufs bereitgestellt wurden;
Erzeugen
einer Glättungsaktualisierung
als eine Funktion einer Untermenge der vorhergehenden Ausgabehistorie-Wertemenge
nahe dem ausgewählten
Zeitpunkt in dem vorhergehenden Batch-Ablauf, und als eine Funktion
eines Glättungsfaltungsfensters;
Erzeugen
einer Entkopplungsaktualisierung als eine Funktion einer Untermenge
der vorhergehenden Abweichungshistorie-Wertemenge nahe dem ausgewählten Zeitpunkt
in dem vorhergehenden Batch-Ablauf, und als eine Funktion eines
Entkopplungsfaltungsfensters; und
Erzeugen der Ausgabe als
eine Funktion der Glättungsaktualisierung
und der Entkopplungsaktualisierung.
-
Die
vorliegende Erfindung stellt so ein Verfahren zum Steuern von Batch-Modusprozessen
bereit, um die Steuerung der Batch-Prozesse zu verbessern, und insbesondere
von einem Batch-Ablauf zum nächsten. Die
Abweichung von Fehlern von einem ersten Batch-Ablauf, zusammen mit
den Ausgaben, die bereitgestellt werden, um den ersten Batch-Ablauf
zu steuern, werden benutzt, um einen Ausgabewert zu erzeugen, der
benutzt wird, um einen zweiten Batch-Ablauf zu steuern. In einem
Verfahren wird jeder Batch-Ablauf in mehrere Zeitschlitze unterteilt.
-
Für einen
ersten Batch-Ablauf kann der Abweichungswert von gemessenen gegenüber gewünschten Prozesswerten
historisch im Verlauf des ersten Batch-Ablaufs gespeichert werden.
Ebenso können
auch die Ausgabewerte, die benutzt werden, um den Prozess zu steuern,
im Verlauf des ersten Batch-Ablaufs gespeichert werden. Ein Verfahren
benutzt eine Datenstruktur wie z.B. ein Array oder eine Datei, wobei
für jeden
Zeitschlitz ein oder mehrere Werte in der Datenstruktur gespeichert
werden. In einem zweiten Batch-Ablauf werden für jeden Zeitschlitz oder jede
abgelaufene Zeit des zweiten Batch-Ablaufs Daten von der ersten Ablaufabweichungshistorie
und Ausgabehistorie zusammen mit Gewichtungsfaktoren benutzt, um
eine Aktualisierung oder ein Inkrement zu erzeugen, die oder das
dem Ausgabewert, der während
des ersten Batch-Ablaufs benutzt wurde, für denselben Zeitschlitz in
dem zweiten Batch-Ablauf hinzugefügt werden kann. Ebenso können die
Batch-Ablauf-Abweichungen und -Ausgaben benutzt werden, um die dritten
Batch-Ablaufausgaben
zu erzeugen. Vorzugsweise werden die oben beschriebenen Ausgaben
in überwachend
steuernder Weise benutzt, indem überwachende
Steuersollwerte an eine lokale (PID)-Steuerung bereitgestellt werden,
die schließlich
die Steuereingaben zum Steuern der Batch-Abläufe
bereitstellt.
-
In
einer Ausführungsform
der Erfindung wird für
einen jeweiligen Zeitschlitz in einem Batch-Ablauf eine Untermenge
von Abweichungswerten an einem entsprechenden Zeitpunkt in dem unmittelbar
vorhergehenden Batch ausgewählt,
sowie eine Untermenge von Ausgabewerten, die um den entsprechenden
Zeitwert herum in diesem vorhergehenden Batch angeordnet sind. Die
ausgewählte
Untermenge von Abweichungswerten kann in einem Gleitfenster liegen,
das um den ausgewählten
Zeitpunkt herum angeordnet ist, wobei die Abweichungswerte jeweils
in geeigneter Weise von einem Abweichungsgewichtungsfaktor gewichtet
und summiert werden, um einen Gesamtabweichungsbeitrag zu bilden.
Die Abweichungsgewichtungsfaktoren werden als das Entkopplungsfaltungsfenster
bezeichnet. Ebenso kann die ausgewählte Untermenge von Ausgabewerten
von dem unmittelbar vorhergehenden Batch jeweils in geeigneter Weise
durch Ausgabegewichtungsfaktoren gewichtet werden, die summiert
werden, um einen Gesasamtausgabebeitrag zu bilden. Die Ausgabegewichtungsfaktoren
werden als Glättungs-
oder Ausgabefaltungsfenster bezeichnet.
-
Eine
Menge von Gewichtungsfaktoren kann für jeden Zeitschlitz in dem
Abweichungsfenster bereitgestellt werden, und eine Menge von geeigneten
Gewichtungsfaktoren kann für
jeden Zeitschlitz im Ausgabefenster bereitgestellt werden. Die Breite
und die Werte für
das Entkopplungs- und Glättungsfaltungsfenster können durch
Berechnungen bestimmt werden, die auf einem Prozessmodell, oder
vorzugsweise auf der Prozessantwort auf eine Serie von Schritten
oder Impulseingaben basieren. Der Gesamtabweichungsbeitrag und der
Gesamtausgabebeitrag für
jeden jeweiligen Zeitschlitz können
kombiniert werden, um ein Inkrement oder eine Aktualisierung zu
bilden, die dem Ausgabewert hinzugefügt werden kann, der während des
ersten Batch-Ablaufs in dem entsprechenden Zeitschlitz benutzt wurde,
um eine neue Ausgabe für
den aktuellen Zeitschlitz in dem zweiten Batch-Ablauf bereitzustellen.
-
Die
Ausgabe an den zweiten Batch beinhaltet also Beiträge von dem
vorhergehenden Batch-Fehler oder der vorhergehenden Batch-Abweichung,
und den vorhergehenden Batch-Ausgaben zum Steuern des Prozesses.
Die vorhergehende Batch-Abweichung beinhaltet Beiträge von dem
unmittelbar vorhergehenden Batch, während die Ausgabewerte des
vorhergehenden Batch inhärente
Beiträge
sowohl von unmittelbar vorhergehenden als auch früheren Batches
beinhalten. Die vorliegende Erfindung stellt ein rechnerisch einfaches Verfahren
zum Bereitstellen einer iterativen Aktualisierung von Batch zu Batch
bereit, um eine gründlichere Batch-zu-Batch-Steuerung
zu erreichen.
-
In
den Figuren ist:
-
1A eine
schematische Ansicht eines Batch-Prozesses mit einem Ofen, einem
Erwärmersteuereingang,
einer Heizvorrichtung, einem erwärmten
Teil, und einer gemessenen Temperaturausgabe;
-
1B eine
schematische Ansicht eines Batch-Prozesses mit einem Ofen, einer
Vielzahl von Erwärmersteuereingängen, einer
Vielzahl von Heizvorrichtungen, einer Vielzahl von erwärmten Teilen,
und einer Vielzahl gemessener Temperaturausgaben;
-
2A eine
Gegenüberstellung
von Temperatur und Zeit, mit einem gewünschten Temperaturprofil und
einer gemessenen Temperaturhistorie für einen Batch;
-
2B eine
stark schematisierte Gegenüberstellung
von Zeit und Temperatur für
die Steuerausgaben, die an die Erwärmersteuerung bereitgestellt
werden, und benutzt werden, um die gemessene Temperaturhistorie
aus 2A zu erreichen;
-
3A eine
schematische Ansicht eines gewünschten
Temperaturprofilspeichers, der sich über die Länge eines Batch wie dem aus 2A erstreckt,
wobei das gewünschte
Temperaturprofil eine Anzahl von Zeitschlitzen enthält, in denen
gewünschte
Temperaturen gespeichert sind;
-
3B eine
schematische Ansicht einer Ausgabehistorie zum Steuern einer Heizvorrichtung
wie dem aus 2B, die eine Anzahl von Zeitschlitzen
und ein gleitendes Zeitfenster enthält, das um den aktuellen Zeitschlitz
t herum angeordnet ist;
-
3C eine
schematische Ansicht einer Abweichungshistorie, die aus einer Anzahl
von Zeitschlitzen gebildet ist, wobei jede eine Anzeige der Abweichung
oder des Fehlers zwischen der gemessenen und der gewünschten
Temperatur anzeigt, wie in 2A gezeigt,
sowie ein gleitendes Zeitfenster, das um einen aktuellen Zeitschlitz
t herum angeordnet ist;
-
3D eine
schematische Ansicht eines Speichers eines neu erzeugten Batch-Steuerungsausgabeprofils,
der eine Anzahl von Zeitschlitzen aufweist, die mit Ausgaben zum
Steuern der Heizvorrichtung aus 1 bestückt ist;
-
4A eine
schematische Ansicht des gleitenden Ausgabehistorie-Zeitfensters
aus 3B, das um einen aktuellen Zeitpunkt t zentriert
ist;
-
4B eine
schematische Ansicht des gleitenden Abweichungshistorie-Zeitfensters
aus 3C, das um einen aktuellen Zeitpunkt t zentriert
ist;
-
5 ein
vereinfachtes Datenflussdiagramm eines Verfahrens, das benutzt wird,
um unter Benutzung von historischen Abweichungswerten und historischen
Ausgabe des vorhergehenden Batch eine einzelne überwachende Steuerungsausgabe
für einen
nachfolgenden Batch zu erzeugen;
-
6 eine
schematische Ansicht des Datenflusses für ein Verfahren, das mit den
historischen Ausgaben aus 5 arbeitet;
-
7 eine
schematische Ansicht des Datenflusses für ein Verfahren, das mit den
historischen Abweichungen aus 5 arbeitet;
-
8 eine
stark schematisierte Ansicht eines Entkopplungsfaltungsfensters,
das Gewichtungsfaktoren aufweist, um mit den Abweichungsausdrücken aus 6 zu
arbeiten;
-
9 eine
schematische Ansicht eines Glättungsfaltungsfensters,
das Gewichtungsfaktoren aufweist, um mit den Abweichungsausdrücken aus 7 zu
arbeiten;
-
10 eine
schematische Ansicht einer überwachenden
Steuervorrichtung, die benutzt wird, um den Prozess aus 1 unter Benutzung der Verfahren aus 2 bis 9 und 11 bis 12 zu
steuern;
-
11 ein
Ablaufdiagramm eines Verfahrens zum Steuern eines Batch-Prozesses;
und
-
12 ein
Ablaufdiagramm eines Verfahrens zum Erzeugen von Glättungs-
und Entkopplungsfaltungsfenster- Werten
und Breiten.
-
1A zeigt
einen Batch-Prozess 30 mit einer Umschließung oder
einem Ofen 32 mit einem Inneren 33, wobei eine
Heizvorrichtung 34 eine erwärmten Teil 36 im Inneren
erwärmt.
In dem dargestellten Beispiel wird eine Steuerungsausgabe 40 benutzt,
um mehrere Heizvorrichtungen 42 zu steuern. Ein gemessener
oder tatsächlicher
Temperaturwert kann, wie unter 44 angezeigt, durch ein
gemessenes Temperatursignal ausgegeben werden. Bei einer Nutzungsweise
der Erfindung kann die Heizvorrichtung 34 für eine Wärmeschnellverarbeitung
Infrarot-Heizvorrichtung aufweisen, und an dem erwärmten Teil 36 kann
die gemessene oder tatsächliche
Temperatur direkt durch nahe angeordnete Thermoelemente oder andere
Messvorrichtungen abgefühlt
werden. In einigen Ausführungsformen
kann die gemessene Temperatur 42 anstelle einer direkten
Messung des erwärmten
Teils 36 die Umgebungstemperatur von Kammer 32 sein.
In einer anderen Ausführungsform
wird die gemessene Temperatur 44 unter Benutzung von Infrarotverfahren
gemessen, wobei kein direkter Kontakt erforderlich ist.
-
Der
Prozess 30 kann jeden Batch-Prozess aufweisen, für den eine
Ablauf-zu-Ablauf-Wiederholbarkeit gewünscht wird. Batch-Wärmeschnellverarbeitung,
die in der Halbleiterfertigung benutzt wird, ist eine Anwendung
der vorliegenden Erfindung. Der Batch-Prozess 30 kann beispielsweise
auch ein Härtungsprozess
oder eine Verkohlung von Teilen in einem Hochtemperaturofen sein.
-
1B zeigt
einen Batch-Prozess 35 mit einem Ofen 31, der
eine Vielzahl von Steuereingaben 40A bis 40E,
eine Vielzahl von Heizvorrichtungen 34A bis 34E,
eine Vielzahl von erwärmten
Teilen 36A bis 36E, und eine Vielzahl von gemessenen
Temperaturausgaben 44A bis 44E aufweist. 1B zeigt
einen Aspekt der Schwierigkeit, einen Batch-Prozess mit einer Vielzahl
von Eingaben zu steuern, auch wenn dieselbe Eigenschaft gesteuert
wird.
-
Insbesondere
können
die Heizvorrichtungen 34A und 34E Randeffekte
aufweisen, denen die Heizvorrichtungen 34A und 34B nicht
ausgesetzt sind. Die Heizvorrichtungen 34B bis 34D können signifikante
Entkopplungsprobleme aufweisen, die sich teilweise aus der sich überlagernden
Erwärmung
ergeben, die von benachbarten Heizvorrichtungen in benachbarten
Zonen bereitgestellt wird.
-
2A zeigt
eine Gegenüberstellung 60 von
Prozesswert und Zeit, wobei es sich in diesem Fall um eine Gegenüberstellung
von Temperatur und Zeit für
einen Batch-Erwärmungsprozess
handelt. Gegenüberstellung 60 weist
ein gewünschtes
oder Sollwertprofil 62 auf, das im Allgemeinen eine Anlaufphase 64,
eine stabile Phase 66, und eine Auslaufphase 68 beinhaltet.
Außerdem
ist ein gemessenes oder tatsächliches
Temperaturprofil 70 dargestellt, für das gezeigt ist, dass es
dem gewünschten
Temperaturprofil 62 folgt oder zu folgen versucht. Wie
die Betrachtung von 2A ergibt, beispielsweise bei 72, 82 und 84,
liegen Fehler oder Abweichungen der aktuellen von der gewünschten
Temperatur vor. Die Abweichung oder der Fehler können sowohl positive Regionen,
wie bei 82 gezeigt, als auch negative Regionen, wie bei 84 gezeigt,
beinhalten. Für Gegenüberstellung 60 kann
eine Zeitdauer oder Länge
vorliegen, die Gegenüberstellung 60 zugeordnet
ist. 2B zeigt eine Gegenüberstellung 76 von
Spannung oder Strom und Zeit für
die Steuerungsausgabe 40 aus 1,
die einem Batch-Prozess wie dem durch Gegenüberstellung 60 gezeigten
aus 2A entspricht. Gegenüberstellung 76 ist
stark schematisiert, und soll nicht die Ausgabe eines bestimmten
Steuerungsalgorithmus darstellen.
-
3A zeigt
die Speicherung eines gewünschten
Temperaturprofils 100, das dem gewünschten Temperaturprofil 62 aus 2A entspricht.
In dem dargestellten Beispiel beinhaltet das gewünschte Temperaturprofil 100 eine
Anzahl von Zeitschlitzen oder Elementen 102, in denen jeweils
eine gewünschte
Temperatur oder ein Sollwert gespeichert sein können. In einer Ausführungsform
kann das gewünschte
Temperaturprofil 100 ein Array beinhaltet, das eine Anzahl
von Elementen aufweist, wobei jedes einen gewünschten Temperaturwert enthält, und
optional einen Zeitwert. In einer Ausführungsform der Erfindung wird
der Zeitwert durch die Position abgeleitet, und die Zeitschlitze
können
durch gleiche Zeitinkremente geteilt oder beabstandet sein. Das
gewünschte
Temperaturprofil 100 und die Zeitschlitze 102 können als
einzelne Temperaturen gespeichert sein, oder können nach Bedarf aus Modellen
oder Gleichungen in einer Steuerung oder einem Computer erzeugt
werden. Bei dem gewünschten
Temperaturprofil 100 kann zum Zeitpunkt „t" ein aktueller Zeitschlitz 106 angeordnet
sein. In einer Ausführungsform
wird die aktuelle gewünschte
Temperatur 106 benutzt, um Abweichungen und Steuerungsausgaben
zu erzeugen.
-
3B zeigt
eine Ausgabehistorie 110, die eine Anzahl von Ausgabezeitschlitzen 112 und
ein gleitendes Ausgabehistoriefenster 114 beinhaltet, das
einen aktuellen Zeitschlitz 116 beinhaltet, der nahe der
Mitte des Gleitfensters 114 angeordnet ist, wie durch „t" angezeigt, sowie
eine Anzahl von Zeitschlitzen 118, die in Bezug auf den
aktuellen Zeitschlitz 116 zeitlich nachfolgenden angeordnet
sind, und Zeitschlitze 120, die in Bezug auf den aktuellen
Zeitschlitz 116 zeitlich früher angeordnet sind. In einer
bevorzugten Ausführungsform der
Erfindung wird die Untermenge von Zeitschlitzen in dem Gleitfenster 114 zusammen
mit einem Glättungsfaltungsfenster
benutzt, um Steuerungsausgaben für
einen nachfolgenden Batch zu erzeugen.
-
3C zeigt
eine Abweichungshistorie 130, die aus einer Anzahl von
Abweichungshistorie-Zeitschlitzen 132 gebildet ist, und
ein Abweichungshistorie-Gleitfenster 134, das einen aktuellen
Zeitschlitz 136 beinhaltet, der dem aktuellen Zeitschlitz 106 aus 3A entsprechen
kann. Wie sich aus der Betrachtung von 3C ergibt,
ist eine Anzahl von Abweichungshistorie-Zeitschlitzen 138 an
Zeitpunkten angeordnet, die auf den zentralen Zeitschlitz 136 folgen,
wobei eine Anzahl von Zeitschlitzen 140, die Zeitwerte
aufweisen, die früher
sind als der zentrale Zeitschlitz 136, ebenfalls im Gleitfenster 134 angeordnet
sind. In einer bevorzugten Ausführungsform
der Erfindung wird eine Untermenge der Abweichungshistorie, die
in Gleitfenster 134 dargestellt ist, zusammen mit einem
Entkopplungsfaltungsfenster benutzt, um ein Inkrement oder eine
Aktualisierung bereitzustellen, die dann dem vorhergehenden Ausgabesignal 116 hinzugefügt wird,
um an Zeitpunkt „t" die Steuerungsausgabe
für einen
nachfolgenden Batch bereitzustellen.
-
3A, 3B,
und 3C stellen historische Daten für einen Batch dar, der bereits
abgelaufen ist. In einer bevorzugten Ausführungsform der Erfindung stellt 3A ein
gewünschtes
Temperaturprofil dar, das von Batch zu Batch, oder von Ablauf zu
Ablauf, unverändert
bleibt. In einer bevorzugten Ausführungsform wird nur der aktuelle
Zeitschlitz 106 benutzt, um eine einzelne Ausgabe zu erzeugen.
In einer bevorzugten Ausführungsform
stellen 3B und 3C historische
Daten dar, die für
einen Batch aufgezeichnet werden, und sich wahrscheinlich von einem
Batch zum nächsten ändern. 3B und 3C können als
Darstellung der historischen Ausgabe- und Abweichungsdaten von einem ersten
Batch betrachtet werden, die zusammen mit Faltungsfenstern benutzt
werden können,
um ein Inkrement oder eine Aktualisierung zu erzeugen, das oder die
dann dem vorhergehenden Ausgabesignal 116 hinzugefügt wird,
um an Zeitpunkt „t" die Steuerungsausgabe
für einen
nachfolgenden, vorzugsweise unmittelbar nachfolgenden Batch bereitzustellen.
-
3D zeigt
ein Steuerungsausgabeprofil 160 zur Benutzung in einem
Batch, der vorzugsweise unmittelbar auf den Batch aus 3B und 3C folgt.
Das zweite Batch-Ausgabeprofil 160 beinhaltet eine Anzahl
von Zeitschlitzen 162 und einen aktuellen Zeitschlitz 164,
der dem aktuellen Zeitschlitz 106 aus 3A entspricht,
sowie jeweils dem aktuellen Zeitschlitz 116 und 136 aus 3B bzw. 3C.
In einer bevorzugten Ausführungsform
der Erfindung werden die Daten von Zeitschlitz 106 aus 3A zusammen
mit den Daten des Gleitfensters 114 aus 3B und
des Gleitfensters 134 aus 3C benutzt,
um nach hier beschriebenen geeigneten Berechnungen in Zeitschlitz 164 eine
zweite Batch-Ausgabe zu erzeugen.
-
Es
ist vorgesehen, dass jeder Zeitschlitz aus 3A bis 3D eine
Vielzahl von Dateneinträgen
beinhaltet. Beispielsweise kann in einem Batch-Prozess, der eine
Vielzahl von Heizvorrichtungen und Sensoren beinhaltet, bei Bedarf
jeder Zeitschlitz in dem gewünschten
Temperaturprofil 100 eine entsprechende gewünschte Temperatur
für jeden
Sensor des Systems speichern. Ebenso kann jeder Zeitschlitz in dem
Ausgabehistorieprofil 110 den Ausgabewert speichern, der
jeder Heizvorrichtung des Systems während der vorhergehenden Batch-Ablaufs
bereitgestellt wurde. Ebenso kann jeder Zeitschlitz in dem Abweichungshistorieprofil 130 den
Abweichungswert an jedem Sensor des Systems während des vorhergehenden Batch-Ablaufs
speichern. Schließlich
kann jeder Zeitschlitz in dem neuen Ausgabeprofil 160 den
neuen Ausgabewert für
jeden Erhitzer des Systems speichern.
-
In
einer Ausführungsform
der Erfindung werden die Werte zum Bestücken von Zeitschlitz 164 des zweiten
Batch-Ausgabeprofils 160 nach
Bedarf erzeugt, zu einem Zeitpunkt nahe dem Zeitpunkt, für den die Steuerungsausgabe
benötigt
wird. Die Ausgabewerte von 164 können in einer Ausführungsform
benutzt werden, um Heizvorrichtungen direkt zu steuern, während in
einer anderen Ausführungsform
die Werte von Zeitschlitz 164 als überwachende Sollwerte benutzt
werden, die an eine PID-Steuerung bereitgestellt werden, um die
Heizvorrichtungen indirekt zu steuern.
-
In
einer Ausführungsform
der Erfindung wird das zweite Batch-Ausgabeprofil 160 vollständig, von
Anfang bis Ende, nach Abschluss eines ersten Batch-Ablaufs erzeugt,
der die Ausgabehistorie 110 und die Abweichungshistorie 130 vollständig bestücken kann.
Bei diesem Verfahren kann ein Ausgabeprofil für einen zweiten Batch vollständig vor
dem Beginn des zweiten Batch erzeugt werden. In einer anderen Ausführungsform
kann ein zweites Batch-Ausgabeprofil nach Abschluss der Datenerfassung
in den geeigneten Gleitfenstern erzeugt werden, beispielsweise den
Gleitfenstern 114 und 134 aus 3B bzw. 3C.
In dieser Ausführungsform
können
die Werte zum Bestücken
von Zeitschlitz 164 aus 3D berechnet
werden, sobald die Hinterkante der Gleitfenster den entsprechenden
Zeitschlitz passiert, wie z.B. Zeitschlitze 116 und 136 aus 3A und 3B.
Die Zeitschlitze aus 3A bis 3D dienen
der Veranschaulichung, und können
in einigen Ausführungsformen
der Erfindung benutzt werden. Allerdings kann die vorliegende Erfindung
unter Benutzung von Verfahren der Kurvenanpassung, Modellierung,
Interpolierung und/oder Datenkomprimierung realisiert werden, welche
Fachleuten gut bekannt sind.
-
4A zeigt
Gleitfenster 114 aus 3B, wobei
der zentrale Zeitschlitz 116 einen Zeitpunkt gleich „t", einen Vorderkantenzeitschlitz 170 an
Zeitpunkt (t + n), und einen Hinterkantenzeitschlitz 172 an
Zeitpunkt (t – n)
aufweist. Zeitpunkt „t" entspricht dem aktuellen
Zeitpunkt 106 aus 3A. In
der dargestellten Ausführungsform
weist Fenster 114 eine Breite von 11 auf, wobei n gleich
5 ist. Es ist vorgesehen, dass, anstatt + n für das Gleitfenster zu benutzen,
das Gleitfenster unter Benutzung von +n und –m berechnet werden kann, wobei
m ≠ n.
-
4B zeigt
Abweichungsgleitfenster 134 aus 3C, das
einen zentralen Zeitschlitz 136 an Zeitpunkt „t", einen Vorderkantenzeitschlitz 180 an
Zeitpunkt (t + n), und einen Hinterkantenzeitschlitz 182 an
Zeitpunkt (t – n)
aufweist. Gleitfenster 134 aus 4B weist
so eine Breite von 11 Zeitschlitzen auf, wobei n gleich 5 ist. In
einer Ausführungsform
weisen das Ausgabe- und das Abweichungsfenster dieselbe Breite auf.
In einer bevorzugten Ausführungsform
der Erfindung wird nur die Untermenge historischer Werte in den
Gleitfenstern 114 und 134 benutzt, um die Steuerungsausgaben
für einen
nachfolgenden Batch zu beeinflussen, anstatt die gesamte Menge von
Werten der Ausgabehistorie 120 und 130 zu benutzen.
-
5 ist
ein Blockdiagramm, das einen Datenfluss darstellt, der benutzt wird,
um eine neue Steuerungsausgabe 202 für den aktuellen Zeitpunkt „t" zu berechnen. Abweichungen 208 werden
als Eingabe benutzt, und können
dem Gleitfenster 134 aus 3C und 4B entsprechen.
Die Abweichungen 208 können direkt
bereitgestellt werden, oder können
unter Benutzung gewünschter
Werte 204 und historischer gemessener Werte 205 hergeleitet
werden, die an 207 verglichen werden, um an 208 Abweichungen
oder Fehler zu erzeugen. Abweichungen 208 können mit
einem Entkopplungsfaltungsfenster 201 bearbeitet werden,
um einen in geeigneter Weise gewichteten Abweichungsbeitrag zu erzeugen.
Eine Untermenge von alten Ausgaben 209 kann benutzt werden,
und kann der Bestückung
von Gleitfenster 114 aus 3B und 4A entsprechen.
-
Die
alten Eingaben 209 können
von einem Glättungsfaltungsfenster 203 bearbeitet
werden, um einen in geeigneter Weise gewichteten Ausgabebeitrag
zu erzeugen. Die Faltungsoperationen, und eine Kombination der Ausgabe- und Abweichungsbeiträge können durchgeführt werden,
wie an Berechnungsblock 210 angezeigt, um einen Inkrement- oder Aktualisierungswert
zu erzeugen. Der Inkrement- oder
Aktualisierungswert kann dann an Zeitpunkt „t" der alten Ausgabe hinzugefügt werden,
um einen neuen Ausga bewert 202 zu erzeugen.
-
Bezug
nehmend auf 6 ist der Datenfluss für einen
Prozess 220 gezeigt, der benutzt wird, um die in geeigneter
Weise gewichtete Ausgabe zu erzeugen. Die Eingaben werden als Eingaben
für ein
Verfahren oder einen Algorithmus 222 benutzt, wobei es
sich in einer Ausführungsform
um eine einfache Summierung von Produkten handelt. Wie die Betrachtung
von Verfahren 220 ergibt, wird eine Anzahl von Ausgaben
mit einer Anzahl von Faktoren multipliziert, die summiert werden,
um Glättungsinkrement
oder -aktualisierung 206 zu bilden. In dem dargestellten
Beispiel wird eine Ausgabe zu Zeitpunkt [t + n], die Vorderkantenausgabe 232, mit
einem Gewichtungsfaktor [n] 234 multipliziert. Die Ausgabe
zu Zeitpunkt [t + n] 232 kann dem Vorderkantenzeitschlitz 170 aus 4A entsprechen.
Die Gewichtungsfaktoren können
aus einem Array von Konstanten stammen, wobei es sich um ein Faltungsfenster
handeln kann. Ein unmittelbar vorhergehender Zeitschlitz leistet
einen Beitrag, wobei eine Ausgabe an Zeitpunkt [t + n – 1] 228 mit
einem Gewichtungsfaktor [n – 1] 230 multipliziert
wird. Eine zentrale Ausgabe an Zeitpunkt [t] 224 wird mit
einem Gewichtungsfaktor [0] 226 multipliziert. Ebenso wird
eine Ausgabe an der Hinterkante des Gleitfensters, oder eine Ausgabe
an Zeitpunkt [t – n] 240,
mit einem Gewichtungsfaktor [–n] 242 multipliziert.
Die Ausgabe an Zeitpunkt [t – n] 240 kann
in einigen Ausführungsformen
dem Hinterkantenzeitschlitz 172 aus 4A entsprechen.
-
Wie
im Folgenden erörtert,
können
die Gewichtungsfaktoren für
jeden Batch-Prozess in geeigneter Weise angepasst werden, und vorzugsweise
nicht identisch für
jeden Zeitschlitz in einem Gleitfenster. In einer Ausführungsform
entsprechen Ausgaben, einschließlich 232, 228, 224 und 240 aus 6,
der Untermenge historischer Ausgabewerte, die das Gleitfenster 114 aus 3B bestücken. Die
Gewichtungsfaktoren 234, 230, 226 und 242 können den
Werten entsprechen, die das Glättungsfaltungsfenster 320 bestücken, wie
weiter unten in Bezug auf 9 erörtert.
-
7 zeigt
eine ähnliche
Behandlung für
einen Prozess oder ein Verfahren 250, der oder das benutzt wird,
um ein in geeigneter Weise gewichtetes Entkopplungsinkrement 251 zu
berechnen. Genauer ausgedrückt,
wird eine Abweichung an Zeitpunkt [t + n] 252 mit einem
Abweichungsgewichtungsfaktor [n] 254 multipliziert. Eine
Abweichung an Zeitpunkt [t] 256 wird mit einem Abweichungsgewichtungsfaktor
[0] 258 multipliziert. Eine Abweichung an Zeitpunkt [t – n] 262 wird
mit einem Abweichungsgewichtungsfaktor [–n] 263 multipliziert.
Ein Verfahren 264 kann mit den bereitgestellten Eingaben
arbeiten, und ist in einer bevorzugten Ausführungsform eine einfache Summierung
der gewichteten Werte.
-
Die
Verfahren 222 aus 6 und 264 aus 7 können in
den Berechnungsblock 210 aus 5 aufgenommen
werden. In einer Ausführungsform
entsprechen Abweichungen, darunter 252, 256 und 262 aus 7,
der Untermenge von historischen Abweichungswerten, die das Gleitfenster 134 aus 3C bestücken. Die
Gewichtungsfaktoren 254, 258 und 263 können den
Werten entsprechen, die das Entkopplungsfaltungsfenster 300 bestücken, das
weiter unten unter Bezugnahme auf 8 besprochen
werden soll. Die geeigneten Gewichtungen, die benutzt werden, um
das Glättungsfaltungsfenster
und das Entkopplungsfaltungsfenster zu bestücken, können für jeden Batch-Prozess in geeigneter
Weise bestimmt werden.
-
Ein
neuer Ausgabewert an Zeitpunkt [t] wird berechnet, indem einfach
Glättungsinkrement
oder Aktualisierung 206, Entkopplungsinkrement oder Aktualisierung 251 und
die vorhergehende Ausgabe an Zeitpunkt [t] 224 addiert
werden, wie unter 270 gezeigt. Dies ergibt ein rechnerisch
einfaches Verfahren zum Bereitstellen einer iterativen Aktualisierung
von Batch zu Batch, um eine gründlichere
Batch-zu-Batch-Steuerung zu erreichen.
-
8 zeigt
die Verteilung der Abweichungsgewichtungsfaktoren, wie sie in einer
Ausführungsform
der Erfindung benutzt werden. Ein Abweichungs- oder Entkopplungsfaltungsfenster 300 ist
gezeigt. Abweichungsfenster 300 ist als eine Gegenüberstellung
der Gewichtungsfaktorgröße und der
Zeitschlitznummer gezeigt. Das Abweichungsgewichtungsfaktor-Fenster 300 beinhaltet
einen zentralen Schlitz [0] 306, einen Vorderkantenschlitz
[5] 304, und einen Hinterkantenschlitz [–5] 304.
Wie aus der Betrachtung von 8 hervorgeht,
weist das Abweichungsgewichtungsfaktor-Fenster 300 einen
zentralen, negativen Gewichtungsanteil 310, sowie einen
positiven Gewichtungsanteil 308 auf. 8 weist
eine Breite von 11 Zeitschlitzen auf.
-
Die
Breite des Entkopplungsfaltungsfenster wird vorzugsweise experimentell
für jeden
einzelnen Batch-Prozess
bestimmt. Die Werte der Gewichtungsanteile aus 8 werden
ebenfalls vorzugsweise experimentell für jeden einzelnen Batch-Prozess
bestimmt. In einer bevorzugten Ausführungsform wird das Abweichungsgewichtungsfaktor-Fenster 300 für einen
Batch ermittelt, und ist für
jede zeitliche Region des Batch gleich. Insbesondere bleibt, während die
Abweichungs-, Ausgabe- und gewünschten
Temperaturwerte sich in jedem Gleitfenster verändern, während das Fenster über die
Dauer der Batch-Periode gleitet, die Werte des Abweichungsgewichtungsfaktor-Fensters
vorzugsweise für
den gesamten Batch konstant. In einer Ausführungsform werden die Werte
in dem Abweichungsgewichtungsfaktor-Fenster zunächst mit Prozessstörungen bestimmt,
und werden im Folgenden entweder unverändert gelassen oder anhand
von Prozessinformation leicht verändert, die aus fortlaufenden
Messungen des Prozesses ermittelt wurde.
-
9 zeigt
ein Ausgabegewichtungsfaktor-Fenster oder Glättungsfaltungsfenster 320,
das als eine Gegenüberstellung
des Gewichtungsfaktors und der Zeitschlitznummer dargestellt ist.
Das Ausgabegewichtungsfaktor-Fenster 320 beinhaltet
einen zentralen Schlitz [0] 322, einen Vorderkantenschlitz
[5] 324, und einen Hinterkantenschlitz [–5] 326.
Es kann eine zentrale positive Gewichtungsregion 330 beobachtet
werden, sowie eine negative Gewichtungsregion 332. In einer
bevorzugten Ausführungsform
werden die Breite und die Werte für das Ausgabegewichtungsfaktor-Fenster 320 experimentell
bestimmt und bleiben über
die Länge
eines jeweiligen Batch-Ablaufs gleich. Die Breite und die Werte
können
bestimmt werden, indem eine ansonsten normale Ausgabe mit Schrittänderungen,
Impulsänderungen
oder kleineren Erregungen überlagert
wird, wobei die Prozessantwort analysiert wird, um die Bestückung des
Glättungsfaltungsfensters
zu erzeugen.
-
Die
vorliegende Erfindung lässt
sich unter Bezugnahme auf ein Beispiel weiter verdeutlichen. In
diesem Beispiel wird die gemessene Temperatur des aktuellen Batch-Ablaufs
in einem Speicher für
die gemessene Temperaturhistorie gespeichert, und die Ausgabe zum
Steuern des Batch-Ablaufs wird in einem Ausgabehistoriespeicher
gespeichert. Um das Ausgabeprofil für den nächsten Batch-Ablauf zu erzeugen,
wird das gewünschte
Temperaturprofil benutzt, um eine Abweichungs- oder Fehlerhistorie
zu erzeugen, indem das gewünschte
Temperaturprofil mit der gemessenen Temperatur verglichen wird.
Jeder Ausgabezeitschlitz für
den nächsten
Batch-Ablauf kann
erzeugt werden, wie unten in den Schritten (a) bis (c) beschrieben.
- (a) Für
jeden Zeitschlitz innerhalb der Breite des Glättungsfaltungsfensters und
des historischen Ausgabe-Gleitfensters
ist der Ausgabegewichtungsfaktor, der diesem Zeitschlitz entspricht,
mit der Ausgabe für diesen
Zeitschlitz zu multiplizieren, und die Summe der Produkte für alle Zeitschlitze
in dem Glättungsfal tungsfenster
zu addieren, um ein Glättungsinkrement
oder eine Aktualisierung 206 für diesen Zeitschlitz im nächsten Batch-Ablauf
zu erhalten;
- (b) Für
jeden Zeitschlitz innerhalb der Breite des Entkopplungsfaltungsfensters
und des historischen Abweichungs-Gleitfensters ist der Abweichungsgewichtungsfaktor,
der diesem Zeitfenster entspricht, mit der Abweichung für diesen
Zeitschlitz zu multiplizieren, und die Summe der Produkte für alle Zeitschlitze
in dem Entkopplungsfaltungsfenster zu addieren, um ein Entkopplungsinkrement
oder eine Aktualisierung 251 für diesen Zeitschlitz im nächsten Batch-Ablauf
zu erhalten;
- (c) Für
denselben Zeitschlitz wie in den Schritten (a) und (b) sind Glättungsinkrement
oder Aktualisierung 206 und Entkopplungsinkrement oder
Aktualisierung 251 zu addieren, und das Ergebnis dem Ausgabewert des
aktuellen Zeitfensters von dem vorhergehenden Batch hinzuzuaddieren,
um eine Ausgabe zu erhalten, die für den Zeitschlitz im nächsten Batch-Ablauf
zu benutzen ist.
-
In
einer Variation dieses Beispiels wird die gemessene Temperatur des
aktuellen Batch-Ablaufs sofort mit der gewünschten Temperatur des aktuellen
Zeitschlitzes verglichen, und eine aktuelle Abweichungstemperatur
wird berechnet. Die aktuelle Abweichungstemperatur kann in einer
Abweichungstemperaturhistorie gespeichert werden, anstatt die gemessene
Temperaturhistorie zu speichern. Auf diese Weise kann das gewünschte Temperaturprofil
in die Berechnungen zum Zeitpunkt der Abweichungs- oder Fehlerberechnung
einfließen,
was entweder vor oder nach der Durchführung der historischen Speicherung
erfolgen kann.
-
Bezug
nehmend auf 10 ist eine schematische Ansicht
einer Anlage 501 und eines Computers oder einer Steuerung 504 gezeigt.
Anlage 501 beinhaltet einen Batch- Prozess 500, und empfängt eine
lokale Steuerungsausgabe 506, die von einer lokalen Steuerung 508 in
Reaktion auf einen Sollwert erzeugt wird, der durch eine Sollwertübertragungsleitung 510 empfangen
wird. Die Sollwertübertragungsleitung 510 kann
an die Ausgabeübertragungsleitung
oder eine Überwachungsausgabeleitung 511 der
vorliegenden Erfindung gekoppelt sein. Ein Messwert 508 kann
von dem Prozess 500 abgelesen werden, und wird in einer
Ausführungsform von
der lokalen Steuerung 508 als ein Rückkopplungssignal benutzt.
In der gezeigten Ausführungsform
wird der Messwert 508 auch von der Steuerung oder dem Computer 504 durch
eine Messdatenübertragungsleitung 551 gelesen
werden.
-
Computer 504 kann
ein geeigneter allgemein verwendbarer Computer oder eine dedizierte
Rechenvorrichtung sein, der oder die dazu in der Lage ist, die benötigten Berechnungen,
Eingaben, Ausgaben und Ausführungen
von Programmen durchzuführen,
welche die hier beschriebenen Verfahren verkörpern. In einer Ausführungsform
wird ein allgemein verwendbarer Computer benutzt. In einer anderen
Ausführungsform
wird eine dedizierte, an der Anlage montierte oder darin eingebettete
Mikroprozessor-Vorrichtung als Computer 504 benutzt. Der
Computer 504 kann einen Rechen- und Steuerabschnitt 514 aufweisen,
der mit einem Messwert/Abweichungswertabschnitt 520, einer
Ausgabespeicherregion 522, einer Wunschwertprofilregion 524, und
einem Abschnitt eines erzeugten neuen Ausgabeprofils 526 kommuniziert.
Computer 504 kann auch einen Abschnitt eines Nutzer-E/A 530 und
einen Abschnitt eines Datenspeichers 531 enthalten. Wie
zuvor erörtert, können in
einer Ausführungsform
der Erfindung Abweichungen oder Fehler direkt historisch aufgezeichnet werden,
oder indirekt als die gemessenen Werte aufgezeichnet werden, wobei
die Abweichungen später
durch Vergleich mit den gewünschten
Werten berechnet werden. In der gezeigten Ausführungsform weist der Computer 504 einen
Glättungsfaltungsfenster-Abschnitt 521 und
einen Entkopplungsfaltungsfenster- Abschnitt 523 auf.
-
In
einem Beispiel der vorliegenden Erfindung wird ein Wunschwertprofil
von Steuerabschnitt 514 in Reaktion auf eine Eingabe durch
einen Mensch oder eine Maschine an 530 eingegeben. In einer
Ausführungsform
beinhaltet das Wunschwertprofil 524 Temperaturen einschließlich der
gewünschten
Temperatur-Anlauf- und Auslaufabschnitte für einen Wärmeprozess. In einer bevorzugten
Ausführungsform
bleibt das Wunschwertprofil 524 für jeden Ablauf eines Batch-Prozesses
unverändert.
In einem Beispiel der vorliegenden Erfindung gelangt der Messwert 508 über Übertragungsleitung 551 in
den Computer 504, und wird mit dem aktuellen Wunschwert
verglichen, und wird von Computer 504 im historischen Abweichungs/Messwertabschnitt 520 als
eine Abweichung oder ein Fehler für den aktuell aktiven Ablauf
gespeichert. Ebenso wird die aktuelle Ausgabe, die von Computer 504 erzeugt
wird, nämlich
Ausgabe 534, der historischen Ausgaberegion 522 für den aktuell
ausführenden
Batch-Ablauf zugeführt.
-
Nach
Abschluss des aktuellen Ablaufs, oder bei Abschluss eines ausreichenden
Teils des vorliegenden Ablaufs, kann Rechenabschnitt 514 unter
Benutzung von Entkopplungsfaltungsfenster 523 mit den historischen
Abweichungs/Messdaten 520, und unter Benutzung von Glättungsfaltungsfenster 521 mit
den historischen Ausgabedaten 522 arbeiten, um einen Speicherabschnitt
für eine
neue Ausgabe 526 für
jeden der geeigneten Zeitschlitze zu bestücken. Nach Abschluss der Bestückung der
Speicherregion für
die neue Ausgabe 526 kann die Ausgabespeicherregion benutzt
werden, um über Übertragungsleitung 510 einen
Sollwert an Anlage 501 zu erzeugen. In dem dargestellten
Beispiel ist dargestellt, dass der Zeitschlitz 534 eine
Ausgabe an Übertragungsleitung 511 bereitstellt,
und einen Sollwert durch Übertragungsleitung 510 treibt.
Während
der Ausgabewert in Zeitschlitz 534 den Sollwert treibt, werden
neue historische Abweichungs- und Ausgabewerte aufgezeichnet, um
die Ausgaben für
den nachfolgenden Batch-Ablauf zu erzeugen.
-
Wie
durch Betrachtung von 10 deutlich wird, liegt, während die
Batch-Erwärmungssteuerung
von der vorliegenden Erfindung profitieren würde, keine Beschränkung der
Benutzung der vorliegenden Erfindung auf einen bestimmten Batch-Prozess
vor. Insbesondere geht aus der Betrachtung von 10 hervor,
dass der Computer 504 die physikalische Natur des gesteuerten
Prozesses ignorieren kann, und mit skalierten Einheiten arbeiten
kann, die keinen Zugriff auf Maschineneinheiten besitzen. Insbesondere
können
der Sollwert an Übertragungsleitung 510,
der Ausgabewert an Ausgabeleitung 511, und der Messwert
an Messleitung 551 Maschineneinheiten oder keine Maschineneinheiten
für jeden
gemessenen physikalischen Wert aufweisen. In einem Beispiel können der
Sollwert, der Ausgabewert und der Messwert skalierte Werte sein,
beispielsweise 4 bis 20 Milliampere, oder ein zufälliger Prozentanteil
von Originalgrößenwerten.
-
11 zeigt
ein Ablaufdiagramm für
ein Verfahren 550, das benutzt werden kann, um einen Batch-Prozess
zu steuern. In Schritt 552 werden das Glättungs-
und das Entkopplungsfaltungsfenster bereitgestellt, beispielsweise
entweder experimentell oder durch Prozessmodellierung. Das gewünschte Prozesswertprofil
oder Rezept wird in Schritt 554 bereitgestellt. Die Abweichungshistorie
kann in Schritt 556 auf null initialisiert werden, und
die vorhergehende Ausgabehistorie kann als gleich dem Wunschwertprofil
initialisiert werden.
-
Der
erste Batch kann an Schritt 560 ausgeführt werden, unter Benutzung
des Ausgabeprofils, das zuvor als das Wunschwertprofil initialisiert
wurde. In dem ersten Batch liegt kein Einfluss von einer vorhergehenden
Ausgabe oder Abweichungshistorie vor. Die Ausgabehistorie und die
Abweichungshistorie des aktuellen Batch können in Schritt 562 aufgezeichnet
werden. Nach Abschluss des Batch-Ablaufs, oder nachdem ein ausreichender
Teil des ersten Batch-Ablaufs abgeschlossen wurde, kann in Schritt 564 unter
Benutzung der Faltungsfenster, der Abweichungshistorie und der Ausgabehistorie
ein neues Ausgabeprofil erzeugt werden. In Schritt 560 kann
unter Benutzung der neuen Ausgaben ein neuer Batch ausgeführt werden.
-
12 zeigt
ein Ablaufdiagramm der höheren
Ebene eines Verfahrens 580 zum Ermitteln von Werten zur
Bestückung
des Glättungs-
und des Entkopplungsfaltungsfensters. In Schritt 582 wird
dem Prozess ein Impuls oder eine Schrittausgabe zugeführt, wobei
die Prozessreaktionsdaten in Schritt 584 gesammelt werden. Die
Breite und die geeigneten Werte für das Glättungsfaltungsfenster können in
Schritt 586 bestimmt werden. Die Breite und die geeigneten
Werte für
das Entkopplungsfaltungsfenster können in Schritt 588 bestimmt
werden.
-
Wie
oben erörtert,
können
die Breite der Gleitfenster und die Form der Abweichungs- oder Entkopplungsfaltungsfenster-Gewichtungsfaktoren
und der Ausgabe- oder Glättungsfaltungsfenster-Gewichtungsfaktoren
für einen
jeweiligen Batch-Prozess experimentell bestimmt werden. Die Prozesscharakteristika,
die zum Bestücken
des Abweichungsgewichtungsfaktor-Fensters und des Ausgabegewichtungsfaktor-Fensters
benötigt
werden, können
experimentell bestimmt werden. Die Einstellungsberechnungen zum
Bestücken
der Fenster und zum Bestimmen der Fensterbreite können ein
gemitteltes FIR-(Finite Impulse Response – endliche Impulsantwort)-Modell
des Prozessimpulses oder der Schrittantwort benutzen, sowie ein
Unsicherheitsmodell für diese
Antwort.
-
Das
Berechnen der iterativen Aktualisierungssteuerfenster-Folgen kann
gemäß einem
der veröffentlichten
Verfahren erfolgen, wie beispielsweise von D. Gorinevsky in „Distributed
System Loop Shaping Design of Iterative Control or Batch Processes", Proc. of IEEE Conference
on Decision and Control, Seiten 203 bis 208, Phoenix, AZ, Dezember
1999 erörtert,
was hiermit durch Querverweis zitiert wird. Das Modell für eine gemittelte
Impulsprozess-Impulsantwort kann aus einem verfügbaren Hauptsatz-Prozessmodell
oder als Ergebnis einer experimentellen Identifizierung eines Prozesses
ermittelt werden. Das erforderliche Unsicherheitsmodell kann aufgrund
der zugrunde liegenden Prozess-Nichtlinearität eine Variation der Prozessimpulsantwortform
für den
Batch-Ablauf beschreiben. Das Unsicherheitsmodell kann zusammen
mit dem Prozessantwortmodell automatisch bestimmt werden. Alternativ
kann ein Nutzer den Modellunsicherheitsgrad als einen Einstellungsparameter
bereitstellen. Dieser Einstellungsparameter definiert in praktischer
Weise den grundsätzlichen
Kompromiss zwischen Steuerung oder Leistung und Robustheit oder
Steuerenergie im Restfehler im dem aufgegebenen Ansatz der Steuerungsaktualisierung
mit iterativer Aktualisierung.
-
In
den meisten Fällen
wird eine experimentelle Ermittlung im Prozess benutzt. Ein Modell
der gemittelten Impuls- oder Sollantwort des Prozesses kann erzielt
werden, indem ein Batch-Ablauf gebildet wird, wobei dem Sollwert
oder dem gewünschten
Temperaturprofil eine spezielle Erregungssequenz hinzugefügt wird. Indem
die Daten während
des Identifizierungsexperiments gesammelt werden und mit Grundliniendaten
verglichen werden, die ohne Erregungssequenz gesammelt wurden, und
indem eine Signalverarbeitung wie z.B. die Methode der kleinsten
Quadrate durchgeführt
wird, kann die Sollantwort aus den Daten ermittelt werden.
-
Ein
FIR-Modell der Schritt- oder Impulsantwort kann unter Benutzung
eines Verfahrens der kleinsten Quadrate und Algorithmen, die Fachleuten
gut bekannt sind, aus den gesammelten Daten ermittelt werden. In einer
Ausführungsform
werden ein erster Batch-Ablauf und eine Schritt- oder Impulsprüfung durchgeführt, um die
notwendige Prozessdynamik zu ermitteln. Die gesammelten Daten können benutzt
werden, um die empfohlene Gleitfensterlänge und -form des Entkopplungsfaltungsfensters
(Abweichungsgewichtungsfaktor-Fensters) und des Glättungsfaltungsfensters
(Ausgabegewichtungsfaktor-Fensters) zu erzeugen, wie in der Arbeit von
Gorinevsky erörtert,
die zuvor durch Querverweis zitiert wurde.
-
Wie
in Bezug auf 1B erörtert, kann die vorliegende
Erfindung mit MIMO-(Multiple Input Multiple Output)-Prozessen sowie mit
SISO-(Single Input Single Output)-Prozessen benutzt werden. Eine vorteilhafte Nutzungsweise
der vorliegenden Erfindung ist die Wärmeschnellverarbeitung von
Material, beispielsweise von Halbleitermaterial in Wärmekammern.
Die Kammern weisen eine Vielzahl von Wärmelampen und Temperatursensoren
auf. Die Temperatursensoren und Wärmevorrichtungen können in
Kanälen
gruppiert sein, wobei die Sensorausgaben gemittelt werden können, und
die Heizvorrichtungen in Gruppen gesteuert werden können.
-
Die
vorliegende Erfindung soll nun mathematisch unter Bezugnahme auf
einzelne und mehrere Kanäle
erörtert
werden. Dabei soll „k" für die Batch-Ablaufnummer
des vorhergehenden Batch-Ablaufs stehen, und „k + 1" die Batch-Nummer des aktuellen Batch-Ablaufs
sein. Unter Bezugnahme auf
1A kann
eine Ausgabe
40 als u bezeichnet werden, und soll im Folgenden
als u(t|k + 1) für
die Ausgabe in einem jeweiligen Zeitschlitz „t" in dem aktuellen Batch „k + 1" erörtert werden.
u(t|k) ist die Ausgabe von dem vorhergehenden Batch-Ablauf in Zeitschlitz „t". M soll die Breite
der Faltungsfenster sein, wobei die Variable „j" für
die Iteration durch die Zeitschlitze der Faltungsfenster benutzt
wird. Die Variablen „+n" und „–m" stellen den Abschnitt
des Faltungsfensters dar, der sich zeitlich von der aktuellen Zeit „t" jeweils in positive
bzw. negative Richtung erstreckt. Das kleine e(t – j|k) stellt
den Abweichungs- oder
Fehlerausdruck dar, der dem „j"-ten Zeitschlitz
in Bezug auf den aktuellen Zeitpunkt „t" in dem vorhergehenden Batch-Ablauf „k" entspricht. D(j)
stellt das Entkopplungsfaltungsfenster oder das Fenster dar, das
die Gewichtungsfaktoren für
die Abweichungs- oder Fehlerausdrücke enthält. S(j) ist das Glättungsfaltungsfenster
oder Ausgabegewichtungsfaktor-Fenster. Die unten stehenden Gleichungen
können
auch in Vektor- oder Arrayschreibweise betrachtet werden, um als
Vektoren oder Arrays in die benannten Variablen indiziert zu werden.
Die Ausgabe u(t|k + 1) in einem jeweiligen Zeitschlitz „t" kann wie folgt ausgedrückt werden:
-
Es
ist zu beachten, dass „j" durch die Fenster
e(t – j)
und u(t – j)
iterieren kann, wobei die Fenster Verschiebungen aufweisen, um die
entsprechenden Positionen in den entsprechenden historischen Speicherungsbereichen
anzuzeigen.
-
Wenn
eine Vielzahl von Zonen oder Kanälen
benutzt wird, die jeweils durch „y" dargestellt werden, kann die Ausgabe
u
y(t|k + 1) eines jeweiligen Zeitschlitzes „t" wie folgt ausgedrückt werden:
-
Nachdem
so die bevorzugten Ausführungsformen
der vorliegenden Erfindung beschrieben wurden, werden Fachleute
leicht verstehen, dass die hierin enthaltenen Lehren innerhalb des
Umfangs der beiliegenden Ansprüche
auch auf weitere Ausführungsformen
angewandt werden können.