-
Die vorliegende Erfindung betrifft allgemein die Anwendung von Vorhersagemodellen in Prozeßsteuerungssystemen und speziell die adaptive Einstellung des Ausgangs eines Vorhersagemodells unter Nutzung von Messungen von Prozeßparametern.
-
In vielen Bereichen der Prozeßsteuerungsindustrie ist es üblich, daß ein kritischer Parameter wie etwa die Zusammensetzung eines Flüssigkeits- oder Gasstroms schwer zu messen ist oder nur unter Anwendung von Offline-Verfahren gemessen werden kann. Häufig werden solche Parameter durch eine Offline-Laboranalyse oder durch die Anwendung eines Online-Analysators gewonnen, der entweder nur schwer auf kontinuierlicher Basis gehalten werden kann oder unzuverlässig ist. Wenn aus irgendeinem Grund wie etwa zur Durchführung der Prozeßsteuerung eine Schätzung des kritischen Parameters benötigt wird, wird bisher irgendeines einer Reihe von mathematischen Verfahren angewandt, um ein Prozeßmodell zu erstellen, das den schwer meßbaren Prozeßparameter auf der Basis von Prozeßeingängen oder Parametern vorhersagt, die während des laufenden Prozesses leicht zu messen oder zu gewinnen sind.
-
Insbesondere ist es allgemein bekannt, eines oder mehrere-Vorhersagemodelle wie etwa ein nichtparametrisches Modell (z. B. Neuronennetz-Modelle), ein natürliches Modell (z. B. Modelle des ersten Prinzips) bzw. first principle models oder ein parametrisches Modell (durch Regressionstechniken erhalten) in Prozeßsteuerungssystemen anzuwenden, um Prozeßparameter zu schätzen. Ein Gebrauch eines Vorhersagemodells ist als ein virtueller Sensor, der dazu dienen kann, den Ausgang eines fiktiven Sensors an irgendeiner Stelle innerhalb eines Prozeßsteuerungssystems zu schätzen oder vorherzusagen. Wie oben angedeutet, wird ein virtueller Sensor typischerweise dann verwendet, wenn es schwierig oder unmöglich ist, einen echten Sensor an dem gewünschten Prozeßort anzuordnen. Ein virtueller Sensor kann auch dazu verwendet werden, Prozeßparameter vorherzusagen, für die keine realen Sensoren vorhanden sind, beispielsweise zur Messung von Parametern wie Geruch oder Geschmack, die eine Beurteilung seitens einer Bedienungsperson zu ihrer Bestimmung erfordern. Eine weitere Anwendung eines Vorhersagemodells ist als Kreuzanalysator, um den ordnungsgemäßen Betrieb eines Sensors innerhalb eines Prozesses zu überprüfen. Wenn beispielsweise der Kreuzanalysator und der Sensor hinreichend verschiedene Messungen erzeugen, kann dies ein Anzeichen dafür sein, daß der Sensor auf irgendeine Weise nicht ordnungsgemäß arbeitet.
-
Es ist bekannt, daß Neuronennetz-Vorhersagemodelle aus Mengen von Lerndaten aufgebaut werden, wobei jede Lerndatenmenge einen Wert für jeden einer Reihe von Prozeßeingängen/-ausgängen (die Eingänge für das Modell sind) hat und ein Wert des Prozeßparameters vorhergesagt oder geschätzt wird. Nach Entwicklung aus den Lerndaten wird das Neuronennetz-Modell dann innerhalb der Umgebung des Prozeßsteuerungssystems eingesetzt, um den Prozeßparameter vorherzusagen, selbst wenn ein realer Sensor während des laufenden Prozesses keine oder nur begrenzte Messungen des Parameters vornimmt. Natürliche Modelle oder Modelle nach dem ersten Prinzip verwenden typischerweise eine oder mehrere mathematische Gleichungen, um das Verhalten der vorherzusagenden Phänomene im Modell darzustellen.
-
Vorhersagemodelle, die zur Vorhersage des Werts einer Prozeßsteuergröße verwendet werden, unterliegen verschiedenen Fehlerarten wie etwa systematischen Fehlern, Driftfehlern, nichtlinearen Fehlern usw. Systematische Fehler sind solche, bei denen der Ausgang des Modells in bezug auf den Wert des tatsächlichen vorherzusagenden Prozeßparameters eine systematische Abweichung hat. Systematische Abweichungen können mathematisch in Form von y = x + B dargestellt werden, wobei y der vorhergesagte oder im Modell dargestellte Prozeßparameterwert ist, x der tatsächliche Prozeßparameterwert ist und B die systematische Abweichung ist. Driftfehler sind Fehler, die linear oder zu dem Wert des im Modell dargestellten Prozeßparameters proportional sind, und können in Form von y = Ax dargestellt werden, wobei A der Driftfehler-Multiplikator ist. Nichtlineare Fehler sind solche, die in bezug auf den tatsächlichen Prozeßparameter nichtlinear sind, und können mathematisch in Form von y = f(x) dargestellt werden, was bedeutet, daß der Vorhersagewert y eine nichtlineare Funktion des tatsächlichen Werts x ist. Nichtlineare Fehler treten aus vielen Gründen auf, resultieren jedoch häufig daraus, daß das Vorhersagemodell unbeabsichtigt so erstellt ist, daß es irgendeine nichtlineare Fehlerkomponente aufweist. Beispielsweise enthält ein natürliches Modell vielleicht keine Effekte höherer Ordnung (zweiter, dritter usw. Ordnung) der im Modell darzustellenden Phänomene, ein Neuronennetz kann aus einer unvollständigen oder unzureichenden Menge von Lerndaten erstellt sein usw., was dazu führt, daß der Ausgang des Modells eine nichtlineare Fehlerkomponente hat. Abgesehen von Unzulänglichkeiten in dem Modell können diese Fehler auch durch Änderungen der Prozeßeinrichtungen oder durch nicht gemessene Prozeßeingänge wie etwa die Zusammensetzung des Einsatzmaterials, die sich direkt auf den Prozeßausgang auswirken, hervorgerufen sein. Da nicht gemessene Prozeßeingänge und Änderungen des Prozeßablaufs innerhalb der Prozeßsteuerungsindustrie üblich sind, hat die Anwendung von Neuronennetzen, Modellen nach dem ersten Prinzip oder anderen allgemein verfügbaren Vorhersagemodellen nur begrenzten industriellen Erfolg bei der Bereitstellung einer zuverlässigen Vorhersage von kritischen Prozeßausgängen.
-
In der Vergangenheit bestand die einzige Möglichkeit einer Korrektur von linearen oder nichtlinearen Fehlern, die durch eine Nichtübereinstimmung zwischen dem entwickelten Modell und dem eigentlichen Prozeß hervorgerufen waren, in einer Überarbeitung des Modells unter Verwendung anderer oder genauerer Gleichungen, Anwendung einer anderen oder vollständigeren Lerndatenmenge usw. Der Vorgang des Neuerstellens oder Überarbeitens eines Vorhersagemodells ist zeitraubend, verlangt gewöhnlich einen Experten, kann enorme Mengen an Verarbeitungsenergie und -zeit erfordern und typischerweise nicht während des Echtzeit-Prozeßbetriebs durchgeführt werden. Ferner gibt es keine Garantie, daß die Vorhersage des neu entwickelten Vorhersagemodells fehlerfrei ist. Anstatt einer adaptiven Korrektur des Ausgangs eines Vorhersagemodells, die beispielsweise in einem Prozeßsteuerungssystem angewandt wird, wird die Vorhersagefähigkeit eines Vorhersagemodells bisher periodisch überprüft, indem tatsächliche Messungen des vorhergesagten Prozeßparameters verwendet und diese Messungen mit dem Ausgang des Vorhersagemodells verglichen werden. Einer oder mehrere solche Vergleichsvorgänge wurden typischerweise verwendet, um festzustellen, ob die Modellvorhersage Fehler aufwies.
-
Die Vergleichsschritte wurden jedoch nicht dazu genutzt, das Modell anzupassen. Statt dessen wurden diese Vergleiche dazu genutzt festzustellen, ob das Modell einen Ausgang erzeugt, der tolerierbar ist, und wenn das nicht der Fall war, das Modell unter Anwendung herkömmlicher Modellerstellungstechniken neu zu bilden.
-
Aus der
US 5 659 667 A ist ein Prozeßsteuerungssystem bekannt, das dazu ausgebildet ist, in einem Kraftwerk laufende Prozesse zu steuern. Hierbei wird der Prozeß mittels eines Modells modelliert, so dass Ausgabewerte vorhergesagt werden können. Die Modellierung des Prozesses wird regelmäßig dazu verwendet, Prozeßausgänge vorherzusagen und diese mit tatsächlichen Ausgängen zu vergleichen. Vorzugsweise wird hierbei der vorhergesagte Prozeßausgang um einen Zyklus verzögert. Anhand des Vergleichs des verzögert, vorhergesagten Prozeßausgangs mit dem tatsächlichen Prozeßausgang wird die Qualität des Modells beurteilt und in jedem Zyklus neu überarbeitet.
-
Aus der
US 4,054,780 ist ebenfalls eine Prozeßsteuerung bekannt, die eine Steuereinheit umfasst, die Ausgänge der Steuereinheit, die Eingänge für den Prozeß darstellen, werden dazu verwendet, um Ausgänge des Prozesses vorherzusagen. In der
US 4,054,780 findet zwar eine Kompensation der Reaktionszeit des Prozesses statt. Die tatsächlichen Werte der Ausgänge werden aber beim Vergleich mit den vorhergesagten Werten nicht berücksichtigt.
-
Ausgehend von diesem Stand der Technik ist es Aufgabe der vorliegenden Anmeldung, ein adaptives Vorhersagemodell zur Anwendung bei der Schätzung eines Prozeßparameters eines Prozesses bereitzustellen, das effizient an Veränderungen angepasst werden kann.
-
Diese Aufgabe wird durch den Gegenstand gemäß Anspruch 1, das Verfahren gemäß Anspruch 13 und das Computerprogrammprodukt gemäß Anspruch 15 gelöst.
-
Die vorliegende Erfindung richtet sich auf die adaptive Modifikation oder Einstellung des Ausgangs eines typischen Vorhersagemodells wie etwa eines Neuronennetz-Modells oder eines natürlichen Modells unter Nutzung von tatsächlichen Prozeßmessungen, um dadurch nichtlineare sowie lineare Fehler zu verringern oder zu korrigieren, ohne daß das Vorhersagemodell selber neu gebildet werden muß. Ein solches adaptives Vorhersagemodell kann innerhalb eines Prozesses auf kontinuierlicher Basis während des Betriebs eines Prozeßsteuerungssystems mit im Vergleich zu Standard-Vorhersage-modellen nur kleineren Zunahmen bei der Verarbeitung leicht implementiert werden. Allgemein gesagt verwendet das adaptive Vorhersagemodell gemessene Prozeßeingänge in Verbindung mit Messungen von Prozeßparametern, die beispielsweise von einer Laborprobe oder einem Analysator gewonnen sind, auf einer kontinuierlichen, einer periodischen oder sogar einer unregelmäßigen oder nichtperiodischen Basis, um den Ausgang eines Standard-Vorhersagemodells anzupassen. Bei Anwendung dieses Rückführungsmechanismus kann der vorhergesagte Wert des Prozeßparameters automatisch angepaßt werden, um nichtgemessene Störungen und Änderungen im Prozeßablauf auszugleichen.
-
Gemäß einem Aspekt der vorliegenden Erfindung weist ein adaptives Vorhersagemodell zur Verwendung bei der Schätzung eines Prozeßparameters folgendes auf: ein Vorhersagemodell, das so konfiguriert ist, daß es einen oder mehrere Modelleingänge empfängt und einen Vorhersagewert des Prozeßparameters auf der Basis des einen oder der mehreren Modelleingänge erzeugt, und einen Meßeingang, der zum Empfang einer Messung des Prozeßparameters ausgebildet ist. Das adaptive Vorhersagemodell weist ferner ein Kombinationsnetz auf, das mit dem Meßeingang gekoppelt ist, um die Prozeßparametermessung zu empfangen, und mit dem Vorhersagemodell gekoppelt ist, um den Vorhersagewert des Prozeßparameters zu empfangen. Das Kombinationsnetz kombiniert die Prozeßparametermessung mit dem Vorhersagewert des Prozeßparameters, um einen eingestellten bzw. angepassten Vorhersagewert des Prozeßparameters zu erzeugen.
-
Das Kombinationsnetz kann einen Korrekturblock, der einen Korrekturfaktor bestimmt, und ein Summierglied aufweisen, das den Korrekturfaktor mit dem Vorhersagewert des Prozeßparameters addiert und den angepassten Vorhersagewert des Prozeßparameters erzeugt. Der Korrekturfaktor kann von einem Korrekturblock erzeugt werden, der eine Verzögerungseinheit aufweist, die mit dem Vorhersagemodell gekoppelt ist, um den Vorhersagewert des Prozeßparameters beispielsweise um eine Proben- bzw. Stichprobenverzögerung zu verzögern, um ihn mit der aktuellen Prozeßparametermessung zeitlich koinzident zu machen. Das Ergebnis des Vergleichs kann verarbeitet und gefiltert werden, um den Korrekturfaktor zu erzeugen, der mit dem aktuellen Ausgang des Vorhersagemodells addiert wird, um einen angepassten Wert für den aktuellen Zeitpunkt zu erzeugen. Derselbe Korrekturfaktor kann beibehalten und mit anschließenden Ausgängen des Vorhersagemodells addiert werden, bis eine neue Prozeßparametermessung verfügbar ist.
-
Bei einer anderen Ausführungsform weist das Kombinationsnetz folgendes auf: eine Verzögerungseinheit, die so gekoppelt ist, daß sie den Vorhersagewert des Prozeßparameters verzögert, eine Multiplikationseinheit, die den verzögerten Vorhersagewert des Prozeßparameters und die Prozeßparametermessung mit regressiven Fehlerquadrat-Koeffizienten multipliziert, und ein Summierglied, das den multiplizierten Vorhersagewert des Prozeßparameters und die multiplizierte Prozeßparametermessung addiert, um den angepassten Vorhersagewert des Prozeßparameters zu erzeugen.
-
Weitere vorteilhafte Ausführungsformen ergeben sich anhand der Unteransprüche.
-
1 ist ein Blockbild eines adaptiven Vorhersagemodells, das mit einem Prozeß gekoppelt ist;
-
2 ist ein detailliertes Blockbild eines adaptiven Vorhersagemodells, das eine erste Ausführungsform eines Kombinationsnetzes hat und mit einem Prozeß gekoppelt ist;
-
3 ist ein detailliertes Blockbild eines adaptiven Vorhersagemodells, das eine zweite Ausführungsform eines Kombinationsnetzes hat und mit einem Prozeß gekoppelt ist;
-
4 ist ein detailliertes Blockbild eines adaptiven Vorhersagemodells, das eine dritte Ausführungsform eines Kombinationsnetzes hat und mit einem Prozeß gekoppelt ist; und
-
5 ist ein Blockbild eines Prozeßsteuerungsnetzes, in dem eines oder mehrere der adaptiven Vorhersagemodelle der 1 bis 3 vorgesehen sind.
-
Gemäß 1 ist ein adaptives Vorhersagemodell 10 mit einem Prozeß 12 gekoppelt, der jede gewünschte Art von Prozeß sein kann, was beispielsweise einen kontinuierlichen Prozeß oder einen diskontinuierlichen Prozeß einschließt. Das adaptive Vorhersagemodell 10 weist ein typisches oder bekanntes Vorhersagemodell 14 auf, dessen Ausgang y mit einem Kombinationsnetz 16 gekoppelt ist. Das Vorhersagemodell 14 kann beispielsweise ein nichtparametrisches Modell (wie etwa ein Neuronennetz-Modell), ein natürliches Modell (wie etwa ein Modell des ersten Prinzips), ein parametrisches Modell (wie es etwa unter Anwendung von Regressionsverfahren erhalten wird) oder jede andere gewünschte Art von Vorhersagemodell sein. Das Vorhersagemodell 14 hat Eingänge, die kommunikativ mit geeigneten Eingängen und/oder Ausgängen des Prozesses 12 verbunden sind, wie das gewöhnlich bei Vorhersagemodellen der Fall ist. Selbstverständlich kann das Vorhersagemodell 14 auf jede gewünschte oder bekannte Weise ausgebildet sein und kann als Eingänge jeden der Eingänge zum Prozeß 12, jeden der gemessenen Parameter oder Prozeßparameter, die von dem Prozeß 12 erzeugt werden, oder alle anderen Eingänge nutzen, wie es unter den jeweiligen Umständen erwünscht oder erforderlich ist. Der Ausgang y des Vorhersagemodells 14 kann den Wert irgendeines gewünschten Signals, einer Größe, eines Parameters oder eines anderen Phänomens (hier als Prozeßparameter x bezeichnet) innerhalb des Prozesses 12 oder auf diesen bezogen vorhersagen oder schätzen. Beispielsweise kann das Vorhersagemodell 14 also ein virtueller Sensor, ein Kreuzanalysator usw. sein. Wie jedoch oben erörtert wurde, muß der Ausgang y typischerweise in bezug auf nichtlineare Fehler, systematische Fehler, Driftfehler oder eine Kombination derselben in bezug auf den tatsächlichen Prozeßparameter x korrigiert werden.
-
Messungen des Parameters x, die innerhalb des Prozesses 12 erhalten werden können, indem beispielsweise periodische oder nichtperiodische Messungen genutzt werden, wie sie etwa von Netzanalysatoren, Laboranalysatoren, Sensoren oder Einfangprobenanalysatoren oder auf jede andere gewünschte Weise erhalten werden, werden einem Meßeingang des Kombinationsnetzes 16 innerhalb des adaptiven Vorhersagemodells 10 zugeführt. Falls gewünscht, können den Prozeßparameter x messende Analysatoren oder Sensoren periodisch an den Prozeß 12 angeschaltet werden, so daß geeignete Proben des Parameters x erhalten werden, und die Meßwerte des Parameters x können dann dem adaptiven Vorhersagemodell 10 zugeführt werden. Selbstverständlich können die Meßwerte des Parameters x zu jedem Zeitpunkt wie etwa auf einer kontinuierlichen oder periodischen Basis gewonnen und dem adaptiven Vorhersagemodell 10 zugeführt werden. Ebenso können die Meßwerte für den Parameter x zu einem oder mehreren Zeitpunkten während des Ablaufs des Prozesses 12 gebildet werden, brauchen aber nicht unbedingt auf einer kontinuierlichen Basis oder auch einer regelmäßigen periodischen Basis gebildet zu werden. Je mehr Messungen des Parameters x jedoch durchgeführt werden, um so besser funktioniert das adaptive Vorhersagemodell 10. Ferner kann der Meßeingang des Kombinationsnetzes 16 die Meßwerte des Prozeßparameters x empfangen und speichern.
-
Im Betrieb vergleicht das Kombinationsnetz 16 oder kombiniert auf andere Weise den Ausgang y mit dem Meßwert (den Meßwerten) des Prozeßparameters x zum Erzeugen eines angepassten Vorhersagewerts yadj, der ein eingestellter oder korrigierter Wert des Vorhersagesignals y ist. Tatsächlich stellt das Kombinationsnetz 16 den Ausgang y auf der Basis von begrenzten tatsächlichen Messungen des Parameters x, die während des Betriebs des Prozesses 12 durchgeführt werden, adaptiv ein, um das Signal yadj zu erzeugen. Der Ausgang yadj des adaptiven Vorhersagemodells 10 kann auf die gleiche Weise genutzt werden, wie der Ausgang y des typischen oder Standard-Vorhersagemodells 14 bisher genutzt wurde. Daher kann das adaptive Vorhersagemodell 10 anstelle des Vorhersagemodells 14 bei den meisten Anwendungen benutzt werden, und zwar insbesondere bei den Anwendungen, bei denen es möglich ist, Messungen des tatsächlichen Prozeßparameters x zu irgendeinem Zeitpunkt während des Ablaufs des Prozesses 12 durchzuführen.
-
Allgemein gesprochen kann das Kombinationsnetz 16 den Ausgang y des Modells 14 um ’Delay’-Einheiten verzögern (z. B. speichern) und dann den verzögerten oder gespeicherten Wert y mit einem zeitlich koinzidenten Meßwert des Parameters x zu vergleichen, um ein Fehlersignal e zu erzeugen. Das Fehlersignal e kann dann geglättet oder gefiltert und mit dem Wert y auf irgendeine Weise kombiniert werden, um den eingestellten Wert yadj zu bilden. Auf diese Weise kann der Ausgang des Standard-Vorhersagemodells 14 während des Prozeßablaufs mit nur geringem Verarbeitungsaufwand eingestellt werden, um eine genauere Vorhersage zu erzeugen, die geringere Nichtlinearitäts-, systematische und Driftfehler hat, ohne daß das Prozeßmodell 14 neu gebildet werden muß. Ferner kann das Kombinationsnetz 16 während des Ablaufs des Prozesses 12 kontinuierlich wirksam sein, auch wenn der tatsächliche Wert des Prozeßparameters x nur periodisch oder zu verschiedenen regelmäßig festgelegten oder unregelmäßigen Zeiten gemessen wird, um so den Ausgang y des Modells 14 während des Ablaufs des Prozesses 12 kontinuierlich einzustellen.
-
2 zeigt ein Blockbild eines adaptiven Vorhersagemodells 10, wobei die Einzelheiten eines möglichen Kombinationsnetzes 16a mehr im Detail gezeigt sind. In 2 ist das Vorhersagemodell 14 als ein Mitkopplungs-Neuronennetzmodell gezeigt, dessen Eingänge mit Prozeßeingängen gekoppelt sind, was für Mitkopplungs-Neuronennetz-Vorhersagemodelle typisch ist. Ebenso versteht es sich in 2, daß der Prozeßparameter x zu verschiedenen Zeitpunkten von einem Netzanalysator oder irgendeinem anderen Erfassungssensor oder -prozeß gemessen werden kann und daß die Werte des Parameters x einem Meßeingang des adaptiven Vorhersagemodells 10 auf eine gewünschte Weise wie etwa automatisch oder über Bedienereingabe zugeführt und nach Bedarf gespeichert werden. Ferner wird dem adaptiven Vorhersagemodell 10 eine Meldung über den Zeitpunkt, zu dem die Messung durchgeführt wurde, oder auch die Probenverzögerung (als Delay-Variable bezeichnet) zugeführt.
-
Im allgemeinen umfaßt das Kombinationsnetz 16a einen Korrekturblock, der einen Korrekturfaktor bestimmt, und eine Kombinationseinheit, die den Korrekturfaktor mit dem Ausgang y (oder irgendeiner skalierten und/oder verzögerten Version desselben) kombiniert, um den eingestellten Ausgang yadj zu bilden. In 2 wird der Ausgang y des Vorhersagemodells 14 einer Verzögerungseinheit 20 zugeführt, die dieses Signal um eine Verzögerung verzögert, die entsprechend der Verzögerungsvariablen vorgegeben ist, die beispielsweise vom Bediener auf der Basis des Zeitpunkts, zu dem die Messung des Prozeßparameters x erfolgt ist, bestimmt wird oder von der Verzögerungseinheit 20 automatisch bestimmt werden kann. Typischerweise wird der Wert der Verzögerungsvariablen mit der Probenahme- oder Meßverzögerung zwischen dem Ausgang y des Modells 14 und dem Zeitpunkt, zu dem die Messung der Prozeßvariablen x entsprechend dieser Probe dem adaptiven Vorhersagemodell 10 zugeführt wird, vorgegeben. Um genau zu sein, ist daher der Ausgang des Modells 14 y(t), während der Ausgang der Verzögerungseinheit 20 y(t-Delay) ist. Es versteht sich, daß die Verzögerungseinheit 20 jede gewünschte Art von Verzögerungseinheit sein kann, beispielsweise eine Verzögerungsleitung oder ein Speicher, der Digitalwerte des Ausgangs y für verschiedene Zeitpunkte speichert.
-
Der Ausgang y(t) der Verzögerungseinheit 20 wird einem negativen (invertierenden) Eingang eines Summierglieds 22 zugeführt, wo er von dem gemessenen Prozeßparameter x(t) subtrahiert wird. Das Summierglied 22 erzeugt ein Fehlersignal e(t), das ein Korrekturfaktor ist, der die Differenz zwischen dem tatsächlichen Wert des Prozeßparameters x zum Zeitpunkt t und dem Vorhersagewert dieses Parameters, der von dem Modell 14 für den Zeitpunkt t erzeugt wurde, ist. In diesem Fall kann also das Ausgangssignal des Summierglieds 22 als e(t) = x(t) – y(t-Delay) geschrieben werden.
-
Danach wird das Fehlersignal e(t) einem Grenzwertdetektor 24 mit einer oberen und einer unteren Grenze zugeführt, die verhindern, daß der Fehler abnormal große oder kleine Werte annimmt. Solche Situationen können auftreten, wenn der Prozeßmeßwert x fehlerverdächtig ist oder wenn der Vorhersagewert y des Modells fehlerverdächtig ist. Der Prozeßmeßwert könnte fehlerverdächtig sein, wenn der zur Bestimmung des Werts benutzte Sensor fehlerhaft ist oder ein menschlicher Fehler bei der Bestimmung des Prozeßmeßwerts x vorliegt. Eine fehlerverdächtige Vorhersage durch das Modell könnte ebenfalls resultieren, wenn die Eingänge zu dem Modell 14 (zum Zeitpunkt t), die in dem Ausgang y(t) resultierten, außerhalb der Grenzen waren, die zum Erstellen des Vorhersagemodells benutzt wurden. Unzulänglichkeiten in dem Modell, die durch ungenaue Methoden bei der Erstellung des Modells verursacht sind, sind eine weitere Fehlerquelle und können auch dann auftreten, wenn die Eingänge innerhalb der bei der Modellerstellung angewandten Grenzen sind. Unter diesen Umständen wird der Anwender bevorzugt mit einem Merker oder einem Fehlersignal gewarnt, daß die Fehlergrenzen verletzt wurden, was eine fehlerverdächtige Einstellung für die Modellvorhersage bedeutet. Im Fall einer fehlerverdächtigen Einstellung oder eines Fehlers beseitigt der Grenzwertdetektor 24 das Fehlersignal e(t), um zu verhindern, daß dieses Fehlersignal genutzt wird, um den Ausgang y des Modells 14 adaptiv einzustellen. Selbstverständlich muß der Grenzwertdetektor 24 den Fehler speichern oder verfolgen, indem beispielsweise die Grenzwerte des gemessenen Prozeßparameters x genutzt werden. Dieser Vorgang kann ohne weiteres unter Verwendung eines geeigneten Speichers oder einer geeigneten Nachschlagetabelle durchgeführt werden. Ferner kann der Anwender oder Bediener in der Lage sein, die Grenzwerte innerhalb des Grenzwertdetektors 24 vorzugeben, um dadurch die Auswirkung einer fehlerhaften Messung des Prozeßparameters x auf den angepassten Vorhersagewert yadj zu steuern oder zu begrenzen.
-
Wenn die Eingänge zu dem Modell 14 zum Zeitpunkt t innerhalb des Bereichs waren, leitet der Grenzwertdetektor 24 den Wert des Fehlersignals e(t) zu einem Filter 26 weiter, das beispielsweise ein Glättungsfilter oder anderer Tiefpaß sein kann, um die Übergänge in dem Fehlersignal e(t) zu glätten und dadurch eine gleichmäßigere Einstellung des Ausgangs des Modells 14 zu bilden. Tatsächlich gleicht das Filter 26 die Auswirkung von Rauschen und HF-Übergängen in dem Prozeßparameter x aus. Bevorzugt wird der Fehlerfaktor e(t) stark gefiltert, beispielsweise auf das Zweifache des Ansprechhorizonts bei einer Änderung eines Prozeßeingangs. Die von dem Filter 26 gebotene Adaptationsrate kann jedoch so geändert werden, daß sie unterschiedliche Fehlerumgebungen widerspiegelt, und wird typischerweise auf der Basis der Art von Prozeß, in dem die Korrektur vorgenommen wird, oder der Basis des Prozeßparameters, der vorhergesagt wird, vorgegeben. Selbstverständlich kann das adaptive Vorhersagemodell 10 so aufgebaut sein, daß es einem Anwender möglich ist, die Filterkoeffizienten auszuwählen, um die Rate einzustellen, mit der der vorhergesagte Ausgang y auf der Basis von Meßwerten des Prozeßparameters x eingestellt wird.
-
Wie 2 zeigt, erzeugt das Filter 26 einen endgültigen Korrekturfaktor Correct(t) und liefert das Correct(t)-Signal an ein Summierglied 28 (das Kombinationsglied), das wiederum den Korrekturfaktor Correct(t) mit dem Ausgang y(t) des Modells 14 addiert, um den eingestellten Ausgang yadj zu bilden. In diesem Fall implementiert das adaptive Vorhersagemodell 10 die nachstehenden Gleichungen. e(t) = x(t) – y(t-Delay) Correct(t) = a1·Correct(t-Delay) + a2·e(t) yadj(t + k) = y(t + k) + Correct(t) mit 0 < k < Delay darin ist:
- Correct(t)
- = der Korrekturfaktor für den Zeitpunkt t;
- y(t)
- = der von dem Modell 14 zum Zeitpunkt t gebildete Vorhersagewert;
- x(t)
- = der tatsächliche Wert des Prozeßparameters x zum Zeitpunkt t gemäß Bestimmung durch einen Analysator, Laboranalyse oder andere Messungen;
- yadj
- = der angepasste Vorhersagewert des Prozeßparameters x;
- a1 und a2
- = Koeffizienten eines Filters (z. B. des Filters 26); und
- k
- = die Ausführungsrate des Vorhersagemodells.
-
Es versteht sich, daß der Korrekturfaktor für den Zeitpunkt t, z. B. Correct(t), tatsächlich mit dem Wert von y, der zum Zeitpunkt t-Delay erhalten wurde, errechnet wird, um die Probenverzögerung zu berücksichtigen, die bei der Abgabe des tatsächlich gemessenen Werts des Parameters x an den Meßeingang des adaptiven Vorhersagemodells 10 inhärent ist. In denjenigen Fällen, in denen die Meßwerte des Parameters x nur periodisch oder in nichtperiodischen Intervallen geliefert werden, bleibt ferner das Fehlersignal e(t) gleich, bis ein neuer Wert von x an das Vorhersagemodell 10 geliefert wird. Durch die Wirkung des Filters 26 wird jedoch der Korrekturfaktor Correct(t) an einen Konstantwert angenähert, bis ein neuer Wert von x an das adaptive Vorhersagemodell 10 geliefert wird. Der Korrekturfaktor Correct(t) kann jedoch dem Ausgang y auch zu Zeitpunkten, zu denen keine Messung des Prozeßparameters x vorgenommen wird, kontinuierlich hinzuaddiert werden. Selbstverständlich können das Filter 26 und der Grenzwertdetektor 24 irgendwelche bekannten digitalen oder analogen Komponenten sein.
-
3 zeigt ein weiteres Kombinationsnetz 16b zum Gebrauch mit dem adaptiven Vorhersagemodell 10. Es ist ersichtlich, daß das Kombinationsnetz 16b von 3 das gleiche wie das Kombinationsnetz 16a von 2 ist und die gleichen Elemente wie dieses aufweist mit der Ausnahme, daß die Verzögerungseinheit 20 den eingestellten Ausgang yadj des Summierglieds 28 anstelle des Ausgangs y des Modells 14 empfängt. Somit wird der Fehler e(t) aus dem korrigierten oder angepassten Vorhersagewert des Modells 10 anstatt aus dem nichtkorrigierten Vorhersagewert bestimmt. Das Fehlersignal e(t), der endgültige Korrekturfaktor Correct(t) und der eingestellte Ausgang yadj für den Prozeß von 3 können wie folgt geschrieben werden: e(t) = x(t) – yadj(t-Delay) Correct(t) = a1·Correct(t-Delay) + a2·e(t) yadj(t + k) = y(t + k) + Correct(t) mit 0 < k < Delay
-
Aus dieser Erörterung ist verständlich, daß entweder der Ausgang y des Modells 14 oder der eingestellte Ausgang yadj des adaptiven Vorhersagemodells 10 als Rückführung zur Bildung des Korrekturfaktors Correct(t) genutzt werden kann.
-
Es ist ferner zu beachten, daß die obigen Darstellungen des Korrekturblocks oder Kombinationsnetzes bloße Verallgemeinerungen einer Vielzahl von Formen sind, die zum gleichen Zweck verwendet werden können. Beispielsweise können diese Blöcke zu Filtern höherer Ordnung erweitert werden, um eine bessere Störsignaldämpfung zu erreichen, und zwar besonders im Fall einer Stichprobenmessung, oder sie können jede andere lineare oder nichtlineare Technik nutzen, um die Korrektur des Ausgangs des Vorhersagemodells 14 zu implementieren. Außerdem können die Filterkoeffizienten festgelegt werden, wenn die Fehlerquellen und die Umgebung der Stichprobenahme bekannt sind, oder sie können, falls gewünscht, unter Anwendung bekannter Regressionstechniken anpaßbar sein.
-
Ferner können Fehlerminimierungstechniken wie etwa rekursive Fehlerquadrate (RLS), Newton-Raphson, Gradienten-Abstiegsmethode usw. in dem Kombinationsnetz 16 angewandt werden und sind sehr wirkungsvoll, wenn eine signifikante Erregung oder eine rasche Änderung der Prozeßbedingungen vorliegt. 4 zeigt ein Kombinationsnetz 16c, das eine RLS-Technik anwendet, um den eingestellten Ausgang yadj zu bilden, der wie folgt errechnet oder bestimmt werden kann: yadj(t + k) = a1·y(t – 2·Delay + k) + a2·y(t-Delay + k) + a3·x(t-Delay) mit 0 ≤ k < Delay wobei a1, a2 und a3 RLS-Koeffizienten sind.
-
Falls gewünscht, kann mehr als ein zeitlich verzögerter Term für den tatsächlichen Ausgang (den Parameter x) und die Netzausgänge (das Signal y) verwendet werden, um die Ausführung eines Algorithmus zu verbessern. Es versteht sich, daß das Kombinationsnetz 16c von 4 einen RLS-Algorithmus verwendet, um die Ausführung zu verbessern.
-
Insbesondere wird der Ausgang y des Modells 14 Verzögerungseinheiten 30 und 32 (oder irgendeiner anderen Anzahl von Verzögerungseinheiten) zugeführt, die diese Werte beispielsweise um die Probenmeßverzögerung verzögern. Die Verzögerungseinheit 30 verzögert jedoch in diesem Fall das y-Signal um eine Verzögerungszeiteinheit mehr als die Verzögerungseinheit 32. Die Ausgänge der Verzögerungseinheiten 30 und 32 werden Multipliziergliedern 34 und 36 zugeführt, während der tatsächliche gemessene Prozeßparameter x für die Zeitdauer t einem Multiplizierglied 38 zugeführt wird. Die Multiplizierglieder 34, 36 und 38 multiplizieren ihre Eingänge mit den RLS-Koeffizienten a1, a2 bzw. a3 gemäß der Bestimmung durch einen RLS-Koeffizienten-Bestimmungsalgorithmus 40, der Standard-RLS-Techniken nutzt, um die Koeffizienten a1, a2 und a3 zu errechnen. Der RLS-Algorithmus 40 bestimmt jedesmal, wenn dem Kombinationsnetz 16c ein neuer Meßwert des Prozeßparameters x zugeführt wird, einen neuen Koeffizientensatz.
-
Die Ausgangssignale der Multiplizierglieder 34, 36 und 38 werden Grenzwertdetektoren 42, 44 und 46 zugeführt, die ähnlich den Grenzwertdetektoren 24 der 2 und 3 wirken. Der Grenzwertdetektor 42 bestimmt also, ob der Vorhersage wert zum Zeitpunkt t-Delay innerhalb akzeptabler Grenzen war, während der Grenzwertdetektor 44 die gleiche Funktion wie der Grenzwertdetektor 42 für den Vorhersagewert zum Zeitpunkt t-2·Delay ausführt. Wenn der Vorhersagewert y zum Zeitpunkt t-Delay oder zum Zeitpunkt t-2·Delay aus einem oder mehreren der oben angegeben Gründe fehlerverdächtig ist, sind die Fehlergrenzwerte verletzt, was zur Erzeugung eines Merkers bzw. einer Flag oder eines Fehlersignals führt.
-
Die Ausgangssignale der Filter 42, 44 und 46 werden dann einem Summierglied 48 zugeführt, das diese Signale addiert, um den angepassten Vorhersagewert yadj zu bilden. In dem System von 4 ist ersichtlich, daß auch hier der Ausgang des Modells 14 auf irgendeine Weise mit dem tatsächlich gemessenen Prozeßparameter x kombiniert wird (wenn auch möglicherweise mit verschiedenen Verzögerungszeiten), um einen eingestellten Ausgang yadj zu bilden. Der eingestellte Ausgang yadj wird durch eine direkte Kombination von vorhergehenden Werten der Modellvorhersage y und des Prozeßmeßwerts x bestimmt. Der angepasste Vorhersagewert yadj kann auch anstelle der Modellvorhersage y genutzt werden. Als Ergebnis kann die Wahl der Konfiguration so geändert werden, daß sie an den betreffenden Prozeß angepaßt ist. Selbstverständlich könnten ähnliche Techniken für andere Arten von Filtern und Fehlerkorrekturschemata angewandt werden, und es versteht sich, daß das Kombinationsnetz 16 nicht auf die hier gezeigten Ausführungsformen beschränkt ist. Es versteht sich ferner, daß einige oder sämtliche der in den 1 bis 4 gezeigten Elemente separate Hardware-, Software(programm)- oder Firmware-Elemente sein können, die auf jede gewünschte Weise entwickelt oder aufgebaut sind, wobei die Verbindungen dazwischen die Kommunikation von Signalen oder Werten zwischen diesen Hardware-, Software- oder Firmware-Elementen darstellen. Ferner bilden bei dem Beispiel von 4 die Verzögerungseinheiten 30 und 32, die Multiplizierglieder 34 und 36, die Grenzwertdetektoren 42 und 44 und das Summierglied einen Kombinierer, während die Multipliziereinheit 38 und der Grenzwertdetektor 46 einen Korrekturblock bilden, der einen Korrekturfaktor erzeugt.
-
Zur Prüfung der Operation der hier gezeigten adaptiven Vorhersagemodelle unter verschiedenen Szenarien wurde eine Reihe von Echtzeit-Prozeßmodellen mit und ohne die Verwendung der Kombinationsnetze 16a, 16b und 16c ausgeführt. Bei dieser Simulation wurden Neuronennetze für jeden Prozeß zuerst gebildet durch Sammeln von Echtzeit-Prozeßgrößen und Aufbauen und Schulen eines Netzes unter Nutzung von handelsüblicher Software zum Erstellen von Neuronennetzen, die zum Gebrauch für die Prozeßsteuerung anwendbar ist. Die Auswahl von Eingängen und ihren entsprechenden Verzögerungen erfolgte so, daß die Auswahl den Lernfehler minimieren würde. Das Netz wurde dann geschult, bis die maximale Anzahl von Zeitabschnitten (Epochen) erreicht war. Eine echte Testsituation wurde simuliert durch Aufteilen der aus dem Prozeß gesammelten Datenmenge in gesonderte Lern- und Validierungsmuster. Während der Überprüfung wurden die gleichen Eingangsdaten-Ausreißergrenzwerte angewandt, so daß alle Validierungsmuster in die Grenzen des Schulungsbereichs fielen. Für Fälle, in denen die Ausführung des Netzes an der Validierungsmenge zu keinen zufriedenstellenden Ergebnissen führte, wurde das Netzdesign modifiziert und neugeschult, wie das normalerweise bei der Entwicklung von Prozeßmodellen der Fall ist. Dieser Schulungsprozeß wurde rekursiv durchgeführt und endete mit einem Neuronennetz-Modell, dessen Prüffehler minimal war.
-
Die oben beschriebenen Kombinationsnetze
16a,
16b und
16c wurden dann in jedem Netz angewandt. Ein einfaches MATLAB-Programm wurde verwendet, um die verschiedenen Kombinierer-Konfigurationen zu prüfen. Die Ergebnisse sind in der nachstehenden Tabelle aufgeführt.
Name des | RMS- | Kombinations | Kombinations | Kombinations |
Neuronen- | Netzfehler | netz | netz | netz |
Netzes | (ohne | 16a von | 16b von Fig. | 16c von |
| Korrektur) | Fig. 2 | 3 | Fig. 4 |
Aevap | 0,00277 | 0,000703 | 0,000529 | 0,00217 |
Batch | 0,113568 | 0,038531 | 0,032437 | 2,00502 |
tw11a | 0,011316 | 0,005523 | 0,005227 | 0,009221 |
Grind2a | 0,1228 | 0,136584 | 0,131396 | 0,112771 |
Grinder | 0,128294 | 0,107549 | 0,089305 | 0,079067 |
quno | 0,177184 | 0,06604 | 0,04997 | 0,121587 |
-
In dieser Tabelle ist Aevap ein Maissirup-Verdampfungsprozeß, Batch ist ein diskontinuierlicher Prozeß, tw11 ist ein CO2/NH3-Gaswaschturm in einem Caprolactam-Prozeß, Grind2a und Grinder sind Kupfererz-Mahlprozesse, und quno ist ein Stoffauflauf-pH-Prozeß für eine Papiermaschine. In den meisten Testfällen ist zu sehen, daß der Standardfehler- bzw. RMS-Fehler des korrigierten Ausgangs bei jedem der Kombinationsnetze niedriger als derjenige des Ausgangs des Neuronennetz-Modells ohne Korrektur war. In den meisten Fällen ergaben sich bedeutende Fehlerabnahmen. Es versteht sich daher, daß verschiedene Netze, Blöcke oder Techniken zur Bildung des eingestellten Ausgangs des adaptiven Prozeßmodells 10 in einem einzigen Prozeß verwendet werden könnten auf der Basis der Art von Prozeß und früherer Bestimmungen oder Erfahrungen in bezug darauf, welche Art von Filtertechniken oder Kombinationstechniken für diesen Prozeß am besten funktioniert.
-
5 zeigt ein Prozeßsteuerungsnetz 60, in dem ein adaptives Vorhersagemodell 10 verwendet werden könnte. Das Prozeßsteuerungsnetz 60, das beispielsweise ein DeltaV-Prozeßsteuerungssystem von Fisher-Rosemount Systems, Inc., Austin, Texas, sein kann, umfaßt eine oder mehrere Steuereinheiten 62, einen Hauptrechner oder eine Bediener-Workstation 64, einen Datenspeicher oder eine Datenbibliothek 66 und/oder andere Rechnereinrichtungen wie etwa weitere Workstations, Datenbanken, Konfigurationsstationen usw., die mit einer Sammelschiene 70 verbunden sind, die beispielsweise eine Ethernet-Sammelschiene sein kann. Wie bekannt ist, umfassen die Steuereinrichtung(en) 62 und Workstations 64 Prozessoren, die in den Speichern dieser Einrichtungen gespeicherte Software implementieren. Die Steuereinheit 62 kann beispielsweise eine Steuereinheit eines verteilten Steuersystems oder jede andere Art von Steuereinheit sein, die beispielsweise in einem unabhängigen Computer oder einem Netzcomputer implementiert ist. Die Haupteinrichtung 64 kann ebenfalls beispielsweise ein PC oder eine andere Einrichtung sein, die einem Anwender oder einem Bediener einen Dialog mit dem Prozeßsteuerungssystem 60 auf eine bekannte Weise ermöglicht. Der Datenspeicher 66 kann jede Art von bekanntem Speicher oder Speichereinrichtung sein, was eine digitale Plattenspeichereinrichtung (die beispielsweise CDs, digitale Bildplatten, Laserplatten usw. verwendet), eine RAM-Speichereinrichtung, eine Magnetplattenspeichereinrichtung usw. sein kann, jedoch nicht auf diese beschränkt ist. Zahlreiche Feldeinrichtungen 75 bis 82 sind mit der Steuereinheit 62 über jede gewünschte Art von Ein-Ausgabe- bzw. E-A-Einrichtungen 86 und 88 verbunden. Die Einrichtungen 75 bis 78 sind einzeln mit der E-A-Einrichtung 86 verbunden und können beispielsweise HART-Standardeinrichtungen von 4 bis 20 mA oder jede andere Art von intelligenten oder nichtintelligenten Feldeinrichtungen sein. Ebenso sind die Einrichtungen 79 bis 82 hier mit einer Sammelschiene 90 verbunden, die jede gewünschte Art von Sammelschiene, beispielsweise eine Fieldbus-Leitung, sein kann. In diesem Fall können die Einrichtungen 79 bis 82 das Kommunikationsprotokoll der Foundation Fieldbus benutzen. Selbstverständlich kann jede Feldeinrichtung 75 bis 82 jede Art von Feldeinrichtung sein, die in dem Prozeßsteuerungsnetz 60 verwendet wird, was beispielsweise Sensoren, Steuerventile, Positionierer, Gebläse, Videokameras, Mikrophone usw. einschließt. Selbstverständlich können andere Einrichtungen auf jede gewünschte Weise mit dem System 60 verbunden sein.
-
Wie 5 zeigt, implementiert die Steuereinheit 62 ein Prozeßsteuerungsschema 100 oder eine -routine, in der eine Reihe von verschiedenen Schleifen oder Segmenten vorhanden ist. Im allgemeinen steuert jede Steuerschleife eine oder mehrere der Feldeinrichtungen, um einen Teil eines Prozesses zu steuern. Wie der Block 100 in 5 zeigt, kann die Steuereinheit 62 von etwas Gebrauch machen, was allgemein als Funktionsblöcke bezeichnet wird, um die Steuerung zu implementieren. Es ist bekannt, daß Funktionsblöcke (die im wesentlichen Objekte in einer objektorientierten Programmierumgebung sind) durch Kommunikationsleitungen miteinander verbunden sein können und wirksam sind, um miteinander zu kommunizieren und dadurch die Steuerung zu implementieren. Die Steuereinheit 62 könnte jedoch jede andere gewünschte Art von Steuerungstechnik wie beispielsweise Leiterlogik, Sequenzfunktionsabläufe usw. anwenden.
-
Die Steuereinheit 62 von 5 implementiert hier zwei Schleifen 102 und 104. Die Schleife 102 hat zwei Analogeingangs- bzw. AI-Funktionsblöcke, die wirksam sind, um Signale von Einrichtungen zu empfangen, einen PID-Steuerblock (Proportional-Integral-Differentialsteuerblock), der eine PID-Steuerung auf der Basis von ihm zugeführten Eingängen durchführt, und einen Analogausgangs- bzw. AO-Funktionsblock, der Signale abgibt oder auf andere Weise mit einer Einrichtung (wie etwa einem Ventil) kommuniziert, um dadurch diese Einrichtung zu steuern. Der AO-Block liefert ferner eine Rückführung an den PID-Block. Ebenso umfaßt die Schleife 104 einen AI-Funktionsblock, der mit einem PID-Funktionsblock gekoppelt ist, der mit einem AO-Funktionsblock verbunden ist, um eine zweite Steuerschleife innerhalb des Prozesses zu implementieren.
-
Wie ebenfalls in 5 gezeigt ist, hat ein virtueller Sensorfunktionsblock 110, der unter Anwendung eines der adaptiven Vorhersagemodelle der 1 bis 4 aufgebaut sein kann, Eingänge, die mit den AI- und AO-Blöcken der Schleife 104 und mit dem AI-Funktionsblock der Schleife 102 in Verbindung sind. Der virtuelle Sensorfunktionsblock 110 nutzt diese Signale als Eingänge zur Bildung eines Vorhersagewerts eines Prozeßparameters, der jeder gewünschte Prozeßparameter sein kann. Selbstverständlich ist die Wahl der jeweiligen Eingänge zu dem virtuellen Sensor 110 von dem vorherzusagenden Parameter abhängig, und dieser Auswahlvorgang ist dem Fachmann bekannt. Der virtuelle Sensorfunktionsblock 110 empfängt ferner periodische oder nichtperiodische Meßwerte des vorherzusagenden Prozeßparameters über eine Prozeßparametermeß- bzw. PPM-Verbindung. Diese Verbindung kann mit einem Eingangsblock wie etwa einem AI-Block verbunden sein, der Eingänge von einem Sensor oder einer anderen Einrichtung empfängt, die den vorherzusagenden Prozeßparameter mißt. Alternativ kann diese Verbindung mit einem manuellen Eingangsfunktionsblock wie etwa dem MI-Block 115 verbunden sein, der sich in der Haupteinrichtung 64 befinden kann, um manuell eingegebene Meßwerte des Prozeßparameters zu empfangen. Falls gewünscht, kann die PPM-Verbindung auch eine Schätzung der Probenahmeverzögerung oder des Zeitpunkts, zu dem die Messung erfolgte, bereitstellen, die von dem virtuellen Sensorfunktionsblock 110 zur Bestimmung der Probenahmeverzögerung (Delay) genutzt werden kann. Selbstverständlich kann der Meßwert der Prozeßgröße dem virtuellen Sensorfunktionsblock 110 von dem Bediener über die Haupteinrichtung oder Workstations 64 auf jede andere Weise zugeführt werden, nachdem diese Messung (und der entsprechende Zeitpunkt, zu dem die Messung durchgeführt wurde) beispielsweise von einer Laboranalyse oder einer anderen Analysatoreinheit zugeführt werden. Beispielsweise kann ein Analysator oder anderer Sensor, der die Messung des Prozeßparameters bestimmt, mit dem Prozeßsteuerungssystem 60 verbunden sein und seinen Ausgang an den virtuellen Sensorfunktionsblock 110 unter Nutzung jeder gewünschten Kommunikationsart innerhalb des Prozeßsteuerungssystems 60 senden. Bei dem vorliegenden Beispiel kann ein den Prozeßparameter messender Sensor mit der Sammelschiene 70, mit einer der Ein-Ausgabe-Einrichtungen 86 oder 88 oder mit der Sammelschiene 90 verbunden sein, um mit dem virtuellen Sensorfunktionsblock 110 zu kommunizieren. Falls gewünscht, kann eine Einrichtung wie etwa ein Netzanalysator vorübergehend mit dem Prozeßsteuerungssystems 60 verbunden sein, um eine oder mehrere gemessene Proben des Parameters x (und seiner zugehörigen Meßzeitpunkte oder zeitlichen Verzögerungen) zu dem virtuellen Sensorfunktionsblock 110 herunterzuladen.
-
Ferner kann der eingestellte vorhergesagte Ausgang des virtuellen Sensorfunktionsblocks 110 innerhalb der Steuereinheit 62 oder einer anderen Steuereinheit zur Durchführung der Prozeßsteuerung genutzt werden, kann der Ausgang der Bediener-Workstation 64 zugeführt werden, um angezeigt oder anderweitig vom Bediener oder von Software innerhalb dieser Workstation genutzt werden, oder es kann der Ausgang jeder anderen Einrichtung im Netz 60 zugeführt und von dieser genutzt werden. Ebenso kann das adaptive Vorhersagemodell 10 an jeder anderen gewünschten Stelle innerhalb des Prozeßsteuerungssystems 60 angeordnet sein, etwa in den Workstations oder in einer oder mehreren der Einrichtungen (z. B. der Einrichtung 62). In sämtlichen Fällen muß das adaptive Vorhersagemodell 10 kommunikativ so gekoppelt sein, daß es die ausgewählten Eingänge für das Modell sowie die Stichproben des vorherzusagenden Prozeßparameters empfängt. Es wird außerdem bevorzugt sicherzustellen, daß der Zeitpunkt oder die zeitliche Verzögerung, die zu der Gewinnung und Abgabe des gemessenen Prozeßparameters an das adaptive Vorhersagemodell 110 oder 10 gehören, dem Modell 110, 10 automatisch zugeführt werden.
-
Ein adaptives Vorhersagemodell wurde hier als Funktionsblock innerhalb eines Prozeßsteuerungssystems und insbesondere als DeltaV- oder Fieldbus-Funktionsblock beschrieben (die gleichartig beschaffen sind), es versteht sich jedoch, daß ein solches adaptives Vorhersagemodell als jede Art von Programm oder Einrichtung aufgebaut sein kann und daß die verschiedenen Elemente des beschriebenen adaptiven Vorhersagemodells der 1 bis 5 in Hardware, Firmware oder Software erzeugt oder implementiert sein könnten, die auf jeder Art von Rechnerspeicher, Platte oder anderen Speichereinrichtung gespeichert sein können. Wenn es in Software implementiert ist, könnte das adaptive Vorhersagemodell unter Anwendung jeder gewünschten Programmiersprache implementiert sein, es kann in einer Mehrzweck-Standard-CPU oder auf speziell konstruierter Hardware oder Firmware wie beispielsweise ASICs implementiert sein, wenn das gewünscht wird. Wenn es in Software implementiert ist, kann die Software in jedem computerlesbaren Speicher wie etwa auf einer Magnetplatte, Laserplatte, Bildplatte oder einem anderen Speichermedium, in einem RAM oder ROM eines Computers oder Prozessors usw. gespeichert sein. Ebenso kann diese Software einem Anwender oder einem Prozeßsteuerungssystem mittels jeder bekannten oder gewünschten Versandmethode wie z. B. auf einer computerlesbaren Platte oder einer anderen transportfähigen Computerspeichereinrichtung übermittelt oder über einen Nachrichtenkanal wie etwa eine Telefonleitung, das Internet usw. (was als gleich oder austauschbar mit der Lieferung der Software mittels eines transportfähigen Speichermediums angesehen wird) zugestellt werden.
-
Ferner wurde zwar das adaptive Vorhersagemodell hier zur Anwendung in einer Prozeßsteuerungsumgebung oder einem solchen Netz beschrieben; es versteht sich jedoch, daß ein adaptives Vorhersagemodell entsprechend der vorliegenden Offenbarung zur Anwendung auf irgendwelchen anderen Arbeitsgebieten (die hier der Einfachheit halber als Prozesse bezeichnet werden), die Vorhersagemodelle verwenden, wie etwa einem natürlichen Modell (z. B. einem Modell des ersten Prinzips) oder einem parametrischen Modell (das beispielsweise durch Regressionsverfahren erhalten ist), aufgebaut werden könnte, um Schätzwerte von Parametern zu bilden.